@waveso/ui 0.0.10 → 0.2.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 (289) hide show
  1. package/README.md +1 -1
  2. package/dist/accordion.d.ts +24 -8
  3. package/dist/accordion.d.ts.map +1 -0
  4. package/dist/accordion.js +51 -73
  5. package/dist/accordion.js.map +1 -1
  6. package/dist/action-bar.d.ts +83 -0
  7. package/dist/action-bar.d.ts.map +1 -0
  8. package/dist/action-bar.js +264 -0
  9. package/dist/action-bar.js.map +1 -0
  10. package/dist/alert-dialog.d.ts +56 -21
  11. package/dist/alert-dialog.d.ts.map +1 -0
  12. package/dist/alert-dialog.js +75 -127
  13. package/dist/alert-dialog.js.map +1 -1
  14. package/dist/alert.d.ts +26 -11
  15. package/dist/alert.d.ts.map +1 -0
  16. package/dist/alert.js +37 -68
  17. package/dist/alert.js.map +1 -1
  18. package/dist/animate.d.ts +117 -75
  19. package/dist/animate.d.ts.map +1 -0
  20. package/dist/animate.js +259 -223
  21. package/dist/animate.js.map +1 -1
  22. package/dist/aspect-ratio.d.ts +11 -6
  23. package/dist/aspect-ratio.d.ts.map +1 -0
  24. package/dist/aspect-ratio.js +12 -14
  25. package/dist/aspect-ratio.js.map +1 -1
  26. package/dist/autocomplete.d.ts +91 -25
  27. package/dist/autocomplete.d.ts.map +1 -0
  28. package/dist/autocomplete.js +119 -181
  29. package/dist/autocomplete.js.map +1 -1
  30. package/dist/avatar.d.ts +32 -11
  31. package/dist/avatar.d.ts.map +1 -0
  32. package/dist/avatar.js +42 -89
  33. package/dist/avatar.js.map +1 -1
  34. package/dist/badge.d.ts +15 -8
  35. package/dist/badge.d.ts.map +1 -0
  36. package/dist/badge.js +35 -48
  37. package/dist/badge.js.map +1 -1
  38. package/dist/breadcrumb.d.ts +35 -11
  39. package/dist/breadcrumb.d.ts.map +1 -0
  40. package/dist/breadcrumb.js +61 -110
  41. package/dist/breadcrumb.js.map +1 -1
  42. package/dist/button-group.d.ts +26 -13
  43. package/dist/button-group.d.ts.map +1 -0
  44. package/dist/button-group.js +39 -76
  45. package/dist/button-group.js.map +1 -1
  46. package/dist/button.d.ts +17 -10
  47. package/dist/button.d.ts.map +1 -0
  48. package/dist/button.js +50 -3
  49. package/dist/button.js.map +1 -1
  50. package/dist/card.d.ts +35 -11
  51. package/dist/card.d.ts.map +1 -0
  52. package/dist/card.js +43 -82
  53. package/dist/card.js.map +1 -1
  54. package/dist/checkbox.d.ts +11 -4
  55. package/dist/checkbox.d.ts.map +1 -0
  56. package/dist/checkbox.js +21 -31
  57. package/dist/checkbox.js.map +1 -1
  58. package/dist/collapsible.d.ts +15 -7
  59. package/dist/collapsible.d.ts.map +1 -0
  60. package/dist/collapsible.js +19 -8
  61. package/dist/collapsible.js.map +1 -1
  62. package/dist/combobox.d.ts +83 -23
  63. package/dist/combobox.d.ts.map +1 -0
  64. package/dist/combobox.js +151 -247
  65. package/dist/combobox.js.map +1 -1
  66. package/dist/context-menu.d.ts +87 -26
  67. package/dist/context-menu.d.ts.map +1 -0
  68. package/dist/context-menu.js +115 -165
  69. package/dist/context-menu.js.map +1 -1
  70. package/dist/count.d.ts +45 -31
  71. package/dist/count.d.ts.map +1 -0
  72. package/dist/count.js +170 -165
  73. package/dist/count.js.map +1 -1
  74. package/dist/dialog.d.ts +60 -28
  75. package/dist/dialog.d.ts.map +1 -0
  76. package/dist/dialog.js +77 -120
  77. package/dist/dialog.js.map +1 -1
  78. package/dist/direction.d.ts +2 -1
  79. package/dist/direction.js +3 -3
  80. package/dist/drawer.d.ts +45 -15
  81. package/dist/drawer.d.ts.map +1 -0
  82. package/dist/drawer.js +100 -5
  83. package/dist/drawer.js.map +1 -1
  84. package/dist/encrypted-text.d.ts +25 -12
  85. package/dist/encrypted-text.d.ts.map +1 -0
  86. package/dist/encrypted-text.js +102 -134
  87. package/dist/encrypted-text.js.map +1 -1
  88. package/dist/field.d.ts +40 -21
  89. package/dist/field.d.ts.map +1 -0
  90. package/dist/field.js +52 -3
  91. package/dist/field.js.map +1 -1
  92. package/dist/film-grain-shader.d.ts +6 -0
  93. package/dist/film-grain-shader.d.ts.map +1 -0
  94. package/dist/film-grain-shader.js +88 -0
  95. package/dist/film-grain-shader.js.map +1 -0
  96. package/dist/film-grain-webgl.d.ts +20 -0
  97. package/dist/film-grain-webgl.d.ts.map +1 -0
  98. package/dist/film-grain-webgl.js +306 -0
  99. package/dist/film-grain-webgl.js.map +1 -0
  100. package/dist/film-grain.d.ts +21 -11
  101. package/dist/film-grain.d.ts.map +1 -0
  102. package/dist/film-grain.js +28 -420
  103. package/dist/film-grain.js.map +1 -1
  104. package/dist/form.d.ts +64 -49
  105. package/dist/form.d.ts.map +1 -0
  106. package/dist/form.js +112 -91
  107. package/dist/form.js.map +1 -1
  108. package/dist/gradient-reveal-text.d.ts +35 -22
  109. package/dist/gradient-reveal-text.d.ts.map +1 -0
  110. package/dist/gradient-reveal-text.js +238 -205
  111. package/dist/gradient-reveal-text.js.map +1 -1
  112. package/dist/hooks/use-mobile.d.ts +3 -1
  113. package/dist/hooks/use-mobile.d.ts.map +1 -0
  114. package/dist/hooks/use-mobile.js +28 -2
  115. package/dist/hooks/use-mobile.js.map +1 -1
  116. package/dist/infinite-scroll.d.ts +29 -15
  117. package/dist/infinite-scroll.d.ts.map +1 -0
  118. package/dist/infinite-scroll.js +69 -99
  119. package/dist/infinite-scroll.js.map +1 -1
  120. package/dist/input-group.d.ts +41 -18
  121. package/dist/input-group.d.ts.map +1 -0
  122. package/dist/input-group.js +80 -6
  123. package/dist/input-group.js.map +1 -1
  124. package/dist/input-otp.d.ts +26 -10
  125. package/dist/input-otp.d.ts.map +1 -0
  126. package/dist/input-otp.js +40 -70
  127. package/dist/input-otp.js.map +1 -1
  128. package/dist/input.d.ts +10 -4
  129. package/dist/input.d.ts.map +1 -0
  130. package/dist/input.js +16 -3
  131. package/dist/input.js.map +1 -1
  132. package/dist/item.d.ts +58 -23
  133. package/dist/item.d.ts.map +1 -0
  134. package/dist/item.js +103 -160
  135. package/dist/item.js.map +1 -1
  136. package/dist/kbd.d.ts +12 -4
  137. package/dist/kbd.d.ts.map +1 -0
  138. package/dist/kbd.js +15 -24
  139. package/dist/kbd.js.map +1 -1
  140. package/dist/label.d.ts +9 -4
  141. package/dist/label.d.ts.map +1 -0
  142. package/dist/label.js +12 -16
  143. package/dist/label.js.map +1 -1
  144. package/dist/lib/focus.d.ts +42 -0
  145. package/dist/lib/focus.d.ts.map +1 -0
  146. package/dist/lib/focus.js +21 -0
  147. package/dist/lib/focus.js.map +1 -0
  148. package/dist/lib/internal-icons.d.ts +32 -0
  149. package/dist/lib/internal-icons.d.ts.map +1 -0
  150. package/dist/lib/internal-icons.js +222 -0
  151. package/dist/lib/internal-icons.js.map +1 -0
  152. package/dist/lib/utils.d.ts +4 -2
  153. package/dist/lib/utils.d.ts.map +1 -0
  154. package/dist/lib/utils.js +12 -2
  155. package/dist/lib/utils.js.map +1 -1
  156. package/dist/masonry.d.ts +25 -11
  157. package/dist/masonry.d.ts.map +1 -0
  158. package/dist/masonry.js +188 -229
  159. package/dist/masonry.js.map +1 -1
  160. package/dist/menu.d.ts +84 -26
  161. package/dist/menu.d.ts.map +1 -0
  162. package/dist/menu.js +141 -4
  163. package/dist/menu.js.map +1 -1
  164. package/dist/menubar.d.ts +60 -22
  165. package/dist/menubar.d.ts.map +1 -0
  166. package/dist/menubar.js +80 -52
  167. package/dist/menubar.js.map +1 -1
  168. package/dist/pagination.d.ts +38 -17
  169. package/dist/pagination.d.ts.map +1 -0
  170. package/dist/pagination.js +68 -107
  171. package/dist/pagination.js.map +1 -1
  172. package/dist/popover.d.ts +56 -14
  173. package/dist/popover.d.ts.map +1 -0
  174. package/dist/popover.js +62 -87
  175. package/dist/popover.js.map +1 -1
  176. package/dist/preview-card.d.ts +28 -9
  177. package/dist/preview-card.d.ts.map +1 -0
  178. package/dist/preview-card.js +40 -60
  179. package/dist/preview-card.js.map +1 -1
  180. package/dist/progress.d.ts +28 -9
  181. package/dist/progress.d.ts.map +1 -0
  182. package/dist/progress.js +35 -60
  183. package/dist/progress.js.map +1 -1
  184. package/dist/radio-group.d.ts +14 -8
  185. package/dist/radio-group.d.ts.map +1 -0
  186. package/dist/radio-group.js +18 -22
  187. package/dist/radio-group.js.map +1 -1
  188. package/dist/radio.d.ts +14 -6
  189. package/dist/radio.d.ts.map +1 -0
  190. package/dist/radio.js +24 -3
  191. package/dist/radio.js.map +1 -1
  192. package/dist/scroll-area.d.ts +16 -6
  193. package/dist/scroll-area.d.ts.map +1 -0
  194. package/dist/scroll-area.js +34 -55
  195. package/dist/scroll-area.js.map +1 -1
  196. package/dist/select.d.ts +66 -18
  197. package/dist/select.d.ts.map +1 -0
  198. package/dist/select.js +109 -185
  199. package/dist/select.js.map +1 -1
  200. package/dist/separator.d.ts +11 -5
  201. package/dist/separator.d.ts.map +1 -0
  202. package/dist/separator.js +17 -3
  203. package/dist/separator.js.map +1 -1
  204. package/dist/sidebar.d.ts +172 -79
  205. package/dist/sidebar.d.ts.map +1 -0
  206. package/dist/sidebar.js +362 -585
  207. package/dist/sidebar.js.map +1 -1
  208. package/dist/skeleton.d.ts +8 -3
  209. package/dist/skeleton.d.ts.map +1 -0
  210. package/dist/skeleton.js +13 -3
  211. package/dist/skeleton.js.map +1 -1
  212. package/dist/slider.d.ts +16 -6
  213. package/dist/slider.d.ts.map +1 -0
  214. package/dist/slider.js +40 -67
  215. package/dist/slider.js.map +1 -1
  216. package/dist/spinner.d.ts +8 -3
  217. package/dist/spinner.d.ts.map +1 -0
  218. package/dist/spinner.js +15 -4
  219. package/dist/spinner.js.map +1 -1
  220. package/dist/switch.d.ts +12 -6
  221. package/dist/switch.d.ts.map +1 -0
  222. package/dist/switch.js +18 -25
  223. package/dist/switch.js.map +1 -1
  224. package/dist/table.d.ts +37 -11
  225. package/dist/table.d.ts.map +1 -0
  226. package/dist/table.js +51 -88
  227. package/dist/table.js.map +1 -1
  228. package/dist/tabs.d.ts +28 -12
  229. package/dist/tabs.d.ts.map +1 -0
  230. package/dist/tabs.js +40 -74
  231. package/dist/tabs.js.map +1 -1
  232. package/dist/textarea.d.ts +13 -6
  233. package/dist/textarea.d.ts.map +1 -0
  234. package/dist/textarea.js +19 -3
  235. package/dist/textarea.js.map +1 -1
  236. package/dist/toast.d.ts +63 -39
  237. package/dist/toast.d.ts.map +1 -0
  238. package/dist/toast.js +177 -215
  239. package/dist/toast.js.map +1 -1
  240. package/dist/toggle-group.d.ts +26 -12
  241. package/dist/toggle-group.d.ts.map +1 -0
  242. package/dist/toggle-group.js +49 -73
  243. package/dist/toggle-group.js.map +1 -1
  244. package/dist/toggle.d.ts +17 -10
  245. package/dist/toggle.d.ts.map +1 -0
  246. package/dist/toggle.js +38 -3
  247. package/dist/toggle.js.map +1 -1
  248. package/dist/tooltip.d.ts +45 -14
  249. package/dist/tooltip.d.ts.map +1 -0
  250. package/dist/tooltip.js +63 -3
  251. package/dist/tooltip.js.map +1 -1
  252. package/dist/typewriter.d.ts +44 -31
  253. package/dist/typewriter.d.ts.map +1 -0
  254. package/dist/typewriter.js +185 -185
  255. package/dist/typewriter.js.map +1 -1
  256. package/package.json +6 -6
  257. package/dist/chunk-45VQAWIM.js +0 -228
  258. package/dist/chunk-45VQAWIM.js.map +0 -1
  259. package/dist/chunk-6Y7LPQMO.js +0 -11
  260. package/dist/chunk-6Y7LPQMO.js.map +0 -1
  261. package/dist/chunk-76UQO56T.js +0 -19
  262. package/dist/chunk-76UQO56T.js.map +0 -1
  263. package/dist/chunk-7F4MPMLJ.js +0 -17
  264. package/dist/chunk-7F4MPMLJ.js.map +0 -1
  265. package/dist/chunk-BKTJYX4M.js +0 -143
  266. package/dist/chunk-BKTJYX4M.js.map +0 -1
  267. package/dist/chunk-D5XPEJ6T.js +0 -36
  268. package/dist/chunk-D5XPEJ6T.js.map +0 -1
  269. package/dist/chunk-DIGOLJIR.js +0 -105
  270. package/dist/chunk-DIGOLJIR.js.map +0 -1
  271. package/dist/chunk-IQ7YQ5XA.js +0 -141
  272. package/dist/chunk-IQ7YQ5XA.js.map +0 -1
  273. package/dist/chunk-NCHHHWTB.js +0 -85
  274. package/dist/chunk-NCHHHWTB.js.map +0 -1
  275. package/dist/chunk-OUFYQLVN.js +0 -56
  276. package/dist/chunk-OUFYQLVN.js.map +0 -1
  277. package/dist/chunk-QFSEK4M6.js +0 -22
  278. package/dist/chunk-QFSEK4M6.js.map +0 -1
  279. package/dist/chunk-QRW37LRP.js +0 -25
  280. package/dist/chunk-QRW37LRP.js.map +0 -1
  281. package/dist/chunk-RPQHL6C5.js +0 -26
  282. package/dist/chunk-RPQHL6C5.js.map +0 -1
  283. package/dist/chunk-V4ZX4YCP.js +0 -66
  284. package/dist/chunk-V4ZX4YCP.js.map +0 -1
  285. package/dist/chunk-YTSQQTSF.js +0 -44
  286. package/dist/chunk-YTSQQTSF.js.map +0 -1
  287. package/dist/chunk-ZZZH3JGW.js +0 -23
  288. package/dist/chunk-ZZZH3JGW.js.map +0 -1
  289. package/dist/direction.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/combobox.tsx"],"names":["ComboboxPrimitive"],"mappings":";;;;;;;;;;AAoDA,SAAS,QAAA,CAAS,EAAE,GAAG,KAAA,EAAM,EAAkB;AAC7C,EAAA,2BAAQA,UAAA,CAAkB,IAAA,EAAlB,EAAuB,WAAA,EAAU,UAAA,EAAY,GAAG,KAAA,EAAO,CAAA;AACjE;AAEA,SAAS,aAAA,CAAc,EAAE,GAAG,KAAA,EAAM,EAAuB;AACvD,EAAA,2BAAQA,UAAA,CAAkB,KAAA,EAAlB,EAAwB,WAAA,EAAU,gBAAA,EAAkB,GAAG,KAAA,EAAO,CAAA;AACxE;AAEA,SAAS,gBAAgB,EAAE,SAAA,EAAW,QAAA,EAAU,GAAG,OAAM,EAAyB;AAChF,EAAA,uBACE,IAAA;AAAA,IAACA,UAAA,CAAkB,OAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,kBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,sCAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,wBACD,GAAA;AAAA,UAAC,eAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAU;AAAA;AAAA;AACZ;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,KAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,wBAAQ,GAAA,CAAC,gBAAA,EAAA,EAAiB,OAAA,EAAQ,OAAA,EAAQ,MAAK,SAAA,EAAU,CAAA;AAAA,MACzD,SAAA,EAAW,GAAG,SAAS,CAAA;AAAA,MACtB,GAAG,KAAA;AAAA,MAEJ,QAAA,kBAAA,GAAA;AAAA,QAAC,SAAA;AAAA,QAAA;AAAA,UACC,SAAA,EAAU;AAAA;AAAA;AACZ;AAAA,GACF;AAEJ;AAEA,SAAS,aAAA,CAAc;AAAA,EACrB,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA,GAAW,KAAA;AAAA,EACX,WAAA,GAAc,IAAA;AAAA,EACd,SAAA,GAAY,KAAA;AAAA,EACZ,GAAG;AACL,CAAA,EAA8B;AAC5B,EAAA,4BACG,UAAA,EAAA,EAAW,SAAA,EAAW,EAAA,CAAG,QAAA,EAAU,SAAS,CAAA,EAC3C,QAAA,EAAA;AAAA,oBAAA,GAAA,CAACA,UAAA,CAAkB,OAAlB,EAAwB,MAAA,sBAAS,eAAA,EAAA,EAAgB,QAAA,EAAoB,CAAA,EAAK,GAAG,KAAA,EAAO,CAAA;AAAA,oBACrF,IAAA,CAAC,eAAA,EAAA,EAAgB,KAAA,EAAM,YAAA,EACpB,QAAA,EAAA;AAAA,MAAA,WAAA,mBACC,GAAA;AAAA,QAAC,gBAAA;AAAA,QAAA;AAAA,UACC,IAAA,EAAK,SAAA;AAAA,UACL,OAAA,EAAQ,OAAA;AAAA,UACR,YAAA,EAAY,IAAA;AAAA,UACZ,MAAA,sBAAS,eAAA,EAAA,EAAgB,CAAA;AAAA,UACzB,WAAA,EAAU,oBAAA;AAAA,UACV,SAAA,EAAU,qFAAA;AAAA,UACV;AAAA;AAAA,OACF,GACE,IAAA;AAAA,MACH,SAAA,mBAAY,GAAA,CAAC,aAAA,EAAA,EAAc,QAAA,EAAoB,CAAA,GAAK;AAAA,KAAA,EACvD,CAAA;AAAA,IACC;AAAA,GAAA,EACH,CAAA;AAEJ;AAEA,SAAS,cAAA,CAAe,EAAE,GAAG,KAAA,EAAM,EAAwB;AACzD,EAAA,2BAAQA,UAAA,CAAkB,MAAA,EAAlB,EAAyB,WAAA,EAAU,iBAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AAC1E;AAEA,SAAS,kBAAA,CAAmB,EAAE,SAAA,EAAW,GAAG,OAAM,EAA4B;AAC5E,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,UAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,qBAAA;AAAA,MACV,SAAA;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,eAAA,CAAgB;AAAA,EACvB,SAAA;AAAA,EACA,IAAA,GAAO,QAAA;AAAA,EACP,UAAA,GAAa,CAAA;AAAA,EACb,KAAA,GAAQ,OAAA;AAAA,EACR,WAAA,GAAc,CAAA;AAAA,EACd,MAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAyB;AACvB,EAAA,2BACG,cAAA,EAAA,EACC,QAAA,kBAAA,GAAA;AAAA,IAAC,kBAAA;AAAA,IAAA;AAAA,MACC,IAAA;AAAA,MACA,UAAA;AAAA,MACA,KAAA;AAAA,MACA,WAAA;AAAA,MACA,MAAA;AAAA,MACA,SAAA,EAAU,cAAA;AAAA,MAEV,QAAA,kBAAA,GAAA;AAAA,QAACA,UAAA,CAAkB,KAAA;AAAA,QAAlB;AAAA,UACC,WAAA,EAAU,kBAAA;AAAA,UACV,YAAA,EAAY,CAAC,CAAC,MAAA;AAAA,UACd,SAAA,EAAW,EAAA;AAAA,YACT,y5BAAA;AAAA,YACA;AAAA,WACF;AAAA,UACC,GAAG;AAAA;AAAA;AACN;AAAA,GACF,EACF,CAAA;AAEJ;AAEA,SAAS,YAAA,CAAa,EAAE,SAAA,EAAW,GAAG,OAAM,EAAsB;AAChE,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,IAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,eAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,iNAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,aAAa,EAAE,SAAA,EAAW,QAAA,EAAU,GAAG,OAAM,EAAsB;AAC1E,EAAA,uBACE,IAAA;AAAA,IAACA,UAAA,CAAkB,IAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,eAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,iZAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,wBACD,GAAA;AAAA,UAACA,UAAA,CAAkB,aAAA;AAAA,UAAlB;AAAA,YACC,MAAA,kBACE,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,8EAAA,EAA+E,CAAA;AAAA,YAGjG,QAAA,kBAAA,GAAA;AAAA,cAAC,SAAA;AAAA,cAAA;AAAA,gBACC,SAAA,EAAU;AAAA;AAAA;AACZ;AAAA;AACF;AAAA;AAAA,GACF;AAEJ;AAEA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,KAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,SAAA,EAAW,GAAG,SAAS,CAAA;AAAA,MACtB,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,UAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,2CAAA,EAA6C,SAAS,CAAA;AAAA,MACnE,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,kBAAA,CAAmB,EAAE,GAAG,KAAA,EAAM,EAA4B;AACjE,EAAA,2BAAQA,UAAA,CAAkB,UAAA,EAAlB,EAA6B,WAAA,EAAU,qBAAA,EAAuB,GAAG,KAAA,EAAO,CAAA;AAClF;AAEA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,KAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,oHAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,iBAAA,CAAkB,EAAE,SAAA,EAAW,GAAG,OAAM,EAA2B;AAC1E,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,SAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,oBAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,2BAAA,EAA6B,SAAS,CAAA;AAAA,MACnD,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,aAAA,CAAc,EAAE,SAAA,EAAW,GAAG,OAAM,EAAuB;AAClE,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,KAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,gBAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,icAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,YAAA,CAAa;AAAA,EACpB,SAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA,GAAa,IAAA;AAAA,EACb,GAAG;AACL,CAAA,EAA6B;AAC3B,EAAA,uBACE,IAAA;AAAA,IAACA,UAAA,CAAkB,IAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,eAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,4RAAA;AAAA,QACA;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,QACA,UAAA,mBACC,GAAA;AAAA,UAACA,UAAA,CAAkB,UAAA;AAAA,UAAlB;AAAA,YACC,wBAAQ,GAAA,CAAC,MAAA,EAAA,EAAO,OAAA,EAAQ,OAAA,EAAQ,MAAK,SAAA,EAAU,CAAA;AAAA,YAC/C,SAAA,EAAU,oCAAA;AAAA,YACV,WAAA,EAAU,sBAAA;AAAA,YAEV,QAAA,kBAAA,GAAA;AAAA,cAAC,SAAA;AAAA,cAAA;AAAA,gBACC,SAAA,EAAU;AAAA;AAAA;AACZ;AAAA,SACF,GACE;AAAA;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,kBAAA,CAAmB,EAAE,SAAA,EAAW,GAAG,OAAM,EAA4B;AAC5E,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,KAAA;AAAA,IAAlB;AAAA,MACC,WAAA,EAAU,qBAAA;AAAA,MACV,SAAA,EAAW,EAAA,CAAG,8BAAA,EAAgC,SAAS,CAAA;AAAA,MACtD,GAAG;AAAA;AAAA,GACN;AAEJ;AAEA,SAAS,iBAAA,GAAoB;AAC3B,EAAA,OAAa,aAA8B,IAAI,CAAA;AACjD","file":"combobox.js","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Combobox as ComboboxPrimitive } from \"@base-ui/react/combobox\"\n\nimport { cn } from \"./lib/utils\"\nimport { Button } from \"./button\"\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupInput,\n} from \"./input-group\"\nimport { ChevronDownIcon, CloseIcon, CheckIcon } from \"./lib/internal-icons\"\n\ntype ComboboxProps = React.ComponentProps<typeof ComboboxPrimitive.Root>\n\ntype ComboboxValueProps = React.ComponentProps<typeof ComboboxPrimitive.Value>\ntype ComboboxTriggerProps = React.ComponentProps<typeof ComboboxPrimitive.Trigger>\ntype ComboboxClearProps = React.ComponentProps<typeof ComboboxPrimitive.Clear>\ntype ComboboxInputProps = React.ComponentProps<typeof ComboboxPrimitive.Input>\n\ntype ComboboxPortalProps = React.ComponentProps<typeof ComboboxPrimitive.Portal>\ntype ComboboxPositionerProps = React.ComponentProps<typeof ComboboxPrimitive.Positioner>\ntype ComboboxPopupProps = React.ComponentProps<typeof ComboboxPrimitive.Popup>\n\ntype ComboboxListProps = React.ComponentProps<typeof ComboboxPrimitive.List>\ntype ComboboxItemProps = React.ComponentProps<typeof ComboboxPrimitive.Item>\ntype ComboboxGroupProps = React.ComponentProps<typeof ComboboxPrimitive.Group>\ntype ComboboxLabelProps = React.ComponentProps<typeof ComboboxPrimitive.GroupLabel>\ntype ComboboxCollectionProps = React.ComponentProps<typeof ComboboxPrimitive.Collection>\ntype ComboboxEmptyProps = React.ComponentProps<typeof ComboboxPrimitive.Empty>\ntype ComboboxSeparatorProps = React.ComponentProps<typeof ComboboxPrimitive.Separator>\ntype ComboboxChipsProps = React.ComponentProps<typeof ComboboxPrimitive.Chips>\ntype ComboboxChipProps = React.ComponentProps<typeof ComboboxPrimitive.Chip>\ntype ComboboxChipsInputProps = React.ComponentProps<typeof ComboboxPrimitive.Input>\n\ntype ComboboxInputWrapperProps = ComboboxInputProps & {\n showTrigger?: boolean\n showClear?: boolean\n}\n\ntype ComboboxChipWrapperProps = ComboboxChipProps & {\n showRemove?: boolean\n}\n\ntype ComboboxContentProps = ComboboxPopupProps &\n Pick<\n ComboboxPositionerProps,\n \"side\" | \"align\" | \"sideOffset\" | \"alignOffset\" | \"anchor\"\n >\n\nfunction Combobox({ ...props }: ComboboxProps) {\n return <ComboboxPrimitive.Root data-slot=\"combobox\" {...props} />\n}\n\nfunction ComboboxValue({ ...props }: ComboboxValueProps) {\n return <ComboboxPrimitive.Value data-slot=\"combobox-value\" {...props} />\n}\n\nfunction ComboboxTrigger({ className, children, ...props }: ComboboxTriggerProps) {\n return (\n <ComboboxPrimitive.Trigger\n data-slot=\"combobox-trigger\"\n className={cn(\n \"[&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon\n className=\"text-muted-foreground pointer-events-none size-4\"\n />\n </ComboboxPrimitive.Trigger>\n )\n}\n\nfunction ComboboxClear({ className, ...props }: ComboboxClearProps) {\n return (\n <ComboboxPrimitive.Clear\n data-slot=\"combobox-clear\"\n render={<InputGroupButton variant=\"ghost\" size=\"icon-xs\" />}\n className={cn(className)}\n {...props}\n >\n <CloseIcon\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.Clear>\n )\n}\n\nfunction ComboboxInput({\n className,\n children,\n disabled = false,\n showTrigger = true,\n showClear = false,\n ...props\n}: ComboboxInputWrapperProps) {\n return (\n <InputGroup className={cn(\"w-auto\", className)}>\n <ComboboxPrimitive.Input render={<InputGroupInput disabled={disabled} />} {...props} />\n <InputGroupAddon align=\"inline-end\">\n {showTrigger ? (\n <InputGroupButton\n size=\"icon-xs\"\n variant=\"ghost\"\n nativeButton\n render={<ComboboxTrigger />}\n data-slot=\"input-group-button\"\n className=\"group-has-data-[slot=combobox-clear]/input-group:hidden data-pressed:bg-transparent\"\n disabled={disabled}\n />\n ) : null}\n {showClear ? <ComboboxClear disabled={disabled} /> : null}\n </InputGroupAddon>\n {children}\n </InputGroup>\n )\n}\n\nfunction ComboboxPortal({ ...props }: ComboboxPortalProps) {\n return <ComboboxPrimitive.Portal data-slot=\"combobox-portal\" {...props} />\n}\n\nfunction ComboboxPositioner({ className, ...props }: ComboboxPositionerProps) {\n return (\n <ComboboxPrimitive.Positioner\n data-slot=\"combobox-positioner\"\n className={className}\n {...props}\n />\n )\n}\n\nfunction ComboboxContent({\n className,\n side = \"bottom\",\n sideOffset = 6,\n align = \"start\",\n alignOffset = 0,\n anchor,\n ...props\n}: ComboboxContentProps) {\n return (\n <ComboboxPortal>\n <ComboboxPositioner\n side={side}\n sideOffset={sideOffset}\n align={align}\n alignOffset={alignOffset}\n anchor={anchor}\n className=\"isolate z-50\"\n >\n <ComboboxPrimitive.Popup\n data-slot=\"combobox-content\"\n data-chips={!!anchor}\n className={cn(\n \"bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-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 ring-foreground/10 *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:border-input/30 data-[side=inline-start]:slide-in-from-right-2 data-[side=inline-end]:slide-in-from-left-2 group/combobox-content relative max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-lg shadow-md ring-1 duration-100 data-[chips=true]:min-w-(--anchor-width) *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-8 *:data-[slot=input-group]:shadow-none\",\n className,\n )}\n {...props}\n />\n </ComboboxPositioner>\n </ComboboxPortal>\n )\n}\n\nfunction ComboboxList({ className, ...props }: ComboboxListProps) {\n return (\n <ComboboxPrimitive.List\n data-slot=\"combobox-list\"\n className={cn(\n \"[scrollbar-width:none] [&::-webkit-scrollbar]:hidden max-h-[min(calc(--spacing(72)---spacing(9)),calc(var(--available-height)---spacing(9)))] scroll-py-1 overflow-y-auto overscroll-contain p-1 data-empty:p-0\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxItem({ className, children, ...props }: ComboboxItemProps) {\n return (\n <ComboboxPrimitive.Item\n data-slot=\"combobox-item\"\n className={cn(\n \"data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground relative flex w-full cursor-default items-center gap-2 rounded-md py-1 pr-8 pl-1.5 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\",\n className,\n )}\n {...props}\n >\n {children}\n <ComboboxPrimitive.ItemIndicator\n render={\n <span className=\"pointer-events-none absolute right-2 flex size-4 items-center justify-center\" />\n }\n >\n <CheckIcon\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.ItemIndicator>\n </ComboboxPrimitive.Item>\n )\n}\n\nfunction ComboboxGroup({ className, ...props }: ComboboxGroupProps) {\n return (\n <ComboboxPrimitive.Group\n data-slot=\"combobox-group\"\n className={cn(className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxLabel({ className, ...props }: ComboboxLabelProps) {\n return (\n <ComboboxPrimitive.GroupLabel\n data-slot=\"combobox-label\"\n className={cn(\"text-muted-foreground px-2 py-1.5 text-xs\", className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxCollection({ ...props }: ComboboxCollectionProps) {\n return <ComboboxPrimitive.Collection data-slot=\"combobox-collection\" {...props} />\n}\n\nfunction ComboboxEmpty({ className, ...props }: ComboboxEmptyProps) {\n return (\n <ComboboxPrimitive.Empty\n data-slot=\"combobox-empty\"\n className={cn(\n \"text-muted-foreground hidden w-full justify-center py-2 text-center text-sm group-data-empty/combobox-content:flex\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxSeparator({ className, ...props }: ComboboxSeparatorProps) {\n return (\n <ComboboxPrimitive.Separator\n data-slot=\"combobox-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxChips({ className, ...props }: ComboboxChipsProps) {\n return (\n <ComboboxPrimitive.Chips\n data-slot=\"combobox-chips\"\n className={cn(\n \"dark:bg-input/30 border-input focus-within:border-ring focus-within:ring-ring/50 has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40 has-aria-invalid:border-destructive dark:has-aria-invalid:border-destructive/50 flex min-h-8 flex-wrap items-center gap-1 rounded-lg border bg-transparent bg-clip-padding px-2.5 py-1 text-sm transition-colors focus-within:ring-3 has-aria-invalid:ring-3 has-data-[slot=combobox-chip]:px-1\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxChip({\n className,\n children,\n showRemove = true,\n ...props\n}: ComboboxChipWrapperProps) {\n return (\n <ComboboxPrimitive.Chip\n data-slot=\"combobox-chip\"\n className={cn(\n \"bg-muted text-foreground flex h-[calc(--spacing(5.25))] w-fit items-center justify-center gap-1 rounded-sm px-1.5 text-xs font-medium whitespace-nowrap has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pr-0\",\n className,\n )}\n {...props}\n >\n {children}\n {showRemove ? (\n <ComboboxPrimitive.ChipRemove\n render={<Button variant=\"ghost\" size=\"icon-xs\" />}\n className=\"-ml-1 opacity-50 hover:opacity-100\"\n data-slot=\"combobox-chip-remove\"\n >\n <CloseIcon\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.ChipRemove>\n ) : null}\n </ComboboxPrimitive.Chip>\n )\n}\n\nfunction ComboboxChipsInput({ className, ...props }: ComboboxChipsInputProps) {\n return (\n <ComboboxPrimitive.Input\n data-slot=\"combobox-chip-input\"\n className={cn(\"min-w-16 flex-1 outline-none\", className)}\n {...props}\n />\n )\n}\n\nfunction useComboboxAnchor() {\n return React.useRef<HTMLDivElement | null>(null)\n}\n\nexport {\n Combobox,\n ComboboxInput,\n ComboboxContent,\n ComboboxList,\n ComboboxItem,\n ComboboxGroup,\n ComboboxLabel,\n ComboboxCollection,\n ComboboxEmpty,\n ComboboxSeparator,\n ComboboxChips,\n ComboboxChip,\n ComboboxChipsInput,\n ComboboxTrigger,\n ComboboxValue,\n ComboboxClear,\n useComboboxAnchor,\n}\n"]}
1
+ {"version":3,"file":"combobox.js","names":["ComboboxPrimitive"],"sources":["../src/combobox.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Combobox as ComboboxPrimitive } from \"@base-ui/react/combobox\"\n\nimport { cn } from \"./lib/utils\"\nimport { Button } from \"./button\"\nimport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupInput,\n} from \"./input-group\"\nimport { ChevronDownIcon, CloseIcon, CheckIcon } from \"./lib/internal-icons\"\n\ntype ComboboxProps = React.ComponentProps<typeof ComboboxPrimitive.Root>\n\ntype ComboboxValueProps = React.ComponentProps<typeof ComboboxPrimitive.Value>\ntype ComboboxTriggerProps = React.ComponentProps<typeof ComboboxPrimitive.Trigger>\ntype ComboboxClearProps = React.ComponentProps<typeof ComboboxPrimitive.Clear>\ntype ComboboxInputProps = React.ComponentProps<typeof ComboboxPrimitive.Input>\n\ntype ComboboxPortalProps = React.ComponentProps<typeof ComboboxPrimitive.Portal>\ntype ComboboxPositionerProps = React.ComponentProps<typeof ComboboxPrimitive.Positioner>\ntype ComboboxPopupProps = React.ComponentProps<typeof ComboboxPrimitive.Popup>\n\ntype ComboboxListProps = React.ComponentProps<typeof ComboboxPrimitive.List>\ntype ComboboxItemProps = React.ComponentProps<typeof ComboboxPrimitive.Item>\ntype ComboboxGroupProps = React.ComponentProps<typeof ComboboxPrimitive.Group>\ntype ComboboxLabelProps = React.ComponentProps<typeof ComboboxPrimitive.GroupLabel>\ntype ComboboxCollectionProps = React.ComponentProps<typeof ComboboxPrimitive.Collection>\ntype ComboboxEmptyProps = React.ComponentProps<typeof ComboboxPrimitive.Empty>\ntype ComboboxSeparatorProps = React.ComponentProps<typeof ComboboxPrimitive.Separator>\ntype ComboboxChipsProps = React.ComponentProps<typeof ComboboxPrimitive.Chips>\ntype ComboboxChipProps = React.ComponentProps<typeof ComboboxPrimitive.Chip>\ntype ComboboxChipsInputProps = React.ComponentProps<typeof ComboboxPrimitive.Input>\n\ntype ComboboxInputWrapperProps = ComboboxInputProps & {\n showTrigger?: boolean\n showClear?: boolean\n}\n\ntype ComboboxChipWrapperProps = ComboboxChipProps & {\n showRemove?: boolean\n}\n\ntype ComboboxContentProps = ComboboxPopupProps &\n Pick<\n ComboboxPositionerProps,\n \"side\" | \"align\" | \"sideOffset\" | \"alignOffset\" | \"anchor\"\n >\n\nfunction Combobox({ ...props }: ComboboxProps) {\n return <ComboboxPrimitive.Root data-slot=\"combobox\" {...props} />\n}\n\nfunction ComboboxValue({ ...props }: ComboboxValueProps) {\n return <ComboboxPrimitive.Value data-slot=\"combobox-value\" {...props} />\n}\n\nfunction ComboboxTrigger({ className, children, ...props }: ComboboxTriggerProps) {\n return (\n <ComboboxPrimitive.Trigger\n data-slot=\"combobox-trigger\"\n className={cn(\n \"[&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon\n className=\"text-muted-foreground pointer-events-none size-4\"\n />\n </ComboboxPrimitive.Trigger>\n )\n}\n\nfunction ComboboxClear({ className, ...props }: ComboboxClearProps) {\n return (\n <ComboboxPrimitive.Clear\n data-slot=\"combobox-clear\"\n render={<InputGroupButton variant=\"ghost\" size=\"icon-xs\" />}\n className={cn(className)}\n {...props}\n >\n <CloseIcon\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.Clear>\n )\n}\n\nfunction ComboboxInput({\n className,\n children,\n disabled = false,\n showTrigger = true,\n showClear = false,\n ...props\n}: ComboboxInputWrapperProps) {\n return (\n <ComboboxPrimitive.InputGroup render={<InputGroup className={cn(className)} />}>\n <ComboboxPrimitive.Input render={<InputGroupInput disabled={disabled} />} {...props} />\n <InputGroupAddon align=\"inline-end\">\n {showTrigger ? (\n <InputGroupButton\n size=\"icon-xs\"\n variant=\"ghost\"\n nativeButton\n render={<ComboboxTrigger />}\n data-slot=\"input-group-button\"\n className=\"group-has-data-[slot=combobox-clear]/input-group:hidden data-pressed:bg-transparent\"\n disabled={disabled}\n />\n ) : null}\n {showClear ? <ComboboxClear disabled={disabled} /> : null}\n </InputGroupAddon>\n {children}\n </ComboboxPrimitive.InputGroup>\n )\n}\n\nfunction ComboboxPortal({ ...props }: ComboboxPortalProps) {\n return <ComboboxPrimitive.Portal data-slot=\"combobox-portal\" {...props} />\n}\n\nfunction ComboboxPositioner({ className, ...props }: ComboboxPositionerProps) {\n return (\n <ComboboxPrimitive.Positioner\n data-slot=\"combobox-positioner\"\n className={className}\n {...props}\n />\n )\n}\n\nfunction ComboboxContent({\n className,\n side = \"bottom\",\n sideOffset = 6,\n align = \"start\",\n alignOffset = 0,\n anchor,\n ...props\n}: ComboboxContentProps) {\n return (\n <ComboboxPortal>\n <ComboboxPositioner\n side={side}\n sideOffset={sideOffset}\n align={align}\n alignOffset={alignOffset}\n anchor={anchor}\n className=\"isolate z-50\"\n >\n <ComboboxPrimitive.Popup\n data-slot=\"combobox-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-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 ring-foreground/10 *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:border-input/30 data-[side=inline-start]:slide-in-from-right-2 data-[side=inline-end]:slide-in-from-left-2 group/combobox-content relative max-h-(--available-height) max-w-(--available-width) min-w-(--anchor-width) origin-(--transform-origin) overflow-hidden rounded-lg shadow-md ring-1 duration-100 *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-8 *:data-[slot=input-group]:shadow-none\",\n className,\n )}\n {...props}\n />\n </ComboboxPositioner>\n </ComboboxPortal>\n )\n}\n\nfunction ComboboxList({ className, ...props }: ComboboxListProps) {\n return (\n <ComboboxPrimitive.List\n data-slot=\"combobox-list\"\n className={cn(\n \"[scrollbar-width:none] [&::-webkit-scrollbar]:hidden max-h-[min(calc(--spacing(72)---spacing(9)),calc(var(--available-height)---spacing(9)))] scroll-py-1 overflow-y-auto overscroll-contain p-1 data-empty:p-0\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxItem({ className, children, ...props }: ComboboxItemProps) {\n return (\n <ComboboxPrimitive.Item\n data-slot=\"combobox-item\"\n className={cn(\n \"data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground relative flex w-full cursor-default items-center gap-2 rounded-md py-1 pr-8 pl-1.5 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\",\n className,\n )}\n {...props}\n >\n {children}\n <ComboboxPrimitive.ItemIndicator\n render={\n <span data-slot=\"combobox-item-indicator\" className=\"pointer-events-none absolute right-2 flex size-4 items-center justify-center\" />\n }\n >\n <CheckIcon\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.ItemIndicator>\n </ComboboxPrimitive.Item>\n )\n}\n\nfunction ComboboxGroup({ className, ...props }: ComboboxGroupProps) {\n return (\n <ComboboxPrimitive.Group\n data-slot=\"combobox-group\"\n className={cn(className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxLabel({ className, ...props }: ComboboxLabelProps) {\n return (\n <ComboboxPrimitive.GroupLabel\n data-slot=\"combobox-label\"\n className={cn(\"text-muted-foreground px-2 py-1.5 text-xs\", className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxCollection({ ...props }: ComboboxCollectionProps) {\n return <ComboboxPrimitive.Collection data-slot=\"combobox-collection\" {...props} />\n}\n\nfunction ComboboxEmpty({ className, ...props }: ComboboxEmptyProps) {\n return (\n <ComboboxPrimitive.Empty\n data-slot=\"combobox-empty\"\n className={cn(\n \"text-muted-foreground hidden w-full justify-center py-2 text-center text-sm group-data-empty/combobox-content:flex\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxSeparator({ className, ...props }: ComboboxSeparatorProps) {\n return (\n <ComboboxPrimitive.Separator\n data-slot=\"combobox-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction ComboboxChips({ className, ...props }: ComboboxChipsProps) {\n return (\n <ComboboxPrimitive.Chips\n data-slot=\"combobox-chips\"\n className={cn(\n \"dark:bg-input/30 border-input focus-within:border-ring focus-within:ring-ring/50 has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40 has-aria-invalid:border-destructive dark:has-aria-invalid:border-destructive/50 flex min-h-8 flex-wrap items-center gap-1 rounded-lg border bg-transparent bg-clip-padding px-2.5 py-1 text-sm transition-colors focus-within:ring-3 has-aria-invalid:ring-3 has-data-[slot=combobox-chip]:px-1\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ComboboxChip({\n className,\n children,\n showRemove = true,\n ...props\n}: ComboboxChipWrapperProps) {\n return (\n <ComboboxPrimitive.Chip\n data-slot=\"combobox-chip\"\n className={cn(\n \"bg-muted text-foreground flex h-[calc(--spacing(5.25))] w-fit items-center justify-center gap-1 rounded-sm px-1.5 text-xs font-medium whitespace-nowrap has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pr-0\",\n className,\n )}\n {...props}\n >\n {children}\n {showRemove ? (\n <ComboboxPrimitive.ChipRemove\n render={<Button variant=\"ghost\" size=\"icon-xs\" />}\n className=\"-ml-1 opacity-50 hover:opacity-100\"\n data-slot=\"combobox-chip-remove\"\n >\n <CloseIcon\n className=\"pointer-events-none\"\n />\n </ComboboxPrimitive.ChipRemove>\n ) : null}\n </ComboboxPrimitive.Chip>\n )\n}\n\nfunction ComboboxChipsInput({ className, ...props }: ComboboxChipsInputProps) {\n return (\n <ComboboxPrimitive.Input\n data-slot=\"combobox-chip-input\"\n className={cn(\"min-w-16 flex-1 outline-none\", className)}\n {...props}\n />\n )\n}\n\nfunction useComboboxAnchor() {\n return React.useRef<HTMLDivElement | null>(null)\n}\n\nexport {\n Combobox,\n ComboboxInput,\n ComboboxContent,\n ComboboxList,\n ComboboxItem,\n ComboboxGroup,\n ComboboxLabel,\n ComboboxCollection,\n ComboboxEmpty,\n ComboboxSeparator,\n ComboboxChips,\n ComboboxChip,\n ComboboxChipsInput,\n ComboboxTrigger,\n ComboboxValue,\n ComboboxClear,\n useComboboxAnchor,\n}\n"],"mappings":"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"}
@@ -1,47 +1,108 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as React from 'react';
3
- import { ContextMenu as ContextMenu$1 } from '@base-ui/react/context-menu';
1
+ import { RestoreFocusOnClose } from "./lib/focus.js";
2
+ import * as React from "react";
3
+ import * as _$react_jsx_runtime0 from "react/jsx-runtime";
4
+ import { ContextMenu as ContextMenu$1 } from "@base-ui/react/context-menu";
4
5
 
6
+ //#region src/context-menu.d.ts
5
7
  type ContextMenuProps = React.ComponentProps<typeof ContextMenu$1.Root>;
6
8
  type ContextMenuPortalProps = React.ComponentProps<typeof ContextMenu$1.Portal>;
7
9
  type ContextMenuTriggerProps = React.ComponentProps<typeof ContextMenu$1.Trigger>;
8
- type ContextMenuContentProps = React.ComponentProps<typeof ContextMenu$1.Popup> & Pick<React.ComponentProps<typeof ContextMenu$1.Positioner>, "align" | "alignOffset" | "side" | "sideOffset">;
10
+ type ContextMenuContentProps = React.ComponentProps<typeof ContextMenu$1.Popup> & Pick<React.ComponentProps<typeof ContextMenu$1.Positioner>, "align" | "alignOffset" | "side" | "sideOffset"> & {
11
+ /**
12
+ * Focus-restoration policy when the menu closes. Defaults to Base
13
+ * UI's behaviour (restore to the trigger). Use `"keyboard"` when
14
+ * the trigger is hover/focus-within–revealed so a pointer close
15
+ * doesn't keep it pinned visible. See {@link RestoreFocusOnClose}.
16
+ */
17
+ restoreFocusOnClose?: RestoreFocusOnClose;
18
+ };
9
19
  type ContextMenuGroupProps = React.ComponentProps<typeof ContextMenu$1.Group>;
10
20
  type ContextMenuLabelProps = React.ComponentProps<typeof ContextMenu$1.GroupLabel> & {
11
- inset?: boolean;
21
+ inset?: boolean;
12
22
  };
13
23
  type ContextMenuItemProps = React.ComponentProps<typeof ContextMenu$1.Item> & {
14
- inset?: boolean;
15
- variant?: "default" | "destructive";
24
+ inset?: boolean;
25
+ variant?: "default" | "destructive";
16
26
  };
17
27
  type ContextMenuSubProps = React.ComponentProps<typeof ContextMenu$1.SubmenuRoot>;
18
28
  type ContextMenuSubTriggerProps = React.ComponentProps<typeof ContextMenu$1.SubmenuTrigger> & {
19
- inset?: boolean;
29
+ inset?: boolean;
20
30
  };
21
31
  type ContextMenuCheckboxItemProps = React.ComponentProps<typeof ContextMenu$1.CheckboxItem> & {
22
- inset?: boolean;
32
+ inset?: boolean;
23
33
  };
24
34
  type ContextMenuRadioGroupProps = React.ComponentProps<typeof ContextMenu$1.RadioGroup>;
25
35
  type ContextMenuRadioItemProps = React.ComponentProps<typeof ContextMenu$1.RadioItem> & {
26
- inset?: boolean;
36
+ inset?: boolean;
27
37
  };
28
38
  type ContextMenuSeparatorProps = React.ComponentProps<typeof ContextMenu$1.Separator>;
29
39
  type ContextMenuSubContentProps = React.ComponentProps<typeof ContextMenuContent>;
30
40
  type ContextMenuShortcutProps = React.ComponentProps<"span">;
31
- declare function ContextMenu(props: ContextMenuProps): react_jsx_runtime.JSX.Element;
32
- declare function ContextMenuPortal(props: ContextMenuPortalProps): react_jsx_runtime.JSX.Element;
33
- declare function ContextMenuTrigger({ className, ...props }: ContextMenuTriggerProps): react_jsx_runtime.JSX.Element;
34
- declare function ContextMenuContent({ className, align, alignOffset, side, sideOffset, ...props }: ContextMenuContentProps): react_jsx_runtime.JSX.Element;
35
- declare function ContextMenuGroup(props: ContextMenuGroupProps): react_jsx_runtime.JSX.Element;
36
- declare function ContextMenuLabel({ className, inset, ...props }: ContextMenuLabelProps): react_jsx_runtime.JSX.Element;
37
- declare function ContextMenuItem({ className, inset, variant, ...props }: ContextMenuItemProps): react_jsx_runtime.JSX.Element;
38
- declare function ContextMenuSub(props: ContextMenuSubProps): react_jsx_runtime.JSX.Element;
39
- declare function ContextMenuSubTrigger({ className, inset, children, ...props }: ContextMenuSubTriggerProps): react_jsx_runtime.JSX.Element;
40
- declare function ContextMenuSubContent(props: ContextMenuSubContentProps): react_jsx_runtime.JSX.Element;
41
- declare function ContextMenuCheckboxItem({ className, children, checked, inset, ...props }: ContextMenuCheckboxItemProps): react_jsx_runtime.JSX.Element;
42
- declare function ContextMenuRadioGroup(props: ContextMenuRadioGroupProps): react_jsx_runtime.JSX.Element;
43
- declare function ContextMenuRadioItem({ className, children, inset, ...props }: ContextMenuRadioItemProps): react_jsx_runtime.JSX.Element;
44
- declare function ContextMenuSeparator({ className, ...props }: ContextMenuSeparatorProps): react_jsx_runtime.JSX.Element;
45
- declare function ContextMenuShortcut({ className, ...props }: ContextMenuShortcutProps): react_jsx_runtime.JSX.Element;
46
-
41
+ declare function ContextMenu(props: ContextMenuProps): _$react_jsx_runtime0.JSX.Element;
42
+ declare function ContextMenuPortal(props: ContextMenuPortalProps): _$react_jsx_runtime0.JSX.Element;
43
+ declare function ContextMenuTrigger({
44
+ className,
45
+ ...props
46
+ }: ContextMenuTriggerProps): _$react_jsx_runtime0.JSX.Element;
47
+ declare function ContextMenuContent({
48
+ className,
49
+ align,
50
+ alignOffset,
51
+ side,
52
+ sideOffset,
53
+ restoreFocusOnClose,
54
+ finalFocus,
55
+ ...props
56
+ }: ContextMenuContentProps): _$react_jsx_runtime0.JSX.Element;
57
+ declare function ContextMenuGroup(props: ContextMenuGroupProps): _$react_jsx_runtime0.JSX.Element;
58
+ declare function ContextMenuLabel({
59
+ className,
60
+ inset,
61
+ ...props
62
+ }: ContextMenuLabelProps): _$react_jsx_runtime0.JSX.Element;
63
+ declare function ContextMenuItem({
64
+ className,
65
+ inset,
66
+ variant,
67
+ ...props
68
+ }: ContextMenuItemProps): _$react_jsx_runtime0.JSX.Element;
69
+ declare function ContextMenuSub(props: ContextMenuSubProps): _$react_jsx_runtime0.JSX.Element;
70
+ declare function ContextMenuSubTrigger({
71
+ className,
72
+ inset,
73
+ children,
74
+ ...props
75
+ }: ContextMenuSubTriggerProps): _$react_jsx_runtime0.JSX.Element;
76
+ declare function ContextMenuSubContent({
77
+ align,
78
+ alignOffset,
79
+ side,
80
+ sideOffset,
81
+ className,
82
+ ...props
83
+ }: ContextMenuSubContentProps): _$react_jsx_runtime0.JSX.Element;
84
+ declare function ContextMenuCheckboxItem({
85
+ className,
86
+ children,
87
+ checked,
88
+ inset,
89
+ ...props
90
+ }: ContextMenuCheckboxItemProps): _$react_jsx_runtime0.JSX.Element;
91
+ declare function ContextMenuRadioGroup(props: ContextMenuRadioGroupProps): _$react_jsx_runtime0.JSX.Element;
92
+ declare function ContextMenuRadioItem({
93
+ className,
94
+ children,
95
+ inset,
96
+ ...props
97
+ }: ContextMenuRadioItemProps): _$react_jsx_runtime0.JSX.Element;
98
+ declare function ContextMenuSeparator({
99
+ className,
100
+ ...props
101
+ }: ContextMenuSeparatorProps): _$react_jsx_runtime0.JSX.Element;
102
+ declare function ContextMenuShortcut({
103
+ className,
104
+ ...props
105
+ }: ContextMenuShortcutProps): _$react_jsx_runtime0.JSX.Element;
106
+ //#endregion
47
107
  export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
108
+ //# sourceMappingURL=context-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-menu.d.ts","names":[],"sources":["../src/context-menu.tsx"],"mappings":";;;;;;KAUK,gBAAA,GAAmB,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,IAAA;AAAA,KACpE,sBAAA,GAAyB,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,MAAA;AAAA,KAC1E,uBAAA,GAA0B,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,OAAA;AAAA,KAE3E,uBAAA,GAA0B,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,KAAA,IAC9E,IAAA,CACE,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,UAAA;EANhC;;;;;;EAejB,mBAAA,GAAsB,mBAAA;AAAA;AAAA,KAGrB,qBAAA,GAAwB,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,KAAA;AAAA,KAEzE,qBAAA,GAAwB,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,UAAA;EAC5E,KAAA;AAAA;AAAA,KAGG,oBAAA,GAAuB,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,IAAA;EAC3E,KAAA;EACA,OAAA;AAAA;AAAA,KAGG,mBAAA,GAAsB,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,WAAA;AAAA,KAEvE,0BAAA,GAA6B,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,cAAA;EACjF,KAAA;AAAA;AAAA,KAGG,4BAAA,GAA+B,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,YAAA;EACnF,KAAA;AAAA;AAAA,KAGG,0BAAA,GAA6B,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,UAAA;AAAA,KAE9E,yBAAA,GAA4B,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,SAAA;EAChF,KAAA;AAAA;AAAA,KAGG,yBAAA,GAA4B,KAAA,CAAM,cAAA,QAAsB,aAAA,CAAqB,SAAA;AAAA,KAE7E,0BAAA,GAA6B,KAAA,CAAM,cAAA,QAAsB,kBAAA;AAAA,KACzD,wBAAA,GAA2B,KAAA,CAAM,cAAA;AAAA,iBAE7B,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAInC,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI/C,kBAAA,CAAA;EAAqB,SAAA;EAAA,GAAc;AAAA,GAAS,uBAAA,GAAuB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUnE,kBAAA,CAAA;EACP,SAAA;EACA,KAAA;EACA,WAAA;EACA,IAAA;EACA,UAAA;EACA,mBAAA;EACA,UAAA;EAAA,GACG;AAAA,GACF,uBAAA,GAAuB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAyBjB,gBAAA,CAAiB,KAAA,EAAO,qBAAA,GAAqB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI7C,gBAAA,CAAA;EAAmB,SAAA;EAAW,KAAA;EAAA,GAAU;AAAA,GAAS,qBAAA,GAAqB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBActE,eAAA,CAAA;EACP,SAAA;EACA,KAAA;EACA,OAAA;EAAA,GACG;AAAA,GACF,oBAAA,GAAoB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAed,cAAA,CAAe,KAAA,EAAO,mBAAA,GAAmB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIzC,qBAAA,CAAA;EAAwB,SAAA;EAAW,KAAA;EAAO,QAAA;EAAA,GAAa;AAAA,GAAS,0BAAA,GAA0B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAiB1F,qBAAA,CAAA;EACP,KAAA;EAGA,WAAA;EACA,IAAA;EACA,UAAA;EACA,SAAA;EAAA,GACG;AAAA,GACF,0BAAA,GAA0B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAcpB,uBAAA,CAAA;EACP,SAAA;EACA,QAAA;EACA,OAAA;EACA,KAAA;EAAA,GACG;AAAA,GACF,4BAAA,GAA4B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAyBtB,qBAAA,CAAsB,KAAA,EAAO,0BAAA,GAA0B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIvD,oBAAA,CAAA;EAAuB,SAAA;EAAW,QAAA;EAAU,KAAA;EAAA,GAAU;AAAA,GAAS,yBAAA,GAAyB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAwBxF,oBAAA,CAAA;EAAuB,SAAA;EAAA,GAAc;AAAA,GAAS,yBAAA,GAAyB,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUvE,mBAAA,CAAA;EAAsB,SAAA;EAAA,GAAc;AAAA,GAAS,wBAAA,GAAwB,oBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -1,193 +1,143 @@
1
- import { ChevronRightIcon, CheckIcon } from './chunk-DIGOLJIR.js';
2
- import { cn } from './chunk-76UQO56T.js';
3
- import { ContextMenu as ContextMenu$1 } from '@base-ui/react/context-menu';
4
- import { jsx, jsxs } from 'react/jsx-runtime';
5
-
1
+ "use client";
2
+ import { cn } from "./lib/utils.js";
3
+ import { CheckIcon, ChevronRightIcon } from "./lib/internal-icons.js";
4
+ import { resolveFinalFocus } from "./lib/focus.js";
5
+ import "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ import { ContextMenu as ContextMenu$1 } from "@base-ui/react/context-menu";
8
+ //#region src/context-menu.tsx
6
9
  function ContextMenu(props) {
7
- return /* @__PURE__ */ jsx(ContextMenu$1.Root, { "data-slot": "context-menu", ...props });
10
+ return /* @__PURE__ */ jsx(ContextMenu$1.Root, {
11
+ "data-slot": "context-menu",
12
+ ...props
13
+ });
8
14
  }
9
15
  function ContextMenuPortal(props) {
10
- return /* @__PURE__ */ jsx(ContextMenu$1.Portal, { "data-slot": "context-menu-portal", ...props });
16
+ return /* @__PURE__ */ jsx(ContextMenu$1.Portal, {
17
+ "data-slot": "context-menu-portal",
18
+ ...props
19
+ });
11
20
  }
12
21
  function ContextMenuTrigger({ className, ...props }) {
13
- return /* @__PURE__ */ jsx(
14
- ContextMenu$1.Trigger,
15
- {
16
- "data-slot": "context-menu-trigger",
17
- className: cn("select-none", className),
18
- ...props
19
- }
20
- );
22
+ return /* @__PURE__ */ jsx(ContextMenu$1.Trigger, {
23
+ "data-slot": "context-menu-trigger",
24
+ className: cn("select-none", className),
25
+ ...props
26
+ });
21
27
  }
22
- function ContextMenuContent({
23
- className,
24
- align = "start",
25
- alignOffset = 4,
26
- side = "right",
27
- sideOffset = 0,
28
- ...props
29
- }) {
30
- return /* @__PURE__ */ jsx(ContextMenu$1.Portal, { children: /* @__PURE__ */ jsx(
31
- ContextMenu$1.Positioner,
32
- {
33
- className: "isolate z-50 outline-none",
34
- align,
35
- alignOffset,
36
- side,
37
- sideOffset,
38
- children: /* @__PURE__ */ jsx(
39
- ContextMenu$1.Popup,
40
- {
41
- "data-slot": "context-menu-content",
42
- className: cn(
43
- "data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-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 ring-foreground/10 bg-popover text-popover-foreground data-[side=inline-start]:slide-in-from-right-2 data-[side=inline-end]:slide-in-from-left-2 z-50 max-h-(--available-height) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 shadow-md ring-1 duration-100 outline-none",
44
- className
45
- ),
46
- ...props
47
- }
48
- )
49
- }
50
- ) });
28
+ function ContextMenuContent({ className, align = "start", alignOffset = 4, side = "right", sideOffset = 0, restoreFocusOnClose, finalFocus, ...props }) {
29
+ return /* @__PURE__ */ jsx(ContextMenu$1.Portal, { children: /* @__PURE__ */ jsx(ContextMenu$1.Positioner, {
30
+ "data-slot": "context-menu-positioner",
31
+ className: "isolate z-50 outline-none",
32
+ align,
33
+ alignOffset,
34
+ side,
35
+ sideOffset,
36
+ children: /* @__PURE__ */ jsx(ContextMenu$1.Popup, {
37
+ "data-slot": "context-menu-content",
38
+ className: cn("data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-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 ring-foreground/10 bg-popover text-popover-foreground data-[side=inline-start]:slide-in-from-right-2 data-[side=inline-end]:slide-in-from-left-2 z-50 max-h-(--available-height) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 shadow-md ring-1 duration-100 outline-none", className),
39
+ finalFocus: resolveFinalFocus(restoreFocusOnClose, finalFocus),
40
+ ...props
41
+ })
42
+ }) });
51
43
  }
52
44
  function ContextMenuGroup(props) {
53
- return /* @__PURE__ */ jsx(ContextMenu$1.Group, { "data-slot": "context-menu-group", ...props });
45
+ return /* @__PURE__ */ jsx(ContextMenu$1.Group, {
46
+ "data-slot": "context-menu-group",
47
+ ...props
48
+ });
54
49
  }
55
50
  function ContextMenuLabel({ className, inset, ...props }) {
56
- return /* @__PURE__ */ jsx(
57
- ContextMenu$1.GroupLabel,
58
- {
59
- "data-slot": "context-menu-label",
60
- "data-inset": inset,
61
- className: cn(
62
- "text-muted-foreground px-1.5 py-1 text-xs font-medium data-inset:pl-7",
63
- className
64
- ),
65
- ...props
66
- }
67
- );
51
+ return /* @__PURE__ */ jsx(ContextMenu$1.GroupLabel, {
52
+ "data-slot": "context-menu-label",
53
+ "data-inset": inset,
54
+ className: cn("text-muted-foreground px-1.5 py-1 text-xs font-medium data-inset:pl-7", className),
55
+ ...props
56
+ });
68
57
  }
69
- function ContextMenuItem({
70
- className,
71
- inset,
72
- variant = "default",
73
- ...props
74
- }) {
75
- return /* @__PURE__ */ jsx(
76
- ContextMenu$1.Item,
77
- {
78
- "data-slot": "context-menu-item",
79
- "data-inset": inset,
80
- "data-variant": variant,
81
- className: cn(
82
- "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 focus:*:[svg]:text-accent-foreground group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
83
- className
84
- ),
85
- ...props
86
- }
87
- );
58
+ function ContextMenuItem({ className, inset, variant = "default", ...props }) {
59
+ return /* @__PURE__ */ jsx(ContextMenu$1.Item, {
60
+ "data-slot": "context-menu-item",
61
+ "data-inset": inset,
62
+ "data-variant": variant,
63
+ 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 focus:*:[svg]:text-accent-foreground group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
64
+ ...props
65
+ });
88
66
  }
89
67
  function ContextMenuSub(props) {
90
- return /* @__PURE__ */ jsx(ContextMenu$1.SubmenuRoot, { "data-slot": "context-menu-sub", ...props });
68
+ return /* @__PURE__ */ jsx(ContextMenu$1.SubmenuRoot, {
69
+ "data-slot": "context-menu-sub",
70
+ ...props
71
+ });
91
72
  }
92
73
  function ContextMenuSubTrigger({ className, inset, children, ...props }) {
93
- return /* @__PURE__ */ jsxs(
94
- ContextMenu$1.SubmenuTrigger,
95
- {
96
- "data-slot": "context-menu-sub-trigger",
97
- "data-inset": inset,
98
- className: cn(
99
- "focus:bg-accent focus:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
100
- className
101
- ),
102
- ...props,
103
- children: [
104
- children,
105
- /* @__PURE__ */ jsx(ChevronRightIcon, { className: "ml-auto" })
106
- ]
107
- }
108
- );
74
+ return /* @__PURE__ */ jsxs(ContextMenu$1.SubmenuTrigger, {
75
+ "data-slot": "context-menu-sub-trigger",
76
+ "data-inset": inset,
77
+ className: cn("focus:bg-accent focus:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
78
+ ...props,
79
+ children: [children, /* @__PURE__ */ jsx(ChevronRightIcon, { className: "ml-auto" })]
80
+ });
109
81
  }
110
- function ContextMenuSubContent(props) {
111
- return /* @__PURE__ */ jsx(
112
- ContextMenuContent,
113
- {
114
- "data-slot": "context-menu-sub-content",
115
- className: "shadow-lg",
116
- side: "right",
117
- ...props
118
- }
119
- );
82
+ function ContextMenuSubContent({ align = "start", alignOffset = -4, side = "right", sideOffset = 0, className, ...props }) {
83
+ return /* @__PURE__ */ jsx(ContextMenuContent, {
84
+ "data-slot": "context-menu-sub-content",
85
+ className: cn("w-auto min-w-24 shadow-lg", className),
86
+ align,
87
+ alignOffset,
88
+ side,
89
+ sideOffset,
90
+ ...props
91
+ });
120
92
  }
121
- function ContextMenuCheckboxItem({
122
- className,
123
- children,
124
- checked,
125
- inset,
126
- ...props
127
- }) {
128
- return /* @__PURE__ */ jsxs(
129
- ContextMenu$1.CheckboxItem,
130
- {
131
- "data-slot": "context-menu-checkbox-item",
132
- "data-inset": inset,
133
- className: cn(
134
- "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
135
- className
136
- ),
137
- checked,
138
- ...props,
139
- children: [
140
- /* @__PURE__ */ jsx("span", { className: "absolute right-2 pointer-events-none", children: /* @__PURE__ */ jsx(ContextMenu$1.CheckboxItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, {}) }) }),
141
- children
142
- ]
143
- }
144
- );
93
+ function ContextMenuCheckboxItem({ className, children, checked, inset, ...props }) {
94
+ return /* @__PURE__ */ jsxs(ContextMenu$1.CheckboxItem, {
95
+ "data-slot": "context-menu-checkbox-item",
96
+ "data-inset": inset,
97
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
98
+ checked,
99
+ ...props,
100
+ children: [/* @__PURE__ */ jsx("span", {
101
+ "data-slot": "context-menu-checkbox-item-indicator",
102
+ className: "absolute right-2 pointer-events-none",
103
+ children: /* @__PURE__ */ jsx(ContextMenu$1.CheckboxItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, {}) })
104
+ }), children]
105
+ });
145
106
  }
146
107
  function ContextMenuRadioGroup(props) {
147
- return /* @__PURE__ */ jsx(ContextMenu$1.RadioGroup, { "data-slot": "context-menu-radio-group", ...props });
108
+ return /* @__PURE__ */ jsx(ContextMenu$1.RadioGroup, {
109
+ "data-slot": "context-menu-radio-group",
110
+ ...props
111
+ });
148
112
  }
149
113
  function ContextMenuRadioItem({ className, children, inset, ...props }) {
150
- return /* @__PURE__ */ jsxs(
151
- ContextMenu$1.RadioItem,
152
- {
153
- "data-slot": "context-menu-radio-item",
154
- "data-inset": inset,
155
- className: cn(
156
- "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
157
- className
158
- ),
159
- ...props,
160
- children: [
161
- /* @__PURE__ */ jsx("span", { className: "absolute right-2 pointer-events-none", children: /* @__PURE__ */ jsx(ContextMenu$1.RadioItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, {}) }) }),
162
- children
163
- ]
164
- }
165
- );
114
+ return /* @__PURE__ */ jsxs(ContextMenu$1.RadioItem, {
115
+ "data-slot": "context-menu-radio-item",
116
+ "data-inset": inset,
117
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
118
+ ...props,
119
+ children: [/* @__PURE__ */ jsx("span", {
120
+ "data-slot": "context-menu-radio-item-indicator",
121
+ className: "absolute right-2 pointer-events-none",
122
+ children: /* @__PURE__ */ jsx(ContextMenu$1.RadioItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, {}) })
123
+ }), children]
124
+ });
166
125
  }
167
126
  function ContextMenuSeparator({ className, ...props }) {
168
- return /* @__PURE__ */ jsx(
169
- ContextMenu$1.Separator,
170
- {
171
- "data-slot": "context-menu-separator",
172
- className: cn("bg-border -mx-1 my-1 h-px", className),
173
- ...props
174
- }
175
- );
127
+ return /* @__PURE__ */ jsx(ContextMenu$1.Separator, {
128
+ "data-slot": "context-menu-separator",
129
+ className: cn("bg-border -mx-1 my-1 h-px", className),
130
+ ...props
131
+ });
176
132
  }
177
133
  function ContextMenuShortcut({ className, ...props }) {
178
- return /* @__PURE__ */ jsx(
179
- "span",
180
- {
181
- "data-slot": "context-menu-shortcut",
182
- className: cn(
183
- "text-muted-foreground group-focus/context-menu-item:text-accent-foreground ml-auto text-xs tracking-widest",
184
- className
185
- ),
186
- ...props
187
- }
188
- );
134
+ return /* @__PURE__ */ jsx("span", {
135
+ "data-slot": "context-menu-shortcut",
136
+ className: cn("text-muted-foreground group-focus/context-menu-item:text-accent-foreground ml-auto text-xs tracking-widest", className),
137
+ ...props
138
+ });
189
139
  }
190
-
140
+ //#endregion
191
141
  export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
192
- //# sourceMappingURL=context-menu.js.map
142
+
193
143
  //# sourceMappingURL=context-menu.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/context-menu.tsx"],"names":["ContextMenuPrimitive"],"mappings":"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","file":"context-menu.js","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { ContextMenu as ContextMenuPrimitive } from \"@base-ui/react/context-menu\"\n\nimport { ChevronRightIcon, CheckIcon } from \"./lib/internal-icons\"\n\nimport { cn } from \"./lib/utils\"\n\ntype ContextMenuProps = React.ComponentProps<typeof ContextMenuPrimitive.Root>\ntype ContextMenuPortalProps = React.ComponentProps<typeof ContextMenuPrimitive.Portal>\ntype ContextMenuTriggerProps = React.ComponentProps<typeof ContextMenuPrimitive.Trigger>\n\ntype ContextMenuContentProps = React.ComponentProps<typeof ContextMenuPrimitive.Popup> &\n Pick<\n React.ComponentProps<typeof ContextMenuPrimitive.Positioner>,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\"\n >\n\ntype ContextMenuGroupProps = React.ComponentProps<typeof ContextMenuPrimitive.Group>\n\ntype ContextMenuLabelProps = React.ComponentProps<typeof ContextMenuPrimitive.GroupLabel> & {\n inset?: boolean\n}\n\ntype ContextMenuItemProps = React.ComponentProps<typeof ContextMenuPrimitive.Item> & {\n inset?: boolean\n variant?: \"default\" | \"destructive\"\n}\n\ntype ContextMenuSubProps = React.ComponentProps<typeof ContextMenuPrimitive.SubmenuRoot>\n\ntype ContextMenuSubTriggerProps = React.ComponentProps<typeof ContextMenuPrimitive.SubmenuTrigger> & {\n inset?: boolean\n}\n\ntype ContextMenuCheckboxItemProps = React.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem> & {\n inset?: boolean\n}\n\ntype ContextMenuRadioGroupProps = React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>\n\ntype ContextMenuRadioItemProps = React.ComponentProps<typeof ContextMenuPrimitive.RadioItem> & {\n inset?: boolean\n}\n\ntype ContextMenuSeparatorProps = React.ComponentProps<typeof ContextMenuPrimitive.Separator>\n\ntype ContextMenuSubContentProps = React.ComponentProps<typeof ContextMenuContent>\ntype ContextMenuShortcutProps = React.ComponentProps<\"span\">\n\nfunction ContextMenu(props: ContextMenuProps) {\n return <ContextMenuPrimitive.Root data-slot=\"context-menu\" {...props} />\n}\n\nfunction ContextMenuPortal(props: ContextMenuPortalProps) {\n return <ContextMenuPrimitive.Portal data-slot=\"context-menu-portal\" {...props} />\n}\n\nfunction ContextMenuTrigger({ className, ...props }: ContextMenuTriggerProps) {\n return (\n <ContextMenuPrimitive.Trigger\n data-slot=\"context-menu-trigger\"\n className={cn(\"select-none\", className)}\n {...props}\n />\n )\n}\n\nfunction ContextMenuContent({\n className,\n align = \"start\",\n alignOffset = 4,\n side = \"right\",\n sideOffset = 0,\n ...props\n}: ContextMenuContentProps) {\n return (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Positioner\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <ContextMenuPrimitive.Popup\n data-slot=\"context-menu-content\"\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-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 ring-foreground/10 bg-popover text-popover-foreground data-[side=inline-start]:slide-in-from-right-2 data-[side=inline-end]:slide-in-from-left-2 z-50 max-h-(--available-height) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 shadow-md ring-1 duration-100 outline-none\",\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Positioner>\n </ContextMenuPrimitive.Portal>\n )\n}\n\nfunction ContextMenuGroup(props: ContextMenuGroupProps) {\n return <ContextMenuPrimitive.Group data-slot=\"context-menu-group\" {...props} />\n}\n\nfunction ContextMenuLabel({ className, inset, ...props }: ContextMenuLabelProps) {\n return (\n <ContextMenuPrimitive.GroupLabel\n data-slot=\"context-menu-label\"\n data-inset={inset}\n className={cn(\n \"text-muted-foreground px-1.5 py-1 text-xs font-medium data-inset:pl-7\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ContextMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: ContextMenuItemProps) {\n return (\n <ContextMenuPrimitive.Item\n data-slot=\"context-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"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 focus:*:[svg]:text-accent-foreground group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ContextMenuSub(props: ContextMenuSubProps) {\n return <ContextMenuPrimitive.SubmenuRoot data-slot=\"context-menu-sub\" {...props} />\n}\n\nfunction ContextMenuSubTrigger({ className, inset, children, ...props }: ContextMenuSubTriggerProps) {\n return (\n <ContextMenuPrimitive.SubmenuTrigger\n data-slot=\"context-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto\" />\n </ContextMenuPrimitive.SubmenuTrigger>\n )\n}\n\nfunction ContextMenuSubContent(props: ContextMenuSubContentProps) {\n return (\n <ContextMenuContent\n data-slot=\"context-menu-sub-content\"\n className=\"shadow-lg\"\n side=\"right\"\n {...props}\n />\n )\n}\n\nfunction ContextMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: ContextMenuCheckboxItemProps) {\n return (\n <ContextMenuPrimitive.CheckboxItem\n data-slot=\"context-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"absolute right-2 pointer-events-none\">\n <ContextMenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n )\n}\n\nfunction ContextMenuRadioGroup(props: ContextMenuRadioGroupProps) {\n return <ContextMenuPrimitive.RadioGroup data-slot=\"context-menu-radio-group\" {...props} />\n}\n\nfunction ContextMenuRadioItem({ className, children, inset, ...props }: ContextMenuRadioItemProps) {\n return (\n <ContextMenuPrimitive.RadioItem\n data-slot=\"context-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"absolute right-2 pointer-events-none\">\n <ContextMenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n )\n}\n\nfunction ContextMenuSeparator({ className, ...props }: ContextMenuSeparatorProps) {\n return (\n <ContextMenuPrimitive.Separator\n data-slot=\"context-menu-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction ContextMenuShortcut({ className, ...props }: ContextMenuShortcutProps) {\n return (\n <span\n data-slot=\"context-menu-shortcut\"\n className={cn(\n \"text-muted-foreground group-focus/context-menu-item:text-accent-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n ContextMenu,\n ContextMenuCheckboxItem,\n ContextMenuContent,\n ContextMenuGroup,\n ContextMenuItem,\n ContextMenuLabel,\n ContextMenuPortal,\n ContextMenuRadioGroup,\n ContextMenuRadioItem,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuTrigger,\n}"]}
1
+ {"version":3,"file":"context-menu.js","names":["ContextMenuPrimitive"],"sources":["../src/context-menu.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { ContextMenu as ContextMenuPrimitive } from \"@base-ui/react/context-menu\"\n\nimport { ChevronRightIcon, CheckIcon } from \"./lib/internal-icons\"\n\nimport { cn } from \"./lib/utils\"\nimport { resolveFinalFocus, type RestoreFocusOnClose } from \"./lib/focus\"\n\ntype ContextMenuProps = React.ComponentProps<typeof ContextMenuPrimitive.Root>\ntype ContextMenuPortalProps = React.ComponentProps<typeof ContextMenuPrimitive.Portal>\ntype ContextMenuTriggerProps = React.ComponentProps<typeof ContextMenuPrimitive.Trigger>\n\ntype ContextMenuContentProps = React.ComponentProps<typeof ContextMenuPrimitive.Popup> &\n Pick<\n React.ComponentProps<typeof ContextMenuPrimitive.Positioner>,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\"\n > & {\n /**\n * Focus-restoration policy when the menu closes. Defaults to Base\n * UI's behaviour (restore to the trigger). Use `\"keyboard\"` when\n * the trigger is hover/focus-within–revealed so a pointer close\n * doesn't keep it pinned visible. See {@link RestoreFocusOnClose}.\n */\n restoreFocusOnClose?: RestoreFocusOnClose\n }\n\ntype ContextMenuGroupProps = React.ComponentProps<typeof ContextMenuPrimitive.Group>\n\ntype ContextMenuLabelProps = React.ComponentProps<typeof ContextMenuPrimitive.GroupLabel> & {\n inset?: boolean\n}\n\ntype ContextMenuItemProps = React.ComponentProps<typeof ContextMenuPrimitive.Item> & {\n inset?: boolean\n variant?: \"default\" | \"destructive\"\n}\n\ntype ContextMenuSubProps = React.ComponentProps<typeof ContextMenuPrimitive.SubmenuRoot>\n\ntype ContextMenuSubTriggerProps = React.ComponentProps<typeof ContextMenuPrimitive.SubmenuTrigger> & {\n inset?: boolean\n}\n\ntype ContextMenuCheckboxItemProps = React.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem> & {\n inset?: boolean\n}\n\ntype ContextMenuRadioGroupProps = React.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>\n\ntype ContextMenuRadioItemProps = React.ComponentProps<typeof ContextMenuPrimitive.RadioItem> & {\n inset?: boolean\n}\n\ntype ContextMenuSeparatorProps = React.ComponentProps<typeof ContextMenuPrimitive.Separator>\n\ntype ContextMenuSubContentProps = React.ComponentProps<typeof ContextMenuContent>\ntype ContextMenuShortcutProps = React.ComponentProps<\"span\">\n\nfunction ContextMenu(props: ContextMenuProps) {\n return <ContextMenuPrimitive.Root data-slot=\"context-menu\" {...props} />\n}\n\nfunction ContextMenuPortal(props: ContextMenuPortalProps) {\n return <ContextMenuPrimitive.Portal data-slot=\"context-menu-portal\" {...props} />\n}\n\nfunction ContextMenuTrigger({ className, ...props }: ContextMenuTriggerProps) {\n return (\n <ContextMenuPrimitive.Trigger\n data-slot=\"context-menu-trigger\"\n className={cn(\"select-none\", className)}\n {...props}\n />\n )\n}\n\nfunction ContextMenuContent({\n className,\n align = \"start\",\n alignOffset = 4,\n side = \"right\",\n sideOffset = 0,\n restoreFocusOnClose,\n finalFocus,\n ...props\n}: ContextMenuContentProps) {\n return (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Positioner\n data-slot=\"context-menu-positioner\"\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <ContextMenuPrimitive.Popup\n data-slot=\"context-menu-content\"\n className={cn(\n \"data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-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 ring-foreground/10 bg-popover text-popover-foreground data-[side=inline-start]:slide-in-from-right-2 data-[side=inline-end]:slide-in-from-left-2 z-50 max-h-(--available-height) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 shadow-md ring-1 duration-100 outline-none\",\n className,\n )}\n finalFocus={resolveFinalFocus(restoreFocusOnClose, finalFocus)}\n {...props}\n />\n </ContextMenuPrimitive.Positioner>\n </ContextMenuPrimitive.Portal>\n )\n}\n\nfunction ContextMenuGroup(props: ContextMenuGroupProps) {\n return <ContextMenuPrimitive.Group data-slot=\"context-menu-group\" {...props} />\n}\n\nfunction ContextMenuLabel({ className, inset, ...props }: ContextMenuLabelProps) {\n return (\n <ContextMenuPrimitive.GroupLabel\n data-slot=\"context-menu-label\"\n data-inset={inset}\n className={cn(\n \"text-muted-foreground px-1.5 py-1 text-xs font-medium data-inset:pl-7\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ContextMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: ContextMenuItemProps) {\n return (\n <ContextMenuPrimitive.Item\n data-slot=\"context-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"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 focus:*:[svg]:text-accent-foreground group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction ContextMenuSub(props: ContextMenuSubProps) {\n return <ContextMenuPrimitive.SubmenuRoot data-slot=\"context-menu-sub\" {...props} />\n}\n\nfunction ContextMenuSubTrigger({ className, inset, children, ...props }: ContextMenuSubTriggerProps) {\n return (\n <ContextMenuPrimitive.SubmenuTrigger\n data-slot=\"context-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto\" />\n </ContextMenuPrimitive.SubmenuTrigger>\n )\n}\n\nfunction ContextMenuSubContent({\n align = \"start\",\n // -4 cancels the popup's p-1 (4px) top padding so the submenu's first\n // item lines up with the parent item row, not the popup container edge.\n alignOffset = -4,\n side = \"right\",\n sideOffset = 0,\n className,\n ...props\n}: ContextMenuSubContentProps) {\n return (\n <ContextMenuContent\n data-slot=\"context-menu-sub-content\"\n className={cn(\"w-auto min-w-24 shadow-lg\", className)}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n )\n}\n\nfunction ContextMenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: ContextMenuCheckboxItemProps) {\n return (\n <ContextMenuPrimitive.CheckboxItem\n data-slot=\"context-menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span\n data-slot=\"context-menu-checkbox-item-indicator\"\n className=\"absolute right-2 pointer-events-none\"\n >\n <ContextMenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n )\n}\n\nfunction ContextMenuRadioGroup(props: ContextMenuRadioGroupProps) {\n return <ContextMenuPrimitive.RadioGroup data-slot=\"context-menu-radio-group\" {...props} />\n}\n\nfunction ContextMenuRadioItem({ className, children, inset, ...props }: ContextMenuRadioItemProps) {\n return (\n <ContextMenuPrimitive.RadioItem\n data-slot=\"context-menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span\n data-slot=\"context-menu-radio-item-indicator\"\n className=\"absolute right-2 pointer-events-none\"\n >\n <ContextMenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </ContextMenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n )\n}\n\nfunction ContextMenuSeparator({ className, ...props }: ContextMenuSeparatorProps) {\n return (\n <ContextMenuPrimitive.Separator\n data-slot=\"context-menu-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction ContextMenuShortcut({ className, ...props }: ContextMenuShortcutProps) {\n return (\n <span\n data-slot=\"context-menu-shortcut\"\n className={cn(\n \"text-muted-foreground group-focus/context-menu-item:text-accent-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n ContextMenu,\n ContextMenuCheckboxItem,\n ContextMenuContent,\n ContextMenuGroup,\n ContextMenuItem,\n ContextMenuLabel,\n ContextMenuPortal,\n ContextMenuRadioGroup,\n ContextMenuRadioItem,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuTrigger,\n}"],"mappings":"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"}