@spark-ui/components 14.0.0-beta.1 → 14.0.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 (382) hide show
  1. package/dist/Button-B6rA3-e5.js +2 -0
  2. package/dist/{Button-C3xHNaGl.js.map → Button-B6rA3-e5.js.map} +1 -1
  3. package/dist/{Button-D32Avk2j.mjs → Button-C3C0aixy.mjs} +4 -4
  4. package/dist/{Button-D32Avk2j.mjs.map → Button-C3C0aixy.mjs.map} +1 -1
  5. package/dist/DialogContent.styles-BSfXHt21.mjs +61 -0
  6. package/dist/DialogContent.styles-BSfXHt21.mjs.map +1 -0
  7. package/dist/DialogContent.styles-bBs6l8Cy.js +2 -0
  8. package/dist/DialogContent.styles-bBs6l8Cy.js.map +1 -0
  9. package/dist/Icon-CF0W0LKr.js +2 -0
  10. package/dist/{Icon-Bf0XrmiR.js.map → Icon-CF0W0LKr.js.map} +1 -1
  11. package/dist/{Icon-D1RueiPY.mjs → Icon-Ck-dhfLd.mjs} +6 -6
  12. package/dist/{Icon-D1RueiPY.mjs.map → Icon-Ck-dhfLd.mjs.map} +1 -1
  13. package/dist/{IconButton-BY3gYXtU.mjs → IconButton-C62-axzv.mjs} +6 -6
  14. package/dist/{IconButton-BY3gYXtU.mjs.map → IconButton-C62-axzv.mjs.map} +1 -1
  15. package/dist/IconButton-D3g86WpZ.js +2 -0
  16. package/dist/{IconButton-Bf-EDzpI.js.map → IconButton-D3g86WpZ.js.map} +1 -1
  17. package/dist/Slot-D2Bbf8Gw.mjs +14 -0
  18. package/dist/{Slot-C98rL4yy.mjs.map → Slot-D2Bbf8Gw.mjs.map} +1 -1
  19. package/dist/Slot-DQ8z2zsy.js +2 -0
  20. package/dist/{Slot-ghrohQLA.js.map → Slot-DQ8z2zsy.js.map} +1 -1
  21. package/dist/Spinner-_Kffli3B.js +2 -0
  22. package/dist/{Spinner-DK8VEsaR.js.map → Spinner-_Kffli3B.js.map} +1 -1
  23. package/dist/{Spinner-CYL5kyzM.mjs → Spinner-jF3-zoh_.mjs} +3 -3
  24. package/dist/{Spinner-CYL5kyzM.mjs.map → Spinner-jF3-zoh_.mjs.map} +1 -1
  25. package/dist/{TextLink-3MEVs3No.mjs → TextLink-BuzFRWO6.mjs} +3 -3
  26. package/dist/{TextLink-3MEVs3No.mjs.map → TextLink-BuzFRWO6.mjs.map} +1 -1
  27. package/dist/TextLink-C3xDLsbC.js +2 -0
  28. package/dist/{TextLink-DD0VO37q.js.map → TextLink-C3xDLsbC.js.map} +1 -1
  29. package/dist/{VisuallyHidden-AoRh4WRK.js → VisuallyHidden-CB6Nx76j.js} +2 -2
  30. package/dist/{VisuallyHidden-AoRh4WRK.js.map → VisuallyHidden-CB6Nx76j.js.map} +1 -1
  31. package/dist/{VisuallyHidden-ByNP7ZUI.mjs → VisuallyHidden-KH1biLx-.mjs} +2 -2
  32. package/dist/{VisuallyHidden-ByNP7ZUI.mjs.map → VisuallyHidden-KH1biLx-.mjs.map} +1 -1
  33. package/dist/accordion/index.d.mts +15 -0
  34. package/dist/accordion/index.js +1 -1
  35. package/dist/accordion/index.js.map +1 -1
  36. package/dist/accordion/index.mjs +90 -608
  37. package/dist/accordion/index.mjs.map +1 -1
  38. package/dist/alert-dialog/AlertDialogPortal.d.ts +1 -1
  39. package/dist/alert-dialog/index.d.mts +38 -0
  40. package/dist/alert-dialog/index.js +1 -34
  41. package/dist/alert-dialog/index.js.map +1 -1
  42. package/dist/alert-dialog/index.mjs +139 -2475
  43. package/dist/alert-dialog/index.mjs.map +1 -1
  44. package/dist/avatar/index.d.mts +15 -0
  45. package/dist/avatar/index.js +1 -1
  46. package/dist/avatar/index.js.map +1 -1
  47. package/dist/avatar/index.mjs +4 -4
  48. package/dist/badge/index.d.mts +1 -0
  49. package/dist/badge/index.js +1 -1
  50. package/dist/badge/index.js.map +1 -1
  51. package/dist/badge/index.mjs +6 -6
  52. package/dist/breadcrumb/index.d.mts +12 -0
  53. package/dist/breadcrumb/index.js +1 -1
  54. package/dist/breadcrumb/index.js.map +1 -1
  55. package/dist/breadcrumb/index.mjs +21 -21
  56. package/dist/button/Button.d.ts +1 -1
  57. package/dist/button/index.d.mts +1 -0
  58. package/dist/button/index.js +1 -1
  59. package/dist/button/index.mjs +1 -1
  60. package/dist/button/variants/index.d.mts +5 -0
  61. package/dist/card/index.d.mts +8 -0
  62. package/dist/card/index.js +1 -1
  63. package/dist/card/index.js.map +1 -1
  64. package/dist/card/index.mjs +2 -2
  65. package/dist/carousel/index.d.mts +19 -0
  66. package/dist/carousel/index.js +1 -1
  67. package/dist/carousel/index.js.map +1 -1
  68. package/dist/carousel/index.mjs +3 -3
  69. package/dist/checkbox/index.d.mts +2 -0
  70. package/dist/checkbox/index.js +1 -1
  71. package/dist/checkbox/index.js.map +1 -1
  72. package/dist/checkbox/index.mjs +128 -364
  73. package/dist/checkbox/index.mjs.map +1 -1
  74. package/dist/chip/index.d.mts +15 -0
  75. package/dist/chip/index.js +1 -1
  76. package/dist/chip/index.js.map +1 -1
  77. package/dist/chip/index.mjs +196 -370
  78. package/dist/chip/index.mjs.map +1 -1
  79. package/dist/chip/variants/index.d.mts +3 -0
  80. package/dist/collapsible/index.d.mts +7 -0
  81. package/dist/collapsible/index.js +1 -1
  82. package/dist/collapsible/index.js.map +1 -1
  83. package/dist/collapsible/index.mjs +38 -213
  84. package/dist/collapsible/index.mjs.map +1 -1
  85. package/dist/combobox/index.d.mts +35 -0
  86. package/dist/combobox/index.js +1 -1
  87. package/dist/combobox/index.js.map +1 -1
  88. package/dist/combobox/index.mjs +7 -7
  89. package/dist/combobox/utils/index.d.mts +14 -0
  90. package/dist/dialog/Dialog.d.ts +13 -13
  91. package/dist/dialog/DialogClose.d.ts +9 -8
  92. package/dist/dialog/DialogContent.d.ts +4 -4
  93. package/dist/dialog/DialogDescription.d.ts +3 -3
  94. package/dist/dialog/DialogOverlay.d.ts +5 -5
  95. package/dist/dialog/DialogPortal.d.ts +4 -4
  96. package/dist/dialog/DialogTitle.d.ts +3 -3
  97. package/dist/dialog/DialogTrigger.d.ts +5 -9
  98. package/dist/dialog/index.d.mts +37 -0
  99. package/dist/dialog/index.js +1 -1
  100. package/dist/dialog/index.js.map +1 -1
  101. package/dist/dialog/index.mjs +149 -159
  102. package/dist/dialog/index.mjs.map +1 -1
  103. package/dist/divider/index.d.mts +6 -0
  104. package/dist/divider/index.js +1 -1
  105. package/dist/divider/index.js.map +1 -1
  106. package/dist/divider/index.mjs +58 -76
  107. package/dist/divider/index.mjs.map +1 -1
  108. package/dist/drawer/Drawer.d.ts +12 -19
  109. package/dist/drawer/DrawerClose.d.ts +9 -5
  110. package/dist/drawer/DrawerContent.d.ts +5 -5
  111. package/dist/drawer/DrawerDescription.d.ts +4 -4
  112. package/dist/drawer/DrawerOverlay.d.ts +5 -5
  113. package/dist/drawer/DrawerPortal.d.ts +4 -4
  114. package/dist/drawer/DrawerTitle.d.ts +5 -5
  115. package/dist/drawer/DrawerTrigger.d.ts +5 -5
  116. package/dist/drawer/index.d.mts +37 -0
  117. package/dist/drawer/index.d.ts +2 -0
  118. package/dist/drawer/index.js +1 -1
  119. package/dist/drawer/index.js.map +1 -1
  120. package/dist/drawer/index.mjs +143 -114
  121. package/dist/drawer/index.mjs.map +1 -1
  122. package/dist/drawer/useRenderSlot.d.ts +3 -0
  123. package/dist/dropdown/index.d.mts +29 -0
  124. package/dist/dropdown/index.js +1 -1
  125. package/dist/dropdown/index.js.map +1 -1
  126. package/dist/dropdown/index.mjs +5 -5
  127. package/dist/file-upload/index.d.mts +22 -0
  128. package/dist/file-upload/index.js +1 -1
  129. package/dist/file-upload/index.js.map +1 -1
  130. package/dist/file-upload/index.mjs +6 -6
  131. package/dist/form-field/index.d.mts +31 -0
  132. package/dist/form-field/index.js +1 -1
  133. package/dist/form-field/index.js.map +1 -1
  134. package/dist/form-field/index.mjs +47 -47
  135. package/dist/icon/index.d.mts +1 -0
  136. package/dist/icon/index.js +1 -1
  137. package/dist/icon/index.mjs +1 -1
  138. package/dist/icon-button/index.d.mts +1 -0
  139. package/dist/icon-button/index.js +1 -1
  140. package/dist/icon-button/index.mjs +1 -1
  141. package/dist/input/index.d.mts +21 -0
  142. package/dist/input/index.js +1 -1
  143. package/dist/input/index.js.map +1 -1
  144. package/dist/input/index.mjs +4 -4
  145. package/dist/input-otp/index.d.mts +14 -0
  146. package/dist/input-otp/index.js +1 -1
  147. package/dist/input-otp/index.js.map +1 -1
  148. package/dist/input-otp/index.mjs +139 -137
  149. package/dist/input-otp/index.mjs.map +1 -1
  150. package/dist/kbd/index.d.mts +1 -0
  151. package/dist/label/index.d.mts +7 -0
  152. package/dist/label/index.js +1 -1
  153. package/dist/label/index.js.map +1 -1
  154. package/dist/label/index.mjs +37 -2
  155. package/dist/label/index.mjs.map +1 -1
  156. package/dist/link-box/index.d.mts +9 -0
  157. package/dist/link-box/index.js +1 -1
  158. package/dist/link-box/index.js.map +1 -1
  159. package/dist/link-box/index.mjs +7 -7
  160. package/dist/pagination/index.d.mts +18 -0
  161. package/dist/pagination/index.js +1 -1
  162. package/dist/pagination/index.js.map +1 -1
  163. package/dist/pagination/index.mjs +126 -844
  164. package/dist/pagination/index.mjs.map +1 -1
  165. package/dist/popover/index.d.mts +17 -0
  166. package/dist/popover/index.js +1 -1
  167. package/dist/popover/index.js.map +1 -1
  168. package/dist/popover/index.mjs +119 -1748
  169. package/dist/popover/index.mjs.map +1 -1
  170. package/dist/portal/index.d.mts +1 -0
  171. package/dist/portal/index.js +1 -1
  172. package/dist/portal/index.js.map +1 -1
  173. package/dist/portal/index.mjs +3 -3
  174. package/dist/portal/index.mjs.map +1 -1
  175. package/dist/progress/index.d.mts +13 -0
  176. package/dist/progress/index.js +1 -6
  177. package/dist/progress/index.js.map +1 -1
  178. package/dist/progress/index.mjs +87 -162
  179. package/dist/progress/index.mjs.map +1 -1
  180. package/dist/progress-tracker/index.d.mts +10 -0
  181. package/dist/progress-tracker/index.js +1 -1
  182. package/dist/progress-tracker/index.js.map +1 -1
  183. package/dist/progress-tracker/index.mjs +14 -14
  184. package/dist/radio-group/index.d.mts +7 -0
  185. package/dist/radio-group/index.js +1 -1
  186. package/dist/radio-group/index.js.map +1 -1
  187. package/dist/radio-group/index.mjs +85 -312
  188. package/dist/radio-group/index.mjs.map +1 -1
  189. package/dist/rating/index.d.mts +1 -0
  190. package/dist/rating/index.js +1 -1
  191. package/dist/rating/index.js.map +1 -1
  192. package/dist/rating/index.mjs +11 -11
  193. package/dist/scrolling-list/index.d.mts +15 -0
  194. package/dist/scrolling-list/index.js +1 -1
  195. package/dist/scrolling-list/index.js.map +1 -1
  196. package/dist/scrolling-list/index.mjs +168 -333
  197. package/dist/scrolling-list/index.mjs.map +1 -1
  198. package/dist/segmented-gauge/index.d.mts +13 -0
  199. package/dist/segmented-gauge/index.js +1 -1
  200. package/dist/segmented-gauge/index.js.map +1 -1
  201. package/dist/segmented-gauge/index.mjs +1 -1
  202. package/dist/select/index.d.mts +21 -0
  203. package/dist/select/index.js +1 -1
  204. package/dist/select/index.js.map +1 -1
  205. package/dist/select/index.mjs +21 -21
  206. package/dist/skeleton/index.d.mts +8 -0
  207. package/dist/skeleton/index.js +1 -1
  208. package/dist/skeleton/index.js.map +1 -1
  209. package/dist/skeleton/index.mjs +2 -2
  210. package/dist/slider/Slider.d.ts +6 -1
  211. package/dist/slider/SliderContext.d.ts +4 -1
  212. package/dist/slider/index.d.mts +8 -0
  213. package/dist/slider/index.js +1 -1
  214. package/dist/slider/index.js.map +1 -1
  215. package/dist/slider/index.mjs +96 -496
  216. package/dist/slider/index.mjs.map +1 -1
  217. package/dist/slot/index.d.mts +1 -0
  218. package/dist/slot/index.js +1 -1
  219. package/dist/slot/index.mjs +1 -1
  220. package/dist/snackbar/index.d.mts +13 -0
  221. package/dist/snackbar/index.js +1 -1
  222. package/dist/snackbar/index.js.map +1 -1
  223. package/dist/snackbar/index.mjs +189 -1105
  224. package/dist/snackbar/index.mjs.map +1 -1
  225. package/dist/spinner/index.d.mts +1 -0
  226. package/dist/spinner/index.js +1 -1
  227. package/dist/spinner/index.mjs +1 -1
  228. package/dist/stepper/index.d.mts +9 -0
  229. package/dist/stepper/index.js +1 -7
  230. package/dist/stepper/index.js.map +1 -1
  231. package/dist/stepper/index.mjs +137 -2317
  232. package/dist/stepper/index.mjs.map +1 -1
  233. package/dist/switch/index.d.mts +1 -0
  234. package/dist/switch/index.js +1 -1
  235. package/dist/switch/index.js.map +1 -1
  236. package/dist/switch/index.mjs +85 -208
  237. package/dist/switch/index.mjs.map +1 -1
  238. package/dist/tabs/index.d.mts +13 -0
  239. package/dist/tabs/index.js +1 -1
  240. package/dist/tabs/index.js.map +1 -1
  241. package/dist/tabs/index.mjs +179 -329
  242. package/dist/tabs/index.mjs.map +1 -1
  243. package/dist/tag/index.d.mts +1 -0
  244. package/dist/tag/index.js +1 -1
  245. package/dist/tag/index.js.map +1 -1
  246. package/dist/tag/index.mjs +2 -2
  247. package/dist/tag/variants/index.d.mts +3 -0
  248. package/dist/text-link/index.d.mts +1 -0
  249. package/dist/text-link/index.js +1 -1
  250. package/dist/text-link/index.mjs +1 -1
  251. package/dist/textarea/index.d.mts +14 -0
  252. package/dist/textarea/index.js +1 -1
  253. package/dist/textarea/index.js.map +1 -1
  254. package/dist/textarea/index.mjs +6 -6
  255. package/dist/toast/index.d.mts +20 -0
  256. package/dist/toast/index.js +1 -1
  257. package/dist/toast/index.js.map +1 -1
  258. package/dist/toast/index.mjs +146 -1008
  259. package/dist/toast/index.mjs.map +1 -1
  260. package/dist/useRenderSlot-DATwjgpo.js +2 -0
  261. package/dist/useRenderSlot-DATwjgpo.js.map +1 -0
  262. package/dist/useRenderSlot-LwWj8QbC.mjs +10 -0
  263. package/dist/useRenderSlot-LwWj8QbC.mjs.map +1 -0
  264. package/dist/visually-hidden/index.d.mts +1 -0
  265. package/dist/visually-hidden/index.js +1 -1
  266. package/dist/visually-hidden/index.mjs +1 -1
  267. package/package.json +7 -6
  268. package/dist/Button-C3xHNaGl.js +0 -2
  269. package/dist/DialogContent.styles-BrhKaHc_.js +0 -2
  270. package/dist/DialogContent.styles-BrhKaHc_.js.map +0 -1
  271. package/dist/DialogContent.styles-WGWJS9dj.mjs +0 -48
  272. package/dist/DialogContent.styles-WGWJS9dj.mjs.map +0 -1
  273. package/dist/Icon-Bf0XrmiR.js +0 -2
  274. package/dist/IconButton-Bf-EDzpI.js +0 -2
  275. package/dist/Slot-C98rL4yy.mjs +0 -14
  276. package/dist/Slot-ghrohQLA.js +0 -2
  277. package/dist/Spinner-DK8VEsaR.js +0 -2
  278. package/dist/TextLink-DD0VO37q.js +0 -2
  279. package/dist/composite-Br3kM5N9.mjs +0 -40
  280. package/dist/composite-Br3kM5N9.mjs.map +0 -1
  281. package/dist/composite-fJD9R7R0.js +0 -2
  282. package/dist/composite-fJD9R7R0.js.map +0 -1
  283. package/dist/detectBrowser-Bc7rk5fI.mjs +0 -44
  284. package/dist/detectBrowser-Bc7rk5fI.mjs.map +0 -1
  285. package/dist/detectBrowser-DTbs_30X.js +0 -2
  286. package/dist/detectBrowser-DTbs_30X.js.map +0 -1
  287. package/dist/downshift.esm-Ncwetv0s.mjs +0 -3038
  288. package/dist/downshift.esm-Ncwetv0s.mjs.map +0 -1
  289. package/dist/downshift.esm-PfCOUbxq.js +0 -37
  290. package/dist/downshift.esm-PfCOUbxq.js.map +0 -1
  291. package/dist/floating-ui.utils.dom-CCN4I08l.js +0 -2
  292. package/dist/floating-ui.utils.dom-CCN4I08l.js.map +0 -1
  293. package/dist/floating-ui.utils.dom-uiDUZc_y.mjs +0 -136
  294. package/dist/floating-ui.utils.dom-uiDUZc_y.mjs.map +0 -1
  295. package/dist/index-0KYGKeVg.js +0 -2
  296. package/dist/index-0KYGKeVg.js.map +0 -1
  297. package/dist/index-1WIgmEZh.js +0 -2
  298. package/dist/index-1WIgmEZh.js.map +0 -1
  299. package/dist/index-BRi38DTc.mjs +0 -21
  300. package/dist/index-BRi38DTc.mjs.map +0 -1
  301. package/dist/index-BZAtNKwE.mjs +0 -71
  302. package/dist/index-BZAtNKwE.mjs.map +0 -1
  303. package/dist/index-BZPx6jYI.mjs +0 -9
  304. package/dist/index-BZPx6jYI.mjs.map +0 -1
  305. package/dist/index-BlkdpEIe.mjs +0 -55
  306. package/dist/index-BlkdpEIe.mjs.map +0 -1
  307. package/dist/index-BmAFn37q.mjs +0 -49
  308. package/dist/index-BmAFn37q.mjs.map +0 -1
  309. package/dist/index-C-J_tHdS.js +0 -6
  310. package/dist/index-C-J_tHdS.js.map +0 -1
  311. package/dist/index-C1qb0595.mjs +0 -28
  312. package/dist/index-C1qb0595.mjs.map +0 -1
  313. package/dist/index-C34GgsKQ.mjs +0 -54
  314. package/dist/index-C34GgsKQ.mjs.map +0 -1
  315. package/dist/index-CCKe-Mpx.mjs +0 -7
  316. package/dist/index-CCKe-Mpx.mjs.map +0 -1
  317. package/dist/index-CDBBjNXc.js +0 -2
  318. package/dist/index-CDBBjNXc.js.map +0 -1
  319. package/dist/index-CYjGhVvU.mjs +0 -243
  320. package/dist/index-CYjGhVvU.mjs.map +0 -1
  321. package/dist/index-ChLwd62c.js +0 -2
  322. package/dist/index-ChLwd62c.js.map +0 -1
  323. package/dist/index-Cjj_rUPu.js +0 -2
  324. package/dist/index-Cjj_rUPu.js.map +0 -1
  325. package/dist/index-CyMbLkj0.js +0 -2
  326. package/dist/index-CyMbLkj0.js.map +0 -1
  327. package/dist/index-DFZozV_h.mjs +0 -69
  328. package/dist/index-DFZozV_h.mjs.map +0 -1
  329. package/dist/index-DKuHkHFX.js +0 -2
  330. package/dist/index-DKuHkHFX.js.map +0 -1
  331. package/dist/index-DLHLIYPI.mjs +0 -16
  332. package/dist/index-DLHLIYPI.mjs.map +0 -1
  333. package/dist/index-DO-atGp-.js +0 -2
  334. package/dist/index-DO-atGp-.js.map +0 -1
  335. package/dist/index-DWlg8lkk.mjs +0 -179
  336. package/dist/index-DWlg8lkk.mjs.map +0 -1
  337. package/dist/index-DYxWvftI.js +0 -2
  338. package/dist/index-DYxWvftI.js.map +0 -1
  339. package/dist/index-D_lWkK39.mjs +0 -803
  340. package/dist/index-D_lWkK39.mjs.map +0 -1
  341. package/dist/index-DdkVj7D0.js +0 -18
  342. package/dist/index-DdkVj7D0.js.map +0 -1
  343. package/dist/index-De-6atSi.js +0 -2
  344. package/dist/index-De-6atSi.js.map +0 -1
  345. package/dist/index-DhGWNzsz.mjs +0 -83
  346. package/dist/index-DhGWNzsz.mjs.map +0 -1
  347. package/dist/index-Dkj4QRX8.js +0 -2
  348. package/dist/index-Dkj4QRX8.js.map +0 -1
  349. package/dist/index-DlIFg0Eu.mjs +0 -60
  350. package/dist/index-DlIFg0Eu.mjs.map +0 -1
  351. package/dist/index-DnaHaH_0.js +0 -2
  352. package/dist/index-DnaHaH_0.js.map +0 -1
  353. package/dist/index-MHF2-CYX.js +0 -2
  354. package/dist/index-MHF2-CYX.js.map +0 -1
  355. package/dist/index-MQ0c3ZX_.js +0 -2
  356. package/dist/index-MQ0c3ZX_.js.map +0 -1
  357. package/dist/index-MSR-vgWR.mjs +0 -37
  358. package/dist/index-MSR-vgWR.mjs.map +0 -1
  359. package/dist/index-VL0YEmOW.mjs +0 -125
  360. package/dist/index-VL0YEmOW.mjs.map +0 -1
  361. package/dist/index-tXqxYME3.js +0 -42
  362. package/dist/index-tXqxYME3.js.map +0 -1
  363. package/dist/inertValue-Bif5Sqs6.mjs +0 -522
  364. package/dist/inertValue-Bif5Sqs6.mjs.map +0 -1
  365. package/dist/inertValue-ShwihJSN.js +0 -5
  366. package/dist/inertValue-ShwihJSN.js.map +0 -1
  367. package/dist/useCollapsiblePanel-D1dCo0lf.js +0 -4
  368. package/dist/useCollapsiblePanel-D1dCo0lf.js.map +0 -1
  369. package/dist/useCollapsiblePanel-kbMNl4Z4.mjs +0 -287
  370. package/dist/useCollapsiblePanel-kbMNl4Z4.mjs.map +0 -1
  371. package/dist/useFocusWithin-CFNEka2I.js +0 -2
  372. package/dist/useFocusWithin-CFNEka2I.js.map +0 -1
  373. package/dist/useFocusWithin-CoL4390f.mjs +0 -796
  374. package/dist/useFocusWithin-CoL4390f.mjs.map +0 -1
  375. package/dist/useOpenChangeComplete-Dk-u_f2y.js +0 -2
  376. package/dist/useOpenChangeComplete-Dk-u_f2y.js.map +0 -1
  377. package/dist/useOpenChangeComplete-RUbg6RBw.mjs +0 -582
  378. package/dist/useOpenChangeComplete-RUbg6RBw.mjs.map +0 -1
  379. package/dist/useTransitionStatus-CktVVKxz.mjs +0 -46
  380. package/dist/useTransitionStatus-CktVVKxz.mjs.map +0 -1
  381. package/dist/useTransitionStatus-CqbEyvIj.js +0 -2
  382. package/dist/useTransitionStatus-CqbEyvIj.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../node_modules/@base-ui/react/esm/composite/list/CompositeListContext.js","../../../../node_modules/@base-ui/react/esm/composite/list/CompositeList.js","../../../../node_modules/@base-ui/react/esm/direction-provider/DirectionContext.js","../../../../node_modules/@base-ui/react/esm/accordion/root/AccordionRootContext.js","../../../../node_modules/@base-ui/react/esm/accordion/root/AccordionRoot.js","../../../../node_modules/@base-ui/react/esm/composite/list/useCompositeListItem.js","../../../../node_modules/@base-ui/react/esm/accordion/item/AccordionItemContext.js","../../../../node_modules/@base-ui/react/esm/accordion/item/AccordionItemDataAttributes.js","../../../../node_modules/@base-ui/react/esm/accordion/item/stateAttributesMapping.js","../../../../node_modules/@base-ui/react/esm/accordion/item/AccordionItem.js","../../../../node_modules/@base-ui/utils/esm/isElementDisabled.js","../../../../node_modules/@base-ui/react/esm/accordion/trigger/AccordionTrigger.js","../../../../node_modules/@base-ui/react/esm/accordion/panel/AccordionPanelCssVars.js","../../../../node_modules/@base-ui/react/esm/accordion/panel/AccordionPanel.js","../../src/accordion/useRenderSlot.tsx","../../src/accordion/Accordion.tsx","../../src/accordion/AccordionItem.tsx","../../src/accordion/AccordionItemContent.tsx","../../src/accordion/AccordionItemHeader.tsx","../../src/accordion/AccordionItemTrigger.tsx","../../src/accordion/index.ts"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nexport const CompositeListContext = /*#__PURE__*/React.createContext({\n register: () => {},\n unregister: () => {},\n subscribeMapChange: () => {\n return () => {};\n },\n elementsRef: {\n current: []\n },\n nextIndexRef: {\n current: 0\n }\n});\nif (process.env.NODE_ENV !== \"production\") CompositeListContext.displayName = \"CompositeListContext\";\nexport function useCompositeListContext() {\n return React.useContext(CompositeListContext);\n}","/* eslint-disable no-bitwise */\n'use client';\n\nimport * as React from 'react';\nimport { useRefWithInit } from '@base-ui/utils/useRefWithInit';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { CompositeListContext } from \"./CompositeListContext.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n/**\n * Provides context for a list of items in a composite component.\n * @internal\n */\nexport function CompositeList(props) {\n const {\n children,\n elementsRef,\n labelsRef,\n onMapChange: onMapChangeProp\n } = props;\n const onMapChange = useStableCallback(onMapChangeProp);\n const nextIndexRef = React.useRef(0);\n const listeners = useRefWithInit(createListeners).current;\n\n // We use a stable `map` to avoid O(n^2) re-allocation costs for large lists.\n // `mapTick` is our re-render trigger mechanism. We also need to update the\n // elements and label refs, but there's a lot of async work going on and sometimes\n // the effect that handles `onMapChange` gets called after those refs have been\n // filled, and we don't want to lose those values by setting their lengths to `0`.\n // We also need to have them at the proper length because floating-ui uses that\n // information for list navigation.\n\n const map = useRefWithInit(createMap).current;\n // `mapTick` uses a counter rather than objects for low precision-loss risk and better memory efficiency\n const [mapTick, setMapTick] = React.useState(0);\n const lastTickRef = React.useRef(mapTick);\n const register = useStableCallback((node, metadata) => {\n map.set(node, metadata ?? null);\n lastTickRef.current += 1;\n setMapTick(lastTickRef.current);\n });\n const unregister = useStableCallback(node => {\n map.delete(node);\n lastTickRef.current += 1;\n setMapTick(lastTickRef.current);\n });\n const sortedMap = React.useMemo(() => {\n // `mapTick` is the `useMemo` trigger as `map` is stable.\n disableEslintWarning(mapTick);\n const newMap = new Map();\n // Filter out disconnected elements before sorting to avoid inconsistent\n // compareDocumentPosition results when elements are detached from the DOM.\n const sortedNodes = Array.from(map.keys()).filter(node => node.isConnected).sort(sortByDocumentPosition);\n sortedNodes.forEach((node, index) => {\n const metadata = map.get(node) ?? {};\n newMap.set(node, {\n ...metadata,\n index\n });\n });\n return newMap;\n }, [map, mapTick]);\n useIsoLayoutEffect(() => {\n if (typeof MutationObserver !== 'function' || sortedMap.size === 0) {\n return undefined;\n }\n const mutationObserver = new MutationObserver(entries => {\n const diff = new Set();\n const updateDiff = node => diff.has(node) ? diff.delete(node) : diff.add(node);\n entries.forEach(entry => {\n entry.removedNodes.forEach(updateDiff);\n entry.addedNodes.forEach(updateDiff);\n });\n if (diff.size === 0) {\n lastTickRef.current += 1;\n setMapTick(lastTickRef.current);\n }\n });\n sortedMap.forEach((_, node) => {\n if (node.parentElement) {\n mutationObserver.observe(node.parentElement, {\n childList: true\n });\n }\n });\n return () => {\n mutationObserver.disconnect();\n };\n }, [sortedMap]);\n useIsoLayoutEffect(() => {\n const shouldUpdateLengths = lastTickRef.current === mapTick;\n if (shouldUpdateLengths) {\n if (elementsRef.current.length !== sortedMap.size) {\n elementsRef.current.length = sortedMap.size;\n }\n if (labelsRef && labelsRef.current.length !== sortedMap.size) {\n labelsRef.current.length = sortedMap.size;\n }\n nextIndexRef.current = sortedMap.size;\n }\n onMapChange(sortedMap);\n }, [onMapChange, sortedMap, elementsRef, labelsRef, mapTick]);\n useIsoLayoutEffect(() => {\n return () => {\n elementsRef.current = [];\n };\n }, [elementsRef]);\n useIsoLayoutEffect(() => {\n return () => {\n if (labelsRef) {\n labelsRef.current = [];\n }\n };\n }, [labelsRef]);\n const subscribeMapChange = useStableCallback(fn => {\n listeners.add(fn);\n return () => {\n listeners.delete(fn);\n };\n });\n useIsoLayoutEffect(() => {\n listeners.forEach(l => l(sortedMap));\n }, [listeners, sortedMap]);\n const contextValue = React.useMemo(() => ({\n register,\n unregister,\n subscribeMapChange,\n elementsRef,\n labelsRef,\n nextIndexRef\n }), [register, unregister, subscribeMapChange, elementsRef, labelsRef, nextIndexRef]);\n return /*#__PURE__*/_jsx(CompositeListContext.Provider, {\n value: contextValue,\n children: children\n });\n}\nfunction createMap() {\n return new Map();\n}\nfunction createListeners() {\n return new Set();\n}\nfunction sortByDocumentPosition(a, b) {\n const position = a.compareDocumentPosition(b);\n if (position & Node.DOCUMENT_POSITION_FOLLOWING || position & Node.DOCUMENT_POSITION_CONTAINED_BY) {\n return -1;\n }\n if (position & Node.DOCUMENT_POSITION_PRECEDING || position & Node.DOCUMENT_POSITION_CONTAINS) {\n return 1;\n }\n return 0;\n}\nfunction disableEslintWarning(_) {}","'use client';\n\nimport * as React from 'react';\n/**\n * @internal\n */\nexport const DirectionContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") DirectionContext.displayName = \"DirectionContext\";\nexport function useDirection() {\n const context = React.useContext(DirectionContext);\n return context?.direction ?? 'ltr';\n}","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const AccordionRootContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") AccordionRootContext.displayName = \"AccordionRootContext\";\nexport function useAccordionRootContext() {\n const context = React.useContext(AccordionRootContext);\n if (context === undefined) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: AccordionRootContext is missing. Accordion parts must be placed within <Accordion.Root>.' : _formatErrorMessage(10));\n }\n return context;\n}","'use client';\n\nimport * as React from 'react';\nimport { useControlled } from '@base-ui/utils/useControlled';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { warn } from '@base-ui/utils/warn';\nimport { CompositeList } from \"../../composite/list/CompositeList.js\";\nimport { useDirection } from \"../../direction-provider/DirectionContext.js\";\nimport { AccordionRootContext } from \"./AccordionRootContext.js\";\nimport { useRenderElement } from \"../../utils/useRenderElement.js\";\nimport { createChangeEventDetails } from \"../../utils/createBaseUIEventDetails.js\";\nimport { REASONS } from \"../../utils/reasons.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst rootStateAttributesMapping = {\n value: () => null\n};\n\n/**\n * Groups all parts of the accordion.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Accordion](https://base-ui.com/react/components/accordion)\n */\nexport const AccordionRoot = /*#__PURE__*/React.forwardRef(function AccordionRoot(componentProps, forwardedRef) {\n const {\n render,\n className,\n disabled = false,\n hiddenUntilFound: hiddenUntilFoundProp,\n keepMounted: keepMountedProp,\n loopFocus = true,\n onValueChange: onValueChangeProp,\n multiple = false,\n orientation = 'vertical',\n value: valueProp,\n defaultValue: defaultValueProp,\n ...elementProps\n } = componentProps;\n const direction = useDirection();\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useIsoLayoutEffect(() => {\n if (hiddenUntilFoundProp && keepMountedProp === false) {\n warn('The `keepMounted={false}` prop on a Accordion.Root will be ignored when using `hiddenUntilFound` since it requires Panels to remain mounted when closed.');\n }\n }, [hiddenUntilFoundProp, keepMountedProp]);\n }\n\n // memoized to allow omitting both defaultValue and value\n // which would otherwise trigger a warning in useControlled\n const defaultValue = React.useMemo(() => {\n if (valueProp === undefined) {\n return defaultValueProp ?? [];\n }\n return undefined;\n }, [valueProp, defaultValueProp]);\n const onValueChange = useStableCallback(onValueChangeProp);\n const accordionItemRefs = React.useRef([]);\n const [value, setValue] = useControlled({\n controlled: valueProp,\n default: defaultValue,\n name: 'Accordion',\n state: 'value'\n });\n const handleValueChange = useStableCallback((newValue, nextOpen) => {\n const details = createChangeEventDetails(REASONS.none);\n if (!multiple) {\n const nextValue = value[0] === newValue ? [] : [newValue];\n onValueChange(nextValue, details);\n if (details.isCanceled) {\n return;\n }\n setValue(nextValue);\n } else if (nextOpen) {\n const nextOpenValues = value.slice();\n nextOpenValues.push(newValue);\n onValueChange(nextOpenValues, details);\n if (details.isCanceled) {\n return;\n }\n setValue(nextOpenValues);\n } else {\n const nextOpenValues = value.filter(v => v !== newValue);\n onValueChange(nextOpenValues, details);\n if (details.isCanceled) {\n return;\n }\n setValue(nextOpenValues);\n }\n });\n const state = React.useMemo(() => ({\n value,\n disabled,\n orientation\n }), [value, disabled, orientation]);\n const contextValue = React.useMemo(() => ({\n accordionItemRefs,\n direction,\n disabled,\n handleValueChange,\n hiddenUntilFound: hiddenUntilFoundProp ?? false,\n keepMounted: keepMountedProp ?? false,\n loopFocus,\n orientation,\n state,\n value\n }), [direction, disabled, handleValueChange, hiddenUntilFoundProp, keepMountedProp, loopFocus, orientation, state, value]);\n const element = useRenderElement('div', componentProps, {\n state,\n ref: forwardedRef,\n props: [{\n dir: direction,\n role: 'region'\n }, elementProps],\n stateAttributesMapping: rootStateAttributesMapping\n });\n return /*#__PURE__*/_jsx(AccordionRootContext.Provider, {\n value: contextValue,\n children: /*#__PURE__*/_jsx(CompositeList, {\n elementsRef: accordionItemRefs,\n children: element\n })\n });\n});\nif (process.env.NODE_ENV !== \"production\") AccordionRoot.displayName = \"AccordionRoot\";","'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useCompositeListContext } from \"./CompositeListContext.js\";\nexport let IndexGuessBehavior = /*#__PURE__*/function (IndexGuessBehavior) {\n IndexGuessBehavior[IndexGuessBehavior[\"None\"] = 0] = \"None\";\n IndexGuessBehavior[IndexGuessBehavior[\"GuessFromOrder\"] = 1] = \"GuessFromOrder\";\n return IndexGuessBehavior;\n}({});\n\n/**\n * Used to register a list item and its index (DOM position) in the `CompositeList`.\n */\nexport function useCompositeListItem(params = {}) {\n const {\n label,\n metadata,\n textRef,\n indexGuessBehavior,\n index: externalIndex\n } = params;\n const {\n register,\n unregister,\n subscribeMapChange,\n elementsRef,\n labelsRef,\n nextIndexRef\n } = useCompositeListContext();\n const indexRef = React.useRef(-1);\n const [index, setIndex] = React.useState(externalIndex ?? (indexGuessBehavior === IndexGuessBehavior.GuessFromOrder ? () => {\n if (indexRef.current === -1) {\n const newIndex = nextIndexRef.current;\n nextIndexRef.current += 1;\n indexRef.current = newIndex;\n }\n return indexRef.current;\n } : -1));\n const componentRef = React.useRef(null);\n const ref = React.useCallback(node => {\n componentRef.current = node;\n if (index !== -1 && node !== null) {\n elementsRef.current[index] = node;\n if (labelsRef) {\n const isLabelDefined = label !== undefined;\n labelsRef.current[index] = isLabelDefined ? label : textRef?.current?.textContent ?? node.textContent;\n }\n }\n }, [index, elementsRef, labelsRef, label, textRef]);\n useIsoLayoutEffect(() => {\n if (externalIndex != null) {\n return undefined;\n }\n const node = componentRef.current;\n if (node) {\n register(node, metadata);\n return () => {\n unregister(node);\n };\n }\n return undefined;\n }, [externalIndex, register, unregister, metadata]);\n useIsoLayoutEffect(() => {\n if (externalIndex != null) {\n return undefined;\n }\n return subscribeMapChange(map => {\n const i = componentRef.current ? map.get(componentRef.current)?.index : null;\n if (i != null) {\n setIndex(i);\n }\n });\n }, [externalIndex, subscribeMapChange, setIndex]);\n return React.useMemo(() => ({\n ref,\n index\n }), [index, ref]);\n}","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const AccordionItemContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") AccordionItemContext.displayName = \"AccordionItemContext\";\nexport function useAccordionItemContext() {\n const context = React.useContext(AccordionItemContext);\n if (context === undefined) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: AccordionItemContext is missing. Accordion parts must be placed within <Accordion.Item>.' : _formatErrorMessage(9));\n }\n return context;\n}","export let AccordionItemDataAttributes = /*#__PURE__*/function (AccordionItemDataAttributes) {\n /**\n * Indicates the index of the accordion item.\n * @type {number}\n */\n AccordionItemDataAttributes[\"index\"] = \"data-index\";\n /**\n * Present when the accordion item is disabled.\n */\n AccordionItemDataAttributes[\"disabled\"] = \"data-disabled\";\n /**\n * Present when the accordion item is open.\n */\n AccordionItemDataAttributes[\"open\"] = \"data-open\";\n return AccordionItemDataAttributes;\n}({});","import { collapsibleOpenStateMapping as baseMapping } from \"../../utils/collapsibleOpenStateMapping.js\";\nimport { transitionStatusMapping } from \"../../utils/stateAttributesMapping.js\";\nimport { AccordionItemDataAttributes } from \"./AccordionItemDataAttributes.js\";\nexport const accordionStateAttributesMapping = {\n ...baseMapping,\n index: value => {\n return Number.isInteger(value) ? {\n [AccordionItemDataAttributes.index]: String(value)\n } : null;\n },\n ...transitionStatusMapping,\n value: () => null\n};","'use client';\n\nimport * as React from 'react';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { useMergedRefs } from '@base-ui/utils/useMergedRefs';\nimport { useBaseUiId } from \"../../utils/useBaseUiId.js\";\nimport { useCollapsibleRoot } from \"../../collapsible/root/useCollapsibleRoot.js\";\nimport { CollapsibleRootContext } from \"../../collapsible/root/CollapsibleRootContext.js\";\nimport { useCompositeListItem } from \"../../composite/list/useCompositeListItem.js\";\nimport { useAccordionRootContext } from \"../root/AccordionRootContext.js\";\nimport { AccordionItemContext } from \"./AccordionItemContext.js\";\nimport { accordionStateAttributesMapping } from \"./stateAttributesMapping.js\";\nimport { useRenderElement } from \"../../utils/useRenderElement.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n/**\n * Groups an accordion header with the corresponding panel.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Accordion](https://base-ui.com/react/components/accordion)\n */\nexport const AccordionItem = /*#__PURE__*/React.forwardRef(function AccordionItem(componentProps, forwardedRef) {\n const {\n className,\n disabled: disabledProp = false,\n onOpenChange: onOpenChangeProp,\n render,\n value: valueProp,\n ...elementProps\n } = componentProps;\n const {\n ref: listItemRef,\n index\n } = useCompositeListItem();\n const mergedRef = useMergedRefs(forwardedRef, listItemRef);\n const {\n disabled: contextDisabled,\n handleValueChange,\n state: rootState,\n value: openValues\n } = useAccordionRootContext();\n const fallbackValue = useBaseUiId();\n const value = valueProp ?? fallbackValue;\n const disabled = disabledProp || contextDisabled;\n const isOpen = React.useMemo(() => {\n if (!openValues) {\n return false;\n }\n for (let i = 0; i < openValues.length; i += 1) {\n if (openValues[i] === value) {\n return true;\n }\n }\n return false;\n }, [openValues, value]);\n const onOpenChange = useStableCallback((nextOpen, eventDetails) => {\n onOpenChangeProp?.(nextOpen, eventDetails);\n if (eventDetails.isCanceled) {\n return;\n }\n handleValueChange(value, nextOpen);\n });\n const collapsible = useCollapsibleRoot({\n open: isOpen,\n onOpenChange,\n disabled\n });\n const collapsibleState = React.useMemo(() => ({\n open: collapsible.open,\n disabled: collapsible.disabled,\n hidden: !collapsible.mounted,\n transitionStatus: collapsible.transitionStatus\n }), [collapsible.open, collapsible.disabled, collapsible.mounted, collapsible.transitionStatus]);\n const collapsibleContext = React.useMemo(() => ({\n ...collapsible,\n onOpenChange,\n state: collapsibleState\n }), [collapsible, collapsibleState, onOpenChange]);\n const state = React.useMemo(() => ({\n ...rootState,\n index,\n disabled,\n open: isOpen\n }), [disabled, index, isOpen, rootState]);\n const [triggerId, setTriggerId] = React.useState(useBaseUiId());\n const accordionItemContext = React.useMemo(() => ({\n open: isOpen,\n state,\n setTriggerId,\n triggerId\n }), [isOpen, state, setTriggerId, triggerId]);\n const element = useRenderElement('div', componentProps, {\n state,\n ref: mergedRef,\n props: elementProps,\n stateAttributesMapping: accordionStateAttributesMapping\n });\n return /*#__PURE__*/_jsx(CollapsibleRootContext.Provider, {\n value: collapsibleContext,\n children: /*#__PURE__*/_jsx(AccordionItemContext.Provider, {\n value: accordionItemContext,\n children: element\n })\n });\n});\nif (process.env.NODE_ENV !== \"production\") AccordionItem.displayName = \"AccordionItem\";","export function isElementDisabled(element) {\n return element == null || element.hasAttribute('disabled') || element.getAttribute('aria-disabled') === 'true';\n}","'use client';\n\nimport * as React from 'react';\nimport { isElementDisabled } from '@base-ui/utils/isElementDisabled';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { triggerOpenStateMapping } from \"../../utils/collapsibleOpenStateMapping.js\";\nimport { useButton } from \"../../use-button/index.js\";\nimport { useCollapsibleRootContext } from \"../../collapsible/root/CollapsibleRootContext.js\";\nimport { ARROW_DOWN, ARROW_UP, ARROW_RIGHT, ARROW_LEFT, HOME, END, stopEvent } from \"../../composite/composite.js\";\nimport { useAccordionRootContext } from \"../root/AccordionRootContext.js\";\nimport { useAccordionItemContext } from \"../item/AccordionItemContext.js\";\nimport { useRenderElement } from \"../../utils/useRenderElement.js\";\nconst SUPPORTED_KEYS = new Set([ARROW_DOWN, ARROW_UP, ARROW_RIGHT, ARROW_LEFT, HOME, END]);\nfunction getActiveTriggers(accordionItemRefs) {\n const {\n current: accordionItemElements\n } = accordionItemRefs;\n const output = [];\n for (let i = 0; i < accordionItemElements.length; i += 1) {\n const section = accordionItemElements[i];\n if (!isElementDisabled(section)) {\n const trigger = section?.querySelector('[type=\"button\"]');\n if (!isElementDisabled(trigger)) {\n output.push(trigger);\n }\n }\n }\n return output;\n}\n\n/**\n * A button that opens and closes the corresponding panel.\n * Renders a `<button>` element.\n *\n * Documentation: [Base UI Accordion](https://base-ui.com/react/components/accordion)\n */\n\nexport const AccordionTrigger = /*#__PURE__*/React.forwardRef(function AccordionTrigger(componentProps, forwardedRef) {\n const {\n disabled: disabledProp,\n className,\n id: idProp,\n render,\n nativeButton = true,\n ...elementProps\n } = componentProps;\n const {\n panelId,\n open,\n handleTrigger,\n disabled: contextDisabled\n } = useCollapsibleRootContext();\n const disabled = disabledProp ?? contextDisabled;\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n focusableWhenDisabled: true,\n native: nativeButton\n });\n const {\n accordionItemRefs,\n direction,\n loopFocus,\n orientation\n } = useAccordionRootContext();\n const isRtl = direction === 'rtl';\n const isHorizontal = orientation === 'horizontal';\n const {\n state,\n setTriggerId,\n triggerId: id\n } = useAccordionItemContext();\n useIsoLayoutEffect(() => {\n if (idProp) {\n setTriggerId(idProp);\n }\n return () => {\n setTriggerId(undefined);\n };\n }, [idProp, setTriggerId]);\n const props = React.useMemo(() => ({\n 'aria-controls': open ? panelId : undefined,\n 'aria-expanded': open,\n disabled,\n id,\n onClick: handleTrigger,\n onKeyDown(event) {\n if (!SUPPORTED_KEYS.has(event.key)) {\n return;\n }\n stopEvent(event);\n const triggers = getActiveTriggers(accordionItemRefs);\n const numOfEnabledTriggers = triggers.length;\n const lastIndex = numOfEnabledTriggers - 1;\n let nextIndex = -1;\n const thisIndex = triggers.indexOf(event.target);\n function toNext() {\n if (loopFocus) {\n nextIndex = thisIndex + 1 > lastIndex ? 0 : thisIndex + 1;\n } else {\n nextIndex = Math.min(thisIndex + 1, lastIndex);\n }\n }\n function toPrev() {\n if (loopFocus) {\n nextIndex = thisIndex === 0 ? lastIndex : thisIndex - 1;\n } else {\n nextIndex = thisIndex - 1;\n }\n }\n switch (event.key) {\n case ARROW_DOWN:\n if (!isHorizontal) {\n toNext();\n }\n break;\n case ARROW_UP:\n if (!isHorizontal) {\n toPrev();\n }\n break;\n case ARROW_RIGHT:\n if (isHorizontal) {\n if (isRtl) {\n toPrev();\n } else {\n toNext();\n }\n }\n break;\n case ARROW_LEFT:\n if (isHorizontal) {\n if (isRtl) {\n toNext();\n } else {\n toPrev();\n }\n }\n break;\n case 'Home':\n nextIndex = 0;\n break;\n case 'End':\n nextIndex = lastIndex;\n break;\n default:\n break;\n }\n if (nextIndex > -1) {\n triggers[nextIndex].focus();\n }\n }\n }), [accordionItemRefs, disabled, handleTrigger, id, isHorizontal, isRtl, loopFocus, open, panelId]);\n const element = useRenderElement('button', componentProps, {\n state,\n ref: [forwardedRef, buttonRef],\n props: [props, elementProps, getButtonProps],\n stateAttributesMapping: triggerOpenStateMapping\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") AccordionTrigger.displayName = \"AccordionTrigger\";","export let AccordionPanelCssVars = /*#__PURE__*/function (AccordionPanelCssVars) {\n /**\n * The accordion panel's height.\n * @type {number}\n */\n AccordionPanelCssVars[\"accordionPanelHeight\"] = \"--accordion-panel-height\";\n /**\n * The accordion panel's width.\n * @type {number}\n */\n AccordionPanelCssVars[\"accordionPanelWidth\"] = \"--accordion-panel-width\";\n return AccordionPanelCssVars;\n}({});","'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { warn } from '@base-ui/utils/warn';\nimport { useCollapsibleRootContext } from \"../../collapsible/root/CollapsibleRootContext.js\";\nimport { useCollapsiblePanel } from \"../../collapsible/panel/useCollapsiblePanel.js\";\nimport { useAccordionRootContext } from \"../root/AccordionRootContext.js\";\nimport { useAccordionItemContext } from \"../item/AccordionItemContext.js\";\nimport { accordionStateAttributesMapping } from \"../item/stateAttributesMapping.js\";\nimport { AccordionPanelCssVars } from \"./AccordionPanelCssVars.js\";\nimport { useOpenChangeComplete } from \"../../utils/useOpenChangeComplete.js\";\nimport { useRenderElement } from \"../../utils/useRenderElement.js\";\n/**\n * A collapsible panel with the accordion item contents.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Accordion](https://base-ui.com/react/components/accordion)\n */\nexport const AccordionPanel = /*#__PURE__*/React.forwardRef(function AccordionPanel(componentProps, forwardedRef) {\n const {\n className,\n hiddenUntilFound: hiddenUntilFoundProp,\n keepMounted: keepMountedProp,\n id: idProp,\n render,\n ...elementProps\n } = componentProps;\n const {\n hiddenUntilFound: contextHiddenUntilFound,\n keepMounted: contextKeepMounted\n } = useAccordionRootContext();\n const {\n abortControllerRef,\n animationTypeRef,\n height,\n mounted,\n onOpenChange,\n open,\n panelId,\n panelRef,\n runOnceAnimationsFinish,\n setDimensions,\n setHiddenUntilFound,\n setKeepMounted,\n setMounted,\n setOpen,\n setVisible,\n transitionDimensionRef,\n visible,\n width,\n setPanelIdState,\n transitionStatus\n } = useCollapsibleRootContext();\n const hiddenUntilFound = hiddenUntilFoundProp ?? contextHiddenUntilFound;\n const keepMounted = keepMountedProp ?? contextKeepMounted;\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useIsoLayoutEffect(() => {\n if (keepMountedProp === false && hiddenUntilFound) {\n warn('The `keepMounted={false}` prop on a Accordion.Panel will be ignored when using `contextHiddenUntilFound` on the Panel or the Root since it requires the panel to remain mounted when closed.');\n }\n }, [hiddenUntilFound, keepMountedProp]);\n }\n useIsoLayoutEffect(() => {\n if (idProp) {\n setPanelIdState(idProp);\n return () => {\n setPanelIdState(undefined);\n };\n }\n return undefined;\n }, [idProp, setPanelIdState]);\n useIsoLayoutEffect(() => {\n setHiddenUntilFound(hiddenUntilFound);\n }, [setHiddenUntilFound, hiddenUntilFound]);\n useIsoLayoutEffect(() => {\n setKeepMounted(keepMounted);\n }, [setKeepMounted, keepMounted]);\n useOpenChangeComplete({\n open: open && transitionStatus === 'idle',\n ref: panelRef,\n onComplete() {\n if (!open) {\n return;\n }\n setDimensions({\n width: undefined,\n height: undefined\n });\n }\n });\n const {\n props\n } = useCollapsiblePanel({\n abortControllerRef,\n animationTypeRef,\n externalRef: forwardedRef,\n height,\n hiddenUntilFound,\n id: idProp ?? panelId,\n keepMounted,\n mounted,\n onOpenChange,\n open,\n panelRef,\n runOnceAnimationsFinish,\n setDimensions,\n setMounted,\n setOpen,\n setVisible,\n transitionDimensionRef,\n visible,\n width\n });\n const {\n state,\n triggerId\n } = useAccordionItemContext();\n const panelState = React.useMemo(() => ({\n ...state,\n transitionStatus\n }), [state, transitionStatus]);\n const element = useRenderElement('div', componentProps, {\n state: panelState,\n ref: [forwardedRef, panelRef],\n props: [props, {\n 'aria-labelledby': triggerId,\n role: 'region',\n style: {\n [AccordionPanelCssVars.accordionPanelHeight]: height === undefined ? 'auto' : `${height}px`,\n [AccordionPanelCssVars.accordionPanelWidth]: width === undefined ? 'auto' : `${width}px`\n }\n }, elementProps],\n stateAttributesMapping: accordionStateAttributesMapping\n });\n const shouldRender = keepMounted || hiddenUntilFound || !keepMounted && mounted;\n if (!shouldRender) {\n return null;\n }\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") AccordionPanel.displayName = \"AccordionPanel\";","import { Slot } from '../slot'\n\nexport function useRenderSlot(asChild: boolean, defaultTag: string) {\n const Component = asChild ? Slot : defaultTag\n\n return asChild ? ({ ...props }) => <Component {...props} /> : undefined\n}\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { cx } from 'class-variance-authority'\nimport { ComponentProps, createContext, Ref, useContext } from 'react'\n\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Root>, 'multiple' | 'render'>\n\nexport interface AccordionProps extends ExtentedZagInterface {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n */\n asChild?: boolean\n /**\n * Whether the accordion items are disabled\n */\n disabled?: boolean\n /**\n * Whether multiple items can be open at the same time.\n */\n multiple?: boolean\n design?: 'filled' | 'outlined'\n ref?: Ref<HTMLDivElement>\n}\n\nconst AccordionContext = createContext<{\n design: 'filled' | 'outlined'\n} | null>(null)\n\nexport const Accordion = ({\n asChild = false,\n children,\n design = 'outlined',\n hiddenUntilFound = true,\n multiple = false,\n className,\n ref,\n ...props\n}: AccordionProps) => {\n const renderSlot = useRenderSlot(asChild, 'div')\n\n return (\n <AccordionContext.Provider value={{ design }}>\n <BaseAccordion.Root\n data-spark-component=\"accordion\"\n ref={ref}\n multiple={multiple}\n hiddenUntilFound={hiddenUntilFound}\n className={cx('bg-surface h-fit rounded-lg', className)}\n render={renderSlot}\n {...props}\n >\n {children}\n </BaseAccordion.Root>\n </AccordionContext.Provider>\n )\n}\n\nAccordion.displayName = 'Accordion'\n\nexport const useAccordionContext = () => {\n const context = useContext(AccordionContext)\n\n if (!context) {\n throw Error('useAccordionContext must be used within a Accordion provider')\n }\n\n return context\n}\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { useAccordionContext } from './Accordion'\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Item>, 'render'>\n\nexport interface AccordionItemProps extends ExtentedZagInterface {\n asChild?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const Item = ({\n asChild = false,\n className,\n children,\n ref,\n ...props\n}: AccordionItemProps) => {\n const accordion = useAccordionContext()\n\n const renderSlot = useRenderSlot(asChild, 'div')\n\n return (\n <BaseAccordion.Item\n ref={ref}\n data-spark-component=\"accordion-item\"\n render={renderSlot}\n className={cx(\n 'relative first:rounded-t-lg last:rounded-b-lg',\n 'not-last:border-b-0',\n { 'border-sm border-outline': accordion.design === 'outlined' },\n className\n )}\n {...props}\n >\n {children}\n </BaseAccordion.Item>\n )\n}\n\nItem.displayName = 'Accordion.Item'\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Panel>, 'render'>\n\nexport interface AccordionItemContentProps extends ExtentedZagInterface {\n asChild?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const ItemContent = ({\n asChild = false,\n className,\n children,\n ref,\n ...props\n}: AccordionItemContentProps) => {\n const renderSlot = useRenderSlot(asChild, 'div')\n\n return (\n <BaseAccordion.Panel\n ref={ref}\n data-spark-component=\"accordion-item-content\"\n className={cx(\n '[&>:first-child]:p-lg overflow-hidden',\n 'h-[var(--accordion-panel-height)] transition-all duration-200 data-[ending-style]:h-0 data-[starting-style]:h-0',\n 'text-body-1 text-on-surface',\n className\n )}\n render={renderSlot}\n {...props}\n >\n {children}\n </BaseAccordion.Panel>\n )\n}\n\nItemContent.displayName = 'Accordion.ItemContent'\n","import { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { Slot } from '../slot'\n\nexport interface AccordionItemHeaderProps extends ComponentProps<'h3'> {\n asChild?: boolean\n ref?: Ref<HTMLHeadingElement>\n}\n\nexport const ItemHeader = ({\n asChild = false,\n children,\n className,\n ref,\n}: AccordionItemHeaderProps) => {\n const Component = asChild ? Slot : 'h3'\n\n return (\n <Component\n ref={ref}\n data-spark-component=\"accordion-item-header\"\n className={cx('rounded-[inherit]', className)}\n >\n {children}\n </Component>\n )\n}\n\nItemHeader.displayName = 'Accordion.ItemHeader'\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { ArrowHorizontalDown } from '@spark-ui/icons/ArrowHorizontalDown'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { Icon } from '../icon'\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Trigger>, 'render'>\n\nexport interface AccordionItemTriggerProps extends ExtentedZagInterface {\n asChild?: boolean\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const ItemTrigger = ({\n asChild = false,\n children,\n className,\n ref,\n ...props\n}: AccordionItemTriggerProps) => {\n const renderSlot = useRenderSlot(asChild, 'button')\n\n return (\n <BaseAccordion.Trigger\n ref={ref}\n data-spark-component=\"accordion-item-trigger\"\n render={renderSlot}\n className={cx(\n 'group',\n 'gap-lg min-h-sz-48 relative flex items-center justify-between',\n 'px-lg py-md text-headline-2 text-on-surface data-[panel-open]:rounded-b-0 w-full rounded-[inherit] text-left',\n 'hover:enabled:bg-surface-hovered focus:bg-surface-hovered',\n 'focus-visible:u-outline focus-visible:z-raised focus-visible:outline-hidden',\n 'disabled:opacity-dim-3 cursor-pointer disabled:cursor-not-allowed',\n className\n )}\n {...props}\n >\n <div className=\"gap-lg flex grow items-center\">{children}</div>\n <Icon\n intent=\"neutral\"\n className={cx(\n 'shrink-0 rotate-0 duration-100 ease-in motion-reduce:transition-none',\n 'group-data-[panel-open]:rotate-180'\n )}\n size=\"sm\"\n >\n <ArrowHorizontalDown />\n </Icon>\n </BaseAccordion.Trigger>\n )\n}\n\nItemTrigger.displayName = 'Accordion.ItemTrigger'\n","import { Accordion as Root } from './Accordion'\nimport { Item } from './AccordionItem'\nimport { ItemContent } from './AccordionItemContent'\nimport { ItemHeader } from './AccordionItemHeader'\nimport { ItemTrigger } from './AccordionItemTrigger'\n\nexport const Accordion: typeof Root & {\n Item: typeof Item\n ItemHeader: typeof ItemHeader\n ItemTrigger: typeof ItemTrigger\n ItemContent: typeof ItemContent\n} = Object.assign(Root, {\n Item,\n ItemHeader,\n ItemTrigger,\n ItemContent,\n})\n\nAccordion.displayName = 'Accordion'\nItem.displayName = 'Item'\nItemHeader.displayName = 'ItemHeader'\nItemTrigger.displayName = 'Accordion.Trigger'\nItemContent.displayName = 'Accordion.Content'\n\nexport { type AccordionProps } from './Accordion'\nexport { type AccordionItemHeaderProps } from './AccordionItemHeader'\nexport { type AccordionItemContentProps } from './AccordionItemContent'\nexport { type AccordionItemTriggerProps } from './AccordionItemTrigger'\n"],"names":["CompositeListContext","React","useCompositeListContext","CompositeList","props","children","elementsRef","labelsRef","onMapChangeProp","onMapChange","useStableCallback","nextIndexRef","listeners","useRefWithInit","createListeners","map","createMap","mapTick","setMapTick","lastTickRef","register","node","metadata","unregister","sortedMap","newMap","sortByDocumentPosition","index","useIsoLayoutEffect","mutationObserver","entries","diff","updateDiff","entry","_","subscribeMapChange","fn","l","contextValue","_jsx","a","b","position","DirectionContext","useDirection","AccordionRootContext","useAccordionRootContext","context","_formatErrorMessage","rootStateAttributesMapping","AccordionRoot","componentProps","forwardedRef","render","className","disabled","hiddenUntilFoundProp","keepMountedProp","loopFocus","onValueChangeProp","multiple","orientation","valueProp","defaultValueProp","elementProps","direction","warn","defaultValue","onValueChange","accordionItemRefs","value","setValue","useControlled","handleValueChange","newValue","nextOpen","details","createChangeEventDetails","REASONS.none","nextOpenValues","v","nextValue","state","element","useRenderElement","IndexGuessBehavior","useCompositeListItem","params","label","textRef","indexGuessBehavior","externalIndex","indexRef","setIndex","newIndex","componentRef","ref","isLabelDefined","i","AccordionItemContext","useAccordionItemContext","AccordionItemDataAttributes","accordionStateAttributesMapping","baseMapping","transitionStatusMapping","AccordionItem","disabledProp","onOpenChangeProp","listItemRef","mergedRef","useMergedRefs","contextDisabled","rootState","openValues","fallbackValue","useBaseUiId","isOpen","onOpenChange","eventDetails","collapsible","useCollapsibleRoot","collapsibleState","collapsibleContext","triggerId","setTriggerId","accordionItemContext","CollapsibleRootContext","isElementDisabled","SUPPORTED_KEYS","ARROW_DOWN","ARROW_UP","ARROW_RIGHT","ARROW_LEFT","HOME","END","getActiveTriggers","accordionItemElements","output","section","trigger","AccordionTrigger","idProp","nativeButton","panelId","open","handleTrigger","useCollapsibleRootContext","getButtonProps","buttonRef","useButton","isRtl","isHorizontal","id","event","stopEvent","triggers","lastIndex","nextIndex","thisIndex","toNext","toPrev","triggerOpenStateMapping","AccordionPanelCssVars","AccordionPanel","contextHiddenUntilFound","contextKeepMounted","abortControllerRef","animationTypeRef","height","mounted","panelRef","runOnceAnimationsFinish","setDimensions","setHiddenUntilFound","setKeepMounted","setMounted","setOpen","setVisible","transitionDimensionRef","visible","width","setPanelIdState","transitionStatus","hiddenUntilFound","keepMounted","useOpenChangeComplete","useCollapsiblePanel","panelState","useRenderSlot","asChild","defaultTag","Component","Slot","jsx","AccordionContext","createContext","Accordion","design","renderSlot","BaseAccordion.Root","cx","useAccordionContext","useContext","Item","accordion","BaseAccordion.Item","ItemContent","BaseAccordion.Panel","ItemHeader","ItemTrigger","jsxs","BaseAccordion.Trigger","Icon","ArrowHorizontalDown","Root"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13]}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/accordion/useRenderSlot.tsx","../../src/accordion/Accordion.tsx","../../src/accordion/AccordionItem.tsx","../../src/accordion/AccordionItemContent.tsx","../../src/accordion/AccordionItemHeader.tsx","../../src/accordion/AccordionItemTrigger.tsx","../../src/accordion/index.ts"],"sourcesContent":["import { Slot } from '../slot'\n\nexport function useRenderSlot(asChild: boolean, defaultTag: string) {\n const Component = asChild ? Slot : defaultTag\n\n return asChild ? ({ ...props }) => <Component {...props} /> : undefined\n}\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { cx } from 'class-variance-authority'\nimport { ComponentProps, createContext, Ref, useContext } from 'react'\n\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Root>, 'multiple' | 'render'>\n\nexport interface AccordionProps extends ExtentedZagInterface {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n */\n asChild?: boolean\n /**\n * Whether the accordion items are disabled\n */\n disabled?: boolean\n /**\n * Whether multiple items can be open at the same time.\n */\n multiple?: boolean\n design?: 'filled' | 'outlined'\n ref?: Ref<HTMLDivElement>\n}\n\nconst AccordionContext = createContext<{\n design: 'filled' | 'outlined'\n} | null>(null)\n\nexport const Accordion = ({\n asChild = false,\n children,\n design = 'outlined',\n hiddenUntilFound = true,\n multiple = false,\n className,\n ref,\n ...props\n}: AccordionProps) => {\n const renderSlot = useRenderSlot(asChild, 'div')\n\n return (\n <AccordionContext.Provider value={{ design }}>\n <BaseAccordion.Root\n data-spark-component=\"accordion\"\n ref={ref}\n multiple={multiple}\n hiddenUntilFound={hiddenUntilFound}\n className={cx('bg-surface h-fit rounded-lg', className)}\n render={renderSlot}\n {...props}\n >\n {children}\n </BaseAccordion.Root>\n </AccordionContext.Provider>\n )\n}\n\nAccordion.displayName = 'Accordion'\n\nexport const useAccordionContext = () => {\n const context = useContext(AccordionContext)\n\n if (!context) {\n throw Error('useAccordionContext must be used within a Accordion provider')\n }\n\n return context\n}\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { useAccordionContext } from './Accordion'\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Item>, 'render'>\n\nexport interface AccordionItemProps extends ExtentedZagInterface {\n asChild?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const Item = ({\n asChild = false,\n className,\n children,\n ref,\n ...props\n}: AccordionItemProps) => {\n const accordion = useAccordionContext()\n\n const renderSlot = useRenderSlot(asChild, 'div')\n\n return (\n <BaseAccordion.Item\n ref={ref}\n data-spark-component=\"accordion-item\"\n render={renderSlot}\n className={cx(\n 'relative first:rounded-t-lg last:rounded-b-lg',\n 'not-last:border-b-0',\n { 'border-sm border-outline': accordion.design === 'outlined' },\n className\n )}\n {...props}\n >\n {children}\n </BaseAccordion.Item>\n )\n}\n\nItem.displayName = 'Accordion.Item'\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Panel>, 'render'>\n\nexport interface AccordionItemContentProps extends ExtentedZagInterface {\n asChild?: boolean\n ref?: Ref<HTMLDivElement>\n}\n\nexport const ItemContent = ({\n asChild = false,\n className,\n children,\n ref,\n ...props\n}: AccordionItemContentProps) => {\n const renderSlot = useRenderSlot(asChild, 'div')\n\n return (\n <BaseAccordion.Panel\n ref={ref}\n data-spark-component=\"accordion-item-content\"\n className={cx(\n '[&>:first-child]:p-lg overflow-hidden',\n 'h-[var(--accordion-panel-height)] transition-all duration-200 data-[ending-style]:h-0 data-[starting-style]:h-0',\n 'text-body-1 text-on-surface',\n className\n )}\n render={renderSlot}\n {...props}\n >\n {children}\n </BaseAccordion.Panel>\n )\n}\n\nItemContent.displayName = 'Accordion.ItemContent'\n","import { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { Slot } from '../slot'\n\nexport interface AccordionItemHeaderProps extends ComponentProps<'h3'> {\n asChild?: boolean\n ref?: Ref<HTMLHeadingElement>\n}\n\nexport const ItemHeader = ({\n asChild = false,\n children,\n className,\n ref,\n}: AccordionItemHeaderProps) => {\n const Component = asChild ? Slot : 'h3'\n\n return (\n <Component\n ref={ref}\n data-spark-component=\"accordion-item-header\"\n className={cx('rounded-[inherit]', className)}\n >\n {children}\n </Component>\n )\n}\n\nItemHeader.displayName = 'Accordion.ItemHeader'\n","import { Accordion as BaseAccordion } from '@base-ui/react/accordion'\nimport { ArrowHorizontalDown } from '@spark-ui/icons/ArrowHorizontalDown'\nimport { cx } from 'class-variance-authority'\nimport { type ComponentProps, Ref } from 'react'\n\nimport { Icon } from '../icon'\nimport { useRenderSlot } from './useRenderSlot'\n\ntype ExtentedZagInterface = Omit<ComponentProps<typeof BaseAccordion.Trigger>, 'render'>\n\nexport interface AccordionItemTriggerProps extends ExtentedZagInterface {\n asChild?: boolean\n ref?: Ref<HTMLButtonElement>\n}\n\nexport const ItemTrigger = ({\n asChild = false,\n children,\n className,\n ref,\n ...props\n}: AccordionItemTriggerProps) => {\n const renderSlot = useRenderSlot(asChild, 'button')\n\n return (\n <BaseAccordion.Trigger\n ref={ref}\n data-spark-component=\"accordion-item-trigger\"\n render={renderSlot}\n className={cx(\n 'group',\n 'gap-lg min-h-sz-48 relative flex items-center justify-between',\n 'px-lg py-md text-headline-2 text-on-surface data-[panel-open]:rounded-b-0 w-full rounded-[inherit] text-left',\n 'hover:enabled:bg-surface-hovered focus:bg-surface-hovered',\n 'focus-visible:u-outline focus-visible:z-raised focus-visible:outline-hidden',\n 'disabled:opacity-dim-3 cursor-pointer disabled:cursor-not-allowed',\n className\n )}\n {...props}\n >\n <div className=\"gap-lg flex grow items-center\">{children}</div>\n <Icon\n intent=\"neutral\"\n className={cx(\n 'shrink-0 rotate-0 duration-100 ease-in motion-reduce:transition-none',\n 'group-data-[panel-open]:rotate-180'\n )}\n size=\"sm\"\n >\n <ArrowHorizontalDown />\n </Icon>\n </BaseAccordion.Trigger>\n )\n}\n\nItemTrigger.displayName = 'Accordion.ItemTrigger'\n","import { Accordion as Root } from './Accordion'\nimport { Item } from './AccordionItem'\nimport { ItemContent } from './AccordionItemContent'\nimport { ItemHeader } from './AccordionItemHeader'\nimport { ItemTrigger } from './AccordionItemTrigger'\n\nexport const Accordion: typeof Root & {\n Item: typeof Item\n ItemHeader: typeof ItemHeader\n ItemTrigger: typeof ItemTrigger\n ItemContent: typeof ItemContent\n} = Object.assign(Root, {\n Item,\n ItemHeader,\n ItemTrigger,\n ItemContent,\n})\n\nAccordion.displayName = 'Accordion'\nItem.displayName = 'Item'\nItemHeader.displayName = 'ItemHeader'\nItemTrigger.displayName = 'Accordion.Trigger'\nItemContent.displayName = 'Accordion.Content'\n\nexport { type AccordionProps } from './Accordion'\nexport { type AccordionItemHeaderProps } from './AccordionItemHeader'\nexport { type AccordionItemContentProps } from './AccordionItemContent'\nexport { type AccordionItemTriggerProps } from './AccordionItemTrigger'\n"],"names":["useRenderSlot","asChild","defaultTag","Component","Slot","props","jsx","AccordionContext","createContext","Accordion","children","design","hiddenUntilFound","multiple","className","ref","renderSlot","BaseAccordion","cx","useAccordionContext","context","useContext","Item","accordion","ItemContent","ItemHeader","ItemTrigger","jsxs","Icon","ArrowHorizontalDown","Root"],"mappings":"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"}
@@ -2,6 +2,6 @@ import { AlertDialog as BaseAlertDialog } from '@base-ui/react/alert-dialog';
2
2
  import { ComponentProps } from 'react';
3
3
  export type AlertDialogPortalProps = ComponentProps<typeof BaseAlertDialog.Portal>;
4
4
  export declare const AlertDialogPortal: {
5
- (props: AlertDialogPortalProps): import("react/jsx-runtime").JSX.Element;
5
+ ({ className, ...props }: AlertDialogPortalProps): import("react/jsx-runtime").JSX.Element;
6
6
  displayName: string;
7
7
  };
@@ -0,0 +1,38 @@
1
+ import { AlertDialog as Root } from './AlertDialog';
2
+ import { AlertDialogAction } from './AlertDialogAction';
3
+ import { AlertDialogBody } from './AlertDialogBody';
4
+ import { AlertDialogCancel } from './AlertDialogCancel';
5
+ import { AlertDialogContent } from './AlertDialogContent';
6
+ import { AlertDialogDescription } from './AlertDialogDescription';
7
+ import { AlertDialogFooter } from './AlertDialogFooter';
8
+ import { AlertDialogHeader } from './AlertDialogHeader';
9
+ import { AlertDialogOverlay } from './AlertDialogOverlay';
10
+ import { AlertDialogPortal } from './AlertDialogPortal';
11
+ import { AlertDialogTitle } from './AlertDialogTitle';
12
+ import { AlertDialogTrigger } from './AlertDialogTrigger';
13
+ export * from './AlertDialog';
14
+ export { useAlertDialog } from './AlertDialogContext';
15
+ export { type AlertDialogActionProps } from './AlertDialogAction';
16
+ export { type AlertDialogBodyProps } from './AlertDialogBody';
17
+ export { type AlertDialogCancelProps } from './AlertDialogCancel';
18
+ export { type AlertDialogContentProps } from './AlertDialogContent';
19
+ export { type AlertDialogDescriptionProps } from './AlertDialogDescription';
20
+ export { type AlertDialogFooterProps } from './AlertDialogFooter';
21
+ export { type AlertDialogHeaderProps } from './AlertDialogHeader';
22
+ export { type AlertDialogOverlayProps } from './AlertDialogOverlay';
23
+ export { type AlertDialogPortalProps } from './AlertDialogPortal';
24
+ export { type AlertDialogTitleProps } from './AlertDialogTitle';
25
+ export { type AlertDialogTriggerProps } from './AlertDialogTrigger';
26
+ export declare const AlertDialog: typeof Root & {
27
+ Action: typeof AlertDialogAction;
28
+ Body: typeof AlertDialogBody;
29
+ Cancel: typeof AlertDialogCancel;
30
+ Content: typeof AlertDialogContent;
31
+ Description: typeof AlertDialogDescription;
32
+ Footer: typeof AlertDialogFooter;
33
+ Header: typeof AlertDialogHeader;
34
+ Overlay: typeof AlertDialogOverlay;
35
+ Portal: typeof AlertDialogPortal;
36
+ Title: typeof AlertDialogTitle;
37
+ Trigger: typeof AlertDialogTrigger;
38
+ };
@@ -1,35 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const K=require("react/jsx-runtime"),de=require("react"),c=require("../useOpenChangeComplete-Dk-u_f2y.js"),F=require("../floating-ui.utils.dom-CCN4I08l.js"),ct=require("../detectBrowser-DTbs_30X.js"),d=require("../inertValue-ShwihJSN.js"),Pe=require("../useTransitionStatus-CqbEyvIj.js"),He=require("../index-DdkVj7D0.js"),se=require("../composite-fJD9R7R0.js"),Kt=require("../Slot-ghrohQLA.js"),ut=require("@spark-ui/hooks/use-merge-refs"),zt=require("@spark-ui/hooks/use-scroll-overflow"),be=require("../index-DnaHaH_0.js"),qt=require("../DialogContent.styles-BrhKaHc_.js");function $t(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const f=$t(de);function he(e,t,n=!0){return e.filter(r=>r.parentId===t&&(!n||r.context?.open)).flatMap(r=>[r,...he(e,r.id,n)])}function Ye(e,t){let n=[],o=e.find(r=>r.id===t)?.parentId;for(;o;){const r=e.find(s=>s.id===o);o=r?.parentId,r&&(n=n.concat(r))}return n}let Ge={},Xe={},Je="";function Ut(e){if(typeof document>"u")return!1;const t=d.ownerDocument(e);return F.getWindow(t).innerWidth-t.documentElement.clientWidth>0}function Yt(e){const t=d.ownerDocument(e),n=t.documentElement,o=t.body,r=F.isOverflowElement(n)?n:o,s=r.style.overflow;return r.style.overflow="hidden",()=>{r.style.overflow=s}}function Gt(e){const t=d.ownerDocument(e),n=t.documentElement,o=t.body,r=F.getWindow(n);let s=0,l=0;const a=c.AnimationFrame.create(),i=typeof CSS<"u"&&CSS.supports?.("scrollbar-gutter","stable");if(ct.isWebKit&&(r.visualViewport?.scale??1)!==1)return()=>{};function u(){const m=r.getComputedStyle(n),E=r.getComputedStyle(o),R=(m.scrollbarGutter||"").includes("both-edges")?"stable both-edges":"stable";s=n.scrollTop,l=n.scrollLeft,Ge={scrollbarGutter:n.style.scrollbarGutter,overflowY:n.style.overflowY,overflowX:n.style.overflowX},Je=n.style.scrollBehavior,Xe={position:o.style.position,height:o.style.height,width:o.style.width,boxSizing:o.style.boxSizing,overflowY:o.style.overflowY,overflowX:o.style.overflowX,scrollBehavior:o.style.scrollBehavior};const x=n.scrollHeight>n.clientHeight,v=n.scrollWidth>n.clientWidth,y=m.overflowY==="scroll"||E.overflowY==="scroll",k=m.overflowX==="scroll"||E.overflowX==="scroll",M=Math.max(0,r.innerWidth-n.clientWidth),D=Math.max(0,r.innerHeight-n.clientHeight),I=parseFloat(E.marginTop)+parseFloat(E.marginBottom),N=parseFloat(E.marginLeft)+parseFloat(E.marginRight),W=F.isOverflowElement(n)?n:o;if(i){n.style.scrollbarGutter=R,W.style.overflowY="hidden",W.style.overflowX="hidden";return}Object.assign(n.style,{scrollbarGutter:R,overflowY:"hidden",overflowX:"hidden"}),(x||y)&&(n.style.overflowY="scroll"),(v||k)&&(n.style.overflowX="scroll"),Object.assign(o.style,{position:"relative",height:I||D?`calc(100dvh - ${I+D}px)`:"100dvh",width:N||M?`calc(100vw - ${N+M}px)`:"100vw",boxSizing:"border-box",overflow:"hidden",scrollBehavior:"unset"}),o.scrollTop=s,o.scrollLeft=l,n.setAttribute("data-base-ui-scroll-locked",""),n.style.scrollBehavior="unset"}function g(){Object.assign(n.style,Ge),Object.assign(o.style,Xe),i||(n.scrollTop=s,n.scrollLeft=l,n.removeAttribute("data-base-ui-scroll-locked"),n.style.scrollBehavior=Je)}function b(){g(),a.request(u)}return u(),r.addEventListener("resize",b),()=>{a.cancel(),g(),typeof r.removeEventListener=="function"&&r.removeEventListener("resize",b)}}class Xt{lockCount=0;restore=null;timeoutLock=d.Timeout.create();timeoutUnlock=d.Timeout.create();acquire(t){return this.lockCount+=1,this.lockCount===1&&this.restore===null&&this.timeoutLock.start(0,()=>this.lock(t)),this.release}release=()=>{this.lockCount-=1,this.lockCount===0&&this.restore&&this.timeoutUnlock.start(0,this.unlock)};unlock=()=>{this.lockCount===0&&this.restore&&(this.restore?.(),this.restore=null)};lock(t){if(this.lockCount===0||this.restore!==null)return;const o=d.ownerDocument(t).documentElement,r=F.getWindow(o).getComputedStyle(o).overflowY;if(r==="hidden"||r==="clip"){this.restore=c.NOOP;return}const s=ct.isIOS||!Ut(t);this.restore=s?Yt(t):Gt(t)}}const Jt=new Xt;function Qt(e=!0,t=null){c.useIsoLayoutEffect(()=>{if(e)return Jt.acquire(t)},[e,t])}function Zt(){const e=new Map;return{emit(t,n){e.get(t)?.forEach(o=>o(n))},on(t,n){e.has(t)||e.set(t,new Set),e.get(t).add(n)},off(t,n){e.get(t)?.delete(n)}}}const dt=f.createContext(null);process.env.NODE_ENV!=="production"&&(dt.displayName="FloatingNodeContext");const ft=f.createContext(null);process.env.NODE_ENV!=="production"&&(ft.displayName="FloatingTreeContext");const pt=()=>f.useContext(dt)?.id||null,gt=e=>{const t=f.useContext(ft);return e??t};let Qe=0;function Fe(e,t={}){const{preventScroll:n=!1,cancelPrevious:o=!0,sync:r=!1}=t;o&&cancelAnimationFrame(Qe);const s=()=>e?.focus({preventScroll:n});r?s():Qe=requestAnimationFrame(s)}const Ee={inert:new WeakMap,"aria-hidden":new WeakMap,none:new WeakMap};function Ze(e){return e==="inert"?Ee.inert:e==="aria-hidden"?Ee["aria-hidden"]:Ee.none}let we=new WeakSet,De={},Ve=0;const mt=e=>e&&(e.host||mt(e.parentNode)),en=(e,t)=>t.map(n=>{if(e.contains(n))return n;const o=mt(n);return e.contains(o)?o:null}).filter(n=>n!=null);function tn(e,t,n,o){const r="data-base-ui-inert",s=o?"inert":n?"aria-hidden":null,l=en(t,e),a=new Set,i=new Set(l),u=[];De[r]||(De[r]=new WeakMap);const g=De[r];l.forEach(b),m(t),a.clear();function b(E){!E||a.has(E)||(a.add(E),E.parentNode&&b(E.parentNode))}function m(E){!E||i.has(E)||[].forEach.call(E.children,h=>{if(F.getNodeName(h)!=="script")if(a.has(h))m(h);else{const C=s?h.getAttribute(s):null,R=C!==null&&C!=="false",x=Ze(s),v=(x.get(h)||0)+1,y=(g.get(h)||0)+1;x.set(h,v),g.set(h,y),u.push(h),v===1&&R&&we.add(h),y===1&&h.setAttribute(r,""),!R&&s&&h.setAttribute(s,s==="inert"?"":"true")}})}return Ve+=1,()=>{u.forEach(E=>{const h=Ze(s),R=(h.get(E)||0)-1,x=(g.get(E)||0)-1;h.set(E,R),g.set(E,x),R||(!we.has(E)&&s&&E.removeAttribute(s),we.delete(E)),x||E.removeAttribute(r)}),Ve-=1,Ve||(Ee.inert=new WeakMap,Ee["aria-hidden"]=new WeakMap,Ee.none=new WeakMap,we=new WeakSet,De={})}}function nn(e,t=!1,n=!1){const o=d.getDocument(e[0]).body;return tn(e.concat(Array.from(o.querySelectorAll("[aria-live]"))),o,t,n)}function on(e,t){const n=F.getWindow(e.target);return e instanceof n.KeyboardEvent?"keyboard":e instanceof n.FocusEvent?t||"keyboard":"pointerType"in e?e.pointerType||"keyboard":"touches"in e?"touch":e instanceof n.MouseEvent?t||(e.detail===0?"keyboard":"mouse"):""}const et=20;let le=[];function Ke(){le=le.filter(e=>e.isConnected)}function rn(e){Ke(),e&&F.getNodeName(e)!=="body"&&(le.push(e),le.length>et&&(le=le.slice(-et)))}function Be(){return Ke(),le[le.length-1]}function sn(e){if(!e)return null;const t=d.getTabbableOptions();return d.isTabbable(e,t)?e:d.tabbable(e,t)[0]||e}function ln(e){return!e||!e.isConnected?!1:typeof e.checkVisibility=="function"?e.checkVisibility():F.getComputedStyle(e).display!=="none"}function tt(e,t){if(!t.current.includes("floating")&&!e.getAttribute("role")?.includes("dialog"))return;const n=d.getTabbableOptions(),r=d.focusable(e,n).filter(l=>{const a=l.getAttribute("data-tabindex")||"";return d.isTabbable(l,n)||l.hasAttribute("data-tabindex")&&!a.startsWith("-")}),s=e.getAttribute("tabindex");t.current.includes("floating")||r.length===0?s!=="0"&&e.setAttribute("tabindex","0"):(s!=="-1"||e.hasAttribute("data-tabindex")&&e.getAttribute("data-tabindex")!=="-1")&&(e.setAttribute("tabindex","-1"),e.setAttribute("data-tabindex","-1"))}function an(e){const{context:t,children:n,disabled:o=!1,order:r=["content"],initialFocus:s=!0,returnFocus:l=!0,restoreFocus:a=!1,modal:i=!0,closeOnFocusOut:u=!0,openInteractionType:g="",getInsideElements:b=()=>[],nextFocusableElement:m,previousFocusableElement:E,beforeContentFocusGuardRef:h,externalTree:C}=e,R="rootStore"in t?t.rootStore:t,x=R.useState("open"),v=R.useState("domReferenceElement"),y=R.useState("floatingElement"),{events:k,dataRef:M}=R.context,D=c.useStableCallback(()=>M.current.floatingContext?.nodeId),I=c.useStableCallback(b),N=s===!1,W=d.isTypeableCombobox(v)&&N,H=c.useValueAsRef(r),$=c.useValueAsRef(s),X=c.useValueAsRef(l),ye=c.useValueAsRef(g),Y=gt(C),V=d.usePortalContext(),oe=f.useRef(null),Le=f.useRef(null),U=f.useRef(!1),ne=f.useRef(!1),fe=f.useRef(!1),Te=f.useRef(-1),pe=f.useRef(""),te=f.useRef(""),Se=d.useTimeout(),ge=d.useTimeout(),Re=c.useAnimationFrame(),ce=V!=null,P=d.getFloatingFocusElement(y),Z=c.useStableCallback((S=P)=>S?d.tabbable(S,d.getTabbableOptions()):[]),ie=c.useStableCallback(S=>{const w=Z(S);return H.current.map(()=>w).filter(Boolean).flat()});f.useEffect(()=>{if(o||!i)return;function S(z){z.key==="Tab"&&d.contains(P,d.activeElement(d.getDocument(P)))&&Z().length===0&&!W&&se.stopEvent(z)}const w=d.getDocument(P);return w.addEventListener("keydown",S),()=>{w.removeEventListener("keydown",S)}},[o,v,P,i,H,W,Z,ie]),f.useEffect(()=>{if(o||!y)return;function S(w){const z=d.getTarget(w),q=Z().indexOf(z);q!==-1&&(Te.current=q)}return y.addEventListener("focusin",S),()=>{y.removeEventListener("focusin",S)}},[o,y,Z]),f.useEffect(()=>{if(o||!x)return;const S=d.getDocument(P);function w(){fe.current=!1}function z(q){const T=d.getTarget(q),A=d.contains(y,T)||d.contains(v,T)||d.contains(V?.portalNode,T);fe.current=!A,te.current=q.pointerType||"keyboard"}function j(){te.current="keyboard"}return S.addEventListener("pointerdown",z,!0),S.addEventListener("pointerup",w,!0),S.addEventListener("pointercancel",w,!0),S.addEventListener("keydown",j,!0),()=>{S.removeEventListener("pointerdown",z,!0),S.removeEventListener("pointerup",w,!0),S.removeEventListener("pointercancel",w,!0),S.removeEventListener("keydown",j,!0)}},[o,y,v,P,x,V]),f.useEffect(()=>{if(o||!u)return;function S(){ne.current=!0,ge.start(0,()=>{ne.current=!1})}function w(T){const A=T.relatedTarget,re=T.currentTarget,J=d.getTarget(T);queueMicrotask(()=>{const me=D(),Oe=R.context.triggerElements,_e=!(d.contains(v,A)||d.contains(y,A)||d.contains(A,y)||d.contains(V?.portalNode,A)||A!=null&&Oe.hasElement(A)||Oe.hasMatchingElement(ee=>d.contains(ee,A))||A?.hasAttribute(d.createAttribute("focus-guard"))||Y&&(he(Y.nodesRef.current,me).find(ee=>d.contains(ee.context?.elements.floating,A)||d.contains(ee.context?.elements.domReference,A))||Ye(Y.nodesRef.current,me).find(ee=>[ee.context?.elements.floating,d.getFloatingFocusElement(ee.context?.elements.floating)].includes(A)||ee.context?.elements.domReference===A)));if(re===v&&P&&tt(P,H),a&&re!==v&&!ln(J)&&d.activeElement(d.getDocument(P))===d.getDocument(P).body){if(F.isHTMLElement(P)&&(P.focus(),a==="popup")){Re.request(()=>{P.focus()});return}const ee=Te.current,ve=Z(),xe=ve[ee]||ve[ve.length-1]||P;F.isHTMLElement(xe)&&xe.focus()}if(M.current.insideReactTree){M.current.insideReactTree=!1;return}(W||!i)&&A&&_e&&!ne.current&&(W||A!==Be())&&(U.current=!0,R.setOpen(!1,c.createChangeEventDetails(c.focusOut,T)))})}function z(){fe.current||(M.current.insideReactTree=!0,Se.start(0,()=>{M.current.insideReactTree=!1}))}const j=F.isHTMLElement(v)?v:null,q=[];if(!(!y&&!j))return j&&(j.addEventListener("focusout",w),j.addEventListener("pointerdown",S),q.push(()=>{j.removeEventListener("focusout",w),j.removeEventListener("pointerdown",S)})),y&&(y.addEventListener("focusout",w),V&&(y.addEventListener("focusout",z,!0),q.push(()=>{y.removeEventListener("focusout",z,!0)})),q.push(()=>{y.removeEventListener("focusout",w)})),()=>{q.forEach(T=>{T()})}},[o,v,y,P,i,Y,V,R,u,a,Z,W,D,H,M,Se,ge,Re]);const p=f.useRef(null),L=f.useRef(null),O=c.useMergedRefs(p,h,V?.beforeInsideRef),G=c.useMergedRefs(L,V?.afterInsideRef);f.useEffect(()=>{if(o||!y||!x)return;const S=Array.from(V?.portalNode?.querySelectorAll(`[${d.createAttribute("portal")}]`)||[]),z=(Y?Ye(Y.nodesRef.current,D()):[]).find(T=>d.isTypeableCombobox(T.context?.elements.domReference||null))?.context?.elements.domReference,j=[y,z,...S,...I(),oe.current,Le.current,p.current,L.current,V?.beforeOutsideRef.current,V?.afterOutsideRef.current,c.resolveRef(E),c.resolveRef(m),W?v:null].filter(T=>T!=null),q=nn(j,i||W);return()=>{q()}},[x,o,v,y,i,H,V,W,Y,D,I,m,E]),c.useIsoLayoutEffect(()=>{if(!x||o||!F.isHTMLElement(P))return;const S=d.getDocument(P),w=d.activeElement(S);queueMicrotask(()=>{const z=ie(P),j=$.current,q=typeof j=="function"?j(ye.current||""):j;if(q===void 0||q===!1)return;let T;q===!0||q===null?T=z[0]||P:T=c.resolveRef(q),T=T||z[0]||P,!d.contains(P,w)&&Fe(T,{preventScroll:T===P})})},[o,x,P,N,ie,$,ye]),c.useIsoLayoutEffect(()=>{if(o||!P)return;const S=d.getDocument(P),w=d.activeElement(S);rn(w);function z(T){if(T.open||(pe.current=on(T.nativeEvent,te.current)),T.reason===c.triggerHover&&T.nativeEvent.type==="mouseleave"&&(U.current=!0),T.reason===c.outsidePress)if(T.nested)U.current=!1;else if(se.isVirtualClick(T.nativeEvent)||se.isVirtualPointerEvent(T.nativeEvent))U.current=!1;else{let A=!1;document.createElement("div").focus({get preventScroll(){return A=!0,!1}}),A?U.current=!1:U.current=!0}}k.on("openchange",z);const j=S.createElement("span");j.setAttribute("tabindex","-1"),j.setAttribute("aria-hidden","true"),Object.assign(j.style,d.visuallyHidden),ce&&v&&v.insertAdjacentElement("afterend",j);function q(){const T=X.current;let A=typeof T=="function"?T(pe.current):T;if(A===void 0||A===!1)return null;if(A===null&&(A=!0),typeof A=="boolean"){const J=v||Be();return J&&J.isConnected?J:j}const re=v||Be()||j;return c.resolveRef(A)||re}return()=>{k.off("openchange",z);const T=d.activeElement(S),A=d.contains(y,T)||Y&&he(Y.nodesRef.current,D(),!1).some(J=>d.contains(J.context?.elements.floating,T)),re=q();queueMicrotask(()=>{const J=sn(re),me=typeof X.current!="boolean";X.current&&!U.current&&F.isHTMLElement(J)&&(!(!me&&J!==T&&T!==S.body)||A)&&J.focus({preventScroll:!0}),j.remove()})}},[o,y,P,X,M,k,Y,ce,v,D]),f.useEffect(()=>{queueMicrotask(()=>{U.current=!1})},[o]),f.useEffect(()=>{if(o||!x)return;function S(z){d.getTarget(z)?.closest(`[${d.CLICK_TRIGGER_IDENTIFIER}]`)&&(ne.current=!0)}const w=d.getDocument(P);return w.addEventListener("pointerdown",S,!0),()=>{w.removeEventListener("pointerdown",S,!0)}},[o,x,P]),c.useIsoLayoutEffect(()=>{if(!o&&V)return V.setFocusManagerState({modal:i,closeOnFocusOut:u,open:x,onOpenChange:R.setOpen,domReference:v}),()=>{V.setFocusManagerState(null)}},[o,V,i,x,R,u,v]),c.useIsoLayoutEffect(()=>{if(!(o||!P))return tt(P,H),()=>{queueMicrotask(Ke)}},[o,P,H]);const _=!o&&(i?!W:!0)&&(ce||i);return K.jsxs(f.Fragment,{children:[_&&K.jsx(d.FocusGuard,{"data-type":"inside",ref:O,onFocus:S=>{if(i){const w=ie();Fe(w[w.length-1])}else V?.portalNode&&(U.current=!1,d.isOutsideEvent(S,V.portalNode)?d.getNextTabbable(v)?.focus():c.resolveRef(E??V.beforeOutsideRef)?.focus())}}),n,_&&K.jsx(d.FocusGuard,{"data-type":"inside",ref:G,onFocus:S=>{i?Fe(ie()[0]):V?.portalNode&&(u&&(U.current=!0),d.isOutsideEvent(S,V.portalNode)?d.getPreviousTabbable(v)?.focus():c.resolveRef(m??V.afterOutsideRef)?.focus())}})]})}function cn(e,t={}){const n="rootStore"in e?e.rootStore:e,o=n.context.dataRef,{enabled:r=!0,event:s="click",toggle:l=!0,ignoreMouse:a=!1,stickIfOpen:i=!0,touchOpenDelay:u=0}=t,g=f.useRef(void 0),b=c.useAnimationFrame(),m=d.useTimeout(),E=f.useMemo(()=>({onPointerDown(h){g.current=h.pointerType},onMouseDown(h){const C=g.current,R=h.nativeEvent,x=n.select("open");if(h.button!==0||s==="click"||se.isMouseLikePointerType(C)&&a)return;const v=o.current.openEvent,y=v?.type,k=n.select("domReferenceElement")!==h.currentTarget,M=x&&k||!(x&&l&&(!(v&&i)||y==="click"||y==="mousedown"));if(d.isTypeableElement(R.target)){const I=c.createChangeEventDetails(c.triggerPress,R,R.target);M&&C==="touch"&&u>0?m.start(u,()=>{n.setOpen(!0,I)}):n.setOpen(M,I);return}const D=h.currentTarget;b.request(()=>{const I=c.createChangeEventDetails(c.triggerPress,R,D);M&&C==="touch"&&u>0?m.start(u,()=>{n.setOpen(!0,I)}):n.setOpen(M,I)})},onClick(h){if(s==="mousedown-only")return;const C=g.current;if(s==="mousedown"&&C){g.current=void 0;return}if(se.isMouseLikePointerType(C)&&a)return;const R=n.select("open"),x=o.current.openEvent,v=n.select("domReferenceElement")!==h.currentTarget,y=R&&v||!(R&&l&&(!(x&&i)||se.isClickLikeEvent(x))),k=c.createChangeEventDetails(c.triggerPress,h.nativeEvent,h.currentTarget);y&&C==="touch"&&u>0?m.start(u,()=>{n.setOpen(!0,k)}):n.setOpen(y,k)},onKeyDown(){g.current=void 0}}),[o,s,a,n,i,l,b,m,u]);return f.useMemo(()=>r?{reference:E}:c.EMPTY_OBJECT,[r,E])}const un={intentional:"onClick",sloppy:"onPointerDown"};function dn(e){return{escapeKey:typeof e=="boolean"?e:e?.escapeKey??!1,outsidePress:typeof e=="boolean"?e:e?.outsidePress??!0}}function fn(e,t={}){const n="rootStore"in e?e.rootStore:e,o=n.useState("open"),r=n.useState("floatingElement"),s=n.useState("referenceElement"),l=n.useState("domReferenceElement"),{onOpenChange:a,dataRef:i}=n.context,{enabled:u=!0,escapeKey:g=!0,outsidePress:b=!0,outsidePressEvent:m="sloppy",referencePress:E=!1,referencePressEvent:h="sloppy",ancestorScroll:C=!1,bubbles:R,externalTree:x}=t,v=gt(x),y=c.useStableCallback(typeof b=="function"?b:()=>!1),k=typeof b=="function"?y:b,M=f.useRef(!1),{escapeKey:D,outsidePress:I}=dn(R),N=f.useRef(null),W=d.useTimeout(),H=d.useTimeout(),$=c.useStableCallback(()=>{H.clear(),i.current.insideReactTree=!1}),X=f.useRef(!1),ye=f.useRef(""),Y=c.useStableCallback(p=>{ye.current=p.pointerType}),V=c.useStableCallback(()=>{const p=ye.current,L=p==="pen"||!p?"mouse":p,O=typeof m=="function"?m():m;return typeof O=="string"?O:O[L]}),oe=c.useStableCallback(p=>{if(!o||!u||!g||p.key!=="Escape"||X.current)return;const L=i.current.floatingContext?.nodeId,O=v?he(v.nodesRef.current,L):[];if(!D&&O.length>0){let S=!0;if(O.forEach(w=>{w.context?.open&&!w.context.dataRef.current.__escapeKeyBubbles&&(S=!1)}),!S)return}const G=se.isReactEvent(p)?p.nativeEvent:p,_=c.createChangeEventDetails(c.escapeKey,G);n.setOpen(!1,_),!D&&!_.isPropagationAllowed&&p.stopPropagation()}),Le=c.useStableCallback(p=>{const L=V();return L==="intentional"&&p.type!=="click"||L==="sloppy"&&p.type==="click"}),U=c.useStableCallback(()=>{i.current.insideReactTree=!0,H.start(0,$)}),ne=c.useStableCallback((p,L=!1)=>{if(Le(p)){$();return}if(i.current.insideReactTree){$();return}if(V()==="intentional"&&L||typeof k=="function"&&!k(p))return;const O=d.getTarget(p),G=`[${d.createAttribute("inert")}]`,_=d.getDocument(n.select("floatingElement")).querySelectorAll(G),S=n.context.triggerElements;if(O&&(S.hasElement(O)||S.hasMatchingElement(T=>d.contains(T,O))))return;let w=F.isElement(O)?O:null;for(;w&&!F.isLastTraversableNode(w);){const T=F.getParentNode(w);if(F.isLastTraversableNode(T)||!F.isElement(T))break;w=T}if(_.length&&F.isElement(O)&&!d.isRootElement(O)&&!d.contains(O,n.select("floatingElement"))&&Array.from(_).every(T=>!d.contains(w,T)))return;if(F.isHTMLElement(O)&&!("touches"in p)){const T=F.isLastTraversableNode(O),A=F.getComputedStyle(O),re=/auto|scroll/,J=T||re.test(A.overflowX),me=T||re.test(A.overflowY),Oe=J&&O.clientWidth>0&&O.scrollWidth>O.clientWidth,_e=me&&O.clientHeight>0&&O.scrollHeight>O.clientHeight,ee=A.direction==="rtl",ve=_e&&(ee?p.offsetX<=O.offsetWidth-O.clientWidth:p.offsetX>O.clientWidth),xe=Oe&&p.offsetY>O.clientHeight;if(ve||xe)return}const z=i.current.floatingContext?.nodeId,j=v&&he(v.nodesRef.current,z).some(T=>d.isEventTargetWithin(p,T.context?.elements.floating));if(d.isEventTargetWithin(p,n.select("floatingElement"))||d.isEventTargetWithin(p,n.select("domReferenceElement"))||j)return;const q=v?he(v.nodesRef.current,z):[];if(q.length>0){let T=!0;if(q.forEach(A=>{A.context?.open&&!A.context.dataRef.current.__outsidePressBubbles&&(T=!1)}),!T)return}n.setOpen(!1,c.createChangeEventDetails(c.outsidePress,p)),$()}),fe=c.useStableCallback(p=>{V()!=="sloppy"||p.pointerType==="touch"||!n.select("open")||!u||d.isEventTargetWithin(p,n.select("floatingElement"))||d.isEventTargetWithin(p,n.select("domReferenceElement"))||ne(p)}),Te=c.useStableCallback(p=>{if(V()!=="sloppy"||!n.select("open")||!u||d.isEventTargetWithin(p,n.select("floatingElement"))||d.isEventTargetWithin(p,n.select("domReferenceElement")))return;const L=p.touches[0];L&&(N.current={startTime:Date.now(),startX:L.clientX,startY:L.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},W.start(1e3,()=>{N.current&&(N.current.dismissOnTouchEnd=!1,N.current.dismissOnMouseDown=!1)}))}),pe=c.useStableCallback(p=>{const L=d.getTarget(p);function O(){Te(p),L?.removeEventListener(p.type,O)}L?.addEventListener(p.type,O)}),te=c.useStableCallback(p=>{const L=M.current;if(M.current=!1,W.clear(),p.type==="mousedown"&&N.current&&!N.current.dismissOnMouseDown)return;const O=d.getTarget(p);function G(){p.type==="pointerdown"?fe(p):ne(p,L),O?.removeEventListener(p.type,G)}O?.addEventListener(p.type,G)}),Se=c.useStableCallback(p=>{if(V()!=="sloppy"||!N.current||d.isEventTargetWithin(p,n.select("floatingElement"))||d.isEventTargetWithin(p,n.select("domReferenceElement")))return;const L=p.touches[0];if(!L)return;const O=Math.abs(L.clientX-N.current.startX),G=Math.abs(L.clientY-N.current.startY),_=Math.sqrt(O*O+G*G);_>5&&(N.current.dismissOnTouchEnd=!0),_>10&&(ne(p),W.clear(),N.current=null)}),ge=c.useStableCallback(p=>{const L=d.getTarget(p);function O(){Se(p),L?.removeEventListener(p.type,O)}L?.addEventListener(p.type,O)}),Re=c.useStableCallback(p=>{V()!=="sloppy"||!N.current||d.isEventTargetWithin(p,n.select("floatingElement"))||d.isEventTargetWithin(p,n.select("domReferenceElement"))||(N.current.dismissOnTouchEnd&&ne(p),W.clear(),N.current=null)}),ce=c.useStableCallback(p=>{const L=d.getTarget(p);function O(){Re(p),L?.removeEventListener(p.type,O)}L?.addEventListener(p.type,O)});f.useEffect(()=>{if(!o||!u)return;i.current.__escapeKeyBubbles=D,i.current.__outsidePressBubbles=I;const p=new d.Timeout;function L(w){n.setOpen(!1,c.createChangeEventDetails(c.none,w))}function O(){p.clear(),X.current=!0}function G(){p.start(F.isWebKit()?5:0,()=>{X.current=!1})}const _=d.getDocument(r);_.addEventListener("pointerdown",Y,!0),g&&(_.addEventListener("keydown",oe),_.addEventListener("compositionstart",O),_.addEventListener("compositionend",G)),k&&(_.addEventListener("click",te,!0),_.addEventListener("pointerdown",te,!0),_.addEventListener("touchstart",pe,!0),_.addEventListener("touchmove",ge,!0),_.addEventListener("touchend",ce,!0),_.addEventListener("mousedown",te,!0));let S=[];return C&&(F.isElement(l)&&(S=F.getOverflowAncestors(l)),F.isElement(r)&&(S=S.concat(F.getOverflowAncestors(r))),!F.isElement(s)&&s&&s.contextElement&&(S=S.concat(F.getOverflowAncestors(s.contextElement)))),S=S.filter(w=>w!==_.defaultView?.visualViewport),S.forEach(w=>{w.addEventListener("scroll",L,{passive:!0})}),()=>{_.removeEventListener("pointerdown",Y,!0),g&&(_.removeEventListener("keydown",oe),_.removeEventListener("compositionstart",O),_.removeEventListener("compositionend",G)),k&&(_.removeEventListener("click",te,!0),_.removeEventListener("pointerdown",te,!0),_.removeEventListener("touchstart",pe,!0),_.removeEventListener("touchmove",ge,!0),_.removeEventListener("touchend",ce,!0),_.removeEventListener("mousedown",te,!0)),S.forEach(w=>{w.removeEventListener("scroll",L)}),p.clear()}},[i,r,s,l,g,k,o,a,C,u,D,I,oe,ne,te,fe,pe,ge,ce,Y,n]),f.useEffect($,[k,$]);const P=f.useMemo(()=>({onKeyDown:oe,...E&&{[un[h]]:p=>{n.setOpen(!1,c.createChangeEventDetails(c.triggerPress,p.nativeEvent))},...h!=="intentional"&&{onClick(p){n.setOpen(!1,c.createChangeEventDetails(c.triggerPress,p.nativeEvent))}}}}),[oe,n,E,h]),Z=c.useStableCallback(p=>{const L=d.getTarget(p.nativeEvent);!d.contains(n.select("floatingElement"),L)||p.button!==0||(M.current=!0)}),ie=f.useMemo(()=>({onKeyDown:oe,onPointerDown:Z,onMouseDown:Z,onMouseUp:Z,onClickCapture:U,onMouseDownCapture:U,onPointerDownCapture:U,onMouseUpCapture:U,onTouchEndCapture:U,onTouchMoveCapture:U}),[oe,Z,U]);return f.useMemo(()=>u?{reference:P,floating:ie,trigger:P}:{},[u,P,ie])}var pn=(e,t,n)=>{if(t.length===1&&t[0]===n){let o=!1;try{const r={};e(r)===r&&(o=!0)}catch{}if(o){let r;try{throw new Error}catch(s){({stack:r}=s)}console.warn(`The result function returned its own inputs without modification. e.g
2
- \`createSelector([state => state.todos], todos => todos)\`
3
- This could lead to inefficient memoization and unnecessary re-renders.
4
- Ensure transformation logic is in the result function, and extraction logic is in the input selectors.`,{stack:r})}}},gn=(e,t,n)=>{const{memoize:o,memoizeOptions:r}=t,{inputSelectorResults:s,inputSelectorResultsCopy:l}=e,a=o(()=>({}),...r);if(!(a.apply(null,s)===a.apply(null,l))){let u;try{throw new Error}catch(g){({stack:u}=g)}console.warn(`An input selector returned a different result when passed same arguments.
5
- This means your output selector will likely run more frequently than intended.
6
- Avoid returning a new reference inside your input selector, e.g.
7
- \`createSelector([state => state.todos.map(todo => todo.id)], todoIds => todoIds.length)\``,{arguments:n,firstInputs:s,secondInputs:l,stack:u})}},mn={inputStabilityCheck:"once",identityFunctionCheck:"once"},Ne=Symbol("NOT_FOUND");function hn(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function En(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function bn(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(o=>typeof o=="function"?`function ${o.name||"unnamed"}()`:typeof o).join(", ");throw new TypeError(`${t}[${n}]`)}}var nt=e=>Array.isArray(e)?e:[e];function yn(e){const t=Array.isArray(e[0])?e[0]:e;return bn(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function ot(e,t){const n=[],{length:o}=e;for(let r=0;r<o;r++)n.push(e[r].apply(null,t));return n}var vn=(e,t)=>{const{identityFunctionCheck:n,inputStabilityCheck:o}={...mn,...t};return{identityFunctionCheck:{shouldRun:n==="always"||n==="once"&&e,run:pn},inputStabilityCheck:{shouldRun:o==="always"||o==="once"&&e,run:gn}}};function Cn(e){let t;return{get(n){return t&&e(t.key,n)?t.value:Ne},put(n,o){t={key:n,value:o}},getEntries(){return t?[t]:[]},clear(){t=void 0}}}function Tn(e,t){let n=[];function o(a){const i=n.findIndex(u=>t(a,u.key));if(i>-1){const u=n[i];return i>0&&(n.splice(i,1),n.unshift(u)),u.value}return Ne}function r(a,i){o(a)===Ne&&(n.unshift({key:a,value:i}),n.length>e&&n.pop())}function s(){return n}function l(){n=[]}return{get:o,put:r,getEntries:s,clear:l}}var Sn=(e,t)=>e===t;function Rn(e){return function(n,o){if(n===null||o===null||n.length!==o.length)return!1;const{length:r}=n;for(let s=0;s<r;s++)if(!e(n[s],o[s]))return!1;return!0}}function On(e,t){const n=typeof t=="object"?t:{equalityCheck:t},{equalityCheck:o=Sn,maxSize:r=1,resultEqualityCheck:s}=n,l=Rn(o);let a=0;const i=r<=1?Cn(l):Tn(r,l);function u(){let g=i.get(arguments);if(g===Ne){if(g=e.apply(null,arguments),a++,s){const m=i.getEntries().find(E=>s(E.value,g));m&&(g=m.value,a!==0&&a--)}i.put(arguments,g)}return g}return u.clearCache=()=>{i.clear(),u.resetResultsCount()},u.resultsCount=()=>a,u.resetResultsCount=()=>{a=0},u}var xn=class{constructor(e){this.value=e}deref(){return this.value}},wn=typeof WeakRef<"u"?WeakRef:xn,Dn=0,rt=1;function ke(){return{s:Dn,v:void 0,o:null,p:null}}function ht(e,t={}){let n=ke();const{resultEqualityCheck:o}=t;let r,s=0;function l(){let a=n;const{length:i}=arguments;for(let b=0,m=i;b<m;b++){const E=arguments[b];if(typeof E=="function"||typeof E=="object"&&E!==null){let h=a.o;h===null&&(a.o=h=new WeakMap);const C=h.get(E);C===void 0?(a=ke(),h.set(E,a)):a=C}else{let h=a.p;h===null&&(a.p=h=new Map);const C=h.get(E);C===void 0?(a=ke(),h.set(E,a)):a=C}}const u=a;let g;if(a.s===rt)g=a.v;else if(g=e.apply(null,arguments),s++,o){const b=r?.deref?.()??r;b!=null&&o(b,g)&&(g=b,s!==0&&s--),r=typeof g=="object"&&g!==null||typeof g=="function"?new wn(g):g}return u.s=rt,u.v=g,g}return l.clearCache=()=>{n=ke(),l.resetResultsCount()},l.resultsCount=()=>s,l.resetResultsCount=()=>{s=0},l}function Et(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,o=(...r)=>{let s=0,l=0,a,i={},u=r.pop();typeof u=="object"&&(i=u,u=r.pop()),hn(u,`createSelector expects an output function after the inputs, but received: [${typeof u}]`);const g={...n,...i},{memoize:b,memoizeOptions:m=[],argsMemoize:E=ht,argsMemoizeOptions:h=[],devModeChecks:C={}}=g,R=nt(m),x=nt(h),v=yn(r),y=b(function(){return s++,u.apply(null,arguments)},...R);let k=!0;const M=E(function(){l++;const I=ot(v,arguments);if(a=y.apply(null,I),process.env.NODE_ENV!=="production"){const{identityFunctionCheck:N,inputStabilityCheck:W}=vn(k,C);if(N.shouldRun&&N.run(u,I,a),W.shouldRun){const H=ot(v,arguments);W.run({inputSelectorResults:I,inputSelectorResultsCopy:H},{memoize:b,memoizeOptions:R},arguments)}k&&(k=!1)}return a},...x);return Object.assign(M,{resultFunc:u,memoizedResultFunc:y,dependencies:v,dependencyRecomputations:()=>l,resetDependencyRecomputations:()=>{l=0},lastResult:()=>a,recomputations:()=>s,resetRecomputations:()=>{s=0},memoize:b,argsMemoize:E})};return Object.assign(o,{withTypes:()=>o}),o}var kn=Et(ht),In=Object.assign((e,t=kn)=>{En(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const n=Object.keys(e),o=n.map(s=>e[s]);return t(o,(...s)=>s.reduce((l,a,i)=>(l[n[i]]=a,l),{}))},{withTypes:()=>In});Et({memoize:On,memoizeOptions:{maxSize:1,equalityCheck:Object.is}});const B=(e,t,n,o,r,s,...l)=>{if(l.length>0)throw new Error(process.env.NODE_ENV!=="production"?"Unsupported number of selectors":c.formatErrorMessage(1));let a;if(e)a=e;else throw new Error("Missing arguments");return a};var Ie={exports:{}},je={};/**
8
- * @license React
9
- * use-sync-external-store-shim/with-selector.production.js
10
- *
11
- * Copyright (c) Meta Platforms, Inc. and affiliates.
12
- *
13
- * This source code is licensed under the MIT license found in the
14
- * LICENSE file in the root directory of this source tree.
15
- */var st;function Mn(){if(st)return je;st=1;var e=de,t=He.requireShim();function n(u,g){return u===g&&(u!==0||1/u===1/g)||u!==u&&g!==g}var o=typeof Object.is=="function"?Object.is:n,r=t.useSyncExternalStore,s=e.useRef,l=e.useEffect,a=e.useMemo,i=e.useDebugValue;return je.useSyncExternalStoreWithSelector=function(u,g,b,m,E){var h=s(null);if(h.current===null){var C={hasValue:!1,value:null};h.current=C}else C=h.current;h=a(function(){function x(D){if(!v){if(v=!0,y=D,D=m(D),E!==void 0&&C.hasValue){var I=C.value;if(E(I,D))return k=I}return k=D}if(I=k,o(y,D))return I;var N=m(D);return E!==void 0&&E(I,N)?(y=D,I):(y=D,k=N)}var v=!1,y,k,M=b===void 0?null:b;return[function(){return x(g())},M===null?void 0:function(){return x(M())}]},[g,b,m,E]);var R=r(u,h[0],h[1]);return l(function(){C.hasValue=!0,C.value=R},[R]),i(R),R},je}var We={};/**
16
- * @license React
17
- * use-sync-external-store-shim/with-selector.development.js
18
- *
19
- * Copyright (c) Meta Platforms, Inc. and affiliates.
20
- *
21
- * This source code is licensed under the MIT license found in the
22
- * LICENSE file in the root directory of this source tree.
23
- */var it;function Nn(){return it||(it=1,process.env.NODE_ENV!=="production"&&(function(){function e(u,g){return u===g&&(u!==0||1/u===1/g)||u!==u&&g!==g}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=de,n=He.requireShim(),o=typeof Object.is=="function"?Object.is:e,r=n.useSyncExternalStore,s=t.useRef,l=t.useEffect,a=t.useMemo,i=t.useDebugValue;We.useSyncExternalStoreWithSelector=function(u,g,b,m,E){var h=s(null);if(h.current===null){var C={hasValue:!1,value:null};h.current=C}else C=h.current;h=a(function(){function x(D){if(!v){if(v=!0,y=D,D=m(D),E!==void 0&&C.hasValue){var I=C.value;if(E(I,D))return k=I}return k=D}if(I=k,o(y,D))return I;var N=m(D);return E!==void 0&&E(I,N)?(y=D,I):(y=D,k=N)}var v=!1,y,k,M=b===void 0?null:b;return[function(){return x(g())},M===null?void 0:function(){return x(M())}]},[g,b,m,E]);var R=r(u,h[0],h[1]);return l(function(){C.hasValue=!0,C.value=R},[R]),i(R),R},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),We}var lt;function Pn(){return lt||(lt=1,process.env.NODE_ENV==="production"?Ie.exports=Mn():Ie.exports=Nn()),Ie.exports}var An=Pn();const Ln=c.isReactVersionAtLeast(19),_n=Ln?Vn:Bn;function Fn(e,t,n,o,r){return _n(e,t,n,o,r)}function Vn(e,t,n,o,r){const s=f.useCallback(()=>t(e.getSnapshot(),n,o,r),[e,t,n,o,r]);return He.shimExports.useSyncExternalStore(e.subscribe,s,s)}function Bn(e,t,n,o,r){return An.useSyncExternalStoreWithSelector(e.subscribe,e.getSnapshot,e.getSnapshot,s=>t(s,n,o,r))}class Ce{constructor(t){this.state=t,this.listeners=new Set,this.updateTick=0}subscribe=t=>(this.listeners.add(t),()=>{this.listeners.delete(t)});getSnapshot=()=>this.state;setState(t){if(this.state===t)return;this.state=t,this.updateTick+=1;const n=this.updateTick;for(const o of this.listeners){if(n!==this.updateTick)return;o(t)}}update(t){for(const n in t)if(!Object.is(this.state[n],t[n])){Ce.prototype.setState.call(this,{...this.state,...t});return}}set(t,n){Object.is(this.state[t],n)||Ce.prototype.setState.call(this,{...this.state,[t]:n})}notifyAll(){const t={...this.state};Ce.prototype.setState.call(this,t)}}class bt extends Ce{constructor(t,n={},o){super(t),this.context=n,this.selectors=o}controlledValues=new Map;useSyncedValue(t,n){f.useDebugValue(t),c.useIsoLayoutEffect(()=>{this.state[t]!==n&&this.set(t,n)},[t,n])}useSyncedValueWithCleanup(t,n){c.useIsoLayoutEffect(()=>(this.state[t]!==n&&this.set(t,n),()=>{this.set(t,void 0)}),[t,n])}useSyncedValues(t){if(process.env.NODE_ENV!=="production"){f.useDebugValue(t,s=>Object.keys(s));const o=f.useRef(Object.keys(t)).current,r=Object.keys(t);(o.length!==r.length||o.some((s,l)=>s!==r[l]))&&console.error("ReactStore.useSyncedValues expects the same prop keys on every render. Keys should be stable.")}const n=Object.values(t);c.useIsoLayoutEffect(()=>{this.update(t)},n)}useControlledProp(t,n,o){f.useDebugValue(t);const r=n!==void 0;if(process.env.NODE_ENV!=="production"){const s=this.controlledValues.get(t);s!==void 0&&s!==r&&console.error(`A component is changing the ${r?"":"un"}controlled state of ${t.toString()} to be ${r?"un":""}controlled. Elements should not switch from uncontrolled to controlled (or vice versa).`)}this.controlledValues.has(t)||(this.controlledValues.set(t,r),!r&&!Object.is(this.state[t],o)&&super.setState({...this.state,[t]:o})),c.useIsoLayoutEffect(()=>{r&&!Object.is(this.state[t],n)&&super.setState({...this.state,[t]:n})},[t,n,o,r])}set(t,n){this.controlledValues.get(t)!==!0&&super.set(t,n)}update(t){const n={...t};for(const o in n)if(Object.hasOwn(n,o)&&this.controlledValues.get(o)===!0){delete n[o];continue}super.update(n)}setState(t){const n={...t};for(const o in n)if(Object.hasOwn(n,o)&&this.controlledValues.get(o)===!0){delete n[o];continue}super.setState({...this.state,...n})}select=(t,n,o,r)=>{const s=this.selectors[t];return s(this.state,n,o,r)};useState=(t,n,o,r)=>{f.useDebugValue(t);const s=this.selectors[t];return Fn(this,s,n,o,r)};useContextCallback(t,n){f.useDebugValue(t);const o=c.useStableCallback(n??c.NOOP);this.context[t]=o}useStateSetter(t){const n=f.useRef(void 0);return n.current===void 0&&(n.current=o=>{this.set(t,o)}),n.current}observe(t,n){let o;typeof t=="function"?o=t:o=this.selectors[t];let r=o(this.state);return n(r,r,this),this.subscribe(s=>{const l=o(s);if(!Object.is(r,l)){const a=r;r=l,n(l,a,this)}})}}const jn={open:B(e=>e.open),domReferenceElement:B(e=>e.domReferenceElement),referenceElement:B(e=>e.positionReference??e.referenceElement),floatingElement:B(e=>e.floatingElement),floatingId:B(e=>e.floatingId)};class yt extends bt{constructor(t){const{nested:n,noEmit:o,onOpenChange:r,triggerElements:s,...l}=t;super({...l,positionReference:l.referenceElement,domReferenceElement:l.referenceElement},{onOpenChange:r,dataRef:{current:{}},events:Zt(),nested:n,noEmit:o,triggerElements:s},jn)}setOpen=(t,n)=>{if((!t||!this.state.open||se.isClickLikeEvent(n.event))&&(this.context.dataRef.current.openEvent=t?n.event:void 0),!this.context.noEmit){const o={open:t,reason:n.reason,nativeEvent:n.event,nested:this.context.nested,triggerElement:n.trigger};this.context.events.emit("openchange",o)}this.context.onOpenChange?.(t,n)}}function Wn(e,t){const n=f.useRef(null);return f.useCallback(o=>{e!==void 0&&(n.current!==null&&(t.context.triggerElements.delete(n.current),n.current=null),o!==null&&(n.current=e,t.context.triggerElements.add(e,o)))},[t,e])}function Hn(e,t,n,o){const r=n.useState("isMountedByTrigger",e),s=Wn(e,n),l=c.useStableCallback(a=>{s(a),a!==null&&n.select("open")&&n.select("activeTriggerId")==null&&n.update({activeTriggerId:e,activeTriggerElement:a,...o})});return c.useIsoLayoutEffect(()=>{r&&n.update({activeTriggerElement:t.current,...o})},[r,n,t,...Object.values(o)]),{registerTrigger:l,isMountedByThisTrigger:r}}function Kn(e){const t=e.useState("open");c.useIsoLayoutEffect(()=>{if(t&&!e.select("activeTriggerId")&&e.context.triggerElements.size===1){const n=e.context.triggerElements.entries().next();if(!n.done){const[o,r]=n.value;e.update({activeTriggerId:o,activeTriggerElement:r})}}},[t,e])}function zn(e,t,n){const{mounted:o,setMounted:r,transitionStatus:s}=Pe.useTransitionStatus(e);t.useSyncedValues({mounted:o,transitionStatus:s});const l=c.useStableCallback(()=>{r(!1),t.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1}),n?.(),t.context.onOpenChangeComplete?.(!1)}),a=t.useState("preventUnmountingOnClose");return c.useOpenChangeComplete({enabled:!a,open:e,ref:t.context.popupRef,onComplete(){e||l()}}),{forceUnmount:l,transitionStatus:s}}class vt{constructor(){this.elements=new Set,this.idMap=new Map}add(t,n){const o=this.idMap.get(t);if(o!==n&&(o!==void 0&&this.elements.delete(o),this.elements.add(n),this.idMap.set(t,n),process.env.NODE_ENV!=="production"&&this.elements.size!==this.idMap.size))throw new Error(process.env.NODE_ENV!=="production"?"Base UI: A trigger element cannot be registered under multiple IDs in PopupTriggerMap.":c.formatErrorMessage(87))}delete(t){const n=this.idMap.get(t);n&&(this.elements.delete(n),this.idMap.delete(t))}hasElement(t){return this.elements.has(t)}hasMatchingElement(t){for(const n of this.elements)if(t(n))return!0;return!1}getById(t){return this.idMap.get(t)}entries(){return this.idMap.entries()}get size(){return this.idMap.size}}function qn(){return new yt({open:!1,floatingElement:null,referenceElement:null,triggerElements:new vt,floatingId:"",nested:!1,noEmit:!1,onOpenChange:void 0})}function $n(){return{open:!1,mounted:!1,transitionStatus:"idle",floatingRootContext:qn(),preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,popupElement:null,positionerElement:null,activeTriggerProps:c.EMPTY_OBJECT,inactiveTriggerProps:c.EMPTY_OBJECT,popupProps:c.EMPTY_OBJECT}}const Un={open:B(e=>e.open),mounted:B(e=>e.mounted),transitionStatus:B(e=>e.transitionStatus),floatingRootContext:B(e=>e.floatingRootContext),preventUnmountingOnClose:B(e=>e.preventUnmountingOnClose),payload:B(e=>e.payload),activeTriggerId:B(e=>e.activeTriggerId),activeTriggerElement:B(e=>e.mounted?e.activeTriggerElement:null),isTriggerActive:B((e,t)=>t!==void 0&&e.activeTriggerId===t),isOpenedByTrigger:B((e,t)=>t!==void 0&&e.activeTriggerId===t&&e.open),isMountedByTrigger:B((e,t)=>t!==void 0&&e.activeTriggerId===t&&e.mounted),triggerProps:B((e,t)=>t?e.activeTriggerProps:e.inactiveTriggerProps),popupProps:B(e=>e.popupProps),popupElement:B(e=>e.popupElement),positionerElement:B(e=>e.positionerElement)};function Yn(e){const{popupStore:t,noEmit:n=!1,treatPopupAsFloatingElement:o=!1,onOpenChange:r}=e,s=c.useId(),l=pt()!=null,a=t.useState("open"),i=t.useState("activeTriggerElement"),u=t.useState(o?"popupElement":"positionerElement"),g=t.context.triggerElements,b=c.useRefWithInit(()=>new yt({open:a,referenceElement:i,floatingElement:u,triggerElements:g,onOpenChange:r,floatingId:s,nested:l,noEmit:n})).current;return c.useIsoLayoutEffect(()=>{const m={open:a,floatingId:s,referenceElement:i,floatingElement:u};F.isElement(i)&&(m.domReferenceElement=i),b.update(m)},[a,s,i,u,b]),b.context.onOpenChange=r,b.context.nested=l,b.context.noEmit=n,b}function Ct(e=[]){const t=e.map(u=>u?.reference),n=e.map(u=>u?.floating),o=e.map(u=>u?.item),r=e.map(u=>u?.trigger),s=f.useCallback(u=>Me(u,e,"reference"),t),l=f.useCallback(u=>Me(u,e,"floating"),n),a=f.useCallback(u=>Me(u,e,"item"),o),i=f.useCallback(u=>Me(u,e,"trigger"),r);return f.useMemo(()=>({getReferenceProps:s,getFloatingProps:l,getItemProps:a,getTriggerProps:i}),[s,l,a,i])}function Me(e,t,n){const o=new Map,r=n==="item",s={};n==="floating"&&(s.tabIndex=-1,s[d.FOCUSABLE_ATTRIBUTE]="");for(const l in e)r&&e&&(l===d.ACTIVE_KEY||l===d.SELECTED_KEY)||(s[l]=e[l]);for(let l=0;l<t.length;l+=1){let a;const i=t[l]?.[n];typeof i=="function"?a=e?i(e):null:a=i,a&&at(s,a,r,o)}return at(s,e,r,o),s}function at(e,t,n,o){for(const r in t){const s=t[r];n&&(r===d.ACTIVE_KEY||r===d.SELECTED_KEY)||(r.startsWith("on")?(o.has(r)||o.set(r,[]),typeof s=="function"&&(o.get(r)?.push(s),e[r]=(...l)=>o.get(r)?.map(a=>a(...l)).find(a=>a!==void 0))):e[r]=s)}}const Gn=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function Xn(e,t={}){const n="rootStore"in e?e.rootStore:e,o=n.useState("open"),r=n.useState("floatingId"),s=n.useState("domReferenceElement"),l=n.useState("floatingElement"),{enabled:a=!0,role:i="dialog"}=t,u=c.useId(),g=s?.id||u,b=f.useMemo(()=>d.getFloatingFocusElement(l)?.id||r,[l,r]),m=Gn.get(i)??i,h=pt()!=null,C=f.useMemo(()=>m==="tooltip"||i==="label"?c.EMPTY_OBJECT:{"aria-haspopup":m==="alertdialog"?"dialog":m,"aria-expanded":"false",...m==="listbox"&&{role:"combobox"},...m==="menu"&&h&&{role:"menuitem"},...i==="select"&&{"aria-autocomplete":"none"},...i==="combobox"&&{"aria-autocomplete":"list"}},[m,h,i]),R=f.useMemo(()=>m==="tooltip"||i==="label"?{[`aria-${i==="label"?"labelledby":"describedby"}`]:o?b:void 0}:{...C,"aria-expanded":o?"true":"false","aria-controls":o?b:void 0,...m==="menu"&&{id:g}},[m,b,o,g,i,C]),x=f.useMemo(()=>{const y={id:b,...m&&{role:m}};return m==="tooltip"||i==="label"?y:{...y,...m==="menu"&&{"aria-labelledby":g}}},[m,b,g,i]),v=f.useCallback(({active:y,selected:k})=>{const M={role:"option",...y&&{id:`${b}-fui-option`}};switch(i){case"select":case"combobox":return{...M,"aria-selected":k}}return{}},[b,i]);return f.useMemo(()=>a?{reference:R,floating:x,item:v,trigger:C}:{},[a,R,x,C,v])}function Jn(e){const t=f.useRef(""),n=f.useCallback(r=>{r.defaultPrevented||(t.current=r.pointerType,e(r,r.pointerType))},[e]);return{onClick:f.useCallback(r=>{if(r.detail===0){e(r,"keyboard");return}"pointerType"in r&&e(r,r.pointerType),e(r,t.current),t.current=""},[e]),onPointerDown:n}}function Qn(e){const[t,n]=f.useState(null),o=c.useStableCallback((a,i)=>{e||n(i)}),r=f.useCallback(()=>{n(null)},[]),{onClick:s,onPointerDown:l}=Jn(o);return f.useMemo(()=>({openMethod:t,reset:r,triggerProps:{onClick:s,onPointerDown:l}}),[t,r,s,l])}function Zn(e){const{store:t,parentContext:n,actionsRef:o}=e,r=t.useState("open"),s=t.useState("disablePointerDismissal"),l=t.useState("modal"),a=t.useState("popupElement"),{openMethod:i,triggerProps:u,reset:g}=Qn(r);Kn(t);const{forceUnmount:b}=zn(r,t,()=>{g()}),m=c.useStableCallback(H=>{const $=c.createChangeEventDetails(H);return $.preventUnmountOnClose=()=>{t.set("preventUnmountingOnClose",!0)},$}),E=f.useCallback(()=>{t.setOpen(!1,m(c.imperativeAction))},[t,m]);f.useImperativeHandle(o,()=>({unmount:b,close:E}),[b,E]);const h=Yn({popupStore:t,onOpenChange:t.setOpen,treatPopupAsFloatingElement:!0,noEmit:!0}),[C,R]=f.useState(0),x=C===0,v=Xn(h),y=fn(h,{outsidePressEvent(){return t.context.internalBackdropRef.current||t.context.backdropRef.current?"intentional":{mouse:l==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}},outsidePress(H){if("button"in H&&H.button!==0||"touches"in H&&H.touches.length!==1)return!1;const $=d.getTarget(H);if(x&&!s){const X=$;return l&&(t.context.internalBackdropRef.current||t.context.backdropRef.current)?t.context.internalBackdropRef.current===X||t.context.backdropRef.current===X||d.contains(X,a)&&!X?.hasAttribute("data-base-ui-portal"):!0}return!1},escapeKey:x});Qt(r&&l===!0,a);const{getReferenceProps:k,getFloatingProps:M,getTriggerProps:D}=Ct([v,y]);t.useContextCallback("onNestedDialogOpen",H=>{R(H+1)}),t.useContextCallback("onNestedDialogClose",()=>{R(0)}),f.useEffect(()=>(n?.onNestedDialogOpen&&r&&n.onNestedDialogOpen(C),n?.onNestedDialogClose&&!r&&n.onNestedDialogClose(),()=>{n?.onNestedDialogClose&&r&&n.onNestedDialogClose()}),[r,n,C]);const I=f.useMemo(()=>k(u),[k,u]),N=f.useMemo(()=>D(u),[D,u]),W=f.useMemo(()=>M(),[M]);t.useSyncedValues({openMethod:i,activeTriggerProps:I,inactiveTriggerProps:N,popupProps:W,floatingRootContext:h,nestedOpenDialogCount:C})}const ze=f.createContext(void 0);process.env.NODE_ENV!=="production"&&(ze.displayName="DialogRootContext");function ae(e){const t=f.useContext(ze);if(e===!1&&t===void 0)throw new Error(process.env.NODE_ENV!=="production"?"Base UI: DialogRootContext is missing. Dialog parts must be placed within <Dialog.Root>.":c.formatErrorMessage(27));return t}const eo={...Un,modal:B(e=>e.modal),nested:B(e=>e.nested),nestedOpenDialogCount:B(e=>e.nestedOpenDialogCount),disablePointerDismissal:B(e=>e.disablePointerDismissal),openMethod:B(e=>e.openMethod),descriptionElementId:B(e=>e.descriptionElementId),titleElementId:B(e=>e.titleElementId),viewportElement:B(e=>e.viewportElement),role:B(e=>e.role)};class to extends bt{constructor(t){super(no(t),{popupRef:f.createRef(),backdropRef:f.createRef(),internalBackdropRef:f.createRef(),triggerElements:new vt,onOpenChange:void 0,onOpenChangeComplete:void 0},eo)}setOpen=(t,n)=>{if(n.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},!t&&n.trigger==null&&this.state.activeTriggerId!=null&&(n.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(t,n),n.isCanceled)return;const o={open:t,nativeEvent:n.event,reason:n.reason,nested:this.state.nested};this.state.floatingRootContext.context.events?.emit("openchange",o);const r={open:t},s=n.trigger?.id??null;(s||t)&&(r.activeTriggerId=s,r.activeTriggerElement=n.trigger??null),this.update(r)}}function no(e={}){return{...$n(),modal:!0,disablePointerDismissal:!1,popupElement:null,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,role:"dialog",...e}}function oo(e){const{children:t,open:n,defaultOpen:o=!1,onOpenChange:r,onOpenChangeComplete:s,actionsRef:l,handle:a,triggerId:i,defaultTriggerId:u=null}=e,g=ae(),b=!!g,m=c.useRefWithInit(()=>a?.store??new to({open:n??o,activeTriggerId:i!==void 0?i:u,modal:!0,disablePointerDismissal:!0,nested:b,role:"alertdialog"})).current;m.useControlledProp("open",n,o),m.useControlledProp("activeTriggerId",i,u),m.useSyncedValue("nested",b),m.useContextCallback("onOpenChange",r),m.useContextCallback("onOpenChangeComplete",s);const E=m.useState("payload");Zn({store:m,actionsRef:l,parentContext:g?.store.context});const h=f.useMemo(()=>({store:m}),[m]);return K.jsx(ze.Provider,{value:h,children:typeof t=="function"?t({payload:E}):t})}let ue=(function(e){return e.open="data-open",e.closed="data-closed",e[e.startingStyle=c.TransitionStatusDataAttributes.startingStyle]="startingStyle",e[e.endingStyle=c.TransitionStatusDataAttributes.endingStyle]="endingStyle",e.anchorHidden="data-anchor-hidden",e})({}),ro=(function(e){return e.popupOpen="data-popup-open",e.pressed="data-pressed",e})({});const so={[ro.popupOpen]:""},io={[ue.open]:""},lo={[ue.closed]:""},ao={[ue.anchorHidden]:""},co={open(e){return e?so:null}},Tt={open(e){return e?io:lo},anchorHidden(e){return e?ao:null}},uo={...Tt,...c.transitionStatusMapping},St=f.forwardRef(function(t,n){const{render:o,className:r,forceRender:s=!1,...l}=t,{store:a}=ae(),i=a.useState("open"),u=a.useState("nested"),g=a.useState("mounted"),b=a.useState("transitionStatus"),m=f.useMemo(()=>({open:i,transitionStatus:b}),[i,b]);return c.useRenderElement("div",t,{state:m,ref:[a.context.backdropRef,n],stateAttributesMapping:uo,props:[{role:"presentation",hidden:!g,style:{userSelect:"none",WebkitUserSelect:"none"}},l],enabled:s||!u})});process.env.NODE_ENV!=="production"&&(St.displayName="DialogBackdrop");const qe=f.forwardRef(function(t,n){const{render:o,className:r,disabled:s=!1,nativeButton:l=!0,...a}=t,{store:i}=ae(),u=i.useState("open");function g(h){u&&i.setOpen(!1,c.createChangeEventDetails(c.closePress,h.nativeEvent))}const{getButtonProps:b,buttonRef:m}=c.useButton({disabled:s,native:l}),E=f.useMemo(()=>({disabled:s}),[s]);return c.useRenderElement("button",t,{state:E,ref:[n,m],props:[{onClick:g},a,b]})});process.env.NODE_ENV!=="production"&&(qe.displayName="DialogClose");const Rt=f.forwardRef(function(t,n){const{render:o,className:r,id:s,...l}=t,{store:a}=ae(),i=Pe.useBaseUiId(s);return a.useSyncedValueWithCleanup("descriptionElementId",i),c.useRenderElement("p",t,{ref:n,props:[{id:i},l]})});process.env.NODE_ENV!=="production"&&(Rt.displayName="DialogDescription");let fo=(function(e){return e.nestedDialogs="--nested-dialogs",e})({}),po=(function(e){return e[e.open=ue.open]="open",e[e.closed=ue.closed]="closed",e[e.startingStyle=ue.startingStyle]="startingStyle",e[e.endingStyle=ue.endingStyle]="endingStyle",e.nested="data-nested",e.nestedDialogOpen="data-nested-dialog-open",e})({});const $e=f.createContext(void 0);process.env.NODE_ENV!=="production"&&($e.displayName="DialogPortalContext");function go(){const e=f.useContext($e);if(e===void 0)throw new Error(process.env.NODE_ENV!=="production"?"Base UI: <Dialog.Portal> is missing.":c.formatErrorMessage(26));return e}const mo={...Tt,...c.transitionStatusMapping,nestedDialogOpen(e){return e?{[po.nestedDialogOpen]:""}:null}},Ot=f.forwardRef(function(t,n){const{className:o,finalFocus:r,initialFocus:s,render:l,...a}=t,{store:i}=ae(),u=i.useState("descriptionElementId"),g=i.useState("disablePointerDismissal"),b=i.useState("floatingRootContext"),m=i.useState("popupProps"),E=i.useState("modal"),h=i.useState("mounted"),C=i.useState("nested"),R=i.useState("nestedOpenDialogCount"),x=i.useState("open"),v=i.useState("openMethod"),y=i.useState("titleElementId"),k=i.useState("transitionStatus"),M=i.useState("role");go(),c.useOpenChangeComplete({open:x,ref:i.context.popupRef,onComplete(){x&&i.context.onOpenChangeComplete?.(!0)}});function D($){return $==="touch"?i.context.popupRef.current:!0}const I=s===void 0?D:s,N=R>0,W=f.useMemo(()=>({open:x,nested:C,transitionStatus:k,nestedDialogOpen:N}),[x,C,k,N]),H=c.useRenderElement("div",t,{state:W,props:[m,{"aria-labelledby":y??void 0,"aria-describedby":u??void 0,role:M,tabIndex:-1,hidden:!h,onKeyDown($){se.COMPOSITE_KEYS.has($.key)&&$.stopPropagation()},style:{[fo.nestedDialogs]:R}},a],ref:[n,i.context.popupRef,i.useStateSetter("popupElement")],stateAttributesMapping:mo});return K.jsx(an,{context:b,openInteractionType:v,disabled:!h,closeOnFocusOut:!g,initialFocus:I,returnFocus:r,modal:E!==!1,restoreFocus:"popup",children:H})});process.env.NODE_ENV!=="production"&&(Ot.displayName="DialogPopup");const xt=f.forwardRef(function(t,n){const{cutout:o,...r}=t;let s;if(o){const l=o?.getBoundingClientRect();s=`polygon(
24
- 0% 0%,
25
- 100% 0%,
26
- 100% 100%,
27
- 0% 100%,
28
- 0% 0%,
29
- ${l.left}px ${l.top}px,
30
- ${l.left}px ${l.bottom}px,
31
- ${l.right}px ${l.bottom}px,
32
- ${l.right}px ${l.top}px,
33
- ${l.left}px ${l.top}px
34
- )`}return K.jsx("div",{ref:n,role:"presentation","data-base-ui-inert":"",...r,style:{position:"fixed",inset:0,userSelect:"none",WebkitUserSelect:"none",clipPath:s}})});process.env.NODE_ENV!=="production"&&(xt.displayName="InternalBackdrop");const wt=f.forwardRef(function(t,n){const{keepMounted:o=!1,...r}=t,{store:s}=ae(),l=s.useState("mounted"),a=s.useState("modal");return l||o?K.jsx($e.Provider,{value:o,children:K.jsxs(d.FloatingPortal,{ref:n,...r,children:[l&&a===!0&&K.jsx(xt,{ref:s.context.internalBackdropRef,inert:d.inertValue(!open)}),t.children]})}):null});process.env.NODE_ENV!=="production"&&(wt.displayName="DialogPortal");const Dt=f.forwardRef(function(t,n){const{render:o,className:r,id:s,...l}=t,{store:a}=ae(),i=Pe.useBaseUiId(s);return a.useSyncedValueWithCleanup("titleElementId",i),c.useRenderElement("h2",t,{ref:n,props:[{id:i},l]})});process.env.NODE_ENV!=="production"&&(Dt.displayName="DialogTitle");const kt=f.forwardRef(function(t,n){const{render:o,className:r,disabled:s=!1,nativeButton:l=!0,id:a,payload:i,handle:u,...g}=t,b=ae(!0),m=u?.store??b?.store;if(!m)throw new Error(process.env.NODE_ENV!=="production"?"Base UI: <Dialog.Trigger> must be used within <Dialog.Root> or provided with a handle.":c.formatErrorMessage(79));const E=Pe.useBaseUiId(a),h=m.useState("floatingRootContext"),C=m.useState("isOpenedByTrigger",E),R=f.useRef(null),{registerTrigger:x,isMountedByThisTrigger:v}=Hn(E,R,m,{payload:i}),{getButtonProps:y,buttonRef:k}=c.useButton({disabled:s,native:l}),M=cn(h,{enabled:h!=null}),D=Ct([M]),I=f.useMemo(()=>({disabled:s,open:C}),[s,C]),N=m.useState("triggerProps",v);return c.useRenderElement("button",t,{state:I,ref:[k,n,x,R],props:[D.getReferenceProps(),N,{[d.CLICK_TRIGGER_IDENTIFIER]:"",id:E},g,y],stateAttributesMapping:co})});process.env.NODE_ENV!=="production"&&(kt.displayName="DialogTrigger");const It=de.createContext(null),ho=({children:e,withFade:t=!1,cancelRef:n})=>K.jsx(It.Provider,{value:{cancelRef:n,withFade:t},children:e}),Ae=()=>{const e=de.useContext(It);if(!e)throw Error("useAlertDialog must be used within an AlertDialog provider");return e},Mt=({onOpenChange:e,withFade:t=!1,...n})=>{const o=de.useRef(null),r=e?(s,l)=>{e(s)}:void 0;return K.jsx(ho,{withFade:t,cancelRef:o,children:K.jsx(oo,{"data-spark-component":"alert-dialog",onOpenChange:r,...n})})};Mt.displayName="AlertDialog";function Ue(e,t){const n=e?Kt.Slot:t;return e?({...o})=>K.jsx(n,{...o}):void 0}const Nt=({asChild:e=!1,...t})=>{const n=Ue(e,"button");return K.jsx(qe,{"data-spark-component":"alert-dialog-action",render:n,...t})};Nt.displayName="AlertDialog.Action";const Pt=({children:e,className:t,inset:n=!1,ref:o,...r})=>{const s=de.useRef(null),l=ut.useMergeRefs(o,s),{withFade:a}=Ae(),{overflow:i}=zt.useScrollOverflow(s);return K.jsx("div",{"data-spark-component":"alert-dialog-body",ref:l,className:be.cx("focus-visible:u-outline relative grow overflow-y-auto outline-hidden","transition-all duration-300",{"px-xl py-lg":!n},t),style:{...a&&{maskImage:"linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1) 44px, rgba(0, 0, 0, 1) calc(100% - 44px), rgba(0, 0, 0, 0))",maskSize:`100% calc(100% + ${i.top?"0px":"44px"} + ${i.bottom?"0px":"44px"})`,maskPosition:`0 ${i.top?"0px":"-44px"}`}},...r,children:e})};Pt.displayName="AlertDialog.Body";const At=({asChild:e=!1,ref:t,...n})=>{const{cancelRef:o}=Ae(),r=ut.useMergeRefs(t,o),s=Ue(e,"button");return K.jsx(qe,{ref:r,"data-spark-component":"alert-dialog-cancel",render:s,...n})};At.displayName="AlertDialog.Cancel";const Lt=({className:e,ref:t,initialFocus:n,...o})=>{const{cancelRef:r}=Ae(),s=n!==void 0?n:()=>r.current;return K.jsx(Ot,{ref:t,"data-spark-component":"alert-dialog-content",role:"alertdialog",className:l=>be.cx(qt.dialogContentStyles({size:"md",isNarrow:!0}),"min-w-sz-288","transition-all duration-150","data-starting-style:scale-90 data-starting-style:opacity-0","data-ending-style:scale-90 data-ending-style:opacity-0",typeof e=="function"?e(l):e),initialFocus:s,...o})};Lt.displayName="AlertDialog.Content";const _t=e=>K.jsx(Rt,{"data-spark-component":"alert-dialog-description",...e});_t.displayName="AlertDialog.Description";const Ft=({children:e,className:t,ref:n,...o})=>K.jsx("footer",{"data-spark-component":"alert-dialog-footer",ref:n,className:be.cx(t,["px-xl","py-lg"]),...o,children:e});Ft.displayName="AlertDialog.Footer";const Vt=({children:e,className:t,ref:n,...o})=>K.jsx("header",{"data-spark-component":"alert-dialog-header",ref:n,className:be.cx(t,["px-xl","py-lg"]),...o,children:e});Vt.displayName="AlertDialog.Header";const Bt=({className:e,...t})=>K.jsx(St,{"data-spark-component":"alert-dialog-overlay",className:n=>be.cx("z-overlay fixed top-0 left-0 h-screen w-screen","bg-overlay/dim-1","data-[starting-style]:animate-fade-in","data-[ending-style]:animate-fade-out",typeof e=="function"?e(n):e),...t});Bt.displayName="AlertDialog.Overlay";const jt=e=>K.jsx(wt,{"data-spark-component":"alert-dialog-portal",...e});jt.displayName="AlertDialog.Portal";const Wt=({className:e,...t})=>K.jsx(Dt,{"data-spark-component":"alert-dialog-title",className:be.cx("text-headline-1 text-on-surface",e),...t});Wt.displayName="AlertDialog.Title";const Ht=({asChild:e=!1,...t})=>{const n=Ue(e,"button");return K.jsx(kt,{"data-spark-component":"alert-dialog-trigger",render:n,...t})};Ht.displayName="AlertDialog.Trigger";const Q=Object.assign(Mt,{Action:Nt,Body:Pt,Cancel:At,Content:Lt,Description:_t,Footer:Ft,Header:Vt,Overlay:Bt,Portal:jt,Title:Wt,Trigger:Ht});Q.displayName="AlertDialog";Q.Action.displayName="AlertDialog.Action";Q.Body.displayName="AlertDialog.Body";Q.Cancel.displayName="AlertDialog.Cancel";Q.Content.displayName="AlertDialog.Content";Q.Description.displayName="AlertDialog.Description";Q.Footer.displayName="AlertDialog.Footer";Q.Header.displayName="AlertDialog.Header";Q.Overlay.displayName="AlertDialog.Overlay";Q.Portal.displayName="AlertDialog.Portal";Q.Title.displayName="AlertDialog.Title";Q.Trigger.displayName="AlertDialog.Trigger";exports.AlertDialog=Q;exports.useAlertDialog=Ae;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react/jsx-runtime"),i=require("@base-ui/react/alert-dialog"),d=require("react"),w=require("../Slot-DQ8z2zsy.js"),A=require("@spark-ui/hooks/use-merge-refs"),P=require("@spark-ui/hooks/use-scroll-overflow"),c=require("class-variance-authority"),O=require("../DialogContent.styles-bBs6l8Cy.js"),y=d.createContext(null),q=({children:e,withFade:t=!1,cancelRef:a})=>l.jsx(y.Provider,{value:{cancelRef:a,withFade:t},children:e}),p=()=>{const e=d.useContext(y);if(!e)throw Error("useAlertDialog must be used within an AlertDialog provider");return e},m=({onOpenChange:e,withFade:t=!1,...a})=>{const o=d.useRef(null),s=e?(n,g)=>{e(n)}:void 0;return l.jsx(q,{withFade:t,cancelRef:o,children:l.jsx(i.AlertDialog.Root,{"data-spark-component":"alert-dialog",onOpenChange:s,...a})})};m.displayName="AlertDialog";function D(e,t){const a=e?w.Slot:t;return e?({...o})=>l.jsx(a,{...o}):void 0}const x=({asChild:e=!1,...t})=>{const a=D(e,"button");return l.jsx(i.AlertDialog.Close,{"data-spark-component":"alert-dialog-action",render:a,...t})};x.displayName="AlertDialog.Action";const f=({children:e,className:t,inset:a=!1,ref:o,...s})=>{const n=d.useRef(null),g=A.useMergeRefs(o,n),{withFade:S}=p(),{overflow:u}=P.useScrollOverflow(n);return l.jsx("div",{"data-spark-component":"alert-dialog-body",ref:g,className:c.cx("focus-visible:u-outline relative grow overflow-y-auto outline-hidden","transition-all duration-300",{"px-xl py-lg":!a},t),style:{...S&&{maskImage:"linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1) 44px, rgba(0, 0, 0, 1) calc(100% - 44px), rgba(0, 0, 0, 0))",maskSize:`100% calc(100% + ${u.top?"0px":"44px"} + ${u.bottom?"0px":"44px"})`,maskPosition:`0 ${u.top?"0px":"-44px"}`}},...s,children:e})};f.displayName="AlertDialog.Body";const N=({asChild:e=!1,ref:t,...a})=>{const{cancelRef:o}=p(),s=A.useMergeRefs(t,o),n=D(e,"button");return l.jsx(i.AlertDialog.Close,{ref:s,"data-spark-component":"alert-dialog-cancel",render:n,...a})};N.displayName="AlertDialog.Cancel";const v=({className:e,ref:t,initialFocus:a,...o})=>{const{cancelRef:s}=p(),n=a!==void 0?a:()=>s.current;return l.jsx(i.AlertDialog.Popup,{ref:t,"data-spark-component":"alert-dialog-content",role:"alertdialog",className:g=>c.cx(O.dialogContentStyles({size:"md",isNarrow:!0}),"min-w-sz-288","transition-all duration-150","data-starting-style:scale-90 data-starting-style:opacity-0","data-ending-style:scale-90 data-ending-style:opacity-0",typeof e=="function"?e(g):e),initialFocus:n,...o})};v.displayName="AlertDialog.Content";const j=e=>l.jsx(i.AlertDialog.Description,{"data-spark-component":"alert-dialog-description",...e});j.displayName="AlertDialog.Description";const C=({children:e,className:t,ref:a,...o})=>l.jsx("footer",{"data-spark-component":"alert-dialog-footer",ref:a,className:c.cx(t,["px-xl","py-lg"]),...o,children:e});C.displayName="AlertDialog.Footer";const b=({children:e,className:t,ref:a,...o})=>l.jsx("header",{"data-spark-component":"alert-dialog-header",ref:a,className:c.cx(t,["px-xl","py-lg"]),...o,children:e});b.displayName="AlertDialog.Header";const k=({className:e,...t})=>l.jsx(i.AlertDialog.Backdrop,{"data-spark-component":"alert-dialog-overlay",className:a=>c.cx("z-overlay fixed top-0 left-0 h-screen w-screen","bg-overlay/dim-1","data-starting-style:animate-fade-in","data-ending-style:animate-fade-out",typeof e=="function"?e(a):e),...t});k.displayName="AlertDialog.Overlay";const R=({className:e,...t})=>l.jsx(i.AlertDialog.Portal,{"data-spark-component":"alert-dialog-portal",className:c.cx(e,"z-modal absolute"),...t});R.displayName="AlertDialog.Portal";const T=({className:e,...t})=>l.jsx(i.AlertDialog.Title,{"data-spark-component":"alert-dialog-title",className:c.cx("text-headline-1 text-on-surface",e),...t});T.displayName="AlertDialog.Title";const h=({asChild:e=!1,...t})=>{const a=D(e,"button");return l.jsx(i.AlertDialog.Trigger,{"data-spark-component":"alert-dialog-trigger",render:a,...t})};h.displayName="AlertDialog.Trigger";const r=Object.assign(m,{Action:x,Body:f,Cancel:N,Content:v,Description:j,Footer:C,Header:b,Overlay:k,Portal:R,Title:T,Trigger:h});r.displayName="AlertDialog";r.Action.displayName="AlertDialog.Action";r.Body.displayName="AlertDialog.Body";r.Cancel.displayName="AlertDialog.Cancel";r.Content.displayName="AlertDialog.Content";r.Description.displayName="AlertDialog.Description";r.Footer.displayName="AlertDialog.Footer";r.Header.displayName="AlertDialog.Header";r.Overlay.displayName="AlertDialog.Overlay";r.Portal.displayName="AlertDialog.Portal";r.Title.displayName="AlertDialog.Title";r.Trigger.displayName="AlertDialog.Trigger";exports.AlertDialog=r;exports.useAlertDialog=p;
35
2
  //# sourceMappingURL=index.js.map