ivt 0.3.3 → 0.3.4

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 (257) hide show
  1. package/dist/accordion/index.mjs +19 -1
  2. package/dist/accordion/index.mjs.map +1 -1
  3. package/dist/alert/index.mjs +43 -1
  4. package/dist/alert/index.mjs.map +1 -1
  5. package/dist/alert-dialog/index.mjs +260 -1
  6. package/dist/alert-dialog/index.mjs.map +1 -1
  7. package/dist/avatar/index.mjs +164 -1
  8. package/dist/avatar/index.mjs.map +1 -1
  9. package/dist/badge/index.mjs +6 -1
  10. package/dist/badge/index.mjs.map +1 -1
  11. package/dist/base/index.mjs +760 -1
  12. package/dist/base/index.mjs.map +1 -1
  13. package/dist/button/index.mjs +6 -1
  14. package/dist/button/index.mjs.map +1 -1
  15. package/dist/calendar/index.mjs +11 -1
  16. package/dist/calendar/index.mjs.map +1 -1
  17. package/dist/card/index.mjs +55 -1
  18. package/dist/card/index.mjs.map +1 -1
  19. package/dist/chart/index.mjs +17042 -1
  20. package/dist/chart/index.mjs.map +1 -1
  21. package/dist/checkbox/index.mjs +223 -1
  22. package/dist/checkbox/index.mjs.map +1 -1
  23. package/dist/chunks/_commonjsHelpers-DqEvkrE1.mjs +6 -0
  24. package/dist/chunks/_commonjsHelpers-DqEvkrE1.mjs.map +1 -0
  25. package/dist/chunks/accordion-BMP2PSSC.mjs +455 -0
  26. package/dist/chunks/{accordion-CdshDFZC.mjs.map → accordion-BMP2PSSC.mjs.map} +1 -1
  27. package/dist/chunks/badge-DxuZhgBF.mjs +57 -0
  28. package/dist/chunks/{badge-BYqshEmA.mjs.map → badge-DxuZhgBF.mjs.map} +1 -1
  29. package/dist/chunks/bundle-mjs-tFg__FnT.mjs +4491 -0
  30. package/dist/chunks/{bundle-mjs-9BXytT_r.mjs.map → bundle-mjs-tFg__FnT.mjs.map} +1 -1
  31. package/dist/chunks/button-CX0htulo.mjs +47 -0
  32. package/dist/chunks/{button-DrFZXJ7z.mjs.map → button-CX0htulo.mjs.map} +1 -1
  33. package/dist/chunks/calendar-B4IV5RyM.mjs +7106 -0
  34. package/dist/chunks/calendar-B4IV5RyM.mjs.map +1 -0
  35. package/dist/chunks/check-B7209s3e.mjs +15 -0
  36. package/dist/chunks/{check-CimnOyD7.mjs.map → check-B7209s3e.mjs.map} +1 -1
  37. package/dist/chunks/chevron-down-D84DRJBv.mjs +15 -0
  38. package/dist/chunks/{chevron-down-D3fvbjxE.mjs.map → chevron-down-D84DRJBv.mjs.map} +1 -1
  39. package/dist/chunks/chevron-left-DtL1t1DJ.mjs +15 -0
  40. package/dist/chunks/{chevron-left-CrN7DlXg.mjs.map → chevron-left-DtL1t1DJ.mjs.map} +1 -1
  41. package/dist/chunks/chevron-right-Cdxg1JSQ.mjs +15 -0
  42. package/dist/chunks/{chevron-right-BMSCuDGK.mjs.map → chevron-right-Cdxg1JSQ.mjs.map} +1 -1
  43. package/dist/chunks/chevrons-up-down-DtBUG1i8.mjs +22 -0
  44. package/dist/chunks/{chevrons-up-down-DBgvRkZm.mjs.map → chevrons-up-down-DtBUG1i8.mjs.map} +1 -1
  45. package/dist/chunks/circle-BLWMZ9yp.mjs +17 -0
  46. package/dist/chunks/{circle-CGqt18Bd.mjs.map → circle-BLWMZ9yp.mjs.map} +1 -1
  47. package/dist/chunks/command-C8cVzg-x.mjs +611 -0
  48. package/dist/chunks/command-C8cVzg-x.mjs.map +1 -0
  49. package/dist/chunks/createLucideIcon-Ba0IWqsz.mjs +60 -0
  50. package/dist/chunks/{createLucideIcon-L-tld2uc.mjs.map → createLucideIcon-Ba0IWqsz.mjs.map} +1 -1
  51. package/dist/chunks/dialog-D9vbxUuQ.mjs +80 -0
  52. package/dist/chunks/{dialog-36eqHzT3.mjs.map → dialog-D9vbxUuQ.mjs.map} +1 -1
  53. package/dist/chunks/hover-card-idvDPXrI.mjs +274 -0
  54. package/dist/chunks/{hover-card-Cnd58du6.mjs.map → hover-card-idvDPXrI.mjs.map} +1 -1
  55. package/dist/chunks/index-6JUj2Tld.mjs +18 -0
  56. package/dist/chunks/{index-CRxQlsb9.mjs.map → index-6JUj2Tld.mjs.map} +1 -1
  57. package/dist/chunks/index-B0IElWB4.mjs +51 -0
  58. package/dist/chunks/{index-vmPXTidH.mjs.map → index-B0IElWB4.mjs.map} +1 -1
  59. package/dist/chunks/index-B4VRyyD1.mjs +40 -0
  60. package/dist/chunks/index-B4VRyyD1.mjs.map +1 -0
  61. package/dist/chunks/index-BE-_q4IW.mjs +266 -0
  62. package/dist/chunks/index-BE-_q4IW.mjs.map +1 -0
  63. package/dist/chunks/index-BNxaLFA6.mjs +216 -0
  64. package/dist/chunks/{index-LvOFIVGz.mjs.map → index-BNxaLFA6.mjs.map} +1 -1
  65. package/dist/chunks/index-BZUrHhU8.mjs +7 -0
  66. package/dist/chunks/{index-CLtWFQL5.mjs.map → index-BZUrHhU8.mjs.map} +1 -1
  67. package/dist/chunks/index-B_FsTtnF.mjs +110 -0
  68. package/dist/chunks/{index-CCcl327A.mjs.map → index-B_FsTtnF.mjs.map} +1 -1
  69. package/dist/chunks/index-CAg47KJ6.mjs +13 -0
  70. package/dist/chunks/{index-CXszXOf_.mjs.map → index-CAg47KJ6.mjs.map} +1 -1
  71. package/dist/chunks/index-CXuEm8w1.mjs +12 -0
  72. package/dist/chunks/{index-CU_y1XAz.mjs.map → index-CXuEm8w1.mjs.map} +1 -1
  73. package/dist/chunks/index-C_jFwfR_.mjs +77 -0
  74. package/dist/chunks/{index-CybgQKpz.mjs.map → index-C_jFwfR_.mjs.map} +1 -1
  75. package/dist/chunks/index-CglX-DNW.mjs +21 -0
  76. package/dist/chunks/index-CglX-DNW.mjs.map +1 -0
  77. package/dist/chunks/index-CyMuypYR.mjs +324 -0
  78. package/dist/chunks/{index-DUNcuWJE.mjs.map → index-CyMuypYR.mjs.map} +1 -1
  79. package/dist/chunks/index-D0S6rRRE.mjs +50 -0
  80. package/dist/chunks/{index-w9bxia3O.mjs.map → index-D0S6rRRE.mjs.map} +1 -1
  81. package/dist/chunks/index-D23BhVQG.mjs +859 -0
  82. package/dist/chunks/{index-DZHMFdr0.mjs.map → index-D23BhVQG.mjs.map} +1 -1
  83. package/dist/chunks/index-D2wfJaZh.mjs +145 -0
  84. package/dist/chunks/index-D2wfJaZh.mjs.map +1 -0
  85. package/dist/chunks/index-DNvm9MP3.mjs +34 -0
  86. package/dist/chunks/{index-D2sZp5OP.mjs.map → index-DNvm9MP3.mjs.map} +1 -1
  87. package/dist/chunks/index-Dm4_czlz.mjs +12 -0
  88. package/dist/chunks/index-Dm4_czlz.mjs.map +1 -0
  89. package/dist/chunks/index-PaJVyocC.mjs +151 -0
  90. package/dist/chunks/index-PaJVyocC.mjs.map +1 -0
  91. package/dist/chunks/index-kr6_v_F8.mjs +2370 -0
  92. package/dist/chunks/index-kr6_v_F8.mjs.map +1 -0
  93. package/dist/chunks/index-sz_BcBbA.mjs +1210 -0
  94. package/dist/chunks/index-sz_BcBbA.mjs.map +1 -0
  95. package/dist/chunks/input-DK1slFF1.mjs +14 -0
  96. package/dist/chunks/{input-85UFztMJ.mjs.map → input-DK1slFF1.mjs.map} +1 -1
  97. package/dist/chunks/label-D7ONQdHc.mjs +32 -0
  98. package/dist/chunks/{label-CICFzZIt.mjs.map → label-D7ONQdHc.mjs.map} +1 -1
  99. package/dist/chunks/pagination-BM_IQ6Qk.mjs +106 -0
  100. package/dist/chunks/{pagination-CReDQes6.mjs.map → pagination-BM_IQ6Qk.mjs.map} +1 -1
  101. package/dist/chunks/popover-D3F326FR.mjs +308 -0
  102. package/dist/chunks/{popover-Cn2ZTvKd.mjs.map → popover-D3F326FR.mjs.map} +1 -1
  103. package/dist/chunks/progress-BCl5yD5Q.mjs +99 -0
  104. package/dist/chunks/{progress-CSxQH6-f.mjs.map → progress-BCl5yD5Q.mjs.map} +1 -1
  105. package/dist/chunks/scroll-area-DB3eUx8V.mjs +791 -0
  106. package/dist/chunks/scroll-area-DB3eUx8V.mjs.map +1 -0
  107. package/dist/chunks/select-Cw81y8pT.mjs +104 -0
  108. package/dist/chunks/{select-BR6_N_Yo.mjs.map → select-Cw81y8pT.mjs.map} +1 -1
  109. package/dist/chunks/separator-2k1C7RSn.mjs +48 -0
  110. package/dist/chunks/{separator-BB6-E9Z1.mjs.map → separator-2k1C7RSn.mjs.map} +1 -1
  111. package/dist/chunks/skeleton-qx8-vr62.mjs +13 -0
  112. package/dist/chunks/{skeleton-XPWWiaac.mjs.map → skeleton-qx8-vr62.mjs.map} +1 -1
  113. package/dist/chunks/sortable-D8ayoe_b.mjs +4221 -0
  114. package/dist/chunks/sortable-D8ayoe_b.mjs.map +1 -0
  115. package/dist/chunks/table-BDNUhtz-.mjs +62 -0
  116. package/dist/chunks/{table-LQIHzPHi.mjs.map → table-BDNUhtz-.mjs.map} +1 -1
  117. package/dist/chunks/toggle-CE2ycSdL.mjs +65 -0
  118. package/dist/chunks/{toggle-Co72WXGd.mjs.map → toggle-CE2ycSdL.mjs.map} +1 -1
  119. package/dist/chunks/tooltip-DLD0ycR4.mjs +596 -0
  120. package/dist/chunks/{tooltip-qX2HjdJP.mjs.map → tooltip-DLD0ycR4.mjs.map} +1 -1
  121. package/dist/chunks/tslib.es6-BgHLrbno.mjs +61 -0
  122. package/dist/chunks/{tslib.es6-cMGqxriw.mjs.map → tslib.es6-BgHLrbno.mjs.map} +1 -1
  123. package/dist/chunks/utils-BUelq9Ro.mjs +42 -0
  124. package/dist/chunks/utils-BUelq9Ro.mjs.map +1 -0
  125. package/dist/chunks/x-Bjz0Vo6R.mjs +22 -0
  126. package/dist/chunks/{x-BNLl0E-E.mjs.map → x-Bjz0Vo6R.mjs.map} +1 -1
  127. package/dist/combobox/index.mjs +65 -1
  128. package/dist/combobox/index.mjs.map +1 -1
  129. package/dist/command/index.mjs +23 -1
  130. package/dist/command/index.mjs.map +1 -1
  131. package/dist/data-table/index.mjs +673 -1
  132. package/dist/data-table/index.mjs.map +1 -1
  133. package/dist/dialog/index.mjs +22 -1
  134. package/dist/dialog/index.mjs.map +1 -1
  135. package/dist/dropdown-menu/index.mjs +438 -1
  136. package/dist/dropdown-menu/index.mjs.map +1 -1
  137. package/dist/dropzone/index.mjs +7839 -1
  138. package/dist/dropzone/index.mjs.map +1 -1
  139. package/dist/form/index.mjs +649 -1
  140. package/dist/form/index.mjs.map +1 -1
  141. package/dist/hover-card/index.mjs +18 -1
  142. package/dist/hover-card/index.mjs.map +1 -1
  143. package/dist/icon/index.mjs +317 -1
  144. package/dist/icon/index.mjs.map +1 -1
  145. package/dist/index.css +1 -1
  146. package/dist/input/index.mjs +4 -1
  147. package/dist/input/index.mjs.map +1 -1
  148. package/dist/ivt.css +1 -1
  149. package/dist/label/index.mjs +8 -1
  150. package/dist/label/index.mjs.map +1 -1
  151. package/dist/menubar/index.mjs +583 -1
  152. package/dist/menubar/index.mjs.map +1 -1
  153. package/dist/multi-select/index.mjs +297 -1
  154. package/dist/multi-select/index.mjs.map +1 -1
  155. package/dist/pagination/index.mjs +10 -1
  156. package/dist/pagination/index.mjs.map +1 -1
  157. package/dist/popover/index.mjs +21 -1
  158. package/dist/popover/index.mjs.map +1 -1
  159. package/dist/progress/index.mjs +9 -1
  160. package/dist/progress/index.mjs.map +1 -1
  161. package/dist/radio-group/index.mjs +267 -1
  162. package/dist/radio-group/index.mjs.map +1 -1
  163. package/dist/scroll-area/index.mjs +15 -1
  164. package/dist/scroll-area/index.mjs.map +1 -1
  165. package/dist/select/index.mjs +8 -1
  166. package/dist/select/index.mjs.map +1 -1
  167. package/dist/separator/index.mjs +8 -1
  168. package/dist/separator/index.mjs.map +1 -1
  169. package/dist/sheet/index.mjs +96 -1
  170. package/dist/sheet/index.mjs.map +1 -1
  171. package/dist/skeleton/index.mjs +4 -1
  172. package/dist/skeleton/index.mjs.map +1 -1
  173. package/dist/sonner/index.mjs +1140 -1
  174. package/dist/sonner/index.mjs.map +1 -1
  175. package/dist/sortable/index.mjs +8 -1
  176. package/dist/sortable/index.mjs.map +1 -1
  177. package/dist/table/index.mjs +4 -1
  178. package/dist/table/index.mjs.map +1 -1
  179. package/dist/tabs/index.mjs +193 -1
  180. package/dist/tabs/index.mjs.map +1 -1
  181. package/dist/textarea/index.mjs +13 -1
  182. package/dist/textarea/index.mjs.map +1 -1
  183. package/dist/toast/index.mjs +705 -1
  184. package/dist/toast/index.mjs.map +1 -1
  185. package/dist/toggle/index.mjs +12 -1
  186. package/dist/toggle/index.mjs.map +1 -1
  187. package/dist/toggle-group/index.mjs +219 -1
  188. package/dist/toggle-group/index.mjs.map +1 -1
  189. package/dist/tooltip/index.mjs +20 -1
  190. package/dist/tooltip/index.mjs.map +1 -1
  191. package/package.json +2 -2
  192. package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs +0 -2
  193. package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs.map +0 -1
  194. package/dist/chunks/accordion-CdshDFZC.mjs +0 -2
  195. package/dist/chunks/badge-BYqshEmA.mjs +0 -2
  196. package/dist/chunks/bundle-mjs-9BXytT_r.mjs +0 -2
  197. package/dist/chunks/button-DrFZXJ7z.mjs +0 -2
  198. package/dist/chunks/calendar-BY6t8wdJ.mjs +0 -2
  199. package/dist/chunks/calendar-BY6t8wdJ.mjs.map +0 -1
  200. package/dist/chunks/check-CimnOyD7.mjs +0 -2
  201. package/dist/chunks/chevron-down-D3fvbjxE.mjs +0 -2
  202. package/dist/chunks/chevron-left-CrN7DlXg.mjs +0 -2
  203. package/dist/chunks/chevron-right-BMSCuDGK.mjs +0 -2
  204. package/dist/chunks/chevrons-up-down-DBgvRkZm.mjs +0 -2
  205. package/dist/chunks/circle-CGqt18Bd.mjs +0 -2
  206. package/dist/chunks/command-C6ON-ciq.mjs +0 -2
  207. package/dist/chunks/command-C6ON-ciq.mjs.map +0 -1
  208. package/dist/chunks/createLucideIcon-L-tld2uc.mjs +0 -2
  209. package/dist/chunks/dialog-36eqHzT3.mjs +0 -2
  210. package/dist/chunks/hover-card-Cnd58du6.mjs +0 -2
  211. package/dist/chunks/index-B4QsDzeM.mjs +0 -2
  212. package/dist/chunks/index-B4QsDzeM.mjs.map +0 -1
  213. package/dist/chunks/index-BdpYc58_.mjs +0 -2
  214. package/dist/chunks/index-BdpYc58_.mjs.map +0 -1
  215. package/dist/chunks/index-CCcl327A.mjs +0 -2
  216. package/dist/chunks/index-CLtWFQL5.mjs +0 -2
  217. package/dist/chunks/index-COvW87ew.mjs +0 -2
  218. package/dist/chunks/index-COvW87ew.mjs.map +0 -1
  219. package/dist/chunks/index-CRxQlsb9.mjs +0 -2
  220. package/dist/chunks/index-CU_y1XAz.mjs +0 -2
  221. package/dist/chunks/index-CXszXOf_.mjs +0 -2
  222. package/dist/chunks/index-CdJCOoFA.mjs +0 -2
  223. package/dist/chunks/index-CdJCOoFA.mjs.map +0 -1
  224. package/dist/chunks/index-Cpq7N5Ej.mjs +0 -2
  225. package/dist/chunks/index-Cpq7N5Ej.mjs.map +0 -1
  226. package/dist/chunks/index-CybgQKpz.mjs +0 -2
  227. package/dist/chunks/index-D2sZp5OP.mjs +0 -2
  228. package/dist/chunks/index-DOyt-JEx.mjs +0 -2
  229. package/dist/chunks/index-DOyt-JEx.mjs.map +0 -1
  230. package/dist/chunks/index-DUNcuWJE.mjs +0 -2
  231. package/dist/chunks/index-DZHMFdr0.mjs +0 -2
  232. package/dist/chunks/index-LvOFIVGz.mjs +0 -2
  233. package/dist/chunks/index-lvPXnk5F.mjs +0 -2
  234. package/dist/chunks/index-lvPXnk5F.mjs.map +0 -1
  235. package/dist/chunks/index-vmPXTidH.mjs +0 -2
  236. package/dist/chunks/index-w9bxia3O.mjs +0 -2
  237. package/dist/chunks/index-xew3kygQ.mjs +0 -2
  238. package/dist/chunks/index-xew3kygQ.mjs.map +0 -1
  239. package/dist/chunks/input-85UFztMJ.mjs +0 -2
  240. package/dist/chunks/label-CICFzZIt.mjs +0 -2
  241. package/dist/chunks/pagination-CReDQes6.mjs +0 -2
  242. package/dist/chunks/popover-Cn2ZTvKd.mjs +0 -2
  243. package/dist/chunks/progress-CSxQH6-f.mjs +0 -2
  244. package/dist/chunks/scroll-area-CvCz7cL_.mjs +0 -2
  245. package/dist/chunks/scroll-area-CvCz7cL_.mjs.map +0 -1
  246. package/dist/chunks/select-BR6_N_Yo.mjs +0 -2
  247. package/dist/chunks/separator-BB6-E9Z1.mjs +0 -2
  248. package/dist/chunks/skeleton-XPWWiaac.mjs +0 -2
  249. package/dist/chunks/sortable-CqPFGn8Q.mjs +0 -2
  250. package/dist/chunks/sortable-CqPFGn8Q.mjs.map +0 -1
  251. package/dist/chunks/table-LQIHzPHi.mjs +0 -2
  252. package/dist/chunks/toggle-Co72WXGd.mjs +0 -2
  253. package/dist/chunks/tooltip-qX2HjdJP.mjs +0 -2
  254. package/dist/chunks/tslib.es6-cMGqxriw.mjs +0 -2
  255. package/dist/chunks/utils-BctauAA9.mjs +0 -2
  256. package/dist/chunks/utils-BctauAA9.mjs.map +0 -1
  257. package/dist/chunks/x-BNLl0E-E.mjs +0 -2
@@ -1,2 +1,584 @@
1
- import*as e from"react";import{createCollection as t}from"@radix-ui/react-collection";import{u as a}from"../chunks/index-CU_y1XAz.mjs";import{c as r}from"../chunks/index-CdJCOoFA.mjs";import{u as n}from"../chunks/index-COvW87ew.mjs";import{c as o}from"../chunks/index-CCcl327A.mjs";import{u as s}from"../chunks/index-CRxQlsb9.mjs";import{c as i,P as d,R as u,A as c,C as l,G as m,S as p,L as f,I as b,a as g,b as h,d as v,e as x,f as w,g as y,h as _,i as M}from"../chunks/index-DZHMFdr0.mjs";import{c as N,R as k,I as E}from"../chunks/index-LvOFIVGz.mjs";import{P as R}from"../chunks/index-w9bxia3O.mjs";import{u as j}from"../chunks/index-CybgQKpz.mjs";import{jsx as C}from"react/jsx-runtime";import{c as O}from"../chunks/utils-BctauAA9.mjs";import{C as I}from"../chunks/check-CimnOyD7.mjs";import{C as z}from"../chunks/circle-CGqt18Bd.mjs";import{C as A}from"../chunks/chevron-right-BMSCuDGK.mjs";import"../chunks/index-CLtWFQL5.mjs";import"../chunks/index-xew3kygQ.mjs";import"../chunks/index-CXszXOf_.mjs";import"react-dom";import"../chunks/index-lvPXnk5F.mjs";import"../chunks/tslib.es6-cMGqxriw.mjs";import"../chunks/index-DOyt-JEx.mjs";import"../chunks/index-vmPXTidH.mjs";import"../chunks/index-BdpYc58_.mjs";import"@radix-ui/react-slot";import"../chunks/bundle-mjs-9BXytT_r.mjs";import"../chunks/createLucideIcon-L-tld2uc.mjs";var D="Menubar",[P,S,T]=t(D),[F,K]=o(D,[T,N]),L=i(),B=N(),[G,V]=F(D),U=e.forwardRef((t,r)=>{const{__scopeMenubar:n,value:o,onValueChange:s,defaultValue:i,loop:d=!0,dir:u,...c}=t,l=a(u),m=B(n),[p,f]=j({prop:o,onChange:s,defaultProp:i??"",caller:D}),[b,g]=e.useState(null);return C(G,{scope:n,value:p,onMenuOpen:e.useCallback(e=>{f(e),g(e)},[f]),onMenuClose:e.useCallback(()=>f(""),[f]),onMenuToggle:e.useCallback(e=>{f(t=>t?"":e),g(e)},[f]),dir:l,loop:d,children:C(P.Provider,{scope:n,children:C(P.Slot,{scope:n,children:C(k,{asChild:!0,...m,orientation:"horizontal",loop:d,dir:l,currentTabStopId:b,onCurrentTabStopIdChange:g,children:C(R.div,{role:"menubar",...c,ref:r})})})})})});U.displayName=D;var Y="MenubarMenu",[q,H]=F(Y),J=t=>{const{__scopeMenubar:a,value:r,...n}=t,o=s(),i=r||o||"LEGACY_REACT_AUTO_VALUE",d=V(Y,a),c=L(a),l=e.useRef(null),m=e.useRef(!1),p=d.value===i;return e.useEffect(()=>{p||(m.current=!1)},[p]),C(q,{scope:a,value:i,triggerId:s(),triggerRef:l,contentId:s(),wasKeyboardTriggerOpenRef:m,children:C(u,{...c,open:p,onOpenChange:e=>{e||d.onMenuClose()},modal:!1,dir:d.dir,...n})})};J.displayName=Y;var Q="MenubarTrigger",W=e.forwardRef((t,a)=>{const{__scopeMenubar:o,disabled:s=!1,...i}=t,d=B(o),u=L(o),l=V(Q,o),m=H(Q,o),p=e.useRef(null),f=n(a,p,m.triggerRef),[b,g]=e.useState(!1),h=l.value===m.value;return C(P.ItemSlot,{scope:o,value:m.value,disabled:s,children:C(E,{asChild:!0,...d,focusable:!s,tabStopId:m.value,children:C(c,{asChild:!0,...u,children:C(R.button,{type:"button",role:"menuitem",id:m.triggerId,"aria-haspopup":"menu","aria-expanded":h,"aria-controls":h?m.contentId:void 0,"data-highlighted":b?"":void 0,"data-state":h?"open":"closed","data-disabled":s?"":void 0,disabled:s,...i,ref:f,onPointerDown:r(t.onPointerDown,e=>{s||0!==e.button||!1!==e.ctrlKey||(l.onMenuOpen(m.value),h||e.preventDefault())}),onPointerEnter:r(t.onPointerEnter,()=>{Boolean(l.value)&&!h&&(l.onMenuOpen(m.value),p.current?.focus())}),onKeyDown:r(t.onKeyDown,e=>{s||(["Enter"," "].includes(e.key)&&l.onMenuToggle(m.value),"ArrowDown"===e.key&&l.onMenuOpen(m.value),["Enter"," ","ArrowDown"].includes(e.key)&&(m.wasKeyboardTriggerOpenRef.current=!0,e.preventDefault()))}),onFocus:r(t.onFocus,()=>g(!0)),onBlur:r(t.onBlur,()=>g(!1))})})})})});W.displayName=Q;var X=e=>{const{__scopeMenubar:t,...a}=e,r=L(t);return C(d,{...r,...a})};X.displayName="MenubarPortal";var Z="MenubarContent",$=e.forwardRef((t,a)=>{const{__scopeMenubar:n,align:o="start",...s}=t,i=L(n),d=V(Z,n),u=H(Z,n),c=S(n),m=e.useRef(!1);return C(l,{id:u.contentId,"aria-labelledby":u.triggerId,"data-radix-menubar-content":"",...i,...s,ref:a,align:o,onCloseAutoFocus:r(t.onCloseAutoFocus,e=>{Boolean(d.value)||m.current||u.triggerRef.current?.focus(),m.current=!1,e.preventDefault()}),onFocusOutside:r(t.onFocusOutside,e=>{const t=e.target;c().some(e=>e.ref.current?.contains(t))&&e.preventDefault()}),onInteractOutside:r(t.onInteractOutside,()=>{m.current=!0}),onEntryFocus:e=>{u.wasKeyboardTriggerOpenRef.current||e.preventDefault()},onKeyDown:r(t.onKeyDown,e=>{if(["ArrowRight","ArrowLeft"].includes(e.key)){const r=e.target,n=r.hasAttribute("data-radix-menubar-subtrigger"),o=r.closest("[data-radix-menubar-content]")!==e.currentTarget,s=("rtl"===d.dir?"ArrowRight":"ArrowLeft")===e.key;if(!s&&n)return;if(o&&s)return;let i=c().filter(e=>!e.disabled).map(e=>e.value);s&&i.reverse();const l=i.indexOf(u.value);i=d.loop?(a=l+1,(t=i).map((e,r)=>t[(a+r)%t.length])):i.slice(l+1);const[m]=i;m&&d.onMenuOpen(m)}var t,a},{checkForDefaultPrevented:!1}),style:{...t.style,"--radix-menubar-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-menubar-content-available-width":"var(--radix-popper-available-width)","--radix-menubar-content-available-height":"var(--radix-popper-available-height)","--radix-menubar-trigger-width":"var(--radix-popper-anchor-width)","--radix-menubar-trigger-height":"var(--radix-popper-anchor-height)"}})});$.displayName=Z;var ee=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(m,{...n,...r,ref:t})});ee.displayName="MenubarGroup";var te=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(f,{...n,...r,ref:t})});te.displayName="MenubarLabel";var ae=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(b,{...n,...r,ref:t})});ae.displayName="MenubarItem";var re=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(g,{...n,...r,ref:t})});re.displayName="MenubarCheckboxItem";var ne=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(v,{...n,...r,ref:t})});ne.displayName="MenubarRadioGroup";var oe=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(x,{...n,...r,ref:t})});oe.displayName="MenubarRadioItem";var se=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(h,{...n,...r,ref:t})});se.displayName="MenubarItemIndicator";var ie=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(p,{...n,...r,ref:t})});ie.displayName="MenubarSeparator";e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(M,{...n,...r,ref:t})}).displayName="MenubarArrow";var de="MenubarSub",ue=e=>{const{__scopeMenubar:t,children:a,open:r,onOpenChange:n,defaultOpen:o}=e,s=L(t),[i,d]=j({prop:r,defaultProp:o??!1,onChange:n,caller:de});return C(w,{...s,open:i,onOpenChange:d,children:a})};ue.displayName=de;var ce=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(y,{"data-radix-menubar-subtrigger":"",...n,...r,ref:t})});ce.displayName="MenubarSubTrigger";var le=e.forwardRef((e,t)=>{const{__scopeMenubar:a,...r}=e,n=L(a);return C(_,{...n,"data-radix-menubar-content":"",...r,ref:t,style:{...e.style,"--radix-menubar-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-menubar-content-available-width":"var(--radix-popper-available-width)","--radix-menubar-content-available-height":"var(--radix-popper-available-height)","--radix-menubar-trigger-width":"var(--radix-popper-anchor-width)","--radix-menubar-trigger-height":"var(--radix-popper-anchor-height)"}})});le.displayName="MenubarSubContent";var me=U,pe=J,fe=W,be=X,ge=$,he=ee,ve=te,xe=ae,we=re,ye=ne,_e=oe,Me=se,Ne=ie,ke=ue,Ee=ce,Re=le;function je({className:t,...a}){return e.createElement(me,{"data-slot":"menubar",className:O("bg-background w-fit flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs",t),...a})}function Ce({...t}){return e.createElement(pe,{"data-slot":"menubar-menu",...t})}function Oe({...t}){return e.createElement(he,{"data-slot":"menubar-group",...t})}function Ie({...t}){return e.createElement(be,{"data-slot":"menubar-portal",...t})}function ze({...t}){return e.createElement(ye,{"data-slot":"menubar-radio-group",...t})}function Ae({className:t,...a}){return e.createElement(fe,{"data-slot":"menubar-trigger",className:O("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none",t),...a})}function De({className:t,align:a="start",alignOffset:r=-4,sideOffset:n=8,...o}){return e.createElement(Ie,null,e.createElement(ge,{"data-slot":"menubar-content",align:a,alignOffset:r,sideOffset:n,className:O("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md",t),...o}))}function Pe({className:t,inset:a,variant:r="default",...n}){return e.createElement(xe,{"data-slot":"menubar-item","data-inset":a,"data-variant":r,className:O("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...n})}function Se({className:t,children:a,checked:r,...n}){return e.createElement(we,{"data-slot":"menubar-checkbox-item",className:O("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),checked:r,...n},e.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},e.createElement(Me,null,e.createElement(I,{className:"size-4"}))),a)}function Te({className:t,children:a,...r}){return e.createElement(_e,{"data-slot":"menubar-radio-item",className:O("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...r},e.createElement("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"},e.createElement(Me,null,e.createElement(z,{className:"size-2 fill-current"}))),a)}function Fe({className:t,inset:a,...r}){return e.createElement(ve,{"data-slot":"menubar-label","data-inset":a,className:O("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",t),...r})}function Ke({className:t,...a}){return e.createElement(Ne,{"data-slot":"menubar-separator",className:O("bg-border -mx-1 my-1 h-px",t),...a})}function Le({className:t,...a}){return e.createElement("span",{"data-slot":"menubar-shortcut",className:O("text-muted-foreground ml-auto text-xs tracking-widest",t),...a})}function Be({...t}){return e.createElement(ke,{"data-slot":"menubar-sub",...t})}function Ge({className:t,inset:a,children:r,...n}){return e.createElement(Ee,{"data-slot":"menubar-sub-trigger","data-inset":a,className:O("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8",t),...n},r,e.createElement(A,{className:"ml-auto h-4 w-4"}))}function Ve({className:t,...a}){return e.createElement(Re,{"data-slot":"menubar-sub-content",className:O("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg",t),...a})}export{je as Menubar,Se as MenubarCheckboxItem,De as MenubarContent,Oe as MenubarGroup,Pe as MenubarItem,Fe as MenubarLabel,Ce as MenubarMenu,Ie as MenubarPortal,ze as MenubarRadioGroup,Te as MenubarRadioItem,Ke as MenubarSeparator,Le as MenubarShortcut,Be as MenubarSub,Ve as MenubarSubContent,Ge as MenubarSubTrigger,Ae as MenubarTrigger};
1
+ import * as React from 'react';
2
+ import { createCollection } from '@radix-ui/react-collection';
3
+ import { u as useDirection } from '../chunks/index-CXuEm8w1.mjs';
4
+ import { c as composeEventHandlers } from '../chunks/index-Dm4_czlz.mjs';
5
+ import { u as useComposedRefs } from '../chunks/index-B4VRyyD1.mjs';
6
+ import { c as createContextScope } from '../chunks/index-B_FsTtnF.mjs';
7
+ import { u as useId } from '../chunks/index-6JUj2Tld.mjs';
8
+ import { c as createMenuScope, P as Portal, R as Root3$1, A as Anchor2, C as Content2$1, G as Group, S as Separator, L as Label, I as Item2, a as CheckboxItem, b as ItemIndicator, d as RadioGroup, e as RadioItem, f as Sub, g as SubTrigger, h as SubContent, i as Arrow2 } from '../chunks/index-D23BhVQG.mjs';
9
+ import { c as createRovingFocusGroupScope, R as Root, I as Item } from '../chunks/index-BNxaLFA6.mjs';
10
+ import { P as Primitive } from '../chunks/index-D0S6rRRE.mjs';
11
+ import { u as useControllableState } from '../chunks/index-C_jFwfR_.mjs';
12
+ import { jsx } from 'react/jsx-runtime';
13
+ import { c as cn } from '../chunks/utils-BUelq9Ro.mjs';
14
+ import { C as Check } from '../chunks/check-B7209s3e.mjs';
15
+ import { C as Circle } from '../chunks/circle-BLWMZ9yp.mjs';
16
+ import { C as ChevronRight } from '../chunks/chevron-right-Cdxg1JSQ.mjs';
17
+ import '../chunks/index-BZUrHhU8.mjs';
18
+ import '../chunks/index-BE-_q4IW.mjs';
19
+ import '../chunks/index-CAg47KJ6.mjs';
20
+ import 'react-dom';
21
+ import '../chunks/index-sz_BcBbA.mjs';
22
+ import '../chunks/tslib.es6-BgHLrbno.mjs';
23
+ import '../chunks/index-kr6_v_F8.mjs';
24
+ import '../chunks/index-B0IElWB4.mjs';
25
+ import '../chunks/index-D2wfJaZh.mjs';
26
+ import '@radix-ui/react-slot';
27
+ import '../chunks/bundle-mjs-tFg__FnT.mjs';
28
+ import '../chunks/createLucideIcon-Ba0IWqsz.mjs';
29
+
30
+ var MENUBAR_NAME = "Menubar";
31
+ var [Collection, useCollection, createCollectionScope] = createCollection(MENUBAR_NAME);
32
+ var [createMenubarContext, createMenubarScope] = createContextScope(MENUBAR_NAME, [
33
+ createCollectionScope,
34
+ createRovingFocusGroupScope
35
+ ]);
36
+ var useMenuScope = createMenuScope();
37
+ var useRovingFocusGroupScope = createRovingFocusGroupScope();
38
+ var [MenubarContextProvider, useMenubarContext] = createMenubarContext(MENUBAR_NAME);
39
+ var Menubar$1 = React.forwardRef((props, forwardedRef)=>{
40
+ const { __scopeMenubar, value: valueProp, onValueChange, defaultValue, loop = true, dir, ...menubarProps } = props;
41
+ const direction = useDirection(dir);
42
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenubar);
43
+ const [value, setValue] = useControllableState({
44
+ prop: valueProp,
45
+ onChange: onValueChange,
46
+ defaultProp: defaultValue ?? "",
47
+ caller: MENUBAR_NAME
48
+ });
49
+ const [currentTabStopId, setCurrentTabStopId] = React.useState(null);
50
+ return /* @__PURE__ */ jsx(MenubarContextProvider, {
51
+ scope: __scopeMenubar,
52
+ value,
53
+ onMenuOpen: React.useCallback((value2)=>{
54
+ setValue(value2);
55
+ setCurrentTabStopId(value2);
56
+ }, [
57
+ setValue
58
+ ]),
59
+ onMenuClose: React.useCallback(()=>setValue(""), [
60
+ setValue
61
+ ]),
62
+ onMenuToggle: React.useCallback((value2)=>{
63
+ setValue((prevValue)=>prevValue ? "" : value2);
64
+ setCurrentTabStopId(value2);
65
+ }, [
66
+ setValue
67
+ ]),
68
+ dir: direction,
69
+ loop,
70
+ children: /* @__PURE__ */ jsx(Collection.Provider, {
71
+ scope: __scopeMenubar,
72
+ children: /* @__PURE__ */ jsx(Collection.Slot, {
73
+ scope: __scopeMenubar,
74
+ children: /* @__PURE__ */ jsx(Root, {
75
+ asChild: true,
76
+ ...rovingFocusGroupScope,
77
+ orientation: "horizontal",
78
+ loop,
79
+ dir: direction,
80
+ currentTabStopId,
81
+ onCurrentTabStopIdChange: setCurrentTabStopId,
82
+ children: /* @__PURE__ */ jsx(Primitive.div, {
83
+ role: "menubar",
84
+ ...menubarProps,
85
+ ref: forwardedRef
86
+ })
87
+ })
88
+ })
89
+ })
90
+ });
91
+ });
92
+ Menubar$1.displayName = MENUBAR_NAME;
93
+ var MENU_NAME = "MenubarMenu";
94
+ var [MenubarMenuProvider, useMenubarMenuContext] = createMenubarContext(MENU_NAME);
95
+ var MenubarMenu$1 = (props)=>{
96
+ const { __scopeMenubar, value: valueProp, ...menuProps } = props;
97
+ const autoValue = useId();
98
+ const value = valueProp || autoValue || "LEGACY_REACT_AUTO_VALUE";
99
+ const context = useMenubarContext(MENU_NAME, __scopeMenubar);
100
+ const menuScope = useMenuScope(__scopeMenubar);
101
+ const triggerRef = React.useRef(null);
102
+ const wasKeyboardTriggerOpenRef = React.useRef(false);
103
+ const open = context.value === value;
104
+ React.useEffect(()=>{
105
+ if (!open) wasKeyboardTriggerOpenRef.current = false;
106
+ }, [
107
+ open
108
+ ]);
109
+ return /* @__PURE__ */ jsx(MenubarMenuProvider, {
110
+ scope: __scopeMenubar,
111
+ value,
112
+ triggerId: useId(),
113
+ triggerRef,
114
+ contentId: useId(),
115
+ wasKeyboardTriggerOpenRef,
116
+ children: /* @__PURE__ */ jsx(Root3$1, {
117
+ ...menuScope,
118
+ open,
119
+ onOpenChange: (open2)=>{
120
+ if (!open2) context.onMenuClose();
121
+ },
122
+ modal: false,
123
+ dir: context.dir,
124
+ ...menuProps
125
+ })
126
+ });
127
+ };
128
+ MenubarMenu$1.displayName = MENU_NAME;
129
+ var TRIGGER_NAME = "MenubarTrigger";
130
+ var MenubarTrigger$1 = React.forwardRef((props, forwardedRef)=>{
131
+ const { __scopeMenubar, disabled = false, ...triggerProps } = props;
132
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenubar);
133
+ const menuScope = useMenuScope(__scopeMenubar);
134
+ const context = useMenubarContext(TRIGGER_NAME, __scopeMenubar);
135
+ const menuContext = useMenubarMenuContext(TRIGGER_NAME, __scopeMenubar);
136
+ const ref = React.useRef(null);
137
+ const composedRefs = useComposedRefs(forwardedRef, ref, menuContext.triggerRef);
138
+ const [isFocused, setIsFocused] = React.useState(false);
139
+ const open = context.value === menuContext.value;
140
+ return /* @__PURE__ */ jsx(Collection.ItemSlot, {
141
+ scope: __scopeMenubar,
142
+ value: menuContext.value,
143
+ disabled,
144
+ children: /* @__PURE__ */ jsx(Item, {
145
+ asChild: true,
146
+ ...rovingFocusGroupScope,
147
+ focusable: !disabled,
148
+ tabStopId: menuContext.value,
149
+ children: /* @__PURE__ */ jsx(Anchor2, {
150
+ asChild: true,
151
+ ...menuScope,
152
+ children: /* @__PURE__ */ jsx(Primitive.button, {
153
+ type: "button",
154
+ role: "menuitem",
155
+ id: menuContext.triggerId,
156
+ "aria-haspopup": "menu",
157
+ "aria-expanded": open,
158
+ "aria-controls": open ? menuContext.contentId : void 0,
159
+ "data-highlighted": isFocused ? "" : void 0,
160
+ "data-state": open ? "open" : "closed",
161
+ "data-disabled": disabled ? "" : void 0,
162
+ disabled,
163
+ ...triggerProps,
164
+ ref: composedRefs,
165
+ onPointerDown: composeEventHandlers(props.onPointerDown, (event)=>{
166
+ if (!disabled && event.button === 0 && event.ctrlKey === false) {
167
+ context.onMenuOpen(menuContext.value);
168
+ if (!open) event.preventDefault();
169
+ }
170
+ }),
171
+ onPointerEnter: composeEventHandlers(props.onPointerEnter, ()=>{
172
+ const menubarOpen = Boolean(context.value);
173
+ if (menubarOpen && !open) {
174
+ context.onMenuOpen(menuContext.value);
175
+ ref.current?.focus();
176
+ }
177
+ }),
178
+ onKeyDown: composeEventHandlers(props.onKeyDown, (event)=>{
179
+ if (disabled) return;
180
+ if ([
181
+ "Enter",
182
+ " "
183
+ ].includes(event.key)) context.onMenuToggle(menuContext.value);
184
+ if (event.key === "ArrowDown") context.onMenuOpen(menuContext.value);
185
+ if ([
186
+ "Enter",
187
+ " ",
188
+ "ArrowDown"
189
+ ].includes(event.key)) {
190
+ menuContext.wasKeyboardTriggerOpenRef.current = true;
191
+ event.preventDefault();
192
+ }
193
+ }),
194
+ onFocus: composeEventHandlers(props.onFocus, ()=>setIsFocused(true)),
195
+ onBlur: composeEventHandlers(props.onBlur, ()=>setIsFocused(false))
196
+ })
197
+ })
198
+ })
199
+ });
200
+ });
201
+ MenubarTrigger$1.displayName = TRIGGER_NAME;
202
+ var PORTAL_NAME = "MenubarPortal";
203
+ var MenubarPortal$1 = (props)=>{
204
+ const { __scopeMenubar, ...portalProps } = props;
205
+ const menuScope = useMenuScope(__scopeMenubar);
206
+ return /* @__PURE__ */ jsx(Portal, {
207
+ ...menuScope,
208
+ ...portalProps
209
+ });
210
+ };
211
+ MenubarPortal$1.displayName = PORTAL_NAME;
212
+ var CONTENT_NAME = "MenubarContent";
213
+ var MenubarContent$1 = React.forwardRef((props, forwardedRef)=>{
214
+ const { __scopeMenubar, align = "start", ...contentProps } = props;
215
+ const menuScope = useMenuScope(__scopeMenubar);
216
+ const context = useMenubarContext(CONTENT_NAME, __scopeMenubar);
217
+ const menuContext = useMenubarMenuContext(CONTENT_NAME, __scopeMenubar);
218
+ const getItems = useCollection(__scopeMenubar);
219
+ const hasInteractedOutsideRef = React.useRef(false);
220
+ return /* @__PURE__ */ jsx(Content2$1, {
221
+ id: menuContext.contentId,
222
+ "aria-labelledby": menuContext.triggerId,
223
+ "data-radix-menubar-content": "",
224
+ ...menuScope,
225
+ ...contentProps,
226
+ ref: forwardedRef,
227
+ align,
228
+ onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event)=>{
229
+ const menubarOpen = Boolean(context.value);
230
+ if (!menubarOpen && !hasInteractedOutsideRef.current) {
231
+ menuContext.triggerRef.current?.focus();
232
+ }
233
+ hasInteractedOutsideRef.current = false;
234
+ event.preventDefault();
235
+ }),
236
+ onFocusOutside: composeEventHandlers(props.onFocusOutside, (event)=>{
237
+ const target = event.target;
238
+ const isMenubarTrigger = getItems().some((item)=>item.ref.current?.contains(target));
239
+ if (isMenubarTrigger) event.preventDefault();
240
+ }),
241
+ onInteractOutside: composeEventHandlers(props.onInteractOutside, ()=>{
242
+ hasInteractedOutsideRef.current = true;
243
+ }),
244
+ onEntryFocus: (event)=>{
245
+ if (!menuContext.wasKeyboardTriggerOpenRef.current) event.preventDefault();
246
+ },
247
+ onKeyDown: composeEventHandlers(props.onKeyDown, (event)=>{
248
+ if ([
249
+ "ArrowRight",
250
+ "ArrowLeft"
251
+ ].includes(event.key)) {
252
+ const target = event.target;
253
+ const targetIsSubTrigger = target.hasAttribute("data-radix-menubar-subtrigger");
254
+ const isKeyDownInsideSubMenu = target.closest("[data-radix-menubar-content]") !== event.currentTarget;
255
+ const prevMenuKey = context.dir === "rtl" ? "ArrowRight" : "ArrowLeft";
256
+ const isPrevKey = prevMenuKey === event.key;
257
+ const isNextKey = !isPrevKey;
258
+ if (isNextKey && targetIsSubTrigger) return;
259
+ if (isKeyDownInsideSubMenu && isPrevKey) return;
260
+ const items = getItems().filter((item)=>!item.disabled);
261
+ let candidateValues = items.map((item)=>item.value);
262
+ if (isPrevKey) candidateValues.reverse();
263
+ const currentIndex = candidateValues.indexOf(menuContext.value);
264
+ candidateValues = context.loop ? wrapArray(candidateValues, currentIndex + 1) : candidateValues.slice(currentIndex + 1);
265
+ const [nextValue] = candidateValues;
266
+ if (nextValue) context.onMenuOpen(nextValue);
267
+ }
268
+ }, {
269
+ checkForDefaultPrevented: false
270
+ }),
271
+ style: {
272
+ ...props.style,
273
+ // re-namespace exposed content custom properties
274
+ ...{
275
+ "--radix-menubar-content-transform-origin": "var(--radix-popper-transform-origin)",
276
+ "--radix-menubar-content-available-width": "var(--radix-popper-available-width)",
277
+ "--radix-menubar-content-available-height": "var(--radix-popper-available-height)",
278
+ "--radix-menubar-trigger-width": "var(--radix-popper-anchor-width)",
279
+ "--radix-menubar-trigger-height": "var(--radix-popper-anchor-height)"
280
+ }
281
+ }
282
+ });
283
+ });
284
+ MenubarContent$1.displayName = CONTENT_NAME;
285
+ var GROUP_NAME = "MenubarGroup";
286
+ var MenubarGroup$1 = React.forwardRef((props, forwardedRef)=>{
287
+ const { __scopeMenubar, ...groupProps } = props;
288
+ const menuScope = useMenuScope(__scopeMenubar);
289
+ return /* @__PURE__ */ jsx(Group, {
290
+ ...menuScope,
291
+ ...groupProps,
292
+ ref: forwardedRef
293
+ });
294
+ });
295
+ MenubarGroup$1.displayName = GROUP_NAME;
296
+ var LABEL_NAME = "MenubarLabel";
297
+ var MenubarLabel$1 = React.forwardRef((props, forwardedRef)=>{
298
+ const { __scopeMenubar, ...labelProps } = props;
299
+ const menuScope = useMenuScope(__scopeMenubar);
300
+ return /* @__PURE__ */ jsx(Label, {
301
+ ...menuScope,
302
+ ...labelProps,
303
+ ref: forwardedRef
304
+ });
305
+ });
306
+ MenubarLabel$1.displayName = LABEL_NAME;
307
+ var ITEM_NAME = "MenubarItem";
308
+ var MenubarItem$1 = React.forwardRef((props, forwardedRef)=>{
309
+ const { __scopeMenubar, ...itemProps } = props;
310
+ const menuScope = useMenuScope(__scopeMenubar);
311
+ return /* @__PURE__ */ jsx(Item2, {
312
+ ...menuScope,
313
+ ...itemProps,
314
+ ref: forwardedRef
315
+ });
316
+ });
317
+ MenubarItem$1.displayName = ITEM_NAME;
318
+ var CHECKBOX_ITEM_NAME = "MenubarCheckboxItem";
319
+ var MenubarCheckboxItem$1 = React.forwardRef((props, forwardedRef)=>{
320
+ const { __scopeMenubar, ...checkboxItemProps } = props;
321
+ const menuScope = useMenuScope(__scopeMenubar);
322
+ return /* @__PURE__ */ jsx(CheckboxItem, {
323
+ ...menuScope,
324
+ ...checkboxItemProps,
325
+ ref: forwardedRef
326
+ });
327
+ });
328
+ MenubarCheckboxItem$1.displayName = CHECKBOX_ITEM_NAME;
329
+ var RADIO_GROUP_NAME = "MenubarRadioGroup";
330
+ var MenubarRadioGroup$1 = React.forwardRef((props, forwardedRef)=>{
331
+ const { __scopeMenubar, ...radioGroupProps } = props;
332
+ const menuScope = useMenuScope(__scopeMenubar);
333
+ return /* @__PURE__ */ jsx(RadioGroup, {
334
+ ...menuScope,
335
+ ...radioGroupProps,
336
+ ref: forwardedRef
337
+ });
338
+ });
339
+ MenubarRadioGroup$1.displayName = RADIO_GROUP_NAME;
340
+ var RADIO_ITEM_NAME = "MenubarRadioItem";
341
+ var MenubarRadioItem$1 = React.forwardRef((props, forwardedRef)=>{
342
+ const { __scopeMenubar, ...radioItemProps } = props;
343
+ const menuScope = useMenuScope(__scopeMenubar);
344
+ return /* @__PURE__ */ jsx(RadioItem, {
345
+ ...menuScope,
346
+ ...radioItemProps,
347
+ ref: forwardedRef
348
+ });
349
+ });
350
+ MenubarRadioItem$1.displayName = RADIO_ITEM_NAME;
351
+ var INDICATOR_NAME = "MenubarItemIndicator";
352
+ var MenubarItemIndicator = React.forwardRef((props, forwardedRef)=>{
353
+ const { __scopeMenubar, ...itemIndicatorProps } = props;
354
+ const menuScope = useMenuScope(__scopeMenubar);
355
+ return /* @__PURE__ */ jsx(ItemIndicator, {
356
+ ...menuScope,
357
+ ...itemIndicatorProps,
358
+ ref: forwardedRef
359
+ });
360
+ });
361
+ MenubarItemIndicator.displayName = INDICATOR_NAME;
362
+ var SEPARATOR_NAME = "MenubarSeparator";
363
+ var MenubarSeparator$1 = React.forwardRef((props, forwardedRef)=>{
364
+ const { __scopeMenubar, ...separatorProps } = props;
365
+ const menuScope = useMenuScope(__scopeMenubar);
366
+ return /* @__PURE__ */ jsx(Separator, {
367
+ ...menuScope,
368
+ ...separatorProps,
369
+ ref: forwardedRef
370
+ });
371
+ });
372
+ MenubarSeparator$1.displayName = SEPARATOR_NAME;
373
+ var ARROW_NAME = "MenubarArrow";
374
+ var MenubarArrow = React.forwardRef((props, forwardedRef)=>{
375
+ const { __scopeMenubar, ...arrowProps } = props;
376
+ const menuScope = useMenuScope(__scopeMenubar);
377
+ return /* @__PURE__ */ jsx(Arrow2, {
378
+ ...menuScope,
379
+ ...arrowProps,
380
+ ref: forwardedRef
381
+ });
382
+ });
383
+ MenubarArrow.displayName = ARROW_NAME;
384
+ var SUB_NAME = "MenubarSub";
385
+ var MenubarSub$1 = (props)=>{
386
+ const { __scopeMenubar, children, open: openProp, onOpenChange, defaultOpen } = props;
387
+ const menuScope = useMenuScope(__scopeMenubar);
388
+ const [open, setOpen] = useControllableState({
389
+ prop: openProp,
390
+ defaultProp: defaultOpen ?? false,
391
+ onChange: onOpenChange,
392
+ caller: SUB_NAME
393
+ });
394
+ return /* @__PURE__ */ jsx(Sub, {
395
+ ...menuScope,
396
+ open,
397
+ onOpenChange: setOpen,
398
+ children
399
+ });
400
+ };
401
+ MenubarSub$1.displayName = SUB_NAME;
402
+ var SUB_TRIGGER_NAME = "MenubarSubTrigger";
403
+ var MenubarSubTrigger$1 = React.forwardRef((props, forwardedRef)=>{
404
+ const { __scopeMenubar, ...subTriggerProps } = props;
405
+ const menuScope = useMenuScope(__scopeMenubar);
406
+ return /* @__PURE__ */ jsx(SubTrigger, {
407
+ "data-radix-menubar-subtrigger": "",
408
+ ...menuScope,
409
+ ...subTriggerProps,
410
+ ref: forwardedRef
411
+ });
412
+ });
413
+ MenubarSubTrigger$1.displayName = SUB_TRIGGER_NAME;
414
+ var SUB_CONTENT_NAME = "MenubarSubContent";
415
+ var MenubarSubContent$1 = React.forwardRef((props, forwardedRef)=>{
416
+ const { __scopeMenubar, ...subContentProps } = props;
417
+ const menuScope = useMenuScope(__scopeMenubar);
418
+ return /* @__PURE__ */ jsx(SubContent, {
419
+ ...menuScope,
420
+ "data-radix-menubar-content": "",
421
+ ...subContentProps,
422
+ ref: forwardedRef,
423
+ style: {
424
+ ...props.style,
425
+ // re-namespace exposed content custom properties
426
+ ...{
427
+ "--radix-menubar-content-transform-origin": "var(--radix-popper-transform-origin)",
428
+ "--radix-menubar-content-available-width": "var(--radix-popper-available-width)",
429
+ "--radix-menubar-content-available-height": "var(--radix-popper-available-height)",
430
+ "--radix-menubar-trigger-width": "var(--radix-popper-anchor-width)",
431
+ "--radix-menubar-trigger-height": "var(--radix-popper-anchor-height)"
432
+ }
433
+ }
434
+ });
435
+ });
436
+ MenubarSubContent$1.displayName = SUB_CONTENT_NAME;
437
+ function wrapArray(array, startIndex) {
438
+ return array.map((_, index)=>array[(startIndex + index) % array.length]);
439
+ }
440
+ var Root3 = Menubar$1;
441
+ var Menu = MenubarMenu$1;
442
+ var Trigger = MenubarTrigger$1;
443
+ var Portal2 = MenubarPortal$1;
444
+ var Content2 = MenubarContent$1;
445
+ var Group2 = MenubarGroup$1;
446
+ var Label2 = MenubarLabel$1;
447
+ var Item3 = MenubarItem$1;
448
+ var CheckboxItem2 = MenubarCheckboxItem$1;
449
+ var RadioGroup2 = MenubarRadioGroup$1;
450
+ var RadioItem2 = MenubarRadioItem$1;
451
+ var ItemIndicator2 = MenubarItemIndicator;
452
+ var Separator2 = MenubarSeparator$1;
453
+ var Sub2 = MenubarSub$1;
454
+ var SubTrigger2 = MenubarSubTrigger$1;
455
+ var SubContent2 = MenubarSubContent$1;
456
+
457
+ function Menubar({ className, ...props }) {
458
+ return /*#__PURE__*/ React.createElement(Root3, {
459
+ "data-slot": "menubar",
460
+ className: cn("bg-background w-fit flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs", className),
461
+ ...props
462
+ });
463
+ }
464
+ function MenubarMenu({ ...props }) {
465
+ return /*#__PURE__*/ React.createElement(Menu, {
466
+ "data-slot": "menubar-menu",
467
+ ...props
468
+ });
469
+ }
470
+ function MenubarGroup({ ...props }) {
471
+ return /*#__PURE__*/ React.createElement(Group2, {
472
+ "data-slot": "menubar-group",
473
+ ...props
474
+ });
475
+ }
476
+ function MenubarPortal({ ...props }) {
477
+ return /*#__PURE__*/ React.createElement(Portal2, {
478
+ "data-slot": "menubar-portal",
479
+ ...props
480
+ });
481
+ }
482
+ function MenubarRadioGroup({ ...props }) {
483
+ return /*#__PURE__*/ React.createElement(RadioGroup2, {
484
+ "data-slot": "menubar-radio-group",
485
+ ...props
486
+ });
487
+ }
488
+ function MenubarTrigger({ className, ...props }) {
489
+ return /*#__PURE__*/ React.createElement(Trigger, {
490
+ "data-slot": "menubar-trigger",
491
+ className: cn("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none", className),
492
+ ...props
493
+ });
494
+ }
495
+ function MenubarContent({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }) {
496
+ return /*#__PURE__*/ React.createElement(MenubarPortal, null, /*#__PURE__*/ React.createElement(Content2, {
497
+ "data-slot": "menubar-content",
498
+ align: align,
499
+ alignOffset: alignOffset,
500
+ sideOffset: sideOffset,
501
+ className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md", className),
502
+ ...props
503
+ }));
504
+ }
505
+ function MenubarItem({ className, inset, variant = "default", ...props }) {
506
+ return /*#__PURE__*/ React.createElement(Item3, {
507
+ "data-slot": "menubar-item",
508
+ "data-inset": inset,
509
+ "data-variant": variant,
510
+ className: cn("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
511
+ ...props
512
+ });
513
+ }
514
+ function MenubarCheckboxItem({ className, children, checked, ...props }) {
515
+ return /*#__PURE__*/ React.createElement(CheckboxItem2, {
516
+ "data-slot": "menubar-checkbox-item",
517
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
518
+ checked: checked,
519
+ ...props
520
+ }, /*#__PURE__*/ React.createElement("span", {
521
+ className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"
522
+ }, /*#__PURE__*/ React.createElement(ItemIndicator2, null, /*#__PURE__*/ React.createElement(Check, {
523
+ className: "size-4"
524
+ }))), children);
525
+ }
526
+ function MenubarRadioItem({ className, children, ...props }) {
527
+ return /*#__PURE__*/ React.createElement(RadioItem2, {
528
+ "data-slot": "menubar-radio-item",
529
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
530
+ ...props
531
+ }, /*#__PURE__*/ React.createElement("span", {
532
+ className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center"
533
+ }, /*#__PURE__*/ React.createElement(ItemIndicator2, null, /*#__PURE__*/ React.createElement(Circle, {
534
+ className: "size-2 fill-current"
535
+ }))), children);
536
+ }
537
+ function MenubarLabel({ className, inset, ...props }) {
538
+ return /*#__PURE__*/ React.createElement(Label2, {
539
+ "data-slot": "menubar-label",
540
+ "data-inset": inset,
541
+ className: cn("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", className),
542
+ ...props
543
+ });
544
+ }
545
+ function MenubarSeparator({ className, ...props }) {
546
+ return /*#__PURE__*/ React.createElement(Separator2, {
547
+ "data-slot": "menubar-separator",
548
+ className: cn("bg-border -mx-1 my-1 h-px", className),
549
+ ...props
550
+ });
551
+ }
552
+ function MenubarShortcut({ className, ...props }) {
553
+ return /*#__PURE__*/ React.createElement("span", {
554
+ "data-slot": "menubar-shortcut",
555
+ className: cn("text-muted-foreground ml-auto text-xs tracking-widest", className),
556
+ ...props
557
+ });
558
+ }
559
+ function MenubarSub({ ...props }) {
560
+ return /*#__PURE__*/ React.createElement(Sub2, {
561
+ "data-slot": "menubar-sub",
562
+ ...props
563
+ });
564
+ }
565
+ function MenubarSubTrigger({ className, inset, children, ...props }) {
566
+ return /*#__PURE__*/ React.createElement(SubTrigger2, {
567
+ "data-slot": "menubar-sub-trigger",
568
+ "data-inset": inset,
569
+ className: cn("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8", className),
570
+ ...props
571
+ }, children, /*#__PURE__*/ React.createElement(ChevronRight, {
572
+ className: "ml-auto h-4 w-4"
573
+ }));
574
+ }
575
+ function MenubarSubContent({ className, ...props }) {
576
+ return /*#__PURE__*/ React.createElement(SubContent2, {
577
+ "data-slot": "menubar-sub-content",
578
+ className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg", className),
579
+ ...props
580
+ });
581
+ }
582
+
583
+ export { Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger };
2
584
  //# sourceMappingURL=index.mjs.map