@kushagradhawan/kookie-ui 0.3.21 → 0.3.23

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 (548) hide show
  1. package/components.css +264 -329
  2. package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
  3. package/dist/cjs/components/_internal/base-button.js +1 -1
  4. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  5. package/dist/cjs/components/_internal/dropdown-menu-drill-down.js +1 -1
  6. package/dist/cjs/components/_internal/dropdown-menu-drill-down.js.map +3 -3
  7. package/dist/cjs/components/_internal/shell-bottom.js +1 -1
  8. package/dist/cjs/components/_internal/shell-bottom.js.map +4 -4
  9. package/dist/cjs/components/_internal/shell-handles.d.ts.map +1 -1
  10. package/dist/cjs/components/_internal/shell-handles.js +1 -1
  11. package/dist/cjs/components/_internal/shell-handles.js.map +3 -3
  12. package/dist/cjs/components/_internal/shell-inspector.js +1 -1
  13. package/dist/cjs/components/_internal/shell-inspector.js.map +4 -4
  14. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  15. package/dist/cjs/components/_internal/shell-sidebar.js.map +4 -4
  16. package/dist/cjs/components/accordion.d.ts.map +1 -1
  17. package/dist/cjs/components/accordion.js +1 -1
  18. package/dist/cjs/components/accordion.js.map +4 -4
  19. package/dist/cjs/components/alert-dialog.d.ts.map +1 -1
  20. package/dist/cjs/components/alert-dialog.js +1 -1
  21. package/dist/cjs/components/alert-dialog.js.map +4 -4
  22. package/dist/cjs/components/avatar.js +1 -1
  23. package/dist/cjs/components/avatar.js.map +4 -4
  24. package/dist/cjs/components/badge.d.ts.map +1 -1
  25. package/dist/cjs/components/badge.js +1 -1
  26. package/dist/cjs/components/badge.js.map +4 -4
  27. package/dist/cjs/components/blockquote.js +1 -1
  28. package/dist/cjs/components/blockquote.js.map +4 -4
  29. package/dist/cjs/components/box.js +1 -1
  30. package/dist/cjs/components/box.js.map +4 -4
  31. package/dist/cjs/components/button.js +1 -1
  32. package/dist/cjs/components/button.js.map +4 -4
  33. package/dist/cjs/components/callout.js +1 -1
  34. package/dist/cjs/components/callout.js.map +4 -4
  35. package/dist/cjs/components/card.js +1 -1
  36. package/dist/cjs/components/card.js.map +4 -4
  37. package/dist/cjs/components/chatbar.js +2 -2
  38. package/dist/cjs/components/chatbar.js.map +4 -4
  39. package/dist/cjs/components/checkbox-cards.js +1 -1
  40. package/dist/cjs/components/checkbox-cards.js.map +4 -4
  41. package/dist/cjs/components/checkbox-group.js +1 -1
  42. package/dist/cjs/components/checkbox-group.js.map +4 -4
  43. package/dist/cjs/components/checkbox.js +1 -1
  44. package/dist/cjs/components/checkbox.js.map +4 -4
  45. package/dist/cjs/components/code.js +1 -1
  46. package/dist/cjs/components/code.js.map +4 -4
  47. package/dist/cjs/components/combobox.js +1 -1
  48. package/dist/cjs/components/combobox.js.map +4 -4
  49. package/dist/cjs/components/container.js +1 -1
  50. package/dist/cjs/components/container.js.map +4 -4
  51. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  52. package/dist/cjs/components/context-menu.js +1 -1
  53. package/dist/cjs/components/context-menu.js.map +4 -4
  54. package/dist/cjs/components/data-list.js +1 -1
  55. package/dist/cjs/components/data-list.js.map +4 -4
  56. package/dist/cjs/components/dialog.d.ts.map +1 -1
  57. package/dist/cjs/components/dialog.js +1 -1
  58. package/dist/cjs/components/dialog.js.map +4 -4
  59. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  60. package/dist/cjs/components/dropdown-menu.js +1 -1
  61. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  62. package/dist/cjs/components/em.js +1 -1
  63. package/dist/cjs/components/em.js.map +4 -4
  64. package/dist/cjs/components/flex.js +1 -1
  65. package/dist/cjs/components/flex.js.map +4 -4
  66. package/dist/cjs/components/grid.js +1 -1
  67. package/dist/cjs/components/grid.js.map +4 -4
  68. package/dist/cjs/components/heading.js +1 -1
  69. package/dist/cjs/components/heading.js.map +4 -4
  70. package/dist/cjs/components/hover-card.js +1 -1
  71. package/dist/cjs/components/hover-card.js.map +4 -4
  72. package/dist/cjs/components/icon-button.js +2 -2
  73. package/dist/cjs/components/icon-button.js.map +4 -4
  74. package/dist/cjs/components/image.js +1 -1
  75. package/dist/cjs/components/image.js.map +4 -4
  76. package/dist/cjs/components/index.js +5 -5
  77. package/dist/cjs/components/index.js.map +4 -4
  78. package/dist/cjs/components/inset.js +1 -1
  79. package/dist/cjs/components/inset.js.map +4 -4
  80. package/dist/cjs/components/kbd.js +1 -1
  81. package/dist/cjs/components/kbd.js.map +4 -4
  82. package/dist/cjs/components/link.js +1 -1
  83. package/dist/cjs/components/link.js.map +4 -4
  84. package/dist/cjs/components/navbar.js +1 -1
  85. package/dist/cjs/components/navbar.js.map +4 -4
  86. package/dist/cjs/components/popover.js +1 -1
  87. package/dist/cjs/components/popover.js.map +4 -4
  88. package/dist/cjs/components/progress.js +1 -1
  89. package/dist/cjs/components/progress.js.map +4 -4
  90. package/dist/cjs/components/quote.js +1 -1
  91. package/dist/cjs/components/quote.js.map +4 -4
  92. package/dist/cjs/components/radio-cards.js +1 -1
  93. package/dist/cjs/components/radio-cards.js.map +4 -4
  94. package/dist/cjs/components/radio-group.js +1 -1
  95. package/dist/cjs/components/radio-group.js.map +4 -4
  96. package/dist/cjs/components/radio.js +1 -1
  97. package/dist/cjs/components/radio.js.map +4 -4
  98. package/dist/cjs/components/schemas/base-button.schema.d.ts +2 -2
  99. package/dist/cjs/components/schemas/button.schema.d.ts +2 -2
  100. package/dist/cjs/components/schemas/icon-button.schema.d.ts +4 -4
  101. package/dist/cjs/components/schemas/shell.schema.d.ts +2 -2
  102. package/dist/cjs/components/schemas/toggle-button.schema.d.ts +6 -6
  103. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts +8 -8
  104. package/dist/cjs/components/scroll-area.js +1 -1
  105. package/dist/cjs/components/scroll-area.js.map +4 -4
  106. package/dist/cjs/components/section.js +1 -1
  107. package/dist/cjs/components/section.js.map +4 -4
  108. package/dist/cjs/components/segmented-control.js +1 -1
  109. package/dist/cjs/components/segmented-control.js.map +4 -4
  110. package/dist/cjs/components/select.js +1 -1
  111. package/dist/cjs/components/select.js.map +4 -4
  112. package/dist/cjs/components/separator.js +1 -1
  113. package/dist/cjs/components/separator.js.map +4 -4
  114. package/dist/cjs/components/sheet.d.ts.map +1 -1
  115. package/dist/cjs/components/sheet.js +1 -1
  116. package/dist/cjs/components/sheet.js.map +4 -4
  117. package/dist/cjs/components/shell.d.ts.map +1 -1
  118. package/dist/cjs/components/shell.js +1 -1
  119. package/dist/cjs/components/shell.js.map +4 -4
  120. package/dist/cjs/components/sidebar.js +1 -1
  121. package/dist/cjs/components/sidebar.js.map +4 -4
  122. package/dist/cjs/components/skeleton.js +1 -1
  123. package/dist/cjs/components/skeleton.js.map +4 -4
  124. package/dist/cjs/components/slider.js +1 -1
  125. package/dist/cjs/components/slider.js.map +4 -4
  126. package/dist/cjs/components/spinner.js +1 -1
  127. package/dist/cjs/components/spinner.js.map +4 -4
  128. package/dist/cjs/components/strong.js +1 -1
  129. package/dist/cjs/components/strong.js.map +4 -4
  130. package/dist/cjs/components/switch.js +1 -1
  131. package/dist/cjs/components/switch.js.map +4 -4
  132. package/dist/cjs/components/tab-nav.js +1 -1
  133. package/dist/cjs/components/tab-nav.js.map +4 -4
  134. package/dist/cjs/components/table.js +1 -1
  135. package/dist/cjs/components/table.js.map +4 -4
  136. package/dist/cjs/components/tabs.js +1 -1
  137. package/dist/cjs/components/tabs.js.map +4 -4
  138. package/dist/cjs/components/text-area.js +1 -1
  139. package/dist/cjs/components/text-area.js.map +4 -4
  140. package/dist/cjs/components/text-field.js +2 -2
  141. package/dist/cjs/components/text-field.js.map +4 -4
  142. package/dist/cjs/components/text.js +1 -1
  143. package/dist/cjs/components/text.js.map +4 -4
  144. package/dist/cjs/components/theme-panel.js +3 -3
  145. package/dist/cjs/components/theme-panel.js.map +4 -4
  146. package/dist/cjs/components/theme.d.ts.map +1 -1
  147. package/dist/cjs/components/theme.js +1 -1
  148. package/dist/cjs/components/theme.js.map +4 -4
  149. package/dist/cjs/components/toggle-button.js +2 -2
  150. package/dist/cjs/components/toggle-button.js.map +4 -4
  151. package/dist/cjs/components/toggle-icon-button.js +3 -3
  152. package/dist/cjs/components/toggle-icon-button.js.map +4 -4
  153. package/dist/cjs/components/toolbar.js +1 -1
  154. package/dist/cjs/components/toolbar.js.map +4 -4
  155. package/dist/cjs/components/tooltip.js +1 -1
  156. package/dist/cjs/components/tooltip.js.map +4 -4
  157. package/dist/cjs/components/user-card.js +1 -1
  158. package/dist/cjs/components/user-card.js.map +4 -4
  159. package/dist/cjs/helpers/compile-prop-defs.d.ts +49 -0
  160. package/dist/cjs/helpers/compile-prop-defs.d.ts.map +1 -0
  161. package/dist/cjs/helpers/compile-prop-defs.js +2 -0
  162. package/dist/cjs/helpers/compile-prop-defs.js.map +7 -0
  163. package/dist/cjs/helpers/extract-props.d.ts.map +1 -1
  164. package/dist/cjs/helpers/extract-props.js +1 -1
  165. package/dist/cjs/helpers/extract-props.js.map +4 -4
  166. package/dist/cjs/helpers/get-margin-styles.d.ts.map +1 -1
  167. package/dist/cjs/helpers/get-margin-styles.js +1 -1
  168. package/dist/cjs/helpers/get-margin-styles.js.map +3 -3
  169. package/dist/cjs/helpers/get-responsive-styles.d.ts +5 -2
  170. package/dist/cjs/helpers/get-responsive-styles.d.ts.map +1 -1
  171. package/dist/cjs/helpers/get-responsive-styles.js +1 -1
  172. package/dist/cjs/helpers/get-responsive-styles.js.map +3 -3
  173. package/dist/cjs/helpers/index.js +2 -2
  174. package/dist/cjs/helpers/index.js.map +4 -4
  175. package/dist/cjs/helpers/use-deprecation-warning.d.ts +10 -0
  176. package/dist/cjs/helpers/use-deprecation-warning.d.ts.map +1 -0
  177. package/dist/cjs/helpers/use-deprecation-warning.js +2 -0
  178. package/dist/cjs/helpers/use-deprecation-warning.js.map +7 -0
  179. package/dist/cjs/hooks/index.js +2 -2
  180. package/dist/cjs/hooks/index.js.map +3 -3
  181. package/dist/cjs/hooks/use-body-pointer-events-cleanup.d.ts.map +1 -1
  182. package/dist/cjs/hooks/use-body-pointer-events-cleanup.js +1 -1
  183. package/dist/cjs/hooks/use-body-pointer-events-cleanup.js.map +3 -3
  184. package/dist/cjs/hooks/use-breakpoint.d.ts +7 -3
  185. package/dist/cjs/hooks/use-breakpoint.d.ts.map +1 -1
  186. package/dist/cjs/hooks/use-breakpoint.js +1 -1
  187. package/dist/cjs/hooks/use-breakpoint.js.map +3 -3
  188. package/dist/cjs/hooks/use-prop-synced-state.d.ts +14 -0
  189. package/dist/cjs/hooks/use-prop-synced-state.d.ts.map +1 -0
  190. package/dist/cjs/hooks/use-prop-synced-state.js +2 -0
  191. package/dist/cjs/hooks/use-prop-synced-state.js.map +7 -0
  192. package/dist/cjs/index.js +5 -5
  193. package/dist/cjs/index.js.map +4 -4
  194. package/dist/esm/{chunk-RQ2ZPMHJ.js → chunk-22HGLMPQ.js} +2 -2
  195. package/dist/esm/{chunk-WYA4IRU6.js → chunk-25WZA7ZU.js} +2 -2
  196. package/dist/esm/chunk-2UPAYDKR.js +2 -0
  197. package/dist/esm/chunk-2UPAYDKR.js.map +7 -0
  198. package/dist/esm/{chunk-XHQGMOXV.js → chunk-36ZQVP7F.js} +2 -2
  199. package/dist/esm/{chunk-K3R4AH3E.js → chunk-3MWWP4MW.js} +2 -2
  200. package/dist/esm/{chunk-HQ35PM4O.js → chunk-43A5GUSI.js} +2 -2
  201. package/dist/esm/{chunk-Z5DQ6FSA.js → chunk-4AQTUBVP.js} +2 -2
  202. package/dist/esm/{chunk-25U7DENY.js → chunk-4BBOHEF4.js} +2 -2
  203. package/dist/esm/chunk-4CKDU6FY.js +2 -0
  204. package/dist/esm/chunk-4CKDU6FY.js.map +7 -0
  205. package/dist/esm/{chunk-ZSEFZM5H.js → chunk-4IY2PR6N.js} +2 -2
  206. package/dist/esm/{chunk-QLIELX4I.js → chunk-4ME6O27S.js} +2 -2
  207. package/dist/esm/chunk-4XJY6FIK.js +2 -0
  208. package/dist/esm/chunk-4XJY6FIK.js.map +7 -0
  209. package/dist/esm/{chunk-JQOFJNCV.js → chunk-4YFJWXL2.js} +2 -2
  210. package/dist/esm/{chunk-DNI4QRXQ.js → chunk-5IBGFL6O.js} +2 -2
  211. package/dist/esm/chunk-5TXQLK4G.js +2 -0
  212. package/dist/esm/chunk-5TXQLK4G.js.map +7 -0
  213. package/dist/esm/{chunk-IPJUHVM6.js → chunk-666GX7O5.js} +2 -2
  214. package/dist/esm/chunk-6FLLFCBU.js +2 -0
  215. package/dist/esm/chunk-6FLLFCBU.js.map +7 -0
  216. package/dist/esm/{chunk-DJBPM5QK.js → chunk-7FC7HF76.js} +2 -2
  217. package/dist/esm/{chunk-SVLY6B5F.js → chunk-7QDTSBJF.js} +2 -2
  218. package/dist/esm/chunk-AX5S56DS.js +2 -0
  219. package/dist/esm/chunk-AX5S56DS.js.map +7 -0
  220. package/dist/esm/{chunk-DK5MHD6I.js → chunk-B24BDVG2.js} +2 -2
  221. package/dist/esm/{chunk-WZCZHCVE.js → chunk-BJYUPIXO.js} +2 -2
  222. package/dist/esm/{chunk-BJTJUIYJ.js → chunk-CRWYCLTE.js} +2 -2
  223. package/dist/esm/{chunk-OHJVFZMH.js → chunk-CSKZZOI2.js} +2 -2
  224. package/dist/esm/chunk-D5N627TH.js +2 -0
  225. package/dist/esm/chunk-D5N627TH.js.map +7 -0
  226. package/dist/esm/{chunk-ADYTQCZX.js → chunk-D6B7IMZU.js} +2 -2
  227. package/dist/esm/chunk-DL2O3GKG.js +2 -0
  228. package/dist/esm/chunk-DL2O3GKG.js.map +7 -0
  229. package/dist/esm/{chunk-USGTBZ43.js → chunk-E67CIG6A.js} +2 -2
  230. package/dist/esm/{chunk-42HFGCHX.js → chunk-ETMLMDW4.js} +2 -2
  231. package/dist/esm/{chunk-7CBAHIVG.js → chunk-F2HYQ3ZR.js} +2 -2
  232. package/dist/esm/{chunk-YUZPSUJE.js → chunk-F7IYL2VW.js} +2 -2
  233. package/dist/esm/{chunk-FVCWNSRU.js → chunk-FHOCUZDR.js} +2 -2
  234. package/dist/esm/{chunk-7MURQ6CR.js → chunk-FLFAXVFB.js} +2 -2
  235. package/dist/esm/{chunk-APRBRAOT.js → chunk-FOEZLQTW.js} +2 -2
  236. package/dist/esm/{chunk-WNSPLWRV.js → chunk-GJSGKE7B.js} +2 -2
  237. package/dist/esm/{chunk-OGOOZLUD.js → chunk-GLERJXVS.js} +2 -2
  238. package/dist/esm/{chunk-6VGPTAHM.js → chunk-GWXVETMF.js} +2 -2
  239. package/dist/esm/{chunk-ES7MK2MM.js → chunk-GYBLXQ4R.js} +2 -2
  240. package/dist/esm/{chunk-4OBMRJHC.js → chunk-H7ST535H.js} +2 -2
  241. package/dist/esm/{chunk-QLZ5XAW6.js → chunk-HF5WY5YE.js} +2 -2
  242. package/dist/esm/chunk-ICIGZ3N7.js +2 -0
  243. package/dist/esm/chunk-ICIGZ3N7.js.map +7 -0
  244. package/dist/esm/{chunk-RDP4UQ42.js → chunk-IEWCQU2S.js} +2 -2
  245. package/dist/esm/{chunk-XLOHPURR.js → chunk-IHK3H2OM.js} +2 -2
  246. package/dist/esm/{chunk-3F6I7YOR.js → chunk-JDGJSNWT.js} +2 -2
  247. package/dist/esm/chunk-JQQIPEGY.js +2 -0
  248. package/dist/esm/chunk-JQQIPEGY.js.map +7 -0
  249. package/dist/esm/chunk-JR2YOGII.js +2 -0
  250. package/dist/esm/chunk-JR2YOGII.js.map +7 -0
  251. package/dist/esm/chunk-JUY7CBSL.js +2 -0
  252. package/dist/esm/chunk-JUY7CBSL.js.map +7 -0
  253. package/dist/esm/{chunk-VF5TRT3H.js → chunk-KKM6T5P7.js} +2 -2
  254. package/dist/esm/{chunk-ZHYOJNWV.js → chunk-LKAK5GXF.js} +2 -2
  255. package/dist/esm/chunk-LOGJJF4I.js +2 -0
  256. package/dist/esm/chunk-LOGJJF4I.js.map +7 -0
  257. package/dist/esm/{chunk-JCYI4NTV.js → chunk-MBCBP73P.js} +2 -2
  258. package/dist/esm/{chunk-UYNYUR7O.js → chunk-MBE2YSBU.js} +2 -2
  259. package/dist/esm/chunk-MHANZINI.js +2 -0
  260. package/dist/esm/chunk-MHANZINI.js.map +7 -0
  261. package/dist/esm/chunk-MRECKC4D.js +2 -0
  262. package/dist/esm/chunk-MRECKC4D.js.map +7 -0
  263. package/dist/esm/{chunk-H2G446JG.js → chunk-NMKPFUNP.js} +2 -2
  264. package/dist/esm/{chunk-4N5JU7XQ.js → chunk-O3CDWEZA.js} +2 -2
  265. package/dist/esm/{chunk-TEULZKBM.js → chunk-OGXZHAQL.js} +2 -2
  266. package/dist/esm/{chunk-2AEELIG6.js → chunk-OWAUCLRT.js} +2 -2
  267. package/dist/esm/{chunk-7CXVHFMQ.js → chunk-P7HYVJSU.js} +2 -2
  268. package/dist/esm/{chunk-4532RT2B.js → chunk-P7IAHW4V.js} +2 -2
  269. package/dist/esm/{chunk-M3ZYJANH.js → chunk-PQZXQ4ST.js} +2 -2
  270. package/dist/esm/{chunk-SGU4HUHF.js → chunk-PTLFMWCN.js} +2 -2
  271. package/dist/esm/chunk-S2HA3W3V.js +2 -0
  272. package/dist/esm/chunk-S2HA3W3V.js.map +7 -0
  273. package/dist/esm/{chunk-E6IWYD3U.js → chunk-S5C5YRBS.js} +2 -2
  274. package/dist/esm/{chunk-A24PYRVV.js → chunk-SO67YEVQ.js} +2 -2
  275. package/dist/esm/chunk-TLWTUKKL.js +2 -0
  276. package/dist/esm/chunk-TLWTUKKL.js.map +7 -0
  277. package/dist/esm/{chunk-HACQF6F4.js → chunk-TOOSHJOA.js} +2 -2
  278. package/dist/esm/{chunk-QOWA5LK5.js → chunk-U2X2CAW4.js} +2 -2
  279. package/dist/esm/{chunk-U7AASKZI.js → chunk-UVCH7QKO.js} +2 -2
  280. package/dist/esm/{chunk-GWYFT3EI.js → chunk-VLO7NXSP.js} +2 -2
  281. package/dist/esm/{chunk-DXI5P5O4.js → chunk-VX6ARMWP.js} +2 -2
  282. package/dist/esm/chunk-WAURCNAS.js +2 -0
  283. package/dist/esm/chunk-WAURCNAS.js.map +7 -0
  284. package/dist/esm/{chunk-EJWAAFCI.js → chunk-WO43WW3A.js} +2 -2
  285. package/dist/esm/{chunk-GLC4QJBF.js → chunk-WTYNFBFV.js} +2 -2
  286. package/dist/esm/{chunk-6FAICIYS.js → chunk-XMRIRFM7.js} +2 -2
  287. package/dist/esm/chunk-YV2KYHGR.js +2 -0
  288. package/dist/esm/chunk-YV2KYHGR.js.map +7 -0
  289. package/dist/esm/{chunk-UIEUZLZZ.js → chunk-ZY6SQWHT.js} +2 -2
  290. package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
  291. package/dist/esm/components/_internal/base-button.js +1 -1
  292. package/dist/esm/components/_internal/dropdown-menu-drill-down.js +1 -1
  293. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  294. package/dist/esm/components/_internal/shell-handles.d.ts.map +1 -1
  295. package/dist/esm/components/_internal/shell-handles.js +1 -1
  296. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  297. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  298. package/dist/esm/components/accordion.d.ts.map +1 -1
  299. package/dist/esm/components/accordion.js +1 -1
  300. package/dist/esm/components/alert-dialog.d.ts.map +1 -1
  301. package/dist/esm/components/alert-dialog.js +1 -1
  302. package/dist/esm/components/avatar.js +1 -1
  303. package/dist/esm/components/badge.d.ts.map +1 -1
  304. package/dist/esm/components/badge.js +1 -1
  305. package/dist/esm/components/blockquote.js +1 -1
  306. package/dist/esm/components/box.js +1 -1
  307. package/dist/esm/components/button.js +1 -1
  308. package/dist/esm/components/callout.js +1 -1
  309. package/dist/esm/components/card.js +1 -1
  310. package/dist/esm/components/chatbar.js +1 -1
  311. package/dist/esm/components/checkbox-cards.js +1 -1
  312. package/dist/esm/components/checkbox-group.js +1 -1
  313. package/dist/esm/components/checkbox.js +1 -1
  314. package/dist/esm/components/code.js +1 -1
  315. package/dist/esm/components/combobox.js +1 -1
  316. package/dist/esm/components/container.js +1 -1
  317. package/dist/esm/components/context-menu.d.ts.map +1 -1
  318. package/dist/esm/components/context-menu.js +1 -1
  319. package/dist/esm/components/data-list.js +1 -1
  320. package/dist/esm/components/dialog.d.ts.map +1 -1
  321. package/dist/esm/components/dialog.js +1 -1
  322. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  323. package/dist/esm/components/dropdown-menu.js +1 -1
  324. package/dist/esm/components/em.js +1 -1
  325. package/dist/esm/components/flex.js +1 -1
  326. package/dist/esm/components/grid.js +1 -1
  327. package/dist/esm/components/heading.js +1 -1
  328. package/dist/esm/components/hover-card.js +1 -1
  329. package/dist/esm/components/icon-button.js +1 -1
  330. package/dist/esm/components/image.js +1 -1
  331. package/dist/esm/components/index.js +1 -1
  332. package/dist/esm/components/inset.js +1 -1
  333. package/dist/esm/components/kbd.js +1 -1
  334. package/dist/esm/components/link.js +1 -1
  335. package/dist/esm/components/navbar.js +1 -1
  336. package/dist/esm/components/popover.js +1 -1
  337. package/dist/esm/components/progress.js +1 -1
  338. package/dist/esm/components/quote.js +1 -1
  339. package/dist/esm/components/radio-cards.js +1 -1
  340. package/dist/esm/components/radio-group.js +1 -1
  341. package/dist/esm/components/radio.js +1 -1
  342. package/dist/esm/components/schemas/base-button.schema.d.ts +2 -2
  343. package/dist/esm/components/schemas/button.schema.d.ts +2 -2
  344. package/dist/esm/components/schemas/icon-button.schema.d.ts +4 -4
  345. package/dist/esm/components/schemas/shell.schema.d.ts +2 -2
  346. package/dist/esm/components/schemas/toggle-button.schema.d.ts +6 -6
  347. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts +8 -8
  348. package/dist/esm/components/scroll-area.js +1 -1
  349. package/dist/esm/components/section.js +1 -1
  350. package/dist/esm/components/segmented-control.js +1 -1
  351. package/dist/esm/components/select.js +1 -1
  352. package/dist/esm/components/separator.js +1 -1
  353. package/dist/esm/components/sheet.d.ts.map +1 -1
  354. package/dist/esm/components/sheet.js +1 -1
  355. package/dist/esm/components/shell.d.ts.map +1 -1
  356. package/dist/esm/components/shell.js +1 -1
  357. package/dist/esm/components/sidebar.js +1 -1
  358. package/dist/esm/components/skeleton.js +1 -1
  359. package/dist/esm/components/slider.js +1 -1
  360. package/dist/esm/components/spinner.js +1 -1
  361. package/dist/esm/components/strong.js +1 -1
  362. package/dist/esm/components/switch.js +1 -1
  363. package/dist/esm/components/tab-nav.js +1 -1
  364. package/dist/esm/components/table.js +1 -1
  365. package/dist/esm/components/tabs.js +1 -1
  366. package/dist/esm/components/text-area.js +1 -1
  367. package/dist/esm/components/text-field.js +1 -1
  368. package/dist/esm/components/text.js +1 -1
  369. package/dist/esm/components/theme-panel.js +1 -1
  370. package/dist/esm/components/theme.d.ts.map +1 -1
  371. package/dist/esm/components/theme.js +1 -1
  372. package/dist/esm/components/toggle-button.js +1 -1
  373. package/dist/esm/components/toggle-icon-button.js +1 -1
  374. package/dist/esm/components/toolbar.js +1 -1
  375. package/dist/esm/components/tooltip.js +1 -1
  376. package/dist/esm/components/user-card.js +1 -1
  377. package/dist/esm/helpers/compile-prop-defs.d.ts +49 -0
  378. package/dist/esm/helpers/compile-prop-defs.d.ts.map +1 -0
  379. package/dist/esm/helpers/compile-prop-defs.js +2 -0
  380. package/dist/esm/helpers/compile-prop-defs.js.map +7 -0
  381. package/dist/esm/helpers/extract-props.d.ts.map +1 -1
  382. package/dist/esm/helpers/extract-props.js +1 -1
  383. package/dist/esm/helpers/get-margin-styles.d.ts.map +1 -1
  384. package/dist/esm/helpers/get-margin-styles.js +1 -1
  385. package/dist/esm/helpers/get-responsive-styles.d.ts +5 -2
  386. package/dist/esm/helpers/get-responsive-styles.d.ts.map +1 -1
  387. package/dist/esm/helpers/get-responsive-styles.js +1 -1
  388. package/dist/esm/helpers/index.js +1 -1
  389. package/dist/esm/helpers/use-deprecation-warning.d.ts +10 -0
  390. package/dist/esm/helpers/use-deprecation-warning.d.ts.map +1 -0
  391. package/dist/esm/helpers/use-deprecation-warning.js +2 -0
  392. package/dist/esm/helpers/use-deprecation-warning.js.map +7 -0
  393. package/dist/esm/hooks/index.js +1 -1
  394. package/dist/esm/hooks/use-body-pointer-events-cleanup.d.ts.map +1 -1
  395. package/dist/esm/hooks/use-body-pointer-events-cleanup.js +1 -1
  396. package/dist/esm/hooks/use-breakpoint.d.ts +7 -3
  397. package/dist/esm/hooks/use-breakpoint.d.ts.map +1 -1
  398. package/dist/esm/hooks/use-breakpoint.js +1 -1
  399. package/dist/esm/hooks/use-prop-synced-state.d.ts +14 -0
  400. package/dist/esm/hooks/use-prop-synced-state.d.ts.map +1 -0
  401. package/dist/esm/hooks/use-prop-synced-state.js +2 -0
  402. package/dist/esm/hooks/use-prop-synced-state.js.map +7 -0
  403. package/dist/esm/index.js +1 -1
  404. package/package.json +2 -1
  405. package/schemas/base-button.json +0 -1
  406. package/schemas/button.json +0 -1
  407. package/schemas/icon-button.json +0 -1
  408. package/schemas/index.json +0 -6
  409. package/schemas/toggle-button.json +0 -1
  410. package/schemas/toggle-icon-button.json +0 -1
  411. package/src/components/_internal/base-button.css +2 -2
  412. package/src/components/_internal/base-button.tsx +3 -58
  413. package/src/components/_internal/base-card.css +19 -4
  414. package/src/components/_internal/base-checkbox.css +2 -2
  415. package/src/components/_internal/base-dialog.css +7 -13
  416. package/src/components/_internal/base-menu.css +7 -0
  417. package/src/components/_internal/base-radio.css +2 -2
  418. package/src/components/_internal/base-sidebar.css +7 -0
  419. package/src/components/_internal/base-tab-list.css +2 -2
  420. package/src/components/_internal/shell-handles.tsx +27 -0
  421. package/src/components/accordion.css +6 -6
  422. package/src/components/accordion.tsx +2 -8
  423. package/src/components/alert-dialog.tsx +22 -20
  424. package/src/components/avatar.css +2 -2
  425. package/src/components/badge.css +2 -2
  426. package/src/components/badge.tsx +2 -8
  427. package/src/components/callout.css +2 -2
  428. package/src/components/chatbar.css +1 -1
  429. package/src/components/context-menu.tsx +2 -8
  430. package/src/components/dialog.tsx +46 -72
  431. package/src/components/dropdown-menu.tsx +2 -8
  432. package/src/components/popover.css +7 -0
  433. package/src/components/progress.css +21 -8
  434. package/src/components/segmented-control.css +2 -2
  435. package/src/components/select.css +9 -2
  436. package/src/components/sheet.tsx +31 -28
  437. package/src/components/shell.css +106 -69
  438. package/src/components/shell.tsx +168 -97
  439. package/src/components/slider.css +2 -2
  440. package/src/components/switch.css +2 -2
  441. package/src/components/table.css +7 -0
  442. package/src/components/text-area.css +2 -2
  443. package/src/components/text-field.css +2 -2
  444. package/src/components/theme.tsx +35 -34
  445. package/src/helpers/compile-prop-defs.ts +121 -0
  446. package/src/helpers/extract-props.ts +104 -83
  447. package/src/helpers/get-margin-styles.ts +38 -71
  448. package/src/helpers/get-responsive-styles.ts +37 -38
  449. package/src/helpers/use-deprecation-warning.ts +26 -0
  450. package/src/hooks/use-body-pointer-events-cleanup.ts +36 -6
  451. package/src/hooks/use-breakpoint.ts +94 -53
  452. package/src/hooks/use-prop-synced-state.ts +24 -0
  453. package/src/styles/tokens/blur.css +28 -0
  454. package/src/styles/tokens/color.css +3 -3
  455. package/src/styles/tokens/constants.css +11 -0
  456. package/styles.css +280 -332
  457. package/tokens/base.css +13 -3
  458. package/tokens.css +16 -3
  459. package/dist/esm/chunk-2SS3FA3N.js +0 -2
  460. package/dist/esm/chunk-2SS3FA3N.js.map +0 -7
  461. package/dist/esm/chunk-5U2Q23K3.js +0 -2
  462. package/dist/esm/chunk-5U2Q23K3.js.map +0 -7
  463. package/dist/esm/chunk-6ELPYR73.js +0 -2
  464. package/dist/esm/chunk-6ELPYR73.js.map +0 -7
  465. package/dist/esm/chunk-DZ4H2KTP.js +0 -2
  466. package/dist/esm/chunk-DZ4H2KTP.js.map +0 -7
  467. package/dist/esm/chunk-H4MMVAGQ.js +0 -2
  468. package/dist/esm/chunk-H4MMVAGQ.js.map +0 -7
  469. package/dist/esm/chunk-HURTSXRY.js +0 -2
  470. package/dist/esm/chunk-HURTSXRY.js.map +0 -7
  471. package/dist/esm/chunk-ITRVKLYU.js +0 -2
  472. package/dist/esm/chunk-ITRVKLYU.js.map +0 -7
  473. package/dist/esm/chunk-KCAFSCOV.js +0 -2
  474. package/dist/esm/chunk-KCAFSCOV.js.map +0 -7
  475. package/dist/esm/chunk-KMPBTEZH.js +0 -2
  476. package/dist/esm/chunk-KMPBTEZH.js.map +0 -7
  477. package/dist/esm/chunk-LN5SP46K.js +0 -2
  478. package/dist/esm/chunk-LN5SP46K.js.map +0 -7
  479. package/dist/esm/chunk-Q73Y5O5P.js +0 -2
  480. package/dist/esm/chunk-Q73Y5O5P.js.map +0 -7
  481. package/dist/esm/chunk-RMBS6CAO.js +0 -2
  482. package/dist/esm/chunk-RMBS6CAO.js.map +0 -7
  483. package/dist/esm/chunk-UUX42HBM.js +0 -2
  484. package/dist/esm/chunk-UUX42HBM.js.map +0 -7
  485. package/dist/esm/chunk-X7BD5FLE.js +0 -2
  486. package/dist/esm/chunk-X7BD5FLE.js.map +0 -7
  487. package/dist/esm/chunk-YEA646GM.js +0 -2
  488. package/dist/esm/chunk-YEA646GM.js.map +0 -7
  489. package/dist/esm/chunk-ZMEXIPWM.js +0 -2
  490. package/dist/esm/chunk-ZMEXIPWM.js.map +0 -7
  491. /package/dist/esm/{chunk-RQ2ZPMHJ.js.map → chunk-22HGLMPQ.js.map} +0 -0
  492. /package/dist/esm/{chunk-WYA4IRU6.js.map → chunk-25WZA7ZU.js.map} +0 -0
  493. /package/dist/esm/{chunk-XHQGMOXV.js.map → chunk-36ZQVP7F.js.map} +0 -0
  494. /package/dist/esm/{chunk-K3R4AH3E.js.map → chunk-3MWWP4MW.js.map} +0 -0
  495. /package/dist/esm/{chunk-HQ35PM4O.js.map → chunk-43A5GUSI.js.map} +0 -0
  496. /package/dist/esm/{chunk-Z5DQ6FSA.js.map → chunk-4AQTUBVP.js.map} +0 -0
  497. /package/dist/esm/{chunk-25U7DENY.js.map → chunk-4BBOHEF4.js.map} +0 -0
  498. /package/dist/esm/{chunk-ZSEFZM5H.js.map → chunk-4IY2PR6N.js.map} +0 -0
  499. /package/dist/esm/{chunk-QLIELX4I.js.map → chunk-4ME6O27S.js.map} +0 -0
  500. /package/dist/esm/{chunk-JQOFJNCV.js.map → chunk-4YFJWXL2.js.map} +0 -0
  501. /package/dist/esm/{chunk-DNI4QRXQ.js.map → chunk-5IBGFL6O.js.map} +0 -0
  502. /package/dist/esm/{chunk-IPJUHVM6.js.map → chunk-666GX7O5.js.map} +0 -0
  503. /package/dist/esm/{chunk-DJBPM5QK.js.map → chunk-7FC7HF76.js.map} +0 -0
  504. /package/dist/esm/{chunk-SVLY6B5F.js.map → chunk-7QDTSBJF.js.map} +0 -0
  505. /package/dist/esm/{chunk-DK5MHD6I.js.map → chunk-B24BDVG2.js.map} +0 -0
  506. /package/dist/esm/{chunk-WZCZHCVE.js.map → chunk-BJYUPIXO.js.map} +0 -0
  507. /package/dist/esm/{chunk-BJTJUIYJ.js.map → chunk-CRWYCLTE.js.map} +0 -0
  508. /package/dist/esm/{chunk-OHJVFZMH.js.map → chunk-CSKZZOI2.js.map} +0 -0
  509. /package/dist/esm/{chunk-ADYTQCZX.js.map → chunk-D6B7IMZU.js.map} +0 -0
  510. /package/dist/esm/{chunk-USGTBZ43.js.map → chunk-E67CIG6A.js.map} +0 -0
  511. /package/dist/esm/{chunk-42HFGCHX.js.map → chunk-ETMLMDW4.js.map} +0 -0
  512. /package/dist/esm/{chunk-7CBAHIVG.js.map → chunk-F2HYQ3ZR.js.map} +0 -0
  513. /package/dist/esm/{chunk-YUZPSUJE.js.map → chunk-F7IYL2VW.js.map} +0 -0
  514. /package/dist/esm/{chunk-FVCWNSRU.js.map → chunk-FHOCUZDR.js.map} +0 -0
  515. /package/dist/esm/{chunk-7MURQ6CR.js.map → chunk-FLFAXVFB.js.map} +0 -0
  516. /package/dist/esm/{chunk-APRBRAOT.js.map → chunk-FOEZLQTW.js.map} +0 -0
  517. /package/dist/esm/{chunk-WNSPLWRV.js.map → chunk-GJSGKE7B.js.map} +0 -0
  518. /package/dist/esm/{chunk-OGOOZLUD.js.map → chunk-GLERJXVS.js.map} +0 -0
  519. /package/dist/esm/{chunk-6VGPTAHM.js.map → chunk-GWXVETMF.js.map} +0 -0
  520. /package/dist/esm/{chunk-ES7MK2MM.js.map → chunk-GYBLXQ4R.js.map} +0 -0
  521. /package/dist/esm/{chunk-4OBMRJHC.js.map → chunk-H7ST535H.js.map} +0 -0
  522. /package/dist/esm/{chunk-QLZ5XAW6.js.map → chunk-HF5WY5YE.js.map} +0 -0
  523. /package/dist/esm/{chunk-RDP4UQ42.js.map → chunk-IEWCQU2S.js.map} +0 -0
  524. /package/dist/esm/{chunk-XLOHPURR.js.map → chunk-IHK3H2OM.js.map} +0 -0
  525. /package/dist/esm/{chunk-3F6I7YOR.js.map → chunk-JDGJSNWT.js.map} +0 -0
  526. /package/dist/esm/{chunk-VF5TRT3H.js.map → chunk-KKM6T5P7.js.map} +0 -0
  527. /package/dist/esm/{chunk-ZHYOJNWV.js.map → chunk-LKAK5GXF.js.map} +0 -0
  528. /package/dist/esm/{chunk-JCYI4NTV.js.map → chunk-MBCBP73P.js.map} +0 -0
  529. /package/dist/esm/{chunk-UYNYUR7O.js.map → chunk-MBE2YSBU.js.map} +0 -0
  530. /package/dist/esm/{chunk-H2G446JG.js.map → chunk-NMKPFUNP.js.map} +0 -0
  531. /package/dist/esm/{chunk-4N5JU7XQ.js.map → chunk-O3CDWEZA.js.map} +0 -0
  532. /package/dist/esm/{chunk-TEULZKBM.js.map → chunk-OGXZHAQL.js.map} +0 -0
  533. /package/dist/esm/{chunk-2AEELIG6.js.map → chunk-OWAUCLRT.js.map} +0 -0
  534. /package/dist/esm/{chunk-7CXVHFMQ.js.map → chunk-P7HYVJSU.js.map} +0 -0
  535. /package/dist/esm/{chunk-4532RT2B.js.map → chunk-P7IAHW4V.js.map} +0 -0
  536. /package/dist/esm/{chunk-M3ZYJANH.js.map → chunk-PQZXQ4ST.js.map} +0 -0
  537. /package/dist/esm/{chunk-SGU4HUHF.js.map → chunk-PTLFMWCN.js.map} +0 -0
  538. /package/dist/esm/{chunk-E6IWYD3U.js.map → chunk-S5C5YRBS.js.map} +0 -0
  539. /package/dist/esm/{chunk-A24PYRVV.js.map → chunk-SO67YEVQ.js.map} +0 -0
  540. /package/dist/esm/{chunk-HACQF6F4.js.map → chunk-TOOSHJOA.js.map} +0 -0
  541. /package/dist/esm/{chunk-QOWA5LK5.js.map → chunk-U2X2CAW4.js.map} +0 -0
  542. /package/dist/esm/{chunk-U7AASKZI.js.map → chunk-UVCH7QKO.js.map} +0 -0
  543. /package/dist/esm/{chunk-GWYFT3EI.js.map → chunk-VLO7NXSP.js.map} +0 -0
  544. /package/dist/esm/{chunk-DXI5P5O4.js.map → chunk-VX6ARMWP.js.map} +0 -0
  545. /package/dist/esm/{chunk-EJWAAFCI.js.map → chunk-WO43WW3A.js.map} +0 -0
  546. /package/dist/esm/{chunk-GLC4QJBF.js.map → chunk-WTYNFBFV.js.map} +0 -0
  547. /package/dist/esm/{chunk-6FAICIYS.js.map → chunk-XMRIRFM7.js.map} +0 -0
  548. /package/dist/esm/{chunk-UIEUZLZZ.js.map → chunk-ZY6SQWHT.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{a as Me}from"./chunk-GLC4QJBF.js";import{a as Ge}from"./chunk-WNSPLWRV.js";import{g as qe,j as Ye}from"./chunk-IX5HIHVI.js";import{a as Re}from"./chunk-4OBMRJHC.js";import{a as ce}from"./chunk-FVCWNSRU.js";import{b as U}from"./chunk-FWB47YCH.js";import{a as dt}from"./chunk-3XT5P2HO.js";var ft={};dt(ft,{AttachTrigger:()=>tt,Attachment:()=>Le,AttachmentsRow:()=>et,InlineEnd:()=>Ze,InlineStart:()=>Xe,Root:()=>Je,Row:()=>at,RowEnd:()=>ot,RowStart:()=>nt,Send:()=>rt,Textarea:()=>Qe});import*as e from"react";import M from"classnames";import{LazyMotion as mt,domAnimation as pt,m as ue}from"motion/react";import{useDropzone as ht}from"react-dropzone";var Oe=typeof window<"u"?e.useLayoutEffect:e.useEffect,_e=e.createContext(null),_=()=>{let l=e.useContext(_e);if(!l)throw new Error("Chatbar context not found. Wrap parts in <Chatbar.Root>.");return l},Je=e.forwardRef((l,i)=>{let{className:r,style:h,children:d,value:g,defaultValue:y="",onValueChange:m,open:s,defaultOpen:v=!1,onOpenChange:f,expandOn:x="both",minLines:P=3,maxLines:n=6,sendMode:C="whenDirty",disabled:S,readOnly:z,onSubmit:w,size:T="2",variant:J,color:k,radius:Q,panelBackground:O,material:K,width:de,maxWidth:ne,asChild:me,attachments:oe,defaultAttachments:ge=[],onAttachmentsChange:I,accept:X,multiple:j=!0,maxAttachments:A,maxFileSize:p,paste:pe=!0,pasteAccept:Z,clearOnSubmit:he=!0,onAttachmentReject:$,dropzone:W=!0,apiRef:a,...c}=l,b=K||O,R=g!=null,[F,Ce]=e.useState(y),ee=R?g:F,L=s!=null,[re,te]=e.useState(v),ae=L?s:re,ye=e.useRef(null),fe=e.useRef(null),ve=e.useRef(!1),q="attachments"in l,[De,Fe]=e.useState(ge),Y=e.useMemo(()=>q?oe??[]:De,[q,oe,De]),be=e.useRef(new Set),xe=t=>Array.isArray(t)?t:typeof t=="string"?t.split(",").map(o=>o.trim()):[],se=xe(X),He=xe(Z).length>0?xe(Z):se,Ne=(t,o)=>{if(o.length===0)return!0;let D=t.type.toLowerCase(),B=t.name.toLowerCase();for(let H of o){let E=H.toLowerCase();if(E.includes("/")){let[N,V]=E.split("/"),[u,le]=D.split("/");if(N==="*"||N===u&&(V==="*"||V===le))return!0}else if(E.startsWith(".")&&B.endsWith(E))return!0}return!1},Ae=e.useRef(Y);Ae.current=Y;let we=e.useRef(se);we.current=se;let ze=e.useRef(He);ze.current=He;let Pe=e.useRef(A);Pe.current=A;let Ee=e.useRef(p);Ee.current=p;let Se=e.useRef($);Se.current=$;let ke=e.useRef(I);ke.current=I;let Ie=e.useRef(f);Ie.current=f;let ie=e.useCallback(t=>{let o=Ae.current,D=we.current,B=Pe.current,H=Ee.current,E=[],N=[],V=typeof B=="number"?Math.max(B-o.length,0):1/0;for(let u of t){if(E.length>=V){N.push({file:u,reason:"count"});continue}if(typeof H=="number"&&u.size>H){N.push({file:u,reason:"size"});continue}if(!Ne(u,D)){N.push({file:u,reason:"type"});continue}let le=`${Date.now()}-${Math.random().toString(36).slice(2,8)}`,G=/\.(png|jpe?g|gif|webp|bmp|svg)$/i.test(u.name),Te=(u.type||"").toLowerCase().startsWith("image/")||G?URL.createObjectURL(u):void 0;Te&&be.current.add(Te),E.push({id:le,name:u.name,size:u.size,type:u.type,file:u,url:Te,status:"idle"})}if(E.length>0){let u=o.concat(E);q||Fe(u),ke.current?.(u),L||te(!0),Ie.current?.(!0)}N.length>0&&Se.current?.(N)},[q,L]),je=e.useCallback(t=>{let o=we.current,D=ze.current,B=Pe.current,H=Ee.current,E=Ae.current,N=D.length>0?D:o,V=[],u=[],le=typeof B=="number"?Math.max(B-E.length,0):1/0;for(let G of t){if(V.length>=le){u.push({file:G,reason:"count"});continue}if(typeof H=="number"&&G.size>H){u.push({file:G,reason:"size"});continue}if(!Ne(G,N)){u.push({file:G,reason:"type"});continue}V.push(G)}V.length>0&&ie(V),u.length>0&&Se.current?.(u)},[ie]);e.useEffect(()=>{let t=new Set(Y.map(o=>o.url).filter(Boolean));for(let o of Array.from(be.current))t.has(o)||(URL.revokeObjectURL(o),be.current.delete(o))},[Y]),e.useEffect(()=>{let t=be.current;return()=>{for(let o of Array.from(t))URL.revokeObjectURL(o);t.clear()}},[]);let st=me?U:"div",We=e.useCallback(t=>{L||te(t),f?.(t)},[L,f]),Be=e.useCallback(t=>{R||Ce(t),m?.(t)},[R,m]),Ve=e.useCallback(t=>{q||Fe(t),I?.(t)},[q,I]),it=e.useCallback(t=>{let o=t.relatedTarget,D=ye.current;D&&(o&&D.contains(o)||ve.current||(ee?.trim?.()??"").length===0&&Y.length===0&&(L||te(!1),f?.(!1)))},[L,f,ee,Y]),{getRootProps:lt,getInputProps:ct,isDragActive:Ue,open:Ke}=ht({onDrop:(t,o)=>{if(t.length>0&&ie(t),o.length>0&&$){let D=o.map(({file:B,errors:H})=>{let E=H[0]?.code==="file-too-large"?"size":H[0]?.code==="file-invalid-type"?"type":"count";return{file:B,reason:E}});$(D)}},accept:se.length>0?se.reduce((t,o)=>(o.includes("/")?t[o]=[]:o.startsWith(".")&&(t[o]=[]),t),{}):void 0,multiple:j,maxSize:p,noClick:!0,noKeyboard:!0,disabled:!W||S});e.useImperativeHandle(a,()=>({focusTextarea:()=>fe.current?.focus({preventScroll:!0}),openFilePicker:()=>{ve.current=!0,Ke()}}),[Ke]);let $e=e.useCallback(t=>{if(!(t instanceof Element))return!1;let o=t;return o.closest(".rt-ChatbarDropOverlay")?!0:!!o.closest('button, [role="button"], a[href], input, textarea, select, [contenteditable], [tabindex]:not([tabindex="-1"])')},[]),ut=e.useCallback(t=>{S||$e(t.target)||t.pointerType==="mouse"&&t.button!==0||(t.preventDefault(),fe.current?.focus({preventScroll:!0}))},[S,$e,fe]);return e.createElement(_e.Provider,{value:e.useMemo(()=>({open:ae,setOpen:We,isOpenControlled:L,value:ee,setValue:Be,isValueControlled:R,size:T,expandOn:x,minLines:P,maxLines:n,sendMode:C,disabled:S,readOnly:z,onSubmit:w,rootRef:ye,textareaRef:fe,attachments:Y,setAttachments:Ve,isAttachmentsControlled:q,accept:X,multiple:j,maxAttachments:A,maxFileSize:p,paste:pe,pasteAccept:Z,clearOnSubmit:he,onAttachmentReject:$,dropzone:W,appendFiles:ie,appendFilesFromPaste:je,fileDialogOpenRef:ve}),[ae,We,L,ee,Be,R,T,x,P,n,C,S,z,w,Y,Ve,q,X,j,A,p,pe,Z,he,$,W,ie,je])},e.createElement(mt,{features:pt},e.createElement(st,{...c,ref:t=>{typeof i=="function"?i(t):i&&(i.current=t),ye.current=t},className:M("rt-ChatbarRoot",`rt-r-size-${T}`,r),style:{position:"relative",width:de,maxWidth:ne,...h},"data-state":ae?"open":"closed","data-disabled":S?"":void 0,"data-readonly":z?"":void 0,"data-drop-active":W&&Ue?"":void 0,"data-accent-color":k,"data-radius":Q,"data-panel-background":b,"data-material":b,"aria-expanded":ae,onBlurCapture:it},W&&e.createElement("input",{...ct()}),e.createElement("div",{...W?lt():{},style:{width:"100%",height:"100%"},onPointerDown:ut},e.createElement(ue.div,{className:M("rt-ChatbarBox",`rt-variant-${J??"surface"}`),style:{position:"relative"},"data-accent-color":k,"data-radius":Q,"data-panel-background":b,"data-material":b,layout:!0,transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(ue.div,{className:"rt-ChatbarGrid",layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},d),W&&Ue&&e.createElement("div",{className:"rt-ChatbarDropOverlay"},e.createElement("div",{className:"rt-ChatbarDropContent"},e.createElement(Re,{color:"gray",size:T,weight:"medium"},"Drop files here to attach"))))))))});Je.displayName="Chatbar.Root";var Qe=e.forwardRef((l,i)=>{let{className:r,style:h,asChild:d,onFocus:g,onInput:y,onChange:m,onPaste:s,onKeyDown:v,submitOnEnter:f=!1,rows:x,...P}=l,n=_(),{open:C,minLines:S,maxLines:z,expandOn:w,disabled:T,readOnly:J,setOpen:k,setValue:Q,textareaRef:O,value:K,isValueControlled:de,sendMode:ne,paste:me,appendFilesFromPaste:oe,size:ge}=n,I=e.useRef(0),X=e.useRef(0),j=e.useRef(0),A=e.useCallback(()=>{let a=O.current;if(!a)return;let c=window.getComputedStyle(a),b=parseFloat(c.lineHeight)||20,R=parseFloat(c.paddingTop)||0,F=parseFloat(c.paddingBottom)||0;I.current=b,X.current=R+F,j.current=Math.ceil(1*b)+R+F},[O]),p=e.useCallback(a=>{let c=O.current;if(!c)return;c.style.height="auto",I.current===0&&A();let b=I.current,R=X.current,F=a??C,Ce=F?S:1,ee=F?z:1,L=Math.ceil(Ce*b)+R,re=Math.ceil(ee*b)+R,te=Math.max(c.scrollHeight,L),ae=Math.min(te,re);c.style.height=`${ae}px`,te>re?(c.style.overflowY="auto",c.style.maxHeight=`${re}px`):(c.style.overflowY="hidden",c.style.maxHeight="none")},[C,S,z,O,A]);Oe(()=>{p()},[p,K,C]),Oe(()=>{if(!(w==="overflow"||w==="both")||C)return;let a=O.current;if(!a)return;a.style.height="auto",j.current===0&&A(),a.scrollHeight>j.current+1&&(k(!0),p(!0),requestAnimationFrame(()=>p(!0)))},[K,w,C,k,O,A,p]),Oe(()=>{A(),p()},[A,p,ge]),e.useEffect(()=>{let a=O.current;if(!a||typeof ResizeObserver>"u")return;let c=I.current,b=new ResizeObserver(()=>{let R=window.getComputedStyle(a),F=parseFloat(R.lineHeight)||20;F!==c&&(c=F,A(),requestAnimationFrame(()=>p()))});return b.observe(a),()=>b.disconnect()},[O,A,p]),e.useEffect(()=>{},[]);let pe=e.useCallback(a=>{T||J||((w==="focus"||w==="both")&&!C&&k(!0),g?.(a))},[T,J,w,C,k,g]),Z=e.useCallback(a=>{let c=a.currentTarget,b=c.value;Q(b),(w==="overflow"||w==="both")&&!C&&(c.style.height="auto",j.current===0&&A(),c.scrollHeight>j.current+1&&(k(!0),p(!0),requestAnimationFrame(()=>p(!0)))),requestAnimationFrame(()=>p()),m?.(a)},[w,C,k,Q,m,p,A]),he=e.useCallback(a=>{if(me){let b=Array.from(a.clipboardData?.items??[]).filter(R=>R.kind==="file").map(R=>R.getAsFile()).filter(R=>!!R);b.length>0&&(a.preventDefault(),oe(b))}setTimeout(()=>{C?p():p(!0)},0),s?.(a)},[me,C,p,s,oe]),$=e.useCallback(a=>{if(!f){v?.(a);return}if(a.key==="Enter"&&!a.shiftKey&&!a.altKey&&!a.ctrlKey&&!a.metaKey&&!a.nativeEvent.isComposing){if(T||J){v?.(a);return}if(ne==="never"){v?.(a);return}let b=K.trim().length>0||n.attachments.length>0;if(ne==="whenDirty"&&!b){v?.(a);return}a.preventDefault(),n.onSubmit?.({value:K,attachments:n.attachments}),n.clearOnSubmit&&(de||Q(""),n.setAttachments([]))}v?.(a)},[f,T,J,ne,K,de,Q,n,v]),W=d?U:"textarea";return e.createElement(ue.div,{className:M("rt-ChatbarField","rt-ChatbarTextarea",r),layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(W,{...P,ref:a=>{typeof i=="function"?i(a):i&&(i.current=a),O.current=a},className:"rt-ChatbarInput",value:K,onInput:y,onChange:Z,onFocus:pe,onPaste:he,onKeyDown:$,disabled:T,readOnly:J,rows:C?S:1,spellCheck:P.spellCheck??!0,autoCorrect:P.autoCorrect??"on",style:h}))});Qe.displayName="Chatbar.Textarea";var Xe=e.forwardRef((l,i)=>{let{children:r,asChild:h,style:d,className:g,...y}=l;return _().open?null:e.createElement(h?U:"div",{...y,ref:i,className:M("rt-ChatbarInlineStart",g),style:d},r)});Xe.displayName="Chatbar.InlineStart";var Ze=e.forwardRef((l,i)=>{let{children:r,asChild:h,style:d,className:g,...y}=l;return _().open?null:e.createElement(h?U:"div",{...y,ref:i,className:M("rt-ChatbarInlineEnd",g),style:d},r)});Ze.displayName="Chatbar.InlineEnd";var et=e.forwardRef((l,i)=>{let{asChild:r,forceMount:h,renderAttachment:d,className:g,style:y,...m}=l,s=_();if(!(s.attachments.length>0)&&!h)return null;let f=r?U:"div";return e.createElement(ue.div,{layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(f,{...m,ref:i,className:M("rt-ChatbarAttachmentsRow",g),style:y,role:"list","aria-label":m["aria-label"]??"Attachments"},e.createElement(Ge,{className:"rt-ChatbarScrollArea",scrollbars:"horizontal",size:"1"},e.createElement(ce,{align:"center",gap:"2",style:{minWidth:"fit-content"}},s.attachments.map(x=>e.createElement(Le,{key:x.id,attachment:x,asChild:!!d},d?.(x)))))))});et.displayName="Chatbar.AttachmentsRow";var Le=e.forwardRef((l,i)=>{let{attachment:r,asChild:h,className:d,style:g,children:y,...m}=l,s=_(),v=h?U:"div",f=!!r.url&&r.type.startsWith("image/");return e.createElement(v,{...m,ref:i,className:M("rt-ChatbarAttachment",d),style:g,role:"listitem","data-kind":f?"image":"file",title:r.name},y??e.createElement(ce,{align:"center",gap:"2",pr:f?void 0:"6"},e.createElement("div",{className:"rt-ChatbarAttachmentPreview","aria-hidden":!0},f?e.createElement("img",{className:"rt-ChatbarAttachmentImage",src:r.url,alt:""}):e.createElement(Ye,null)),!f&&e.createElement(ce,{direction:"column",gap:"0",style:{minWidth:0}},e.createElement(Re,{size:s.size,weight:"medium",style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},r.name),e.createElement(Re,{size:"1",color:"gray"},Math.ceil(r.size/1024)," KB")),e.createElement(Me,{className:"rt-ChatbarAttachmentRemove","aria-label":`Remove ${r.name}`,size:"1",variant:"classic",highContrast:!0,color:"gray",onClick:()=>s.setAttachments(s.attachments.filter(x=>x.id!==r.id))},e.createElement(qe,null))))});Le.displayName="Chatbar.Attachment";var tt=e.forwardRef((l,i)=>{let{asChild:r,accept:h,multiple:d,className:g,style:y,...m}=l,s=_(),v=e.useRef(null),f=r?U:"button",x=h??s.accept,P=(Array.isArray(x)?x:x?.split(",")??[]).join(",");return e.useEffect(()=>{let n=()=>{s.fileDialogOpenRef.current=!1};return window.addEventListener("focus",n),()=>window.removeEventListener("focus",n)},[s.fileDialogOpenRef]),e.createElement(e.Fragment,null,e.createElement(f,{...m,ref:i,className:M("rt-ChatbarAttachTrigger",g),style:y,type:m.type??"button","aria-label":m["aria-label"]??"Add attachments",onPointerDown:n=>{s.fileDialogOpenRef.current=!0,m.onPointerDown?.(n)},onMouseDown:n=>{s.fileDialogOpenRef.current=!0,m.onMouseDown?.(n)},onClick:n=>{s.fileDialogOpenRef.current=!0,v.current&&v.current.click(),m.onClick?.(n)}}),e.createElement("input",{ref:v,type:"file",accept:P,multiple:d??s.multiple,tabIndex:-1,style:{display:"none"},onChange:n=>{let C=Array.from(n.currentTarget.files??[]);C.length>0&&s.appendFiles(C),s.fileDialogOpenRef.current=!1,n.currentTarget.value=""}}))});tt.displayName="Chatbar.AttachTrigger";var at=e.forwardRef((l,i)=>{let{asChild:r,children:h,className:d,style:g,...y}=l;if(!_().open)return null;let s=r?U:"div";return e.createElement(ue.div,{layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(s,{...y,ref:i,className:M("rt-ChatbarRow",d),style:g},e.createElement(ce,{align:"center",justify:"between",width:"100%"},h)))});at.displayName="Chatbar.Row";var nt=e.forwardRef((l,i)=>{let{className:r,style:h,...d}=l;return e.createElement("div",{...d,ref:i,className:M("rt-ChatbarRowStart",r),style:h})});nt.displayName="Chatbar.RowStart";var ot=e.forwardRef((l,i)=>{let{className:r,style:h,...d}=l;return e.createElement("div",{...d,ref:i,className:M("rt-ChatbarRowEnd",r),style:h})});ot.displayName="Chatbar.RowEnd";var rt=e.forwardRef((l,i)=>{let{asChild:r,clearOnSend:h=!0,disabled:d,children:g,className:y,style:m,size:s,variant:v,"aria-label":f,"aria-labelledby":x,...P}=l,n=_(),S=n.value.trim().length>0||n.attachments.length>0,z=n.sendMode==="always"||n.sendMode==="whenDirty"&&S;if(n.sendMode==="never")return null;let w=T=>{n.disabled||n.readOnly||(n.onSubmit?.({value:n.value,attachments:n.attachments}),h&&(n.isValueControlled||n.setValue(""),n.clearOnSubmit&&n.setAttachments([])),P.onClick?.(T))};return e.createElement(Me,{...P,ref:i,size:s??n.size,variant:v??(n.open?"solid":"ghost"),disabled:d||n.disabled||n.readOnly,className:M("rt-ChatbarSend",y),style:{opacity:z?1:0,pointerEvents:z?"auto":"none",...m},asChild:r,onClick:w,"aria-label":f??(x?void 0:"Send"),"aria-labelledby":x},g??e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-arrow-right-icon lucide-arrow-right"},e.createElement("path",{d:"M5 12h14"}),e.createElement("path",{d:"m12 5 7 7-7 7"})))});rt.displayName="Chatbar.Send";export{Je as a,Qe as b,Xe as c,Ze as d,et as e,Le as f,tt as g,at as h,nt as i,ot as j,rt as k,ft as l};
2
- //# sourceMappingURL=chunk-DNI4QRXQ.js.map
1
+ import{a as Me}from"./chunk-WTYNFBFV.js";import{a as Ge}from"./chunk-GJSGKE7B.js";import{g as qe,j as Ye}from"./chunk-IX5HIHVI.js";import{a as Re}from"./chunk-H7ST535H.js";import{a as ce}from"./chunk-FHOCUZDR.js";import{b as U}from"./chunk-FWB47YCH.js";import{a as dt}from"./chunk-3XT5P2HO.js";var ft={};dt(ft,{AttachTrigger:()=>tt,Attachment:()=>Le,AttachmentsRow:()=>et,InlineEnd:()=>Ze,InlineStart:()=>Xe,Root:()=>Je,Row:()=>at,RowEnd:()=>ot,RowStart:()=>nt,Send:()=>rt,Textarea:()=>Qe});import*as e from"react";import M from"classnames";import{LazyMotion as mt,domAnimation as pt,m as ue}from"motion/react";import{useDropzone as ht}from"react-dropzone";var Oe=typeof window<"u"?e.useLayoutEffect:e.useEffect,_e=e.createContext(null),_=()=>{let l=e.useContext(_e);if(!l)throw new Error("Chatbar context not found. Wrap parts in <Chatbar.Root>.");return l},Je=e.forwardRef((l,i)=>{let{className:r,style:h,children:d,value:g,defaultValue:y="",onValueChange:m,open:s,defaultOpen:v=!1,onOpenChange:f,expandOn:x="both",minLines:P=3,maxLines:n=6,sendMode:C="whenDirty",disabled:S,readOnly:z,onSubmit:w,size:T="2",variant:J,color:k,radius:Q,panelBackground:O,material:K,width:de,maxWidth:ne,asChild:me,attachments:oe,defaultAttachments:ge=[],onAttachmentsChange:I,accept:X,multiple:j=!0,maxAttachments:A,maxFileSize:p,paste:pe=!0,pasteAccept:Z,clearOnSubmit:he=!0,onAttachmentReject:$,dropzone:W=!0,apiRef:a,...c}=l,b=K||O,R=g!=null,[F,Ce]=e.useState(y),ee=R?g:F,L=s!=null,[re,te]=e.useState(v),ae=L?s:re,ye=e.useRef(null),fe=e.useRef(null),ve=e.useRef(!1),q="attachments"in l,[De,Fe]=e.useState(ge),Y=e.useMemo(()=>q?oe??[]:De,[q,oe,De]),be=e.useRef(new Set),xe=t=>Array.isArray(t)?t:typeof t=="string"?t.split(",").map(o=>o.trim()):[],se=xe(X),He=xe(Z).length>0?xe(Z):se,Ne=(t,o)=>{if(o.length===0)return!0;let D=t.type.toLowerCase(),B=t.name.toLowerCase();for(let H of o){let E=H.toLowerCase();if(E.includes("/")){let[N,V]=E.split("/"),[u,le]=D.split("/");if(N==="*"||N===u&&(V==="*"||V===le))return!0}else if(E.startsWith(".")&&B.endsWith(E))return!0}return!1},Ae=e.useRef(Y);Ae.current=Y;let we=e.useRef(se);we.current=se;let ze=e.useRef(He);ze.current=He;let Pe=e.useRef(A);Pe.current=A;let Ee=e.useRef(p);Ee.current=p;let Se=e.useRef($);Se.current=$;let ke=e.useRef(I);ke.current=I;let Ie=e.useRef(f);Ie.current=f;let ie=e.useCallback(t=>{let o=Ae.current,D=we.current,B=Pe.current,H=Ee.current,E=[],N=[],V=typeof B=="number"?Math.max(B-o.length,0):1/0;for(let u of t){if(E.length>=V){N.push({file:u,reason:"count"});continue}if(typeof H=="number"&&u.size>H){N.push({file:u,reason:"size"});continue}if(!Ne(u,D)){N.push({file:u,reason:"type"});continue}let le=`${Date.now()}-${Math.random().toString(36).slice(2,8)}`,G=/\.(png|jpe?g|gif|webp|bmp|svg)$/i.test(u.name),Te=(u.type||"").toLowerCase().startsWith("image/")||G?URL.createObjectURL(u):void 0;Te&&be.current.add(Te),E.push({id:le,name:u.name,size:u.size,type:u.type,file:u,url:Te,status:"idle"})}if(E.length>0){let u=o.concat(E);q||Fe(u),ke.current?.(u),L||te(!0),Ie.current?.(!0)}N.length>0&&Se.current?.(N)},[q,L]),je=e.useCallback(t=>{let o=we.current,D=ze.current,B=Pe.current,H=Ee.current,E=Ae.current,N=D.length>0?D:o,V=[],u=[],le=typeof B=="number"?Math.max(B-E.length,0):1/0;for(let G of t){if(V.length>=le){u.push({file:G,reason:"count"});continue}if(typeof H=="number"&&G.size>H){u.push({file:G,reason:"size"});continue}if(!Ne(G,N)){u.push({file:G,reason:"type"});continue}V.push(G)}V.length>0&&ie(V),u.length>0&&Se.current?.(u)},[ie]);e.useEffect(()=>{let t=new Set(Y.map(o=>o.url).filter(Boolean));for(let o of Array.from(be.current))t.has(o)||(URL.revokeObjectURL(o),be.current.delete(o))},[Y]),e.useEffect(()=>{let t=be.current;return()=>{for(let o of Array.from(t))URL.revokeObjectURL(o);t.clear()}},[]);let st=me?U:"div",We=e.useCallback(t=>{L||te(t),f?.(t)},[L,f]),Be=e.useCallback(t=>{R||Ce(t),m?.(t)},[R,m]),Ve=e.useCallback(t=>{q||Fe(t),I?.(t)},[q,I]),it=e.useCallback(t=>{let o=t.relatedTarget,D=ye.current;D&&(o&&D.contains(o)||ve.current||(ee?.trim?.()??"").length===0&&Y.length===0&&(L||te(!1),f?.(!1)))},[L,f,ee,Y]),{getRootProps:lt,getInputProps:ct,isDragActive:Ue,open:Ke}=ht({onDrop:(t,o)=>{if(t.length>0&&ie(t),o.length>0&&$){let D=o.map(({file:B,errors:H})=>{let E=H[0]?.code==="file-too-large"?"size":H[0]?.code==="file-invalid-type"?"type":"count";return{file:B,reason:E}});$(D)}},accept:se.length>0?se.reduce((t,o)=>(o.includes("/")?t[o]=[]:o.startsWith(".")&&(t[o]=[]),t),{}):void 0,multiple:j,maxSize:p,noClick:!0,noKeyboard:!0,disabled:!W||S});e.useImperativeHandle(a,()=>({focusTextarea:()=>fe.current?.focus({preventScroll:!0}),openFilePicker:()=>{ve.current=!0,Ke()}}),[Ke]);let $e=e.useCallback(t=>{if(!(t instanceof Element))return!1;let o=t;return o.closest(".rt-ChatbarDropOverlay")?!0:!!o.closest('button, [role="button"], a[href], input, textarea, select, [contenteditable], [tabindex]:not([tabindex="-1"])')},[]),ut=e.useCallback(t=>{S||$e(t.target)||t.pointerType==="mouse"&&t.button!==0||(t.preventDefault(),fe.current?.focus({preventScroll:!0}))},[S,$e,fe]);return e.createElement(_e.Provider,{value:e.useMemo(()=>({open:ae,setOpen:We,isOpenControlled:L,value:ee,setValue:Be,isValueControlled:R,size:T,expandOn:x,minLines:P,maxLines:n,sendMode:C,disabled:S,readOnly:z,onSubmit:w,rootRef:ye,textareaRef:fe,attachments:Y,setAttachments:Ve,isAttachmentsControlled:q,accept:X,multiple:j,maxAttachments:A,maxFileSize:p,paste:pe,pasteAccept:Z,clearOnSubmit:he,onAttachmentReject:$,dropzone:W,appendFiles:ie,appendFilesFromPaste:je,fileDialogOpenRef:ve}),[ae,We,L,ee,Be,R,T,x,P,n,C,S,z,w,Y,Ve,q,X,j,A,p,pe,Z,he,$,W,ie,je])},e.createElement(mt,{features:pt},e.createElement(st,{...c,ref:t=>{typeof i=="function"?i(t):i&&(i.current=t),ye.current=t},className:M("rt-ChatbarRoot",`rt-r-size-${T}`,r),style:{position:"relative",width:de,maxWidth:ne,...h},"data-state":ae?"open":"closed","data-disabled":S?"":void 0,"data-readonly":z?"":void 0,"data-drop-active":W&&Ue?"":void 0,"data-accent-color":k,"data-radius":Q,"data-panel-background":b,"data-material":b,"aria-expanded":ae,onBlurCapture:it},W&&e.createElement("input",{...ct()}),e.createElement("div",{...W?lt():{},style:{width:"100%",height:"100%"},onPointerDown:ut},e.createElement(ue.div,{className:M("rt-ChatbarBox",`rt-variant-${J??"surface"}`),style:{position:"relative"},"data-accent-color":k,"data-radius":Q,"data-panel-background":b,"data-material":b,layout:!0,transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(ue.div,{className:"rt-ChatbarGrid",layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},d),W&&Ue&&e.createElement("div",{className:"rt-ChatbarDropOverlay"},e.createElement("div",{className:"rt-ChatbarDropContent"},e.createElement(Re,{color:"gray",size:T,weight:"medium"},"Drop files here to attach"))))))))});Je.displayName="Chatbar.Root";var Qe=e.forwardRef((l,i)=>{let{className:r,style:h,asChild:d,onFocus:g,onInput:y,onChange:m,onPaste:s,onKeyDown:v,submitOnEnter:f=!1,rows:x,...P}=l,n=_(),{open:C,minLines:S,maxLines:z,expandOn:w,disabled:T,readOnly:J,setOpen:k,setValue:Q,textareaRef:O,value:K,isValueControlled:de,sendMode:ne,paste:me,appendFilesFromPaste:oe,size:ge}=n,I=e.useRef(0),X=e.useRef(0),j=e.useRef(0),A=e.useCallback(()=>{let a=O.current;if(!a)return;let c=window.getComputedStyle(a),b=parseFloat(c.lineHeight)||20,R=parseFloat(c.paddingTop)||0,F=parseFloat(c.paddingBottom)||0;I.current=b,X.current=R+F,j.current=Math.ceil(1*b)+R+F},[O]),p=e.useCallback(a=>{let c=O.current;if(!c)return;c.style.height="auto",I.current===0&&A();let b=I.current,R=X.current,F=a??C,Ce=F?S:1,ee=F?z:1,L=Math.ceil(Ce*b)+R,re=Math.ceil(ee*b)+R,te=Math.max(c.scrollHeight,L),ae=Math.min(te,re);c.style.height=`${ae}px`,te>re?(c.style.overflowY="auto",c.style.maxHeight=`${re}px`):(c.style.overflowY="hidden",c.style.maxHeight="none")},[C,S,z,O,A]);Oe(()=>{p()},[p,K,C]),Oe(()=>{if(!(w==="overflow"||w==="both")||C)return;let a=O.current;if(!a)return;a.style.height="auto",j.current===0&&A(),a.scrollHeight>j.current+1&&(k(!0),p(!0),requestAnimationFrame(()=>p(!0)))},[K,w,C,k,O,A,p]),Oe(()=>{A(),p()},[A,p,ge]),e.useEffect(()=>{let a=O.current;if(!a||typeof ResizeObserver>"u")return;let c=I.current,b=new ResizeObserver(()=>{let R=window.getComputedStyle(a),F=parseFloat(R.lineHeight)||20;F!==c&&(c=F,A(),requestAnimationFrame(()=>p()))});return b.observe(a),()=>b.disconnect()},[O,A,p]),e.useEffect(()=>{},[]);let pe=e.useCallback(a=>{T||J||((w==="focus"||w==="both")&&!C&&k(!0),g?.(a))},[T,J,w,C,k,g]),Z=e.useCallback(a=>{let c=a.currentTarget,b=c.value;Q(b),(w==="overflow"||w==="both")&&!C&&(c.style.height="auto",j.current===0&&A(),c.scrollHeight>j.current+1&&(k(!0),p(!0),requestAnimationFrame(()=>p(!0)))),requestAnimationFrame(()=>p()),m?.(a)},[w,C,k,Q,m,p,A]),he=e.useCallback(a=>{if(me){let b=Array.from(a.clipboardData?.items??[]).filter(R=>R.kind==="file").map(R=>R.getAsFile()).filter(R=>!!R);b.length>0&&(a.preventDefault(),oe(b))}setTimeout(()=>{C?p():p(!0)},0),s?.(a)},[me,C,p,s,oe]),$=e.useCallback(a=>{if(!f){v?.(a);return}if(a.key==="Enter"&&!a.shiftKey&&!a.altKey&&!a.ctrlKey&&!a.metaKey&&!a.nativeEvent.isComposing){if(T||J){v?.(a);return}if(ne==="never"){v?.(a);return}let b=K.trim().length>0||n.attachments.length>0;if(ne==="whenDirty"&&!b){v?.(a);return}a.preventDefault(),n.onSubmit?.({value:K,attachments:n.attachments}),n.clearOnSubmit&&(de||Q(""),n.setAttachments([]))}v?.(a)},[f,T,J,ne,K,de,Q,n,v]),W=d?U:"textarea";return e.createElement(ue.div,{className:M("rt-ChatbarField","rt-ChatbarTextarea",r),layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(W,{...P,ref:a=>{typeof i=="function"?i(a):i&&(i.current=a),O.current=a},className:"rt-ChatbarInput",value:K,onInput:y,onChange:Z,onFocus:pe,onPaste:he,onKeyDown:$,disabled:T,readOnly:J,rows:C?S:1,spellCheck:P.spellCheck??!0,autoCorrect:P.autoCorrect??"on",style:h}))});Qe.displayName="Chatbar.Textarea";var Xe=e.forwardRef((l,i)=>{let{children:r,asChild:h,style:d,className:g,...y}=l;return _().open?null:e.createElement(h?U:"div",{...y,ref:i,className:M("rt-ChatbarInlineStart",g),style:d},r)});Xe.displayName="Chatbar.InlineStart";var Ze=e.forwardRef((l,i)=>{let{children:r,asChild:h,style:d,className:g,...y}=l;return _().open?null:e.createElement(h?U:"div",{...y,ref:i,className:M("rt-ChatbarInlineEnd",g),style:d},r)});Ze.displayName="Chatbar.InlineEnd";var et=e.forwardRef((l,i)=>{let{asChild:r,forceMount:h,renderAttachment:d,className:g,style:y,...m}=l,s=_();if(!(s.attachments.length>0)&&!h)return null;let f=r?U:"div";return e.createElement(ue.div,{layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(f,{...m,ref:i,className:M("rt-ChatbarAttachmentsRow",g),style:y,role:"list","aria-label":m["aria-label"]??"Attachments"},e.createElement(Ge,{className:"rt-ChatbarScrollArea",scrollbars:"horizontal",size:"1"},e.createElement(ce,{align:"center",gap:"2",style:{minWidth:"fit-content"}},s.attachments.map(x=>e.createElement(Le,{key:x.id,attachment:x,asChild:!!d},d?.(x)))))))});et.displayName="Chatbar.AttachmentsRow";var Le=e.forwardRef((l,i)=>{let{attachment:r,asChild:h,className:d,style:g,children:y,...m}=l,s=_(),v=h?U:"div",f=!!r.url&&r.type.startsWith("image/");return e.createElement(v,{...m,ref:i,className:M("rt-ChatbarAttachment",d),style:g,role:"listitem","data-kind":f?"image":"file",title:r.name},y??e.createElement(ce,{align:"center",gap:"2",pr:f?void 0:"6"},e.createElement("div",{className:"rt-ChatbarAttachmentPreview","aria-hidden":!0},f?e.createElement("img",{className:"rt-ChatbarAttachmentImage",src:r.url,alt:""}):e.createElement(Ye,null)),!f&&e.createElement(ce,{direction:"column",gap:"0",style:{minWidth:0}},e.createElement(Re,{size:s.size,weight:"medium",style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},r.name),e.createElement(Re,{size:"1",color:"gray"},Math.ceil(r.size/1024)," KB")),e.createElement(Me,{className:"rt-ChatbarAttachmentRemove","aria-label":`Remove ${r.name}`,size:"1",variant:"classic",highContrast:!0,color:"gray",onClick:()=>s.setAttachments(s.attachments.filter(x=>x.id!==r.id))},e.createElement(qe,null))))});Le.displayName="Chatbar.Attachment";var tt=e.forwardRef((l,i)=>{let{asChild:r,accept:h,multiple:d,className:g,style:y,...m}=l,s=_(),v=e.useRef(null),f=r?U:"button",x=h??s.accept,P=(Array.isArray(x)?x:x?.split(",")??[]).join(",");return e.useEffect(()=>{let n=()=>{s.fileDialogOpenRef.current=!1};return window.addEventListener("focus",n),()=>window.removeEventListener("focus",n)},[s.fileDialogOpenRef]),e.createElement(e.Fragment,null,e.createElement(f,{...m,ref:i,className:M("rt-ChatbarAttachTrigger",g),style:y,type:m.type??"button","aria-label":m["aria-label"]??"Add attachments",onPointerDown:n=>{s.fileDialogOpenRef.current=!0,m.onPointerDown?.(n)},onMouseDown:n=>{s.fileDialogOpenRef.current=!0,m.onMouseDown?.(n)},onClick:n=>{s.fileDialogOpenRef.current=!0,v.current&&v.current.click(),m.onClick?.(n)}}),e.createElement("input",{ref:v,type:"file",accept:P,multiple:d??s.multiple,tabIndex:-1,style:{display:"none"},onChange:n=>{let C=Array.from(n.currentTarget.files??[]);C.length>0&&s.appendFiles(C),s.fileDialogOpenRef.current=!1,n.currentTarget.value=""}}))});tt.displayName="Chatbar.AttachTrigger";var at=e.forwardRef((l,i)=>{let{asChild:r,children:h,className:d,style:g,...y}=l;if(!_().open)return null;let s=r?U:"div";return e.createElement(ue.div,{layout:"position",transition:{layout:{type:"spring",visualDuration:.15,bounce:.1}}},e.createElement(s,{...y,ref:i,className:M("rt-ChatbarRow",d),style:g},e.createElement(ce,{align:"center",justify:"between",width:"100%"},h)))});at.displayName="Chatbar.Row";var nt=e.forwardRef((l,i)=>{let{className:r,style:h,...d}=l;return e.createElement("div",{...d,ref:i,className:M("rt-ChatbarRowStart",r),style:h})});nt.displayName="Chatbar.RowStart";var ot=e.forwardRef((l,i)=>{let{className:r,style:h,...d}=l;return e.createElement("div",{...d,ref:i,className:M("rt-ChatbarRowEnd",r),style:h})});ot.displayName="Chatbar.RowEnd";var rt=e.forwardRef((l,i)=>{let{asChild:r,clearOnSend:h=!0,disabled:d,children:g,className:y,style:m,size:s,variant:v,"aria-label":f,"aria-labelledby":x,...P}=l,n=_(),S=n.value.trim().length>0||n.attachments.length>0,z=n.sendMode==="always"||n.sendMode==="whenDirty"&&S;if(n.sendMode==="never")return null;let w=T=>{n.disabled||n.readOnly||(n.onSubmit?.({value:n.value,attachments:n.attachments}),h&&(n.isValueControlled||n.setValue(""),n.clearOnSubmit&&n.setAttachments([])),P.onClick?.(T))};return e.createElement(Me,{...P,ref:i,size:s??n.size,variant:v??(n.open?"solid":"ghost"),disabled:d||n.disabled||n.readOnly,className:M("rt-ChatbarSend",y),style:{opacity:z?1:0,pointerEvents:z?"auto":"none",...m},asChild:r,onClick:w,"aria-label":f??(x?void 0:"Send"),"aria-labelledby":x},g??e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"lucide lucide-arrow-right-icon lucide-arrow-right"},e.createElement("path",{d:"M5 12h14"}),e.createElement("path",{d:"m12 5 7 7-7 7"})))});rt.displayName="Chatbar.Send";export{Je as a,Qe as b,Xe as c,Ze as d,et as e,Le as f,tt as g,at as h,nt as i,ot as j,rt as k,ft as l};
2
+ //# sourceMappingURL=chunk-5IBGFL6O.js.map
@@ -0,0 +1,2 @@
1
+ import*as r from"react";var t="Warning: The `panelBackground` prop is deprecated and will be removed in a future version. Use `material` prop instead.",e=new Set;function i(n){e.has(n)||(e.add(n),console.warn(n))}function o(n){r.useEffect(()=>{},[n])}export{o as a};
2
+ //# sourceMappingURL=chunk-5TXQLK4G.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/helpers/use-deprecation-warning.ts"],
4
+ "sourcesContent": ["import * as React from 'react';\n\nconst PANEL_BACKGROUND_MESSAGE = 'Warning: The `panelBackground` prop is deprecated and will be removed in a future version. Use `material` prop instead.';\n\nconst warned = new Set<string>();\n\nfunction warnOnce(message: string) {\n if (warned.has(message)) return;\n warned.add(message);\n console.warn(message);\n}\n\n/**\n * Warns, in development only, that `panelBackground` is deprecated.\n *\n * The `process.env.NODE_ENV` check is a compile-time constant, so a production\n * bundle minifies the effect body away to an empty function instead of reading\n * props and formatting a message per mounted component. The message is also\n * logged once per session rather than once per component instance.\n */\nexport function useDeprecatedPanelBackgroundWarning(panelBackground: unknown) {\n React.useEffect(() => {\n if (process.env.NODE_ENV === 'production') return;\n if (panelBackground !== undefined) warnOnce(PANEL_BACKGROUND_MESSAGE);\n }, [panelBackground]);\n}\n"],
5
+ "mappings": "AAAA,UAAYA,MAAW,QAEvB,IAAMC,EAA2B,0HAE3BC,EAAS,IAAI,IAEnB,SAASC,EAASC,EAAiB,CAC7BF,EAAO,IAAIE,CAAO,IACtBF,EAAO,IAAIE,CAAO,EAClB,QAAQ,KAAKA,CAAO,EACtB,CAUO,SAASC,EAAoCC,EAA0B,CACtE,YAAU,IAAM,CAGtB,EAAG,CAACA,CAAe,CAAC,CACtB",
6
+ "names": ["React", "PANEL_BACKGROUND_MESSAGE", "warned", "warnOnce", "message", "useDeprecatedPanelBackgroundWarning", "panelBackground"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as C}from"./chunk-MCQAJV4K.js";import{a as x}from"./chunk-GSTOGDAJ.js";import{a as P}from"./chunk-KMPBTEZH.js";import*as t from"react";import N from"classnames";import{Slider as h}from"radix-ui";var G=t.forwardRef((p,A)=>{let{className:V,color:k,radius:M,tabIndex:g,...i}=P(p,C,x),{ticks:o,showTickLabels:w,snapToTicks:f,unit:l}=p,u=i.min??0,s=i.max??100,c=i.value??i.defaultValue??[u],y=Array.isArray(c)&&c.length>1,D=i.step,n=t.useMemo(()=>o?[...o].sort((e,r)=>e.value-r.value):[],[o]),S=t.useCallback(e=>{if(!f||!n.length)return e;let r=0,a=n.length-1;if(e<=n[r].value)return n[r].value;if(e>=n[a].value)return n[a].value;for(;r<=a;){let b=Math.floor((r+a)/2);if(n[b].value===e)return e;n[b].value<e?r=b+1:a=b-1}let E=Math.abs(e-n[a].value),j=Math.abs(e-n[r].value);return E<=j?n[a].value:n[r].value},[f,n]),v=t.useCallback(e=>{let r=a=>l?`${a} ${l}`:a.toString();return e.length===1?`${r(e[0])} out of ${r(s)}`:e.length===2?`${r(e[0])} to ${r(e[1])} out of ${r(s)}`:`${e.map(r).join(", ")} out of ${r(s)}`},[l,s]),R=t.useMemo(()=>o?o.map((e,r)=>({...e,percentage:(e.value-u)/(s-u)*100,index:r})):null,[o,u,s]),m=t.useRef(null),d=t.useRef(null),{onValueChange:$}=i,T=t.useCallback(e=>{let r=f&&o?e.map(a=>S(a)):e;if(m.current){let a=v(r);m.current.textContent=a,d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{m.current&&(m.current.textContent="")},1e3)}$?.(r)},[f,o,S,v,$]);return t.useEffect(()=>()=>{d.current&&clearTimeout(d.current)},[]),t.createElement("div",{className:"rt-SliderContainer"},t.createElement("div",{ref:m,"aria-live":"polite","aria-atomic":"true",className:"sr-only",style:{position:"absolute",left:"-10000px",width:"1px",height:"1px",overflow:"hidden"}}),t.createElement(h.Root,{"data-accent-color":k,"data-radius":M,ref:A,...i,step:D,onValueChange:T,asChild:!1,className:N("rt-SliderRoot",V),"aria-valuemin":u,"aria-valuemax":s,"aria-valuenow":Array.isArray(c)?c[0]:c,"aria-valuetext":v(c),"aria-label":p["aria-label"]||`${y?"Range":"Value"} slider`},t.createElement(h.Track,{className:"rt-SliderTrack"},t.createElement(h.Range,{className:N("rt-SliderRange",{"rt-high-contrast":p.highContrast}),"data-inverted":i.inverted?"":void 0})),(i.value??i.defaultValue??[]).map((e,r)=>t.createElement(h.Thumb,{key:r,className:"rt-SliderThumb",...g!==void 0?{tabIndex:g}:void 0,"aria-label":y?`${r===0?"Minimum":r===1?"Maximum":`Thumb ${r+1}`} value: ${l?`${e} ${l}`:e}`:`Slider value: ${l?`${e} ${l}`:e}`,"aria-valuetext":l?`${e} ${l}`:e.toString()}))),R&&t.createElement("div",{className:"rt-SliderTicks",role:"group","aria-label":"Slider tick marks"},R.map(e=>t.createElement("button",{key:e.index,className:"rt-SliderTick",style:{left:`${e.percentage}%`,transform:"translateX(-50%)"},onClick:()=>{let r=i.value??i.defaultValue??[u],a=Array.isArray(r)?r.map(()=>e.value):[e.value];T(a)},"aria-label":`Set to ${e.label||(l?`${e.value} ${l}`:e.value)}`,"aria-describedby":e.label?void 0:`tick-${e.index}-value`,type:"button"},t.createElement("div",{className:"rt-SliderTickMark"}),e.label&&w!==!1&&t.createElement("div",{className:"rt-SliderTickLabel"},e.label),!e.label&&t.createElement("span",{id:`tick-${e.index}-value`,className:"sr-only"},l?`${e.value} ${l}`:e.value)))))});G.displayName="Slider";export{G as a};
2
- //# sourceMappingURL=chunk-IPJUHVM6.js.map
1
+ import{a as C}from"./chunk-MCQAJV4K.js";import{a as x}from"./chunk-GSTOGDAJ.js";import{a as P}from"./chunk-6FLLFCBU.js";import*as t from"react";import N from"classnames";import{Slider as h}from"radix-ui";var G=t.forwardRef((p,A)=>{let{className:V,color:k,radius:M,tabIndex:g,...i}=P(p,C,x),{ticks:o,showTickLabels:w,snapToTicks:f,unit:l}=p,u=i.min??0,s=i.max??100,c=i.value??i.defaultValue??[u],y=Array.isArray(c)&&c.length>1,D=i.step,n=t.useMemo(()=>o?[...o].sort((e,r)=>e.value-r.value):[],[o]),S=t.useCallback(e=>{if(!f||!n.length)return e;let r=0,a=n.length-1;if(e<=n[r].value)return n[r].value;if(e>=n[a].value)return n[a].value;for(;r<=a;){let b=Math.floor((r+a)/2);if(n[b].value===e)return e;n[b].value<e?r=b+1:a=b-1}let E=Math.abs(e-n[a].value),j=Math.abs(e-n[r].value);return E<=j?n[a].value:n[r].value},[f,n]),v=t.useCallback(e=>{let r=a=>l?`${a} ${l}`:a.toString();return e.length===1?`${r(e[0])} out of ${r(s)}`:e.length===2?`${r(e[0])} to ${r(e[1])} out of ${r(s)}`:`${e.map(r).join(", ")} out of ${r(s)}`},[l,s]),R=t.useMemo(()=>o?o.map((e,r)=>({...e,percentage:(e.value-u)/(s-u)*100,index:r})):null,[o,u,s]),m=t.useRef(null),d=t.useRef(null),{onValueChange:$}=i,T=t.useCallback(e=>{let r=f&&o?e.map(a=>S(a)):e;if(m.current){let a=v(r);m.current.textContent=a,d.current&&clearTimeout(d.current),d.current=setTimeout(()=>{m.current&&(m.current.textContent="")},1e3)}$?.(r)},[f,o,S,v,$]);return t.useEffect(()=>()=>{d.current&&clearTimeout(d.current)},[]),t.createElement("div",{className:"rt-SliderContainer"},t.createElement("div",{ref:m,"aria-live":"polite","aria-atomic":"true",className:"sr-only",style:{position:"absolute",left:"-10000px",width:"1px",height:"1px",overflow:"hidden"}}),t.createElement(h.Root,{"data-accent-color":k,"data-radius":M,ref:A,...i,step:D,onValueChange:T,asChild:!1,className:N("rt-SliderRoot",V),"aria-valuemin":u,"aria-valuemax":s,"aria-valuenow":Array.isArray(c)?c[0]:c,"aria-valuetext":v(c),"aria-label":p["aria-label"]||`${y?"Range":"Value"} slider`},t.createElement(h.Track,{className:"rt-SliderTrack"},t.createElement(h.Range,{className:N("rt-SliderRange",{"rt-high-contrast":p.highContrast}),"data-inverted":i.inverted?"":void 0})),(i.value??i.defaultValue??[]).map((e,r)=>t.createElement(h.Thumb,{key:r,className:"rt-SliderThumb",...g!==void 0?{tabIndex:g}:void 0,"aria-label":y?`${r===0?"Minimum":r===1?"Maximum":`Thumb ${r+1}`} value: ${l?`${e} ${l}`:e}`:`Slider value: ${l?`${e} ${l}`:e}`,"aria-valuetext":l?`${e} ${l}`:e.toString()}))),R&&t.createElement("div",{className:"rt-SliderTicks",role:"group","aria-label":"Slider tick marks"},R.map(e=>t.createElement("button",{key:e.index,className:"rt-SliderTick",style:{left:`${e.percentage}%`,transform:"translateX(-50%)"},onClick:()=>{let r=i.value??i.defaultValue??[u],a=Array.isArray(r)?r.map(()=>e.value):[e.value];T(a)},"aria-label":`Set to ${e.label||(l?`${e.value} ${l}`:e.value)}`,"aria-describedby":e.label?void 0:`tick-${e.index}-value`,type:"button"},t.createElement("div",{className:"rt-SliderTickMark"}),e.label&&w!==!1&&t.createElement("div",{className:"rt-SliderTickLabel"},e.label),!e.label&&t.createElement("span",{id:`tick-${e.index}-value`,className:"sr-only"},l?`${e.value} ${l}`:e.value)))))});G.displayName="Slider";export{G as a};
2
+ //# sourceMappingURL=chunk-666GX7O5.js.map
@@ -0,0 +1,2 @@
1
+ import{a as d}from"./chunk-AX5S56DS.js";import{a as m}from"./chunk-E23RKOQJ.js";import{a as y,b as g}from"./chunk-JUY7CBSL.js";import{a as p}from"./chunk-RZCX6IBE.js";import h from"classnames";function V(n,i){let a=n.initial,o=!1;return i.hasDefault&&a===void 0&&(a=i.default,o=!0),i.enumValueSet!==void 0&&!i.enumValueSet.has(a)&&(a=i.default,o=!0),o?{...n,initial:a}:n}function T(n,...i){let{styling:a,passthrough:o,stylingKeys:P}=d(i),r={};for(let t in n)P.has(t)||(r[t]=n[t]);for(let t=0;t<o.length;t++){let e=o[t],s=r[e.key];if(s===void 0){e.hasDefault&&(r[e.key]=e.default);continue}e.enumValueSet!==void 0&&!e.enumValueSet.has(s)&&!p(s)&&(r[e.key]=e.default)}let f,l=[];for(let t=0;t<a.length;t++){let e=a[t],s=n[e.key];if(s===void 0&&e.hasDefault&&(s=e.default),e.enumValueSet!==void 0&&!e.enumValueSet.has(s)&&!p(s)&&(s=e.default),!!s){if(p(s)){if(!e.responsive)continue;s=V(s,e)}if(e.type==="enum"){let u=g({allowArbitraryValues:!1,value:s,className:e.className,propValues:e.values,propValueSet:e.valueSet,parseValue:e.parseValue});u&&l.push(u);continue}if(e.type==="string"||e.type==="enum | string"){let[u,c]=y({className:e.className,customProperties:e.customProperties,propValues:e.type==="string"?[]:e.values,propValueSet:e.type==="string"?void 0:e.valueSet,parseValue:e.parseValue,value:s});c&&(f=m(f,c)),u&&l.push(u);continue}if(e.type==="boolean"){l.push(e.className);continue}}}return r.className=h(l.length>0?l.join(" "):void 0,n.className),r.style=m(f,n.style),r}export{T as a};
2
+ //# sourceMappingURL=chunk-6FLLFCBU.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/helpers/extract-props.ts"],
4
+ "sourcesContent": ["import classNames from 'classnames';\n\nimport { getCompiledPropDefs } from './compile-prop-defs.js';\nimport { getResponsiveClassNames, getResponsiveStyles } from './get-responsive-styles.js';\nimport { isResponsiveObject } from './is-responsive-object.js';\nimport { mergeStyles } from './merge-styles.js';\n\nimport type { CompiledPropDef } from './compile-prop-defs.js';\nimport type * as React from 'react';\nimport type { PropDef } from '../props/prop-def.js';\n\ntype PropDefsWithClassName<T> = T extends Record<string, PropDef> ? { [K in keyof T]: T[K] extends { className: string } ? K : never }[keyof T] : never;\n\ntype ResponsiveValue = Record<string, string | undefined>;\n\n/**\n * Fills in the `initial` breakpoint of a responsive value from the prop def's\n * default, and coerces an invalid `initial` enum value back to that default.\n *\n * Returns the value untouched when nothing needs changing, and a copy otherwise\n * \u2014 callers routinely hoist responsive objects to module scope, so mutating the\n * caller's object would corrupt it for every later render.\n */\nfunction normalizeResponsiveValue(value: ResponsiveValue, propDef: CompiledPropDef) {\n let initial = value.initial;\n let changed = false;\n\n if (propDef.hasDefault && initial === undefined) {\n initial = propDef.default as string | undefined;\n changed = true;\n }\n\n if (propDef.enumValueSet !== undefined && !propDef.enumValueSet.has(initial)) {\n initial = propDef.default as string | undefined;\n changed = true;\n }\n\n return changed ? { ...value, initial } : value;\n}\n\n/**\n * Takes props, checks them against prop defs that have a `className` on them,\n * adds necessary CSS classes and inline styles, and returns the props without\n * the corresponding prop defs that were used to formulate the new `className`\n * and `style` values. Also applies prop def defaults to every prop.\n */\nfunction extractProps<P extends { className?: string; style?: React.CSSProperties; [key: string]: any }, T extends Record<string, PropDef>[]>(\n props: P,\n ...propDefs: T\n): Omit<P & { className?: string; style?: React.CSSProperties }, PropDefsWithClassName<T[number]>> {\n const { styling, passthrough, stylingKeys } = getCompiledPropDefs(propDefs);\n\n // Copy the props that survive to the element rather than spreading and then\n // deleting the styling keys. Deleting off a spread demotes the object to\n // dictionary mode in V8, and this object is on the render path of every\n // component in the library.\n const extractedProps: Record<string, any> = {};\n for (const key in props) {\n if (stylingKeys.has(key)) continue;\n extractedProps[key] = props[key];\n }\n\n for (let i = 0; i < passthrough.length; i++) {\n const propDef = passthrough[i];\n const value = extractedProps[propDef.key];\n\n if (value === undefined) {\n if (propDef.hasDefault) extractedProps[propDef.key] = propDef.default;\n continue;\n }\n\n // Fall back to the default when the value is not a valid enum value\n if (propDef.enumValueSet !== undefined && !propDef.enumValueSet.has(value) && !isResponsiveObject(value)) {\n extractedProps[propDef.key] = propDef.default;\n }\n }\n\n let style: ReturnType<typeof mergeStyles>;\n const classes: string[] = [];\n\n for (let i = 0; i < styling.length; i++) {\n const propDef = styling[i];\n let value = props[propDef.key];\n\n // Apply prop def defaults\n if (value === undefined && propDef.hasDefault) {\n value = propDef.default;\n }\n\n // Apply the default value if the value is not a valid enum value\n if (propDef.enumValueSet !== undefined && !propDef.enumValueSet.has(value) && !isResponsiveObject(value)) {\n value = propDef.default;\n }\n\n if (!value) continue;\n\n if (isResponsiveObject(value)) {\n // Make sure we are not threading through responsive values for non-responsive prop defs\n if (!propDef.responsive) continue;\n value = normalizeResponsiveValue(value, propDef);\n }\n\n if (propDef.type === 'enum') {\n const propClassName = getResponsiveClassNames({\n allowArbitraryValues: false,\n value,\n className: propDef.className!,\n propValues: propDef.values,\n propValueSet: propDef.valueSet,\n parseValue: propDef.parseValue,\n });\n\n if (propClassName) classes.push(propClassName);\n continue;\n }\n\n if (propDef.type === 'string' || propDef.type === 'enum | string') {\n const [propClassNames, propCustomProperties] = getResponsiveStyles({\n className: propDef.className!,\n customProperties: propDef.customProperties!,\n // `string` prop defs have no enum values, so every value is arbitrary\n propValues: propDef.type === 'string' ? [] : propDef.values,\n propValueSet: propDef.type === 'string' ? undefined : propDef.valueSet,\n parseValue: propDef.parseValue,\n value,\n });\n\n if (propCustomProperties) style = mergeStyles(style, propCustomProperties);\n if (propClassNames) classes.push(propClassNames);\n continue;\n }\n\n if (propDef.type === 'boolean') {\n // TODO handle responsive boolean props\n classes.push(propDef.className!);\n continue;\n }\n }\n\n extractedProps.className = classNames(classes.length > 0 ? classes.join(' ') : undefined, props.className);\n extractedProps.style = mergeStyles(style, props.style);\n return extractedProps as ReturnType<typeof extractProps<P, T>>;\n}\n\nexport { extractProps };\n"],
5
+ "mappings": "uKAAA,OAAOA,MAAgB,aAuBvB,SAASC,EAAyBC,EAAwBC,EAA0B,CAClF,IAAIC,EAAUF,EAAM,QAChBG,EAAU,GAEd,OAAIF,EAAQ,YAAcC,IAAY,SACpCA,EAAUD,EAAQ,QAClBE,EAAU,IAGRF,EAAQ,eAAiB,QAAa,CAACA,EAAQ,aAAa,IAAIC,CAAO,IACzEA,EAAUD,EAAQ,QAClBE,EAAU,IAGLA,EAAU,CAAE,GAAGH,EAAO,QAAAE,CAAQ,EAAIF,CAC3C,CAQA,SAASI,EACPC,KACGC,EAC8F,CACjG,GAAM,CAAE,QAAAC,EAAS,YAAAC,EAAa,YAAAC,CAAY,EAAIC,EAAoBJ,CAAQ,EAMpEK,EAAsC,CAAC,EAC7C,QAAWC,KAAOP,EACZI,EAAY,IAAIG,CAAG,IACvBD,EAAeC,CAAG,EAAIP,EAAMO,CAAG,GAGjC,QAASC,EAAI,EAAGA,EAAIL,EAAY,OAAQK,IAAK,CAC3C,IAAMZ,EAAUO,EAAYK,CAAC,EACvBb,EAAQW,EAAeV,EAAQ,GAAG,EAExC,GAAID,IAAU,OAAW,CACnBC,EAAQ,aAAYU,EAAeV,EAAQ,GAAG,EAAIA,EAAQ,SAC9D,QACF,CAGIA,EAAQ,eAAiB,QAAa,CAACA,EAAQ,aAAa,IAAID,CAAK,GAAK,CAACc,EAAmBd,CAAK,IACrGW,EAAeV,EAAQ,GAAG,EAAIA,EAAQ,QAE1C,CAEA,IAAIc,EACEC,EAAoB,CAAC,EAE3B,QAASH,EAAI,EAAGA,EAAIN,EAAQ,OAAQM,IAAK,CACvC,IAAMZ,EAAUM,EAAQM,CAAC,EACrBb,EAAQK,EAAMJ,EAAQ,GAAG,EAY7B,GATID,IAAU,QAAaC,EAAQ,aACjCD,EAAQC,EAAQ,SAIdA,EAAQ,eAAiB,QAAa,CAACA,EAAQ,aAAa,IAAID,CAAK,GAAK,CAACc,EAAmBd,CAAK,IACrGA,EAAQC,EAAQ,SAGd,EAACD,EAEL,IAAIc,EAAmBd,CAAK,EAAG,CAE7B,GAAI,CAACC,EAAQ,WAAY,SACzBD,EAAQD,EAAyBC,EAAOC,CAAO,CACjD,CAEA,GAAIA,EAAQ,OAAS,OAAQ,CAC3B,IAAMgB,EAAgBC,EAAwB,CAC5C,qBAAsB,GACtB,MAAAlB,EACA,UAAWC,EAAQ,UACnB,WAAYA,EAAQ,OACpB,aAAcA,EAAQ,SACtB,WAAYA,EAAQ,UACtB,CAAC,EAEGgB,GAAeD,EAAQ,KAAKC,CAAa,EAC7C,QACF,CAEA,GAAIhB,EAAQ,OAAS,UAAYA,EAAQ,OAAS,gBAAiB,CACjE,GAAM,CAACkB,EAAgBC,CAAoB,EAAIC,EAAoB,CACjE,UAAWpB,EAAQ,UACnB,iBAAkBA,EAAQ,iBAE1B,WAAYA,EAAQ,OAAS,SAAW,CAAC,EAAIA,EAAQ,OACrD,aAAcA,EAAQ,OAAS,SAAW,OAAYA,EAAQ,SAC9D,WAAYA,EAAQ,WACpB,MAAAD,CACF,CAAC,EAEGoB,IAAsBL,EAAQO,EAAYP,EAAOK,CAAoB,GACrED,GAAgBH,EAAQ,KAAKG,CAAc,EAC/C,QACF,CAEA,GAAIlB,EAAQ,OAAS,UAAW,CAE9Be,EAAQ,KAAKf,EAAQ,SAAU,EAC/B,QACF,EACF,CAEA,OAAAU,EAAe,UAAYY,EAAWP,EAAQ,OAAS,EAAIA,EAAQ,KAAK,GAAG,EAAI,OAAWX,EAAM,SAAS,EACzGM,EAAe,MAAQW,EAAYP,EAAOV,EAAM,KAAK,EAC9CM,CACT",
6
+ "names": ["classNames", "normalizeResponsiveValue", "value", "propDef", "initial", "changed", "extractProps", "props", "propDefs", "styling", "passthrough", "stylingKeys", "getCompiledPropDefs", "extractedProps", "key", "i", "isResponsiveObject", "style", "classes", "propClassName", "getResponsiveClassNames", "propClassNames", "propCustomProperties", "getResponsiveStyles", "mergeStyles", "classNames"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as p}from"./chunk-4JQZUQY7.js";import{a as o}from"./chunk-KMPBTEZH.js";import*as e from"react";import a from"classnames";import{Slot as P}from"radix-ui";var E=e.forwardRef((m,r)=>{let{asChild:t,className:s,...f}=o(m,p),n=t?P.Root:"em";return e.createElement(n,{...f,ref:r,className:a("rt-Em",s)})});E.displayName="Em";export{E as a};
2
- //# sourceMappingURL=chunk-DJBPM5QK.js.map
1
+ import{a as p}from"./chunk-4JQZUQY7.js";import{a as o}from"./chunk-6FLLFCBU.js";import*as e from"react";import a from"classnames";import{Slot as P}from"radix-ui";var E=e.forwardRef((m,r)=>{let{asChild:t,className:s,...f}=o(m,p),n=t?P.Root:"em";return e.createElement(n,{...f,ref:r,className:a("rt-Em",s)})});E.displayName="Em";export{E as a};
2
+ //# sourceMappingURL=chunk-7FC7HF76.js.map
@@ -1,2 +1,2 @@
1
- import{a as P}from"./chunk-3F6I7YOR.js";import{a as u}from"./chunk-HACQF6F4.js";import{a as p}from"./chunk-FVCWNSRU.js";import*as e from"react";import c from"classnames";var h=e.forwardRef((l,o)=>{let{anchor:r="top",floating:t=!1,offset:s="2",size:n="1",variant:i="ghost",material:N,className:x,style:R,children:L,...H}=l,T=r==="top"||r==="bottom",y=e.useRef(null),F=e.useCallback(a=>{y.current=a,typeof o=="function"?o(a):o&&(o.current=a)},[o]);e.useEffect(()=>{let a=y.current;if(!a)return;let m=a.parentElement;if(!m)return;let d=()=>{let b=T?a.offsetHeight:a.offsetWidth;if(t){let j=getComputedStyle(a),w=parseFloat(j.marginTop)||0;b+=w*2}T?m.style.setProperty("--rt-toolbar-height",`${b}px`):m.style.setProperty("--rt-toolbar-width",`${b}px`)};d();let g=new ResizeObserver(d);return g.observe(a),()=>g.disconnect()},[T,t]);let z=t?{margin:`var(--space-${s})`,...R}:R;return e.createElement(P,{ref:F,size:n,variant:i,material:N,"data-anchor":r,"data-floating":t||void 0,className:c("rt-Toolbar",x),style:z,...H},e.createElement("div",{className:"rt-ToolbarInner"},L))});h.displayName="Toolbar.Root";var S=e.forwardRef(({gap:l="2",align:o="center",className:r,children:t,...s},n)=>e.createElement(p,{ref:n,align:o,gap:l,className:c("rt-ToolbarSection","rt-ToolbarLeft",r),...s},t));S.displayName="Toolbar.Left";var C=e.forwardRef(({gap:l="2",align:o="center",justify:r="center",className:t,children:s,...n},i)=>e.createElement(p,{ref:i,align:o,justify:r,gap:l,className:c("rt-ToolbarSection","rt-ToolbarCenter",t),...n},s));C.displayName="Toolbar.Center";var E=e.forwardRef(({gap:l="2",align:o="center",justify:r="end",className:t,children:s,...n},i)=>e.createElement(p,{ref:i,align:o,justify:r,gap:l,className:c("rt-ToolbarSection","rt-ToolbarRight",t),...n},s));E.displayName="Toolbar.Right";var v=e.forwardRef(({className:l,size:o="2",weight:r="medium",truncate:t=!0,children:s,...n},i)=>e.createElement(u,{ref:i,size:o,weight:r,truncate:t,className:c("rt-ToolbarTitle",l),...n},s));v.displayName="Toolbar.Title";var f=h;f.Left=S;f.Center=C;f.Right=E;f.Title=v;export{h as a,S as b,C as c,E as d,v as e,f};
2
- //# sourceMappingURL=chunk-SVLY6B5F.js.map
1
+ import{a as P}from"./chunk-JDGJSNWT.js";import{a as u}from"./chunk-TOOSHJOA.js";import{a as p}from"./chunk-FHOCUZDR.js";import*as e from"react";import c from"classnames";var h=e.forwardRef((l,o)=>{let{anchor:r="top",floating:t=!1,offset:s="2",size:n="1",variant:i="ghost",material:N,className:x,style:R,children:L,...H}=l,T=r==="top"||r==="bottom",y=e.useRef(null),F=e.useCallback(a=>{y.current=a,typeof o=="function"?o(a):o&&(o.current=a)},[o]);e.useEffect(()=>{let a=y.current;if(!a)return;let m=a.parentElement;if(!m)return;let d=()=>{let b=T?a.offsetHeight:a.offsetWidth;if(t){let j=getComputedStyle(a),w=parseFloat(j.marginTop)||0;b+=w*2}T?m.style.setProperty("--rt-toolbar-height",`${b}px`):m.style.setProperty("--rt-toolbar-width",`${b}px`)};d();let g=new ResizeObserver(d);return g.observe(a),()=>g.disconnect()},[T,t]);let z=t?{margin:`var(--space-${s})`,...R}:R;return e.createElement(P,{ref:F,size:n,variant:i,material:N,"data-anchor":r,"data-floating":t||void 0,className:c("rt-Toolbar",x),style:z,...H},e.createElement("div",{className:"rt-ToolbarInner"},L))});h.displayName="Toolbar.Root";var S=e.forwardRef(({gap:l="2",align:o="center",className:r,children:t,...s},n)=>e.createElement(p,{ref:n,align:o,gap:l,className:c("rt-ToolbarSection","rt-ToolbarLeft",r),...s},t));S.displayName="Toolbar.Left";var C=e.forwardRef(({gap:l="2",align:o="center",justify:r="center",className:t,children:s,...n},i)=>e.createElement(p,{ref:i,align:o,justify:r,gap:l,className:c("rt-ToolbarSection","rt-ToolbarCenter",t),...n},s));C.displayName="Toolbar.Center";var E=e.forwardRef(({gap:l="2",align:o="center",justify:r="end",className:t,children:s,...n},i)=>e.createElement(p,{ref:i,align:o,justify:r,gap:l,className:c("rt-ToolbarSection","rt-ToolbarRight",t),...n},s));E.displayName="Toolbar.Right";var v=e.forwardRef(({className:l,size:o="2",weight:r="medium",truncate:t=!0,children:s,...n},i)=>e.createElement(u,{ref:i,size:o,weight:r,truncate:t,className:c("rt-ToolbarTitle",l),...n},s));v.displayName="Toolbar.Title";var f=h;f.Left=S;f.Center=C;f.Right=E;f.Title=v;export{h as a,S as b,C as c,E as d,v as e,f};
2
+ //# sourceMappingURL=chunk-7QDTSBJF.js.map
@@ -0,0 +1,2 @@
1
+ var p=[],d=new Set;function u(s){let n=Object.assign({},...s),t=[],r=[],o=new Set;for(let l in n){let e=n[l],i=e.values??p,a={key:l,type:e.type,default:e.default,hasDefault:e.default!==void 0,responsive:"responsive"in e,className:e.className,customProperties:e.customProperties,parseValue:e.parseValue,values:i,valueSet:i.length>0?new Set(i):d,enumValueSet:e.type==="enum"?new Set([e.default,...i]):void 0};e.className?(t.push(a),o.add(l)):(a.hasDefault||e.type==="enum")&&r.push(a)}return{styling:t,passthrough:r,stylingKeys:o}}var c={children:new WeakMap};function f(s){let n=c;for(let t=0;t<s.length;t++){let r=s[t],o=n.children.get(r);o===void 0&&(o={children:new WeakMap},n.children.set(r,o)),n=o}return n.compiled??(n.compiled=u(s))}export{f as a};
2
+ //# sourceMappingURL=chunk-AX5S56DS.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/helpers/compile-prop-defs.ts"],
4
+ "sourcesContent": ["import type { PropDef } from '../props/prop-def.js';\n\n/**\n * A prop def pre-processed into the exact shape `extractProps` needs at render\n * time. Everything that can be derived from the static prop def \u2014 enum\n * membership sets, whether the def is responsive, whether it carries a default\n * \u2014 is computed once here instead of on every render.\n */\ninterface CompiledPropDef {\n key: string;\n type: PropDef['type'];\n default: unknown;\n hasDefault: boolean;\n responsive: boolean;\n className?: string;\n customProperties?: `--${string}`[];\n parseValue?: (value: string) => string | undefined;\n /** The prop def's own enum values, kept for the responsive class name helpers. */\n values: readonly string[];\n /** O(1) membership for `values`. */\n valueSet: ReadonlySet<string>;\n /**\n * `values` plus the default, used to coerce invalid enum values back to the\n * default. Only present for `type: 'enum'` \u2014 `'enum | string'` props accept\n * arbitrary strings and must not be coerced.\n */\n enumValueSet?: ReadonlySet<unknown>;\n}\n\ninterface CompiledPropDefs {\n /** Defs that contribute a class name and/or custom properties. */\n styling: CompiledPropDef[];\n /**\n * Defs that pass through to the element but still need a default applied or\n * an invalid enum value coerced. Defs that can do neither are omitted\n * entirely \u2014 they are already correct as passed.\n */\n passthrough: CompiledPropDef[];\n /** Keys consumed by `styling`, so they can be skipped when copying props. */\n stylingKeys: ReadonlySet<string>;\n}\n\nconst EMPTY_VALUES: readonly string[] = [];\nconst EMPTY_SET: ReadonlySet<string> = new Set();\n\nfunction compile(propDefs: readonly Record<string, PropDef>[]): CompiledPropDefs {\n const merged: Record<string, PropDef> = Object.assign({}, ...propDefs);\n const styling: CompiledPropDef[] = [];\n const passthrough: CompiledPropDef[] = [];\n const stylingKeys = new Set<string>();\n\n for (const key in merged) {\n // The PropDef union is narrowed per-field below; reading the optional\n // members off the union directly is what the runtime actually needs.\n const def = merged[key] as PropDef & {\n default?: unknown;\n values?: readonly string[];\n className?: string;\n customProperties?: `--${string}`[];\n parseValue?: (value: string) => string | undefined;\n responsive?: true;\n };\n\n const values = def.values ?? EMPTY_VALUES;\n const compiled: CompiledPropDef = {\n key,\n type: def.type,\n default: def.default,\n hasDefault: def.default !== undefined,\n responsive: 'responsive' in def,\n className: def.className,\n customProperties: def.customProperties,\n parseValue: def.parseValue,\n values,\n valueSet: values.length > 0 ? new Set(values) : EMPTY_SET,\n enumValueSet: def.type === 'enum' ? new Set<unknown>([def.default, ...values]) : undefined,\n };\n\n if (def.className) {\n styling.push(compiled);\n stylingKeys.add(key);\n } else if (compiled.hasDefault || def.type === 'enum') {\n // Anything else is copied through untouched, so there is nothing to do.\n passthrough.push(compiled);\n }\n }\n\n return { styling, passthrough, stylingKeys };\n}\n\ninterface CacheNode {\n children: WeakMap<object, CacheNode>;\n compiled?: CompiledPropDefs;\n}\n\nconst cacheRoot: CacheNode = { children: new WeakMap() };\n\n/**\n * Compiles a set of prop defs, memoized on the identity of the prop def objects\n * themselves. Components always pass the same module-level constants, so after\n * the first render of a given component this is a couple of WeakMap lookups\n * instead of merging 50-odd prop defs into a fresh object.\n */\nfunction getCompiledPropDefs(propDefs: readonly Record<string, PropDef>[]): CompiledPropDefs {\n let node = cacheRoot;\n\n for (let i = 0; i < propDefs.length; i++) {\n const propDef = propDefs[i];\n let child = node.children.get(propDef);\n if (child === undefined) {\n child = { children: new WeakMap() };\n node.children.set(propDef, child);\n }\n node = child;\n }\n\n return (node.compiled ??= compile(propDefs));\n}\n\nexport { getCompiledPropDefs };\nexport type { CompiledPropDef, CompiledPropDefs };\n"],
5
+ "mappings": "AA0CA,IAAMA,EAAkC,CAAC,EACnCC,EAAiC,IAAI,IAE3C,SAASC,EAAQC,EAAgE,CAC/E,IAAMC,EAAkC,OAAO,OAAO,CAAC,EAAG,GAAGD,CAAQ,EAC/DE,EAA6B,CAAC,EAC9BC,EAAiC,CAAC,EAClCC,EAAc,IAAI,IAExB,QAAWC,KAAOJ,EAAQ,CAGxB,IAAMK,EAAML,EAAOI,CAAG,EAShBE,EAASD,EAAI,QAAUT,EACvBW,EAA4B,CAChC,IAAAH,EACA,KAAMC,EAAI,KACV,QAASA,EAAI,QACb,WAAYA,EAAI,UAAY,OAC5B,WAAY,eAAgBA,EAC5B,UAAWA,EAAI,UACf,iBAAkBA,EAAI,iBACtB,WAAYA,EAAI,WAChB,OAAAC,EACA,SAAUA,EAAO,OAAS,EAAI,IAAI,IAAIA,CAAM,EAAIT,EAChD,aAAcQ,EAAI,OAAS,OAAS,IAAI,IAAa,CAACA,EAAI,QAAS,GAAGC,CAAM,CAAC,EAAI,MACnF,EAEID,EAAI,WACNJ,EAAQ,KAAKM,CAAQ,EACrBJ,EAAY,IAAIC,CAAG,IACVG,EAAS,YAAcF,EAAI,OAAS,SAE7CH,EAAY,KAAKK,CAAQ,CAE7B,CAEA,MAAO,CAAE,QAAAN,EAAS,YAAAC,EAAa,YAAAC,CAAY,CAC7C,CAOA,IAAMK,EAAuB,CAAE,SAAU,IAAI,OAAU,EAQvD,SAASC,EAAoBV,EAAgE,CAC3F,IAAIW,EAAOF,EAEX,QAASG,EAAI,EAAGA,EAAIZ,EAAS,OAAQY,IAAK,CACxC,IAAMC,EAAUb,EAASY,CAAC,EACtBE,EAAQH,EAAK,SAAS,IAAIE,CAAO,EACjCC,IAAU,SACZA,EAAQ,CAAE,SAAU,IAAI,OAAU,EAClCH,EAAK,SAAS,IAAIE,EAASC,CAAK,GAElCH,EAAOG,CACT,CAEA,OAAQH,EAAK,WAALA,EAAK,SAAaZ,EAAQC,CAAQ,EAC5C",
6
+ "names": ["EMPTY_VALUES", "EMPTY_SET", "compile", "propDefs", "merged", "styling", "passthrough", "stylingKeys", "key", "def", "values", "compiled", "cacheRoot", "getCompiledPropDefs", "node", "i", "propDef", "child"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as R}from"./chunk-3DC63EZP.js";import{a as f}from"./chunk-4OBMRJHC.js";import{a as n}from"./chunk-GSTOGDAJ.js";import{a as u}from"./chunk-KMPBTEZH.js";import{a as N}from"./chunk-3XT5P2HO.js";var _={};N(_,{Item:()=>x,Root:()=>y});import*as o from"react";import G from"classnames";import{Context as v}from"radix-ui/internal";import{RadioGroup as d}from"radix-ui";var P="RadioGroup",[S]=v.createContextScope(P,[d.createRadioGroupScope]),l=d.createRadioGroupScope(),[E,I]=S(P),y=o.forwardRef(({color:a=R.color.default,highContrast:e=R.highContrast.default,size:t=R.size.default,variant:r=R.variant.default,...i},s)=>{let{__scopeRadioGroup:p,className:m,...C}=u(i,n),h=l(p);return o.createElement(E,{scope:p,color:a,highContrast:e,size:t,variant:r},o.createElement(d.Root,{...h,...C,ref:s,className:G("rt-RadioGroupRoot",m)}))});y.displayName="RadioGroup.Root";var x=o.forwardRef((a,e)=>{let{__scopeRadioGroup:t,children:r,className:i,style:s,...p}=a,{size:m}=I("RadioGroupItem",t);return r?o.createElement(f,{as:"label",size:m,className:G("rt-RadioGroupItem",i),style:s},o.createElement(c,{__scopeRadioGroup:t,...p,ref:e}),r&&o.createElement("span",{className:"rt-RadioGroupItemInner"},r)):o.createElement(c,{__scopeRadioGroup:t,...p,ref:e,className:i,style:s})});x.displayName="RadioGroup.Item";var c=o.forwardRef(({__scopeRadioGroup:a,...e},t)=>{let r=I("RadioGroupItemRadio",a),i=l(a),{color:s,className:p}=u({...e,...r},R,n);return o.createElement(d.Item,{...i,"data-accent-color":s,...e,asChild:!1,ref:t,className:G("rt-reset","rt-BaseRadioRoot",p)})});c.displayName="RadioGroup.ItemRadio";export{y as a,x as b,_ as c};
2
- //# sourceMappingURL=chunk-DK5MHD6I.js.map
1
+ import{a as R}from"./chunk-3DC63EZP.js";import{a as f}from"./chunk-H7ST535H.js";import{a as n}from"./chunk-GSTOGDAJ.js";import{a as u}from"./chunk-6FLLFCBU.js";import{a as N}from"./chunk-3XT5P2HO.js";var _={};N(_,{Item:()=>x,Root:()=>y});import*as o from"react";import G from"classnames";import{Context as v}from"radix-ui/internal";import{RadioGroup as d}from"radix-ui";var P="RadioGroup",[S]=v.createContextScope(P,[d.createRadioGroupScope]),l=d.createRadioGroupScope(),[E,I]=S(P),y=o.forwardRef(({color:a=R.color.default,highContrast:e=R.highContrast.default,size:t=R.size.default,variant:r=R.variant.default,...i},s)=>{let{__scopeRadioGroup:p,className:m,...C}=u(i,n),h=l(p);return o.createElement(E,{scope:p,color:a,highContrast:e,size:t,variant:r},o.createElement(d.Root,{...h,...C,ref:s,className:G("rt-RadioGroupRoot",m)}))});y.displayName="RadioGroup.Root";var x=o.forwardRef((a,e)=>{let{__scopeRadioGroup:t,children:r,className:i,style:s,...p}=a,{size:m}=I("RadioGroupItem",t);return r?o.createElement(f,{as:"label",size:m,className:G("rt-RadioGroupItem",i),style:s},o.createElement(c,{__scopeRadioGroup:t,...p,ref:e}),r&&o.createElement("span",{className:"rt-RadioGroupItemInner"},r)):o.createElement(c,{__scopeRadioGroup:t,...p,ref:e,className:i,style:s})});x.displayName="RadioGroup.Item";var c=o.forwardRef(({__scopeRadioGroup:a,...e},t)=>{let r=I("RadioGroupItemRadio",a),i=l(a),{color:s,className:p}=u({...e,...r},R,n);return o.createElement(d.Item,{...i,"data-accent-color":s,...e,asChild:!1,ref:t,className:G("rt-reset","rt-BaseRadioRoot",p)})});c.displayName="RadioGroup.ItemRadio";export{y as a,x as b,_ as c};
2
+ //# sourceMappingURL=chunk-B24BDVG2.js.map
@@ -1,2 +1,2 @@
1
- import{a as m,b as T,c as N}from"./chunk-TGN5ZJU5.js";import{b as h,c as I}from"./chunk-IX5HIHVI.js";import{b as v,c as y}from"./chunk-LN5SP46K.js";import{a as g}from"./chunk-GSTOGDAJ.js";import{a as f}from"./chunk-KMPBTEZH.js";import{a as A}from"./chunk-3XT5P2HO.js";var M={};A(M,{Content:()=>w,Group:()=>G,Item:()=>E,Label:()=>L,Root:()=>x,Separator:()=>D,Trigger:()=>b});import*as e from"react";import c from"classnames";import{Select as a,ScrollArea as S}from"radix-ui";var u=e.createContext({}),x=t=>{let{children:o,size:r=m.size.default,...l}=t;return e.createElement(a.Root,{...l},e.createElement(u.Provider,{value:e.useMemo(()=>({size:r}),[r])},o))};x.displayName="Select.Root";var b=e.forwardRef((t,o)=>{let r=e.useContext(u),{children:l,className:i,color:n,radius:P,placeholder:d,error:p,loading:s,disabled:R,readOnly:C,...V}=f({size:r?.size,...t},{size:m.size},T,g),{panelBackground:z}=t,k=e.useMemo(()=>({"aria-invalid":p||void 0,"aria-busy":s||void 0,"aria-disabled":R||void 0,"aria-readonly":C||void 0}),[p,s,R,C]);return e.createElement(a.Trigger,{asChild:!0},e.createElement("button",{"data-accent-color":n,"data-radius":P,"data-panel-background":z,"data-error":p,"data-loading":s,...V,...k,ref:o,className:c("rt-reset","rt-SelectTrigger",i)},e.createElement("span",{className:"rt-SelectTriggerInner"},e.createElement(a.Value,{placeholder:d},l)),e.createElement(a.Icon,{asChild:!0},s?e.createElement("div",{className:"rt-SelectIcon rt-SelectLoadingIcon","aria-hidden":"true"},e.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},e.createElement("circle",{cx:"8",cy:"8",r:"7",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeDasharray:"32",strokeDashoffset:"32",className:"rt-SelectLoadingIconCircle"}))):e.createElement(I,{className:"rt-SelectIcon"}))))});b.displayName="Select.Trigger";var w=e.forwardRef((t,o)=>{let r=e.useContext(u),{className:l,children:i,color:n,container:P,...d}=f({size:r?.size,...t},{size:m.size},N),p=v(),s=n||p.accentColor;return e.createElement(a.Portal,{container:P},e.createElement(y,{asChild:!0},e.createElement(a.Content,{"data-accent-color":s,sideOffset:4,...d,asChild:!1,ref:o,className:c("rt-PopperContent","rt-BaseMenuContent","rt-SelectContent",l)},e.createElement(S.Root,{type:"auto",className:"rt-ScrollAreaRoot"},e.createElement(a.Viewport,{asChild:!0,className:c("rt-BaseMenuViewport","rt-SelectViewport")},e.createElement(S.Viewport,{className:"rt-ScrollAreaViewport",style:{overflowY:void 0}},i)),e.createElement(S.Scrollbar,{className:"rt-ScrollAreaScrollbar rt-r-size-1",orientation:"vertical"},e.createElement(S.Thumb,{className:"rt-ScrollAreaThumb"}))))))});w.displayName="Select.Content";var E=e.forwardRef((t,o)=>{let{className:r,children:l,...i}=t,n=typeof l!="string";return e.createElement(a.Item,{...i,asChild:!1,ref:o,className:c("rt-reset","rt-BaseMenuItem","rt-SelectItem",{"rt-SelectItemRich":n},r)},e.createElement(a.ItemIndicator,{className:"rt-SelectItemIndicator"},e.createElement(h,{className:"rt-SelectItemIndicatorIcon"})),e.createElement(a.ItemText,null,l))});E.displayName="Select.Item";var G=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Group,{...o,asChild:!1,ref:r,className:c("rt-SelectGroup",t)}));G.displayName="Select.Group";var L=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Label,{...o,asChild:!1,ref:r,className:c("rt-BaseMenuLabel","rt-SelectLabel",t)}));L.displayName="Select.Label";var D=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Separator,{...o,asChild:!1,ref:r,className:c("rt-BaseMenuSeparator","rt-SelectSeparator",t)}));D.displayName="Select.Separator";export{x as a,b,w as c,E as d,G as e,L as f,D as g,M as h};
2
- //# sourceMappingURL=chunk-WZCZHCVE.js.map
1
+ import{a as m,b as T,c as N}from"./chunk-TGN5ZJU5.js";import{b as h,c as I}from"./chunk-IX5HIHVI.js";import{b as v,c as y}from"./chunk-LOGJJF4I.js";import{a as g}from"./chunk-GSTOGDAJ.js";import{a as f}from"./chunk-6FLLFCBU.js";import{a as A}from"./chunk-3XT5P2HO.js";var M={};A(M,{Content:()=>w,Group:()=>G,Item:()=>E,Label:()=>L,Root:()=>x,Separator:()=>D,Trigger:()=>b});import*as e from"react";import c from"classnames";import{Select as a,ScrollArea as S}from"radix-ui";var u=e.createContext({}),x=t=>{let{children:o,size:r=m.size.default,...l}=t;return e.createElement(a.Root,{...l},e.createElement(u.Provider,{value:e.useMemo(()=>({size:r}),[r])},o))};x.displayName="Select.Root";var b=e.forwardRef((t,o)=>{let r=e.useContext(u),{children:l,className:i,color:n,radius:P,placeholder:d,error:p,loading:s,disabled:R,readOnly:C,...V}=f({size:r?.size,...t},{size:m.size},T,g),{panelBackground:z}=t,k=e.useMemo(()=>({"aria-invalid":p||void 0,"aria-busy":s||void 0,"aria-disabled":R||void 0,"aria-readonly":C||void 0}),[p,s,R,C]);return e.createElement(a.Trigger,{asChild:!0},e.createElement("button",{"data-accent-color":n,"data-radius":P,"data-panel-background":z,"data-error":p,"data-loading":s,...V,...k,ref:o,className:c("rt-reset","rt-SelectTrigger",i)},e.createElement("span",{className:"rt-SelectTriggerInner"},e.createElement(a.Value,{placeholder:d},l)),e.createElement(a.Icon,{asChild:!0},s?e.createElement("div",{className:"rt-SelectIcon rt-SelectLoadingIcon","aria-hidden":"true"},e.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},e.createElement("circle",{cx:"8",cy:"8",r:"7",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeDasharray:"32",strokeDashoffset:"32",className:"rt-SelectLoadingIconCircle"}))):e.createElement(I,{className:"rt-SelectIcon"}))))});b.displayName="Select.Trigger";var w=e.forwardRef((t,o)=>{let r=e.useContext(u),{className:l,children:i,color:n,container:P,...d}=f({size:r?.size,...t},{size:m.size},N),p=v(),s=n||p.accentColor;return e.createElement(a.Portal,{container:P},e.createElement(y,{asChild:!0},e.createElement(a.Content,{"data-accent-color":s,sideOffset:4,...d,asChild:!1,ref:o,className:c("rt-PopperContent","rt-BaseMenuContent","rt-SelectContent",l)},e.createElement(S.Root,{type:"auto",className:"rt-ScrollAreaRoot"},e.createElement(a.Viewport,{asChild:!0,className:c("rt-BaseMenuViewport","rt-SelectViewport")},e.createElement(S.Viewport,{className:"rt-ScrollAreaViewport",style:{overflowY:void 0}},i)),e.createElement(S.Scrollbar,{className:"rt-ScrollAreaScrollbar rt-r-size-1",orientation:"vertical"},e.createElement(S.Thumb,{className:"rt-ScrollAreaThumb"}))))))});w.displayName="Select.Content";var E=e.forwardRef((t,o)=>{let{className:r,children:l,...i}=t,n=typeof l!="string";return e.createElement(a.Item,{...i,asChild:!1,ref:o,className:c("rt-reset","rt-BaseMenuItem","rt-SelectItem",{"rt-SelectItemRich":n},r)},e.createElement(a.ItemIndicator,{className:"rt-SelectItemIndicator"},e.createElement(h,{className:"rt-SelectItemIndicatorIcon"})),e.createElement(a.ItemText,null,l))});E.displayName="Select.Item";var G=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Group,{...o,asChild:!1,ref:r,className:c("rt-SelectGroup",t)}));G.displayName="Select.Group";var L=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Label,{...o,asChild:!1,ref:r,className:c("rt-BaseMenuLabel","rt-SelectLabel",t)}));L.displayName="Select.Label";var D=e.forwardRef(({className:t,...o},r)=>e.createElement(a.Separator,{...o,asChild:!1,ref:r,className:c("rt-BaseMenuSeparator","rt-SelectSeparator",t)}));D.displayName="Select.Separator";export{x as a,b,w as c,E as d,G as e,L as f,D as g,M as h};
2
+ //# sourceMappingURL=chunk-BJYUPIXO.js.map
@@ -1,2 +1,2 @@
1
- import{a as p,b as R,c as n}from"./chunk-BALS3AVM.js";import{a as b}from"./chunk-WNSPLWRV.js";import{a as d}from"./chunk-GSTOGDAJ.js";import{a as s}from"./chunk-KMPBTEZH.js";import{b as m}from"./chunk-ZMEXIPWM.js";import{a as h}from"./chunk-3XT5P2HO.js";var v={};h(v,{Body:()=>c,Cell:()=>C,ColumnHeaderCell:()=>y,Header:()=>T,Root:()=>P,Row:()=>f,RowHeaderCell:()=>i});import*as e from"react";import t from"classnames";var P=e.forwardRef((o,l)=>{let{layout:a,...r}=p,{className:w,children:u,layout:H,...N}=s(o,r,d),E=m({value:H,className:p.layout.className,propValues:p.layout.values});return e.createElement("div",{ref:l,className:t("rt-TableRoot",w),...N},e.createElement(b,null,e.createElement("table",{className:t("rt-TableRootTable",E)},u)))});P.displayName="Table.Root";var T=e.forwardRef(({className:o,...l},a)=>e.createElement("thead",{...l,ref:a,className:t("rt-TableHeader",o)}));T.displayName="Table.Header";var c=e.forwardRef(({className:o,...l},a)=>e.createElement("tbody",{...l,ref:a,className:t("rt-TableBody",o)}));c.displayName="Table.Body";var f=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,R);return e.createElement("tr",{...r,ref:l,className:t("rt-TableRow",a)})});f.displayName="Table.Row";var C=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,n);return e.createElement("td",{className:t("rt-TableCell",a),ref:l,...r})});C.displayName="Table.Cell";var y=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,n);return e.createElement("th",{className:t("rt-TableCell","rt-TableColumnHeaderCell",a),scope:"col",ref:l,...r})});y.displayName="Table.ColumnHeaderCell";var i=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,n);return e.createElement("th",{className:t("rt-TableCell","rt-TableRowHeaderCell",a),scope:"row",ref:l,...r})});i.displayName="Table.RowHeaderCell";export{P as a,T as b,c,f as d,C as e,y as f,i as g,v as h};
2
- //# sourceMappingURL=chunk-BJTJUIYJ.js.map
1
+ import{a as p,b as R,c as n}from"./chunk-BALS3AVM.js";import{a as b}from"./chunk-GJSGKE7B.js";import{a as d}from"./chunk-GSTOGDAJ.js";import{a as s}from"./chunk-6FLLFCBU.js";import{b as m}from"./chunk-JUY7CBSL.js";import{a as h}from"./chunk-3XT5P2HO.js";var v={};h(v,{Body:()=>c,Cell:()=>C,ColumnHeaderCell:()=>y,Header:()=>T,Root:()=>P,Row:()=>f,RowHeaderCell:()=>i});import*as e from"react";import t from"classnames";var P=e.forwardRef((o,l)=>{let{layout:a,...r}=p,{className:w,children:u,layout:H,...N}=s(o,r,d),E=m({value:H,className:p.layout.className,propValues:p.layout.values});return e.createElement("div",{ref:l,className:t("rt-TableRoot",w),...N},e.createElement(b,null,e.createElement("table",{className:t("rt-TableRootTable",E)},u)))});P.displayName="Table.Root";var T=e.forwardRef(({className:o,...l},a)=>e.createElement("thead",{...l,ref:a,className:t("rt-TableHeader",o)}));T.displayName="Table.Header";var c=e.forwardRef(({className:o,...l},a)=>e.createElement("tbody",{...l,ref:a,className:t("rt-TableBody",o)}));c.displayName="Table.Body";var f=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,R);return e.createElement("tr",{...r,ref:l,className:t("rt-TableRow",a)})});f.displayName="Table.Row";var C=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,n);return e.createElement("td",{className:t("rt-TableCell",a),ref:l,...r})});C.displayName="Table.Cell";var y=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,n);return e.createElement("th",{className:t("rt-TableCell","rt-TableColumnHeaderCell",a),scope:"col",ref:l,...r})});y.displayName="Table.ColumnHeaderCell";var i=e.forwardRef((o,l)=>{let{className:a,...r}=s(o,n);return e.createElement("th",{className:t("rt-TableCell","rt-TableRowHeaderCell",a),scope:"row",ref:l,...r})});i.displayName="Table.RowHeaderCell";export{P as a,T as b,c,f as d,C as e,y as f,i as g,v as h};
2
+ //# sourceMappingURL=chunk-CRWYCLTE.js.map
@@ -1,2 +1,2 @@
1
- import{a as r}from"./chunk-JAMLW534.js";import{a as t}from"./chunk-GSTOGDAJ.js";import{a as o}from"./chunk-KMPBTEZH.js";import*as e from"react";import a from"classnames";import{Slot as P}from"radix-ui";var c=e.forwardRef((p,s)=>{let{asChild:n,className:m,...i}=o(p,r,t),f=n?P.Root:"div";return e.createElement(f,{...i,ref:s,className:a("rt-Inset",m)})});c.displayName="Inset";export{c as a};
2
- //# sourceMappingURL=chunk-OHJVFZMH.js.map
1
+ import{a as r}from"./chunk-JAMLW534.js";import{a as t}from"./chunk-GSTOGDAJ.js";import{a as o}from"./chunk-6FLLFCBU.js";import*as e from"react";import a from"classnames";import{Slot as P}from"radix-ui";var c=e.forwardRef((p,s)=>{let{asChild:n,className:m,...i}=o(p,r,t),f=n?P.Root:"div";return e.createElement(f,{...i,ref:s,className:a("rt-Inset",m)})});c.displayName="Inset";export{c as a};
2
+ //# sourceMappingURL=chunk-CSKZZOI2.js.map
@@ -0,0 +1,2 @@
1
+ import{a as d}from"./chunk-36ZQVP7F.js";import{a as m}from"./chunk-MJ47O7KH.js";import{a as l}from"./chunk-5TXQLK4G.js";import{a as n}from"./chunk-GSTOGDAJ.js";import{a as i}from"./chunk-6FLLFCBU.js";import*as o from"react";import v from"classnames";import{Slot as T}from"radix-ui";var M=o.forwardRef((c,f)=>{let{asChild:t,className:g,children:P,color:u,radius:b,material:r,panelBackground:e,tooltip:a,tooltipSide:B="top",tooltipAlign:y="center",tooltipDelayDuration:D,tooltipDisableHoverableContent:R,...C}=i(c,m,n),p=o.useMemo(()=>r??e,[r,e]);l(e);let h=o.useMemo(()=>t?T.Root:"span",[t]),s=o.createElement(h,{"data-accent-color":u,"data-radius":b,"data-material":p,"data-panel-background":p,...C,ref:f,className:v("rt-reset","rt-Badge",g)},P);return a?o.createElement(d,{content:a,side:B,align:y,delayDuration:D,disableHoverableContent:R},s):s});M.displayName="Badge";export{M as a};
2
+ //# sourceMappingURL=chunk-D5N627TH.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/badge.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { Slot } from 'radix-ui';\n\nimport { badgePropDefs } from './badge.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { Tooltip } from './tooltip.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\nimport { useDeprecatedPanelBackgroundWarning } from '../helpers/use-deprecation-warning.js';\n\ntype BadgeElement = React.ElementRef<'span'>;\ntype BadgeOwnProps = GetPropDefTypes<typeof badgePropDefs>;\n\n// Tooltip props that can be passed to Badge\ninterface BadgeTooltipProps {\n tooltip?: React.ReactNode;\n tooltipSide?: 'top' | 'right' | 'bottom' | 'left';\n tooltipAlign?: 'start' | 'center' | 'end';\n tooltipDelayDuration?: number;\n tooltipDisableHoverableContent?: boolean;\n}\n\ninterface BadgeProps\n extends ComponentPropsWithout<'span', RemovedProps>,\n MarginProps,\n BadgeOwnProps,\n BadgeTooltipProps {}\n\nconst Badge = React.forwardRef<BadgeElement, BadgeProps>((props, forwardedRef) => {\n const {\n asChild,\n className,\n children,\n color,\n radius,\n material,\n panelBackground,\n tooltip,\n tooltipSide = 'top',\n tooltipAlign = 'center',\n tooltipDelayDuration,\n tooltipDisableHoverableContent,\n ...badgeProps\n } = extractProps(props, badgePropDefs, marginPropDefs);\n\n // Memoize material calculation for performance\n const effectiveMaterial = React.useMemo(\n () => material ?? panelBackground,\n [material, panelBackground],\n );\n\n useDeprecatedPanelBackgroundWarning(panelBackground);\n\n // Memoize component variable to prevent unnecessary re-renders\n const Comp = React.useMemo(() => (asChild ? Slot.Root : 'span'), [asChild]);\n\n const badge = (\n <Comp\n data-accent-color={color}\n data-radius={radius}\n data-material={effectiveMaterial}\n data-panel-background={effectiveMaterial}\n {...badgeProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-Badge', className)}\n >\n {children}\n </Comp>\n );\n\n // If no tooltip is provided, return the badge as-is\n if (!tooltip) {\n return badge;\n }\n\n // Wrap with Tooltip when tooltip content is provided\n return (\n <Tooltip\n content={tooltip}\n side={tooltipSide}\n align={tooltipAlign}\n delayDuration={tooltipDelayDuration}\n disableHoverableContent={tooltipDisableHoverableContent}\n >\n {badge}\n </Tooltip>\n );\n});\nBadge.displayName = 'Badge';\n\nexport { Badge };\nexport type { BadgeProps };\n"],
5
+ "mappings": "wMAAA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,QAAAC,MAAY,WA8BrB,IAAMC,EAAc,aAAqC,CAACC,EAAOC,IAAiB,CAChF,GAAM,CACJ,QAAAC,EACA,UAAAC,EACA,SAAAC,EACA,MAAAC,EACA,OAAAC,EACA,SAAAC,EACA,gBAAAC,EACA,QAAAC,EACA,YAAAC,EAAc,MACd,aAAAC,EAAe,SACf,qBAAAC,EACA,+BAAAC,EACA,GAAGC,CACL,EAAIC,EAAaf,EAAOgB,EAAeC,CAAc,EAG/CC,EAA0B,UAC9B,IAAMX,GAAYC,EAClB,CAACD,EAAUC,CAAe,CAC5B,EAEAW,EAAoCX,CAAe,EAGnD,IAAMY,EAAa,UAAQ,IAAOlB,EAAUmB,EAAK,KAAO,OAAS,CAACnB,CAAO,CAAC,EAEpEoB,EACJ,gBAACF,EAAA,CACC,oBAAmBf,EACnB,cAAaC,EACb,gBAAeY,EACf,wBAAuBA,EACtB,GAAGJ,EACJ,IAAKb,EACL,UAAWsB,EAAW,WAAY,WAAYpB,CAAS,GAEtDC,CACH,EAIF,OAAKK,EAMH,gBAACe,EAAA,CACC,QAASf,EACT,KAAMC,EACN,MAAOC,EACP,cAAeC,EACf,wBAAyBC,GAExBS,CACH,EAbOA,CAeX,CAAC,EACDvB,EAAM,YAAc",
6
+ "names": ["React", "classNames", "Slot", "Badge", "props", "forwardedRef", "asChild", "className", "children", "color", "radius", "material", "panelBackground", "tooltip", "tooltipSide", "tooltipAlign", "tooltipDelayDuration", "tooltipDisableHoverableContent", "badgeProps", "extractProps", "badgePropDefs", "marginPropDefs", "effectiveMaterial", "useDeprecatedPanelBackgroundWarning", "Comp", "Slot", "badge", "classNames", "Tooltip"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as L,b as l,c as n}from"./chunk-WR7YLY46.js";import{a as m}from"./chunk-4OBMRJHC.js";import{a as i}from"./chunk-GSTOGDAJ.js";import{a as r}from"./chunk-KMPBTEZH.js";import{a as R}from"./chunk-3XT5P2HO.js";var y={};R(y,{Item:()=>P,Label:()=>d,Root:()=>D,Value:()=>f});import p from"classnames";import*as t from"react";var D=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,L,i);return t.createElement(m,{asChild:!0},t.createElement("dl",{...o,ref:e,className:p("rt-DataListRoot",s)}))});D.displayName="DataList.Root";var P=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,l);return t.createElement("div",{...o,ref:e,className:p("rt-DataListItem",s)})});P.displayName="DataList.Item";var d=t.forwardRef((a,e)=>{let{className:s,color:o,...c}=r(a,n);return t.createElement("dt",{...c,"data-accent-color":o,ref:e,className:p("rt-DataListLabel",s)})});d.displayName="DataList.Label";var f=t.forwardRef(({children:a,className:e,...s},o)=>t.createElement("dd",{...s,ref:o,className:p(e,"rt-DataListValue")},a));f.displayName="DataList.Value";export{D as a,P as b,d as c,f as d,y as e};
2
- //# sourceMappingURL=chunk-ADYTQCZX.js.map
1
+ import{a as L,b as l,c as n}from"./chunk-WR7YLY46.js";import{a as m}from"./chunk-H7ST535H.js";import{a as i}from"./chunk-GSTOGDAJ.js";import{a as r}from"./chunk-6FLLFCBU.js";import{a as R}from"./chunk-3XT5P2HO.js";var y={};R(y,{Item:()=>P,Label:()=>d,Root:()=>D,Value:()=>f});import p from"classnames";import*as t from"react";var D=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,L,i);return t.createElement(m,{asChild:!0},t.createElement("dl",{...o,ref:e,className:p("rt-DataListRoot",s)}))});D.displayName="DataList.Root";var P=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,l);return t.createElement("div",{...o,ref:e,className:p("rt-DataListItem",s)})});P.displayName="DataList.Item";var d=t.forwardRef((a,e)=>{let{className:s,color:o,...c}=r(a,n);return t.createElement("dt",{...c,"data-accent-color":o,ref:e,className:p("rt-DataListLabel",s)})});d.displayName="DataList.Label";var f=t.forwardRef(({children:a,className:e,...s},o)=>t.createElement("dd",{...s,ref:o,className:p(e,"rt-DataListValue")},a));f.displayName="DataList.Value";export{D as a,P as b,d as c,f as d,y as e};
2
+ //# sourceMappingURL=chunk-D6B7IMZU.js.map
@@ -0,0 +1,2 @@
1
+ import{a as T}from"./chunk-E67CIG6A.js";import{a as y}from"./chunk-GJSGKE7B.js";import{b as K,c as A,d as S,e as j,f as F}from"./chunk-IX5HIHVI.js";import{a as H}from"./chunk-MJJ7XDIP.js";import{b as V,c as h}from"./chunk-LOGJJF4I.js";import{a as B}from"./chunk-5TXQLK4G.js";import{a as C}from"./chunk-6FLLFCBU.js";import{b as M,c as G,d as L,e as W,f as O}from"./chunk-HUKPWYG2.js";import{d as _,g as b,h as f,i as I,j as g}from"./chunk-ZY6SQWHT.js";import{a as z}from"./chunk-QCNUTT4R.js";import{a as pe}from"./chunk-3XT5P2HO.js";var me={};pe(me,{CheckboxItem:()=>oe,Content:()=>U,Group:()=>Z,Item:()=>Y,Label:()=>X,RadioGroup:()=>$,RadioItem:()=>ee,Root:()=>q,Separator:()=>x,Sub:()=>ne,SubContent:()=>te,SubTrigger:()=>re,Trigger:()=>J,TriggerIcon:()=>ae});import*as e from"react";import d from"classnames";import{DropdownMenu as u,Slot as ue}from"radix-ui";var q=n=>e.createElement(u.Root,{...n});q.displayName="DropdownMenu.Root";var J=e.forwardRef(({children:n,...o},r)=>e.createElement(u.Trigger,{...o,ref:r,asChild:!0},H(n)));J.displayName="DropdownMenu.Trigger";function de({children:n}){let o=f();return!o||o.behavior==="cascade"?e.createElement(e.Fragment,null,n):e.createElement("div",{className:"rt-DropdownMenuDrillDownRoot","data-drill-down-active":o.isRoot?void 0:!0,"data-animation-direction":o.animationDirection??void 0},n)}var Q=e.createContext({}),U=e.forwardRef((n,o)=>{let r=V();B(n.panelBackground);let a=n.material??n.panelBackground??r.panelBackground,t=e.useMemo(()=>({material:a,accentColor:r.accentColor}),[a,r.accentColor]),{size:s=M.size.default,variant:p=M.variant.default,highContrast:m=M.highContrast.default,material:i=t.material,submenuBehavior:l,virtualized:D=!1}=n,{className:w,children:c,color:P,container:N,forceMount:R,material:E,panelBackground:le,submenuBehavior:De,virtualized:we,...ie}=C(n,M),v=e.useMemo(()=>P||t.accentColor,[P,t.accentColor]),k=e.createElement(z,{size:s},e.createElement(Q.Provider,{value:e.useMemo(()=>({size:s,variant:p,color:v,highContrast:m,material:i}),[s,p,v,m,i])},e.createElement(_,{submenuBehavior:l},e.createElement(de,null,c))));return e.createElement(u.Portal,{container:N,forceMount:R},e.createElement(h,{asChild:!0},e.createElement(u.Content,{"data-accent-color":v,"data-material":i,"data-panel-background":i,align:"start",sideOffset:4,collisionPadding:10,...ie,asChild:!1,ref:o,className:d("rt-PopperContent","rt-BaseMenuContent","rt-DropdownMenuContent",w)},D?e.createElement("div",{className:d("rt-BaseMenuViewport","rt-DropdownMenuViewport","rt-virtualized")},k):e.createElement(y,{type:"auto"},e.createElement("div",{className:d("rt-BaseMenuViewport","rt-DropdownMenuViewport")},k)))))});U.displayName="DropdownMenu.Content";var X=e.forwardRef(({className:n,...o},r)=>e.createElement(u.Label,{...o,asChild:!1,ref:r,className:d("rt-BaseMenuLabel","rt-DropdownMenuLabel",n)}));X.displayName="DropdownMenu.Label";var Y=e.forwardRef((n,o)=>{let{className:r,children:a,color:t=L.color.default,shortcut:s,...p}=n;return e.createElement(u.Item,{"data-accent-color":t,...p,ref:o,className:d("rt-reset","rt-BaseMenuItem","rt-DropdownMenuItem",r)},e.createElement(ue.Slottable,null,a),s&&e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(T,{size:"1"},s)))});Y.displayName="DropdownMenu.Item";var Z=e.forwardRef(({className:n,...o},r)=>e.createElement(u.Group,{...o,asChild:!1,ref:r,className:d("rt-BaseMenuGroup","rt-DropdownMenuGroup",n)}));Z.displayName="DropdownMenu.Group";var $=e.forwardRef(({className:n,...o},r)=>e.createElement(u.RadioGroup,{...o,asChild:!1,ref:r,className:d("rt-BaseMenuRadioGroup","rt-DropdownMenuRadioGroup",n)}));$.displayName="DropdownMenu.RadioGroup";var ee=e.forwardRef((n,o)=>{let{children:r,className:a,color:t=O.color.default,...s}=n;return e.createElement(u.RadioItem,{...s,asChild:!1,ref:o,"data-accent-color":t,className:d("rt-BaseMenuItem","rt-BaseMenuRadioItem","rt-DropdownMenuItem","rt-DropdownMenuRadioItem",a)},r,e.createElement(u.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator"},e.createElement(F,{className:"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon"})))});ee.displayName="DropdownMenu.RadioItem";var oe=e.forwardRef((n,o)=>{let{children:r,className:a,shortcut:t,color:s=W.color.default,...p}=n;return e.createElement(u.CheckboxItem,{...p,asChild:!1,ref:o,"data-accent-color":s,className:d("rt-BaseMenuItem","rt-BaseMenuCheckboxItem","rt-DropdownMenuItem","rt-DropdownMenuCheckboxItem",a)},r,e.createElement(u.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator"},e.createElement(K,{className:"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon"})),t&&e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(T,{size:"1"},t)))});oe.displayName="DropdownMenu.CheckboxItem";function se(){return e.useId()}var ne=({label:n="Back",...o})=>{let r=f(),a=se(),t=e.useMemo(()=>({id:a,label:n}),[a,n]);return r?.behavior==="drill-down"?e.createElement(I.Provider,{value:t},o.children):e.createElement(I.Provider,{value:t},e.createElement(u.Sub,{...o}))};ne.displayName="DropdownMenu.Sub";var re=e.forwardRef((n,o)=>{let{className:r,children:a,onClick:t,...s}=n,p=b(),m=f(),i=g(),l=e.useRef(t);l.current=t;let D=e.useCallback(c=>{c.preventDefault(),i&&p&&p.push(i.id),l.current?.(c)},[i,p]),w=e.useCallback(c=>{(c.key==="Enter"||c.key===" ")&&(c.preventDefault(),i&&p&&p.push(i.id))},[i,p]);return m?.behavior==="drill-down"&&i?e.createElement("div",{role:"menuitem",tabIndex:0,ref:o,onClick:D,onKeyDown:w,className:d("rt-reset","rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-DropdownMenuItem","rt-DropdownMenuSubTrigger","rt-DropdownMenuDrillDownSubTrigger",r)},a,e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(S,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubtriggerIcon"}))):e.createElement(u.SubTrigger,{...s,onClick:t,asChild:!1,ref:o,className:d("rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-DropdownMenuItem","rt-DropdownMenuSubTrigger",r)},a,e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(S,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubtriggerIcon"})))});re.displayName="DropdownMenu.SubTrigger";var x=e.forwardRef(({className:n,...o},r)=>e.createElement(u.Separator,{...o,asChild:!1,ref:r,className:d("rt-BaseMenuSeparator","rt-DropdownMenuSeparator",n)}));x.displayName="DropdownMenu.Separator";function ce({label:n}){let{pop:o}=b()??{},r=e.useCallback(t=>{t.preventDefault(),o?.()},[o]),a=e.useCallback(t=>{(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),o?.())},[o]);return e.createElement("div",{role:"menuitem",tabIndex:0,onClick:r,onKeyDown:a,className:d("rt-reset","rt-BaseMenuItem","rt-DropdownMenuItem","rt-DropdownMenuDrillDownBackItem")},e.createElement(j,{className:"rt-DropdownMenuDrillDownBackIcon"}),e.createElement("span",{className:"rt-DropdownMenuDrillDownBackLabel"},n))}var te=e.forwardRef((n,o)=>{let{size:r,variant:a,color:t,highContrast:s,material:p}=e.useContext(Q),m=f(),i=g(),{className:l,children:D,container:w,forceMount:c,material:P,panelBackground:N,...R}=C({size:r,variant:a,color:t,highContrast:s,material:p,...n},G);if(m?.behavior==="drill-down"&&i){let E=m.isActive(i.id);return e.createElement("div",{ref:o,role:"menu","aria-label":typeof i.label=="string"?i.label:void 0,"data-drill-down-active":E?!0:void 0,"data-animation-direction":m.animationDirection??void 0,className:d("rt-DropdownMenuDrillDownPanel",l)},e.createElement(ce,{label:i.label}),e.createElement(x,null),D)}return e.createElement(u.Portal,{container:w,forceMount:c},e.createElement(h,{asChild:!0},e.createElement(u.SubContent,{"data-accent-color":t,"data-material":p,"data-panel-background":p,alignOffset:-Number(r)*4,sideOffset:1,collisionPadding:10,...R,asChild:!1,ref:o,className:d("rt-PopperContent","rt-BaseMenuContent","rt-BaseMenuSubContent","rt-DropdownMenuContent","rt-DropdownMenuSubContent",l)},e.createElement(y,{type:"auto"},e.createElement("div",{className:d("rt-BaseMenuViewport","rt-DropdownMenuViewport")},D)))))});te.displayName="DropdownMenu.SubContent";var ae=e.forwardRef((n,o)=>e.createElement(A,{...n,ref:o,className:"rt-DropdownMenuTriggerIcon"}));ae.displayName="DropdownMenu.TriggerIcon";export{q as a,J as b,U as c,X as d,Y as e,Z as f,$ as g,ee as h,oe as i,ne as j,re as k,x as l,te as m,ae as n,me as o};
2
+ //# sourceMappingURL=chunk-DL2O3GKG.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/dropdown-menu.tsx"],
4
+ "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { DropdownMenu as DropdownMenuPrimitive, Slot } from 'radix-ui';\n\nimport { ScrollArea } from './scroll-area.js';\nimport {\n dropdownMenuContentPropDefs,\n dropdownMenuSubContentPropDefs,\n dropdownMenuItemPropDefs,\n dropdownMenuCheckboxItemPropDefs,\n dropdownMenuRadioItemPropDefs,\n} from './dropdown-menu.props.js';\nimport { Theme, useThemeContext } from './theme.js';\nimport { ChevronDownIcon, ThickCheckIcon, ThickChevronLeftIcon, ThickChevronRightIcon, ThickDotIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport {\n DrillDownProvider,\n SubContext,\n useDrillDownActionsOptional,\n useDrillDownStateOptional,\n useSubContext,\n} from './_internal/dropdown-menu-drill-down.js';\nimport { MenuProvider } from './_internal/menu-context.js';\nimport type { SubmenuBehavior } from './_internal/dropdown-menu-drill-down.js';\nimport { requireReactElement } from '../helpers/require-react-element.js';\nimport { Kbd } from './kbd.js';\n\nimport type { IconProps } from './icons.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes, Responsive } from '../props/prop-def.js';\nimport { useDeprecatedPanelBackgroundWarning } from '../helpers/use-deprecation-warning.js';\n\ninterface DropdownMenuRootProps\n extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Root> {}\nconst DropdownMenuRoot: React.FC<DropdownMenuRootProps> = (props) => (\n <DropdownMenuPrimitive.Root {...props} />\n);\nDropdownMenuRoot.displayName = 'DropdownMenu.Root';\n\ntype DropdownMenuTriggerElement = React.ElementRef<typeof DropdownMenuPrimitive.Trigger>;\ninterface DropdownMenuTriggerProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Trigger, RemovedProps> {}\nconst DropdownMenuTrigger = React.forwardRef<DropdownMenuTriggerElement, DropdownMenuTriggerProps>(\n ({ children, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Trigger {...props} ref={forwardedRef} asChild>\n {requireReactElement(children)}\n </DropdownMenuPrimitive.Trigger>\n ),\n);\nDropdownMenuTrigger.displayName = 'DropdownMenu.Trigger';\n\n/**\n * Internal component that wraps root menu items and handles visibility in drill-down mode.\n * In drill-down mode, this hides when a submenu is active.\n * Uses state-only hook to subscribe only to state changes, not action changes.\n */\nfunction DrillDownRoot({ children }: { children: React.ReactNode }) {\n const drillDownState = useDrillDownStateOptional();\n\n // In cascade mode or when no drill-down context, always show\n if (!drillDownState || drillDownState.behavior === 'cascade') {\n return <>{children}</>;\n }\n\n // In drill-down mode, hide root when a submenu is active\n return (\n <div\n className=\"rt-DropdownMenuDrillDownRoot\"\n data-drill-down-active={drillDownState.isRoot ? undefined : true}\n data-animation-direction={drillDownState.animationDirection ?? undefined}\n >\n {children}\n </div>\n );\n}\n\ntype DropdownMenuContentOwnProps = GetPropDefTypes<typeof dropdownMenuContentPropDefs> & {\n /**\n * Controls how submenus behave.\n * - `cascade`: Default cascading behavior where submenus open to the side (portal-based)\n * - `drill-down`: Mobile-friendly behavior where submenus replace the content inline\n * Supports responsive values: `{ initial: 'drill-down', md: 'cascade' }`\n */\n submenuBehavior?: Responsive<SubmenuBehavior>;\n /**\n * When true, skips the ScrollArea wrapper to allow VirtualMenu to handle its own scrolling.\n * Use this when rendering virtualized lists inside the dropdown.\n */\n virtualized?: boolean;\n};\ntype DropdownMenuContentContextValue = Omit<DropdownMenuContentOwnProps, 'submenuBehavior'>;\nconst DropdownMenuContentContext = React.createContext<DropdownMenuContentContextValue>({});\ntype DropdownMenuContentElement = React.ElementRef<typeof DropdownMenuPrimitive.Content>;\ninterface DropdownMenuContentProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Content, RemovedProps>,\n DropdownMenuContentContextValue {\n container?: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Portal>['container'];\n /**\n * Controls how submenus behave.\n * - `cascade`: Default cascading behavior where submenus open to the side (portal-based)\n * - `drill-down`: Mobile-friendly behavior where submenus replace the content inline\n * Supports responsive values: `{ initial: 'drill-down', md: 'cascade' }`\n */\n submenuBehavior?: Responsive<SubmenuBehavior>;\n /**\n * When true, skips the ScrollArea wrapper to allow VirtualMenu to handle its own scrolling.\n * Use this when rendering virtualized lists inside the dropdown.\n */\n virtualized?: boolean;\n}\nconst DropdownMenuContent = React.forwardRef<DropdownMenuContentElement, DropdownMenuContentProps>(\n (props, forwardedRef) => {\n const themeContext = useThemeContext();\n\n useDeprecatedPanelBackgroundWarning(props.panelBackground);\n\n // Material takes precedence over panelBackground\n const effectiveMaterial =\n props.material ?? props.panelBackground ?? themeContext.panelBackground;\n\n // Memoize theme context values to prevent unnecessary re-renders\n const memoizedThemeContext = React.useMemo(\n () => ({\n material: effectiveMaterial,\n accentColor: themeContext.accentColor,\n }),\n [effectiveMaterial, themeContext.accentColor],\n );\n\n const {\n size = dropdownMenuContentPropDefs.size.default,\n variant = dropdownMenuContentPropDefs.variant.default,\n highContrast = dropdownMenuContentPropDefs.highContrast.default,\n material = memoizedThemeContext.material,\n submenuBehavior,\n virtualized = false,\n } = props;\n const {\n className,\n children,\n color,\n container,\n forceMount,\n material: _,\n panelBackground: __,\n submenuBehavior: ___,\n virtualized: ____,\n ...contentProps\n } = extractProps(props, dropdownMenuContentPropDefs);\n\n // Memoize color resolution to prevent unnecessary re-renders\n const resolvedColor = React.useMemo(\n () => color || memoizedThemeContext.accentColor,\n [color, memoizedThemeContext.accentColor],\n );\n const contentBody = (\n <MenuProvider size={size}>\n <DropdownMenuContentContext.Provider\n value={React.useMemo(\n () => ({ size, variant, color: resolvedColor, highContrast, material }),\n [size, variant, resolvedColor, highContrast, material],\n )}\n >\n <DrillDownProvider submenuBehavior={submenuBehavior}>\n <DrillDownRoot>{children}</DrillDownRoot>\n </DrillDownProvider>\n </DropdownMenuContentContext.Provider>\n </MenuProvider>\n );\n\n return (\n <DropdownMenuPrimitive.Portal container={container} forceMount={forceMount}>\n <Theme asChild>\n <DropdownMenuPrimitive.Content\n data-accent-color={resolvedColor}\n data-material={material}\n data-panel-background={material}\n align=\"start\"\n sideOffset={4}\n collisionPadding={10}\n {...contentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-DropdownMenuContent',\n className,\n )}\n >\n {virtualized ? (\n <div className={classNames('rt-BaseMenuViewport', 'rt-DropdownMenuViewport', 'rt-virtualized')}>\n {contentBody}\n </div>\n ) : (\n <ScrollArea type=\"auto\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-DropdownMenuViewport')}>\n {contentBody}\n </div>\n </ScrollArea>\n )}\n </DropdownMenuPrimitive.Content>\n </Theme>\n </DropdownMenuPrimitive.Portal>\n );\n },\n);\nDropdownMenuContent.displayName = 'DropdownMenu.Content';\n\ntype DropdownMenuLabelElement = React.ElementRef<typeof DropdownMenuPrimitive.Label>;\ninterface DropdownMenuLabelProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Label, RemovedProps> {}\nconst DropdownMenuLabel = React.forwardRef<DropdownMenuLabelElement, DropdownMenuLabelProps>(\n ({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Label\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuLabel', 'rt-DropdownMenuLabel', className)}\n />\n ),\n);\nDropdownMenuLabel.displayName = 'DropdownMenu.Label';\n\ntype DropdownMenuItemElement = React.ElementRef<typeof DropdownMenuPrimitive.Item>;\ntype DropdownMenuItemOwnProps = GetPropDefTypes<typeof dropdownMenuItemPropDefs>;\ninterface DropdownMenuItemProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Item, RemovedProps>,\n DropdownMenuItemOwnProps {}\nconst DropdownMenuItem = React.forwardRef<DropdownMenuItemElement, DropdownMenuItemProps>(\n (props, forwardedRef) => {\n const {\n className,\n children,\n color = dropdownMenuItemPropDefs.color.default,\n shortcut,\n ...itemProps\n } = props;\n return (\n <DropdownMenuPrimitive.Item\n data-accent-color={color}\n {...itemProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-DropdownMenuItem', className)}\n >\n <Slot.Slottable>{children}</Slot.Slottable>\n {shortcut && (\n <div className=\"rt-BaseMenuShortcut rt-DropdownMenuShortcut\">\n <Kbd size=\"1\">{shortcut}</Kbd>\n </div>\n )}\n </DropdownMenuPrimitive.Item>\n );\n },\n);\nDropdownMenuItem.displayName = 'DropdownMenu.Item';\n\ntype DropdownMenuGroupElement = React.ElementRef<typeof DropdownMenuPrimitive.Group>;\ninterface DropdownMenuGroupProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Group, RemovedProps> {}\nconst DropdownMenuGroup = React.forwardRef<DropdownMenuGroupElement, DropdownMenuGroupProps>(\n ({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Group\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuGroup', 'rt-DropdownMenuGroup', className)}\n />\n ),\n);\nDropdownMenuGroup.displayName = 'DropdownMenu.Group';\n\ntype DropdownMenuRadioGroupElement = React.ElementRef<typeof DropdownMenuPrimitive.RadioGroup>;\ninterface DropdownMenuRadioGroupProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.RadioGroup, RemovedProps> {}\nconst DropdownMenuRadioGroup = React.forwardRef<\n DropdownMenuRadioGroupElement,\n DropdownMenuRadioGroupProps\n>(({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.RadioGroup\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuRadioGroup', 'rt-DropdownMenuRadioGroup', className)}\n />\n));\nDropdownMenuRadioGroup.displayName = 'DropdownMenu.RadioGroup';\n\ntype DropdownMenuRadioItemElement = React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>;\ntype DropdownMenuRadioItemOwnProps = GetPropDefTypes<typeof dropdownMenuRadioItemPropDefs>;\ninterface DropdownMenuRadioItemProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.RadioItem, RemovedProps>,\n DropdownMenuRadioItemOwnProps {}\nconst DropdownMenuRadioItem = React.forwardRef<\n DropdownMenuRadioItemElement,\n DropdownMenuRadioItemProps\n>((props, forwardedRef) => {\n const {\n children,\n className,\n color = dropdownMenuRadioItemPropDefs.color.default,\n ...itemProps\n } = props;\n return (\n <DropdownMenuPrimitive.RadioItem\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n data-accent-color={color}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuRadioItem',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuRadioItem',\n className,\n )}\n >\n {children}\n <DropdownMenuPrimitive.ItemIndicator className=\"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator\">\n <ThickDotIcon className=\"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </DropdownMenuPrimitive.RadioItem>\n );\n});\nDropdownMenuRadioItem.displayName = 'DropdownMenu.RadioItem';\n\ntype DropdownMenuCheckboxItemElement = React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>;\ntype DropdownMenuCheckboxItemOwnProps = GetPropDefTypes<typeof dropdownMenuCheckboxItemPropDefs>;\ninterface DropdownMenuCheckboxItemProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.CheckboxItem, RemovedProps>,\n DropdownMenuCheckboxItemOwnProps {}\nconst DropdownMenuCheckboxItem = React.forwardRef<\n DropdownMenuCheckboxItemElement,\n DropdownMenuCheckboxItemProps\n>((props, forwardedRef) => {\n const {\n children,\n className,\n shortcut,\n color = dropdownMenuCheckboxItemPropDefs.color.default,\n ...itemProps\n } = props;\n return (\n <DropdownMenuPrimitive.CheckboxItem\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n data-accent-color={color}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuCheckboxItem',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuCheckboxItem',\n className,\n )}\n >\n {children}\n <DropdownMenuPrimitive.ItemIndicator className=\"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator\">\n <ThickCheckIcon className=\"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon\" />\n </DropdownMenuPrimitive.ItemIndicator>\n {shortcut && (\n <div className=\"rt-BaseMenuShortcut rt-DropdownMenuShortcut\">\n <Kbd size=\"1\">{shortcut}</Kbd>\n </div>\n )}\n </DropdownMenuPrimitive.CheckboxItem>\n );\n});\nDropdownMenuCheckboxItem.displayName = 'DropdownMenu.CheckboxItem';\n\n// Generate unique submenu IDs using React 18's useId for SSR safety\nfunction useSubId() {\n return React.useId();\n}\n\ninterface DropdownMenuSubProps\n extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Sub> {\n /**\n * Label displayed in the back button when using drill-down mode.\n * If not provided, defaults to \"Back\".\n */\n label?: React.ReactNode;\n}\nconst DropdownMenuSub: React.FC<DropdownMenuSubProps> = ({ label = 'Back', ...props }) => {\n // Use state-only hook since we only need behavior check\n const drillDownState = useDrillDownStateOptional();\n const subId = useSubId();\n\n // Create context value for SubContent and SubTrigger\n const subContextValue = React.useMemo(\n () => ({ id: subId, label }),\n [subId, label]\n );\n\n // In drill-down mode, we don't use Radix's Sub component\n // We just provide the SubContext and render children\n if (drillDownState?.behavior === 'drill-down') {\n return (\n <SubContext.Provider value={subContextValue}>\n {props.children}\n </SubContext.Provider>\n );\n }\n\n // In cascade mode, use Radix's Sub component normally\n return (\n <SubContext.Provider value={subContextValue}>\n <DropdownMenuPrimitive.Sub {...props} />\n </SubContext.Provider>\n );\n};\nDropdownMenuSub.displayName = 'DropdownMenu.Sub';\n\ntype DropdownMenuSubTriggerElement = React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>;\ninterface DropdownMenuSubTriggerProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.SubTrigger, RemovedProps> {}\nconst DropdownMenuSubTrigger = React.forwardRef<\n DropdownMenuSubTriggerElement,\n DropdownMenuSubTriggerProps\n>((props, forwardedRef) => {\n const { className, children, onClick, ...subTriggerProps } = props;\n // Use split hooks: actions for stable push callback, state only for behavior check\n const drillDownActions = useDrillDownActionsOptional();\n const drillDownState = useDrillDownStateOptional();\n const subContext = useSubContext();\n\n // Store onClick in ref to avoid recreating handlers when onClick changes\n const onClickRef = React.useRef(onClick);\n onClickRef.current = onClick;\n\n // Stable click handler - only depends on stable refs\n const handleClick = React.useCallback((e: React.MouseEvent<HTMLDivElement>) => {\n e.preventDefault();\n if (subContext && drillDownActions) {\n drillDownActions.push(subContext.id);\n }\n (onClickRef.current as React.MouseEventHandler<HTMLDivElement> | undefined)?.(e);\n }, [subContext, drillDownActions]);\n\n // Stable keydown handler\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n if (subContext && drillDownActions) {\n drillDownActions.push(subContext.id);\n }\n }\n }, [subContext, drillDownActions]);\n\n // In drill-down mode, render a button that navigates to the submenu\n if (drillDownState?.behavior === 'drill-down' && subContext) {\n return (\n <div\n role=\"menuitem\"\n tabIndex={0}\n ref={forwardedRef as React.Ref<HTMLDivElement>}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n className={classNames(\n 'rt-reset',\n 'rt-BaseMenuItem',\n 'rt-BaseMenuSubTrigger',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuSubTrigger',\n 'rt-DropdownMenuDrillDownSubTrigger',\n className,\n )}\n >\n {children}\n <div className=\"rt-BaseMenuShortcut rt-DropdownMenuShortcut\">\n <ThickChevronRightIcon className=\"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubtriggerIcon\" />\n </div>\n </div>\n );\n }\n\n // In cascade mode, use Radix's SubTrigger\n return (\n <DropdownMenuPrimitive.SubTrigger\n {...subTriggerProps}\n onClick={onClick as React.MouseEventHandler<HTMLDivElement> | undefined}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuSubTrigger',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuSubTrigger',\n className,\n )}\n >\n {children}\n <div className=\"rt-BaseMenuShortcut rt-DropdownMenuShortcut\">\n <ThickChevronRightIcon className=\"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubtriggerIcon\" />\n </div>\n </DropdownMenuPrimitive.SubTrigger>\n );\n});\nDropdownMenuSubTrigger.displayName = 'DropdownMenu.SubTrigger';\n\n// Separator is defined here (before SubContent) because it's used in drill-down mode\ntype DropdownMenuSeparatorElement = React.ElementRef<typeof DropdownMenuPrimitive.Separator>;\ninterface DropdownMenuSeparatorProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Separator, RemovedProps> {}\nconst DropdownMenuSeparator = React.forwardRef<\n DropdownMenuSeparatorElement,\n DropdownMenuSeparatorProps\n>(({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Separator\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuSeparator', 'rt-DropdownMenuSeparator', className)}\n />\n));\nDropdownMenuSeparator.displayName = 'DropdownMenu.Separator';\n\n/**\n * Internal component for the drill-down back button.\n * Uses actions-only hook since it only needs to call pop(), never reads state.\n * This prevents re-renders when drill-down state changes.\n */\nfunction DrillDownBackItem({ label }: { label: React.ReactNode }) {\n // Use actions-only hook for stable pop callback - prevents re-renders on stack changes\n const { pop } = useDrillDownActionsOptional() ?? {};\n\n // Stable click handler\n const handleClick = React.useCallback((e: React.MouseEvent<HTMLDivElement>) => {\n e.preventDefault();\n pop?.();\n }, [pop]);\n\n // Stable keydown handler\n const handleKeyDown = React.useCallback((e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n pop?.();\n }\n }, [pop]);\n\n return (\n <div\n role=\"menuitem\"\n tabIndex={0}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n className={classNames(\n 'rt-reset',\n 'rt-BaseMenuItem',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuDrillDownBackItem',\n )}\n >\n <ThickChevronLeftIcon className=\"rt-DropdownMenuDrillDownBackIcon\" />\n <span className=\"rt-DropdownMenuDrillDownBackLabel\">{label}</span>\n </div>\n );\n}\n\ntype DropdownMenuSubContentElement = React.ElementRef<typeof DropdownMenuPrimitive.SubContent>;\ninterface DropdownMenuSubContentProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.SubContent, RemovedProps>,\n DropdownMenuContentContextValue {\n container?: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Portal>['container'];\n}\nconst DropdownMenuSubContent = React.forwardRef<\n DropdownMenuSubContentElement,\n DropdownMenuSubContentProps\n>((props, forwardedRef) => {\n // Get context values directly - memoization at provider level handles stability\n const { size, variant, color, highContrast, material } = React.useContext(\n DropdownMenuContentContext,\n );\n // Use state-only hook since we only need behavior and isActive (no actions)\n const drillDownState = useDrillDownStateOptional();\n const subContext = useSubContext();\n\n const {\n className,\n children,\n container,\n forceMount,\n material: _,\n panelBackground: __,\n ...subContentProps\n } = extractProps(\n { size, variant, color, highContrast, material, ...props },\n dropdownMenuSubContentPropDefs,\n );\n\n // In drill-down mode, render inline instead of in a portal\n if (drillDownState?.behavior === 'drill-down' && subContext) {\n const isActive = drillDownState.isActive(subContext.id);\n\n return (\n <div\n ref={forwardedRef as React.Ref<HTMLDivElement>}\n role=\"menu\"\n aria-label={typeof subContext.label === 'string' ? subContext.label : undefined}\n data-drill-down-active={isActive ? true : undefined}\n data-animation-direction={drillDownState.animationDirection ?? undefined}\n className={classNames(\n 'rt-DropdownMenuDrillDownPanel',\n className,\n )}\n >\n <DrillDownBackItem label={subContext.label} />\n <DropdownMenuSeparator />\n {children}\n </div>\n );\n }\n\n // In cascade mode, use Portal and Radix's SubContent\n return (\n <DropdownMenuPrimitive.Portal container={container} forceMount={forceMount}>\n <Theme asChild>\n <DropdownMenuPrimitive.SubContent\n data-accent-color={color}\n data-material={material}\n data-panel-background={material}\n alignOffset={-Number(size) * 4}\n // Side offset accounts for the outer solid box-shadow\n sideOffset={1}\n collisionPadding={10}\n {...subContentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-BaseMenuSubContent',\n 'rt-DropdownMenuContent',\n 'rt-DropdownMenuSubContent',\n className,\n )}\n >\n <ScrollArea type=\"auto\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-DropdownMenuViewport')}>\n {children}\n </div>\n </ScrollArea>\n </DropdownMenuPrimitive.SubContent>\n </Theme>\n </DropdownMenuPrimitive.Portal>\n );\n});\nDropdownMenuSubContent.displayName = 'DropdownMenu.SubContent';\n\ntype DropdownMenuTriggerIconElement = React.ElementRef<'svg'>;\ninterface DropdownMenuTriggerIconProps extends IconProps {}\nconst DropdownMenuTriggerIcon = React.forwardRef<\n DropdownMenuTriggerIconElement,\n DropdownMenuTriggerIconProps\n>((props, forwardedRef) => (\n <ChevronDownIcon {...props} ref={forwardedRef} className=\"rt-DropdownMenuTriggerIcon\" />\n));\nDropdownMenuTriggerIcon.displayName = 'DropdownMenu.TriggerIcon';\n\nexport {\n DropdownMenuRoot as Root,\n DropdownMenuTrigger as Trigger,\n DropdownMenuTriggerIcon as TriggerIcon,\n DropdownMenuContent as Content,\n DropdownMenuLabel as Label,\n DropdownMenuItem as Item,\n DropdownMenuGroup as Group,\n DropdownMenuRadioGroup as RadioGroup,\n DropdownMenuRadioItem as RadioItem,\n DropdownMenuCheckboxItem as CheckboxItem,\n DropdownMenuSub as Sub,\n DropdownMenuSubTrigger as SubTrigger,\n DropdownMenuSubContent as SubContent,\n DropdownMenuSeparator as Separator,\n};\n\nexport type {\n DropdownMenuRootProps as RootProps,\n DropdownMenuTriggerProps as TriggerProps,\n DropdownMenuTriggerIconProps as TriggerIconProps,\n DropdownMenuContentProps as ContentProps,\n DropdownMenuLabelProps as LabelProps,\n DropdownMenuItemProps as ItemProps,\n DropdownMenuGroupProps as GroupProps,\n DropdownMenuRadioGroupProps as RadioGroupProps,\n DropdownMenuRadioItemProps as RadioItemProps,\n DropdownMenuCheckboxItemProps as CheckboxItemProps,\n DropdownMenuSubProps as SubProps,\n DropdownMenuSubTriggerProps as SubTriggerProps,\n DropdownMenuSubContentProps as SubContentProps,\n DropdownMenuSeparatorProps as SeparatorProps,\n SubmenuBehavior,\n};\n"],
5
+ "mappings": "ohBAAA,IAAAA,GAAA,GAAAC,GAAAD,GAAA,kBAAAE,GAAA,YAAAC,EAAA,UAAAC,EAAA,SAAAC,EAAA,UAAAC,EAAA,eAAAC,EAAA,cAAAC,GAAA,SAAAC,EAAA,cAAAC,EAAA,QAAAC,GAAA,eAAAC,GAAA,eAAAC,GAAA,YAAAC,EAAA,gBAAAC,KAEA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,gBAAgBC,EAAuB,QAAAC,OAAY,WAgC5D,IAAMC,EAAqDC,GACzD,gBAACC,EAAsB,KAAtB,CAA4B,GAAGD,EAAO,EAEzCD,EAAiB,YAAc,oBAK/B,IAAMG,EAA4B,aAChC,CAAC,CAAE,SAAAC,EAAU,GAAGH,CAAM,EAAGI,IACvB,gBAACH,EAAsB,QAAtB,CAA+B,GAAGD,EAAO,IAAKI,EAAc,QAAO,IACjEC,EAAoBF,CAAQ,CAC/B,CAEJ,EACAD,EAAoB,YAAc,uBAOlC,SAASI,GAAc,CAAE,SAAAH,CAAS,EAAkC,CAClE,IAAMI,EAAiBC,EAA0B,EAGjD,MAAI,CAACD,GAAkBA,EAAe,WAAa,UAC1C,gCAAGJ,CAAS,EAKnB,gBAAC,OACC,UAAU,+BACV,yBAAwBI,EAAe,OAAS,OAAY,GAC5D,2BAA0BA,EAAe,oBAAsB,QAE9DJ,CACH,CAEJ,CAiBA,IAAMM,EAAmC,gBAA+C,CAAC,CAAC,EAmBpFC,EAA4B,aAChC,CAACV,EAAOI,IAAiB,CACvB,IAAMO,EAAeC,EAAgB,EAErCC,EAAoCb,EAAM,eAAe,EAGzD,IAAMc,EACJd,EAAM,UAAYA,EAAM,iBAAmBW,EAAa,gBAGpDI,EAA6B,UACjC,KAAO,CACL,SAAUD,EACV,YAAaH,EAAa,WAC5B,GACA,CAACG,EAAmBH,EAAa,WAAW,CAC9C,EAEM,CACJ,KAAAK,EAAOC,EAA4B,KAAK,QACxC,QAAAC,EAAUD,EAA4B,QAAQ,QAC9C,aAAAE,EAAeF,EAA4B,aAAa,QACxD,SAAAG,EAAWL,EAAqB,SAChC,gBAAAM,EACA,YAAAC,EAAc,EAChB,EAAItB,EACE,CACJ,UAAAuB,EACA,SAAApB,EACA,MAAAqB,EACA,UAAAC,EACA,WAAAC,EACA,SAAUC,EACV,gBAAiBC,GACjB,gBAAiBC,GACjB,YAAaC,GACb,GAAGC,EACL,EAAIC,EAAahC,EAAOiB,CAA2B,EAG7CgB,EAAsB,UAC1B,IAAMT,GAAST,EAAqB,YACpC,CAACS,EAAOT,EAAqB,WAAW,CAC1C,EACMmB,EACJ,gBAACC,EAAA,CAAa,KAAMnB,GAClB,gBAACP,EAA2B,SAA3B,CACC,MAAa,UACX,KAAO,CAAE,KAAAO,EAAM,QAAAE,EAAS,MAAOe,EAAe,aAAAd,EAAc,SAAAC,CAAS,GACrE,CAACJ,EAAME,EAASe,EAAed,EAAcC,CAAQ,CACvD,GAEA,gBAACgB,EAAA,CAAkB,gBAAiBf,GAClC,gBAACf,GAAA,KAAeH,CAAS,CAC3B,CACF,CACF,EAGF,OACE,gBAACF,EAAsB,OAAtB,CAA6B,UAAWwB,EAAW,WAAYC,GAC9D,gBAACW,EAAA,CAAM,QAAO,IACZ,gBAACpC,EAAsB,QAAtB,CACC,oBAAmBgC,EACnB,gBAAeb,EACf,wBAAuBA,EACvB,MAAM,QACN,WAAY,EACZ,iBAAkB,GACjB,GAAGW,GACJ,QAAS,GACT,IAAK3B,EACL,UAAWkC,EACT,mBACA,qBACA,yBACAf,CACF,GAECD,EACC,gBAAC,OAAI,UAAWgB,EAAW,sBAAuB,0BAA2B,gBAAgB,GAC1FJ,CACH,EAEA,gBAACK,EAAA,CAAW,KAAK,QACf,gBAAC,OAAI,UAAWD,EAAW,sBAAuB,yBAAyB,GACxEJ,CACH,CACF,CAEJ,CACF,CACF,CAEJ,CACF,EACAxB,EAAoB,YAAc,uBAKlC,IAAM8B,EAA0B,aAC9B,CAAC,CAAE,UAAAjB,EAAW,GAAGvB,CAAM,EAAGI,IACxB,gBAACH,EAAsB,MAAtB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAWkC,EAAW,mBAAoB,uBAAwBf,CAAS,EAC7E,CAEJ,EACAiB,EAAkB,YAAc,qBAOhC,IAAMC,EAAyB,aAC7B,CAACzC,EAAOI,IAAiB,CACvB,GAAM,CACJ,UAAAmB,EACA,SAAApB,EACA,MAAAqB,EAAQkB,EAAyB,MAAM,QACvC,SAAAC,EACA,GAAGC,CACL,EAAI5C,EACJ,OACE,gBAACC,EAAsB,KAAtB,CACC,oBAAmBuB,EAClB,GAAGoB,EACJ,IAAKxC,EACL,UAAWkC,EAAW,WAAY,kBAAmB,sBAAuBf,CAAS,GAErF,gBAACsB,GAAK,UAAL,KAAgB1C,CAAS,EACzBwC,GACC,gBAAC,OAAI,UAAU,+CACb,gBAACG,EAAA,CAAI,KAAK,KAAKH,CAAS,CAC1B,CAEJ,CAEJ,CACF,EACAF,EAAiB,YAAc,oBAK/B,IAAMM,EAA0B,aAC9B,CAAC,CAAE,UAAAxB,EAAW,GAAGvB,CAAM,EAAGI,IACxB,gBAACH,EAAsB,MAAtB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAWkC,EAAW,mBAAoB,uBAAwBf,CAAS,EAC7E,CAEJ,EACAwB,EAAkB,YAAc,qBAKhC,IAAMC,EAA+B,aAGnC,CAAC,CAAE,UAAAzB,EAAW,GAAGvB,CAAM,EAAGI,IAC1B,gBAACH,EAAsB,WAAtB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAWkC,EAAW,wBAAyB,4BAA6Bf,CAAS,EACvF,CACD,EACDyB,EAAuB,YAAc,0BAOrC,IAAMC,GAA8B,aAGlC,CAACjD,EAAOI,IAAiB,CACzB,GAAM,CACJ,SAAAD,EACA,UAAAoB,EACA,MAAAC,EAAQ0B,EAA8B,MAAM,QAC5C,GAAGN,CACL,EAAI5C,EACJ,OACE,gBAACC,EAAsB,UAAtB,CACE,GAAG2C,EACJ,QAAS,GACT,IAAKxC,EACL,oBAAmBoB,EACnB,UAAWc,EACT,kBACA,uBACA,sBACA,2BACAf,CACF,GAECpB,EACD,gBAACF,EAAsB,cAAtB,CAAoC,UAAU,yDAC7C,gBAACkD,EAAA,CAAa,UAAU,gEAAgE,CAC1F,CACF,CAEJ,CAAC,EACDF,GAAsB,YAAc,yBAOpC,IAAMG,GAAiC,aAGrC,CAACpD,EAAOI,IAAiB,CACzB,GAAM,CACJ,SAAAD,EACA,UAAAoB,EACA,SAAAoB,EACA,MAAAnB,EAAQ6B,EAAiC,MAAM,QAC/C,GAAGT,CACL,EAAI5C,EACJ,OACE,gBAACC,EAAsB,aAAtB,CACE,GAAG2C,EACJ,QAAS,GACT,IAAKxC,EACL,oBAAmBoB,EACnB,UAAWc,EACT,kBACA,0BACA,sBACA,8BACAf,CACF,GAECpB,EACD,gBAACF,EAAsB,cAAtB,CAAoC,UAAU,yDAC7C,gBAACqD,EAAA,CAAe,UAAU,+DAA+D,CAC3F,EACCX,GACC,gBAAC,OAAI,UAAU,+CACb,gBAACG,EAAA,CAAI,KAAK,KAAKH,CAAS,CAC1B,CAEJ,CAEJ,CAAC,EACDS,GAAyB,YAAc,4BAGvC,SAASG,IAAW,CAClB,OAAa,QAAM,CACrB,CAUA,IAAMC,GAAkD,CAAC,CAAE,MAAAC,EAAQ,OAAQ,GAAGzD,CAAM,IAAM,CAExF,IAAMO,EAAiBC,EAA0B,EAC3CkD,EAAQH,GAAS,EAGjBI,EAAwB,UAC5B,KAAO,CAAE,GAAID,EAAO,MAAAD,CAAM,GAC1B,CAACC,EAAOD,CAAK,CACf,EAIA,OAAIlD,GAAgB,WAAa,aAE7B,gBAACqD,EAAW,SAAX,CAAoB,MAAOD,GACzB3D,EAAM,QACT,EAMF,gBAAC4D,EAAW,SAAX,CAAoB,MAAOD,GAC1B,gBAAC1D,EAAsB,IAAtB,CAA2B,GAAGD,EAAO,CACxC,CAEJ,EACAwD,GAAgB,YAAc,mBAK9B,IAAMK,GAA+B,aAGnC,CAAC7D,EAAOI,IAAiB,CACzB,GAAM,CAAE,UAAAmB,EAAW,SAAApB,EAAU,QAAA2D,EAAS,GAAGC,CAAgB,EAAI/D,EAEvDgE,EAAmBC,EAA4B,EAC/C1D,EAAiBC,EAA0B,EAC3C0D,EAAaC,EAAc,EAG3BC,EAAmB,SAAON,CAAO,EACvCM,EAAW,QAAUN,EAGrB,IAAMO,EAAoB,cAAaC,GAAwC,CAC7EA,EAAE,eAAe,EACbJ,GAAcF,GAChBA,EAAiB,KAAKE,EAAW,EAAE,EAEpCE,EAAW,UAAkEE,CAAC,CACjF,EAAG,CAACJ,EAAYF,CAAgB,CAAC,EAG3BO,EAAsB,cAAaD,GAA2C,EAC9EA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,OACjCA,EAAE,eAAe,EACbJ,GAAcF,GAChBA,EAAiB,KAAKE,EAAW,EAAE,EAGzC,EAAG,CAACA,EAAYF,CAAgB,CAAC,EAGjC,OAAIzD,GAAgB,WAAa,cAAgB2D,EAE7C,gBAAC,OACC,KAAK,WACL,SAAU,EACV,IAAK9D,EACL,QAASiE,EACT,UAAWE,EACX,UAAWjC,EACT,WACA,kBACA,wBACA,sBACA,4BACA,qCACAf,CACF,GAECpB,EACD,gBAAC,OAAI,UAAU,+CACb,gBAACqE,EAAA,CAAsB,UAAU,0DAA0D,CAC7F,CACF,EAMF,gBAACvE,EAAsB,WAAtB,CACE,GAAG8D,EACJ,QAASD,EACT,QAAS,GACT,IAAK1D,EACL,UAAWkC,EACT,kBACA,wBACA,sBACA,4BACAf,CACF,GAECpB,EACD,gBAAC,OAAI,UAAU,+CACb,gBAACqE,EAAA,CAAsB,UAAU,0DAA0D,CAC7F,CACF,CAEJ,CAAC,EACDX,GAAuB,YAAc,0BAMrC,IAAMY,EAA8B,aAGlC,CAAC,CAAE,UAAAlD,EAAW,GAAGvB,CAAM,EAAGI,IAC1B,gBAACH,EAAsB,UAAtB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAWkC,EAAW,uBAAwB,2BAA4Bf,CAAS,EACrF,CACD,EACDkD,EAAsB,YAAc,yBAOpC,SAASC,GAAkB,CAAE,MAAAjB,CAAM,EAA+B,CAEhE,GAAM,CAAE,IAAAkB,CAAI,EAAIV,EAA4B,GAAK,CAAC,EAG5CI,EAAoB,cAAaC,GAAwC,CAC7EA,EAAE,eAAe,EACjBK,IAAM,CACR,EAAG,CAACA,CAAG,CAAC,EAGFJ,EAAsB,cAAaD,GAA2C,EAC9EA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,OACjCA,EAAE,eAAe,EACjBK,IAAM,EAEV,EAAG,CAACA,CAAG,CAAC,EAER,OACE,gBAAC,OACC,KAAK,WACL,SAAU,EACV,QAASN,EACT,UAAWE,EACX,UAAWjC,EACT,WACA,kBACA,sBACA,kCACF,GAEA,gBAACsC,EAAA,CAAqB,UAAU,mCAAmC,EACnE,gBAAC,QAAK,UAAU,qCAAqCnB,CAAM,CAC7D,CAEJ,CAQA,IAAMoB,GAA+B,aAGnC,CAAC7E,EAAOI,IAAiB,CAEzB,GAAM,CAAE,KAAAY,EAAM,QAAAE,EAAS,MAAAM,EAAO,aAAAL,EAAc,SAAAC,CAAS,EAAU,aAC7DX,CACF,EAEMF,EAAiBC,EAA0B,EAC3C0D,EAAaC,EAAc,EAE3B,CACJ,UAAA5C,EACA,SAAApB,EACA,UAAAsB,EACA,WAAAC,EACA,SAAUC,EACV,gBAAiBC,EACjB,GAAGkD,CACL,EAAI9C,EACF,CAAE,KAAAhB,EAAM,QAAAE,EAAS,MAAAM,EAAO,aAAAL,EAAc,SAAAC,EAAU,GAAGpB,CAAM,EACzD+E,CACF,EAGA,GAAIxE,GAAgB,WAAa,cAAgB2D,EAAY,CAC3D,IAAMc,EAAWzE,EAAe,SAAS2D,EAAW,EAAE,EAEtD,OACE,gBAAC,OACC,IAAK9D,EACL,KAAK,OACL,aAAY,OAAO8D,EAAW,OAAU,SAAWA,EAAW,MAAQ,OACtE,yBAAwBc,EAAW,GAAO,OAC1C,2BAA0BzE,EAAe,oBAAsB,OAC/D,UAAW+B,EACT,gCACAf,CACF,GAEA,gBAACmD,GAAA,CAAkB,MAAOR,EAAW,MAAO,EAC5C,gBAACO,EAAA,IAAsB,EACtBtE,CACH,CAEJ,CAGA,OACE,gBAACF,EAAsB,OAAtB,CAA6B,UAAWwB,EAAW,WAAYC,GAC9D,gBAACW,EAAA,CAAM,QAAO,IACZ,gBAACpC,EAAsB,WAAtB,CACC,oBAAmBuB,EACnB,gBAAeJ,EACf,wBAAuBA,EACvB,YAAa,CAAC,OAAOJ,CAAI,EAAI,EAE7B,WAAY,EACZ,iBAAkB,GACjB,GAAG8D,EACJ,QAAS,GACT,IAAK1E,EACL,UAAWkC,EACT,mBACA,qBACA,wBACA,yBACA,4BACAf,CACF,GAEA,gBAACgB,EAAA,CAAW,KAAK,QACf,gBAAC,OAAI,UAAWD,EAAW,sBAAuB,yBAAyB,GACxEnC,CACH,CACF,CACF,CACF,CACF,CAEJ,CAAC,EACD0E,GAAuB,YAAc,0BAIrC,IAAMI,GAAgC,aAGpC,CAACjF,EAAOI,IACR,gBAAC8E,EAAA,CAAiB,GAAGlF,EAAO,IAAKI,EAAc,UAAU,6BAA6B,CACvF,EACD6E,GAAwB,YAAc",
6
+ "names": ["dropdown_menu_exports", "__export", "DropdownMenuCheckboxItem", "DropdownMenuContent", "DropdownMenuGroup", "DropdownMenuItem", "DropdownMenuLabel", "DropdownMenuRadioGroup", "DropdownMenuRadioItem", "DropdownMenuRoot", "DropdownMenuSeparator", "DropdownMenuSub", "DropdownMenuSubContent", "DropdownMenuSubTrigger", "DropdownMenuTrigger", "DropdownMenuTriggerIcon", "React", "classNames", "DropdownMenuPrimitive", "Slot", "DropdownMenuRoot", "props", "DropdownMenuPrimitive", "DropdownMenuTrigger", "children", "forwardedRef", "requireReactElement", "DrillDownRoot", "drillDownState", "useDrillDownStateOptional", "DropdownMenuContentContext", "DropdownMenuContent", "themeContext", "useThemeContext", "useDeprecatedPanelBackgroundWarning", "effectiveMaterial", "memoizedThemeContext", "size", "baseMenuContentPropDefs", "variant", "highContrast", "material", "submenuBehavior", "virtualized", "className", "color", "container", "forceMount", "_", "__", "___", "____", "contentProps", "extractProps", "resolvedColor", "contentBody", "MenuProvider", "DrillDownProvider", "Theme", "classNames", "ScrollArea", "DropdownMenuLabel", "DropdownMenuItem", "baseMenuItemPropDefs", "shortcut", "itemProps", "Slot", "Kbd", "DropdownMenuGroup", "DropdownMenuRadioGroup", "DropdownMenuRadioItem", "baseMenuRadioItemPropDefs", "ThickDotIcon", "DropdownMenuCheckboxItem", "baseMenuCheckboxItemPropDefs", "ThickCheckIcon", "useSubId", "DropdownMenuSub", "label", "subId", "subContextValue", "SubContext", "DropdownMenuSubTrigger", "onClick", "subTriggerProps", "drillDownActions", "useDrillDownActionsOptional", "subContext", "useSubContext", "onClickRef", "handleClick", "e", "handleKeyDown", "ThickChevronRightIcon", "DropdownMenuSeparator", "DrillDownBackItem", "pop", "ThickChevronLeftIcon", "DropdownMenuSubContent", "subContentProps", "baseMenuSubContentPropDefs", "isActive", "DropdownMenuTriggerIcon", "ChevronDownIcon"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as e}from"./chunk-ARIV4AT5.js";import{a as p}from"./chunk-GSTOGDAJ.js";import{a as r}from"./chunk-KMPBTEZH.js";import*as o from"react";import a from"classnames";import{Slot as i}from"radix-ui";var P=o.forwardRef((t,s)=>{let{asChild:m,className:d,...f}=r(t,e,p),n=m?i.Root:"kbd";return o.createElement(n,{...f,ref:s,className:a("rt-reset","rt-Kbd",d)})});P.displayName="Kbd";export{P as a};
2
- //# sourceMappingURL=chunk-USGTBZ43.js.map
1
+ import{a as e}from"./chunk-ARIV4AT5.js";import{a as p}from"./chunk-GSTOGDAJ.js";import{a as r}from"./chunk-6FLLFCBU.js";import*as o from"react";import a from"classnames";import{Slot as i}from"radix-ui";var P=o.forwardRef((t,s)=>{let{asChild:m,className:d,...f}=r(t,e,p),n=m?i.Root:"kbd";return o.createElement(n,{...f,ref:s,className:a("rt-reset","rt-Kbd",d)})});P.displayName="Kbd";export{P as a};
2
+ //# sourceMappingURL=chunk-E67CIG6A.js.map
@@ -1,2 +1,2 @@
1
- import{a as U,b as X,c as Y}from"./chunk-APRBRAOT.js";import{a as V,b as Q,c as I}from"./chunk-4Z33XHOK.js";import{b as K,c as J}from"./chunk-IX5HIHVI.js";import{a as A}from"./chunk-MJJ7XDIP.js";import{b as H,c as q}from"./chunk-LN5SP46K.js";import{c as j}from"./chunk-FWB47YCH.js";import{a as $}from"./chunk-GSTOGDAJ.js";import{a as w}from"./chunk-KMPBTEZH.js";import{a as xo}from"./chunk-3XT5P2HO.js";var fo={};xo(fo,{Content:()=>ao,Empty:()=>io,Group:()=>lo,Input:()=>no,Item:()=>bo,Label:()=>mo,List:()=>so,Root:()=>eo,Separator:()=>po,Trigger:()=>to,Value:()=>ro});import*as o from"react";import p from"classnames";import{useControllableState as z}from"radix-ui/internal";import{Command as h}from"cmdk";var Z=o.createContext(null),R=t=>{let a=o.useContext(Z);if(!a){let e=t?`Combobox.${t}`:"Combobox components";throw new Error(`${e} must be used within Combobox.Root`)}return a},_=o.createContext(null),oo=()=>o.useContext(_),eo=t=>{let{children:a,size:e=V.size.default,highContrast:r=V.highContrast.default,value:l,defaultValue:n=null,onValueChange:m,open:d,defaultOpen:C=!1,onOpenChange:b,placeholder:s="Select an option",searchPlaceholder:c="Search...",searchValue:P,defaultSearchValue:u="",onSearchValueChange:x,filter:i,shouldFilter:f=!0,loop:g=!0,disabled:S,resetSearchOnSelect:E=!0,color:O,displayValue:v,...co}=t,k=o.useId(),[L,y]=z({prop:d,defaultProp:C,onChange:b}),[N,D]=z({prop:l,defaultProp:n,onChange:m}),[M,T]=z({prop:P,defaultProp:u,onChange:x}),G=o.useMemo(()=>{if(v!=null)return typeof v=="function"?v(N):v},[v,N]),W=o.useCallback(uo=>{D(uo),y(!1),E&&T("")},[y,T,D,E]),Co=o.useMemo(()=>({value:N,onSelect:W,open:L,setOpen:y,size:e,highContrast:r,placeholder:s,searchPlaceholder:c,disabled:S,color:O,displayValue:G,listboxId:k}),[N,W,L,y,e,r,s,c,S,O,G,k]),B=o.useRef({filter:i,shouldFilter:f,loop:g,searchValue:M,setSearchValue:T});return B.current={filter:i,shouldFilter:f,loop:g,searchValue:M,setSearchValue:T},o.createElement(Z.Provider,{value:Co},o.createElement(F.Provider,{value:B},o.createElement(U,{open:L,onOpenChange:y,...co},a)))};eo.displayName="Combobox.Root";var F=o.createContext(null),to=o.forwardRef((t,a)=>{let e=R("Trigger"),{children:r,className:l,placeholder:n,disabled:m,readOnly:d,error:C,loading:b,color:s,radius:c,...P}=w({size:e.size,highContrast:e.highContrast,...t},{size:V.size,highContrast:V.highContrast},Q,$),{material:u,panelBackground:x}=t,i=m??e.disabled,f=s??e.color,g=o.createElement(o.Fragment,null,o.createElement("span",{className:"rt-SelectTriggerInner"},o.createElement("span",{className:"rt-ComboboxValue"},e.displayValue??e.value??n??e.placeholder)),b?o.createElement("div",{className:"rt-SelectIcon rt-SelectLoadingIcon","aria-hidden":"true"},o.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},o.createElement("circle",{cx:"8",cy:"8",r:"6.5",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round",strokeDasharray:"6 34",strokeDashoffset:"0",className:"rt-SelectLoadingSpinner"}))):o.createElement(J,{className:"rt-SelectIcon"})),{type:S,...E}=P;return o.createElement(X,{disabled:i},o.createElement("button",{"data-accent-color":f,"data-radius":c,"data-panel-background":x,"data-material":u,"data-error":C,"data-loading":b,"data-disabled":i||void 0,"data-read-only":d||void 0,...E,role:"combobox","aria-autocomplete":"list","aria-controls":e.open?e.listboxId:void 0,"aria-expanded":e.open,"aria-haspopup":"listbox","aria-disabled":i||void 0,type:S??"button",disabled:i,ref:a,className:p("rt-reset","rt-SelectTrigger","rt-ComboboxTrigger",l)},r?A(r):g))});to.displayName="Combobox.Trigger";var ro=o.forwardRef(({placeholder:t,children:a,className:e,...r},l)=>{let n=R("Value"),m=n.displayValue??n.value??void 0;return o.createElement("span",{...r,ref:l,className:p("rt-ComboboxValue",e)},m??a??t??n.placeholder)});ro.displayName="Combobox.Value";var ao=o.forwardRef((t,a)=>{let e=R("Content"),r=o.useContext(F),l=H(),n=l.panelBackground,m=t.size??e.size??I.size.default,d=t.variant??I.variant.default,C=t.highContrast??e.highContrast??I.highContrast.default,{className:b,children:s,color:c,forceMount:P,container:u,...x}=w({...t,size:m,variant:d,highContrast:C},I),i=c||e.color||l.accentColor,f=o.useMemo(()=>({variant:d,size:String(m),color:i,material:n,highContrast:C,loop:r?.current.loop,shouldFilter:r?.current.shouldFilter,filter:r?.current.filter}),[d,m,i,n,C,r]);return o.createElement(Y,{size:m,"data-accent-color":i,"data-material":n,"data-panel-background":n,align:"start",sideOffset:4,collisionPadding:10,...x,forceMount:P===!0?!0:void 0,container:u,ref:a,className:p("rt-PopperContent","rt-BaseMenuContent","rt-ComboboxContent",b)},o.createElement(q,{asChild:!0},o.createElement(_.Provider,{value:f},o.createElement(h,{loop:r?.current.loop,shouldFilter:r?.current.shouldFilter,filter:r?.current.filter,className:"rt-ComboboxCommand"},s))))});ao.displayName="Combobox.Content";var no=o.forwardRef(({className:t,startAdornment:a,endAdornment:e,placeholder:r,variant:l,value:n,onValueChange:m,...d},C)=>{let b=R("Input"),s=oo(),c=o.useContext(F),P=s?.variant??"solid",u=l??(P==="solid"?"surface":"soft"),x=n??c?.current.searchValue??"",i=m??c?.current.setSearchValue,f=s?.size?`rt-r-size-${s.size}`:void 0,g=o.createElement("div",{className:p("rt-TextFieldRoot","rt-ComboboxInputRoot",f,`rt-variant-${u}`),"data-accent-color":s?.color,"data-material":s?.material,"data-panel-background":s?.material},a?o.createElement("div",{className:"rt-TextFieldSlot"},a):null,o.createElement(h.Input,{...d,ref:C,value:x,onValueChange:i,placeholder:r??b.searchPlaceholder,className:p("rt-reset","rt-TextFieldInput",t)}),e?o.createElement("div",{className:"rt-TextFieldSlot","data-side":"right"},e):null);return s?o.createElement("div",{className:"rt-ComboboxSearch"},g):g});no.displayName="Combobox.Input";var so=o.forwardRef(({className:t,children:a,...e},r)=>{let l=R("List");return o.createElement("div",{className:"rt-ComboboxScrollArea"},o.createElement("div",{className:p("rt-BaseMenuViewport","rt-ComboboxViewport")},o.createElement(h.List,{...e,id:l.listboxId,ref:r,role:"listbox","aria-label":"Options",className:p("rt-ComboboxList",t)},a)))});so.displayName="Combobox.List";var io=o.forwardRef(({className:t,...a},e)=>o.createElement(h.Empty,{...a,ref:e,className:p("rt-ComboboxEmpty",t)}));io.displayName="Combobox.Empty";var lo=o.forwardRef(({className:t,...a},e)=>o.createElement(h.Group,{...a,ref:e,className:p("rt-BaseMenuGroup","rt-ComboboxGroup",t)}));lo.displayName="Combobox.Group";var mo=o.forwardRef(({className:t,...a},e)=>o.createElement("div",{...a,ref:e,className:p("rt-BaseMenuLabel","rt-ComboboxLabel",t)}));mo.displayName="Combobox.Label";var po=o.forwardRef(({className:t,...a},e)=>o.createElement(h.Separator,{...a,ref:e,className:p("rt-BaseMenuSeparator","rt-ComboboxSeparator",t)}));po.displayName="Combobox.Separator";var bo=o.forwardRef(({className:t,children:a,label:e,value:r,disabled:l,onSelect:n,keywords:m,...d},C)=>{let b=R("Item"),s=oo(),c=r!=null&&b.value===r,P=l??b.disabled??!1,u=s?.size?`rt-r-size-${s.size}`:void 0,x=b.onSelect,i=o.useCallback(()=>{r!=null&&(x(r),n?.(r))},[x,r,n]),f=m??(e?[e]:void 0);return o.createElement(h.Item,{...d,value:r,keywords:f,role:"option","aria-selected":c,disabled:P||void 0,ref:C,onSelect:i,className:p("rt-reset","rt-BaseMenuItem","rt-ComboboxItem",t)},c?o.createElement("span",{className:p("rt-BaseMenuItemIndicator","rt-ComboboxItemIndicator",u)},o.createElement(K,{className:p("rt-BaseMenuItemIndicatorIcon","rt-ComboboxItemIndicatorIcon",u)})):null,o.createElement(j,null,a))});bo.displayName="Combobox.Item";export{eo as a,to as b,ro as c,ao as d,no as e,so as f,io as g,lo as h,mo as i,po as j,bo as k,fo as l};
2
- //# sourceMappingURL=chunk-42HFGCHX.js.map
1
+ import{a as U,b as X,c as Y}from"./chunk-FOEZLQTW.js";import{a as V,b as Q,c as I}from"./chunk-4Z33XHOK.js";import{b as K,c as J}from"./chunk-IX5HIHVI.js";import{a as A}from"./chunk-MJJ7XDIP.js";import{b as H,c as q}from"./chunk-LOGJJF4I.js";import{c as j}from"./chunk-FWB47YCH.js";import{a as $}from"./chunk-GSTOGDAJ.js";import{a as w}from"./chunk-6FLLFCBU.js";import{a as xo}from"./chunk-3XT5P2HO.js";var fo={};xo(fo,{Content:()=>ao,Empty:()=>io,Group:()=>lo,Input:()=>no,Item:()=>bo,Label:()=>mo,List:()=>so,Root:()=>eo,Separator:()=>po,Trigger:()=>to,Value:()=>ro});import*as o from"react";import p from"classnames";import{useControllableState as z}from"radix-ui/internal";import{Command as h}from"cmdk";var Z=o.createContext(null),R=t=>{let a=o.useContext(Z);if(!a){let e=t?`Combobox.${t}`:"Combobox components";throw new Error(`${e} must be used within Combobox.Root`)}return a},_=o.createContext(null),oo=()=>o.useContext(_),eo=t=>{let{children:a,size:e=V.size.default,highContrast:r=V.highContrast.default,value:l,defaultValue:n=null,onValueChange:m,open:d,defaultOpen:C=!1,onOpenChange:b,placeholder:s="Select an option",searchPlaceholder:c="Search...",searchValue:P,defaultSearchValue:u="",onSearchValueChange:x,filter:i,shouldFilter:f=!0,loop:g=!0,disabled:S,resetSearchOnSelect:E=!0,color:O,displayValue:v,...co}=t,k=o.useId(),[L,y]=z({prop:d,defaultProp:C,onChange:b}),[N,D]=z({prop:l,defaultProp:n,onChange:m}),[M,T]=z({prop:P,defaultProp:u,onChange:x}),G=o.useMemo(()=>{if(v!=null)return typeof v=="function"?v(N):v},[v,N]),W=o.useCallback(uo=>{D(uo),y(!1),E&&T("")},[y,T,D,E]),Co=o.useMemo(()=>({value:N,onSelect:W,open:L,setOpen:y,size:e,highContrast:r,placeholder:s,searchPlaceholder:c,disabled:S,color:O,displayValue:G,listboxId:k}),[N,W,L,y,e,r,s,c,S,O,G,k]),B=o.useRef({filter:i,shouldFilter:f,loop:g,searchValue:M,setSearchValue:T});return B.current={filter:i,shouldFilter:f,loop:g,searchValue:M,setSearchValue:T},o.createElement(Z.Provider,{value:Co},o.createElement(F.Provider,{value:B},o.createElement(U,{open:L,onOpenChange:y,...co},a)))};eo.displayName="Combobox.Root";var F=o.createContext(null),to=o.forwardRef((t,a)=>{let e=R("Trigger"),{children:r,className:l,placeholder:n,disabled:m,readOnly:d,error:C,loading:b,color:s,radius:c,...P}=w({size:e.size,highContrast:e.highContrast,...t},{size:V.size,highContrast:V.highContrast},Q,$),{material:u,panelBackground:x}=t,i=m??e.disabled,f=s??e.color,g=o.createElement(o.Fragment,null,o.createElement("span",{className:"rt-SelectTriggerInner"},o.createElement("span",{className:"rt-ComboboxValue"},e.displayValue??e.value??n??e.placeholder)),b?o.createElement("div",{className:"rt-SelectIcon rt-SelectLoadingIcon","aria-hidden":"true"},o.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},o.createElement("circle",{cx:"8",cy:"8",r:"6.5",stroke:"currentColor",strokeWidth:"1",strokeLinecap:"round",strokeDasharray:"6 34",strokeDashoffset:"0",className:"rt-SelectLoadingSpinner"}))):o.createElement(J,{className:"rt-SelectIcon"})),{type:S,...E}=P;return o.createElement(X,{disabled:i},o.createElement("button",{"data-accent-color":f,"data-radius":c,"data-panel-background":x,"data-material":u,"data-error":C,"data-loading":b,"data-disabled":i||void 0,"data-read-only":d||void 0,...E,role:"combobox","aria-autocomplete":"list","aria-controls":e.open?e.listboxId:void 0,"aria-expanded":e.open,"aria-haspopup":"listbox","aria-disabled":i||void 0,type:S??"button",disabled:i,ref:a,className:p("rt-reset","rt-SelectTrigger","rt-ComboboxTrigger",l)},r?A(r):g))});to.displayName="Combobox.Trigger";var ro=o.forwardRef(({placeholder:t,children:a,className:e,...r},l)=>{let n=R("Value"),m=n.displayValue??n.value??void 0;return o.createElement("span",{...r,ref:l,className:p("rt-ComboboxValue",e)},m??a??t??n.placeholder)});ro.displayName="Combobox.Value";var ao=o.forwardRef((t,a)=>{let e=R("Content"),r=o.useContext(F),l=H(),n=l.panelBackground,m=t.size??e.size??I.size.default,d=t.variant??I.variant.default,C=t.highContrast??e.highContrast??I.highContrast.default,{className:b,children:s,color:c,forceMount:P,container:u,...x}=w({...t,size:m,variant:d,highContrast:C},I),i=c||e.color||l.accentColor,f=o.useMemo(()=>({variant:d,size:String(m),color:i,material:n,highContrast:C,loop:r?.current.loop,shouldFilter:r?.current.shouldFilter,filter:r?.current.filter}),[d,m,i,n,C,r]);return o.createElement(Y,{size:m,"data-accent-color":i,"data-material":n,"data-panel-background":n,align:"start",sideOffset:4,collisionPadding:10,...x,forceMount:P===!0?!0:void 0,container:u,ref:a,className:p("rt-PopperContent","rt-BaseMenuContent","rt-ComboboxContent",b)},o.createElement(q,{asChild:!0},o.createElement(_.Provider,{value:f},o.createElement(h,{loop:r?.current.loop,shouldFilter:r?.current.shouldFilter,filter:r?.current.filter,className:"rt-ComboboxCommand"},s))))});ao.displayName="Combobox.Content";var no=o.forwardRef(({className:t,startAdornment:a,endAdornment:e,placeholder:r,variant:l,value:n,onValueChange:m,...d},C)=>{let b=R("Input"),s=oo(),c=o.useContext(F),P=s?.variant??"solid",u=l??(P==="solid"?"surface":"soft"),x=n??c?.current.searchValue??"",i=m??c?.current.setSearchValue,f=s?.size?`rt-r-size-${s.size}`:void 0,g=o.createElement("div",{className:p("rt-TextFieldRoot","rt-ComboboxInputRoot",f,`rt-variant-${u}`),"data-accent-color":s?.color,"data-material":s?.material,"data-panel-background":s?.material},a?o.createElement("div",{className:"rt-TextFieldSlot"},a):null,o.createElement(h.Input,{...d,ref:C,value:x,onValueChange:i,placeholder:r??b.searchPlaceholder,className:p("rt-reset","rt-TextFieldInput",t)}),e?o.createElement("div",{className:"rt-TextFieldSlot","data-side":"right"},e):null);return s?o.createElement("div",{className:"rt-ComboboxSearch"},g):g});no.displayName="Combobox.Input";var so=o.forwardRef(({className:t,children:a,...e},r)=>{let l=R("List");return o.createElement("div",{className:"rt-ComboboxScrollArea"},o.createElement("div",{className:p("rt-BaseMenuViewport","rt-ComboboxViewport")},o.createElement(h.List,{...e,id:l.listboxId,ref:r,role:"listbox","aria-label":"Options",className:p("rt-ComboboxList",t)},a)))});so.displayName="Combobox.List";var io=o.forwardRef(({className:t,...a},e)=>o.createElement(h.Empty,{...a,ref:e,className:p("rt-ComboboxEmpty",t)}));io.displayName="Combobox.Empty";var lo=o.forwardRef(({className:t,...a},e)=>o.createElement(h.Group,{...a,ref:e,className:p("rt-BaseMenuGroup","rt-ComboboxGroup",t)}));lo.displayName="Combobox.Group";var mo=o.forwardRef(({className:t,...a},e)=>o.createElement("div",{...a,ref:e,className:p("rt-BaseMenuLabel","rt-ComboboxLabel",t)}));mo.displayName="Combobox.Label";var po=o.forwardRef(({className:t,...a},e)=>o.createElement(h.Separator,{...a,ref:e,className:p("rt-BaseMenuSeparator","rt-ComboboxSeparator",t)}));po.displayName="Combobox.Separator";var bo=o.forwardRef(({className:t,children:a,label:e,value:r,disabled:l,onSelect:n,keywords:m,...d},C)=>{let b=R("Item"),s=oo(),c=r!=null&&b.value===r,P=l??b.disabled??!1,u=s?.size?`rt-r-size-${s.size}`:void 0,x=b.onSelect,i=o.useCallback(()=>{r!=null&&(x(r),n?.(r))},[x,r,n]),f=m??(e?[e]:void 0);return o.createElement(h.Item,{...d,value:r,keywords:f,role:"option","aria-selected":c,disabled:P||void 0,ref:C,onSelect:i,className:p("rt-reset","rt-BaseMenuItem","rt-ComboboxItem",t)},c?o.createElement("span",{className:p("rt-BaseMenuItemIndicator","rt-ComboboxItemIndicator",u)},o.createElement(K,{className:p("rt-BaseMenuItemIndicatorIcon","rt-ComboboxItemIndicatorIcon",u)})):null,o.createElement(j,null,a))});bo.displayName="Combobox.Item";export{eo as a,to as b,ro as c,ao as d,no as e,so as f,io as g,lo as h,mo as i,po as j,bo as k,fo as l};
2
+ //# sourceMappingURL=chunk-ETMLMDW4.js.map
@@ -1,2 +1,2 @@
1
- import{a as f}from"./chunk-2N2AQNJH.js";import{a as d}from"./chunk-XHQGMOXV.js";import{a as p}from"./chunk-DZ4H2KTP.js";import*as r from"react";import h from"classnames";var w=r.forwardRef(({className:b,style:s,tooltip:a,tooltipSide:m="top",tooltipAlign:B="center",tooltipDelayDuration:y,tooltipDisableHoverableContent:g,overrideStyles:e,...v},O)=>{let{tooltipId:R,hasTooltip:S,accessibilityProps:P}=f(a),u=r.useMemo(()=>{if(!e)return;let c={},o=(n,t)=>{t!==void 0&&(c[n]=t)},i=(n,t)=>{t&&(o(`--button-override-${n}color`,t.color),o(`--button-override-${n}background`,t.background),o(`--button-override-${n}background-color`,t.backgroundColor),o(`--button-override-${n}box-shadow`,t.boxShadow),o(`--button-override-${n}filter`,t.filter),o(`--button-override-${n}outline`,t.outline),o(`--button-override-${n}outline-offset`,t.outlineOffset),o(`--button-override-${n}opacity`,t.opacity))};return i("",e.normal),i("hover-",e.hover),i("active-",e.active),i("pressed-",e.pressed),i("open-",e.open),i("disabled-",e.disabled),e.focus&&(o("--button-override-focus-outline",e.focus.outline),o("--button-override-focus-outline-offset",e.focus.outlineOffset)),c},[e]),C=r.useMemo(()=>u?{...u,...s}:s,[u,s]),l=r.createElement(p,{...v,...P,ref:O,className:h("rt-Button",b),style:C});return S?r.createElement(d,{content:a,side:m,align:B,delayDuration:y,disableHoverableContent:g,id:R},l):l});w.displayName="Button";export{w as a};
2
- //# sourceMappingURL=chunk-7CBAHIVG.js.map
1
+ import{a as f}from"./chunk-2N2AQNJH.js";import{a as d}from"./chunk-36ZQVP7F.js";import{a as p}from"./chunk-2UPAYDKR.js";import*as r from"react";import h from"classnames";var w=r.forwardRef(({className:b,style:s,tooltip:a,tooltipSide:m="top",tooltipAlign:B="center",tooltipDelayDuration:y,tooltipDisableHoverableContent:g,overrideStyles:e,...v},O)=>{let{tooltipId:R,hasTooltip:S,accessibilityProps:P}=f(a),u=r.useMemo(()=>{if(!e)return;let c={},o=(n,t)=>{t!==void 0&&(c[n]=t)},i=(n,t)=>{t&&(o(`--button-override-${n}color`,t.color),o(`--button-override-${n}background`,t.background),o(`--button-override-${n}background-color`,t.backgroundColor),o(`--button-override-${n}box-shadow`,t.boxShadow),o(`--button-override-${n}filter`,t.filter),o(`--button-override-${n}outline`,t.outline),o(`--button-override-${n}outline-offset`,t.outlineOffset),o(`--button-override-${n}opacity`,t.opacity))};return i("",e.normal),i("hover-",e.hover),i("active-",e.active),i("pressed-",e.pressed),i("open-",e.open),i("disabled-",e.disabled),e.focus&&(o("--button-override-focus-outline",e.focus.outline),o("--button-override-focus-outline-offset",e.focus.outlineOffset)),c},[e]),C=r.useMemo(()=>u?{...u,...s}:s,[u,s]),l=r.createElement(p,{...v,...P,ref:O,className:h("rt-Button",b),style:C});return S?r.createElement(d,{content:a,side:m,align:B,delayDuration:y,disableHoverableContent:g,id:R},l):l});w.displayName="Button";export{w as a};
2
+ //# sourceMappingURL=chunk-F2HYQ3ZR.js.map
@@ -1,2 +1,2 @@
1
- import{a as e}from"./chunk-4OBMRJHC.js";import*as o from"react";import n from"classnames";import{Slot as u}from"radix-ui";var a=o.forwardRef((t,p)=>{let{asChild:r,children:s,className:m,...c}=t,l=r?u.Root:"blockquote";return o.createElement(e,{asChild:!0,...c,ref:p,className:n("rt-Blockquote",m)},o.createElement(l,null,s))});a.displayName="Blockquote";export{a};
2
- //# sourceMappingURL=chunk-YUZPSUJE.js.map
1
+ import{a as e}from"./chunk-H7ST535H.js";import*as o from"react";import n from"classnames";import{Slot as u}from"radix-ui";var a=o.forwardRef((t,p)=>{let{asChild:r,children:s,className:m,...c}=t,l=r?u.Root:"blockquote";return o.createElement(e,{asChild:!0,...c,ref:p,className:n("rt-Blockquote",m)},o.createElement(l,null,s))});a.displayName="Blockquote";export{a};
2
+ //# sourceMappingURL=chunk-F7IYL2VW.js.map
@@ -1,2 +1,2 @@
1
- import{a as t}from"./chunk-SMGDH54W.js";import{b as s}from"./chunk-FWB47YCH.js";import{a as r}from"./chunk-K53W3ELO.js";import{a as e}from"./chunk-GSTOGDAJ.js";import{a as p}from"./chunk-KMPBTEZH.js";import*as o from"react";import x from"classnames";var f=o.forwardRef((m,a)=>{let{className:l,asChild:n,as:i="div",...P}=p(m,t,r,e);return o.createElement(n?s:i,{...P,ref:a,className:x("rt-Flex",l)})});f.displayName="Flex";export{f as a};
2
- //# sourceMappingURL=chunk-FVCWNSRU.js.map
1
+ import{a as t}from"./chunk-SMGDH54W.js";import{b as s}from"./chunk-FWB47YCH.js";import{a as r}from"./chunk-K53W3ELO.js";import{a as e}from"./chunk-GSTOGDAJ.js";import{a as p}from"./chunk-6FLLFCBU.js";import*as o from"react";import x from"classnames";var f=o.forwardRef((m,a)=>{let{className:l,asChild:n,as:i="div",...P}=p(m,t,r,e);return o.createElement(n?s:i,{...P,ref:a,className:x("rt-Flex",l)})});f.displayName="Flex";export{f as a};
2
+ //# sourceMappingURL=chunk-FHOCUZDR.js.map