@womp/kookie-ui 0.3.25 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (582) hide show
  1. package/AUTHORS +27 -0
  2. package/LICENSE +29 -0
  3. package/README.md +21 -1
  4. package/components.css +163 -118
  5. package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
  6. package/dist/cjs/components/_internal/base-button.js +1 -1
  7. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  8. package/dist/cjs/components/_internal/dropdown-menu-drill-down.js +1 -1
  9. package/dist/cjs/components/_internal/dropdown-menu-drill-down.js.map +3 -3
  10. package/dist/cjs/components/_internal/shell-bottom.js +1 -1
  11. package/dist/cjs/components/_internal/shell-bottom.js.map +4 -4
  12. package/dist/cjs/components/_internal/shell-handles.d.ts.map +1 -1
  13. package/dist/cjs/components/_internal/shell-handles.js +1 -1
  14. package/dist/cjs/components/_internal/shell-handles.js.map +3 -3
  15. package/dist/cjs/components/_internal/shell-inspector.js +1 -1
  16. package/dist/cjs/components/_internal/shell-inspector.js.map +4 -4
  17. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  18. package/dist/cjs/components/_internal/shell-sidebar.js.map +4 -4
  19. package/dist/cjs/components/accordion.d.ts.map +1 -1
  20. package/dist/cjs/components/accordion.js +1 -1
  21. package/dist/cjs/components/accordion.js.map +4 -4
  22. package/dist/cjs/components/alert-dialog.d.ts.map +1 -1
  23. package/dist/cjs/components/alert-dialog.js +1 -1
  24. package/dist/cjs/components/alert-dialog.js.map +4 -4
  25. package/dist/cjs/components/avatar.js +1 -1
  26. package/dist/cjs/components/avatar.js.map +4 -4
  27. package/dist/cjs/components/badge.d.ts.map +1 -1
  28. package/dist/cjs/components/badge.js +1 -1
  29. package/dist/cjs/components/badge.js.map +4 -4
  30. package/dist/cjs/components/blockquote.js +1 -1
  31. package/dist/cjs/components/blockquote.js.map +4 -4
  32. package/dist/cjs/components/box.js +1 -1
  33. package/dist/cjs/components/box.js.map +4 -4
  34. package/dist/cjs/components/button.js +1 -1
  35. package/dist/cjs/components/button.js.map +4 -4
  36. package/dist/cjs/components/callout.js +1 -1
  37. package/dist/cjs/components/callout.js.map +4 -4
  38. package/dist/cjs/components/card.js +1 -1
  39. package/dist/cjs/components/card.js.map +4 -4
  40. package/dist/cjs/components/chatbar.js +2 -2
  41. package/dist/cjs/components/chatbar.js.map +4 -4
  42. package/dist/cjs/components/checkbox-cards.js +1 -1
  43. package/dist/cjs/components/checkbox-cards.js.map +4 -4
  44. package/dist/cjs/components/checkbox-group.js +1 -1
  45. package/dist/cjs/components/checkbox-group.js.map +4 -4
  46. package/dist/cjs/components/checkbox.js +1 -1
  47. package/dist/cjs/components/checkbox.js.map +4 -4
  48. package/dist/cjs/components/code.js +1 -1
  49. package/dist/cjs/components/code.js.map +4 -4
  50. package/dist/cjs/components/combobox.js +1 -1
  51. package/dist/cjs/components/combobox.js.map +4 -4
  52. package/dist/cjs/components/container.js +1 -1
  53. package/dist/cjs/components/container.js.map +4 -4
  54. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  55. package/dist/cjs/components/context-menu.js +1 -1
  56. package/dist/cjs/components/context-menu.js.map +4 -4
  57. package/dist/cjs/components/data-list.js +1 -1
  58. package/dist/cjs/components/data-list.js.map +4 -4
  59. package/dist/cjs/components/dialog.d.ts.map +1 -1
  60. package/dist/cjs/components/dialog.js +1 -1
  61. package/dist/cjs/components/dialog.js.map +4 -4
  62. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  63. package/dist/cjs/components/dropdown-menu.js +1 -1
  64. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  65. package/dist/cjs/components/em.js +1 -1
  66. package/dist/cjs/components/em.js.map +4 -4
  67. package/dist/cjs/components/flex.js +1 -1
  68. package/dist/cjs/components/flex.js.map +4 -4
  69. package/dist/cjs/components/grid.js +1 -1
  70. package/dist/cjs/components/grid.js.map +4 -4
  71. package/dist/cjs/components/heading.js +1 -1
  72. package/dist/cjs/components/heading.js.map +4 -4
  73. package/dist/cjs/components/hover-card.js +1 -1
  74. package/dist/cjs/components/hover-card.js.map +4 -4
  75. package/dist/cjs/components/icon-button.js +2 -2
  76. package/dist/cjs/components/icon-button.js.map +4 -4
  77. package/dist/cjs/components/image.js +1 -1
  78. package/dist/cjs/components/image.js.map +4 -4
  79. package/dist/cjs/components/index.js +5 -5
  80. package/dist/cjs/components/index.js.map +4 -4
  81. package/dist/cjs/components/inset.js +1 -1
  82. package/dist/cjs/components/inset.js.map +4 -4
  83. package/dist/cjs/components/kbd.js +1 -1
  84. package/dist/cjs/components/kbd.js.map +4 -4
  85. package/dist/cjs/components/link.js +1 -1
  86. package/dist/cjs/components/link.js.map +4 -4
  87. package/dist/cjs/components/navbar.js +1 -1
  88. package/dist/cjs/components/navbar.js.map +4 -4
  89. package/dist/cjs/components/popover.js +1 -1
  90. package/dist/cjs/components/popover.js.map +4 -4
  91. package/dist/cjs/components/progress.js +1 -1
  92. package/dist/cjs/components/progress.js.map +4 -4
  93. package/dist/cjs/components/quote.js +1 -1
  94. package/dist/cjs/components/quote.js.map +4 -4
  95. package/dist/cjs/components/radio-cards.js +1 -1
  96. package/dist/cjs/components/radio-cards.js.map +4 -4
  97. package/dist/cjs/components/radio-group.js +1 -1
  98. package/dist/cjs/components/radio-group.js.map +4 -4
  99. package/dist/cjs/components/radio.js +1 -1
  100. package/dist/cjs/components/radio.js.map +4 -4
  101. package/dist/cjs/components/schemas/base-button.schema.d.ts +2 -2
  102. package/dist/cjs/components/schemas/button.schema.d.ts +2 -2
  103. package/dist/cjs/components/schemas/icon-button.schema.d.ts +4 -4
  104. package/dist/cjs/components/schemas/shell.schema.d.ts +2 -2
  105. package/dist/cjs/components/schemas/toggle-button.schema.d.ts +6 -6
  106. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts +8 -8
  107. package/dist/cjs/components/scroll-area.js +1 -1
  108. package/dist/cjs/components/scroll-area.js.map +4 -4
  109. package/dist/cjs/components/section.js +1 -1
  110. package/dist/cjs/components/section.js.map +4 -4
  111. package/dist/cjs/components/segmented-control.js +1 -1
  112. package/dist/cjs/components/segmented-control.js.map +4 -4
  113. package/dist/cjs/components/select.js +1 -1
  114. package/dist/cjs/components/select.js.map +4 -4
  115. package/dist/cjs/components/separator.js +1 -1
  116. package/dist/cjs/components/separator.js.map +4 -4
  117. package/dist/cjs/components/sheet.d.ts.map +1 -1
  118. package/dist/cjs/components/sheet.js +1 -1
  119. package/dist/cjs/components/sheet.js.map +4 -4
  120. package/dist/cjs/components/shell.js +1 -1
  121. package/dist/cjs/components/shell.js.map +4 -4
  122. package/dist/cjs/components/sidebar.js +1 -1
  123. package/dist/cjs/components/sidebar.js.map +4 -4
  124. package/dist/cjs/components/skeleton.js +1 -1
  125. package/dist/cjs/components/skeleton.js.map +4 -4
  126. package/dist/cjs/components/slider.js +1 -1
  127. package/dist/cjs/components/slider.js.map +4 -4
  128. package/dist/cjs/components/spinner.js +1 -1
  129. package/dist/cjs/components/spinner.js.map +4 -4
  130. package/dist/cjs/components/strong.js +1 -1
  131. package/dist/cjs/components/strong.js.map +4 -4
  132. package/dist/cjs/components/switch.js +1 -1
  133. package/dist/cjs/components/switch.js.map +4 -4
  134. package/dist/cjs/components/tab-nav.js +1 -1
  135. package/dist/cjs/components/tab-nav.js.map +4 -4
  136. package/dist/cjs/components/table.js +1 -1
  137. package/dist/cjs/components/table.js.map +4 -4
  138. package/dist/cjs/components/tabs.js +1 -1
  139. package/dist/cjs/components/tabs.js.map +4 -4
  140. package/dist/cjs/components/text-area.js +1 -1
  141. package/dist/cjs/components/text-area.js.map +4 -4
  142. package/dist/cjs/components/text-field.js +2 -2
  143. package/dist/cjs/components/text-field.js.map +4 -4
  144. package/dist/cjs/components/text.js +1 -1
  145. package/dist/cjs/components/text.js.map +4 -4
  146. package/dist/cjs/components/theme-panel.js +3 -3
  147. package/dist/cjs/components/theme-panel.js.map +4 -4
  148. package/dist/cjs/components/theme.d.ts +3 -0
  149. package/dist/cjs/components/theme.d.ts.map +1 -1
  150. package/dist/cjs/components/theme.js +1 -1
  151. package/dist/cjs/components/theme.js.map +4 -4
  152. package/dist/cjs/components/theme.props.d.ts +15 -1
  153. package/dist/cjs/components/theme.props.d.ts.map +1 -1
  154. package/dist/cjs/components/theme.props.js +1 -1
  155. package/dist/cjs/components/theme.props.js.map +2 -2
  156. package/dist/cjs/components/toggle-button.js +2 -2
  157. package/dist/cjs/components/toggle-button.js.map +4 -4
  158. package/dist/cjs/components/toggle-icon-button.js +3 -3
  159. package/dist/cjs/components/toggle-icon-button.js.map +4 -4
  160. package/dist/cjs/components/toolbar.js +1 -1
  161. package/dist/cjs/components/toolbar.js.map +4 -4
  162. package/dist/cjs/components/tooltip.js +1 -1
  163. package/dist/cjs/components/tooltip.js.map +4 -4
  164. package/dist/cjs/components/user-card.js +1 -1
  165. package/dist/cjs/components/user-card.js.map +4 -4
  166. package/dist/cjs/helpers/compile-prop-defs.d.ts +49 -0
  167. package/dist/cjs/helpers/compile-prop-defs.d.ts.map +1 -0
  168. package/dist/cjs/helpers/compile-prop-defs.js +2 -0
  169. package/dist/cjs/helpers/compile-prop-defs.js.map +7 -0
  170. package/dist/cjs/helpers/extract-props.d.ts.map +1 -1
  171. package/dist/cjs/helpers/extract-props.js +1 -1
  172. package/dist/cjs/helpers/extract-props.js.map +4 -4
  173. package/dist/cjs/helpers/font-config.d.ts +84 -77
  174. package/dist/cjs/helpers/font-config.d.ts.map +1 -1
  175. package/dist/cjs/helpers/font-config.js +5 -2
  176. package/dist/cjs/helpers/font-config.js.map +3 -3
  177. package/dist/cjs/helpers/get-margin-styles.d.ts.map +1 -1
  178. package/dist/cjs/helpers/get-margin-styles.js +1 -1
  179. package/dist/cjs/helpers/get-margin-styles.js.map +3 -3
  180. package/dist/cjs/helpers/get-responsive-styles.d.ts +5 -2
  181. package/dist/cjs/helpers/get-responsive-styles.d.ts.map +1 -1
  182. package/dist/cjs/helpers/get-responsive-styles.js +1 -1
  183. package/dist/cjs/helpers/get-responsive-styles.js.map +3 -3
  184. package/dist/cjs/helpers/index.js +5 -2
  185. package/dist/cjs/helpers/index.js.map +4 -4
  186. package/dist/cjs/helpers/use-deprecation-warning.d.ts +10 -0
  187. package/dist/cjs/helpers/use-deprecation-warning.d.ts.map +1 -0
  188. package/dist/cjs/helpers/use-deprecation-warning.js +2 -0
  189. package/dist/cjs/helpers/use-deprecation-warning.js.map +7 -0
  190. package/dist/cjs/hooks/index.js +2 -2
  191. package/dist/cjs/hooks/index.js.map +3 -3
  192. package/dist/cjs/hooks/use-body-pointer-events-cleanup.d.ts.map +1 -1
  193. package/dist/cjs/hooks/use-body-pointer-events-cleanup.js +1 -1
  194. package/dist/cjs/hooks/use-body-pointer-events-cleanup.js.map +3 -3
  195. package/dist/cjs/hooks/use-breakpoint.d.ts +7 -3
  196. package/dist/cjs/hooks/use-breakpoint.d.ts.map +1 -1
  197. package/dist/cjs/hooks/use-breakpoint.js +1 -1
  198. package/dist/cjs/hooks/use-breakpoint.js.map +3 -3
  199. package/dist/cjs/hooks/use-prop-synced-state.d.ts +14 -0
  200. package/dist/cjs/hooks/use-prop-synced-state.d.ts.map +1 -0
  201. package/dist/cjs/hooks/use-prop-synced-state.js +2 -0
  202. package/dist/cjs/hooks/use-prop-synced-state.js.map +7 -0
  203. package/dist/cjs/index.js +5 -5
  204. package/dist/cjs/index.js.map +4 -4
  205. package/dist/cjs/props/index.js +1 -1
  206. package/dist/cjs/props/index.js.map +2 -2
  207. package/dist/esm/{chunk-WYA4IRU6.js → chunk-25WZA7ZU.js} +2 -2
  208. package/dist/esm/{chunk-ARGX2ZZK.js → chunk-2FYJTSOP.js} +2 -2
  209. package/dist/esm/chunk-2UPAYDKR.js +2 -0
  210. package/dist/esm/chunk-2UPAYDKR.js.map +7 -0
  211. package/dist/esm/chunk-374ZYJUP.js +2 -0
  212. package/dist/esm/chunk-374ZYJUP.js.map +7 -0
  213. package/dist/esm/{chunk-K3R4AH3E.js → chunk-3MWWP4MW.js} +2 -2
  214. package/dist/esm/{chunk-HQ35PM4O.js → chunk-43A5GUSI.js} +2 -2
  215. package/dist/esm/{chunk-Z5DQ6FSA.js → chunk-4AQTUBVP.js} +2 -2
  216. package/dist/esm/{chunk-QLIELX4I.js → chunk-4ME6O27S.js} +2 -2
  217. package/dist/esm/chunk-4XJY6FIK.js +2 -0
  218. package/dist/esm/chunk-4XJY6FIK.js.map +7 -0
  219. package/dist/esm/{chunk-JQOFJNCV.js → chunk-4YFJWXL2.js} +2 -2
  220. package/dist/esm/chunk-5TXQLK4G.js +2 -0
  221. package/dist/esm/chunk-5TXQLK4G.js.map +7 -0
  222. package/dist/esm/{chunk-IPJUHVM6.js → chunk-666GX7O5.js} +2 -2
  223. package/dist/esm/chunk-6FLLFCBU.js +2 -0
  224. package/dist/esm/chunk-6FLLFCBU.js.map +7 -0
  225. package/dist/esm/{chunk-7CBAHIVG.js → chunk-6IGTK4JE.js} +2 -2
  226. package/dist/esm/chunk-6XGZPIUT.js +2 -0
  227. package/dist/esm/{chunk-T27QHMW7.js.map → chunk-6XGZPIUT.js.map} +2 -2
  228. package/dist/esm/{chunk-DJBPM5QK.js → chunk-7FC7HF76.js} +2 -2
  229. package/dist/esm/{chunk-SVLY6B5F.js → chunk-7QDTSBJF.js} +2 -2
  230. package/dist/esm/{chunk-7MURQ6CR.js → chunk-A2RZGGMY.js} +2 -2
  231. package/dist/esm/{chunk-VF5TRT3H.js → chunk-AU3D6F42.js} +2 -2
  232. package/dist/esm/chunk-AX5S56DS.js +2 -0
  233. package/dist/esm/chunk-AX5S56DS.js.map +7 -0
  234. package/dist/esm/{chunk-DK5MHD6I.js → chunk-B24BDVG2.js} +2 -2
  235. package/dist/esm/{chunk-BJTJUIYJ.js → chunk-CRWYCLTE.js} +2 -2
  236. package/dist/esm/{chunk-OHJVFZMH.js → chunk-CSKZZOI2.js} +2 -2
  237. package/dist/esm/{chunk-4N5JU7XQ.js → chunk-CVWCKOHO.js} +2 -2
  238. package/dist/esm/chunk-CWRNW44F.js +2 -0
  239. package/dist/esm/chunk-CWRNW44F.js.map +7 -0
  240. package/dist/esm/{chunk-ADYTQCZX.js → chunk-D6B7IMZU.js} +2 -2
  241. package/dist/esm/{chunk-U7AASKZI.js → chunk-DNHUQLXO.js} +2 -2
  242. package/dist/esm/{chunk-USGTBZ43.js → chunk-E67CIG6A.js} +2 -2
  243. package/dist/esm/{chunk-YUZPSUJE.js → chunk-F7IYL2VW.js} +2 -2
  244. package/dist/esm/{chunk-FVCWNSRU.js → chunk-FHOCUZDR.js} +2 -2
  245. package/dist/esm/{chunk-APRBRAOT.js → chunk-FXUUI6Z2.js} +2 -2
  246. package/dist/esm/{chunk-WNSPLWRV.js → chunk-GJSGKE7B.js} +2 -2
  247. package/dist/esm/{chunk-OGOOZLUD.js → chunk-GLERJXVS.js} +2 -2
  248. package/dist/esm/{chunk-6VGPTAHM.js → chunk-GWXVETMF.js} +2 -2
  249. package/dist/esm/{chunk-ES7MK2MM.js → chunk-GYBLXQ4R.js} +2 -2
  250. package/dist/esm/{chunk-4OBMRJHC.js → chunk-H7ST535H.js} +2 -2
  251. package/dist/esm/{chunk-QLZ5XAW6.js → chunk-HF5WY5YE.js} +2 -2
  252. package/dist/esm/{chunk-RDP4UQ42.js → chunk-IEWCQU2S.js} +2 -2
  253. package/dist/esm/{chunk-XLOHPURR.js → chunk-IHK3H2OM.js} +2 -2
  254. package/dist/esm/{chunk-EJWAAFCI.js → chunk-IKSN4RNB.js} +2 -2
  255. package/dist/esm/{chunk-3F6I7YOR.js → chunk-JDGJSNWT.js} +2 -2
  256. package/dist/esm/chunk-JUY7CBSL.js +2 -0
  257. package/dist/esm/chunk-JUY7CBSL.js.map +7 -0
  258. package/dist/esm/{chunk-ZSEFZM5H.js → chunk-K6QZMNCD.js} +2 -2
  259. package/dist/esm/chunk-KKBP2CRH.js +2 -0
  260. package/dist/esm/chunk-KKBP2CRH.js.map +7 -0
  261. package/dist/esm/{chunk-ZHYOJNWV.js → chunk-LKAK5GXF.js} +2 -2
  262. package/dist/esm/{chunk-GWYFT3EI.js → chunk-M24UXMOQ.js} +2 -2
  263. package/dist/esm/{chunk-JCYI4NTV.js → chunk-MBCBP73P.js} +2 -2
  264. package/dist/esm/{chunk-UYNYUR7O.js → chunk-MBE2YSBU.js} +2 -2
  265. package/dist/esm/chunk-MHANZINI.js +2 -0
  266. package/dist/esm/chunk-MHANZINI.js.map +7 -0
  267. package/dist/esm/chunk-MK2R6DAU.js +2 -0
  268. package/dist/esm/chunk-MK2R6DAU.js.map +7 -0
  269. package/dist/esm/{chunk-DNI4QRXQ.js → chunk-MOR3NSXQ.js} +2 -2
  270. package/dist/esm/{chunk-H2G446JG.js → chunk-NMKPFUNP.js} +2 -2
  271. package/dist/esm/{chunk-TEULZKBM.js → chunk-OGXZHAQL.js} +2 -2
  272. package/dist/esm/{chunk-M3ZYJANH.js → chunk-OSRJRBKP.js} +2 -2
  273. package/dist/esm/{chunk-2AEELIG6.js → chunk-OWAUCLRT.js} +2 -2
  274. package/dist/esm/{chunk-7CXVHFMQ.js → chunk-P7HYVJSU.js} +2 -2
  275. package/dist/esm/{chunk-4532RT2B.js → chunk-P7IAHW4V.js} +2 -2
  276. package/dist/esm/{chunk-GLC4QJBF.js → chunk-PLWXTEVE.js} +2 -2
  277. package/dist/esm/{chunk-SGU4HUHF.js → chunk-PTLFMWCN.js} +2 -2
  278. package/dist/esm/{chunk-QOWA5LK5.js → chunk-QEOAXJLN.js} +2 -2
  279. package/dist/esm/{chunk-XHQGMOXV.js → chunk-RMKXWYOV.js} +2 -2
  280. package/dist/esm/chunk-S2HA3W3V.js +2 -0
  281. package/dist/esm/chunk-S2HA3W3V.js.map +7 -0
  282. package/dist/esm/{chunk-WZCZHCVE.js → chunk-S56YSRHP.js} +2 -2
  283. package/dist/esm/{chunk-E6IWYD3U.js → chunk-S5C5YRBS.js} +2 -2
  284. package/dist/esm/{chunk-A24PYRVV.js → chunk-SO67YEVQ.js} +2 -2
  285. package/dist/esm/chunk-TLWTUKKL.js +2 -0
  286. package/dist/esm/chunk-TLWTUKKL.js.map +7 -0
  287. package/dist/esm/{chunk-RQ2ZPMHJ.js → chunk-TOLLPRMM.js} +2 -2
  288. package/dist/esm/{chunk-HACQF6F4.js → chunk-TOOSHJOA.js} +2 -2
  289. package/dist/esm/{chunk-42HFGCHX.js → chunk-UGD7Z3L4.js} +2 -2
  290. package/dist/esm/chunk-VA5A4MHU.js +6 -0
  291. package/dist/esm/chunk-VA5A4MHU.js.map +7 -0
  292. package/dist/esm/{chunk-DXI5P5O4.js → chunk-VX6ARMWP.js} +2 -2
  293. package/dist/esm/{chunk-25U7DENY.js → chunk-W7N7V5YD.js} +2 -2
  294. package/dist/esm/chunk-WAURCNAS.js +2 -0
  295. package/dist/esm/chunk-WAURCNAS.js.map +7 -0
  296. package/dist/esm/chunk-WFMYNZXZ.js +2 -0
  297. package/dist/esm/chunk-WFMYNZXZ.js.map +7 -0
  298. package/dist/esm/{chunk-6FAICIYS.js → chunk-XMRIRFM7.js} +2 -2
  299. package/dist/esm/chunk-YEB3H7QN.js +2 -0
  300. package/dist/esm/chunk-YEB3H7QN.js.map +7 -0
  301. package/dist/esm/chunk-YUP6EICB.js +2 -0
  302. package/dist/esm/chunk-YUP6EICB.js.map +7 -0
  303. package/dist/esm/chunk-YV2KYHGR.js +2 -0
  304. package/dist/esm/chunk-YV2KYHGR.js.map +7 -0
  305. package/dist/esm/{chunk-UIEUZLZZ.js → chunk-ZY6SQWHT.js} +2 -2
  306. package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
  307. package/dist/esm/components/_internal/base-button.js +1 -1
  308. package/dist/esm/components/_internal/dropdown-menu-drill-down.js +1 -1
  309. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  310. package/dist/esm/components/_internal/shell-handles.d.ts.map +1 -1
  311. package/dist/esm/components/_internal/shell-handles.js +1 -1
  312. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  313. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  314. package/dist/esm/components/accordion.d.ts.map +1 -1
  315. package/dist/esm/components/accordion.js +1 -1
  316. package/dist/esm/components/alert-dialog.d.ts.map +1 -1
  317. package/dist/esm/components/alert-dialog.js +1 -1
  318. package/dist/esm/components/avatar.js +1 -1
  319. package/dist/esm/components/badge.d.ts.map +1 -1
  320. package/dist/esm/components/badge.js +1 -1
  321. package/dist/esm/components/blockquote.js +1 -1
  322. package/dist/esm/components/box.js +1 -1
  323. package/dist/esm/components/button.js +1 -1
  324. package/dist/esm/components/callout.js +1 -1
  325. package/dist/esm/components/card.js +1 -1
  326. package/dist/esm/components/chatbar.js +1 -1
  327. package/dist/esm/components/checkbox-cards.js +1 -1
  328. package/dist/esm/components/checkbox-group.js +1 -1
  329. package/dist/esm/components/checkbox.js +1 -1
  330. package/dist/esm/components/code.js +1 -1
  331. package/dist/esm/components/combobox.js +1 -1
  332. package/dist/esm/components/container.js +1 -1
  333. package/dist/esm/components/context-menu.d.ts.map +1 -1
  334. package/dist/esm/components/context-menu.js +1 -1
  335. package/dist/esm/components/data-list.js +1 -1
  336. package/dist/esm/components/dialog.d.ts.map +1 -1
  337. package/dist/esm/components/dialog.js +1 -1
  338. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  339. package/dist/esm/components/dropdown-menu.js +1 -1
  340. package/dist/esm/components/em.js +1 -1
  341. package/dist/esm/components/flex.js +1 -1
  342. package/dist/esm/components/grid.js +1 -1
  343. package/dist/esm/components/heading.js +1 -1
  344. package/dist/esm/components/hover-card.js +1 -1
  345. package/dist/esm/components/icon-button.js +1 -1
  346. package/dist/esm/components/image.js +1 -1
  347. package/dist/esm/components/index.js +1 -1
  348. package/dist/esm/components/inset.js +1 -1
  349. package/dist/esm/components/kbd.js +1 -1
  350. package/dist/esm/components/link.js +1 -1
  351. package/dist/esm/components/navbar.js +1 -1
  352. package/dist/esm/components/popover.js +1 -1
  353. package/dist/esm/components/progress.js +1 -1
  354. package/dist/esm/components/quote.js +1 -1
  355. package/dist/esm/components/radio-cards.js +1 -1
  356. package/dist/esm/components/radio-group.js +1 -1
  357. package/dist/esm/components/radio.js +1 -1
  358. package/dist/esm/components/schemas/base-button.schema.d.ts +2 -2
  359. package/dist/esm/components/schemas/button.schema.d.ts +2 -2
  360. package/dist/esm/components/schemas/icon-button.schema.d.ts +4 -4
  361. package/dist/esm/components/schemas/shell.schema.d.ts +2 -2
  362. package/dist/esm/components/schemas/toggle-button.schema.d.ts +6 -6
  363. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts +8 -8
  364. package/dist/esm/components/scroll-area.js +1 -1
  365. package/dist/esm/components/section.js +1 -1
  366. package/dist/esm/components/segmented-control.js +1 -1
  367. package/dist/esm/components/select.js +1 -1
  368. package/dist/esm/components/separator.js +1 -1
  369. package/dist/esm/components/sheet.d.ts.map +1 -1
  370. package/dist/esm/components/sheet.js +1 -1
  371. package/dist/esm/components/shell.js +1 -1
  372. package/dist/esm/components/sidebar.js +1 -1
  373. package/dist/esm/components/skeleton.js +1 -1
  374. package/dist/esm/components/slider.js +1 -1
  375. package/dist/esm/components/spinner.js +1 -1
  376. package/dist/esm/components/strong.js +1 -1
  377. package/dist/esm/components/switch.js +1 -1
  378. package/dist/esm/components/tab-nav.js +1 -1
  379. package/dist/esm/components/table.js +1 -1
  380. package/dist/esm/components/tabs.js +1 -1
  381. package/dist/esm/components/text-area.js +1 -1
  382. package/dist/esm/components/text-field.js +1 -1
  383. package/dist/esm/components/text.js +1 -1
  384. package/dist/esm/components/theme-panel.js +1 -1
  385. package/dist/esm/components/theme.d.ts +3 -0
  386. package/dist/esm/components/theme.d.ts.map +1 -1
  387. package/dist/esm/components/theme.js +1 -1
  388. package/dist/esm/components/theme.props.d.ts +15 -1
  389. package/dist/esm/components/theme.props.d.ts.map +1 -1
  390. package/dist/esm/components/theme.props.js +1 -1
  391. package/dist/esm/components/toggle-button.js +1 -1
  392. package/dist/esm/components/toggle-icon-button.js +1 -1
  393. package/dist/esm/components/toolbar.js +1 -1
  394. package/dist/esm/components/tooltip.js +1 -1
  395. package/dist/esm/components/user-card.js +1 -1
  396. package/dist/esm/helpers/compile-prop-defs.d.ts +49 -0
  397. package/dist/esm/helpers/compile-prop-defs.d.ts.map +1 -0
  398. package/dist/esm/helpers/compile-prop-defs.js +2 -0
  399. package/dist/esm/helpers/compile-prop-defs.js.map +7 -0
  400. package/dist/esm/helpers/extract-props.d.ts.map +1 -1
  401. package/dist/esm/helpers/extract-props.js +1 -1
  402. package/dist/esm/helpers/font-config.d.ts +84 -77
  403. package/dist/esm/helpers/font-config.d.ts.map +1 -1
  404. package/dist/esm/helpers/font-config.js +1 -1
  405. package/dist/esm/helpers/get-margin-styles.d.ts.map +1 -1
  406. package/dist/esm/helpers/get-margin-styles.js +1 -1
  407. package/dist/esm/helpers/get-responsive-styles.d.ts +5 -2
  408. package/dist/esm/helpers/get-responsive-styles.d.ts.map +1 -1
  409. package/dist/esm/helpers/get-responsive-styles.js +1 -1
  410. package/dist/esm/helpers/index.js +1 -1
  411. package/dist/esm/helpers/use-deprecation-warning.d.ts +10 -0
  412. package/dist/esm/helpers/use-deprecation-warning.d.ts.map +1 -0
  413. package/dist/esm/helpers/use-deprecation-warning.js +2 -0
  414. package/dist/esm/helpers/use-deprecation-warning.js.map +7 -0
  415. package/dist/esm/hooks/index.js +1 -1
  416. package/dist/esm/hooks/use-body-pointer-events-cleanup.d.ts.map +1 -1
  417. package/dist/esm/hooks/use-body-pointer-events-cleanup.js +1 -1
  418. package/dist/esm/hooks/use-breakpoint.d.ts +7 -3
  419. package/dist/esm/hooks/use-breakpoint.d.ts.map +1 -1
  420. package/dist/esm/hooks/use-breakpoint.js +1 -1
  421. package/dist/esm/hooks/use-prop-synced-state.d.ts +14 -0
  422. package/dist/esm/hooks/use-prop-synced-state.d.ts.map +1 -0
  423. package/dist/esm/hooks/use-prop-synced-state.js +2 -0
  424. package/dist/esm/hooks/use-prop-synced-state.js.map +7 -0
  425. package/dist/esm/index.js +1 -1
  426. package/dist/esm/props/index.js +1 -1
  427. package/fonts.css +8 -0
  428. package/package.json +18 -7
  429. package/schemas/base-button.json +0 -1
  430. package/schemas/button.json +0 -1
  431. package/schemas/icon-button.json +0 -1
  432. package/schemas/index.json +0 -6
  433. package/schemas/toggle-button.json +0 -1
  434. package/schemas/toggle-icon-button.json +0 -1
  435. package/src/components/_internal/base-button.css +2 -2
  436. package/src/components/_internal/base-button.tsx +3 -58
  437. package/src/components/_internal/base-card.css +19 -4
  438. package/src/components/_internal/base-checkbox.css +2 -2
  439. package/src/components/_internal/base-dialog.css +7 -0
  440. package/src/components/_internal/base-menu.css +7 -0
  441. package/src/components/_internal/base-radio.css +2 -2
  442. package/src/components/_internal/base-sidebar.css +7 -0
  443. package/src/components/_internal/base-tab-list.css +2 -2
  444. package/src/components/_internal/shell-handles.tsx +27 -0
  445. package/src/components/accordion.css +6 -6
  446. package/src/components/accordion.tsx +2 -8
  447. package/src/components/alert-dialog.tsx +22 -20
  448. package/src/components/avatar.css +2 -2
  449. package/src/components/badge.css +2 -2
  450. package/src/components/badge.tsx +2 -8
  451. package/src/components/callout.css +2 -2
  452. package/src/components/chatbar.css +1 -1
  453. package/src/components/context-menu.tsx +2 -8
  454. package/src/components/dialog.tsx +22 -20
  455. package/src/components/dropdown-menu.tsx +2 -8
  456. package/src/components/heading.css +10 -3
  457. package/src/components/popover.css +7 -0
  458. package/src/components/progress.css +21 -8
  459. package/src/components/segmented-control.css +2 -2
  460. package/src/components/select.css +9 -2
  461. package/src/components/sheet.tsx +31 -28
  462. package/src/components/shell.css +106 -69
  463. package/src/components/slider.css +2 -2
  464. package/src/components/switch.css +2 -2
  465. package/src/components/table.css +7 -0
  466. package/src/components/text-area.css +2 -2
  467. package/src/components/text-field.css +2 -2
  468. package/src/components/text.css +10 -3
  469. package/src/components/theme.props.tsx +13 -1
  470. package/src/components/theme.tsx +53 -34
  471. package/src/helpers/compile-prop-defs.ts +121 -0
  472. package/src/helpers/extract-props.ts +104 -83
  473. package/src/helpers/font-config.ts +130 -148
  474. package/src/helpers/get-margin-styles.ts +38 -71
  475. package/src/helpers/get-responsive-styles.ts +37 -38
  476. package/src/helpers/use-deprecation-warning.ts +26 -0
  477. package/src/hooks/use-body-pointer-events-cleanup.ts +36 -6
  478. package/src/hooks/use-breakpoint.ts +94 -53
  479. package/src/hooks/use-prop-synced-state.ts +24 -0
  480. package/src/styles/fonts.css +24 -29
  481. package/src/styles/index.css +0 -1
  482. package/src/styles/tokens/base.css +1 -0
  483. package/src/styles/tokens/blur.css +28 -0
  484. package/src/styles/tokens/color.css +3 -3
  485. package/src/styles/tokens/constants.css +11 -0
  486. package/src/styles/tokens/font-family.css +263 -0
  487. package/src/styles/tokens/typography.css +2 -216
  488. package/styles.css +8776 -8727
  489. package/tokens/base.css +50 -30
  490. package/tokens.css +53 -30
  491. package/dist/esm/chunk-2SS3FA3N.js +0 -2
  492. package/dist/esm/chunk-2SS3FA3N.js.map +0 -7
  493. package/dist/esm/chunk-5U2Q23K3.js +0 -2
  494. package/dist/esm/chunk-5U2Q23K3.js.map +0 -7
  495. package/dist/esm/chunk-6ELPYR73.js +0 -2
  496. package/dist/esm/chunk-6ELPYR73.js.map +0 -7
  497. package/dist/esm/chunk-DZ4H2KTP.js +0 -2
  498. package/dist/esm/chunk-DZ4H2KTP.js.map +0 -7
  499. package/dist/esm/chunk-H4MMVAGQ.js +0 -2
  500. package/dist/esm/chunk-H4MMVAGQ.js.map +0 -7
  501. package/dist/esm/chunk-ITRVKLYU.js +0 -2
  502. package/dist/esm/chunk-ITRVKLYU.js.map +0 -7
  503. package/dist/esm/chunk-KCAFSCOV.js +0 -2
  504. package/dist/esm/chunk-KCAFSCOV.js.map +0 -7
  505. package/dist/esm/chunk-KMPBTEZH.js +0 -2
  506. package/dist/esm/chunk-KMPBTEZH.js.map +0 -7
  507. package/dist/esm/chunk-LN5SP46K.js +0 -2
  508. package/dist/esm/chunk-LN5SP46K.js.map +0 -7
  509. package/dist/esm/chunk-OKJNS7Z7.js +0 -2
  510. package/dist/esm/chunk-OKJNS7Z7.js.map +0 -7
  511. package/dist/esm/chunk-Q73Y5O5P.js +0 -2
  512. package/dist/esm/chunk-Q73Y5O5P.js.map +0 -7
  513. package/dist/esm/chunk-Q7P6BTVU.js +0 -3
  514. package/dist/esm/chunk-Q7P6BTVU.js.map +0 -7
  515. package/dist/esm/chunk-T27QHMW7.js +0 -2
  516. package/dist/esm/chunk-UUX42HBM.js +0 -2
  517. package/dist/esm/chunk-UUX42HBM.js.map +0 -7
  518. package/dist/esm/chunk-X7BD5FLE.js +0 -2
  519. package/dist/esm/chunk-X7BD5FLE.js.map +0 -7
  520. package/dist/esm/chunk-YEA646GM.js +0 -2
  521. package/dist/esm/chunk-YEA646GM.js.map +0 -7
  522. package/dist/esm/chunk-ZMEXIPWM.js +0 -2
  523. package/dist/esm/chunk-ZMEXIPWM.js.map +0 -7
  524. /package/dist/esm/{chunk-WYA4IRU6.js.map → chunk-25WZA7ZU.js.map} +0 -0
  525. /package/dist/esm/{chunk-ARGX2ZZK.js.map → chunk-2FYJTSOP.js.map} +0 -0
  526. /package/dist/esm/{chunk-K3R4AH3E.js.map → chunk-3MWWP4MW.js.map} +0 -0
  527. /package/dist/esm/{chunk-HQ35PM4O.js.map → chunk-43A5GUSI.js.map} +0 -0
  528. /package/dist/esm/{chunk-Z5DQ6FSA.js.map → chunk-4AQTUBVP.js.map} +0 -0
  529. /package/dist/esm/{chunk-QLIELX4I.js.map → chunk-4ME6O27S.js.map} +0 -0
  530. /package/dist/esm/{chunk-JQOFJNCV.js.map → chunk-4YFJWXL2.js.map} +0 -0
  531. /package/dist/esm/{chunk-IPJUHVM6.js.map → chunk-666GX7O5.js.map} +0 -0
  532. /package/dist/esm/{chunk-7CBAHIVG.js.map → chunk-6IGTK4JE.js.map} +0 -0
  533. /package/dist/esm/{chunk-DJBPM5QK.js.map → chunk-7FC7HF76.js.map} +0 -0
  534. /package/dist/esm/{chunk-SVLY6B5F.js.map → chunk-7QDTSBJF.js.map} +0 -0
  535. /package/dist/esm/{chunk-7MURQ6CR.js.map → chunk-A2RZGGMY.js.map} +0 -0
  536. /package/dist/esm/{chunk-VF5TRT3H.js.map → chunk-AU3D6F42.js.map} +0 -0
  537. /package/dist/esm/{chunk-DK5MHD6I.js.map → chunk-B24BDVG2.js.map} +0 -0
  538. /package/dist/esm/{chunk-BJTJUIYJ.js.map → chunk-CRWYCLTE.js.map} +0 -0
  539. /package/dist/esm/{chunk-OHJVFZMH.js.map → chunk-CSKZZOI2.js.map} +0 -0
  540. /package/dist/esm/{chunk-4N5JU7XQ.js.map → chunk-CVWCKOHO.js.map} +0 -0
  541. /package/dist/esm/{chunk-ADYTQCZX.js.map → chunk-D6B7IMZU.js.map} +0 -0
  542. /package/dist/esm/{chunk-U7AASKZI.js.map → chunk-DNHUQLXO.js.map} +0 -0
  543. /package/dist/esm/{chunk-USGTBZ43.js.map → chunk-E67CIG6A.js.map} +0 -0
  544. /package/dist/esm/{chunk-YUZPSUJE.js.map → chunk-F7IYL2VW.js.map} +0 -0
  545. /package/dist/esm/{chunk-FVCWNSRU.js.map → chunk-FHOCUZDR.js.map} +0 -0
  546. /package/dist/esm/{chunk-APRBRAOT.js.map → chunk-FXUUI6Z2.js.map} +0 -0
  547. /package/dist/esm/{chunk-WNSPLWRV.js.map → chunk-GJSGKE7B.js.map} +0 -0
  548. /package/dist/esm/{chunk-OGOOZLUD.js.map → chunk-GLERJXVS.js.map} +0 -0
  549. /package/dist/esm/{chunk-6VGPTAHM.js.map → chunk-GWXVETMF.js.map} +0 -0
  550. /package/dist/esm/{chunk-ES7MK2MM.js.map → chunk-GYBLXQ4R.js.map} +0 -0
  551. /package/dist/esm/{chunk-4OBMRJHC.js.map → chunk-H7ST535H.js.map} +0 -0
  552. /package/dist/esm/{chunk-QLZ5XAW6.js.map → chunk-HF5WY5YE.js.map} +0 -0
  553. /package/dist/esm/{chunk-RDP4UQ42.js.map → chunk-IEWCQU2S.js.map} +0 -0
  554. /package/dist/esm/{chunk-XLOHPURR.js.map → chunk-IHK3H2OM.js.map} +0 -0
  555. /package/dist/esm/{chunk-EJWAAFCI.js.map → chunk-IKSN4RNB.js.map} +0 -0
  556. /package/dist/esm/{chunk-3F6I7YOR.js.map → chunk-JDGJSNWT.js.map} +0 -0
  557. /package/dist/esm/{chunk-ZSEFZM5H.js.map → chunk-K6QZMNCD.js.map} +0 -0
  558. /package/dist/esm/{chunk-ZHYOJNWV.js.map → chunk-LKAK5GXF.js.map} +0 -0
  559. /package/dist/esm/{chunk-GWYFT3EI.js.map → chunk-M24UXMOQ.js.map} +0 -0
  560. /package/dist/esm/{chunk-JCYI4NTV.js.map → chunk-MBCBP73P.js.map} +0 -0
  561. /package/dist/esm/{chunk-UYNYUR7O.js.map → chunk-MBE2YSBU.js.map} +0 -0
  562. /package/dist/esm/{chunk-DNI4QRXQ.js.map → chunk-MOR3NSXQ.js.map} +0 -0
  563. /package/dist/esm/{chunk-H2G446JG.js.map → chunk-NMKPFUNP.js.map} +0 -0
  564. /package/dist/esm/{chunk-TEULZKBM.js.map → chunk-OGXZHAQL.js.map} +0 -0
  565. /package/dist/esm/{chunk-M3ZYJANH.js.map → chunk-OSRJRBKP.js.map} +0 -0
  566. /package/dist/esm/{chunk-2AEELIG6.js.map → chunk-OWAUCLRT.js.map} +0 -0
  567. /package/dist/esm/{chunk-7CXVHFMQ.js.map → chunk-P7HYVJSU.js.map} +0 -0
  568. /package/dist/esm/{chunk-4532RT2B.js.map → chunk-P7IAHW4V.js.map} +0 -0
  569. /package/dist/esm/{chunk-GLC4QJBF.js.map → chunk-PLWXTEVE.js.map} +0 -0
  570. /package/dist/esm/{chunk-SGU4HUHF.js.map → chunk-PTLFMWCN.js.map} +0 -0
  571. /package/dist/esm/{chunk-QOWA5LK5.js.map → chunk-QEOAXJLN.js.map} +0 -0
  572. /package/dist/esm/{chunk-XHQGMOXV.js.map → chunk-RMKXWYOV.js.map} +0 -0
  573. /package/dist/esm/{chunk-WZCZHCVE.js.map → chunk-S56YSRHP.js.map} +0 -0
  574. /package/dist/esm/{chunk-E6IWYD3U.js.map → chunk-S5C5YRBS.js.map} +0 -0
  575. /package/dist/esm/{chunk-A24PYRVV.js.map → chunk-SO67YEVQ.js.map} +0 -0
  576. /package/dist/esm/{chunk-RQ2ZPMHJ.js.map → chunk-TOLLPRMM.js.map} +0 -0
  577. /package/dist/esm/{chunk-HACQF6F4.js.map → chunk-TOOSHJOA.js.map} +0 -0
  578. /package/dist/esm/{chunk-42HFGCHX.js.map → chunk-UGD7Z3L4.js.map} +0 -0
  579. /package/dist/esm/{chunk-DXI5P5O4.js.map → chunk-VX6ARMWP.js.map} +0 -0
  580. /package/dist/esm/{chunk-25U7DENY.js.map → chunk-W7N7V5YD.js.map} +0 -0
  581. /package/dist/esm/{chunk-6FAICIYS.js.map → chunk-XMRIRFM7.js.map} +0 -0
  582. /package/dist/esm/{chunk-UIEUZLZZ.js.map → chunk-ZY6SQWHT.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var E=Object.create;var x=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var M=Object.getOwnPropertyNames;var L=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty;var V=(e,o)=>{for(var r in o)x(e,r,{get:o[r],enumerable:!0})},h=(e,o,r,s)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of M(o))!T.call(e,n)&&n!==r&&x(e,n,{get:()=>o[n],enumerable:!(s=A(o,n))||s.enumerable});return e};var w=(e,o,r)=>(r=e!=null?E(L(e)):{},h(o||!e||!e.__esModule?x(r,"default",{value:e,enumerable:!0}):r,e)),z=e=>h(x({},"__esModule",{value:!0}),e);var K={};V(K,{DrillDownActionsContext:()=>v,DrillDownProvider:()=>O,DrillDownStateContext:()=>R,SubContext:()=>C,resolveResponsiveValue:()=>P,useBreakpoint:()=>b,useDrillDownActions:()=>N,useDrillDownActionsOptional:()=>Q,useDrillDownState:()=>I,useDrillDownStateOptional:()=>_,useSubContext:()=>j});module.exports=z(K);var t=w(require("react"));var m=w(require("react"));var S={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"};function b(){let[e,o]=m.useState("initial"),[r,s]=m.useState(!1);return m.useEffect(()=>{if(typeof window>"u")return;let u=Object.entries(S).map(([a,i])=>[a,window.matchMedia(i)]),l=a=>{let i=u.filter(([,d])=>d.matches).map(([d])=>d),f=i[i.length-1]??"initial";o(f),s(!0)};l();let c=[];return u.forEach(([,a])=>{let i=a;typeof i.addEventListener=="function"&&typeof i.removeEventListener=="function"?(i.addEventListener("change",l),c.push(()=>i.removeEventListener?.("change",l))):typeof i.addListener=="function"&&typeof i.removeListener=="function"&&(i.addListener(l),c.push(()=>i.removeListener?.(l)))}),()=>{c.forEach(a=>{try{a()}catch{}})}},[]),{breakpoint:e,ready:r}}function P(e,o,r){if(e==null)return r;if(typeof e!="object")return e;let s=e;if(s[o]!==void 0)return s[o];let n=["xl","lg","md","sm","xs","initial"],u=n.indexOf(o);for(let l=u+1;l<n.length;l++){let c=n[l];if(s[c]!==void 0)return s[c]}return r}var v=t.createContext(null),R=t.createContext(null);function O({children:e,submenuBehavior:o}){let{breakpoint:r,ready:s}=b(),[n,u]=t.useState([]),[l,c]=t.useState(null),a=t.useMemo(()=>P(o,r,"cascade"),[o,r]),i=t.useRef(a);t.useEffect(()=>{i.current==="drill-down"&&a==="cascade"&&(u([]),c(null)),i.current=a},[a]);let f=t.useCallback(p=>{c("forward"),u(B=>[...B,p])},[]),d=t.useCallback(()=>{c("backward"),u(p=>p.slice(0,-1))},[]),D=t.useCallback(()=>{u([]),c(null)},[]),g=t.useMemo(()=>({push:f,pop:d,reset:D}),[f,d,D]),y=t.useCallback(p=>n.length===0?!1:n[n.length-1]===p,[n]),k=t.useMemo(()=>({behavior:a,ready:s,stack:n,isActive:y,isRoot:n.length===0,currentId:n.length>0?n[n.length-1]:null,animationDirection:l}),[a,s,n,y,l]);return t.createElement(v.Provider,{value:g},t.createElement(R.Provider,{value:k},e))}function N(){let e=t.useContext(v);if(!e)throw new Error("useDrillDownActions must be used within a DropdownMenu.Content");return e}function I(){let e=t.useContext(R);if(!e)throw new Error("useDrillDownState must be used within a DropdownMenu.Content");return e}function Q(){return t.useContext(v)}function _(){return t.useContext(R)}var C=t.createContext(null);function j(){return t.useContext(C)}
1
+ "use strict";"use client";var O=Object.create;var f=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var N=Object.getOwnPropertyNames;var Q=Object.getPrototypeOf,j=Object.prototype.hasOwnProperty;var _=(e,t)=>{for(var r in t)f(e,r,{get:t[r],enumerable:!0})},g=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of N(t))!j.call(e,o)&&o!==r&&f(e,o,{get:()=>t[o],enumerable:!(i=I(t,o))||i.enumerable});return e};var k=(e,t,r)=>(r=e!=null?O(Q(e)):{},g(t||!e||!e.__esModule?f(r,"default",{value:e,enumerable:!0}):r,e)),q=e=>g(f({},"__esModule",{value:!0}),e);var ee={};_(ee,{DrillDownActionsContext:()=>b,DrillDownProvider:()=>G,DrillDownStateContext:()=>R,SubContext:()=>V,resolveResponsiveValue:()=>M,useBreakpoint:()=>v,useDrillDownActions:()=>H,useDrillDownActionsOptional:()=>X,useDrillDownState:()=>J,useDrillDownStateOptional:()=>Y,useSubContext:()=>Z});module.exports=q(ee);var n=k(require("react"));var m=k(require("react"));var B={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"};var K=Object.entries(B),A=null,d=new Set,u=null;function S(){return A??(A=K.map(([e,t])=>[e,window.matchMedia(t)])),A}function D(){let e="initial";for(let[t,r]of S())r.matches&&(e=t);return e}function x(){let e=D();e!==u&&(u=e,d.forEach(t=>t()))}function E(e){if(typeof window>"u")return()=>{};if(d.size===0){u=D();for(let[,t]of S())typeof t.addEventListener=="function"?t.addEventListener("change",x):t.addListener?.(x)}return d.add(e),()=>{if(d.delete(e),!(d.size>0)){for(let[,t]of S())try{typeof t.removeEventListener=="function"?t.removeEventListener("change",x):t.removeListener?.(x)}catch{}u=null}}}function W(){return typeof window>"u"?"initial":(u??(u=D()),u)}function U(){return"initial"}var $=()=>!0,F=()=>!1;function v(){let e=m.useSyncExternalStore(E,W,U),t=m.useSyncExternalStore(E,$,F);return m.useMemo(()=>({breakpoint:e,ready:t}),[e,t])}function M(e,t,r){if(e==null)return r;if(typeof e!="object")return e;let i=e;if(i[t]!==void 0)return i[t];let o=["xl","lg","md","sm","xs","initial"],s=o.indexOf(t);for(let l=s+1;l<o.length;l++){let a=o[l];if(i[a]!==void 0)return i[a]}return r}var b=n.createContext(null),R=n.createContext(null);function G({children:e,submenuBehavior:t}){let{breakpoint:r,ready:i}=v(),[o,s]=n.useState([]),[l,a]=n.useState(null),c=n.useMemo(()=>M(t,r,"cascade"),[t,r]),h=n.useRef(c);n.useEffect(()=>{h.current==="drill-down"&&c==="cascade"&&(s([]),a(null)),h.current=c},[c]);let w=n.useCallback(p=>{a("forward"),s(L=>[...L,p])},[]),y=n.useCallback(()=>{a("backward"),s(p=>p.slice(0,-1))},[]),P=n.useCallback(()=>{s([]),a(null)},[]),T=n.useMemo(()=>({push:w,pop:y,reset:P}),[w,y,P]),C=n.useCallback(p=>o.length===0?!1:o[o.length-1]===p,[o]),z=n.useMemo(()=>({behavior:c,ready:i,stack:o,isActive:C,isRoot:o.length===0,currentId:o.length>0?o[o.length-1]:null,animationDirection:l}),[c,i,o,C,l]);return n.createElement(b.Provider,{value:T},n.createElement(R.Provider,{value:z},e))}function H(){let e=n.useContext(b);if(!e)throw new Error("useDrillDownActions must be used within a DropdownMenu.Content");return e}function J(){let e=n.useContext(R);if(!e)throw new Error("useDrillDownState must be used within a DropdownMenu.Content");return e}function X(){return n.useContext(b)}function Y(){return n.useContext(R)}var V=n.createContext(null);function Z(){return n.useContext(V)}
2
2
  //# sourceMappingURL=dropdown-menu-drill-down.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/_internal/dropdown-menu-drill-down.tsx", "../../../../src/hooks/use-breakpoint.ts", "../../../../src/components/shell.types.ts"],
4
- "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport type { Breakpoint, Responsive } from '../../props/prop-def.js';\nimport type { submenuBehaviors } from './base-menu.props.js';\nimport { useBreakpoint } from '../../hooks/use-breakpoint.js';\n\ntype SubmenuBehavior = (typeof submenuBehaviors)[number];\n\n/**\n * Resolves a responsive value to its current value based on the breakpoint.\n * Falls back through smaller breakpoints if the current one isn't defined.\n */\nfunction resolveResponsiveValue<T>(\n value: T | Partial<Record<Breakpoint, T>> | undefined,\n currentBreakpoint: Breakpoint,\n defaultValue: T\n): T {\n if (value === undefined || value === null) {\n return defaultValue;\n }\n\n // Non-object values are returned directly\n if (typeof value !== 'object') {\n return value;\n }\n\n const map = value as Partial<Record<Breakpoint, T>>;\n\n // Check if current breakpoint has a value\n if (map[currentBreakpoint] !== undefined) {\n return map[currentBreakpoint] as T;\n }\n\n // Fall back through smaller breakpoints\n const bpOrder: Breakpoint[] = ['xl', 'lg', 'md', 'sm', 'xs', 'initial'];\n const startIdx = bpOrder.indexOf(currentBreakpoint);\n\n for (let i = startIdx + 1; i < bpOrder.length; i++) {\n const bp = bpOrder[i];\n if (map[bp] !== undefined) {\n return map[bp] as T;\n }\n }\n\n return defaultValue;\n}\n\n// ============================================================================\n// DrillDown Context\n// ============================================================================\n\ntype AnimationDirection = 'forward' | 'backward' | null;\n\n/**\n * Stable actions context - callbacks that don't change identity.\n * Separated from state to prevent unnecessary re-renders of components\n * that only need to call push/pop/reset.\n */\ninterface DrillDownActionsContextValue {\n /** Navigate into a submenu */\n push: (id: string) => void;\n /** Navigate back to parent menu */\n pop: () => void;\n /** Reset to root menu */\n reset: () => void;\n}\n\n/**\n * Mutable state context - values that change when navigation occurs.\n * Subscribers to this context will re-render on stack changes.\n */\ninterface DrillDownStateContextValue {\n /** Current submenu behavior mode */\n behavior: SubmenuBehavior;\n /** Whether the breakpoint has been resolved (client-side only) */\n ready: boolean;\n /** Stack of active submenu IDs. Empty means root menu is shown. */\n stack: string[];\n /** Check if a specific submenu is the currently active one */\n isActive: (id: string) => boolean;\n /** Check if we're at root level (no submenus open) */\n isRoot: boolean;\n /** The currently active submenu ID (or null if at root) */\n currentId: string | null;\n /** Current animation direction for transitions */\n animationDirection: AnimationDirection;\n}\n\nconst DrillDownActionsContext = React.createContext<DrillDownActionsContextValue | null>(null);\nconst DrillDownStateContext = React.createContext<DrillDownStateContextValue | null>(null);\n\ninterface DrillDownProviderProps {\n children: React.ReactNode;\n submenuBehavior: Responsive<SubmenuBehavior> | undefined;\n}\n\nfunction DrillDownProvider({ children, submenuBehavior }: DrillDownProviderProps) {\n const { breakpoint, ready } = useBreakpoint();\n const [stack, setStack] = React.useState<string[]>([]);\n const [animationDirection, setAnimationDirection] = React.useState<AnimationDirection>(null);\n\n // Resolve the current behavior based on breakpoint\n const behavior = React.useMemo(\n () => resolveResponsiveValue(submenuBehavior, breakpoint, 'cascade'),\n [submenuBehavior, breakpoint]\n );\n\n // Reset stack when behavior changes from drill-down to cascade\n const prevBehaviorRef = React.useRef(behavior);\n React.useEffect(() => {\n if (prevBehaviorRef.current === 'drill-down' && behavior === 'cascade') {\n setStack([]);\n setAnimationDirection(null);\n }\n prevBehaviorRef.current = behavior;\n }, [behavior]);\n\n // Stable action callbacks - these never change identity\n const push = React.useCallback((id: string) => {\n setAnimationDirection('forward');\n setStack((prev) => [...prev, id]);\n }, []);\n\n const pop = React.useCallback(() => {\n setAnimationDirection('backward');\n setStack((prev) => prev.slice(0, -1));\n }, []);\n\n const reset = React.useCallback(() => {\n setStack([]);\n setAnimationDirection(null);\n }, []);\n\n // Memoize actions context value - completely stable, never changes\n const actionsValue = React.useMemo(\n (): DrillDownActionsContextValue => ({ push, pop, reset }),\n [push, pop, reset]\n );\n\n // isActive depends on stack - this is expected to change\n const isActive = React.useCallback(\n (id: string) => {\n if (stack.length === 0) return false;\n return stack[stack.length - 1] === id;\n },\n [stack]\n );\n\n // Memoize state context value - changes when stack/behavior changes\n const stateValue = React.useMemo(\n (): DrillDownStateContextValue => ({\n behavior,\n ready,\n stack,\n isActive,\n isRoot: stack.length === 0,\n currentId: stack.length > 0 ? stack[stack.length - 1] : null,\n animationDirection,\n }),\n [behavior, ready, stack, isActive, animationDirection]\n );\n\n return (\n <DrillDownActionsContext.Provider value={actionsValue}>\n <DrillDownStateContext.Provider value={stateValue}>\n {children}\n </DrillDownStateContext.Provider>\n </DrillDownActionsContext.Provider>\n );\n}\n\n/**\n * Hook to access only the stable action callbacks (push, pop, reset).\n * Use this in components that only need to trigger navigation,\n * not react to state changes. Prevents unnecessary re-renders.\n */\nfunction useDrillDownActions() {\n const ctx = React.useContext(DrillDownActionsContext);\n if (!ctx) {\n throw new Error('useDrillDownActions must be used within a DropdownMenu.Content');\n }\n return ctx;\n}\n\n/**\n * Hook to access drill-down state (behavior, stack, isActive, etc.).\n * Components using this will re-render when navigation state changes.\n */\nfunction useDrillDownState() {\n const ctx = React.useContext(DrillDownStateContext);\n if (!ctx) {\n throw new Error('useDrillDownState must be used within a DropdownMenu.Content');\n }\n return ctx;\n}\n\n/**\n * Optional version of useDrillDownActions for components that may be outside Content.\n */\nfunction useDrillDownActionsOptional() {\n return React.useContext(DrillDownActionsContext);\n}\n\n/**\n * Optional version of useDrillDownState for components that may be outside Content.\n */\nfunction useDrillDownStateOptional() {\n return React.useContext(DrillDownStateContext);\n}\n\n// ============================================================================\n// Sub Context (for individual submenu instances)\n// ============================================================================\n\ninterface SubContextValue {\n /** Unique ID for this submenu */\n id: string;\n /** Label for the back button */\n label: React.ReactNode;\n}\n\nconst SubContext = React.createContext<SubContextValue | null>(null);\n\nfunction useSubContext() {\n return React.useContext(SubContext);\n}\n\nexport {\n DrillDownProvider,\n DrillDownActionsContext,\n DrillDownStateContext,\n SubContext,\n useDrillDownActions,\n useDrillDownActionsOptional,\n useDrillDownState,\n useDrillDownStateOptional,\n useSubContext,\n useBreakpoint,\n resolveResponsiveValue,\n};\n\nexport type {\n SubmenuBehavior,\n DrillDownActionsContextValue,\n DrillDownStateContextValue,\n SubContextValue,\n AnimationDirection,\n};\n", "'use client';\n\nimport * as React from 'react';\nimport { _BREAKPOINTS, type Breakpoint } from '../components/shell.types.js';\n\n/**\n * Hook to get the current breakpoint based on window width.\n * Returns 'initial' on the server and during initial hydration.\n * Uses shared breakpoint values from shell.types.js.\n */\nexport function useBreakpoint(): { breakpoint: Breakpoint; ready: boolean } {\n const [currentBp, setCurrentBp] = React.useState<Breakpoint>('initial');\n const [ready, setReady] = React.useState(false);\n\n React.useEffect(() => {\n if (typeof window === 'undefined') return;\n\n const queries = Object.entries(_BREAKPOINTS) as [keyof typeof _BREAKPOINTS, string][];\n const mqls = queries.map(([k, q]) => [k, window.matchMedia(q)] as const);\n\n // Accept optional event param to satisfy MediaQueryList listener signature\n const compute = (_e?: MediaQueryListEvent) => {\n // Highest matched wins\n const matched = mqls.filter(([, m]) => m.matches).map(([k]) => k);\n const next = (matched[matched.length - 1] as Breakpoint | undefined) ?? 'initial';\n setCurrentBp(next);\n setReady(true);\n };\n\n compute();\n const cleanups: Array<() => void> = [];\n mqls.forEach(([, m]) => {\n const mm = m as MediaQueryList & {\n addEventListener?: (type: 'change', listener: (e: MediaQueryListEvent) => void) => void;\n removeEventListener?: (type: 'change', listener: (e: MediaQueryListEvent) => void) => void;\n addListener?: (listener: (e: MediaQueryListEvent) => void) => void;\n removeListener?: (listener: (e: MediaQueryListEvent) => void) => void;\n };\n if (typeof mm.addEventListener === 'function' && typeof mm.removeEventListener === 'function') {\n mm.addEventListener('change', compute);\n cleanups.push(() => mm.removeEventListener?.('change', compute));\n } else if (typeof mm.addListener === 'function' && typeof mm.removeListener === 'function') {\n mm.addListener(compute);\n cleanups.push(() => mm.removeListener?.(compute));\n }\n });\n\n return () => {\n cleanups.forEach((fn) => {\n try {\n fn();\n } catch (e) {\n // MediaQueryList cleanup can fail in edge cases (e.g., already removed)\n if (process.env.NODE_ENV !== 'production') {\n console.warn('[useBreakpoint] MediaQueryList cleanup warning:', e);\n }\n }\n });\n };\n }, []);\n\n return { breakpoint: currentBp, ready };\n}\n", "import type * as React from 'react';\n\nexport type PresentationValue = 'fixed' | 'overlay' | 'stacked';\n\nexport type ResponsivePresentation = PresentationValue | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PresentationValue>>;\n\nexport type PaneMode = 'expanded' | 'collapsed';\nexport type SidebarMode = 'collapsed' | 'thin' | 'expanded';\n\nexport type ResponsiveMode = PaneMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PaneMode>>;\n\nexport type ResponsiveSidebarMode = SidebarMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', SidebarMode>>;\n\nexport type Responsive<T> = T | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', T>>;\n\nexport type PaneSizePersistence = {\n load?: () => number | Promise<number | undefined> | undefined;\n save?: (size: number) => void | Promise<void>;\n};\n\nexport interface PaneBaseProps extends React.ComponentPropsWithoutRef<'div'> {\n presentation?: ResponsivePresentation;\n expandedSize?: number;\n minSize?: number;\n maxSize?: number;\n height?: string | number;\n resizable?: boolean;\n collapsible?: boolean;\n onExpand?: () => void;\n onCollapse?: () => void;\n onResize?: (size: number) => void;\n resizer?: React.ReactNode;\n onResizeStart?: (size: number) => void;\n onResizeEnd?: (size: number) => void;\n snapPoints?: number[];\n snapTolerance?: number;\n collapseThreshold?: number;\n paneId?: string;\n persistence?: PaneSizePersistence;\n}\n\nexport const _BREAKPOINTS = {\n xs: '(min-width: 520px)',\n sm: '(min-width: 768px)',\n md: '(min-width: 1024px)',\n lg: '(min-width: 1280px)',\n xl: '(min-width: 1640px)',\n} as const;\n\nexport type Breakpoint = 'initial' | keyof typeof _BREAKPOINTS;\n\nexport type PaneTarget = 'left' | 'rail' | 'panel' | 'sidebar' | 'inspector' | 'bottom';\n\n/**\n * CSS custom property key type for type-safe style objects.\n * Allows any string prefixed with '--'.\n */\nexport type CSSCustomProperty = `--${string}`;\n\n/**\n * Style object that supports CSS custom properties.\n */\nexport type CSSPropertiesWithVars = React.CSSProperties & {\n [key: CSSCustomProperty]: string | number | undefined;\n};\n"],
5
- "mappings": "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",
6
- "names": ["dropdown_menu_drill_down_exports", "__export", "DrillDownActionsContext", "DrillDownProvider", "DrillDownStateContext", "SubContext", "resolveResponsiveValue", "useBreakpoint", "useDrillDownActions", "useDrillDownActionsOptional", "useDrillDownState", "useDrillDownStateOptional", "useSubContext", "__toCommonJS", "React", "React", "_BREAKPOINTS", "useBreakpoint", "currentBp", "setCurrentBp", "ready", "setReady", "mqls", "_BREAKPOINTS", "k", "q", "compute", "_e", "matched", "m", "next", "cleanups", "mm", "fn", "resolveResponsiveValue", "value", "currentBreakpoint", "defaultValue", "map", "bpOrder", "startIdx", "i", "bp", "DrillDownActionsContext", "DrillDownStateContext", "DrillDownProvider", "children", "submenuBehavior", "breakpoint", "ready", "useBreakpoint", "stack", "setStack", "animationDirection", "setAnimationDirection", "behavior", "prevBehaviorRef", "push", "id", "prev", "pop", "reset", "actionsValue", "isActive", "stateValue", "useDrillDownActions", "ctx", "useDrillDownState", "useDrillDownActionsOptional", "useDrillDownStateOptional", "SubContext", "useSubContext"]
4
+ "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport type { Breakpoint, Responsive } from '../../props/prop-def.js';\nimport type { submenuBehaviors } from './base-menu.props.js';\nimport { useBreakpoint } from '../../hooks/use-breakpoint.js';\n\ntype SubmenuBehavior = (typeof submenuBehaviors)[number];\n\n/**\n * Resolves a responsive value to its current value based on the breakpoint.\n * Falls back through smaller breakpoints if the current one isn't defined.\n */\nfunction resolveResponsiveValue<T>(\n value: T | Partial<Record<Breakpoint, T>> | undefined,\n currentBreakpoint: Breakpoint,\n defaultValue: T\n): T {\n if (value === undefined || value === null) {\n return defaultValue;\n }\n\n // Non-object values are returned directly\n if (typeof value !== 'object') {\n return value;\n }\n\n const map = value as Partial<Record<Breakpoint, T>>;\n\n // Check if current breakpoint has a value\n if (map[currentBreakpoint] !== undefined) {\n return map[currentBreakpoint] as T;\n }\n\n // Fall back through smaller breakpoints\n const bpOrder: Breakpoint[] = ['xl', 'lg', 'md', 'sm', 'xs', 'initial'];\n const startIdx = bpOrder.indexOf(currentBreakpoint);\n\n for (let i = startIdx + 1; i < bpOrder.length; i++) {\n const bp = bpOrder[i];\n if (map[bp] !== undefined) {\n return map[bp] as T;\n }\n }\n\n return defaultValue;\n}\n\n// ============================================================================\n// DrillDown Context\n// ============================================================================\n\ntype AnimationDirection = 'forward' | 'backward' | null;\n\n/**\n * Stable actions context - callbacks that don't change identity.\n * Separated from state to prevent unnecessary re-renders of components\n * that only need to call push/pop/reset.\n */\ninterface DrillDownActionsContextValue {\n /** Navigate into a submenu */\n push: (id: string) => void;\n /** Navigate back to parent menu */\n pop: () => void;\n /** Reset to root menu */\n reset: () => void;\n}\n\n/**\n * Mutable state context - values that change when navigation occurs.\n * Subscribers to this context will re-render on stack changes.\n */\ninterface DrillDownStateContextValue {\n /** Current submenu behavior mode */\n behavior: SubmenuBehavior;\n /** Whether the breakpoint has been resolved (client-side only) */\n ready: boolean;\n /** Stack of active submenu IDs. Empty means root menu is shown. */\n stack: string[];\n /** Check if a specific submenu is the currently active one */\n isActive: (id: string) => boolean;\n /** Check if we're at root level (no submenus open) */\n isRoot: boolean;\n /** The currently active submenu ID (or null if at root) */\n currentId: string | null;\n /** Current animation direction for transitions */\n animationDirection: AnimationDirection;\n}\n\nconst DrillDownActionsContext = React.createContext<DrillDownActionsContextValue | null>(null);\nconst DrillDownStateContext = React.createContext<DrillDownStateContextValue | null>(null);\n\ninterface DrillDownProviderProps {\n children: React.ReactNode;\n submenuBehavior: Responsive<SubmenuBehavior> | undefined;\n}\n\nfunction DrillDownProvider({ children, submenuBehavior }: DrillDownProviderProps) {\n const { breakpoint, ready } = useBreakpoint();\n const [stack, setStack] = React.useState<string[]>([]);\n const [animationDirection, setAnimationDirection] = React.useState<AnimationDirection>(null);\n\n // Resolve the current behavior based on breakpoint\n const behavior = React.useMemo(\n () => resolveResponsiveValue(submenuBehavior, breakpoint, 'cascade'),\n [submenuBehavior, breakpoint]\n );\n\n // Reset stack when behavior changes from drill-down to cascade\n const prevBehaviorRef = React.useRef(behavior);\n React.useEffect(() => {\n if (prevBehaviorRef.current === 'drill-down' && behavior === 'cascade') {\n setStack([]);\n setAnimationDirection(null);\n }\n prevBehaviorRef.current = behavior;\n }, [behavior]);\n\n // Stable action callbacks - these never change identity\n const push = React.useCallback((id: string) => {\n setAnimationDirection('forward');\n setStack((prev) => [...prev, id]);\n }, []);\n\n const pop = React.useCallback(() => {\n setAnimationDirection('backward');\n setStack((prev) => prev.slice(0, -1));\n }, []);\n\n const reset = React.useCallback(() => {\n setStack([]);\n setAnimationDirection(null);\n }, []);\n\n // Memoize actions context value - completely stable, never changes\n const actionsValue = React.useMemo(\n (): DrillDownActionsContextValue => ({ push, pop, reset }),\n [push, pop, reset]\n );\n\n // isActive depends on stack - this is expected to change\n const isActive = React.useCallback(\n (id: string) => {\n if (stack.length === 0) return false;\n return stack[stack.length - 1] === id;\n },\n [stack]\n );\n\n // Memoize state context value - changes when stack/behavior changes\n const stateValue = React.useMemo(\n (): DrillDownStateContextValue => ({\n behavior,\n ready,\n stack,\n isActive,\n isRoot: stack.length === 0,\n currentId: stack.length > 0 ? stack[stack.length - 1] : null,\n animationDirection,\n }),\n [behavior, ready, stack, isActive, animationDirection]\n );\n\n return (\n <DrillDownActionsContext.Provider value={actionsValue}>\n <DrillDownStateContext.Provider value={stateValue}>\n {children}\n </DrillDownStateContext.Provider>\n </DrillDownActionsContext.Provider>\n );\n}\n\n/**\n * Hook to access only the stable action callbacks (push, pop, reset).\n * Use this in components that only need to trigger navigation,\n * not react to state changes. Prevents unnecessary re-renders.\n */\nfunction useDrillDownActions() {\n const ctx = React.useContext(DrillDownActionsContext);\n if (!ctx) {\n throw new Error('useDrillDownActions must be used within a DropdownMenu.Content');\n }\n return ctx;\n}\n\n/**\n * Hook to access drill-down state (behavior, stack, isActive, etc.).\n * Components using this will re-render when navigation state changes.\n */\nfunction useDrillDownState() {\n const ctx = React.useContext(DrillDownStateContext);\n if (!ctx) {\n throw new Error('useDrillDownState must be used within a DropdownMenu.Content');\n }\n return ctx;\n}\n\n/**\n * Optional version of useDrillDownActions for components that may be outside Content.\n */\nfunction useDrillDownActionsOptional() {\n return React.useContext(DrillDownActionsContext);\n}\n\n/**\n * Optional version of useDrillDownState for components that may be outside Content.\n */\nfunction useDrillDownStateOptional() {\n return React.useContext(DrillDownStateContext);\n}\n\n// ============================================================================\n// Sub Context (for individual submenu instances)\n// ============================================================================\n\ninterface SubContextValue {\n /** Unique ID for this submenu */\n id: string;\n /** Label for the back button */\n label: React.ReactNode;\n}\n\nconst SubContext = React.createContext<SubContextValue | null>(null);\n\nfunction useSubContext() {\n return React.useContext(SubContext);\n}\n\nexport {\n DrillDownProvider,\n DrillDownActionsContext,\n DrillDownStateContext,\n SubContext,\n useDrillDownActions,\n useDrillDownActionsOptional,\n useDrillDownState,\n useDrillDownStateOptional,\n useSubContext,\n useBreakpoint,\n resolveResponsiveValue,\n};\n\nexport type {\n SubmenuBehavior,\n DrillDownActionsContextValue,\n DrillDownStateContextValue,\n SubContextValue,\n AnimationDirection,\n};\n", "'use client';\n\nimport * as React from 'react';\nimport { _BREAKPOINTS, type Breakpoint } from '../components/shell.types.js';\n\nconst QUERIES = Object.entries(_BREAKPOINTS) as Array<[Breakpoint, string]>;\n\ntype Listener = () => void;\n\n/**\n * One set of `MediaQueryList`s and one set of listeners for the whole\n * application. Every component that asks for the breakpoint used to create and\n * subscribe to its own copy of all five queries.\n */\nlet mediaQueryLists: Array<[Breakpoint, MediaQueryList]> | null = null;\nconst listeners = new Set<Listener>();\nlet cachedBreakpoint: Breakpoint | null = null;\n\nfunction getMediaQueryLists() {\n mediaQueryLists ??= QUERIES.map(([name, query]) => [name, window.matchMedia(query)] as [Breakpoint, MediaQueryList]);\n return mediaQueryLists;\n}\n\nfunction computeBreakpoint(): Breakpoint {\n // The largest matching query wins; `_BREAKPOINTS` is ordered smallest first.\n let matched: Breakpoint = 'initial';\n for (const [name, mql] of getMediaQueryLists()) {\n if (mql.matches) matched = name;\n }\n return matched;\n}\n\nfunction handleChange() {\n const next = computeBreakpoint();\n if (next === cachedBreakpoint) return;\n cachedBreakpoint = next;\n listeners.forEach((listener) => listener());\n}\n\nfunction subscribe(listener: Listener) {\n if (typeof window === 'undefined') return () => {};\n\n if (listeners.size === 0) {\n cachedBreakpoint = computeBreakpoint();\n for (const [, mql] of getMediaQueryLists()) {\n // Safari below 14 only has the deprecated listener API.\n if (typeof mql.addEventListener === 'function') mql.addEventListener('change', handleChange);\n else mql.addListener?.(handleChange);\n }\n }\n\n listeners.add(listener);\n\n return () => {\n listeners.delete(listener);\n if (listeners.size > 0) return;\n\n for (const [, mql] of getMediaQueryLists()) {\n try {\n if (typeof mql.removeEventListener === 'function') mql.removeEventListener('change', handleChange);\n else mql.removeListener?.(handleChange);\n } catch (error) {\n // Removal can throw in edge cases, e.g. the list was already torn down.\n if (process.env.NODE_ENV !== 'production') {\n console.warn('[useBreakpoint] MediaQueryList cleanup warning:', error);\n }\n }\n }\n cachedBreakpoint = null;\n };\n}\n\n/**\n * `getSnapshot` must return a referentially stable value between changes, so it\n * reads the cache that `handleChange` maintains rather than recomputing.\n */\nfunction getSnapshot(): Breakpoint {\n if (typeof window === 'undefined') return 'initial';\n cachedBreakpoint ??= computeBreakpoint();\n return cachedBreakpoint;\n}\n\nfunction getServerSnapshot(): Breakpoint {\n return 'initial';\n}\n\nconst getReadySnapshot = () => true;\nconst getReadyServerSnapshot = () => false;\n\n/**\n * The current breakpoint, and whether it has been resolved against a real\n * viewport yet (`false` on the server and during hydration).\n *\n * Reads through `useSyncExternalStore` rather than settling into state from an\n * effect. On a client render the very first pass already has the real\n * breakpoint, instead of rendering the whole shell at `initial` and correcting\n * it after the browser has painted.\n */\nexport function useBreakpoint(): { breakpoint: Breakpoint; ready: boolean } {\n const breakpoint = React.useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);\n const ready = React.useSyncExternalStore(subscribe, getReadySnapshot, getReadyServerSnapshot);\n\n return React.useMemo(() => ({ breakpoint, ready }), [breakpoint, ready]);\n}\n", "import type * as React from 'react';\n\nexport type PresentationValue = 'fixed' | 'overlay' | 'stacked';\n\nexport type ResponsivePresentation = PresentationValue | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PresentationValue>>;\n\nexport type PaneMode = 'expanded' | 'collapsed';\nexport type SidebarMode = 'collapsed' | 'thin' | 'expanded';\n\nexport type ResponsiveMode = PaneMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PaneMode>>;\n\nexport type ResponsiveSidebarMode = SidebarMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', SidebarMode>>;\n\nexport type Responsive<T> = T | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', T>>;\n\nexport type PaneSizePersistence = {\n load?: () => number | Promise<number | undefined> | undefined;\n save?: (size: number) => void | Promise<void>;\n};\n\nexport interface PaneBaseProps extends React.ComponentPropsWithoutRef<'div'> {\n presentation?: ResponsivePresentation;\n expandedSize?: number;\n minSize?: number;\n maxSize?: number;\n height?: string | number;\n resizable?: boolean;\n collapsible?: boolean;\n onExpand?: () => void;\n onCollapse?: () => void;\n onResize?: (size: number) => void;\n resizer?: React.ReactNode;\n onResizeStart?: (size: number) => void;\n onResizeEnd?: (size: number) => void;\n snapPoints?: number[];\n snapTolerance?: number;\n collapseThreshold?: number;\n paneId?: string;\n persistence?: PaneSizePersistence;\n}\n\nexport const _BREAKPOINTS = {\n xs: '(min-width: 520px)',\n sm: '(min-width: 768px)',\n md: '(min-width: 1024px)',\n lg: '(min-width: 1280px)',\n xl: '(min-width: 1640px)',\n} as const;\n\nexport type Breakpoint = 'initial' | keyof typeof _BREAKPOINTS;\n\nexport type PaneTarget = 'left' | 'rail' | 'panel' | 'sidebar' | 'inspector' | 'bottom';\n\n/**\n * CSS custom property key type for type-safe style objects.\n * Allows any string prefixed with '--'.\n */\nexport type CSSCustomProperty = `--${string}`;\n\n/**\n * Style object that supports CSS custom properties.\n */\nexport type CSSPropertiesWithVars = React.CSSProperties & {\n [key: CSSCustomProperty]: string | number | undefined;\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["dropdown_menu_drill_down_exports", "__export", "DrillDownActionsContext", "DrillDownProvider", "DrillDownStateContext", "SubContext", "resolveResponsiveValue", "useBreakpoint", "useDrillDownActions", "useDrillDownActionsOptional", "useDrillDownState", "useDrillDownStateOptional", "useSubContext", "__toCommonJS", "React", "React", "_BREAKPOINTS", "QUERIES", "_BREAKPOINTS", "mediaQueryLists", "listeners", "cachedBreakpoint", "getMediaQueryLists", "name", "query", "computeBreakpoint", "matched", "mql", "handleChange", "next", "listener", "subscribe", "getSnapshot", "getServerSnapshot", "getReadySnapshot", "getReadyServerSnapshot", "useBreakpoint", "breakpoint", "ready", "resolveResponsiveValue", "value", "currentBreakpoint", "defaultValue", "map", "bpOrder", "startIdx", "i", "bp", "DrillDownActionsContext", "DrillDownStateContext", "DrillDownProvider", "children", "submenuBehavior", "breakpoint", "ready", "useBreakpoint", "stack", "setStack", "animationDirection", "setAnimationDirection", "behavior", "prevBehaviorRef", "push", "id", "prev", "pop", "reset", "actionsValue", "isActive", "stateValue", "useDrillDownActions", "ctx", "useDrillDownState", "useDrillDownActionsOptional", "useDrillDownStateOptional", "SubContext", "useSubContext"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var Jt=Object.create;var Ce=Object.defineProperty;var Qt=Object.getOwnPropertyDescriptor;var Zt=Object.getOwnPropertyNames;var eo=Object.getPrototypeOf,to=Object.prototype.hasOwnProperty;var oo=(e,t)=>{for(var o in t)Ce(e,o,{get:t[o],enumerable:!0})},ft=(e,t,o,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Zt(t))!to.call(e,r)&&r!==o&&Ce(e,r,{get:()=>t[r],enumerable:!(l=Qt(t,r))||l.enumerable});return e};var H=(e,t,o)=>(o=e!=null?Jt(eo(e)):{},ft(t||!e||!e.__esModule?Ce(o,"default",{value:e,enumerable:!0}):o,e)),no=e=>ft(Ce({},"__esModule",{value:!0}),e);var Ko={};oo(Ko,{Bottom:()=>st});module.exports=no(Ko);var c=H(require("react")),Ut=H(require("classnames"));var y=H(require("react")),Bt=H(require("classnames")),ee=require("radix-ui");var oe={asChild:{type:"boolean"}};var Te={width:{type:"string",className:"rt-r-w",customProperties:["--width"],responsive:!0},minWidth:{type:"string",className:"rt-r-min-w",customProperties:["--min-width"],responsive:!0},maxWidth:{type:"string",className:"rt-r-max-w",customProperties:["--max-width"],responsive:!0}};var Pt={height:{type:"string",className:"rt-r-h",customProperties:["--height"],responsive:!0},minHeight:{type:"string",className:"rt-r-min-h",customProperties:["--min-height"],responsive:!0},maxHeight:{type:"string",className:"rt-r-max-h",customProperties:["--max-height"],responsive:!0}};var ro=["1","2","3","4"],so=["solid","translucent"],ao=["solid","translucent"],yt={...oe,align:{type:"enum",className:"rt-r-align",values:["start","center"],default:"center"},size:{type:"enum",className:"rt-r-size",values:ro,default:"3",responsive:!0},panelBackground:{type:"enum",values:so,default:void 0},material:{type:"enum",values:ao,default:void 0},width:Te.width,minWidth:Te.minWidth,maxWidth:{...Te.maxWidth,default:"600px"},...Pt};var u=H(require("react")),Rt=H(require("classnames")),ue=require("radix-ui");function gt(e){switch(e){case"tomato":case"red":case"ruby":case"crimson":case"pink":case"plum":case"purple":case"violet":return"mauve";case"iris":case"indigo":case"blue":case"sky":case"cyan":return"slate";case"teal":case"jade":case"mint":case"green":return"sage";case"grass":case"lime":return"olive";case"yellow":case"amber":case"orange":case"brown":case"gold":case"bronze":return"sand";case"gray":return"gray"}}var je=["gray","gold","bronze","brown","yellow","amber","orange","tomato","red","ruby","crimson","pink","plum","purple","violet","iris","indigo","blue","cyan","teal","jade","green","grass","lime","mint","sky"],ht=["auto","gray","mauve","slate","sage","olive","sand"],Se={color:{type:"enum",values:je,default:void 0}};var vt=["none","small","medium","large","full"];var io=["inherit","light","dark"],lo=["solid","translucent"],po=["solid","translucent"],co=["90%","95%","100%","105%","110%"],uo=["sans","mono","serif"],P={...oe,hasBackground:{type:"boolean",default:!0},appearance:{type:"enum",values:io,default:"inherit"},accentColor:{type:"enum",values:je,default:"blue"},grayColor:{type:"enum",values:ht,default:"slate"},material:{type:"enum",values:po,default:"translucent"},panelBackground:{type:"enum",values:lo,default:"translucent"},radius:{type:"enum",values:vt,default:"medium"},scaling:{type:"enum",values:co,default:"100%"},fontFamily:{type:"enum",values:uo,default:"sans"}};var O=()=>{},pn={appearance:P.appearance.default,accentColor:P.accentColor.default,grayColor:P.grayColor.default,resolvedGrayColor:P.grayColor.default,material:P.material.default,panelBackground:P.panelBackground.default,radius:P.radius.default,scaling:P.scaling.default,fontFamily:P.fontFamily.default,onAppearanceChange:O,onAccentColorChange:O,onGrayColorChange:O,onMaterialChange:O,onPanelBackgroundChange:O,onRadiusChange:O,onScalingChange:O,onFontFamilyChange:O},We=u.createContext(void 0);var Fe=u.forwardRef((e,t)=>u.useContext(We)===void 0?u.createElement(ue.Tooltip.Provider,{delayDuration:200},u.createElement(ue.Direction.Provider,{dir:"ltr"},u.createElement(bt,{...e,ref:t}))):u.createElement(Ge,{...e,ref:t}));Fe.displayName="Theme";var bt=u.forwardRef((e,t)=>{let{appearance:o=P.appearance.default,accentColor:l=P.accentColor.default,grayColor:r=P.grayColor.default,material:s=P.material.default,panelBackground:p=P.panelBackground.default,radius:a=P.radius.default,scaling:n=P.scaling.default,fontFamily:d=P.fontFamily.default,hasBackground:h=P.hasBackground.default,...g}=e;u.useEffect(()=>{e.panelBackground!==void 0&&console.warn("Warning: The `panelBackground` prop is deprecated and will be removed in a future version. Use `material` prop instead.")},[e.panelBackground]);let[b,D]=u.useState(o);u.useEffect(()=>D(o),[o]);let[C,E]=u.useState(l);u.useEffect(()=>E(l),[l]);let[U,A]=u.useState(r);u.useEffect(()=>A(r),[r]);let z=s!==P.material.default?s:p,[j,K]=u.useState(z);u.useEffect(()=>K(z),[z]);let[_,W]=u.useState(p);u.useEffect(()=>W(j),[j]);let[J,q]=u.useState(a);u.useEffect(()=>q(a),[a]);let[k,m]=u.useState(n);u.useEffect(()=>m(n),[n]);let[f,v]=u.useState(d);return u.useEffect(()=>v(d),[d]),u.createElement(Ge,{...g,ref:t,isRoot:!0,hasBackground:h,appearance:b,accentColor:C,grayColor:U,material:j,panelBackground:_,radius:J,scaling:k,fontFamily:f,onAppearanceChange:D,onAccentColorChange:E,onGrayColorChange:A,onMaterialChange:K,onPanelBackgroundChange:W,onRadiusChange:q,onScalingChange:m,onFontFamilyChange:v})});bt.displayName="ThemeRoot";function mo(){if(typeof navigator>"u")return;let e=navigator.userAgent;if(e.includes("Win"))return"windows";if(e.includes("Mac"))return"macos";if(e.includes("Linux"))return"linux"}var Ge=u.forwardRef((e,t)=>{let o=u.useContext(We),{asChild:l,isRoot:r,hasBackground:s,appearance:p=e.appearance??o?.appearance??P.appearance.default,accentColor:a=e.accentColor??o?.accentColor??P.accentColor.default,grayColor:n=e.grayColor??o?.resolvedGrayColor??P.grayColor.default,material:d=e.material??o?.material??P.material.default,panelBackground:h=e.panelBackground??o?.panelBackground??P.panelBackground.default,radius:g=e.radius??o?.radius??P.radius.default,scaling:b=e.scaling??o?.scaling??P.scaling.default,fontFamily:D=e.fontFamily??o?.fontFamily??P.fontFamily.default,onAppearanceChange:C=O,onAccentColorChange:E=O,onGrayColorChange:U=O,onMaterialChange:A=O,onPanelBackgroundChange:z=O,onRadiusChange:j=O,onScalingChange:K=O,onFontFamilyChange:_=O,...W}=e,J=l?ue.Slot.Root:"div",q=n==="auto"?gt(a):n,k=e.appearance==="light"||e.appearance==="dark",m=s===void 0?r||k:s,[f,v]=u.useState(void 0);return u.useEffect(()=>{r&&v(mo())},[r]),u.createElement(We.Provider,{value:u.useMemo(()=>({appearance:p,accentColor:a,grayColor:n,resolvedGrayColor:q,material:d,panelBackground:h,radius:g,scaling:b,fontFamily:D,onAppearanceChange:C,onAccentColorChange:E,onGrayColorChange:U,onMaterialChange:A,onPanelBackgroundChange:z,onRadiusChange:j,onScalingChange:K,onFontFamilyChange:_}),[p,a,n,q,d,h,g,b,D,C,E,U,A,z,j,K,_])},u.createElement(J,{"data-is-root-theme":r?"true":"false","data-accent-color":a,"data-gray-color":q,"data-has-background":m?"true":"false","data-material":d,"data-panel-background":h,"data-radius":g,"data-scaling":b,"data-font-family":D,"data-os":r?f:void 0,ref:t,...W,className:(0,Rt.default)("radix-themes",{light:p==="light",dark:p==="dark"},W.className)}))});Ge.displayName="ThemeImpl";var le=H(require("react")),St=require("radix-ui");var De={highContrast:{type:"boolean",className:"rt-high-contrast",default:void 0}};var fo=["normal","start","end","both"],Ee={trim:{type:"enum",className:"rt-r-lt",values:fo,responsive:!0}};var Po=["left","center","right"],we={align:{type:"enum",className:"rt-r-ta",values:Po,responsive:!0}};var yo=["wrap","nowrap","pretty","balance"],Me={wrap:{type:"enum",className:"rt-r-tw",values:yo,responsive:!0}};var ke={truncate:{type:"boolean",className:"rt-truncate"}};var go=["sans","mono","serif"],Be={font:{type:"enum",className:"rt-r-ff",values:go}};var ho=["thin","extralight","light","regular","medium","semibold","bold","extrabold"],Ne={weight:{type:"enum",className:"rt-r-weight",values:ho,responsive:!0}};var vo=["h1","h2","h3","h4","h5","h6"],Ro=["0","1","2","3","4","5","6","7","8","9","10","11","12"],xt={as:{type:"enum",values:vo,default:"h1"},...oe,size:{type:"enum",className:"rt-r-size",values:Ro,default:"6",responsive:!0},...Be,...Ne,...we,...Ee,...ke,...Me,...Se,...De};var ye=H(require("classnames"));var bo=["initial","xs","sm","md","lg","xl"],Ke=new Set(bo);function $e(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var xo=new Set(["initial","xs","sm","md","lg","xl"]);function se(e){if(typeof e!="object"||e===null)return!1;for(let t in e)if(xo.has(t))return!0;return!1}function Tt({className:e,customProperties:t,...o}){let l=Ue({allowArbitraryValues:!0,className:e,...o}),r=Co({customProperties:t,...o});return[l,r]}function Ue({allowArbitraryValues:e,value:t,className:o,propValues:l,parseValue:r=s=>s}){let s=[];if(t){if(typeof t=="string"&&l.includes(t))return Ct(o,t,r);if(se(t)){let p=t;for(let a in p){if(!$e(p,a)||!Ke.has(a))continue;let n=p[a];if(n!==void 0){if(l.includes(n)){let d=Ct(o,n,r),h=a==="initial"?d:`${a}:${d}`;s.push(h)}else if(e){let d=a==="initial"?o:`${a}:${o}`;s.push(d)}}}return s.join(" ")}if(e)return o}}function Ct(e,t,o){let l=e?"-":"",r=o(t),s=r?.startsWith("-"),p=s?"-":"",a=s?r?.substring(1):r;return`${p}${e}${l}${a}`}function Co({customProperties:e,value:t,propValues:o,parseValue:l=r=>r}){let r={};if(!(!t||typeof t=="string"&&o.includes(t))){if(typeof t=="string"&&(r=Object.fromEntries(e.map(s=>[s,t]))),se(t)){let s=t;for(let p in s){if(!$e(s,p)||!Ke.has(p))continue;let a=s[p];if(!o.includes(a))for(let n of e){let d=p==="initial"?n:`${n}-${p}`;r[d]=a}}}for(let s in r){let p=r[s];p!==void 0&&(r[s]=l(p))}return r}}function _e(...e){let t;for(let o of e)o&&(t===void 0&&(t={}),Object.assign(t,o));return t}function To(...e){return Object.assign({},...e)}function ae(e,...t){let o,l,r={...e},s=To(...t);for(let p in s){let a=r[p],n=s[p];if(n.default!==void 0&&a===void 0&&(a=n.default),n.type==="enum"&&![n.default,...n.values].includes(a)&&!se(a)&&(a=n.default),r[p]=a,"className"in n&&n.className){delete r[p];let d="responsive"in n;if(!a||se(a)&&!d)continue;if(se(a)&&(n.default!==void 0&&a.initial===void 0&&(a.initial=n.default),n.type==="enum"&&([n.default,...n.values].includes(a.initial)||(a.initial=n.default))),n.type==="enum"){let h=Ue({allowArbitraryValues:!1,value:a,className:n.className,propValues:n.values,parseValue:n.parseValue});o=(0,ye.default)(o,h);continue}if(n.type==="string"||n.type==="enum | string"){let h=n.type==="string"?[]:n.values,[g,b]=Tt({className:n.className,customProperties:n.customProperties,propValues:h,parseValue:n.parseValue,value:a});l=_e(l,b),o=(0,ye.default)(o,g);continue}if(n.type==="boolean"&&a){o=(0,ye.default)(o,n.className);continue}}}return r.className=(0,ye.default)(o,e.className),r.style=_e(l,e.style),r}var ie=["0","1","2","3","4","5","6","7","8","9","10","11","12","-1","-2","-3","-4","-5","-6","-7","-8","-9","-10","-11","-12"],ze={m:{type:"enum | string",values:ie,responsive:!0,className:"rt-r-m",customProperties:["--m"]},mx:{type:"enum | string",values:ie,responsive:!0,className:"rt-r-mx",customProperties:["--ml","--mr"]},my:{type:"enum | string",values:ie,responsive:!0,className:"rt-r-my",customProperties:["--mt","--mb"]},mt:{type:"enum | string",values:ie,responsive:!0,className:"rt-r-mt",customProperties:["--mt"]},mr:{type:"enum | string",values:ie,responsive:!0,className:"rt-r-mr",customProperties:["--mr"]},mb:{type:"enum | string",values:ie,responsive:!0,className:"rt-r-mb",customProperties:["--mb"]},ml:{type:"enum | string",values:ie,responsive:!0,className:"rt-r-ml",customProperties:["--ml"]}};var So={...xt,...ze},qe=le.memo(le.forwardRef((e,t)=>{let{children:o,className:l,asChild:r,as:s="h1",color:p,...a}=ae(e,So),n=l?`rt-Heading ${l}`:"rt-Heading";return r?le.createElement(St.Slot.Root,{"data-accent-color":p,...a,ref:t,className:n},o):le.createElement(s,{"data-accent-color":p,...a,ref:t,className:n},o)}));qe.displayName="Heading";var pe=H(require("react")),Et=require("radix-ui");var Do=["span","div","label","p"],Eo=["0","1","2","3","4","5","6","7","8","9","10","11","12"],Dt={as:{type:"enum",values:Do,default:"span"},...oe,size:{type:"enum",className:"rt-r-size",values:Eo,responsive:!0},...Be,...Ne,...we,...Ee,...ke,...Me,...Se,...De};var wo={...Dt,...ze},Ye=pe.memo(pe.forwardRef((e,t)=>{let{children:o,className:l,asChild:r,as:s="span",color:p,...a}=ae(e,wo),n=l?`rt-Text ${l}`:"rt-Text";return r?pe.createElement(Et.Slot.Root,{"data-accent-color":p,...a,ref:t,className:n},o):pe.createElement(s,{"data-accent-color":p,...a,ref:t,className:n},o)}));Ye.displayName="Text";var Le=H(require("react")),Xe=e=>{if(!Le.isValidElement(e))throw Error(`Expected a single React Element child, but got: ${Le.Children.toArray(e).map(o=>typeof o=="object"&&"type"in o&&typeof o.type=="string"?o.type:typeof o).join(", ")}`);return e};var Mt=H(require("react")),wt=!1;function kt(){Mt.useEffect(()=>{if(typeof document>"u"||wt)return;wt=!0;let e=()=>{let n=!!document.querySelector('[role="dialog"][aria-modal="true"], [role="alertdialog"][aria-modal="true"]'),d=!!document.querySelector('[data-radix-popper-content-wrapper], [data-state="open"]');return n||d},t=()=>{document.body.style.pointerEvents==="none"&&(console.log("[KookieUI] Force cleaning stuck pointer-events: none from body"),document.body.style.pointerEvents="",document.body.removeAttribute("data-scroll-locked"),document.body.removeAttribute("data-remove-scroll"),document.body.classList.remove("ReactModal__Body--open"))},o=()=>{document.body.style.pointerEvents==="none"&&!e()&&(console.log("[KookieUI] Safe cleaning stuck pointer-events: none from body"),document.body.style.pointerEvents="")},l=n=>{let d=n.target;d&&!d.closest('[role="dialog"], [role="alertdialog"], [data-radix-popper-content-wrapper]')&&setTimeout(t,100)},r=n=>{n.key==="Escape"&&setTimeout(t,200)},s=()=>{setTimeout(o,50)};document.addEventListener("click",l,!0),document.addEventListener("keydown",r,!0),document.addEventListener("pointerup",s,!0),document.addEventListener("transitionend",s,!0),document.addEventListener("animationend",s,!0),new MutationObserver(()=>{setTimeout(o,0)}).observe(document.body,{childList:!0,subtree:!0,attributes:!0});let a=setInterval(()=>{document.body.style.pointerEvents==="none"&&!e()&&(console.log("[KookieUI] Periodic cleanup of stuck pointer-events"),document.body.style.pointerEvents="")},1e3);return setTimeout(o,100),()=>{clearInterval(a)}},[])}var Je=e=>y.createElement(ee.Dialog.Root,{...e,modal:!0});Je.displayName="Sheet.Root";var Mo=y.forwardRef(({children:e,...t},o)=>y.createElement(ee.Dialog.Trigger,{...t,ref:o,asChild:!0},Xe(e)));Mo.displayName="Sheet.Trigger";var Qe=y.forwardRef((e,t)=>{let{side:o="start",forceMount:l,container:r,className:s,panelBackground:p,material:a,...n}=e,h={left:"start",right:"end",start:"start",end:"end",top:"top",bottom:"bottom"}[o],{align:g,panelBackground:b,material:D,...C}=yt,{panelBackground:E,material:U}=ae({panelBackground:p,material:a},{panelBackground:b,material:D}),A=y.useMemo(()=>U??E,[U,E]),{default:z,...j}=C.maxWidth,K={...C,maxWidth:j},{className:_,...W}=ae(n,K),J=y.useRef(null),q=y.useMemo(()=>k=>{J.current=k,typeof t=="function"?t(k):t&&(t.current=k)},[t]);return kt(),y.useEffect(()=>{if(typeof window>"u")return;let k=J.current;if(!k)return;let m=k.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(m.length===0)return;let f=m[0],v=m[m.length-1],Y=$=>{$.key==="Tab"&&($.shiftKey?document.activeElement===f&&($.preventDefault(),v.focus()):document.activeElement===v&&($.preventDefault(),f.focus()))};return k.addEventListener("keydown",Y),f.focus(),()=>{k.removeEventListener("keydown",Y)}},[]),y.createElement(ee.Dialog.Portal,{container:r,forceMount:l},y.createElement(Fe,{asChild:!0},y.createElement(ee.Dialog.Overlay,{className:"rt-BaseDialogOverlay rt-DialogOverlay rt-SheetOverlay"},y.createElement(ee.Dialog.Content,{...W,ref:q,className:(0,Bt.default)("rt-BaseDialogContent","rt-SheetContent",s,_),"data-side":h,"data-material":A,"data-panel-background":A,tabIndex:-1,role:"dialog","aria-modal":"true"}))))});Qe.displayName="Sheet.Content";var Ze=y.forwardRef(({size:e="4",weight:t="medium",...o},l)=>y.createElement(ee.Dialog.Title,{asChild:!0},y.createElement(qe,{ref:l,size:e,weight:t,...o})));Ze.displayName="Sheet.Title";var ko=y.forwardRef(({size:e="2",color:t="gray",...o},l)=>y.createElement(ee.Dialog.Description,{asChild:!0},y.createElement(Ye,{ref:l,size:e,color:t,...o})));ko.displayName="Sheet.Description";var Bo=y.forwardRef(({children:e,...t},o)=>y.createElement(ee.Dialog.Close,{...t,ref:o,asChild:!0},Xe(e)));Bo.displayName="Sheet.Close";var et=require("radix-ui"),Nt=et.VisuallyHidden.Root,fr=et.VisuallyHidden.Root;var S=H(require("react")),zo=S.createContext(null);function tt(){let e=S.useContext(zo);if(!e)throw new Error("Shell components must be used within <Shell.Root>");return e}var yr=S.createContext(null);var gr=S.createContext(null);var hr=S.createContext(null);var vr=S.createContext(null);var Lo=S.createContext(null);function zt(){let e=S.useContext(Lo);if(!e)throw new Error("useBottomMode must be used within Shell.Root");return e}var Ho=S.createContext(null);function Lt(){let e=S.useContext(Ho);if(!e)throw new Error("usePresentation must be used within Shell.Root");return e}var Oo=S.createContext(null);function Ht(){let e=S.useContext(Oo);if(!e)throw new Error("usePeek must be used within Shell.Root");return e}var Vo=S.createContext(null);function Ot(){let e=S.useContext(Vo);if(!e)throw new Error("useShellActions must be used within Shell.Root");return e}var Rr=S.createContext(null);var Io=S.createContext(null);function Vt(){let e=S.useContext(Io);if(!e)throw new Error("useInset must be used within Shell.Root");return e}var V=H(require("react"));var ot={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"};function At(e){let{currentBreakpoint:t}=tt();return V.useMemo(()=>{if(typeof e=="string")return e;if(e[t])return e[t];let l=[...Object.keys(ot)].reverse().concat("initial"),r=l.indexOf(t);for(let s=r+1;s<l.length;s++){let p=l[s];if(e[p])return e[p]}return"fixed"},[e,t])}function It(e){let{currentBreakpoint:t}=tt();return V.useMemo(()=>{if(e==null)return;if(typeof e!="object")return e;let o=e;if(o[t]!==void 0)return o[t];let r=[...Object.keys(ot)].reverse().concat("initial"),s=r.indexOf(t);for(let p=s+1;p<r.length;p++){let a=r[p];if(o[a]!==void 0)return o[a]}},[e,t])}function jt({controlledValue:e,defaultValue:t,currentValue:o,setValue:l,breakpointReady:r,onInit:s,onResponsiveChange:p,controlledIsResponsive:a=!1}){let n=It(e),d=It(t),h=V.useRef(void 0),g=V.useRef(null),b=V.useRef(n),D=V.useRef(o),C=V.useRef(l);V.useLayoutEffect(()=>{b.current=n,D.current=o,C.current=l}),V.useEffect(()=>{if(n===void 0)return;let A=h.current!==n;if(h.current=n,o===n){g.current&&(clearTimeout(g.current),g.current=null),a&&p?.(n);return}if(A){g.current&&(clearTimeout(g.current),g.current=null),l(n),a&&p?.(n);return}g.current||(g.current=setTimeout(()=>{g.current=null;let z=b.current,j=D.current;z!==void 0&&j!==z&&C.current(z)},0))},[n,o,l,p,a]),V.useEffect(()=>()=>{g.current&&(clearTimeout(g.current),g.current=null)},[]);let E=V.useRef(!1);return V.useEffect(()=>{E.current||r&&(typeof e<"u"||d!==void 0&&(E.current=!0,o!==d&&l(d),s?.(d)))},[r,e,d,o,l,s]),{resolvedControlled:n,resolvedDefault:d}}var He=H(require("react")),nt=He.createContext(null);function Wt(){let e=He.useContext(nt);if(!e)throw new Error("Shell.Handle must be used within a resizable pane");return e}var I=H(require("react")),Ft=H(require("classnames"));var ce=I.forwardRef(({className:e,children:t,...o},l)=>{let{containerRef:r,cssVarName:s,minSize:p,maxSize:a,defaultSize:n,orientation:d,edge:h,computeNext:g,onResize:b,onResizeStart:D,onResizeEnd:C,snapPoints:E,snapTolerance:U,collapseThreshold:A,collapsible:z,target:j,requestCollapse:K,requestToggle:_}=Wt(),W=I.useRef(null);I.useEffect(()=>()=>{try{W.current?.()}catch{}W.current=null},[]);let J=d,k=`Resize ${j.charAt(0).toUpperCase()+j.slice(1)} pane`;return I.createElement("div",{...o,ref:l,className:(0,Ft.default)("rt-ShellResizer",e),"data-orientation":d,"data-edge":h,role:"slider","aria-label":k,"aria-orientation":J,"aria-valuemin":p,"aria-valuemax":a,"aria-valuenow":n,tabIndex:0,onPointerDown:m=>{if(!r.current)return;m.preventDefault();let f=r.current,v=m.currentTarget,Y=m.pointerId;try{W.current?.()}catch{}f.setAttribute("data-resizing","");try{v.setPointerCapture(Y)}catch{}let $=d==="vertical"?m.clientX:m.clientY,T=parseFloat(getComputedStyle(f).getPropertyValue(s)||`${n}`),X=G=>Math.min(Math.max(G,p),a),x=document.body,w=x.style.cursor,Q=x.style.userSelect;x.style.cursor=d==="vertical"?"col-resize":"row-resize",x.style.userSelect="none",D?.(T);let F=G=>{let L=d==="vertical"?G.clientX:G.clientY,te=X(g(L,$,T));f.style.setProperty(s,`${te}px`),v.setAttribute("aria-valuenow",String(te)),b?.(te)},Z=()=>{try{v.releasePointerCapture(Y)}catch{}window.removeEventListener("pointermove",F),document.removeEventListener("pointermove",F),window.removeEventListener("mousemove",F),document.removeEventListener("mousemove",F),v.removeEventListener("pointermove",F),window.removeEventListener("pointerup",B),document.removeEventListener("pointerup",B),window.removeEventListener("mouseup",B),document.removeEventListener("mouseup",B),window.removeEventListener("pointercancel",B),document.removeEventListener("pointercancel",B),window.removeEventListener("keydown",ne),v.removeEventListener("lostpointercapture",B),f.removeAttribute("data-resizing"),x.style.cursor=w,x.style.userSelect=Q,W.current=null},B=()=>{let G=parseFloat(getComputedStyle(f).getPropertyValue(s)||`${n}`),L=G;if(E&&E.length){let te=E.reduce((me,fe)=>Math.abs(fe-G)<Math.abs(me-G)?fe:me,E[0]);Math.abs(te-G)<=(U??8)&&(L=te,f.style.setProperty(s,`${L}px`),v.setAttribute("aria-valuenow",String(L)),b?.(L))}z&&typeof A=="number"&&G<=A&&K?.(),C?.(L),Z()},ne=G=>{G.key==="Escape"&&(f.style.setProperty(s,`${T}px`),v.setAttribute("aria-valuenow",String(T)),C?.(T),Z())};window.addEventListener("pointermove",F),document.addEventListener("pointermove",F),window.addEventListener("mousemove",F),document.addEventListener("mousemove",F),v.addEventListener("pointermove",F),window.addEventListener("pointerup",B),document.addEventListener("pointerup",B),window.addEventListener("mouseup",B),document.addEventListener("mouseup",B),window.addEventListener("pointercancel",B),document.addEventListener("pointercancel",B),window.addEventListener("keydown",ne),v.addEventListener("lostpointercapture",B),W.current=Z},onDoubleClick:()=>{z&&_?.()},onKeyDown:m=>{if(!r.current)return;let f=r.current,v=getComputedStyle(f).getPropertyValue(s),Y=Number.parseFloat(v.trim()),$=Number.isFinite(Y)?Y:n,T=w=>Math.min(Math.max(w,p),a),X=m.shiftKey?32:8,x=0;if(d==="vertical"){let w=typeof document<"u"?document.dir:void 0,Q=getComputedStyle(f).direction,F=!!(f.closest&&f.closest('[dir="rtl"]')),Z=w==="rtl"||Q==="rtl"||F;m.key==="ArrowRight"?x=Z?-X:X:m.key==="ArrowLeft"&&(x=Z?X:-X)}else m.key==="ArrowDown"?x=X:m.key==="ArrowUp"&&(x=-X);if(m.key==="Home"){m.preventDefault(),D?.($);let w=T(p);f.style.setProperty(s,`${w}px`),m.currentTarget.setAttribute("aria-valuenow",String(w)),b?.(w),C?.(w);return}if(m.key==="End"){m.preventDefault(),D?.($);let w=T(a);f.style.setProperty(s,`${w}px`),m.currentTarget.setAttribute("aria-valuenow",String(w)),b?.(w),C?.(w);return}if(x!==0){m.preventDefault(),D?.($);let w=d==="vertical"&&h==="start"?-x:x,Q=T($+w);f.style.setProperty(s,`${Q}px`),m.currentTarget.setAttribute("aria-valuenow",String(Q)),b?.(Q),C?.(Q)}}},t)});ce.displayName="Shell.Handle";var Ao=I.forwardRef((e,t)=>I.createElement(ce,{...e,ref:t}));Ao.displayName="Shell.Panel.Handle";var jo=I.forwardRef((e,t)=>I.createElement(ce,{...e,ref:t}));jo.displayName="Shell.Sidebar.Handle";var Wo=I.forwardRef((e,t)=>I.createElement(ce,{...e,ref:t}));Wo.displayName="Shell.Inspector.Handle";var ge=I.forwardRef((e,t)=>I.createElement(ce,{...e,ref:t}));ge.displayName="Shell.Bottom.Handle";function Fo(e,t){let o=new Set(t),l={};return Object.keys(e).forEach(r=>{o.has(r)||(l[r]=e[r])}),l}var Gt=["presentation","expandedSize","minSize","maxSize","resizable","collapsible","onExpand","onCollapse","onResize","resizer","onResizeStart","onResizeEnd","snapPoints","snapTolerance","collapseThreshold","paneId","persistence","inset"];function Kt(e,t){let o=t?[...Gt,...t]:[...Gt];return Fo(e,o)}function rt(e){if(e!=null){if(typeof e=="object"){let t={};return Object.entries(e).forEach(([o,l])=>{typeof l=="boolean"&&(t[o]=l?"expanded":"collapsed")}),t}return e?"expanded":"collapsed"}}function $t(e,t="horizontal"){if(e==null)return;if(typeof e=="number"&&Number.isFinite(e))return e;let o=String(e).trim();if(!o)return;if(o.endsWith("px"))return Number.parseFloat(o);if(o.endsWith("rem")){let r=Number.parseFloat(getComputedStyle(document.documentElement).fontSize||"16")||16;return Number.parseFloat(o)*r}if(o.endsWith("%")){let r=Number.parseFloat(o),s=t==="horizontal"?document.documentElement.clientWidth||window.innerWidth||0:document.documentElement.clientHeight||window.innerHeight||0;return r/100*s}let l=Number.parseFloat(o);return Number.isFinite(l)?l:void 0}var Go=["className","children","defaultOpen","open","onOpenChange","size","defaultSize","onSizeChange","sizeUpdate","sizeUpdateMs","style","inset"],st=c.forwardRef((e,t)=>{let{className:o,presentation:l="fixed",defaultOpen:r,open:s,onOpenChange:p,expandedSize:a=200,minSize:n=100,maxSize:d=400,resizable:h=!1,collapsible:g=!0,onExpand:b,onCollapse:D,onResize:C,onResizeStart:E,onResizeEnd:U,snapPoints:A,snapTolerance:z,collapseThreshold:j,paneId:K,persistence:_,children:W,style:J,size:q,defaultSize:k,onSizeChange:m,sizeUpdate:f,sizeUpdateMs:v=50,inset:Y}=e,$=Kt(e,Go),{bottomMode:T,setBottomMode:X}=zt(),{currentBreakpointReady:x}=Lt(),{peekTarget:w}=Ht(),{togglePane:Q}=Ot(),{registerInset:F,unregisterInset:Z}=Vt();c.useLayoutEffect(()=>{if(Y)return F("bottom"),()=>Z("bottom")},[Y,F,Z]);let B=At(l),ne=B==="overlay",G=B==="stacked",L=c.useRef(null),te=c.useCallback(i=>{L.current=i,typeof t=="function"?t(i):t&&(t.current=i)},[t]),me=c.Children.toArray(W),fe=me.filter(i=>c.isValidElement(i)&&i.type===ge),at=me.filter(i=>!(c.isValidElement(i)&&i.type===ge)),he=c.useRef(p),Oe=c.useRef(s);c.useLayoutEffect(()=>{he.current=p,Oe.current=s});let _t=c.useMemo(()=>rt(s),[s]),qt=c.useMemo(()=>rt(r),[r]),Yt=typeof s=="object"&&s!==null,{resolvedControlled:Pe}=jt({controlledValue:_t,defaultValue:qt,currentValue:T,setValue:X,breakpointReady:x,controlledIsResponsive:Yt,onResponsiveChange:i=>he.current?.(i==="expanded",{reason:"responsive"}),onInit:i=>{typeof Oe.current>"u"&&he.current?.(i==="expanded",{reason:"init"})}}),re=c.useRef(null);c.useEffect(()=>()=>{re.current&&(clearTimeout(re.current),re.current=null)},[m,f,v]);let ve=c.useMemo(()=>{let i=m,M=f,N=v??50;if(!i)return()=>{};if(M==="debounce")return(R,de)=>{re.current&&clearTimeout(re.current),re.current=setTimeout(()=>{i(R,de),re.current=null},N)};if(M==="throttle"){let R=0;return(de,ut)=>{let mt=Date.now();mt-R>=N&&(R=mt,i(de,ut))}}return(R,de)=>i(R,de)},[m,f,v]),Re=c.useRef(null);c.useEffect(()=>{let i=typeof s<"u";if(Re.current===null){Re.current=i;return}Re.current!==i&&(console.warn("Shell.Bottom: Switching between controlled and uncontrolled `open` is not supported."),Re.current=i)},[s]);let it=c.useRef(null),lt=c.useRef(void 0);c.useEffect(()=>{let i=it.current,N=lt.current!==Pe;if(i!==null&&i!==T){let R=T==="expanded";(!(typeof Oe.current<"u")||!N&&R!==(Pe===void 0?void 0:Pe==="expanded"))&&he.current?.(R,{reason:"toggle"})}it.current=T,lt.current=Pe},[T,Pe]);let pt=c.useRef(b),ct=c.useRef(D);c.useLayoutEffect(()=>{pt.current=b,ct.current=D});let be=c.useRef(null),dt=c.useRef(!1);c.useEffect(()=>{let i=T;if(!x){be.current=i;return}if(!dt.current){dt.current=!0,be.current=i;return}let M=be.current;M!==null&&M!==i&&(i==="expanded"?pt.current?.():i==="collapsed"&&ct.current?.(),be.current=i)},[T,x]);let Ve=T==="expanded",xe=c.useMemo(()=>{if(!K||_)return _;let i=`kookie-ui:shell:bottom:${K}`;return{load:()=>{if(!(typeof window>"u"))try{let N=window.localStorage.getItem(i);return N?Number(N):void 0}catch{return}},save:N=>{if(!(typeof window>"u"))try{window.localStorage.setItem(i,String(N))}catch{}}}},[K,_]);c.useEffect(()=>{let i=!0;if(!h||!xe?.load||ne)return;let M=xe.load(),N=R=>{!i||typeof R!="number"||!L.current||(L.current.style.setProperty("--bottom-size",`${R}px`),C?.(R))};return M instanceof Promise?M.then(N).catch(R=>{}):N(M),()=>{i=!1}},[h,xe,C,ne]);let Xt=h&&!ne&&Ve?c.createElement(nt.Provider,{value:{containerRef:L,cssVarName:"--bottom-size",minSize:n,maxSize:d,defaultSize:a,orientation:"horizontal",edge:"start",computeNext:(i,M,N)=>{let R=i-M;return N-R},onResize:C,onResizeStart:E,onResizeEnd:i=>{U?.(i),ve(i,{reason:"resize"}),xe?.save?.(i)},target:"bottom",collapsible:g,snapPoints:A,snapTolerance:z??8,collapseThreshold:j,requestCollapse:()=>X("collapsed"),requestToggle:()=>Q("bottom")}},fe.length>0?fe.map((i,M)=>c.cloneElement(i,{key:i.key??M})):c.createElement(ce,null)):null,Ie=c.useCallback(i=>$t(i,"vertical"),[]);c.useEffect(()=>{if(L.current&&typeof q>"u"&&typeof k<"u"){let i=Ie(k);if(typeof i=="number"&&Number.isFinite(i)){let R=Math.min((typeof d=="number"?d:void 0)??i,Math.max((typeof n=="number"?n:void 0)??i,i));L.current.style.setProperty("--bottom-size",`${R}px`),ve(R,{reason:"init"})}}},[]);let Ae=q;return c.useEffect(()=>{if(!L.current||typeof Ae>"u")return;let i=Ie(Ae);if(typeof i=="number"&&Number.isFinite(i)){let R=Math.min((typeof d=="number"?d:void 0)??i,Math.max((typeof n=="number"?n:void 0)??i,i));L.current.style.setProperty("--bottom-size",`${R}px`),ve(R,{reason:"controlled"})}},[Ae,n,d,Ie,ve]),ne?c.createElement(Je,{open:T==="expanded",onOpenChange:M=>X(M?"expanded":"collapsed")},c.createElement(Qe,{side:"bottom",style:{padding:0},"aria-label":"Bottom panel","aria-describedby":void 0,height:{initial:`${a}px`}},c.createElement(Nt,null,c.createElement(Ze,null,"Bottom panel")),at)):c.createElement("div",{...$,ref:te,className:(0,Ut.default)("rt-ShellBottom",o),"data-mode":T,"data-peek":w==="bottom"||void 0,"data-presentation":x?B:void 0,"data-open":x&&G&&Ve||void 0,"data-inset":Y||void 0,style:{...J,"--bottom-size":`${a}px`,"--bottom-min-size":`${n}px`,"--bottom-max-size":`${d}px`}},c.createElement("div",{className:"rt-ShellBottomContent","data-visible":Ve||void 0},at),Xt)});st.displayName="Shell.Bottom";st.Handle=ge;
1
+ "use strict";var io=Object.create;var De=Object.defineProperty;var lo=Object.getOwnPropertyDescriptor;var po=Object.getOwnPropertyNames;var co=Object.getPrototypeOf,uo=Object.prototype.hasOwnProperty;var mo=(e,t)=>{for(var o in t)De(e,o,{get:t[o],enumerable:!0})},Rt=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of po(t))!uo.call(e,r)&&r!==o&&De(e,r,{get:()=>t[r],enumerable:!(n=lo(t,r))||n.enumerable});return e};var B=(e,t,o)=>(o=e!=null?io(co(e)):{},Rt(t||!e||!e.__esModule?De(o,"default",{value:e,enumerable:!0}):o,e)),fo=e=>Rt(De({},"__esModule",{value:!0}),e);var dn={};mo(dn,{Bottom:()=>ut});module.exports=fo(dn);var d=B(require("react")),no=B(require("classnames"));var P=B(require("react")),Wt=B(require("classnames")),te=require("radix-ui");var re={asChild:{type:"boolean"}};var Ee={width:{type:"string",className:"rt-r-w",customProperties:["--width"],responsive:!0},minWidth:{type:"string",className:"rt-r-min-w",customProperties:["--min-width"],responsive:!0},maxWidth:{type:"string",className:"rt-r-max-w",customProperties:["--max-width"],responsive:!0}};var bt={height:{type:"string",className:"rt-r-h",customProperties:["--height"],responsive:!0},minHeight:{type:"string",className:"rt-r-min-h",customProperties:["--min-height"],responsive:!0},maxHeight:{type:"string",className:"rt-r-max-h",customProperties:["--max-height"],responsive:!0}};var yo=["1","2","3","4"],Po=["solid","translucent"],go=["solid","translucent"],Ct={...re,align:{type:"enum",className:"rt-r-align",values:["start","center"],default:"center"},size:{type:"enum",className:"rt-r-size",values:yo,default:"3",responsive:!0},panelBackground:{type:"enum",values:Po,default:void 0},material:{type:"enum",values:go,default:void 0},width:Ee.width,minWidth:Ee.minWidth,maxWidth:{...Ee.maxWidth,default:"600px"},...bt};var x=B(require("react")),kt=B(require("classnames")),ye=require("radix-ui"),Me=require("radix-ui/internal");function xt(e){switch(e){case"tomato":case"red":case"ruby":case"crimson":case"pink":case"plum":case"purple":case"violet":return"mauve";case"iris":case"indigo":case"blue":case"sky":case"cyan":return"slate";case"teal":case"jade":case"mint":case"green":return"sage";case"grass":case"lime":return"olive";case"yellow":case"amber":case"orange":case"brown":case"gold":case"bronze":return"sand";case"gray":return"gray"}}var $e=B(require("react"));function Z(e){let[t,o]=$e.useState(e),[n,r]=$e.useState(e);return Object.is(e,n)||(r(e),o(e)),[t,o]}var St=B(require("react")),ho="Warning: The `panelBackground` prop is deprecated and will be removed in a future version. Use `material` prop instead.",Tt=new Set;function vo(e){Tt.has(e)||(Tt.add(e),console.warn(e))}function we(e){St.useEffect(()=>{},[e])}var Ue=["gray","gold","bronze","brown","yellow","amber","orange","tomato","red","ruby","crimson","pink","plum","purple","violet","iris","indigo","blue","cyan","teal","jade","green","grass","lime","mint","sky"],Dt=["auto","gray","mauve","slate","sage","olive","sand"],ke={color:{type:"enum",values:Ue,default:void 0}};var Et=["none","small","medium","large","full"];var Ro=["inherit","light","dark"],bo=["solid","translucent"],Co=["solid","translucent"],xo=["90%","95%","100%","105%","110%"],wt=["sans","mono","serif"],y={...re,hasBackground:{type:"boolean",default:!0},appearance:{type:"enum",values:Ro,default:"inherit"},accentColor:{type:"enum",values:Ue,default:"blue"},grayColor:{type:"enum",values:Dt,default:"slate"},material:{type:"enum",values:Co,default:"translucent"},panelBackground:{type:"enum",values:bo,default:"translucent"},radius:{type:"enum",values:Et,default:"medium"},scaling:{type:"enum",values:xo,default:"100%"},fontFamily:{type:"enum",values:wt,default:"sans"},headingFontFamily:{type:"enum",values:wt}};var N=()=>{},zn={appearance:y.appearance.default,accentColor:y.accentColor.default,grayColor:y.grayColor.default,resolvedGrayColor:y.grayColor.default,material:y.material.default,panelBackground:y.panelBackground.default,radius:y.radius.default,scaling:y.scaling.default,fontFamily:y.fontFamily.default,headingFontFamily:void 0,onAppearanceChange:N,onAccentColorChange:N,onGrayColorChange:N,onMaterialChange:N,onPanelBackgroundChange:N,onRadiusChange:N,onScalingChange:N,onFontFamilyChange:N,onHeadingFontFamilyChange:N},_e=x.createContext(void 0);var qe=x.forwardRef((e,t)=>x.useContext(_e)===void 0?x.createElement(ye.Tooltip.Provider,{delayDuration:200},x.createElement(ye.Direction.Provider,{dir:"ltr"},x.createElement(Mt,{...e,ref:t}))):x.createElement(Ye,{...e,ref:t}));qe.displayName="Theme";var Mt=x.forwardRef((e,t)=>{let{appearance:o=y.appearance.default,accentColor:n=y.accentColor.default,grayColor:r=y.grayColor.default,material:s=y.material.default,panelBackground:l=y.panelBackground.default,radius:p=y.radius.default,scaling:i=y.scaling.default,fontFamily:a=y.fontFamily.default,headingFontFamily:u,hasBackground:m=y.hasBackground.default,...g}=e;we(e.panelBackground);let[E,T]=Z(o),[H,_]=Z(n),[$,R]=Z(r),z=s!==y.material.default?s:l,[F,G]=Z(z),[W,U]=Z(F),[ee,oe]=Z(p),[f,b]=Z(i),[w,K]=Z(a),[q,h]=Z(u);return x.createElement(Ye,{...g,ref:t,isRoot:!0,hasBackground:m,appearance:E,accentColor:H,grayColor:$,material:F,panelBackground:W,radius:ee,scaling:f,fontFamily:w,headingFontFamily:q,onAppearanceChange:T,onAccentColorChange:_,onGrayColorChange:R,onMaterialChange:G,onPanelBackgroundChange:U,onRadiusChange:oe,onScalingChange:b,onFontFamilyChange:K,onHeadingFontFamilyChange:h})});Mt.displayName="ThemeRoot";function To(){if(typeof navigator>"u")return;let e=navigator.userAgent;if(e.includes("Win"))return"windows";if(e.includes("Mac"))return"macos";if(e.includes("Linux"))return"linux"}var Ye=x.forwardRef((e,t)=>{let o=x.useContext(_e),{asChild:n,isRoot:r,hasBackground:s,appearance:l=e.appearance??o?.appearance??y.appearance.default,accentColor:p=e.accentColor??o?.accentColor??y.accentColor.default,grayColor:i=e.grayColor??o?.resolvedGrayColor??y.grayColor.default,material:a=e.material??o?.material??y.material.default,panelBackground:u=e.panelBackground??o?.panelBackground??y.panelBackground.default,radius:m=e.radius??o?.radius??y.radius.default,scaling:g=e.scaling??o?.scaling??y.scaling.default,fontFamily:E=e.fontFamily??o?.fontFamily??y.fontFamily.default,headingFontFamily:T=e.headingFontFamily??o?.headingFontFamily,onAppearanceChange:H=N,onAccentColorChange:_=N,onGrayColorChange:$=N,onMaterialChange:R=N,onPanelBackgroundChange:z=N,onRadiusChange:F=N,onScalingChange:G=N,onFontFamilyChange:W=N,onHeadingFontFamilyChange:U=N,...ee}=e,oe=n?ye.Slot.Root:"div",f=i==="auto"?xt(p):i,b=e.appearance==="light"||e.appearance==="dark",w=s===void 0?r||b:s,K=x.useRef(null),q=(0,Me.useComposedRefs)(t,K),h="data-os"in ee;return(0,Me.useLayoutEffect)(()=>{if(!r||h)return;let V=K.current;if(!V)return;let v=To();if(v)return V.setAttribute("data-os",v),()=>V.removeAttribute("data-os")},[r,h]),x.createElement(_e.Provider,{value:x.useMemo(()=>({appearance:l,accentColor:p,grayColor:i,resolvedGrayColor:f,material:a,panelBackground:u,radius:m,scaling:g,fontFamily:E,headingFontFamily:T,onAppearanceChange:H,onAccentColorChange:_,onGrayColorChange:$,onMaterialChange:R,onPanelBackgroundChange:z,onRadiusChange:F,onScalingChange:G,onFontFamilyChange:W,onHeadingFontFamilyChange:U}),[l,p,i,f,a,u,m,g,E,T,H,_,$,R,z,F,G,W,U])},x.createElement(oe,{"data-is-root-theme":r?"true":"false","data-accent-color":p,"data-gray-color":f,"data-has-background":w?"true":"false","data-material":a,"data-panel-background":u,"data-radius":m,"data-scaling":g,"data-font-family":E,"data-heading-font-family":T,ref:q,...ee,className:(0,kt.default)("radix-themes",{light:l==="light",dark:l==="dark"},ee.className)}))});Ye.displayName="ThemeImpl";var ce=B(require("react")),Ft=require("radix-ui");var Be={highContrast:{type:"boolean",className:"rt-high-contrast",default:void 0}};var So=["normal","start","end","both"],Ne={trim:{type:"enum",className:"rt-r-lt",values:So,responsive:!0}};var Do=["left","center","right"],ze={align:{type:"enum",className:"rt-r-ta",values:Do,responsive:!0}};var Eo=["wrap","nowrap","pretty","balance"],Le={wrap:{type:"enum",className:"rt-r-tw",values:Eo,responsive:!0}};var He={truncate:{type:"boolean",className:"rt-truncate"}};var wo=["sans","mono","serif"],Fe={font:{type:"enum",className:"rt-r-ff",values:wo}};var ko=["thin","extralight","light","regular","medium","semibold","bold","extrabold"],Ve={weight:{type:"enum",className:"rt-r-weight",values:ko,responsive:!0}};var Mo=["h1","h2","h3","h4","h5","h6"],Bo=["0","1","2","3","4","5","6","7","8","9","10","11","12"],Bt={as:{type:"enum",values:Mo,default:"h1"},...re,size:{type:"enum",className:"rt-r-size",values:Bo,default:"6",responsive:!0},...Fe,...Ve,...ze,...Ne,...He,...Le,...ke,...Be};var Ht=B(require("classnames"));var No=[],zo=new Set;function Lo(e){let t=Object.assign({},...e),o=[],n=[],r=new Set;for(let s in t){let l=t[s],p=l.values??No,i={key:s,type:l.type,default:l.default,hasDefault:l.default!==void 0,responsive:"responsive"in l,className:l.className,customProperties:l.customProperties,parseValue:l.parseValue,values:p,valueSet:p.length>0?new Set(p):zo,enumValueSet:l.type==="enum"?new Set([l.default,...p]):void 0};l.className?(o.push(i),r.add(s)):(i.hasDefault||l.type==="enum")&&n.push(i)}return{styling:o,passthrough:n,stylingKeys:r}}var Ho={children:new WeakMap};function Nt(e){let t=Ho;for(let o=0;o<e.length;o++){let n=e[o],r=t.children.get(n);r===void 0&&(r={children:new WeakMap},t.children.set(n,r)),t=r}return t.compiled??(t.compiled=Lo(e))}var Fo=["initial","xs","sm","md","lg","xl"],Xe=new Set(Fo);function Je(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var Vo=new Set(["initial","xs","sm","md","lg","xl"]);function ie(e){if(typeof e!="object"||e===null)return!1;for(let t in e)if(Vo.has(t))return!0;return!1}function Oe(e,t,o){return t!==void 0?t.has(o):e.includes(o)}function Lt({className:e,customProperties:t,...o}){let n=Qe({allowArbitraryValues:!0,className:e,...o}),r=Oo({customProperties:t,...o});return[n,r]}function Qe({allowArbitraryValues:e,value:t,className:o,propValues:n,propValueSet:r,parseValue:s=l=>l}){if(t){if(typeof t=="string")return Oe(n,r,t)?zt(o,t,s):e?o:void 0;if(ie(t)){let l=t,p=[];for(let i in l){if(!Je(l,i)||!Xe.has(i))continue;let a=l[i];if(a!==void 0){if(Oe(n,r,a)){let u=zt(o,a,s),m=i==="initial"?u:`${i}:${u}`;p.push(m)}else if(e){let u=i==="initial"?o:`${i}:${o}`;p.push(u)}}}return p.length>0?p.join(" "):""}if(e)return o}}function zt(e,t,o){let n=e?"-":"",r=o(t),s=r?.startsWith("-"),l=s?"-":"",p=s?r?.substring(1):r;return`${l}${e}${n}${p}`}function Oo({customProperties:e,value:t,propValues:o,propValueSet:n,parseValue:r=s=>s}){if(!t||typeof t=="string"&&Oe(o,n,t))return;let s;if(typeof t=="string"){let l=r(t);s={};for(let p of e)s[p]=l;return s}if(ie(t)){let l=t;for(let p in l){if(!Je(l,p)||!Xe.has(p))continue;let i=l[p];if(i===void 0||Oe(o,n,i))continue;let a=r(i);s??(s={});for(let u of e){let m=p==="initial"?u:`${u}-${p}`;s[m]=a}}}return s??{}}function Ze(...e){let t;for(let o of e)o&&(t===void 0&&(t={}),Object.assign(t,o));return t}function Ao(e,t){let o=e.initial,n=!1;return t.hasDefault&&o===void 0&&(o=t.default,n=!0),t.enumValueSet!==void 0&&!t.enumValueSet.has(o)&&(o=t.default,n=!0),n?{...e,initial:o}:e}function le(e,...t){let{styling:o,passthrough:n,stylingKeys:r}=Nt(t),s={};for(let i in e)r.has(i)||(s[i]=e[i]);for(let i=0;i<n.length;i++){let a=n[i],u=s[a.key];if(u===void 0){a.hasDefault&&(s[a.key]=a.default);continue}a.enumValueSet!==void 0&&!a.enumValueSet.has(u)&&!ie(u)&&(s[a.key]=a.default)}let l,p=[];for(let i=0;i<o.length;i++){let a=o[i],u=e[a.key];if(u===void 0&&a.hasDefault&&(u=a.default),a.enumValueSet!==void 0&&!a.enumValueSet.has(u)&&!ie(u)&&(u=a.default),!!u){if(ie(u)){if(!a.responsive)continue;u=Ao(u,a)}if(a.type==="enum"){let m=Qe({allowArbitraryValues:!1,value:u,className:a.className,propValues:a.values,propValueSet:a.valueSet,parseValue:a.parseValue});m&&p.push(m);continue}if(a.type==="string"||a.type==="enum | string"){let[m,g]=Lt({className:a.className,customProperties:a.customProperties,propValues:a.type==="string"?[]:a.values,propValueSet:a.type==="string"?void 0:a.valueSet,parseValue:a.parseValue,value:u});g&&(l=Ze(l,g)),m&&p.push(m);continue}if(a.type==="boolean"){p.push(a.className);continue}}}return s.className=(0,Ht.default)(p.length>0?p.join(" "):void 0,e.className),s.style=Ze(l,e.style),s}var pe=["0","1","2","3","4","5","6","7","8","9","10","11","12","-1","-2","-3","-4","-5","-6","-7","-8","-9","-10","-11","-12"],Ae={m:{type:"enum | string",values:pe,responsive:!0,className:"rt-r-m",customProperties:["--m"]},mx:{type:"enum | string",values:pe,responsive:!0,className:"rt-r-mx",customProperties:["--ml","--mr"]},my:{type:"enum | string",values:pe,responsive:!0,className:"rt-r-my",customProperties:["--mt","--mb"]},mt:{type:"enum | string",values:pe,responsive:!0,className:"rt-r-mt",customProperties:["--mt"]},mr:{type:"enum | string",values:pe,responsive:!0,className:"rt-r-mr",customProperties:["--mr"]},mb:{type:"enum | string",values:pe,responsive:!0,className:"rt-r-mb",customProperties:["--mb"]},ml:{type:"enum | string",values:pe,responsive:!0,className:"rt-r-ml",customProperties:["--ml"]}};var Io={...Bt,...Ae},et=ce.memo(ce.forwardRef((e,t)=>{let{children:o,className:n,asChild:r,as:s="h1",color:l,...p}=le(e,Io),i=n?`rt-Heading ${n}`:"rt-Heading";return r?ce.createElement(Ft.Slot.Root,{"data-accent-color":l,...p,ref:t,className:i},o):ce.createElement(s,{"data-accent-color":l,...p,ref:t,className:i},o)}));et.displayName="Heading";var de=B(require("react")),Ot=require("radix-ui");var Wo=["span","div","label","p"],jo=["0","1","2","3","4","5","6","7","8","9","10","11","12"],Vt={as:{type:"enum",values:Wo,default:"span"},...re,size:{type:"enum",className:"rt-r-size",values:jo,responsive:!0},...Fe,...Ve,...ze,...Ne,...He,...Le,...ke,...Be};var Go={...Vt,...Ae},tt=de.memo(de.forwardRef((e,t)=>{let{children:o,className:n,asChild:r,as:s="span",color:l,...p}=le(e,Go),i=n?`rt-Text ${n}`:"rt-Text";return r?de.createElement(Ot.Slot.Root,{"data-accent-color":l,...p,ref:t,className:i},o):de.createElement(s,{"data-accent-color":l,...p,ref:t,className:i},o)}));tt.displayName="Text";var Ie=B(require("react")),ot=e=>{if(!Ie.isValidElement(e))throw Error(`Expected a single React Element child, but got: ${Ie.Children.toArray(e).map(o=>typeof o=="object"&&"type"in o&&typeof o.type=="string"?o.type:typeof o).join(", ")}`);return e};var At=B(require("react")),nt=!1;function It(){At.useEffect(()=>{if(typeof document>"u"||nt)return;nt=!0;let e=new Set,t=(u,m)=>{let g=setTimeout(()=>{e.delete(g),u()},m);e.add(g)},o=()=>{let u=!!document.querySelector('[role="dialog"][aria-modal="true"], [role="alertdialog"][aria-modal="true"]'),m=!!document.querySelector('[data-radix-popper-content-wrapper], [data-state="open"]');return u||m},n=()=>{document.body.style.pointerEvents==="none"&&(console.log("[KookieUI] Force cleaning stuck pointer-events: none from body"),document.body.style.pointerEvents="",document.body.removeAttribute("data-scroll-locked"),document.body.removeAttribute("data-remove-scroll"),document.body.classList.remove("ReactModal__Body--open"))},r=()=>{document.body.style.pointerEvents==="none"&&!o()&&(console.log("[KookieUI] Safe cleaning stuck pointer-events: none from body"),document.body.style.pointerEvents="")},s=u=>{let m=u.target;m&&!m.closest('[role="dialog"], [role="alertdialog"], [data-radix-popper-content-wrapper]')&&t(n,100)},l=u=>{u.key==="Escape"&&t(n,200)},p=()=>{t(r,50)};document.addEventListener("click",s,!0),document.addEventListener("keydown",l,!0),document.addEventListener("pointerup",p,!0),document.addEventListener("transitionend",p,!0),document.addEventListener("animationend",p,!0);let i=new MutationObserver(()=>{t(r,0)});i.observe(document.body,{childList:!0,subtree:!0,attributes:!0});let a=setInterval(()=>{document.body.style.pointerEvents==="none"&&!o()&&(console.log("[KookieUI] Periodic cleanup of stuck pointer-events"),document.body.style.pointerEvents="")},1e3);return t(r,100),()=>{clearInterval(a),e.forEach(clearTimeout),e.clear(),i.disconnect(),document.removeEventListener("click",s,!0),document.removeEventListener("keydown",l,!0),document.removeEventListener("pointerup",p,!0),document.removeEventListener("transitionend",p,!0),document.removeEventListener("animationend",p,!0),nt=!1}},[])}var rt=e=>P.createElement(te.Dialog.Root,{...e,modal:!0});rt.displayName="Sheet.Root";var Ko=P.forwardRef(({children:e,...t},o)=>P.createElement(te.Dialog.Trigger,{...t,ref:o,asChild:!0},ot(e)));Ko.displayName="Sheet.Trigger";var{align:Wr,panelBackground:$o,material:Uo,...jt}=Ct,_o={panelBackground:$o,material:Uo},{default:jr,...qo}=jt.maxWidth,Yo={...jt,maxWidth:qo},st=P.forwardRef((e,t)=>{let{side:o="start",forceMount:n,container:r,className:s,panelBackground:l,material:p,...i}=e,u={left:"start",right:"end",start:"start",end:"end",top:"top",bottom:"bottom"}[o],{panelBackground:m,material:g}=le({panelBackground:l,material:p},_o);we(l);let E=g??m,{className:T,...H}=le(i,Yo),_=P.useRef(null),$=P.useMemo(()=>R=>{_.current=R,typeof t=="function"?t(R):t&&(t.current=R)},[t]);return It(),P.useEffect(()=>{if(typeof window>"u")return;let R=_.current;if(!R)return;let z=R.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(z.length===0)return;let F=z[0],G=z[z.length-1],W=U=>{U.key==="Tab"&&(U.shiftKey?document.activeElement===F&&(U.preventDefault(),G.focus()):document.activeElement===G&&(U.preventDefault(),F.focus()))};return R.addEventListener("keydown",W),F.focus(),()=>{R.removeEventListener("keydown",W)}},[]),P.createElement(te.Dialog.Portal,{container:r,forceMount:n},P.createElement(qe,{asChild:!0},P.createElement(te.Dialog.Overlay,{className:"rt-BaseDialogOverlay rt-DialogOverlay rt-SheetOverlay"},P.createElement(te.Dialog.Content,{...H,ref:$,className:(0,Wt.default)("rt-BaseDialogContent","rt-SheetContent",s,T),"data-side":u,"data-material":E,"data-panel-background":E,tabIndex:-1,role:"dialog","aria-modal":"true"}))))});st.displayName="Sheet.Content";var at=P.forwardRef(({size:e="4",weight:t="medium",...o},n)=>P.createElement(te.Dialog.Title,{asChild:!0},P.createElement(et,{ref:n,size:e,weight:t,...o})));at.displayName="Sheet.Title";var Xo=P.forwardRef(({size:e="2",color:t="gray",...o},n)=>P.createElement(te.Dialog.Description,{asChild:!0},P.createElement(tt,{ref:n,size:e,color:t,...o})));Xo.displayName="Sheet.Description";var Jo=P.forwardRef(({children:e,...t},o)=>P.createElement(te.Dialog.Close,{...t,ref:o,asChild:!0},ot(e)));Jo.displayName="Sheet.Close";var it=require("radix-ui"),Gt=it.VisuallyHidden.Root,Gr=it.VisuallyHidden.Root;var D=B(require("react")),Zo=D.createContext(null);function lt(){let e=D.useContext(Zo);if(!e)throw new Error("Shell components must be used within <Shell.Root>");return e}var $r=D.createContext(null);var Ur=D.createContext(null);var _r=D.createContext(null);var qr=D.createContext(null);var en=D.createContext(null);function Kt(){let e=D.useContext(en);if(!e)throw new Error("useBottomMode must be used within Shell.Root");return e}var tn=D.createContext(null);function $t(){let e=D.useContext(tn);if(!e)throw new Error("usePresentation must be used within Shell.Root");return e}var on=D.createContext(null);function Ut(){let e=D.useContext(on);if(!e)throw new Error("usePeek must be used within Shell.Root");return e}var nn=D.createContext(null);function _t(){let e=D.useContext(nn);if(!e)throw new Error("useShellActions must be used within Shell.Root");return e}var Yr=D.createContext(null);var rn=D.createContext(null);function qt(){let e=D.useContext(rn);if(!e)throw new Error("useInset must be used within Shell.Root");return e}var A=B(require("react"));var pt={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"};function Xt(e){let{currentBreakpoint:t}=lt();return A.useMemo(()=>{if(typeof e=="string")return e;if(e[t])return e[t];let n=[...Object.keys(pt)].reverse().concat("initial"),r=n.indexOf(t);for(let s=r+1;s<n.length;s++){let l=n[s];if(e[l])return e[l]}return"fixed"},[e,t])}function Yt(e){let{currentBreakpoint:t}=lt();return A.useMemo(()=>{if(e==null)return;if(typeof e!="object")return e;let o=e;if(o[t]!==void 0)return o[t];let r=[...Object.keys(pt)].reverse().concat("initial"),s=r.indexOf(t);for(let l=s+1;l<r.length;l++){let p=r[l];if(o[p]!==void 0)return o[p]}},[e,t])}function Jt({controlledValue:e,defaultValue:t,currentValue:o,setValue:n,breakpointReady:r,onInit:s,onResponsiveChange:l,controlledIsResponsive:p=!1}){let i=Yt(e),a=Yt(t),u=A.useRef(void 0),m=A.useRef(null),g=A.useRef(i),E=A.useRef(o),T=A.useRef(n);A.useLayoutEffect(()=>{g.current=i,E.current=o,T.current=n}),A.useEffect(()=>{if(i===void 0)return;let $=u.current!==i;if(u.current=i,o===i){m.current&&(clearTimeout(m.current),m.current=null),p&&l?.(i);return}if($){m.current&&(clearTimeout(m.current),m.current=null),n(i),p&&l?.(i);return}m.current||(m.current=setTimeout(()=>{m.current=null;let R=g.current,z=E.current;R!==void 0&&z!==R&&T.current(R)},0))},[i,o,n,l,p]),A.useEffect(()=>()=>{m.current&&(clearTimeout(m.current),m.current=null)},[]);let H=A.useRef(!1);return A.useEffect(()=>{H.current||r&&(typeof e<"u"||a!==void 0&&(H.current=!0,o!==a&&n(a),s?.(a)))},[r,e,a,o,n,s]),{resolvedControlled:i,resolvedDefault:a}}var We=B(require("react")),ct=We.createContext(null);function Qt(){let e=We.useContext(ct);if(!e)throw new Error("Shell.Handle must be used within a resizable pane");return e}var I=B(require("react")),Zt=B(require("classnames"));var ue=I.forwardRef(({className:e,children:t,...o},n)=>{let{containerRef:r,cssVarName:s,minSize:l,maxSize:p,defaultSize:i,orientation:a,edge:u,computeNext:m,onResize:g,onResizeStart:E,onResizeEnd:T,snapPoints:H,snapTolerance:_,collapseThreshold:$,collapsible:R,target:z,requestCollapse:F,requestToggle:G}=Qt(),W=I.useRef(null);I.useEffect(()=>()=>{try{W.current?.()}catch{}W.current=null},[]);let U=a,oe=`Resize ${z.charAt(0).toUpperCase()+z.slice(1)} pane`;return I.createElement("div",{...o,ref:n,className:(0,Zt.default)("rt-ShellResizer",e),"data-orientation":a,"data-edge":u,role:"slider","aria-label":oe,"aria-orientation":U,"aria-valuemin":l,"aria-valuemax":p,"aria-valuenow":i,tabIndex:0,onPointerDown:f=>{if(!r.current)return;f.preventDefault();let b=r.current,w=f.currentTarget,K=f.pointerId;try{W.current?.()}catch{}b.setAttribute("data-resizing","");try{w.setPointerCapture(K)}catch{}let q=a==="vertical"?f.clientX:f.clientY,h=parseFloat(getComputedStyle(b).getPropertyValue(s)||`${i}`),V=S=>Math.min(Math.max(S,l),p),v=document.body,k=v.style.cursor,Q=v.style.userSelect;v.style.cursor=a==="vertical"?"col-resize":"row-resize",v.style.userSelect="none",E?.(h);let se=null,ne=!1,Pe=(S,Y)=>{if(S.type===Y)ne=!0;else if(ne)return!1;return!0},j=S=>{if(!Pe(S,"pointermove")||S===se)return;se=S;let Y=a==="vertical"?S.clientX:S.clientY,J=V(m(Y,q,h));b.style.setProperty(s,`${J}px`),w.setAttribute("aria-valuenow",String(J)),g?.(J)},ge=()=>{try{w.releasePointerCapture(K)}catch{}window.removeEventListener("pointermove",j),document.removeEventListener("pointermove",j),window.removeEventListener("mousemove",j),document.removeEventListener("mousemove",j),w.removeEventListener("pointermove",j),window.removeEventListener("pointerup",O),document.removeEventListener("pointerup",O),window.removeEventListener("mouseup",O),document.removeEventListener("mouseup",O),window.removeEventListener("pointercancel",O),document.removeEventListener("pointercancel",O),window.removeEventListener("keydown",he),w.removeEventListener("lostpointercapture",O),b.removeAttribute("data-resizing"),v.style.cursor=k,v.style.userSelect=Q,W.current=null},X=!1,O=()=>{if(X)return;X=!0;let S=parseFloat(getComputedStyle(b).getPropertyValue(s)||`${i}`),Y=S;if(H&&H.length){let J=H.reduce((me,be)=>Math.abs(be-S)<Math.abs(me-S)?be:me,H[0]);Math.abs(J-S)<=(_??8)&&(Y=J,b.style.setProperty(s,`${Y}px`),w.setAttribute("aria-valuenow",String(Y)),g?.(Y))}R&&typeof $=="number"&&S<=$&&F?.(),T?.(Y),ge()},he=S=>{S.key==="Escape"&&(b.style.setProperty(s,`${h}px`),w.setAttribute("aria-valuenow",String(h)),T?.(h),ge())};window.addEventListener("pointermove",j),document.addEventListener("pointermove",j),window.addEventListener("mousemove",j),document.addEventListener("mousemove",j),w.addEventListener("pointermove",j),window.addEventListener("pointerup",O),document.addEventListener("pointerup",O),window.addEventListener("mouseup",O),document.addEventListener("mouseup",O),window.addEventListener("pointercancel",O),document.addEventListener("pointercancel",O),window.addEventListener("keydown",he),w.addEventListener("lostpointercapture",O),W.current=ge},onDoubleClick:()=>{R&&G?.()},onKeyDown:f=>{if(!r.current)return;let b=r.current,w=getComputedStyle(b).getPropertyValue(s),K=Number.parseFloat(w.trim()),q=Number.isFinite(K)?K:i,h=k=>Math.min(Math.max(k,l),p),V=f.shiftKey?32:8,v=0;if(a==="vertical"){let k=typeof document<"u"?document.dir:void 0,Q=getComputedStyle(b).direction,se=!!(b.closest&&b.closest('[dir="rtl"]')),ne=k==="rtl"||Q==="rtl"||se;f.key==="ArrowRight"?v=ne?-V:V:f.key==="ArrowLeft"&&(v=ne?V:-V)}else f.key==="ArrowDown"?v=V:f.key==="ArrowUp"&&(v=-V);if(f.key==="Home"){f.preventDefault(),E?.(q);let k=h(l);b.style.setProperty(s,`${k}px`),f.currentTarget.setAttribute("aria-valuenow",String(k)),g?.(k),T?.(k);return}if(f.key==="End"){f.preventDefault(),E?.(q);let k=h(p);b.style.setProperty(s,`${k}px`),f.currentTarget.setAttribute("aria-valuenow",String(k)),g?.(k),T?.(k);return}if(v!==0){f.preventDefault(),E?.(q);let k=a==="vertical"&&u==="start"?-v:v,Q=h(q+k);b.style.setProperty(s,`${Q}px`),f.currentTarget.setAttribute("aria-valuenow",String(Q)),g?.(Q),T?.(Q)}}},t)});ue.displayName="Shell.Handle";var sn=I.forwardRef((e,t)=>I.createElement(ue,{...e,ref:t}));sn.displayName="Shell.Panel.Handle";var an=I.forwardRef((e,t)=>I.createElement(ue,{...e,ref:t}));an.displayName="Shell.Sidebar.Handle";var ln=I.forwardRef((e,t)=>I.createElement(ue,{...e,ref:t}));ln.displayName="Shell.Inspector.Handle";var Re=I.forwardRef((e,t)=>I.createElement(ue,{...e,ref:t}));Re.displayName="Shell.Bottom.Handle";function pn(e,t){let o=new Set(t),n={};return Object.keys(e).forEach(r=>{o.has(r)||(n[r]=e[r])}),n}var eo=["presentation","expandedSize","minSize","maxSize","resizable","collapsible","onExpand","onCollapse","onResize","resizer","onResizeStart","onResizeEnd","snapPoints","snapTolerance","collapseThreshold","paneId","persistence","inset"];function to(e,t){let o=t?[...eo,...t]:[...eo];return pn(e,o)}function dt(e){if(e!=null){if(typeof e=="object"){let t={};return Object.entries(e).forEach(([o,n])=>{typeof n=="boolean"&&(t[o]=n?"expanded":"collapsed")}),t}return e?"expanded":"collapsed"}}function oo(e,t="horizontal"){if(e==null)return;if(typeof e=="number"&&Number.isFinite(e))return e;let o=String(e).trim();if(!o)return;if(o.endsWith("px"))return Number.parseFloat(o);if(o.endsWith("rem")){let r=Number.parseFloat(getComputedStyle(document.documentElement).fontSize||"16")||16;return Number.parseFloat(o)*r}if(o.endsWith("%")){let r=Number.parseFloat(o),s=t==="horizontal"?document.documentElement.clientWidth||window.innerWidth||0:document.documentElement.clientHeight||window.innerHeight||0;return r/100*s}let n=Number.parseFloat(o);return Number.isFinite(n)?n:void 0}var cn=["className","children","defaultOpen","open","onOpenChange","size","defaultSize","onSizeChange","sizeUpdate","sizeUpdateMs","style","inset"],ut=d.forwardRef((e,t)=>{let{className:o,presentation:n="fixed",defaultOpen:r,open:s,onOpenChange:l,expandedSize:p=200,minSize:i=100,maxSize:a=400,resizable:u=!1,collapsible:m=!0,onExpand:g,onCollapse:E,onResize:T,onResizeStart:H,onResizeEnd:_,snapPoints:$,snapTolerance:R,collapseThreshold:z,paneId:F,persistence:G,children:W,style:U,size:ee,defaultSize:oe,onSizeChange:f,sizeUpdate:b,sizeUpdateMs:w=50,inset:K}=e,q=to(e,cn),{bottomMode:h,setBottomMode:V}=Kt(),{currentBreakpointReady:v}=$t(),{peekTarget:k}=Ut(),{togglePane:Q}=_t(),{registerInset:se,unregisterInset:ne}=qt();d.useLayoutEffect(()=>{if(K)return se("bottom"),()=>ne("bottom")},[K,se,ne]);let Pe=Xt(n),j=Pe==="overlay",ge=Pe==="stacked",X=d.useRef(null),O=d.useCallback(c=>{X.current=c,typeof t=="function"?t(c):t&&(t.current=c)},[t]),he=d.Children.toArray(W),S=he.filter(c=>d.isValidElement(c)&&c.type===Re),Y=he.filter(c=>!(d.isValidElement(c)&&c.type===Re)),J=d.useRef(l),me=d.useRef(s);d.useLayoutEffect(()=>{J.current=l,me.current=s});let be=d.useMemo(()=>dt(s),[s]),ro=d.useMemo(()=>dt(r),[r]),so=typeof s=="object"&&s!==null,{resolvedControlled:ve}=Jt({controlledValue:be,defaultValue:ro,currentValue:h,setValue:V,breakpointReady:v,controlledIsResponsive:so,onResponsiveChange:c=>J.current?.(c==="expanded",{reason:"responsive"}),onInit:c=>{typeof me.current>"u"&&J.current?.(c==="expanded",{reason:"init"})}}),ae=d.useRef(null);d.useEffect(()=>()=>{ae.current&&(clearTimeout(ae.current),ae.current=null)},[f,b,w]);let Ce=d.useMemo(()=>{let c=f,M=b,L=w??50;if(!c)return()=>{};if(M==="debounce")return(C,fe)=>{ae.current&&clearTimeout(ae.current),ae.current=setTimeout(()=>{c(C,fe),ae.current=null},L)};if(M==="throttle"){let C=0;return(fe,ht)=>{let vt=Date.now();vt-C>=L&&(C=vt,c(fe,ht))}}return(C,fe)=>c(C,fe)},[f,b,w]),xe=d.useRef(null);d.useEffect(()=>{let c=typeof s<"u";if(xe.current===null){xe.current=c;return}xe.current!==c&&(console.warn("Shell.Bottom: Switching between controlled and uncontrolled `open` is not supported."),xe.current=c)},[s]);let mt=d.useRef(null),ft=d.useRef(void 0);d.useEffect(()=>{let c=mt.current,L=ft.current!==ve;if(c!==null&&c!==h){let C=h==="expanded";(!(typeof me.current<"u")||!L&&C!==(ve===void 0?void 0:ve==="expanded"))&&J.current?.(C,{reason:"toggle"})}mt.current=h,ft.current=ve},[h,ve]);let yt=d.useRef(g),Pt=d.useRef(E);d.useLayoutEffect(()=>{yt.current=g,Pt.current=E});let Te=d.useRef(null),gt=d.useRef(!1);d.useEffect(()=>{let c=h;if(!v){Te.current=c;return}if(!gt.current){gt.current=!0,Te.current=c;return}let M=Te.current;M!==null&&M!==c&&(c==="expanded"?yt.current?.():c==="collapsed"&&Pt.current?.(),Te.current=c)},[h,v]);let je=h==="expanded",Se=d.useMemo(()=>{if(!F||G)return G;let c=`kookie-ui:shell:bottom:${F}`;return{load:()=>{if(!(typeof window>"u"))try{let L=window.localStorage.getItem(c);return L?Number(L):void 0}catch{return}},save:L=>{if(!(typeof window>"u"))try{window.localStorage.setItem(c,String(L))}catch{}}}},[F,G]);d.useEffect(()=>{let c=!0;if(!u||!Se?.load||j)return;let M=Se.load(),L=C=>{!c||typeof C!="number"||!X.current||(X.current.style.setProperty("--bottom-size",`${C}px`),T?.(C))};return M instanceof Promise?M.then(L).catch(C=>{}):L(M),()=>{c=!1}},[u,Se,T,j]);let ao=u&&!j&&je?d.createElement(ct.Provider,{value:{containerRef:X,cssVarName:"--bottom-size",minSize:i,maxSize:a,defaultSize:p,orientation:"horizontal",edge:"start",computeNext:(c,M,L)=>{let C=c-M;return L-C},onResize:T,onResizeStart:H,onResizeEnd:c=>{_?.(c),Ce(c,{reason:"resize"}),Se?.save?.(c)},target:"bottom",collapsible:m,snapPoints:$,snapTolerance:R??8,collapseThreshold:z,requestCollapse:()=>V("collapsed"),requestToggle:()=>Q("bottom")}},S.length>0?S.map((c,M)=>d.cloneElement(c,{key:c.key??M})):d.createElement(ue,null)):null,Ge=d.useCallback(c=>oo(c,"vertical"),[]);d.useEffect(()=>{if(X.current&&typeof ee>"u"&&typeof oe<"u"){let c=Ge(oe);if(typeof c=="number"&&Number.isFinite(c)){let C=Math.min((typeof a=="number"?a:void 0)??c,Math.max((typeof i=="number"?i:void 0)??c,c));X.current.style.setProperty("--bottom-size",`${C}px`),Ce(C,{reason:"init"})}}},[]);let Ke=ee;return d.useEffect(()=>{if(!X.current||typeof Ke>"u")return;let c=Ge(Ke);if(typeof c=="number"&&Number.isFinite(c)){let C=Math.min((typeof a=="number"?a:void 0)??c,Math.max((typeof i=="number"?i:void 0)??c,c));X.current.style.setProperty("--bottom-size",`${C}px`),Ce(C,{reason:"controlled"})}},[Ke,i,a,Ge,Ce]),j?d.createElement(rt,{open:h==="expanded",onOpenChange:M=>V(M?"expanded":"collapsed")},d.createElement(st,{side:"bottom",style:{padding:0},"aria-label":"Bottom panel","aria-describedby":void 0,height:{initial:`${p}px`}},d.createElement(Gt,null,d.createElement(at,null,"Bottom panel")),Y)):d.createElement("div",{...q,ref:O,className:(0,no.default)("rt-ShellBottom",o),"data-mode":h,"data-peek":k==="bottom"||void 0,"data-presentation":v?Pe:void 0,"data-open":v&&ge&&je||void 0,"data-inset":K||void 0,style:{...U,"--bottom-size":`${p}px`,"--bottom-min-size":`${i}px`,"--bottom-max-size":`${a}px`}},d.createElement("div",{className:"rt-ShellBottomContent","data-visible":je||void 0},Y),ao)});ut.displayName="Shell.Bottom";ut.Handle=Re;
2
2
  //# sourceMappingURL=shell-bottom.js.map