lynote-ui 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (577) hide show
  1. package/README.md +24 -0
  2. package/dist/CompositeItem-DKYDWwo1.js +30 -0
  3. package/dist/CompositeItem-DKYDWwo1.js.map +1 -0
  4. package/dist/CompositeItem-DqbuwxxP.mjs +31 -0
  5. package/dist/CompositeItem-DqbuwxxP.mjs.map +1 -0
  6. package/dist/CompositeList-CLP_jD9H.js +151 -0
  7. package/dist/CompositeList-CLP_jD9H.js.map +1 -0
  8. package/dist/CompositeList-CM71m-RA.mjs +135 -0
  9. package/dist/CompositeList-CM71m-RA.mjs.map +1 -0
  10. package/dist/CompositeRoot-Clz7hqk6.mjs +291 -0
  11. package/dist/CompositeRoot-Clz7hqk6.mjs.map +1 -0
  12. package/dist/CompositeRoot-DhWDFM9v.js +307 -0
  13. package/dist/CompositeRoot-DhWDFM9v.js.map +1 -0
  14. package/dist/DialogRoot-C_3aVl-g.mjs +69 -0
  15. package/dist/DialogRoot-C_3aVl-g.mjs.map +1 -0
  16. package/dist/DialogRoot-D_7sM8HI.js +85 -0
  17. package/dist/DialogRoot-D_7sM8HI.js.map +1 -0
  18. package/dist/DialogTrigger-BqeNq2F6.mjs +532 -0
  19. package/dist/DialogTrigger-BqeNq2F6.mjs.map +1 -0
  20. package/dist/DialogTrigger-CgBPTG9W.js +548 -0
  21. package/dist/DialogTrigger-CgBPTG9W.js.map +1 -0
  22. package/dist/DirectionContext-BaCziR5k.mjs +12 -0
  23. package/dist/DirectionContext-BaCziR5k.mjs.map +1 -0
  24. package/dist/DirectionContext-BsZvU9q3.js +28 -0
  25. package/dist/DirectionContext-BsZvU9q3.js.map +1 -0
  26. package/dist/DirectionProvider-DaKrURtH.js +36 -0
  27. package/dist/DirectionProvider-DaKrURtH.js.map +1 -0
  28. package/dist/DirectionProvider-ttyWmQjZ.mjs +20 -0
  29. package/dist/DirectionProvider-ttyWmQjZ.mjs.map +1 -0
  30. package/dist/FieldItemContext-DRVgx-D1.mjs +13 -0
  31. package/dist/FieldItemContext-DRVgx-D1.mjs.map +1 -0
  32. package/dist/FieldItemContext-K2sFjft8.js +29 -0
  33. package/dist/FieldItemContext-K2sFjft8.js.map +1 -0
  34. package/dist/FloatingPortalLite-CEKehtqV.js +50 -0
  35. package/dist/FloatingPortalLite-CEKehtqV.js.map +1 -0
  36. package/dist/FloatingPortalLite-CsPfJ360.mjs +33 -0
  37. package/dist/FloatingPortalLite-CsPfJ360.mjs.map +1 -0
  38. package/dist/FormItem-BmgGAecB.mjs +185 -0
  39. package/dist/FormItem-BmgGAecB.mjs.map +1 -0
  40. package/dist/FormItem-xksTqxKD.js +200 -0
  41. package/dist/FormItem-xksTqxKD.js.map +1 -0
  42. package/dist/InternalBackdrop-B3WuVcuG.js +1021 -0
  43. package/dist/InternalBackdrop-B3WuVcuG.js.map +1 -0
  44. package/dist/InternalBackdrop-C7vtdMWQ.mjs +1005 -0
  45. package/dist/InternalBackdrop-C7vtdMWQ.mjs.map +1 -0
  46. package/dist/LabelableContext-DLLBESLn.mjs +213 -0
  47. package/dist/LabelableContext-DLLBESLn.mjs.map +1 -0
  48. package/dist/LabelableContext-DYy4DAX3.js +230 -0
  49. package/dist/LabelableContext-DYy4DAX3.js.map +1 -0
  50. package/dist/MenuSubmenuTrigger-95oBD6Dx.js +1659 -0
  51. package/dist/MenuSubmenuTrigger-95oBD6Dx.js.map +1 -0
  52. package/dist/MenuSubmenuTrigger-Bnw6ycbc.mjs +1643 -0
  53. package/dist/MenuSubmenuTrigger-Bnw6ycbc.mjs.map +1 -0
  54. package/dist/Separator-BKPk5Lcn.js +43 -0
  55. package/dist/Separator-BKPk5Lcn.js.map +1 -0
  56. package/dist/Separator-Dvb0TS9E.mjs +27 -0
  57. package/dist/Separator-Dvb0TS9E.mjs.map +1 -0
  58. package/dist/ToolbarRootContext-B_HxjkNI.mjs +11 -0
  59. package/dist/ToolbarRootContext-B_HxjkNI.mjs.map +1 -0
  60. package/dist/ToolbarRootContext-C8eU2VAC.js +27 -0
  61. package/dist/ToolbarRootContext-C8eU2VAC.js.map +1 -0
  62. package/dist/accordion/index.d.ts +6 -0
  63. package/dist/accordion/index.js +618 -0
  64. package/dist/accordion/index.js.map +1 -0
  65. package/dist/accordion/index.mjs +601 -0
  66. package/dist/accordion/index.mjs.map +1 -0
  67. package/dist/alert/index.d.ts +11 -0
  68. package/dist/alert/index.js +78 -0
  69. package/dist/alert/index.js.map +1 -0
  70. package/dist/alert/index.mjs +78 -0
  71. package/dist/alert/index.mjs.map +1 -0
  72. package/dist/alert-dialog/index.d.ts +18 -0
  73. package/dist/alert-dialog/index.js +240 -0
  74. package/dist/alert-dialog/index.js.map +1 -0
  75. package/dist/alert-dialog/index.mjs +223 -0
  76. package/dist/alert-dialog/index.mjs.map +1 -0
  77. package/dist/aspect-ratio/index.d.ts +4 -0
  78. package/dist/aspect-ratio/index.js +23 -0
  79. package/dist/aspect-ratio/index.js.map +1 -0
  80. package/dist/aspect-ratio/index.mjs +23 -0
  81. package/dist/aspect-ratio/index.mjs.map +1 -0
  82. package/dist/avatar/index.d.ts +11 -0
  83. package/dist/avatar/index.js +287 -0
  84. package/dist/avatar/index.js.map +1 -0
  85. package/dist/avatar/index.mjs +270 -0
  86. package/dist/avatar/index.mjs.map +1 -0
  87. package/dist/badge/index.d.ts +9 -0
  88. package/dist/badge/index.js +48 -0
  89. package/dist/badge/index.js.map +1 -0
  90. package/dist/badge/index.mjs +48 -0
  91. package/dist/badge/index.mjs.map +1 -0
  92. package/dist/breadcrumb/index.d.ts +10 -0
  93. package/dist/breadcrumb/index.js +123 -0
  94. package/dist/breadcrumb/index.js.map +1 -0
  95. package/dist/breadcrumb/index.mjs +123 -0
  96. package/dist/breadcrumb/index.mjs.map +1 -0
  97. package/dist/button/index.d.ts +9 -0
  98. package/dist/button/index.js +99 -0
  99. package/dist/button/index.js.map +1 -0
  100. package/dist/button/index.mjs +82 -0
  101. package/dist/button/index.mjs.map +1 -0
  102. package/dist/button-group/index.d.ts +12 -0
  103. package/dist/button-group/index.js +83 -0
  104. package/dist/button-group/index.js.map +1 -0
  105. package/dist/button-group/index.mjs +83 -0
  106. package/dist/button-group/index.mjs.map +1 -0
  107. package/dist/calendar/index.d.ts +10 -0
  108. package/dist/calendar/index.js +205 -0
  109. package/dist/calendar/index.js.map +1 -0
  110. package/dist/calendar/index.mjs +188 -0
  111. package/dist/calendar/index.mjs.map +1 -0
  112. package/dist/card/index.d.ts +11 -0
  113. package/dist/card/index.js +102 -0
  114. package/dist/card/index.js.map +1 -0
  115. package/dist/card/index.mjs +102 -0
  116. package/dist/card/index.mjs.map +1 -0
  117. package/dist/carousel/index.d.ts +28 -0
  118. package/dist/carousel/index.js +217 -0
  119. package/dist/carousel/index.js.map +1 -0
  120. package/dist/carousel/index.mjs +200 -0
  121. package/dist/carousel/index.mjs.map +1 -0
  122. package/dist/chart/index.d.ts +44 -0
  123. package/dist/chart/index.js +272 -0
  124. package/dist/chart/index.js.map +1 -0
  125. package/dist/chart/index.mjs +254 -0
  126. package/dist/chart/index.mjs.map +1 -0
  127. package/dist/checkbox/index.d.ts +3 -0
  128. package/dist/checkbox/index.js +425 -0
  129. package/dist/checkbox/index.js.map +1 -0
  130. package/dist/checkbox/index.mjs +408 -0
  131. package/dist/checkbox/index.mjs.map +1 -0
  132. package/dist/clamp-CRAygR8_.mjs +17 -0
  133. package/dist/clamp-CRAygR8_.mjs.map +1 -0
  134. package/dist/clamp-Cl34OJjs.js +33 -0
  135. package/dist/clamp-Cl34OJjs.js.map +1 -0
  136. package/dist/collapsible/index.d.ts +5 -0
  137. package/dist/collapsible/index.js +244 -0
  138. package/dist/collapsible/index.js.map +1 -0
  139. package/dist/collapsible/index.mjs +227 -0
  140. package/dist/collapsible/index.mjs.map +1 -0
  141. package/dist/combobox/index.d.ts +24 -0
  142. package/dist/combobox/index.js +294 -0
  143. package/dist/combobox/index.js.map +1 -0
  144. package/dist/combobox/index.mjs +277 -0
  145. package/dist/combobox/index.mjs.map +1 -0
  146. package/dist/command/index.d.ts +19 -0
  147. package/dist/command/index.js +174 -0
  148. package/dist/command/index.js.map +1 -0
  149. package/dist/command/index.mjs +174 -0
  150. package/dist/command/index.mjs.map +1 -0
  151. package/dist/composite-54CI9F0V.mjs +346 -0
  152. package/dist/composite-54CI9F0V.mjs.map +1 -0
  153. package/dist/composite-B6lEHrCV.mjs +119 -0
  154. package/dist/composite-B6lEHrCV.mjs.map +1 -0
  155. package/dist/composite-BT0EMBUB.js +118 -0
  156. package/dist/composite-BT0EMBUB.js.map +1 -0
  157. package/dist/composite-DhXBXmhV.js +345 -0
  158. package/dist/composite-DhXBXmhV.js.map +1 -0
  159. package/dist/constants-DAVIOz2s.js +18 -0
  160. package/dist/constants-DAVIOz2s.js.map +1 -0
  161. package/dist/constants-Dfh7hQez.mjs +19 -0
  162. package/dist/constants-Dfh7hQez.mjs.map +1 -0
  163. package/dist/context-menu/index.d.ts +29 -0
  164. package/dist/context-menu/index.js +458 -0
  165. package/dist/context-menu/index.js.map +1 -0
  166. package/dist/context-menu/index.mjs +441 -0
  167. package/dist/context-menu/index.mjs.map +1 -0
  168. package/dist/createBaseUIEventDetails-CRQSf9K3.mjs +79 -0
  169. package/dist/createBaseUIEventDetails-CRQSf9K3.mjs.map +1 -0
  170. package/dist/createBaseUIEventDetails-D39y2D9R.js +78 -0
  171. package/dist/createBaseUIEventDetails-D39y2D9R.js.map +1 -0
  172. package/dist/date-picker/index.d.ts +3 -0
  173. package/dist/date-picker/index.js +47 -0
  174. package/dist/date-picker/index.js.map +1 -0
  175. package/dist/date-picker/index.mjs +30 -0
  176. package/dist/date-picker/index.mjs.map +1 -0
  177. package/dist/detectBrowser-CT93wuqL.mjs +64 -0
  178. package/dist/detectBrowser-CT93wuqL.mjs.map +1 -0
  179. package/dist/detectBrowser-j_AUpd7-.js +63 -0
  180. package/dist/detectBrowser-j_AUpd7-.js.map +1 -0
  181. package/dist/dialog/index.d.ts +17 -0
  182. package/dist/dialog/index.js +153 -0
  183. package/dist/dialog/index.js.map +1 -0
  184. package/dist/dialog/index.mjs +153 -0
  185. package/dist/dialog/index.mjs.map +1 -0
  186. package/dist/direction/index.d.ts +1 -0
  187. package/dist/direction/index.js +7 -0
  188. package/dist/direction/index.js.map +1 -0
  189. package/dist/direction/index.mjs +7 -0
  190. package/dist/direction/index.mjs.map +1 -0
  191. package/dist/drawer/index.d.ts +13 -0
  192. package/dist/drawer/index.js +128 -0
  193. package/dist/drawer/index.js.map +1 -0
  194. package/dist/drawer/index.mjs +128 -0
  195. package/dist/drawer/index.mjs.map +1 -0
  196. package/dist/dropdown-menu/index.d.ts +29 -0
  197. package/dist/dropdown-menu/index.js +573 -0
  198. package/dist/dropdown-menu/index.js.map +1 -0
  199. package/dist/dropdown-menu/index.mjs +555 -0
  200. package/dist/dropdown-menu/index.mjs.map +1 -0
  201. package/dist/element-BtC-M4rb.mjs +103 -0
  202. package/dist/element-BtC-M4rb.mjs.map +1 -0
  203. package/dist/element-DAAyJrnp.js +102 -0
  204. package/dist/element-DAAyJrnp.js.map +1 -0
  205. package/dist/empty/index.d.ts +12 -0
  206. package/dist/empty/index.js +103 -0
  207. package/dist/empty/index.js.map +1 -0
  208. package/dist/empty/index.mjs +103 -0
  209. package/dist/empty/index.mjs.map +1 -0
  210. package/dist/event-BHxKjfyi.js +43 -0
  211. package/dist/event-BHxKjfyi.js.map +1 -0
  212. package/dist/event-CcyVszlp.mjs +44 -0
  213. package/dist/event-CcyVszlp.mjs.map +1 -0
  214. package/dist/field/index.d.ts +25 -0
  215. package/dist/field/index.js +219 -0
  216. package/dist/field/index.js.map +1 -0
  217. package/dist/field/index.mjs +219 -0
  218. package/dist/field/index.mjs.map +1 -0
  219. package/dist/floating-ui.utils-CMX6M1P8.js +149 -0
  220. package/dist/floating-ui.utils-CMX6M1P8.js.map +1 -0
  221. package/dist/floating-ui.utils-DoPG3M8C.mjs +150 -0
  222. package/dist/floating-ui.utils-DoPG3M8C.mjs.map +1 -0
  223. package/dist/floating-ui.utils.dom-BAD07kLX.mjs +176 -0
  224. package/dist/floating-ui.utils.dom-BAD07kLX.mjs.map +1 -0
  225. package/dist/floating-ui.utils.dom-djqmdyxg.js +175 -0
  226. package/dist/floating-ui.utils.dom-djqmdyxg.js.map +1 -0
  227. package/dist/form/components/Form.d.ts +4 -0
  228. package/dist/form/components/FormControl.d.ts +3 -0
  229. package/dist/form/components/FormDescription.d.ts +3 -0
  230. package/dist/form/components/FormField.d.ts +3 -0
  231. package/dist/form/components/FormItem.d.ts +7 -0
  232. package/dist/form/components/FormLabel.d.ts +3 -0
  233. package/dist/form/components/FormMessage.d.ts +4 -0
  234. package/dist/form/components/variants.d.ts +6 -0
  235. package/dist/form/context/index.d.ts +4 -0
  236. package/dist/form/hooks/useFormField.d.ts +14 -0
  237. package/dist/form/index.d.ts +11 -0
  238. package/dist/form/index.js +19 -0
  239. package/dist/form/index.js.map +1 -0
  240. package/dist/form/index.mjs +13 -0
  241. package/dist/form/index.mjs.map +1 -0
  242. package/dist/form/type.d.ts +48 -0
  243. package/dist/getEmptyRootContext-CBrvBF2x.mjs +17 -0
  244. package/dist/getEmptyRootContext-CBrvBF2x.mjs.map +1 -0
  245. package/dist/getEmptyRootContext-DrOPobKp.js +16 -0
  246. package/dist/getEmptyRootContext-DrOPobKp.js.map +1 -0
  247. package/dist/getPseudoElementBounds-CN2-zcsN.js +29 -0
  248. package/dist/getPseudoElementBounds-CN2-zcsN.js.map +1 -0
  249. package/dist/getPseudoElementBounds-i4YX-qQ2.mjs +30 -0
  250. package/dist/getPseudoElementBounds-i4YX-qQ2.mjs.map +1 -0
  251. package/dist/hooks/use-mobile.d.ts +1 -0
  252. package/dist/hover-card/index.d.ts +5 -0
  253. package/dist/hover-card/index.js +501 -0
  254. package/dist/hover-card/index.js.map +1 -0
  255. package/dist/hover-card/index.mjs +483 -0
  256. package/dist/hover-card/index.mjs.map +1 -0
  257. package/dist/index-B3i3Mf61.mjs +147 -0
  258. package/dist/index-B3i3Mf61.mjs.map +1 -0
  259. package/dist/index-zBgD3uv6.js +163 -0
  260. package/dist/index-zBgD3uv6.js.map +1 -0
  261. package/dist/index.d.ts +57 -0
  262. package/dist/index.js +393 -0
  263. package/dist/index.js.map +1 -0
  264. package/dist/index.mjs +384 -0
  265. package/dist/index.mjs.map +1 -0
  266. package/dist/inertValue-gSeyz2Lm.js +10 -0
  267. package/dist/inertValue-gSeyz2Lm.js.map +1 -0
  268. package/dist/inertValue-t5QI1CFn.mjs +11 -0
  269. package/dist/inertValue-t5QI1CFn.mjs.map +1 -0
  270. package/dist/input/index.d.ts +3 -0
  271. package/dist/input/index.js +167 -0
  272. package/dist/input/index.js.map +1 -0
  273. package/dist/input/index.mjs +150 -0
  274. package/dist/input/index.mjs.map +1 -0
  275. package/dist/input-group/index.d.ts +19 -0
  276. package/dist/input-group/index.js +146 -0
  277. package/dist/input-group/index.js.map +1 -0
  278. package/dist/input-group/index.mjs +146 -0
  279. package/dist/input-group/index.mjs.map +1 -0
  280. package/dist/input-otp/index.d.ts +11 -0
  281. package/dist/input-otp/index.js +84 -0
  282. package/dist/input-otp/index.js.map +1 -0
  283. package/dist/input-otp/index.mjs +67 -0
  284. package/dist/input-otp/index.mjs.map +1 -0
  285. package/dist/isElementDisabled-2KG8-O4B.mjs +7 -0
  286. package/dist/isElementDisabled-2KG8-O4B.mjs.map +1 -0
  287. package/dist/isElementDisabled-p2fc38Eq.js +6 -0
  288. package/dist/isElementDisabled-p2fc38Eq.js.map +1 -0
  289. package/dist/item/index.d.ts +23 -0
  290. package/dist/item/index.js +196 -0
  291. package/dist/item/index.js.map +1 -0
  292. package/dist/item/index.mjs +196 -0
  293. package/dist/item/index.mjs.map +1 -0
  294. package/dist/jsx-runtime-CPzt8Nmm.js +321 -0
  295. package/dist/jsx-runtime-CPzt8Nmm.js.map +1 -0
  296. package/dist/jsx-runtime-Dog7MAYX.mjs +322 -0
  297. package/dist/jsx-runtime-Dog7MAYX.mjs.map +1 -0
  298. package/dist/kbd/index.d.ts +3 -0
  299. package/dist/kbd/index.js +30 -0
  300. package/dist/kbd/index.js.map +1 -0
  301. package/dist/kbd/index.mjs +30 -0
  302. package/dist/kbd/index.mjs.map +1 -0
  303. package/dist/label/index.d.ts +3 -0
  304. package/dist/label/index.js +19 -0
  305. package/dist/label/index.js.map +1 -0
  306. package/dist/label/index.mjs +19 -0
  307. package/dist/label/index.mjs.map +1 -0
  308. package/dist/lib/cva.d.ts +1 -0
  309. package/dist/lib/index.d.ts +2 -0
  310. package/dist/lib/utils.d.ts +2 -0
  311. package/dist/menubar/index.d.ts +29 -0
  312. package/dist/menubar/index.js +365 -0
  313. package/dist/menubar/index.js.map +1 -0
  314. package/dist/menubar/index.mjs +348 -0
  315. package/dist/menubar/index.mjs.map +1 -0
  316. package/dist/native-select/index.d.ts +8 -0
  317. package/dist/native-select/index.js +54 -0
  318. package/dist/native-select/index.js.map +1 -0
  319. package/dist/native-select/index.mjs +54 -0
  320. package/dist/native-select/index.mjs.map +1 -0
  321. package/dist/navigation-menu/index.d.ts +12 -0
  322. package/dist/navigation-menu/index.js +1702 -0
  323. package/dist/navigation-menu/index.js.map +1 -0
  324. package/dist/navigation-menu/index.mjs +1684 -0
  325. package/dist/navigation-menu/index.mjs.map +1 -0
  326. package/dist/owner-Cf_X0F_A.mjs +7 -0
  327. package/dist/owner-Cf_X0F_A.mjs.map +1 -0
  328. package/dist/owner-DohlhdQa.js +6 -0
  329. package/dist/owner-DohlhdQa.js.map +1 -0
  330. package/dist/pagination/index.d.ts +17 -0
  331. package/dist/pagination/index.js +129 -0
  332. package/dist/pagination/index.js.map +1 -0
  333. package/dist/pagination/index.mjs +129 -0
  334. package/dist/pagination/index.mjs.map +1 -0
  335. package/dist/popover/index.d.ts +12 -0
  336. package/dist/popover/index.js +83 -0
  337. package/dist/popover/index.js.map +1 -0
  338. package/dist/popover/index.mjs +83 -0
  339. package/dist/popover/index.mjs.map +1 -0
  340. package/dist/popupStateMapping-DKN5mXrh.js +2694 -0
  341. package/dist/popupStateMapping-DKN5mXrh.js.map +1 -0
  342. package/dist/popupStateMapping-Dvf6vjid.mjs +2678 -0
  343. package/dist/popupStateMapping-Dvf6vjid.mjs.map +1 -0
  344. package/dist/progress/index.d.ts +7 -0
  345. package/dist/progress/index.js +315 -0
  346. package/dist/progress/index.js.map +1 -0
  347. package/dist/progress/index.mjs +298 -0
  348. package/dist/progress/index.mjs.map +1 -0
  349. package/dist/radio-group/index.d.ts +5 -0
  350. package/dist/radio-group/index.js +549 -0
  351. package/dist/radio-group/index.js.map +1 -0
  352. package/dist/radio-group/index.mjs +532 -0
  353. package/dist/radio-group/index.mjs.map +1 -0
  354. package/dist/resizable/index.d.ts +7 -0
  355. package/dist/resizable/index.js +63 -0
  356. package/dist/resizable/index.js.map +1 -0
  357. package/dist/resizable/index.mjs +46 -0
  358. package/dist/resizable/index.mjs.map +1 -0
  359. package/dist/resolveAriaLabelledBy-BOrKNO_y.js +10 -0
  360. package/dist/resolveAriaLabelledBy-BOrKNO_y.js.map +1 -0
  361. package/dist/resolveAriaLabelledBy-JxsTST5s.mjs +11 -0
  362. package/dist/resolveAriaLabelledBy-JxsTST5s.mjs.map +1 -0
  363. package/dist/safePolygon-ClN7sX4N.mjs +710 -0
  364. package/dist/safePolygon-ClN7sX4N.mjs.map +1 -0
  365. package/dist/safePolygon-DzT-LXP_.js +727 -0
  366. package/dist/safePolygon-DzT-LXP_.js.map +1 -0
  367. package/dist/safeReact-V1Amqcv9.mjs +8 -0
  368. package/dist/safeReact-V1Amqcv9.mjs.map +1 -0
  369. package/dist/safeReact-j2phwwP4.js +24 -0
  370. package/dist/safeReact-j2phwwP4.js.map +1 -0
  371. package/dist/scroll-area/index.d.ts +4 -0
  372. package/dist/scroll-area/index.js +1017 -0
  373. package/dist/scroll-area/index.js.map +1 -0
  374. package/dist/scroll-area/index.mjs +1000 -0
  375. package/dist/scroll-area/index.mjs.map +1 -0
  376. package/dist/select/index.d.ts +15 -0
  377. package/dist/select/index.js +2311 -0
  378. package/dist/select/index.js.map +1 -0
  379. package/dist/select/index.mjs +2293 -0
  380. package/dist/select/index.mjs.map +1 -0
  381. package/dist/separator/index.d.ts +3 -0
  382. package/dist/separator/index.js +25 -0
  383. package/dist/separator/index.js.map +1 -0
  384. package/dist/separator/index.mjs +25 -0
  385. package/dist/separator/index.mjs.map +1 -0
  386. package/dist/serializeValue-BLvnTy3o.mjs +17 -0
  387. package/dist/serializeValue-BLvnTy3o.mjs.map +1 -0
  388. package/dist/serializeValue-rMlAxdiX.js +16 -0
  389. package/dist/serializeValue-rMlAxdiX.js.map +1 -0
  390. package/dist/sheet/index.d.ts +14 -0
  391. package/dist/sheet/index.js +135 -0
  392. package/dist/sheet/index.js.map +1 -0
  393. package/dist/sheet/index.mjs +135 -0
  394. package/dist/sheet/index.mjs.map +1 -0
  395. package/dist/sidebar/index.d.ts +64 -0
  396. package/dist/sidebar/index.js +671 -0
  397. package/dist/sidebar/index.js.map +1 -0
  398. package/dist/sidebar/index.mjs +654 -0
  399. package/dist/sidebar/index.mjs.map +1 -0
  400. package/dist/skeleton/index.d.ts +2 -0
  401. package/dist/skeleton/index.js +16 -0
  402. package/dist/skeleton/index.js.map +1 -0
  403. package/dist/skeleton/index.mjs +16 -0
  404. package/dist/skeleton/index.mjs.map +1 -0
  405. package/dist/slider/index.d.ts +3 -0
  406. package/dist/slider/index.js +1361 -0
  407. package/dist/slider/index.js.map +1 -0
  408. package/dist/slider/index.mjs +1344 -0
  409. package/dist/slider/index.mjs.map +1 -0
  410. package/dist/sonner/index.d.ts +3 -0
  411. package/dist/sonner/index.js +10 -0
  412. package/dist/sonner/index.js.map +1 -0
  413. package/dist/sonner/index.mjs +7 -0
  414. package/dist/sonner/index.mjs.map +1 -0
  415. package/dist/sonner/sonner.d.ts +3 -0
  416. package/dist/sonner-Ctpa1LLR.js +36 -0
  417. package/dist/sonner-Ctpa1LLR.js.map +1 -0
  418. package/dist/sonner-D0rALbMy.mjs +37 -0
  419. package/dist/sonner-D0rALbMy.mjs.map +1 -0
  420. package/dist/spinner/index.d.ts +2 -0
  421. package/dist/spinner/index.js +10 -0
  422. package/dist/spinner/index.js.map +1 -0
  423. package/dist/spinner/index.mjs +10 -0
  424. package/dist/spinner/index.mjs.map +1 -0
  425. package/dist/style.css +6284 -0
  426. package/dist/styles-BY9BExrL.js +17 -0
  427. package/dist/styles-BY9BExrL.js.map +1 -0
  428. package/dist/styles-DGdX19B5.mjs +18 -0
  429. package/dist/styles-DGdX19B5.mjs.map +1 -0
  430. package/dist/switch/index.d.ts +5 -0
  431. package/dist/switch/index.js +306 -0
  432. package/dist/switch/index.js.map +1 -0
  433. package/dist/switch/index.mjs +289 -0
  434. package/dist/switch/index.mjs.map +1 -0
  435. package/dist/table/index.d.ts +10 -0
  436. package/dist/table/index.js +115 -0
  437. package/dist/table/index.js.map +1 -0
  438. package/dist/table/index.mjs +115 -0
  439. package/dist/table/index.mjs.map +1 -0
  440. package/dist/tabs/index.d.ts +11 -0
  441. package/dist/tabs/index.js +718 -0
  442. package/dist/tabs/index.js.map +1 -0
  443. package/dist/tabs/index.mjs +701 -0
  444. package/dist/tabs/index.mjs.map +1 -0
  445. package/dist/textarea/index.d.ts +3 -0
  446. package/dist/textarea/index.js +19 -0
  447. package/dist/textarea/index.js.map +1 -0
  448. package/dist/textarea/index.mjs +19 -0
  449. package/dist/textarea/index.mjs.map +1 -0
  450. package/dist/toggle/index.d.ts +9 -0
  451. package/dist/toggle/index.js +9 -0
  452. package/dist/toggle/index.js.map +1 -0
  453. package/dist/toggle/index.mjs +9 -0
  454. package/dist/toggle/index.mjs.map +1 -0
  455. package/dist/toggle-group/index.d.ts +10 -0
  456. package/dist/toggle-group/index.js +199 -0
  457. package/dist/toggle-group/index.js.map +1 -0
  458. package/dist/toggle-group/index.mjs +182 -0
  459. package/dist/toggle-group/index.mjs.map +1 -0
  460. package/dist/tooltip/index.d.ts +6 -0
  461. package/dist/tooltip/index.js +940 -0
  462. package/dist/tooltip/index.js.map +1 -0
  463. package/dist/tooltip/index.mjs +922 -0
  464. package/dist/tooltip/index.mjs.map +1 -0
  465. package/dist/useAnchorPositioning-DEkPt210.mjs +2213 -0
  466. package/dist/useAnchorPositioning-DEkPt210.mjs.map +1 -0
  467. package/dist/useAnchorPositioning-jXRh4g8d.js +2229 -0
  468. package/dist/useAnchorPositioning-jXRh4g8d.js.map +1 -0
  469. package/dist/useAnimationFrame-Bgt4Euiv.js +100 -0
  470. package/dist/useAnimationFrame-Bgt4Euiv.js.map +1 -0
  471. package/dist/useAnimationFrame-CJsjFUv3.mjs +101 -0
  472. package/dist/useAnimationFrame-CJsjFUv3.mjs.map +1 -0
  473. package/dist/useAriaLabelledBy-AZCBHH3a.js +63 -0
  474. package/dist/useAriaLabelledBy-AZCBHH3a.js.map +1 -0
  475. package/dist/useAriaLabelledBy-Chelmb26.mjs +47 -0
  476. package/dist/useAriaLabelledBy-Chelmb26.mjs.map +1 -0
  477. package/dist/useBaseUiId-Dd6rCWZj.mjs +30 -0
  478. package/dist/useBaseUiId-Dd6rCWZj.mjs.map +1 -0
  479. package/dist/useBaseUiId-ZDgjliOe.js +46 -0
  480. package/dist/useBaseUiId-ZDgjliOe.js.map +1 -0
  481. package/dist/useButton-CcvYPR5H.js +246 -0
  482. package/dist/useButton-CcvYPR5H.js.map +1 -0
  483. package/dist/useButton-DbBdV6Ig.mjs +230 -0
  484. package/dist/useButton-DbBdV6Ig.mjs.map +1 -0
  485. package/dist/useClick-1DLd7znk.mjs +97 -0
  486. package/dist/useClick-1DLd7znk.mjs.map +1 -0
  487. package/dist/useClick-wsFFnZw6.js +113 -0
  488. package/dist/useClick-wsFFnZw6.js.map +1 -0
  489. package/dist/useCollapsiblePanel-DIdAXCDX.mjs +439 -0
  490. package/dist/useCollapsiblePanel-DIdAXCDX.mjs.map +1 -0
  491. package/dist/useCollapsiblePanel-OP0gCAiW.js +455 -0
  492. package/dist/useCollapsiblePanel-OP0gCAiW.js.map +1 -0
  493. package/dist/useCompositeItem-CP0qNLGv.mjs +43 -0
  494. package/dist/useCompositeItem-CP0qNLGv.mjs.map +1 -0
  495. package/dist/useCompositeItem-F8jky_8M.js +59 -0
  496. package/dist/useCompositeItem-F8jky_8M.js.map +1 -0
  497. package/dist/useCompositeListItem-CPSGNf6p.js +116 -0
  498. package/dist/useCompositeListItem-CPSGNf6p.js.map +1 -0
  499. package/dist/useCompositeListItem-CvqgwmCe.mjs +100 -0
  500. package/dist/useCompositeListItem-CvqgwmCe.mjs.map +1 -0
  501. package/dist/useControlled-DITi2kHX.mjs +38 -0
  502. package/dist/useControlled-DITi2kHX.mjs.map +1 -0
  503. package/dist/useControlled-DTjTIpeU.js +54 -0
  504. package/dist/useControlled-DTjTIpeU.js.map +1 -0
  505. package/dist/useFocus-BonLJ9UY.js +162 -0
  506. package/dist/useFocus-BonLJ9UY.js.map +1 -0
  507. package/dist/useFocus-D2m1G1R7.mjs +146 -0
  508. package/dist/useFocus-D2m1G1R7.mjs.map +1 -0
  509. package/dist/useIsoLayoutEffect-CAx-dEZM.mjs +8 -0
  510. package/dist/useIsoLayoutEffect-CAx-dEZM.mjs.map +1 -0
  511. package/dist/useIsoLayoutEffect-CYDr9Bko.js +24 -0
  512. package/dist/useIsoLayoutEffect-CYDr9Bko.js.map +1 -0
  513. package/dist/useLabelableId-BMQMbGuJ.mjs +67 -0
  514. package/dist/useLabelableId-BMQMbGuJ.mjs.map +1 -0
  515. package/dist/useLabelableId-C-dL4hfJ.js +83 -0
  516. package/dist/useLabelableId-C-dL4hfJ.js.map +1 -0
  517. package/dist/useOnFirstRender-BYSeF6Y1.js +28 -0
  518. package/dist/useOnFirstRender-BYSeF6Y1.js.map +1 -0
  519. package/dist/useOnFirstRender-_PvKQsmi.mjs +12 -0
  520. package/dist/useOnFirstRender-_PvKQsmi.mjs.map +1 -0
  521. package/dist/useOnMount-CzmIG4WC.js +25 -0
  522. package/dist/useOnMount-CzmIG4WC.js.map +1 -0
  523. package/dist/useOnMount-DN6FnE-7.mjs +9 -0
  524. package/dist/useOnMount-DN6FnE-7.mjs.map +1 -0
  525. package/dist/useOpenChangeComplete-B0xZNwMu.js +194 -0
  526. package/dist/useOpenChangeComplete-B0xZNwMu.js.map +1 -0
  527. package/dist/useOpenChangeComplete-DbPLu-k9.mjs +177 -0
  528. package/dist/useOpenChangeComplete-DbPLu-k9.mjs.map +1 -0
  529. package/dist/useRender-DKDvf6kd.mjs +8 -0
  530. package/dist/useRender-DKDvf6kd.mjs.map +1 -0
  531. package/dist/useRender-PucZeh4Y.js +7 -0
  532. package/dist/useRender-PucZeh4Y.js.map +1 -0
  533. package/dist/useRenderElement-CtyURhhF.js +427 -0
  534. package/dist/useRenderElement-CtyURhhF.js.map +1 -0
  535. package/dist/useRenderElement-DtkRtCHE.mjs +412 -0
  536. package/dist/useRenderElement-DtkRtCHE.mjs.map +1 -0
  537. package/dist/useRole-CuVJ_Qa_.js +125 -0
  538. package/dist/useRole-CuVJ_Qa_.js.map +1 -0
  539. package/dist/useRole-DzRWctvj.mjs +109 -0
  540. package/dist/useRole-DzRWctvj.mjs.map +1 -0
  541. package/dist/useStableCallback-8_xI9oDo.mjs +40 -0
  542. package/dist/useStableCallback-8_xI9oDo.mjs.map +1 -0
  543. package/dist/useStableCallback-CfE_knIO.js +56 -0
  544. package/dist/useStableCallback-CfE_knIO.js.map +1 -0
  545. package/dist/useSyncedFloatingRootContext-BhwJbN5C.js +237 -0
  546. package/dist/useSyncedFloatingRootContext-BhwJbN5C.js.map +1 -0
  547. package/dist/useSyncedFloatingRootContext-BiC-l-Yp.mjs +221 -0
  548. package/dist/useSyncedFloatingRootContext-BiC-l-Yp.mjs.map +1 -0
  549. package/dist/useTimeout-CSlJ10_7.js +45 -0
  550. package/dist/useTimeout-CSlJ10_7.js.map +1 -0
  551. package/dist/useTimeout-DP0d-UkF.mjs +46 -0
  552. package/dist/useTimeout-DP0d-UkF.mjs.map +1 -0
  553. package/dist/useTypeahead-De1veul8.mjs +697 -0
  554. package/dist/useTypeahead-De1veul8.mjs.map +1 -0
  555. package/dist/useTypeahead-JL7mFfnS.js +713 -0
  556. package/dist/useTypeahead-JL7mFfnS.js.map +1 -0
  557. package/dist/useValueAsRef-BPI-p5A3.mjs +22 -0
  558. package/dist/useValueAsRef-BPI-p5A3.mjs.map +1 -0
  559. package/dist/useValueAsRef-uSzmRbW_.js +21 -0
  560. package/dist/useValueAsRef-uSzmRbW_.js.map +1 -0
  561. package/dist/useValueChanged-CEUlHhs5.mjs +20 -0
  562. package/dist/useValueChanged-CEUlHhs5.mjs.map +1 -0
  563. package/dist/useValueChanged-CvJls2Pv.js +36 -0
  564. package/dist/useValueChanged-CvJls2Pv.js.map +1 -0
  565. package/dist/utils-H80jjgLf.mjs +9 -0
  566. package/dist/utils-H80jjgLf.mjs.map +1 -0
  567. package/dist/utils-ij3i9zTT.js +8 -0
  568. package/dist/utils-ij3i9zTT.js.map +1 -0
  569. package/dist/valueToPercent-CfYnVMaY.js +39 -0
  570. package/dist/valueToPercent-CfYnVMaY.js.map +1 -0
  571. package/dist/valueToPercent-DxMnLf8t.mjs +40 -0
  572. package/dist/valueToPercent-DxMnLf8t.mjs.map +1 -0
  573. package/dist/visuallyHidden-D_sL9-70.mjs +25 -0
  574. package/dist/visuallyHidden-D_sL9-70.mjs.map +1 -0
  575. package/dist/visuallyHidden-Dkg-c0_K.js +24 -0
  576. package/dist/visuallyHidden-Dkg-c0_K.js.map +1 -0
  577. package/package.json +382 -0
@@ -0,0 +1,291 @@
1
+ import * as React from "react";
2
+ import { C as CompositeList } from "./CompositeList-CM71m-RA.mjs";
3
+ import { i as isElementDisabled } from "./isElementDisabled-2KG8-O4B.mjs";
4
+ import { u as useStableCallback } from "./useStableCallback-8_xI9oDo.mjs";
5
+ import { c as useMergedRefs, b as EMPTY_ARRAY$1, E as EMPTY_OBJECT, u as useRenderElement } from "./useRenderElement-DtkRtCHE.mjs";
6
+ import { s as scrollIntoViewIfNeeded, A as ALL_KEYS, a as ARROW_KEYS, i as isNativeInput, b as ARROW_DOWN, c as ARROW_RIGHT, H as HOME, E as END, d as ARROW_LEFT, e as ARROW_UP, V as VERTICAL_KEYS_WITH_EXTRA_KEYS, f as VERTICAL_KEYS, g as HORIZONTAL_KEYS_WITH_EXTRA_KEYS, h as HORIZONTAL_KEYS, M as MODIFIER_KEYS } from "./composite-B6lEHrCV.mjs";
7
+ import { g as getMinListIndex, a as getMaxListIndex, c as createGridCellMap, b as isListIndexDisabled, d as getGridNavigatedIndex, e as getGridCellIndexOfCorner, f as getGridCellIndices, h as findNonDisabledListIndex, i as isIndexOutOfListBounds } from "./composite-54CI9F0V.mjs";
8
+ import { C as CompositeRootContext } from "./useButton-DbBdV6Ig.mjs";
9
+ import { u as useDirection } from "./DirectionContext-BaCziR5k.mjs";
10
+ import { j as jsxRuntimeExports } from "./jsx-runtime-Dog7MAYX.mjs";
11
+ const ACTIVE_COMPOSITE_ITEM = "data-composite-item-active";
12
+ const EMPTY_ARRAY = [];
13
+ function useCompositeRoot(params) {
14
+ const {
15
+ itemSizes,
16
+ cols = 1,
17
+ loopFocus = true,
18
+ dense = false,
19
+ orientation = "both",
20
+ direction,
21
+ highlightedIndex: externalHighlightedIndex,
22
+ onHighlightedIndexChange: externalSetHighlightedIndex,
23
+ rootRef: externalRef,
24
+ enableHomeAndEndKeys = false,
25
+ stopEventPropagation = false,
26
+ disabledIndices,
27
+ modifierKeys = EMPTY_ARRAY
28
+ } = params;
29
+ const [internalHighlightedIndex, internalSetHighlightedIndex] = React.useState(0);
30
+ const isGrid = cols > 1;
31
+ const rootRef = React.useRef(null);
32
+ const mergedRef = useMergedRefs(rootRef, externalRef);
33
+ const elementsRef = React.useRef([]);
34
+ const hasSetDefaultIndexRef = React.useRef(false);
35
+ const highlightedIndex = externalHighlightedIndex ?? internalHighlightedIndex;
36
+ const onHighlightedIndexChange = useStableCallback((index, shouldScrollIntoView = false) => {
37
+ (externalSetHighlightedIndex ?? internalSetHighlightedIndex)(index);
38
+ if (shouldScrollIntoView) {
39
+ const newActiveItem = elementsRef.current[index];
40
+ scrollIntoViewIfNeeded(rootRef.current, newActiveItem, direction, orientation);
41
+ }
42
+ });
43
+ const onMapChange = useStableCallback((map) => {
44
+ if (map.size === 0 || hasSetDefaultIndexRef.current) {
45
+ return;
46
+ }
47
+ hasSetDefaultIndexRef.current = true;
48
+ const sortedElements = Array.from(map.keys());
49
+ const activeItem = sortedElements.find((compositeElement) => compositeElement == null ? void 0 : compositeElement.hasAttribute(ACTIVE_COMPOSITE_ITEM)) ?? null;
50
+ const activeIndex = activeItem ? sortedElements.indexOf(activeItem) : -1;
51
+ if (activeIndex !== -1) {
52
+ onHighlightedIndexChange(activeIndex);
53
+ }
54
+ scrollIntoViewIfNeeded(rootRef.current, activeItem, direction, orientation);
55
+ });
56
+ const props = React.useMemo(() => ({
57
+ "aria-orientation": orientation === "both" ? void 0 : orientation,
58
+ ref: mergedRef,
59
+ onFocus(event) {
60
+ const element = rootRef.current;
61
+ if (!element || !isNativeInput(event.target)) {
62
+ return;
63
+ }
64
+ event.target.setSelectionRange(0, event.target.value.length ?? 0);
65
+ },
66
+ onKeyDown(event) {
67
+ const RELEVANT_KEYS = enableHomeAndEndKeys ? ALL_KEYS : ARROW_KEYS;
68
+ if (!RELEVANT_KEYS.has(event.key)) {
69
+ return;
70
+ }
71
+ if (isModifierKeySet(event, modifierKeys)) {
72
+ return;
73
+ }
74
+ const element = rootRef.current;
75
+ if (!element) {
76
+ return;
77
+ }
78
+ const isRtl = direction === "rtl";
79
+ const horizontalForwardKey = isRtl ? ARROW_LEFT : ARROW_RIGHT;
80
+ const forwardKey = {
81
+ horizontal: horizontalForwardKey,
82
+ vertical: ARROW_DOWN,
83
+ both: horizontalForwardKey
84
+ }[orientation];
85
+ const horizontalBackwardKey = isRtl ? ARROW_RIGHT : ARROW_LEFT;
86
+ const backwardKey = {
87
+ horizontal: horizontalBackwardKey,
88
+ vertical: ARROW_UP,
89
+ both: horizontalBackwardKey
90
+ }[orientation];
91
+ if (isNativeInput(event.target) && !isElementDisabled(event.target)) {
92
+ const selectionStart = event.target.selectionStart;
93
+ const selectionEnd = event.target.selectionEnd;
94
+ const textContent = event.target.value ?? "";
95
+ if (selectionStart == null || event.shiftKey || selectionStart !== selectionEnd) {
96
+ return;
97
+ }
98
+ if (event.key !== backwardKey && selectionStart < textContent.length) {
99
+ return;
100
+ }
101
+ if (event.key !== forwardKey && selectionStart > 0) {
102
+ return;
103
+ }
104
+ }
105
+ let nextIndex = highlightedIndex;
106
+ const minIndex = getMinListIndex(elementsRef, disabledIndices);
107
+ const maxIndex = getMaxListIndex(elementsRef, disabledIndices);
108
+ if (isGrid) {
109
+ const sizes = itemSizes || Array.from({
110
+ length: elementsRef.current.length
111
+ }, () => ({
112
+ width: 1,
113
+ height: 1
114
+ }));
115
+ const cellMap = createGridCellMap(sizes, cols, dense);
116
+ const minGridIndex = cellMap.findIndex((index) => index != null && !isListIndexDisabled(elementsRef, index, disabledIndices));
117
+ const maxGridIndex = cellMap.reduce((foundIndex, index, cellIndex) => index != null && !isListIndexDisabled(elementsRef, index, disabledIndices) ? cellIndex : foundIndex, -1);
118
+ nextIndex = cellMap[getGridNavigatedIndex({
119
+ current: cellMap.map((itemIndex) => itemIndex ? elementsRef.current[itemIndex] : null)
120
+ }, {
121
+ event,
122
+ orientation,
123
+ loopFocus,
124
+ cols,
125
+ // treat undefined (empty grid spaces) as disabled indices so we
126
+ // don't end up in them
127
+ disabledIndices: getGridCellIndices([...disabledIndices || elementsRef.current.map((_, index) => isListIndexDisabled(elementsRef, index) ? index : void 0), void 0], cellMap),
128
+ minIndex: minGridIndex,
129
+ maxIndex: maxGridIndex,
130
+ prevIndex: getGridCellIndexOfCorner(
131
+ highlightedIndex > maxIndex ? minIndex : highlightedIndex,
132
+ sizes,
133
+ cellMap,
134
+ cols,
135
+ // use a corner matching the edge closest to the direction we're
136
+ // moving in so we don't end up in the same item. Prefer
137
+ // top/left over bottom/right.
138
+ // eslint-disable-next-line no-nested-ternary
139
+ event.key === ARROW_DOWN ? "bl" : event.key === ARROW_RIGHT ? "tr" : "tl"
140
+ ),
141
+ rtl: isRtl
142
+ })];
143
+ }
144
+ const forwardKeys = {
145
+ horizontal: [horizontalForwardKey],
146
+ vertical: [ARROW_DOWN],
147
+ both: [horizontalForwardKey, ARROW_DOWN]
148
+ }[orientation];
149
+ const backwardKeys = {
150
+ horizontal: [horizontalBackwardKey],
151
+ vertical: [ARROW_UP],
152
+ both: [horizontalBackwardKey, ARROW_UP]
153
+ }[orientation];
154
+ const preventedKeys = isGrid ? RELEVANT_KEYS : {
155
+ horizontal: enableHomeAndEndKeys ? HORIZONTAL_KEYS_WITH_EXTRA_KEYS : HORIZONTAL_KEYS,
156
+ vertical: enableHomeAndEndKeys ? VERTICAL_KEYS_WITH_EXTRA_KEYS : VERTICAL_KEYS,
157
+ both: RELEVANT_KEYS
158
+ }[orientation];
159
+ if (enableHomeAndEndKeys) {
160
+ if (event.key === HOME) {
161
+ nextIndex = minIndex;
162
+ } else if (event.key === END) {
163
+ nextIndex = maxIndex;
164
+ }
165
+ }
166
+ if (nextIndex === highlightedIndex && (forwardKeys.includes(event.key) || backwardKeys.includes(event.key))) {
167
+ if (loopFocus && nextIndex === maxIndex && forwardKeys.includes(event.key)) {
168
+ nextIndex = minIndex;
169
+ } else if (loopFocus && nextIndex === minIndex && backwardKeys.includes(event.key)) {
170
+ nextIndex = maxIndex;
171
+ } else {
172
+ nextIndex = findNonDisabledListIndex(elementsRef, {
173
+ startingIndex: nextIndex,
174
+ decrement: backwardKeys.includes(event.key),
175
+ disabledIndices
176
+ });
177
+ }
178
+ }
179
+ if (nextIndex !== highlightedIndex && !isIndexOutOfListBounds(elementsRef, nextIndex)) {
180
+ if (stopEventPropagation) {
181
+ event.stopPropagation();
182
+ }
183
+ if (preventedKeys.has(event.key)) {
184
+ event.preventDefault();
185
+ }
186
+ onHighlightedIndexChange(nextIndex, true);
187
+ queueMicrotask(() => {
188
+ var _a;
189
+ (_a = elementsRef.current[nextIndex]) == null ? void 0 : _a.focus();
190
+ });
191
+ }
192
+ }
193
+ }), [cols, dense, direction, disabledIndices, elementsRef, enableHomeAndEndKeys, highlightedIndex, isGrid, itemSizes, loopFocus, mergedRef, modifierKeys, onHighlightedIndexChange, orientation, stopEventPropagation]);
194
+ return React.useMemo(() => ({
195
+ props,
196
+ highlightedIndex,
197
+ onHighlightedIndexChange,
198
+ elementsRef,
199
+ disabledIndices,
200
+ onMapChange,
201
+ relayKeyboardEvent: props.onKeyDown
202
+ }), [props, highlightedIndex, onHighlightedIndexChange, elementsRef, disabledIndices, onMapChange]);
203
+ }
204
+ function isModifierKeySet(event, ignoredModifierKeys) {
205
+ for (const key of MODIFIER_KEYS.values()) {
206
+ if (ignoredModifierKeys.includes(key)) {
207
+ continue;
208
+ }
209
+ if (event.getModifierState(key)) {
210
+ return true;
211
+ }
212
+ }
213
+ return false;
214
+ }
215
+ function CompositeRoot(componentProps) {
216
+ const {
217
+ render,
218
+ className,
219
+ refs = EMPTY_ARRAY$1,
220
+ props = EMPTY_ARRAY$1,
221
+ state = EMPTY_OBJECT,
222
+ stateAttributesMapping,
223
+ highlightedIndex: highlightedIndexProp,
224
+ onHighlightedIndexChange: onHighlightedIndexChangeProp,
225
+ orientation,
226
+ dense,
227
+ itemSizes,
228
+ loopFocus,
229
+ cols,
230
+ enableHomeAndEndKeys,
231
+ onMapChange: onMapChangeProp,
232
+ stopEventPropagation = true,
233
+ rootRef,
234
+ disabledIndices,
235
+ modifierKeys,
236
+ highlightItemOnHover = false,
237
+ tag = "div",
238
+ ...elementProps
239
+ } = componentProps;
240
+ const direction = useDirection();
241
+ const {
242
+ props: defaultProps,
243
+ highlightedIndex,
244
+ onHighlightedIndexChange,
245
+ elementsRef,
246
+ onMapChange: onMapChangeUnwrapped,
247
+ relayKeyboardEvent
248
+ } = useCompositeRoot({
249
+ itemSizes,
250
+ cols,
251
+ loopFocus,
252
+ dense,
253
+ orientation,
254
+ highlightedIndex: highlightedIndexProp,
255
+ onHighlightedIndexChange: onHighlightedIndexChangeProp,
256
+ rootRef,
257
+ stopEventPropagation,
258
+ enableHomeAndEndKeys,
259
+ direction,
260
+ disabledIndices,
261
+ modifierKeys
262
+ });
263
+ const element = useRenderElement(tag, componentProps, {
264
+ state,
265
+ ref: refs,
266
+ props: [defaultProps, ...props, elementProps],
267
+ stateAttributesMapping
268
+ });
269
+ const contextValue = React.useMemo(() => ({
270
+ highlightedIndex,
271
+ onHighlightedIndexChange,
272
+ highlightItemOnHover,
273
+ relayKeyboardEvent
274
+ }), [highlightedIndex, onHighlightedIndexChange, highlightItemOnHover, relayKeyboardEvent]);
275
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(CompositeRootContext.Provider, {
276
+ value: contextValue,
277
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx(CompositeList, {
278
+ elementsRef,
279
+ onMapChange: (newMap) => {
280
+ onMapChangeProp == null ? void 0 : onMapChangeProp(newMap);
281
+ onMapChangeUnwrapped(newMap);
282
+ },
283
+ children: element
284
+ })
285
+ });
286
+ }
287
+ export {
288
+ ACTIVE_COMPOSITE_ITEM as A,
289
+ CompositeRoot as C
290
+ };
291
+ //# sourceMappingURL=CompositeRoot-Clz7hqk6.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositeRoot-Clz7hqk6.mjs","sources":["../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/composite/constants.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/composite/root/useCompositeRoot.js","../../../node_modules/.pnpm/@base-ui+react@1.3.0_@types+react@19.2.14_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/esm/composite/root/CompositeRoot.js"],"sourcesContent":["export const ACTIVE_COMPOSITE_ITEM = 'data-composite-item-active';","'use client';\n\nimport * as React from 'react';\nimport { isElementDisabled } from '@base-ui/utils/isElementDisabled';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { useMergedRefs } from '@base-ui/utils/useMergedRefs';\nimport { ALL_KEYS, ARROW_DOWN, ARROW_KEYS, ARROW_LEFT, ARROW_RIGHT, ARROW_UP, END, HOME, HORIZONTAL_KEYS, HORIZONTAL_KEYS_WITH_EXTRA_KEYS, MODIFIER_KEYS, VERTICAL_KEYS, VERTICAL_KEYS_WITH_EXTRA_KEYS, createGridCellMap, findNonDisabledListIndex, getGridCellIndexOfCorner, getGridCellIndices, getGridNavigatedIndex, getMaxListIndex, getMinListIndex, isListIndexDisabled, isIndexOutOfListBounds, isNativeInput, scrollIntoViewIfNeeded } from \"../composite.js\";\nimport { ACTIVE_COMPOSITE_ITEM } from \"../constants.js\";\nconst EMPTY_ARRAY = [];\nexport function useCompositeRoot(params) {\n const {\n itemSizes,\n cols = 1,\n loopFocus = true,\n dense = false,\n orientation = 'both',\n direction,\n highlightedIndex: externalHighlightedIndex,\n onHighlightedIndexChange: externalSetHighlightedIndex,\n rootRef: externalRef,\n enableHomeAndEndKeys = false,\n stopEventPropagation = false,\n disabledIndices,\n modifierKeys = EMPTY_ARRAY\n } = params;\n const [internalHighlightedIndex, internalSetHighlightedIndex] = React.useState(0);\n const isGrid = cols > 1;\n const rootRef = React.useRef(null);\n const mergedRef = useMergedRefs(rootRef, externalRef);\n const elementsRef = React.useRef([]);\n const hasSetDefaultIndexRef = React.useRef(false);\n const highlightedIndex = externalHighlightedIndex ?? internalHighlightedIndex;\n const onHighlightedIndexChange = useStableCallback((index, shouldScrollIntoView = false) => {\n (externalSetHighlightedIndex ?? internalSetHighlightedIndex)(index);\n if (shouldScrollIntoView) {\n const newActiveItem = elementsRef.current[index];\n scrollIntoViewIfNeeded(rootRef.current, newActiveItem, direction, orientation);\n }\n });\n const onMapChange = useStableCallback(map => {\n if (map.size === 0 || hasSetDefaultIndexRef.current) {\n return;\n }\n hasSetDefaultIndexRef.current = true;\n const sortedElements = Array.from(map.keys());\n const activeItem = sortedElements.find(compositeElement => compositeElement?.hasAttribute(ACTIVE_COMPOSITE_ITEM)) ?? null;\n // Set the default highlighted index of an arbitrary composite item.\n const activeIndex = activeItem ? sortedElements.indexOf(activeItem) : -1;\n if (activeIndex !== -1) {\n onHighlightedIndexChange(activeIndex);\n }\n scrollIntoViewIfNeeded(rootRef.current, activeItem, direction, orientation);\n });\n const props = React.useMemo(() => ({\n 'aria-orientation': orientation === 'both' ? undefined : orientation,\n ref: mergedRef,\n onFocus(event) {\n const element = rootRef.current;\n if (!element || !isNativeInput(event.target)) {\n return;\n }\n event.target.setSelectionRange(0, event.target.value.length ?? 0);\n },\n onKeyDown(event) {\n const RELEVANT_KEYS = enableHomeAndEndKeys ? ALL_KEYS : ARROW_KEYS;\n if (!RELEVANT_KEYS.has(event.key)) {\n return;\n }\n if (isModifierKeySet(event, modifierKeys)) {\n return;\n }\n const element = rootRef.current;\n if (!element) {\n return;\n }\n const isRtl = direction === 'rtl';\n const horizontalForwardKey = isRtl ? ARROW_LEFT : ARROW_RIGHT;\n const forwardKey = {\n horizontal: horizontalForwardKey,\n vertical: ARROW_DOWN,\n both: horizontalForwardKey\n }[orientation];\n const horizontalBackwardKey = isRtl ? ARROW_RIGHT : ARROW_LEFT;\n const backwardKey = {\n horizontal: horizontalBackwardKey,\n vertical: ARROW_UP,\n both: horizontalBackwardKey\n }[orientation];\n if (isNativeInput(event.target) && !isElementDisabled(event.target)) {\n const selectionStart = event.target.selectionStart;\n const selectionEnd = event.target.selectionEnd;\n const textContent = event.target.value ?? '';\n // return to native textbox behavior when\n // 1 - Shift is held to make a text selection, or if there already is a text selection\n if (selectionStart == null || event.shiftKey || selectionStart !== selectionEnd) {\n return;\n }\n // 2 - arrow-ing forward and not in the last position of the text\n if (event.key !== backwardKey && selectionStart < textContent.length) {\n return;\n }\n // 3 -arrow-ing backward and not in the first position of the text\n if (event.key !== forwardKey && selectionStart > 0) {\n return;\n }\n }\n let nextIndex = highlightedIndex;\n const minIndex = getMinListIndex(elementsRef, disabledIndices);\n const maxIndex = getMaxListIndex(elementsRef, disabledIndices);\n if (isGrid) {\n const sizes = itemSizes || Array.from({\n length: elementsRef.current.length\n }, () => ({\n width: 1,\n height: 1\n }));\n // To calculate movements on the grid, we use hypothetical cell indices\n // as if every item was 1x1, then convert back to real indices.\n const cellMap = createGridCellMap(sizes, cols, dense);\n const minGridIndex = cellMap.findIndex(index => index != null && !isListIndexDisabled(elementsRef, index, disabledIndices));\n // last enabled index\n const maxGridIndex = cellMap.reduce((foundIndex, index, cellIndex) => index != null && !isListIndexDisabled(elementsRef, index, disabledIndices) ? cellIndex : foundIndex, -1);\n nextIndex = cellMap[getGridNavigatedIndex({\n current: cellMap.map(itemIndex => itemIndex ? elementsRef.current[itemIndex] : null)\n }, {\n event,\n orientation,\n loopFocus,\n cols,\n // treat undefined (empty grid spaces) as disabled indices so we\n // don't end up in them\n disabledIndices: getGridCellIndices([...(disabledIndices || elementsRef.current.map((_, index) => isListIndexDisabled(elementsRef, index) ? index : undefined)), undefined], cellMap),\n minIndex: minGridIndex,\n maxIndex: maxGridIndex,\n prevIndex: getGridCellIndexOfCorner(highlightedIndex > maxIndex ? minIndex : highlightedIndex, sizes, cellMap, cols,\n // use a corner matching the edge closest to the direction we're\n // moving in so we don't end up in the same item. Prefer\n // top/left over bottom/right.\n // eslint-disable-next-line no-nested-ternary\n event.key === ARROW_DOWN ? 'bl' : event.key === ARROW_RIGHT ? 'tr' : 'tl'),\n rtl: isRtl\n })]; // navigated cell will never be nullish\n }\n const forwardKeys = {\n horizontal: [horizontalForwardKey],\n vertical: [ARROW_DOWN],\n both: [horizontalForwardKey, ARROW_DOWN]\n }[orientation];\n const backwardKeys = {\n horizontal: [horizontalBackwardKey],\n vertical: [ARROW_UP],\n both: [horizontalBackwardKey, ARROW_UP]\n }[orientation];\n const preventedKeys = isGrid ? RELEVANT_KEYS : {\n horizontal: enableHomeAndEndKeys ? HORIZONTAL_KEYS_WITH_EXTRA_KEYS : HORIZONTAL_KEYS,\n vertical: enableHomeAndEndKeys ? VERTICAL_KEYS_WITH_EXTRA_KEYS : VERTICAL_KEYS,\n both: RELEVANT_KEYS\n }[orientation];\n if (enableHomeAndEndKeys) {\n if (event.key === HOME) {\n nextIndex = minIndex;\n } else if (event.key === END) {\n nextIndex = maxIndex;\n }\n }\n if (nextIndex === highlightedIndex && (forwardKeys.includes(event.key) || backwardKeys.includes(event.key))) {\n if (loopFocus && nextIndex === maxIndex && forwardKeys.includes(event.key)) {\n nextIndex = minIndex;\n } else if (loopFocus && nextIndex === minIndex && backwardKeys.includes(event.key)) {\n nextIndex = maxIndex;\n } else {\n nextIndex = findNonDisabledListIndex(elementsRef, {\n startingIndex: nextIndex,\n decrement: backwardKeys.includes(event.key),\n disabledIndices\n });\n }\n }\n if (nextIndex !== highlightedIndex && !isIndexOutOfListBounds(elementsRef, nextIndex)) {\n if (stopEventPropagation) {\n event.stopPropagation();\n }\n if (preventedKeys.has(event.key)) {\n event.preventDefault();\n }\n onHighlightedIndexChange(nextIndex, true);\n\n // Wait for FocusManager `returnFocus` to execute.\n queueMicrotask(() => {\n elementsRef.current[nextIndex]?.focus();\n });\n }\n }\n }), [cols, dense, direction, disabledIndices, elementsRef, enableHomeAndEndKeys, highlightedIndex, isGrid, itemSizes, loopFocus, mergedRef, modifierKeys, onHighlightedIndexChange, orientation, stopEventPropagation]);\n return React.useMemo(() => ({\n props,\n highlightedIndex,\n onHighlightedIndexChange,\n elementsRef,\n disabledIndices,\n onMapChange,\n relayKeyboardEvent: props.onKeyDown\n }), [props, highlightedIndex, onHighlightedIndexChange, elementsRef, disabledIndices, onMapChange]);\n}\nfunction isModifierKeySet(event, ignoredModifierKeys) {\n for (const key of MODIFIER_KEYS.values()) {\n if (ignoredModifierKeys.includes(key)) {\n continue;\n }\n if (event.getModifierState(key)) {\n return true;\n }\n }\n return false;\n}","'use client';\n\nimport * as React from 'react';\nimport { CompositeList } from \"../list/CompositeList.js\";\nimport { useCompositeRoot } from \"./useCompositeRoot.js\";\nimport { CompositeRootContext } from \"./CompositeRootContext.js\";\nimport { useRenderElement } from \"../../utils/useRenderElement.js\";\nimport { useDirection } from \"../../direction-provider/DirectionContext.js\";\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from \"../../utils/constants.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n/**\n * @internal\n */\nexport function CompositeRoot(componentProps) {\n const {\n render,\n className,\n refs = EMPTY_ARRAY,\n props = EMPTY_ARRAY,\n state = EMPTY_OBJECT,\n stateAttributesMapping,\n highlightedIndex: highlightedIndexProp,\n onHighlightedIndexChange: onHighlightedIndexChangeProp,\n orientation,\n dense,\n itemSizes,\n loopFocus,\n cols,\n enableHomeAndEndKeys,\n onMapChange: onMapChangeProp,\n stopEventPropagation = true,\n rootRef,\n disabledIndices,\n modifierKeys,\n highlightItemOnHover = false,\n tag = 'div',\n ...elementProps\n } = componentProps;\n const direction = useDirection();\n const {\n props: defaultProps,\n highlightedIndex,\n onHighlightedIndexChange,\n elementsRef,\n onMapChange: onMapChangeUnwrapped,\n relayKeyboardEvent\n } = useCompositeRoot({\n itemSizes,\n cols,\n loopFocus,\n dense,\n orientation,\n highlightedIndex: highlightedIndexProp,\n onHighlightedIndexChange: onHighlightedIndexChangeProp,\n rootRef,\n stopEventPropagation,\n enableHomeAndEndKeys,\n direction,\n disabledIndices,\n modifierKeys\n });\n const element = useRenderElement(tag, componentProps, {\n state,\n ref: refs,\n props: [defaultProps, ...props, elementProps],\n stateAttributesMapping\n });\n const contextValue = React.useMemo(() => ({\n highlightedIndex,\n onHighlightedIndexChange,\n highlightItemOnHover,\n relayKeyboardEvent\n }), [highlightedIndex, onHighlightedIndexChange, highlightItemOnHover, relayKeyboardEvent]);\n return /*#__PURE__*/_jsx(CompositeRootContext.Provider, {\n value: contextValue,\n children: /*#__PURE__*/_jsx(CompositeList, {\n elementsRef: elementsRef,\n onMapChange: newMap => {\n onMapChangeProp?.(newMap);\n onMapChangeUnwrapped(newMap);\n },\n children: element\n })\n });\n}"],"names":["EMPTY_ARRAY","_jsx"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -0,0 +1,307 @@
1
+ "use strict";
2
+ const React = require("react");
3
+ const CompositeList = require("./CompositeList-CLP_jD9H.js");
4
+ const isElementDisabled = require("./isElementDisabled-p2fc38Eq.js");
5
+ const useStableCallback = require("./useStableCallback-CfE_knIO.js");
6
+ const useRenderElement = require("./useRenderElement-CtyURhhF.js");
7
+ const composite = require("./composite-BT0EMBUB.js");
8
+ const composite$1 = require("./composite-DhXBXmhV.js");
9
+ const useButton = require("./useButton-CcvYPR5H.js");
10
+ const DirectionContext = require("./DirectionContext-BsZvU9q3.js");
11
+ const jsxRuntime = require("./jsx-runtime-CPzt8Nmm.js");
12
+ function _interopNamespaceDefault(e) {
13
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
14
+ if (e) {
15
+ for (const k in e) {
16
+ if (k !== "default") {
17
+ const d = Object.getOwnPropertyDescriptor(e, k);
18
+ Object.defineProperty(n, k, d.get ? d : {
19
+ enumerable: true,
20
+ get: () => e[k]
21
+ });
22
+ }
23
+ }
24
+ }
25
+ n.default = e;
26
+ return Object.freeze(n);
27
+ }
28
+ const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
29
+ const ACTIVE_COMPOSITE_ITEM = "data-composite-item-active";
30
+ const EMPTY_ARRAY = [];
31
+ function useCompositeRoot(params) {
32
+ const {
33
+ itemSizes,
34
+ cols = 1,
35
+ loopFocus = true,
36
+ dense = false,
37
+ orientation = "both",
38
+ direction,
39
+ highlightedIndex: externalHighlightedIndex,
40
+ onHighlightedIndexChange: externalSetHighlightedIndex,
41
+ rootRef: externalRef,
42
+ enableHomeAndEndKeys = false,
43
+ stopEventPropagation = false,
44
+ disabledIndices,
45
+ modifierKeys = EMPTY_ARRAY
46
+ } = params;
47
+ const [internalHighlightedIndex, internalSetHighlightedIndex] = React__namespace.useState(0);
48
+ const isGrid = cols > 1;
49
+ const rootRef = React__namespace.useRef(null);
50
+ const mergedRef = useRenderElement.useMergedRefs(rootRef, externalRef);
51
+ const elementsRef = React__namespace.useRef([]);
52
+ const hasSetDefaultIndexRef = React__namespace.useRef(false);
53
+ const highlightedIndex = externalHighlightedIndex ?? internalHighlightedIndex;
54
+ const onHighlightedIndexChange = useStableCallback.useStableCallback((index, shouldScrollIntoView = false) => {
55
+ (externalSetHighlightedIndex ?? internalSetHighlightedIndex)(index);
56
+ if (shouldScrollIntoView) {
57
+ const newActiveItem = elementsRef.current[index];
58
+ composite.scrollIntoViewIfNeeded(rootRef.current, newActiveItem, direction, orientation);
59
+ }
60
+ });
61
+ const onMapChange = useStableCallback.useStableCallback((map) => {
62
+ if (map.size === 0 || hasSetDefaultIndexRef.current) {
63
+ return;
64
+ }
65
+ hasSetDefaultIndexRef.current = true;
66
+ const sortedElements = Array.from(map.keys());
67
+ const activeItem = sortedElements.find((compositeElement) => compositeElement == null ? void 0 : compositeElement.hasAttribute(ACTIVE_COMPOSITE_ITEM)) ?? null;
68
+ const activeIndex = activeItem ? sortedElements.indexOf(activeItem) : -1;
69
+ if (activeIndex !== -1) {
70
+ onHighlightedIndexChange(activeIndex);
71
+ }
72
+ composite.scrollIntoViewIfNeeded(rootRef.current, activeItem, direction, orientation);
73
+ });
74
+ const props = React__namespace.useMemo(() => ({
75
+ "aria-orientation": orientation === "both" ? void 0 : orientation,
76
+ ref: mergedRef,
77
+ onFocus(event) {
78
+ const element = rootRef.current;
79
+ if (!element || !composite.isNativeInput(event.target)) {
80
+ return;
81
+ }
82
+ event.target.setSelectionRange(0, event.target.value.length ?? 0);
83
+ },
84
+ onKeyDown(event) {
85
+ const RELEVANT_KEYS = enableHomeAndEndKeys ? composite.ALL_KEYS : composite.ARROW_KEYS;
86
+ if (!RELEVANT_KEYS.has(event.key)) {
87
+ return;
88
+ }
89
+ if (isModifierKeySet(event, modifierKeys)) {
90
+ return;
91
+ }
92
+ const element = rootRef.current;
93
+ if (!element) {
94
+ return;
95
+ }
96
+ const isRtl = direction === "rtl";
97
+ const horizontalForwardKey = isRtl ? composite.ARROW_LEFT : composite.ARROW_RIGHT;
98
+ const forwardKey = {
99
+ horizontal: horizontalForwardKey,
100
+ vertical: composite.ARROW_DOWN,
101
+ both: horizontalForwardKey
102
+ }[orientation];
103
+ const horizontalBackwardKey = isRtl ? composite.ARROW_RIGHT : composite.ARROW_LEFT;
104
+ const backwardKey = {
105
+ horizontal: horizontalBackwardKey,
106
+ vertical: composite.ARROW_UP,
107
+ both: horizontalBackwardKey
108
+ }[orientation];
109
+ if (composite.isNativeInput(event.target) && !isElementDisabled.isElementDisabled(event.target)) {
110
+ const selectionStart = event.target.selectionStart;
111
+ const selectionEnd = event.target.selectionEnd;
112
+ const textContent = event.target.value ?? "";
113
+ if (selectionStart == null || event.shiftKey || selectionStart !== selectionEnd) {
114
+ return;
115
+ }
116
+ if (event.key !== backwardKey && selectionStart < textContent.length) {
117
+ return;
118
+ }
119
+ if (event.key !== forwardKey && selectionStart > 0) {
120
+ return;
121
+ }
122
+ }
123
+ let nextIndex = highlightedIndex;
124
+ const minIndex = composite$1.getMinListIndex(elementsRef, disabledIndices);
125
+ const maxIndex = composite$1.getMaxListIndex(elementsRef, disabledIndices);
126
+ if (isGrid) {
127
+ const sizes = itemSizes || Array.from({
128
+ length: elementsRef.current.length
129
+ }, () => ({
130
+ width: 1,
131
+ height: 1
132
+ }));
133
+ const cellMap = composite$1.createGridCellMap(sizes, cols, dense);
134
+ const minGridIndex = cellMap.findIndex((index) => index != null && !composite$1.isListIndexDisabled(elementsRef, index, disabledIndices));
135
+ const maxGridIndex = cellMap.reduce((foundIndex, index, cellIndex) => index != null && !composite$1.isListIndexDisabled(elementsRef, index, disabledIndices) ? cellIndex : foundIndex, -1);
136
+ nextIndex = cellMap[composite$1.getGridNavigatedIndex({
137
+ current: cellMap.map((itemIndex) => itemIndex ? elementsRef.current[itemIndex] : null)
138
+ }, {
139
+ event,
140
+ orientation,
141
+ loopFocus,
142
+ cols,
143
+ // treat undefined (empty grid spaces) as disabled indices so we
144
+ // don't end up in them
145
+ disabledIndices: composite$1.getGridCellIndices([...disabledIndices || elementsRef.current.map((_, index) => composite$1.isListIndexDisabled(elementsRef, index) ? index : void 0), void 0], cellMap),
146
+ minIndex: minGridIndex,
147
+ maxIndex: maxGridIndex,
148
+ prevIndex: composite$1.getGridCellIndexOfCorner(
149
+ highlightedIndex > maxIndex ? minIndex : highlightedIndex,
150
+ sizes,
151
+ cellMap,
152
+ cols,
153
+ // use a corner matching the edge closest to the direction we're
154
+ // moving in so we don't end up in the same item. Prefer
155
+ // top/left over bottom/right.
156
+ // eslint-disable-next-line no-nested-ternary
157
+ event.key === composite.ARROW_DOWN ? "bl" : event.key === composite.ARROW_RIGHT ? "tr" : "tl"
158
+ ),
159
+ rtl: isRtl
160
+ })];
161
+ }
162
+ const forwardKeys = {
163
+ horizontal: [horizontalForwardKey],
164
+ vertical: [composite.ARROW_DOWN],
165
+ both: [horizontalForwardKey, composite.ARROW_DOWN]
166
+ }[orientation];
167
+ const backwardKeys = {
168
+ horizontal: [horizontalBackwardKey],
169
+ vertical: [composite.ARROW_UP],
170
+ both: [horizontalBackwardKey, composite.ARROW_UP]
171
+ }[orientation];
172
+ const preventedKeys = isGrid ? RELEVANT_KEYS : {
173
+ horizontal: enableHomeAndEndKeys ? composite.HORIZONTAL_KEYS_WITH_EXTRA_KEYS : composite.HORIZONTAL_KEYS,
174
+ vertical: enableHomeAndEndKeys ? composite.VERTICAL_KEYS_WITH_EXTRA_KEYS : composite.VERTICAL_KEYS,
175
+ both: RELEVANT_KEYS
176
+ }[orientation];
177
+ if (enableHomeAndEndKeys) {
178
+ if (event.key === composite.HOME) {
179
+ nextIndex = minIndex;
180
+ } else if (event.key === composite.END) {
181
+ nextIndex = maxIndex;
182
+ }
183
+ }
184
+ if (nextIndex === highlightedIndex && (forwardKeys.includes(event.key) || backwardKeys.includes(event.key))) {
185
+ if (loopFocus && nextIndex === maxIndex && forwardKeys.includes(event.key)) {
186
+ nextIndex = minIndex;
187
+ } else if (loopFocus && nextIndex === minIndex && backwardKeys.includes(event.key)) {
188
+ nextIndex = maxIndex;
189
+ } else {
190
+ nextIndex = composite$1.findNonDisabledListIndex(elementsRef, {
191
+ startingIndex: nextIndex,
192
+ decrement: backwardKeys.includes(event.key),
193
+ disabledIndices
194
+ });
195
+ }
196
+ }
197
+ if (nextIndex !== highlightedIndex && !composite$1.isIndexOutOfListBounds(elementsRef, nextIndex)) {
198
+ if (stopEventPropagation) {
199
+ event.stopPropagation();
200
+ }
201
+ if (preventedKeys.has(event.key)) {
202
+ event.preventDefault();
203
+ }
204
+ onHighlightedIndexChange(nextIndex, true);
205
+ queueMicrotask(() => {
206
+ var _a;
207
+ (_a = elementsRef.current[nextIndex]) == null ? void 0 : _a.focus();
208
+ });
209
+ }
210
+ }
211
+ }), [cols, dense, direction, disabledIndices, elementsRef, enableHomeAndEndKeys, highlightedIndex, isGrid, itemSizes, loopFocus, mergedRef, modifierKeys, onHighlightedIndexChange, orientation, stopEventPropagation]);
212
+ return React__namespace.useMemo(() => ({
213
+ props,
214
+ highlightedIndex,
215
+ onHighlightedIndexChange,
216
+ elementsRef,
217
+ disabledIndices,
218
+ onMapChange,
219
+ relayKeyboardEvent: props.onKeyDown
220
+ }), [props, highlightedIndex, onHighlightedIndexChange, elementsRef, disabledIndices, onMapChange]);
221
+ }
222
+ function isModifierKeySet(event, ignoredModifierKeys) {
223
+ for (const key of composite.MODIFIER_KEYS.values()) {
224
+ if (ignoredModifierKeys.includes(key)) {
225
+ continue;
226
+ }
227
+ if (event.getModifierState(key)) {
228
+ return true;
229
+ }
230
+ }
231
+ return false;
232
+ }
233
+ function CompositeRoot(componentProps) {
234
+ const {
235
+ render,
236
+ className,
237
+ refs = useRenderElement.EMPTY_ARRAY,
238
+ props = useRenderElement.EMPTY_ARRAY,
239
+ state = useRenderElement.EMPTY_OBJECT,
240
+ stateAttributesMapping,
241
+ highlightedIndex: highlightedIndexProp,
242
+ onHighlightedIndexChange: onHighlightedIndexChangeProp,
243
+ orientation,
244
+ dense,
245
+ itemSizes,
246
+ loopFocus,
247
+ cols,
248
+ enableHomeAndEndKeys,
249
+ onMapChange: onMapChangeProp,
250
+ stopEventPropagation = true,
251
+ rootRef,
252
+ disabledIndices,
253
+ modifierKeys,
254
+ highlightItemOnHover = false,
255
+ tag = "div",
256
+ ...elementProps
257
+ } = componentProps;
258
+ const direction = DirectionContext.useDirection();
259
+ const {
260
+ props: defaultProps,
261
+ highlightedIndex,
262
+ onHighlightedIndexChange,
263
+ elementsRef,
264
+ onMapChange: onMapChangeUnwrapped,
265
+ relayKeyboardEvent
266
+ } = useCompositeRoot({
267
+ itemSizes,
268
+ cols,
269
+ loopFocus,
270
+ dense,
271
+ orientation,
272
+ highlightedIndex: highlightedIndexProp,
273
+ onHighlightedIndexChange: onHighlightedIndexChangeProp,
274
+ rootRef,
275
+ stopEventPropagation,
276
+ enableHomeAndEndKeys,
277
+ direction,
278
+ disabledIndices,
279
+ modifierKeys
280
+ });
281
+ const element = useRenderElement.useRenderElement(tag, componentProps, {
282
+ state,
283
+ ref: refs,
284
+ props: [defaultProps, ...props, elementProps],
285
+ stateAttributesMapping
286
+ });
287
+ const contextValue = React__namespace.useMemo(() => ({
288
+ highlightedIndex,
289
+ onHighlightedIndexChange,
290
+ highlightItemOnHover,
291
+ relayKeyboardEvent
292
+ }), [highlightedIndex, onHighlightedIndexChange, highlightItemOnHover, relayKeyboardEvent]);
293
+ return /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(useButton.CompositeRootContext.Provider, {
294
+ value: contextValue,
295
+ children: /* @__PURE__ */ jsxRuntime.jsxRuntimeExports.jsx(CompositeList.CompositeList, {
296
+ elementsRef,
297
+ onMapChange: (newMap) => {
298
+ onMapChangeProp == null ? void 0 : onMapChangeProp(newMap);
299
+ onMapChangeUnwrapped(newMap);
300
+ },
301
+ children: element
302
+ })
303
+ });
304
+ }
305
+ exports.ACTIVE_COMPOSITE_ITEM = ACTIVE_COMPOSITE_ITEM;
306
+ exports.CompositeRoot = CompositeRoot;
307
+ //# sourceMappingURL=CompositeRoot-DhWDFM9v.js.map