shadcnui-hono-jsx 0.1.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 (1032) hide show
  1. package/LICENSE +367 -0
  2. package/README.md +28 -0
  3. package/client/avatar.js +41 -0
  4. package/client/collapsible.js +47 -0
  5. package/client/combobox.js +759 -0
  6. package/client/core.js +81 -0
  7. package/client/drawer.js +208 -0
  8. package/client/hover.js +126 -0
  9. package/client/input-group.js +14 -0
  10. package/client/menu.js +460 -0
  11. package/client/navigation-menu.js +547 -0
  12. package/client/scroll-area.js +312 -0
  13. package/client/sidebar.js +163 -0
  14. package/client/slider.js +200 -0
  15. package/client/tabs.js +50 -0
  16. package/client/toast.js +612 -0
  17. package/dist/bin.js +864 -0
  18. package/generated/catalog.json +414 -0
  19. package/generated/icons/hugeicons.json +68 -0
  20. package/generated/icons/phosphor.json +64 -0
  21. package/generated/icons/remixicon.json +64 -0
  22. package/generated/icons/tabler.json +68 -0
  23. package/generated/named-presets.json +98 -0
  24. package/generated/notices/hugeicons.txt +69 -0
  25. package/generated/notices/lucide.txt +91 -0
  26. package/generated/notices/phosphor.txt +69 -0
  27. package/generated/notices/remixicon.txt +236 -0
  28. package/generated/notices/tabler.txt +69 -0
  29. package/generated/shadcn-preset.d.ts +44 -0
  30. package/generated/shadcn-preset.js +8 -0
  31. package/generated/tailwind.css +637 -0
  32. package/generated/templates/base-luma/accordion.tsx +293 -0
  33. package/generated/templates/base-luma/alert-dialog.tsx +341 -0
  34. package/generated/templates/base-luma/alert.tsx +95 -0
  35. package/generated/templates/base-luma/aspect-ratio.tsx +43 -0
  36. package/generated/templates/base-luma/attachment.tsx +274 -0
  37. package/generated/templates/base-luma/avatar.tsx +165 -0
  38. package/generated/templates/base-luma/badge.tsx +116 -0
  39. package/generated/templates/base-luma/breadcrumb.tsx +255 -0
  40. package/generated/templates/base-luma/bubble.tsx +191 -0
  41. package/generated/templates/base-luma/button-group.tsx +152 -0
  42. package/generated/templates/base-luma/button.tsx +132 -0
  43. package/generated/templates/base-luma/card.tsx +122 -0
  44. package/generated/templates/base-luma/checkbox.tsx +137 -0
  45. package/generated/templates/base-luma/collapsible.tsx +140 -0
  46. package/generated/templates/base-luma/combobox.tsx +1122 -0
  47. package/generated/templates/base-luma/context-menu.tsx +833 -0
  48. package/generated/templates/base-luma/date-picker-lite.tsx +104 -0
  49. package/generated/templates/base-luma/dialog.tsx +350 -0
  50. package/generated/templates/base-luma/direction.tsx +40 -0
  51. package/generated/templates/base-luma/drawer.tsx +427 -0
  52. package/generated/templates/base-luma/dropdown-menu.tsx +862 -0
  53. package/generated/templates/base-luma/empty.tsx +121 -0
  54. package/generated/templates/base-luma/field.tsx +256 -0
  55. package/generated/templates/base-luma/hover-card.tsx +350 -0
  56. package/generated/templates/base-luma/input-group.tsx +171 -0
  57. package/generated/templates/base-luma/input-otp-lite.tsx +96 -0
  58. package/generated/templates/base-luma/input.tsx +39 -0
  59. package/generated/templates/base-luma/item.tsx +265 -0
  60. package/generated/templates/base-luma/kbd.tsx +47 -0
  61. package/generated/templates/base-luma/label.tsx +37 -0
  62. package/generated/templates/base-luma/marker.tsx +134 -0
  63. package/generated/templates/base-luma/menu-default-translucent/combobox.tsx +1123 -0
  64. package/generated/templates/base-luma/menu-default-translucent/context-menu.tsx +834 -0
  65. package/generated/templates/base-luma/menu-default-translucent/dropdown-menu.tsx +863 -0
  66. package/generated/templates/base-luma/menu-default-translucent/menubar.tsx +525 -0
  67. package/generated/templates/base-luma/menu-default-translucent/select.tsx +570 -0
  68. package/generated/templates/base-luma/menu-inverted/combobox.tsx +1123 -0
  69. package/generated/templates/base-luma/menu-inverted/context-menu.tsx +834 -0
  70. package/generated/templates/base-luma/menu-inverted/dropdown-menu.tsx +863 -0
  71. package/generated/templates/base-luma/menu-inverted/menubar.tsx +525 -0
  72. package/generated/templates/base-luma/menu-inverted/select.tsx +570 -0
  73. package/generated/templates/base-luma/menu-inverted-translucent/combobox.tsx +1123 -0
  74. package/generated/templates/base-luma/menu-inverted-translucent/context-menu.tsx +834 -0
  75. package/generated/templates/base-luma/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  76. package/generated/templates/base-luma/menu-inverted-translucent/menubar.tsx +525 -0
  77. package/generated/templates/base-luma/menu-inverted-translucent/select.tsx +570 -0
  78. package/generated/templates/base-luma/menubar.tsx +524 -0
  79. package/generated/templates/base-luma/message.tsx +111 -0
  80. package/generated/templates/base-luma/native-select.tsx +121 -0
  81. package/generated/templates/base-luma/navigation-menu.tsx +598 -0
  82. package/generated/templates/base-luma/pagination.tsx +244 -0
  83. package/generated/templates/base-luma/popover.tsx +375 -0
  84. package/generated/templates/base-luma/progress.tsx +228 -0
  85. package/generated/templates/base-luma/radio-group.tsx +160 -0
  86. package/generated/templates/base-luma/rtl/accordion.tsx +294 -0
  87. package/generated/templates/base-luma/rtl/alert-dialog.tsx +342 -0
  88. package/generated/templates/base-luma/rtl/alert.tsx +96 -0
  89. package/generated/templates/base-luma/rtl/attachment.tsx +275 -0
  90. package/generated/templates/base-luma/rtl/avatar.tsx +166 -0
  91. package/generated/templates/base-luma/rtl/badge.tsx +117 -0
  92. package/generated/templates/base-luma/rtl/breadcrumb.tsx +256 -0
  93. package/generated/templates/base-luma/rtl/bubble.tsx +192 -0
  94. package/generated/templates/base-luma/rtl/button-group.tsx +153 -0
  95. package/generated/templates/base-luma/rtl/button.tsx +133 -0
  96. package/generated/templates/base-luma/rtl/combobox.tsx +1123 -0
  97. package/generated/templates/base-luma/rtl/context-menu.tsx +834 -0
  98. package/generated/templates/base-luma/rtl/date-picker-lite.tsx +105 -0
  99. package/generated/templates/base-luma/rtl/dialog.tsx +351 -0
  100. package/generated/templates/base-luma/rtl/drawer.tsx +428 -0
  101. package/generated/templates/base-luma/rtl/dropdown-menu.tsx +863 -0
  102. package/generated/templates/base-luma/rtl/field.tsx +257 -0
  103. package/generated/templates/base-luma/rtl/hover-card.tsx +351 -0
  104. package/generated/templates/base-luma/rtl/input-group.tsx +172 -0
  105. package/generated/templates/base-luma/rtl/input-otp-lite.tsx +97 -0
  106. package/generated/templates/base-luma/rtl/item.tsx +266 -0
  107. package/generated/templates/base-luma/rtl/marker.tsx +135 -0
  108. package/generated/templates/base-luma/rtl/menubar.tsx +525 -0
  109. package/generated/templates/base-luma/rtl/native-select.tsx +122 -0
  110. package/generated/templates/base-luma/rtl/navigation-menu.tsx +599 -0
  111. package/generated/templates/base-luma/rtl/pagination.tsx +245 -0
  112. package/generated/templates/base-luma/rtl/popover.tsx +376 -0
  113. package/generated/templates/base-luma/rtl/progress.tsx +229 -0
  114. package/generated/templates/base-luma/rtl/radio-group.tsx +161 -0
  115. package/generated/templates/base-luma/rtl/scroll-area.tsx +184 -0
  116. package/generated/templates/base-luma/rtl/select.tsx +570 -0
  117. package/generated/templates/base-luma/rtl/sheet.tsx +332 -0
  118. package/generated/templates/base-luma/rtl/sidebar.tsx +766 -0
  119. package/generated/templates/base-luma/rtl/switch.tsx +107 -0
  120. package/generated/templates/base-luma/rtl/table.tsx +131 -0
  121. package/generated/templates/base-luma/rtl/tabs.tsx +216 -0
  122. package/generated/templates/base-luma/rtl/toast.tsx +814 -0
  123. package/generated/templates/base-luma/rtl/toggle-group.tsx +211 -0
  124. package/generated/templates/base-luma/rtl/toggle.tsx +138 -0
  125. package/generated/templates/base-luma/rtl/tooltip.tsx +398 -0
  126. package/generated/templates/base-luma/rtl_menu-default-translucent/combobox.tsx +1123 -0
  127. package/generated/templates/base-luma/rtl_menu-default-translucent/context-menu.tsx +834 -0
  128. package/generated/templates/base-luma/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  129. package/generated/templates/base-luma/rtl_menu-default-translucent/menubar.tsx +525 -0
  130. package/generated/templates/base-luma/rtl_menu-default-translucent/select.tsx +570 -0
  131. package/generated/templates/base-luma/rtl_menu-inverted/combobox.tsx +1123 -0
  132. package/generated/templates/base-luma/rtl_menu-inverted/context-menu.tsx +834 -0
  133. package/generated/templates/base-luma/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  134. package/generated/templates/base-luma/rtl_menu-inverted/menubar.tsx +525 -0
  135. package/generated/templates/base-luma/rtl_menu-inverted/select.tsx +570 -0
  136. package/generated/templates/base-luma/rtl_menu-inverted-translucent/combobox.tsx +1123 -0
  137. package/generated/templates/base-luma/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  138. package/generated/templates/base-luma/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  139. package/generated/templates/base-luma/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  140. package/generated/templates/base-luma/rtl_menu-inverted-translucent/select.tsx +570 -0
  141. package/generated/templates/base-luma/scroll-area.tsx +183 -0
  142. package/generated/templates/base-luma/select.tsx +569 -0
  143. package/generated/templates/base-luma/separator.tsx +99 -0
  144. package/generated/templates/base-luma/sheet.tsx +331 -0
  145. package/generated/templates/base-luma/sidebar.tsx +765 -0
  146. package/generated/templates/base-luma/skeleton.tsx +34 -0
  147. package/generated/templates/base-luma/slider.tsx +282 -0
  148. package/generated/templates/base-luma/spinner.tsx +74 -0
  149. package/generated/templates/base-luma/switch.tsx +106 -0
  150. package/generated/templates/base-luma/table.tsx +130 -0
  151. package/generated/templates/base-luma/tabs.tsx +215 -0
  152. package/generated/templates/base-luma/textarea.tsx +37 -0
  153. package/generated/templates/base-luma/toast.tsx +813 -0
  154. package/generated/templates/base-luma/toggle-group.tsx +210 -0
  155. package/generated/templates/base-luma/toggle.tsx +137 -0
  156. package/generated/templates/base-luma/tooltip.tsx +397 -0
  157. package/generated/templates/base-lyra/accordion.tsx +290 -0
  158. package/generated/templates/base-lyra/alert-dialog.tsx +341 -0
  159. package/generated/templates/base-lyra/alert.tsx +98 -0
  160. package/generated/templates/base-lyra/aspect-ratio.tsx +43 -0
  161. package/generated/templates/base-lyra/attachment.tsx +274 -0
  162. package/generated/templates/base-lyra/avatar.tsx +165 -0
  163. package/generated/templates/base-lyra/badge.tsx +116 -0
  164. package/generated/templates/base-lyra/breadcrumb.tsx +255 -0
  165. package/generated/templates/base-lyra/bubble.tsx +191 -0
  166. package/generated/templates/base-lyra/button-group.tsx +152 -0
  167. package/generated/templates/base-lyra/button.tsx +132 -0
  168. package/generated/templates/base-lyra/card.tsx +125 -0
  169. package/generated/templates/base-lyra/checkbox.tsx +137 -0
  170. package/generated/templates/base-lyra/collapsible.tsx +140 -0
  171. package/generated/templates/base-lyra/combobox.tsx +1122 -0
  172. package/generated/templates/base-lyra/context-menu.tsx +833 -0
  173. package/generated/templates/base-lyra/date-picker-lite.tsx +104 -0
  174. package/generated/templates/base-lyra/dialog.tsx +350 -0
  175. package/generated/templates/base-lyra/direction.tsx +40 -0
  176. package/generated/templates/base-lyra/drawer.tsx +427 -0
  177. package/generated/templates/base-lyra/dropdown-menu.tsx +862 -0
  178. package/generated/templates/base-lyra/empty.tsx +121 -0
  179. package/generated/templates/base-lyra/field.tsx +256 -0
  180. package/generated/templates/base-lyra/hover-card.tsx +350 -0
  181. package/generated/templates/base-lyra/input-group.tsx +173 -0
  182. package/generated/templates/base-lyra/input-otp-lite.tsx +96 -0
  183. package/generated/templates/base-lyra/input.tsx +39 -0
  184. package/generated/templates/base-lyra/item.tsx +265 -0
  185. package/generated/templates/base-lyra/kbd.tsx +47 -0
  186. package/generated/templates/base-lyra/label.tsx +37 -0
  187. package/generated/templates/base-lyra/marker.tsx +134 -0
  188. package/generated/templates/base-lyra/menu-default-translucent/combobox.tsx +1123 -0
  189. package/generated/templates/base-lyra/menu-default-translucent/context-menu.tsx +834 -0
  190. package/generated/templates/base-lyra/menu-default-translucent/dropdown-menu.tsx +863 -0
  191. package/generated/templates/base-lyra/menu-default-translucent/menubar.tsx +525 -0
  192. package/generated/templates/base-lyra/menu-default-translucent/select.tsx +567 -0
  193. package/generated/templates/base-lyra/menu-inverted/combobox.tsx +1123 -0
  194. package/generated/templates/base-lyra/menu-inverted/context-menu.tsx +834 -0
  195. package/generated/templates/base-lyra/menu-inverted/dropdown-menu.tsx +863 -0
  196. package/generated/templates/base-lyra/menu-inverted/menubar.tsx +525 -0
  197. package/generated/templates/base-lyra/menu-inverted/select.tsx +567 -0
  198. package/generated/templates/base-lyra/menu-inverted-translucent/combobox.tsx +1123 -0
  199. package/generated/templates/base-lyra/menu-inverted-translucent/context-menu.tsx +834 -0
  200. package/generated/templates/base-lyra/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  201. package/generated/templates/base-lyra/menu-inverted-translucent/menubar.tsx +525 -0
  202. package/generated/templates/base-lyra/menu-inverted-translucent/select.tsx +567 -0
  203. package/generated/templates/base-lyra/menubar.tsx +524 -0
  204. package/generated/templates/base-lyra/message.tsx +111 -0
  205. package/generated/templates/base-lyra/native-select.tsx +121 -0
  206. package/generated/templates/base-lyra/navigation-menu.tsx +598 -0
  207. package/generated/templates/base-lyra/pagination.tsx +244 -0
  208. package/generated/templates/base-lyra/popover.tsx +375 -0
  209. package/generated/templates/base-lyra/progress.tsx +228 -0
  210. package/generated/templates/base-lyra/radio-group.tsx +160 -0
  211. package/generated/templates/base-lyra/rtl/accordion.tsx +291 -0
  212. package/generated/templates/base-lyra/rtl/alert-dialog.tsx +342 -0
  213. package/generated/templates/base-lyra/rtl/alert.tsx +99 -0
  214. package/generated/templates/base-lyra/rtl/attachment.tsx +275 -0
  215. package/generated/templates/base-lyra/rtl/avatar.tsx +166 -0
  216. package/generated/templates/base-lyra/rtl/badge.tsx +117 -0
  217. package/generated/templates/base-lyra/rtl/breadcrumb.tsx +256 -0
  218. package/generated/templates/base-lyra/rtl/bubble.tsx +192 -0
  219. package/generated/templates/base-lyra/rtl/button-group.tsx +153 -0
  220. package/generated/templates/base-lyra/rtl/button.tsx +133 -0
  221. package/generated/templates/base-lyra/rtl/combobox.tsx +1123 -0
  222. package/generated/templates/base-lyra/rtl/context-menu.tsx +834 -0
  223. package/generated/templates/base-lyra/rtl/date-picker-lite.tsx +105 -0
  224. package/generated/templates/base-lyra/rtl/dialog.tsx +351 -0
  225. package/generated/templates/base-lyra/rtl/drawer.tsx +428 -0
  226. package/generated/templates/base-lyra/rtl/dropdown-menu.tsx +863 -0
  227. package/generated/templates/base-lyra/rtl/field.tsx +257 -0
  228. package/generated/templates/base-lyra/rtl/hover-card.tsx +351 -0
  229. package/generated/templates/base-lyra/rtl/input-group.tsx +174 -0
  230. package/generated/templates/base-lyra/rtl/input-otp-lite.tsx +97 -0
  231. package/generated/templates/base-lyra/rtl/item.tsx +266 -0
  232. package/generated/templates/base-lyra/rtl/marker.tsx +135 -0
  233. package/generated/templates/base-lyra/rtl/menubar.tsx +525 -0
  234. package/generated/templates/base-lyra/rtl/native-select.tsx +122 -0
  235. package/generated/templates/base-lyra/rtl/navigation-menu.tsx +599 -0
  236. package/generated/templates/base-lyra/rtl/pagination.tsx +245 -0
  237. package/generated/templates/base-lyra/rtl/popover.tsx +376 -0
  238. package/generated/templates/base-lyra/rtl/progress.tsx +229 -0
  239. package/generated/templates/base-lyra/rtl/radio-group.tsx +161 -0
  240. package/generated/templates/base-lyra/rtl/scroll-area.tsx +184 -0
  241. package/generated/templates/base-lyra/rtl/select.tsx +567 -0
  242. package/generated/templates/base-lyra/rtl/sheet.tsx +329 -0
  243. package/generated/templates/base-lyra/rtl/sidebar.tsx +766 -0
  244. package/generated/templates/base-lyra/rtl/switch.tsx +107 -0
  245. package/generated/templates/base-lyra/rtl/table.tsx +131 -0
  246. package/generated/templates/base-lyra/rtl/tabs.tsx +216 -0
  247. package/generated/templates/base-lyra/rtl/toast.tsx +814 -0
  248. package/generated/templates/base-lyra/rtl/toggle-group.tsx +211 -0
  249. package/generated/templates/base-lyra/rtl/toggle.tsx +138 -0
  250. package/generated/templates/base-lyra/rtl/tooltip.tsx +398 -0
  251. package/generated/templates/base-lyra/rtl_menu-default-translucent/combobox.tsx +1123 -0
  252. package/generated/templates/base-lyra/rtl_menu-default-translucent/context-menu.tsx +834 -0
  253. package/generated/templates/base-lyra/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  254. package/generated/templates/base-lyra/rtl_menu-default-translucent/menubar.tsx +525 -0
  255. package/generated/templates/base-lyra/rtl_menu-default-translucent/select.tsx +567 -0
  256. package/generated/templates/base-lyra/rtl_menu-inverted/combobox.tsx +1123 -0
  257. package/generated/templates/base-lyra/rtl_menu-inverted/context-menu.tsx +834 -0
  258. package/generated/templates/base-lyra/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  259. package/generated/templates/base-lyra/rtl_menu-inverted/menubar.tsx +525 -0
  260. package/generated/templates/base-lyra/rtl_menu-inverted/select.tsx +567 -0
  261. package/generated/templates/base-lyra/rtl_menu-inverted-translucent/combobox.tsx +1123 -0
  262. package/generated/templates/base-lyra/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  263. package/generated/templates/base-lyra/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  264. package/generated/templates/base-lyra/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  265. package/generated/templates/base-lyra/rtl_menu-inverted-translucent/select.tsx +567 -0
  266. package/generated/templates/base-lyra/scroll-area.tsx +183 -0
  267. package/generated/templates/base-lyra/select.tsx +566 -0
  268. package/generated/templates/base-lyra/separator.tsx +99 -0
  269. package/generated/templates/base-lyra/sheet.tsx +328 -0
  270. package/generated/templates/base-lyra/sidebar.tsx +765 -0
  271. package/generated/templates/base-lyra/skeleton.tsx +34 -0
  272. package/generated/templates/base-lyra/slider.tsx +282 -0
  273. package/generated/templates/base-lyra/spinner.tsx +74 -0
  274. package/generated/templates/base-lyra/switch.tsx +106 -0
  275. package/generated/templates/base-lyra/table.tsx +130 -0
  276. package/generated/templates/base-lyra/tabs.tsx +215 -0
  277. package/generated/templates/base-lyra/textarea.tsx +37 -0
  278. package/generated/templates/base-lyra/toast.tsx +813 -0
  279. package/generated/templates/base-lyra/toggle-group.tsx +210 -0
  280. package/generated/templates/base-lyra/toggle.tsx +137 -0
  281. package/generated/templates/base-lyra/tooltip.tsx +397 -0
  282. package/generated/templates/base-maia/accordion.tsx +293 -0
  283. package/generated/templates/base-maia/alert-dialog.tsx +341 -0
  284. package/generated/templates/base-maia/alert.tsx +95 -0
  285. package/generated/templates/base-maia/aspect-ratio.tsx +43 -0
  286. package/generated/templates/base-maia/attachment.tsx +274 -0
  287. package/generated/templates/base-maia/avatar.tsx +165 -0
  288. package/generated/templates/base-maia/badge.tsx +116 -0
  289. package/generated/templates/base-maia/breadcrumb.tsx +255 -0
  290. package/generated/templates/base-maia/bubble.tsx +191 -0
  291. package/generated/templates/base-maia/button-group.tsx +152 -0
  292. package/generated/templates/base-maia/button.tsx +132 -0
  293. package/generated/templates/base-maia/card.tsx +122 -0
  294. package/generated/templates/base-maia/checkbox.tsx +137 -0
  295. package/generated/templates/base-maia/collapsible.tsx +140 -0
  296. package/generated/templates/base-maia/combobox.tsx +1122 -0
  297. package/generated/templates/base-maia/context-menu.tsx +833 -0
  298. package/generated/templates/base-maia/date-picker-lite.tsx +104 -0
  299. package/generated/templates/base-maia/dialog.tsx +350 -0
  300. package/generated/templates/base-maia/direction.tsx +40 -0
  301. package/generated/templates/base-maia/drawer.tsx +427 -0
  302. package/generated/templates/base-maia/dropdown-menu.tsx +862 -0
  303. package/generated/templates/base-maia/empty.tsx +121 -0
  304. package/generated/templates/base-maia/field.tsx +256 -0
  305. package/generated/templates/base-maia/hover-card.tsx +350 -0
  306. package/generated/templates/base-maia/input-group.tsx +173 -0
  307. package/generated/templates/base-maia/input-otp-lite.tsx +96 -0
  308. package/generated/templates/base-maia/input.tsx +39 -0
  309. package/generated/templates/base-maia/item.tsx +265 -0
  310. package/generated/templates/base-maia/kbd.tsx +47 -0
  311. package/generated/templates/base-maia/label.tsx +37 -0
  312. package/generated/templates/base-maia/marker.tsx +134 -0
  313. package/generated/templates/base-maia/menu-default-translucent/combobox.tsx +1123 -0
  314. package/generated/templates/base-maia/menu-default-translucent/context-menu.tsx +834 -0
  315. package/generated/templates/base-maia/menu-default-translucent/dropdown-menu.tsx +863 -0
  316. package/generated/templates/base-maia/menu-default-translucent/menubar.tsx +525 -0
  317. package/generated/templates/base-maia/menu-default-translucent/select.tsx +570 -0
  318. package/generated/templates/base-maia/menu-inverted/combobox.tsx +1123 -0
  319. package/generated/templates/base-maia/menu-inverted/context-menu.tsx +834 -0
  320. package/generated/templates/base-maia/menu-inverted/dropdown-menu.tsx +863 -0
  321. package/generated/templates/base-maia/menu-inverted/menubar.tsx +525 -0
  322. package/generated/templates/base-maia/menu-inverted/select.tsx +570 -0
  323. package/generated/templates/base-maia/menu-inverted-translucent/combobox.tsx +1123 -0
  324. package/generated/templates/base-maia/menu-inverted-translucent/context-menu.tsx +834 -0
  325. package/generated/templates/base-maia/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  326. package/generated/templates/base-maia/menu-inverted-translucent/menubar.tsx +525 -0
  327. package/generated/templates/base-maia/menu-inverted-translucent/select.tsx +570 -0
  328. package/generated/templates/base-maia/menubar.tsx +524 -0
  329. package/generated/templates/base-maia/message.tsx +111 -0
  330. package/generated/templates/base-maia/native-select.tsx +121 -0
  331. package/generated/templates/base-maia/navigation-menu.tsx +598 -0
  332. package/generated/templates/base-maia/pagination.tsx +244 -0
  333. package/generated/templates/base-maia/popover.tsx +375 -0
  334. package/generated/templates/base-maia/progress.tsx +228 -0
  335. package/generated/templates/base-maia/radio-group.tsx +160 -0
  336. package/generated/templates/base-maia/rtl/accordion.tsx +294 -0
  337. package/generated/templates/base-maia/rtl/alert-dialog.tsx +342 -0
  338. package/generated/templates/base-maia/rtl/alert.tsx +96 -0
  339. package/generated/templates/base-maia/rtl/attachment.tsx +275 -0
  340. package/generated/templates/base-maia/rtl/avatar.tsx +166 -0
  341. package/generated/templates/base-maia/rtl/badge.tsx +117 -0
  342. package/generated/templates/base-maia/rtl/breadcrumb.tsx +256 -0
  343. package/generated/templates/base-maia/rtl/bubble.tsx +192 -0
  344. package/generated/templates/base-maia/rtl/button-group.tsx +153 -0
  345. package/generated/templates/base-maia/rtl/button.tsx +133 -0
  346. package/generated/templates/base-maia/rtl/combobox.tsx +1123 -0
  347. package/generated/templates/base-maia/rtl/context-menu.tsx +834 -0
  348. package/generated/templates/base-maia/rtl/date-picker-lite.tsx +105 -0
  349. package/generated/templates/base-maia/rtl/dialog.tsx +351 -0
  350. package/generated/templates/base-maia/rtl/drawer.tsx +428 -0
  351. package/generated/templates/base-maia/rtl/dropdown-menu.tsx +863 -0
  352. package/generated/templates/base-maia/rtl/field.tsx +257 -0
  353. package/generated/templates/base-maia/rtl/hover-card.tsx +351 -0
  354. package/generated/templates/base-maia/rtl/input-group.tsx +174 -0
  355. package/generated/templates/base-maia/rtl/input-otp-lite.tsx +97 -0
  356. package/generated/templates/base-maia/rtl/item.tsx +266 -0
  357. package/generated/templates/base-maia/rtl/marker.tsx +135 -0
  358. package/generated/templates/base-maia/rtl/menubar.tsx +525 -0
  359. package/generated/templates/base-maia/rtl/native-select.tsx +122 -0
  360. package/generated/templates/base-maia/rtl/navigation-menu.tsx +599 -0
  361. package/generated/templates/base-maia/rtl/pagination.tsx +245 -0
  362. package/generated/templates/base-maia/rtl/popover.tsx +376 -0
  363. package/generated/templates/base-maia/rtl/progress.tsx +229 -0
  364. package/generated/templates/base-maia/rtl/radio-group.tsx +161 -0
  365. package/generated/templates/base-maia/rtl/scroll-area.tsx +184 -0
  366. package/generated/templates/base-maia/rtl/select.tsx +570 -0
  367. package/generated/templates/base-maia/rtl/sheet.tsx +332 -0
  368. package/generated/templates/base-maia/rtl/sidebar.tsx +766 -0
  369. package/generated/templates/base-maia/rtl/switch.tsx +107 -0
  370. package/generated/templates/base-maia/rtl/table.tsx +131 -0
  371. package/generated/templates/base-maia/rtl/tabs.tsx +216 -0
  372. package/generated/templates/base-maia/rtl/toast.tsx +814 -0
  373. package/generated/templates/base-maia/rtl/toggle-group.tsx +211 -0
  374. package/generated/templates/base-maia/rtl/toggle.tsx +138 -0
  375. package/generated/templates/base-maia/rtl/tooltip.tsx +398 -0
  376. package/generated/templates/base-maia/rtl_menu-default-translucent/combobox.tsx +1123 -0
  377. package/generated/templates/base-maia/rtl_menu-default-translucent/context-menu.tsx +834 -0
  378. package/generated/templates/base-maia/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  379. package/generated/templates/base-maia/rtl_menu-default-translucent/menubar.tsx +525 -0
  380. package/generated/templates/base-maia/rtl_menu-default-translucent/select.tsx +570 -0
  381. package/generated/templates/base-maia/rtl_menu-inverted/combobox.tsx +1123 -0
  382. package/generated/templates/base-maia/rtl_menu-inverted/context-menu.tsx +834 -0
  383. package/generated/templates/base-maia/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  384. package/generated/templates/base-maia/rtl_menu-inverted/menubar.tsx +525 -0
  385. package/generated/templates/base-maia/rtl_menu-inverted/select.tsx +570 -0
  386. package/generated/templates/base-maia/rtl_menu-inverted-translucent/combobox.tsx +1123 -0
  387. package/generated/templates/base-maia/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  388. package/generated/templates/base-maia/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  389. package/generated/templates/base-maia/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  390. package/generated/templates/base-maia/rtl_menu-inverted-translucent/select.tsx +570 -0
  391. package/generated/templates/base-maia/scroll-area.tsx +183 -0
  392. package/generated/templates/base-maia/select.tsx +569 -0
  393. package/generated/templates/base-maia/separator.tsx +99 -0
  394. package/generated/templates/base-maia/sheet.tsx +331 -0
  395. package/generated/templates/base-maia/sidebar.tsx +765 -0
  396. package/generated/templates/base-maia/skeleton.tsx +34 -0
  397. package/generated/templates/base-maia/slider.tsx +282 -0
  398. package/generated/templates/base-maia/spinner.tsx +74 -0
  399. package/generated/templates/base-maia/switch.tsx +106 -0
  400. package/generated/templates/base-maia/table.tsx +130 -0
  401. package/generated/templates/base-maia/tabs.tsx +215 -0
  402. package/generated/templates/base-maia/textarea.tsx +37 -0
  403. package/generated/templates/base-maia/toast.tsx +813 -0
  404. package/generated/templates/base-maia/toggle-group.tsx +210 -0
  405. package/generated/templates/base-maia/toggle.tsx +137 -0
  406. package/generated/templates/base-maia/tooltip.tsx +397 -0
  407. package/generated/templates/base-mira/accordion.tsx +293 -0
  408. package/generated/templates/base-mira/alert-dialog.tsx +341 -0
  409. package/generated/templates/base-mira/alert.tsx +95 -0
  410. package/generated/templates/base-mira/aspect-ratio.tsx +43 -0
  411. package/generated/templates/base-mira/attachment.tsx +274 -0
  412. package/generated/templates/base-mira/avatar.tsx +165 -0
  413. package/generated/templates/base-mira/badge.tsx +116 -0
  414. package/generated/templates/base-mira/breadcrumb.tsx +255 -0
  415. package/generated/templates/base-mira/bubble.tsx +191 -0
  416. package/generated/templates/base-mira/button-group.tsx +152 -0
  417. package/generated/templates/base-mira/button.tsx +132 -0
  418. package/generated/templates/base-mira/card.tsx +122 -0
  419. package/generated/templates/base-mira/checkbox.tsx +137 -0
  420. package/generated/templates/base-mira/collapsible.tsx +140 -0
  421. package/generated/templates/base-mira/combobox.tsx +1122 -0
  422. package/generated/templates/base-mira/context-menu.tsx +833 -0
  423. package/generated/templates/base-mira/date-picker-lite.tsx +104 -0
  424. package/generated/templates/base-mira/dialog.tsx +350 -0
  425. package/generated/templates/base-mira/direction.tsx +40 -0
  426. package/generated/templates/base-mira/drawer.tsx +427 -0
  427. package/generated/templates/base-mira/dropdown-menu.tsx +862 -0
  428. package/generated/templates/base-mira/empty.tsx +121 -0
  429. package/generated/templates/base-mira/field.tsx +256 -0
  430. package/generated/templates/base-mira/hover-card.tsx +350 -0
  431. package/generated/templates/base-mira/input-group.tsx +173 -0
  432. package/generated/templates/base-mira/input-otp-lite.tsx +96 -0
  433. package/generated/templates/base-mira/input.tsx +39 -0
  434. package/generated/templates/base-mira/item.tsx +265 -0
  435. package/generated/templates/base-mira/kbd.tsx +47 -0
  436. package/generated/templates/base-mira/label.tsx +37 -0
  437. package/generated/templates/base-mira/marker.tsx +134 -0
  438. package/generated/templates/base-mira/menu-default-translucent/combobox.tsx +1123 -0
  439. package/generated/templates/base-mira/menu-default-translucent/context-menu.tsx +834 -0
  440. package/generated/templates/base-mira/menu-default-translucent/dropdown-menu.tsx +863 -0
  441. package/generated/templates/base-mira/menu-default-translucent/menubar.tsx +525 -0
  442. package/generated/templates/base-mira/menu-default-translucent/select.tsx +570 -0
  443. package/generated/templates/base-mira/menu-inverted/combobox.tsx +1123 -0
  444. package/generated/templates/base-mira/menu-inverted/context-menu.tsx +834 -0
  445. package/generated/templates/base-mira/menu-inverted/dropdown-menu.tsx +863 -0
  446. package/generated/templates/base-mira/menu-inverted/menubar.tsx +525 -0
  447. package/generated/templates/base-mira/menu-inverted/select.tsx +570 -0
  448. package/generated/templates/base-mira/menu-inverted-translucent/combobox.tsx +1123 -0
  449. package/generated/templates/base-mira/menu-inverted-translucent/context-menu.tsx +834 -0
  450. package/generated/templates/base-mira/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  451. package/generated/templates/base-mira/menu-inverted-translucent/menubar.tsx +525 -0
  452. package/generated/templates/base-mira/menu-inverted-translucent/select.tsx +570 -0
  453. package/generated/templates/base-mira/menubar.tsx +524 -0
  454. package/generated/templates/base-mira/message.tsx +111 -0
  455. package/generated/templates/base-mira/native-select.tsx +121 -0
  456. package/generated/templates/base-mira/navigation-menu.tsx +598 -0
  457. package/generated/templates/base-mira/pagination.tsx +244 -0
  458. package/generated/templates/base-mira/popover.tsx +375 -0
  459. package/generated/templates/base-mira/progress.tsx +228 -0
  460. package/generated/templates/base-mira/radio-group.tsx +160 -0
  461. package/generated/templates/base-mira/rtl/accordion.tsx +294 -0
  462. package/generated/templates/base-mira/rtl/alert-dialog.tsx +342 -0
  463. package/generated/templates/base-mira/rtl/alert.tsx +96 -0
  464. package/generated/templates/base-mira/rtl/attachment.tsx +275 -0
  465. package/generated/templates/base-mira/rtl/avatar.tsx +166 -0
  466. package/generated/templates/base-mira/rtl/badge.tsx +117 -0
  467. package/generated/templates/base-mira/rtl/breadcrumb.tsx +256 -0
  468. package/generated/templates/base-mira/rtl/bubble.tsx +192 -0
  469. package/generated/templates/base-mira/rtl/button-group.tsx +153 -0
  470. package/generated/templates/base-mira/rtl/button.tsx +133 -0
  471. package/generated/templates/base-mira/rtl/combobox.tsx +1123 -0
  472. package/generated/templates/base-mira/rtl/context-menu.tsx +834 -0
  473. package/generated/templates/base-mira/rtl/date-picker-lite.tsx +105 -0
  474. package/generated/templates/base-mira/rtl/dialog.tsx +351 -0
  475. package/generated/templates/base-mira/rtl/drawer.tsx +428 -0
  476. package/generated/templates/base-mira/rtl/dropdown-menu.tsx +863 -0
  477. package/generated/templates/base-mira/rtl/field.tsx +257 -0
  478. package/generated/templates/base-mira/rtl/hover-card.tsx +351 -0
  479. package/generated/templates/base-mira/rtl/input-group.tsx +174 -0
  480. package/generated/templates/base-mira/rtl/input-otp-lite.tsx +97 -0
  481. package/generated/templates/base-mira/rtl/item.tsx +266 -0
  482. package/generated/templates/base-mira/rtl/marker.tsx +135 -0
  483. package/generated/templates/base-mira/rtl/menubar.tsx +525 -0
  484. package/generated/templates/base-mira/rtl/native-select.tsx +122 -0
  485. package/generated/templates/base-mira/rtl/navigation-menu.tsx +599 -0
  486. package/generated/templates/base-mira/rtl/pagination.tsx +245 -0
  487. package/generated/templates/base-mira/rtl/popover.tsx +376 -0
  488. package/generated/templates/base-mira/rtl/progress.tsx +229 -0
  489. package/generated/templates/base-mira/rtl/radio-group.tsx +161 -0
  490. package/generated/templates/base-mira/rtl/scroll-area.tsx +184 -0
  491. package/generated/templates/base-mira/rtl/select.tsx +570 -0
  492. package/generated/templates/base-mira/rtl/sheet.tsx +329 -0
  493. package/generated/templates/base-mira/rtl/sidebar.tsx +766 -0
  494. package/generated/templates/base-mira/rtl/switch.tsx +107 -0
  495. package/generated/templates/base-mira/rtl/table.tsx +131 -0
  496. package/generated/templates/base-mira/rtl/tabs.tsx +216 -0
  497. package/generated/templates/base-mira/rtl/toast.tsx +814 -0
  498. package/generated/templates/base-mira/rtl/toggle-group.tsx +211 -0
  499. package/generated/templates/base-mira/rtl/toggle.tsx +138 -0
  500. package/generated/templates/base-mira/rtl/tooltip.tsx +398 -0
  501. package/generated/templates/base-mira/rtl_menu-default-translucent/combobox.tsx +1123 -0
  502. package/generated/templates/base-mira/rtl_menu-default-translucent/context-menu.tsx +834 -0
  503. package/generated/templates/base-mira/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  504. package/generated/templates/base-mira/rtl_menu-default-translucent/menubar.tsx +525 -0
  505. package/generated/templates/base-mira/rtl_menu-default-translucent/select.tsx +570 -0
  506. package/generated/templates/base-mira/rtl_menu-inverted/combobox.tsx +1123 -0
  507. package/generated/templates/base-mira/rtl_menu-inverted/context-menu.tsx +834 -0
  508. package/generated/templates/base-mira/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  509. package/generated/templates/base-mira/rtl_menu-inverted/menubar.tsx +525 -0
  510. package/generated/templates/base-mira/rtl_menu-inverted/select.tsx +570 -0
  511. package/generated/templates/base-mira/rtl_menu-inverted-translucent/combobox.tsx +1123 -0
  512. package/generated/templates/base-mira/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  513. package/generated/templates/base-mira/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  514. package/generated/templates/base-mira/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  515. package/generated/templates/base-mira/rtl_menu-inverted-translucent/select.tsx +570 -0
  516. package/generated/templates/base-mira/scroll-area.tsx +183 -0
  517. package/generated/templates/base-mira/select.tsx +569 -0
  518. package/generated/templates/base-mira/separator.tsx +99 -0
  519. package/generated/templates/base-mira/sheet.tsx +328 -0
  520. package/generated/templates/base-mira/sidebar.tsx +765 -0
  521. package/generated/templates/base-mira/skeleton.tsx +34 -0
  522. package/generated/templates/base-mira/slider.tsx +282 -0
  523. package/generated/templates/base-mira/spinner.tsx +74 -0
  524. package/generated/templates/base-mira/switch.tsx +106 -0
  525. package/generated/templates/base-mira/table.tsx +130 -0
  526. package/generated/templates/base-mira/tabs.tsx +215 -0
  527. package/generated/templates/base-mira/textarea.tsx +37 -0
  528. package/generated/templates/base-mira/toast.tsx +813 -0
  529. package/generated/templates/base-mira/toggle-group.tsx +210 -0
  530. package/generated/templates/base-mira/toggle.tsx +137 -0
  531. package/generated/templates/base-mira/tooltip.tsx +397 -0
  532. package/generated/templates/base-nova/accordion.tsx +290 -0
  533. package/generated/templates/base-nova/alert-dialog.tsx +341 -0
  534. package/generated/templates/base-nova/alert.tsx +95 -0
  535. package/generated/templates/base-nova/aspect-ratio.tsx +43 -0
  536. package/generated/templates/base-nova/attachment.tsx +274 -0
  537. package/generated/templates/base-nova/avatar.tsx +165 -0
  538. package/generated/templates/base-nova/badge.tsx +116 -0
  539. package/generated/templates/base-nova/breadcrumb.tsx +255 -0
  540. package/generated/templates/base-nova/bubble.tsx +191 -0
  541. package/generated/templates/base-nova/button-group.tsx +152 -0
  542. package/generated/templates/base-nova/button.tsx +134 -0
  543. package/generated/templates/base-nova/card.tsx +125 -0
  544. package/generated/templates/base-nova/checkbox.tsx +137 -0
  545. package/generated/templates/base-nova/collapsible.tsx +140 -0
  546. package/generated/templates/base-nova/combobox.tsx +1122 -0
  547. package/generated/templates/base-nova/context-menu.tsx +833 -0
  548. package/generated/templates/base-nova/date-picker-lite.tsx +104 -0
  549. package/generated/templates/base-nova/dialog.tsx +350 -0
  550. package/generated/templates/base-nova/direction.tsx +40 -0
  551. package/generated/templates/base-nova/drawer.tsx +427 -0
  552. package/generated/templates/base-nova/dropdown-menu.tsx +862 -0
  553. package/generated/templates/base-nova/empty.tsx +121 -0
  554. package/generated/templates/base-nova/field.tsx +256 -0
  555. package/generated/templates/base-nova/hover-card.tsx +350 -0
  556. package/generated/templates/base-nova/input-group.tsx +174 -0
  557. package/generated/templates/base-nova/input-otp-lite.tsx +96 -0
  558. package/generated/templates/base-nova/input.tsx +39 -0
  559. package/generated/templates/base-nova/item.tsx +265 -0
  560. package/generated/templates/base-nova/kbd.tsx +47 -0
  561. package/generated/templates/base-nova/label.tsx +37 -0
  562. package/generated/templates/base-nova/marker.tsx +134 -0
  563. package/generated/templates/base-nova/menu-default-translucent/combobox.tsx +1123 -0
  564. package/generated/templates/base-nova/menu-default-translucent/context-menu.tsx +834 -0
  565. package/generated/templates/base-nova/menu-default-translucent/dropdown-menu.tsx +863 -0
  566. package/generated/templates/base-nova/menu-default-translucent/menubar.tsx +525 -0
  567. package/generated/templates/base-nova/menu-default-translucent/select.tsx +570 -0
  568. package/generated/templates/base-nova/menu-inverted/combobox.tsx +1123 -0
  569. package/generated/templates/base-nova/menu-inverted/context-menu.tsx +834 -0
  570. package/generated/templates/base-nova/menu-inverted/dropdown-menu.tsx +863 -0
  571. package/generated/templates/base-nova/menu-inverted/menubar.tsx +525 -0
  572. package/generated/templates/base-nova/menu-inverted/select.tsx +570 -0
  573. package/generated/templates/base-nova/menu-inverted-translucent/combobox.tsx +1123 -0
  574. package/generated/templates/base-nova/menu-inverted-translucent/context-menu.tsx +834 -0
  575. package/generated/templates/base-nova/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  576. package/generated/templates/base-nova/menu-inverted-translucent/menubar.tsx +525 -0
  577. package/generated/templates/base-nova/menu-inverted-translucent/select.tsx +570 -0
  578. package/generated/templates/base-nova/menubar.tsx +524 -0
  579. package/generated/templates/base-nova/message.tsx +111 -0
  580. package/generated/templates/base-nova/native-select.tsx +121 -0
  581. package/generated/templates/base-nova/navigation-menu.tsx +598 -0
  582. package/generated/templates/base-nova/pagination.tsx +244 -0
  583. package/generated/templates/base-nova/popover.tsx +375 -0
  584. package/generated/templates/base-nova/progress.tsx +228 -0
  585. package/generated/templates/base-nova/radio-group.tsx +160 -0
  586. package/generated/templates/base-nova/rtl/accordion.tsx +291 -0
  587. package/generated/templates/base-nova/rtl/alert-dialog.tsx +342 -0
  588. package/generated/templates/base-nova/rtl/alert.tsx +96 -0
  589. package/generated/templates/base-nova/rtl/attachment.tsx +275 -0
  590. package/generated/templates/base-nova/rtl/avatar.tsx +166 -0
  591. package/generated/templates/base-nova/rtl/badge.tsx +117 -0
  592. package/generated/templates/base-nova/rtl/breadcrumb.tsx +256 -0
  593. package/generated/templates/base-nova/rtl/bubble.tsx +192 -0
  594. package/generated/templates/base-nova/rtl/button-group.tsx +153 -0
  595. package/generated/templates/base-nova/rtl/button.tsx +135 -0
  596. package/generated/templates/base-nova/rtl/combobox.tsx +1123 -0
  597. package/generated/templates/base-nova/rtl/context-menu.tsx +834 -0
  598. package/generated/templates/base-nova/rtl/date-picker-lite.tsx +105 -0
  599. package/generated/templates/base-nova/rtl/dialog.tsx +351 -0
  600. package/generated/templates/base-nova/rtl/drawer.tsx +428 -0
  601. package/generated/templates/base-nova/rtl/dropdown-menu.tsx +863 -0
  602. package/generated/templates/base-nova/rtl/field.tsx +257 -0
  603. package/generated/templates/base-nova/rtl/hover-card.tsx +351 -0
  604. package/generated/templates/base-nova/rtl/input-group.tsx +175 -0
  605. package/generated/templates/base-nova/rtl/input-otp-lite.tsx +97 -0
  606. package/generated/templates/base-nova/rtl/item.tsx +266 -0
  607. package/generated/templates/base-nova/rtl/marker.tsx +135 -0
  608. package/generated/templates/base-nova/rtl/menubar.tsx +525 -0
  609. package/generated/templates/base-nova/rtl/native-select.tsx +122 -0
  610. package/generated/templates/base-nova/rtl/navigation-menu.tsx +599 -0
  611. package/generated/templates/base-nova/rtl/pagination.tsx +245 -0
  612. package/generated/templates/base-nova/rtl/popover.tsx +376 -0
  613. package/generated/templates/base-nova/rtl/progress.tsx +229 -0
  614. package/generated/templates/base-nova/rtl/radio-group.tsx +161 -0
  615. package/generated/templates/base-nova/rtl/scroll-area.tsx +184 -0
  616. package/generated/templates/base-nova/rtl/select.tsx +570 -0
  617. package/generated/templates/base-nova/rtl/sheet.tsx +332 -0
  618. package/generated/templates/base-nova/rtl/sidebar.tsx +763 -0
  619. package/generated/templates/base-nova/rtl/switch.tsx +107 -0
  620. package/generated/templates/base-nova/rtl/table.tsx +131 -0
  621. package/generated/templates/base-nova/rtl/tabs.tsx +216 -0
  622. package/generated/templates/base-nova/rtl/toast.tsx +814 -0
  623. package/generated/templates/base-nova/rtl/toggle-group.tsx +211 -0
  624. package/generated/templates/base-nova/rtl/toggle.tsx +138 -0
  625. package/generated/templates/base-nova/rtl/tooltip.tsx +398 -0
  626. package/generated/templates/base-nova/rtl_menu-default-translucent/combobox.tsx +1123 -0
  627. package/generated/templates/base-nova/rtl_menu-default-translucent/context-menu.tsx +834 -0
  628. package/generated/templates/base-nova/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  629. package/generated/templates/base-nova/rtl_menu-default-translucent/menubar.tsx +525 -0
  630. package/generated/templates/base-nova/rtl_menu-default-translucent/select.tsx +570 -0
  631. package/generated/templates/base-nova/rtl_menu-inverted/combobox.tsx +1123 -0
  632. package/generated/templates/base-nova/rtl_menu-inverted/context-menu.tsx +834 -0
  633. package/generated/templates/base-nova/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  634. package/generated/templates/base-nova/rtl_menu-inverted/menubar.tsx +525 -0
  635. package/generated/templates/base-nova/rtl_menu-inverted/select.tsx +570 -0
  636. package/generated/templates/base-nova/rtl_menu-inverted-translucent/combobox.tsx +1123 -0
  637. package/generated/templates/base-nova/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  638. package/generated/templates/base-nova/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  639. package/generated/templates/base-nova/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  640. package/generated/templates/base-nova/rtl_menu-inverted-translucent/select.tsx +570 -0
  641. package/generated/templates/base-nova/scroll-area.tsx +183 -0
  642. package/generated/templates/base-nova/select.tsx +569 -0
  643. package/generated/templates/base-nova/separator.tsx +99 -0
  644. package/generated/templates/base-nova/sheet.tsx +331 -0
  645. package/generated/templates/base-nova/sidebar.tsx +762 -0
  646. package/generated/templates/base-nova/skeleton.tsx +34 -0
  647. package/generated/templates/base-nova/slider.tsx +282 -0
  648. package/generated/templates/base-nova/spinner.tsx +74 -0
  649. package/generated/templates/base-nova/switch.tsx +106 -0
  650. package/generated/templates/base-nova/table.tsx +130 -0
  651. package/generated/templates/base-nova/tabs.tsx +215 -0
  652. package/generated/templates/base-nova/textarea.tsx +37 -0
  653. package/generated/templates/base-nova/toast.tsx +813 -0
  654. package/generated/templates/base-nova/toggle-group.tsx +210 -0
  655. package/generated/templates/base-nova/toggle.tsx +137 -0
  656. package/generated/templates/base-nova/tooltip.tsx +397 -0
  657. package/generated/templates/base-rhea/accordion.tsx +293 -0
  658. package/generated/templates/base-rhea/alert-dialog.tsx +341 -0
  659. package/generated/templates/base-rhea/alert.tsx +95 -0
  660. package/generated/templates/base-rhea/aspect-ratio.tsx +43 -0
  661. package/generated/templates/base-rhea/attachment.tsx +274 -0
  662. package/generated/templates/base-rhea/avatar.tsx +165 -0
  663. package/generated/templates/base-rhea/badge.tsx +116 -0
  664. package/generated/templates/base-rhea/breadcrumb.tsx +255 -0
  665. package/generated/templates/base-rhea/bubble.tsx +191 -0
  666. package/generated/templates/base-rhea/button-group.tsx +152 -0
  667. package/generated/templates/base-rhea/button.tsx +132 -0
  668. package/generated/templates/base-rhea/card.tsx +122 -0
  669. package/generated/templates/base-rhea/checkbox.tsx +137 -0
  670. package/generated/templates/base-rhea/collapsible.tsx +140 -0
  671. package/generated/templates/base-rhea/combobox.tsx +1122 -0
  672. package/generated/templates/base-rhea/context-menu.tsx +833 -0
  673. package/generated/templates/base-rhea/date-picker-lite.tsx +104 -0
  674. package/generated/templates/base-rhea/dialog.tsx +350 -0
  675. package/generated/templates/base-rhea/direction.tsx +40 -0
  676. package/generated/templates/base-rhea/drawer.tsx +427 -0
  677. package/generated/templates/base-rhea/dropdown-menu.tsx +862 -0
  678. package/generated/templates/base-rhea/empty.tsx +121 -0
  679. package/generated/templates/base-rhea/field.tsx +256 -0
  680. package/generated/templates/base-rhea/hover-card.tsx +350 -0
  681. package/generated/templates/base-rhea/input-group.tsx +173 -0
  682. package/generated/templates/base-rhea/input-otp-lite.tsx +96 -0
  683. package/generated/templates/base-rhea/input.tsx +39 -0
  684. package/generated/templates/base-rhea/item.tsx +265 -0
  685. package/generated/templates/base-rhea/kbd.tsx +47 -0
  686. package/generated/templates/base-rhea/label.tsx +37 -0
  687. package/generated/templates/base-rhea/marker.tsx +134 -0
  688. package/generated/templates/base-rhea/menu-default-translucent/combobox.tsx +1123 -0
  689. package/generated/templates/base-rhea/menu-default-translucent/context-menu.tsx +834 -0
  690. package/generated/templates/base-rhea/menu-default-translucent/dropdown-menu.tsx +863 -0
  691. package/generated/templates/base-rhea/menu-default-translucent/menubar.tsx +525 -0
  692. package/generated/templates/base-rhea/menu-default-translucent/select.tsx +570 -0
  693. package/generated/templates/base-rhea/menu-inverted/combobox.tsx +1123 -0
  694. package/generated/templates/base-rhea/menu-inverted/context-menu.tsx +834 -0
  695. package/generated/templates/base-rhea/menu-inverted/dropdown-menu.tsx +863 -0
  696. package/generated/templates/base-rhea/menu-inverted/menubar.tsx +525 -0
  697. package/generated/templates/base-rhea/menu-inverted/select.tsx +570 -0
  698. package/generated/templates/base-rhea/menu-inverted-translucent/combobox.tsx +1123 -0
  699. package/generated/templates/base-rhea/menu-inverted-translucent/context-menu.tsx +834 -0
  700. package/generated/templates/base-rhea/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  701. package/generated/templates/base-rhea/menu-inverted-translucent/menubar.tsx +525 -0
  702. package/generated/templates/base-rhea/menu-inverted-translucent/select.tsx +570 -0
  703. package/generated/templates/base-rhea/menubar.tsx +524 -0
  704. package/generated/templates/base-rhea/message.tsx +111 -0
  705. package/generated/templates/base-rhea/native-select.tsx +121 -0
  706. package/generated/templates/base-rhea/navigation-menu.tsx +598 -0
  707. package/generated/templates/base-rhea/pagination.tsx +244 -0
  708. package/generated/templates/base-rhea/popover.tsx +375 -0
  709. package/generated/templates/base-rhea/progress.tsx +228 -0
  710. package/generated/templates/base-rhea/radio-group.tsx +160 -0
  711. package/generated/templates/base-rhea/rtl/accordion.tsx +294 -0
  712. package/generated/templates/base-rhea/rtl/alert-dialog.tsx +342 -0
  713. package/generated/templates/base-rhea/rtl/alert.tsx +96 -0
  714. package/generated/templates/base-rhea/rtl/attachment.tsx +275 -0
  715. package/generated/templates/base-rhea/rtl/avatar.tsx +166 -0
  716. package/generated/templates/base-rhea/rtl/badge.tsx +117 -0
  717. package/generated/templates/base-rhea/rtl/breadcrumb.tsx +256 -0
  718. package/generated/templates/base-rhea/rtl/bubble.tsx +192 -0
  719. package/generated/templates/base-rhea/rtl/button-group.tsx +153 -0
  720. package/generated/templates/base-rhea/rtl/button.tsx +133 -0
  721. package/generated/templates/base-rhea/rtl/combobox.tsx +1123 -0
  722. package/generated/templates/base-rhea/rtl/context-menu.tsx +834 -0
  723. package/generated/templates/base-rhea/rtl/date-picker-lite.tsx +105 -0
  724. package/generated/templates/base-rhea/rtl/dialog.tsx +351 -0
  725. package/generated/templates/base-rhea/rtl/drawer.tsx +428 -0
  726. package/generated/templates/base-rhea/rtl/dropdown-menu.tsx +863 -0
  727. package/generated/templates/base-rhea/rtl/field.tsx +257 -0
  728. package/generated/templates/base-rhea/rtl/hover-card.tsx +351 -0
  729. package/generated/templates/base-rhea/rtl/input-group.tsx +174 -0
  730. package/generated/templates/base-rhea/rtl/input-otp-lite.tsx +97 -0
  731. package/generated/templates/base-rhea/rtl/item.tsx +266 -0
  732. package/generated/templates/base-rhea/rtl/marker.tsx +135 -0
  733. package/generated/templates/base-rhea/rtl/menubar.tsx +525 -0
  734. package/generated/templates/base-rhea/rtl/native-select.tsx +122 -0
  735. package/generated/templates/base-rhea/rtl/navigation-menu.tsx +599 -0
  736. package/generated/templates/base-rhea/rtl/pagination.tsx +245 -0
  737. package/generated/templates/base-rhea/rtl/popover.tsx +376 -0
  738. package/generated/templates/base-rhea/rtl/progress.tsx +229 -0
  739. package/generated/templates/base-rhea/rtl/radio-group.tsx +161 -0
  740. package/generated/templates/base-rhea/rtl/scroll-area.tsx +184 -0
  741. package/generated/templates/base-rhea/rtl/select.tsx +570 -0
  742. package/generated/templates/base-rhea/rtl/sheet.tsx +332 -0
  743. package/generated/templates/base-rhea/rtl/sidebar.tsx +766 -0
  744. package/generated/templates/base-rhea/rtl/switch.tsx +107 -0
  745. package/generated/templates/base-rhea/rtl/table.tsx +131 -0
  746. package/generated/templates/base-rhea/rtl/tabs.tsx +216 -0
  747. package/generated/templates/base-rhea/rtl/toast.tsx +814 -0
  748. package/generated/templates/base-rhea/rtl/toggle-group.tsx +211 -0
  749. package/generated/templates/base-rhea/rtl/toggle.tsx +138 -0
  750. package/generated/templates/base-rhea/rtl/tooltip.tsx +398 -0
  751. package/generated/templates/base-rhea/rtl_menu-default-translucent/combobox.tsx +1123 -0
  752. package/generated/templates/base-rhea/rtl_menu-default-translucent/context-menu.tsx +834 -0
  753. package/generated/templates/base-rhea/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  754. package/generated/templates/base-rhea/rtl_menu-default-translucent/menubar.tsx +525 -0
  755. package/generated/templates/base-rhea/rtl_menu-default-translucent/select.tsx +570 -0
  756. package/generated/templates/base-rhea/rtl_menu-inverted/combobox.tsx +1123 -0
  757. package/generated/templates/base-rhea/rtl_menu-inverted/context-menu.tsx +834 -0
  758. package/generated/templates/base-rhea/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  759. package/generated/templates/base-rhea/rtl_menu-inverted/menubar.tsx +525 -0
  760. package/generated/templates/base-rhea/rtl_menu-inverted/select.tsx +570 -0
  761. package/generated/templates/base-rhea/rtl_menu-inverted-translucent/combobox.tsx +1123 -0
  762. package/generated/templates/base-rhea/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  763. package/generated/templates/base-rhea/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  764. package/generated/templates/base-rhea/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  765. package/generated/templates/base-rhea/rtl_menu-inverted-translucent/select.tsx +570 -0
  766. package/generated/templates/base-rhea/scroll-area.tsx +183 -0
  767. package/generated/templates/base-rhea/select.tsx +569 -0
  768. package/generated/templates/base-rhea/separator.tsx +99 -0
  769. package/generated/templates/base-rhea/sheet.tsx +331 -0
  770. package/generated/templates/base-rhea/sidebar.tsx +765 -0
  771. package/generated/templates/base-rhea/skeleton.tsx +34 -0
  772. package/generated/templates/base-rhea/slider.tsx +282 -0
  773. package/generated/templates/base-rhea/spinner.tsx +74 -0
  774. package/generated/templates/base-rhea/switch.tsx +106 -0
  775. package/generated/templates/base-rhea/table.tsx +130 -0
  776. package/generated/templates/base-rhea/tabs.tsx +215 -0
  777. package/generated/templates/base-rhea/textarea.tsx +37 -0
  778. package/generated/templates/base-rhea/toast.tsx +813 -0
  779. package/generated/templates/base-rhea/toggle-group.tsx +210 -0
  780. package/generated/templates/base-rhea/toggle.tsx +137 -0
  781. package/generated/templates/base-rhea/tooltip.tsx +397 -0
  782. package/generated/templates/base-sera/accordion.tsx +290 -0
  783. package/generated/templates/base-sera/alert-dialog.tsx +341 -0
  784. package/generated/templates/base-sera/alert.tsx +95 -0
  785. package/generated/templates/base-sera/aspect-ratio.tsx +43 -0
  786. package/generated/templates/base-sera/attachment.tsx +274 -0
  787. package/generated/templates/base-sera/avatar.tsx +165 -0
  788. package/generated/templates/base-sera/badge.tsx +113 -0
  789. package/generated/templates/base-sera/breadcrumb.tsx +255 -0
  790. package/generated/templates/base-sera/bubble.tsx +191 -0
  791. package/generated/templates/base-sera/button-group.tsx +152 -0
  792. package/generated/templates/base-sera/button.tsx +132 -0
  793. package/generated/templates/base-sera/card.tsx +125 -0
  794. package/generated/templates/base-sera/checkbox.tsx +137 -0
  795. package/generated/templates/base-sera/collapsible.tsx +140 -0
  796. package/generated/templates/base-sera/combobox.tsx +1125 -0
  797. package/generated/templates/base-sera/context-menu.tsx +833 -0
  798. package/generated/templates/base-sera/date-picker-lite.tsx +104 -0
  799. package/generated/templates/base-sera/dialog.tsx +353 -0
  800. package/generated/templates/base-sera/direction.tsx +40 -0
  801. package/generated/templates/base-sera/drawer.tsx +430 -0
  802. package/generated/templates/base-sera/dropdown-menu.tsx +862 -0
  803. package/generated/templates/base-sera/empty.tsx +124 -0
  804. package/generated/templates/base-sera/field.tsx +256 -0
  805. package/generated/templates/base-sera/hover-card.tsx +350 -0
  806. package/generated/templates/base-sera/input-group.tsx +171 -0
  807. package/generated/templates/base-sera/input-otp-lite.tsx +96 -0
  808. package/generated/templates/base-sera/input.tsx +39 -0
  809. package/generated/templates/base-sera/item.tsx +265 -0
  810. package/generated/templates/base-sera/kbd.tsx +47 -0
  811. package/generated/templates/base-sera/label.tsx +37 -0
  812. package/generated/templates/base-sera/marker.tsx +134 -0
  813. package/generated/templates/base-sera/menu-default-translucent/combobox.tsx +1126 -0
  814. package/generated/templates/base-sera/menu-default-translucent/context-menu.tsx +834 -0
  815. package/generated/templates/base-sera/menu-default-translucent/dropdown-menu.tsx +863 -0
  816. package/generated/templates/base-sera/menu-default-translucent/menubar.tsx +525 -0
  817. package/generated/templates/base-sera/menu-default-translucent/select.tsx +573 -0
  818. package/generated/templates/base-sera/menu-inverted/combobox.tsx +1126 -0
  819. package/generated/templates/base-sera/menu-inverted/context-menu.tsx +834 -0
  820. package/generated/templates/base-sera/menu-inverted/dropdown-menu.tsx +863 -0
  821. package/generated/templates/base-sera/menu-inverted/menubar.tsx +525 -0
  822. package/generated/templates/base-sera/menu-inverted/select.tsx +573 -0
  823. package/generated/templates/base-sera/menu-inverted-translucent/combobox.tsx +1126 -0
  824. package/generated/templates/base-sera/menu-inverted-translucent/context-menu.tsx +834 -0
  825. package/generated/templates/base-sera/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  826. package/generated/templates/base-sera/menu-inverted-translucent/menubar.tsx +525 -0
  827. package/generated/templates/base-sera/menu-inverted-translucent/select.tsx +573 -0
  828. package/generated/templates/base-sera/menubar.tsx +524 -0
  829. package/generated/templates/base-sera/message.tsx +111 -0
  830. package/generated/templates/base-sera/native-select.tsx +121 -0
  831. package/generated/templates/base-sera/navigation-menu.tsx +598 -0
  832. package/generated/templates/base-sera/pagination.tsx +244 -0
  833. package/generated/templates/base-sera/popover.tsx +378 -0
  834. package/generated/templates/base-sera/progress.tsx +228 -0
  835. package/generated/templates/base-sera/radio-group.tsx +160 -0
  836. package/generated/templates/base-sera/rtl/accordion.tsx +291 -0
  837. package/generated/templates/base-sera/rtl/alert-dialog.tsx +342 -0
  838. package/generated/templates/base-sera/rtl/alert.tsx +96 -0
  839. package/generated/templates/base-sera/rtl/attachment.tsx +275 -0
  840. package/generated/templates/base-sera/rtl/avatar.tsx +166 -0
  841. package/generated/templates/base-sera/rtl/badge.tsx +114 -0
  842. package/generated/templates/base-sera/rtl/breadcrumb.tsx +256 -0
  843. package/generated/templates/base-sera/rtl/bubble.tsx +192 -0
  844. package/generated/templates/base-sera/rtl/button-group.tsx +153 -0
  845. package/generated/templates/base-sera/rtl/button.tsx +133 -0
  846. package/generated/templates/base-sera/rtl/combobox.tsx +1126 -0
  847. package/generated/templates/base-sera/rtl/context-menu.tsx +834 -0
  848. package/generated/templates/base-sera/rtl/date-picker-lite.tsx +105 -0
  849. package/generated/templates/base-sera/rtl/dialog.tsx +354 -0
  850. package/generated/templates/base-sera/rtl/drawer.tsx +431 -0
  851. package/generated/templates/base-sera/rtl/dropdown-menu.tsx +863 -0
  852. package/generated/templates/base-sera/rtl/field.tsx +257 -0
  853. package/generated/templates/base-sera/rtl/hover-card.tsx +351 -0
  854. package/generated/templates/base-sera/rtl/input-group.tsx +172 -0
  855. package/generated/templates/base-sera/rtl/input-otp-lite.tsx +97 -0
  856. package/generated/templates/base-sera/rtl/item.tsx +266 -0
  857. package/generated/templates/base-sera/rtl/marker.tsx +135 -0
  858. package/generated/templates/base-sera/rtl/menubar.tsx +525 -0
  859. package/generated/templates/base-sera/rtl/native-select.tsx +122 -0
  860. package/generated/templates/base-sera/rtl/navigation-menu.tsx +599 -0
  861. package/generated/templates/base-sera/rtl/pagination.tsx +245 -0
  862. package/generated/templates/base-sera/rtl/popover.tsx +379 -0
  863. package/generated/templates/base-sera/rtl/progress.tsx +229 -0
  864. package/generated/templates/base-sera/rtl/radio-group.tsx +161 -0
  865. package/generated/templates/base-sera/rtl/scroll-area.tsx +184 -0
  866. package/generated/templates/base-sera/rtl/select.tsx +573 -0
  867. package/generated/templates/base-sera/rtl/sheet.tsx +335 -0
  868. package/generated/templates/base-sera/rtl/sidebar.tsx +769 -0
  869. package/generated/templates/base-sera/rtl/switch.tsx +107 -0
  870. package/generated/templates/base-sera/rtl/table.tsx +131 -0
  871. package/generated/templates/base-sera/rtl/tabs.tsx +216 -0
  872. package/generated/templates/base-sera/rtl/toast.tsx +814 -0
  873. package/generated/templates/base-sera/rtl/toggle-group.tsx +211 -0
  874. package/generated/templates/base-sera/rtl/toggle.tsx +138 -0
  875. package/generated/templates/base-sera/rtl/tooltip.tsx +398 -0
  876. package/generated/templates/base-sera/rtl_menu-default-translucent/combobox.tsx +1126 -0
  877. package/generated/templates/base-sera/rtl_menu-default-translucent/context-menu.tsx +834 -0
  878. package/generated/templates/base-sera/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  879. package/generated/templates/base-sera/rtl_menu-default-translucent/menubar.tsx +525 -0
  880. package/generated/templates/base-sera/rtl_menu-default-translucent/select.tsx +573 -0
  881. package/generated/templates/base-sera/rtl_menu-inverted/combobox.tsx +1126 -0
  882. package/generated/templates/base-sera/rtl_menu-inverted/context-menu.tsx +834 -0
  883. package/generated/templates/base-sera/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  884. package/generated/templates/base-sera/rtl_menu-inverted/menubar.tsx +525 -0
  885. package/generated/templates/base-sera/rtl_menu-inverted/select.tsx +573 -0
  886. package/generated/templates/base-sera/rtl_menu-inverted-translucent/combobox.tsx +1126 -0
  887. package/generated/templates/base-sera/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  888. package/generated/templates/base-sera/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  889. package/generated/templates/base-sera/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  890. package/generated/templates/base-sera/rtl_menu-inverted-translucent/select.tsx +573 -0
  891. package/generated/templates/base-sera/scroll-area.tsx +183 -0
  892. package/generated/templates/base-sera/select.tsx +572 -0
  893. package/generated/templates/base-sera/separator.tsx +99 -0
  894. package/generated/templates/base-sera/sheet.tsx +334 -0
  895. package/generated/templates/base-sera/sidebar.tsx +768 -0
  896. package/generated/templates/base-sera/skeleton.tsx +34 -0
  897. package/generated/templates/base-sera/slider.tsx +282 -0
  898. package/generated/templates/base-sera/spinner.tsx +74 -0
  899. package/generated/templates/base-sera/switch.tsx +106 -0
  900. package/generated/templates/base-sera/table.tsx +130 -0
  901. package/generated/templates/base-sera/tabs.tsx +215 -0
  902. package/generated/templates/base-sera/textarea.tsx +37 -0
  903. package/generated/templates/base-sera/toast.tsx +813 -0
  904. package/generated/templates/base-sera/toggle-group.tsx +210 -0
  905. package/generated/templates/base-sera/toggle.tsx +137 -0
  906. package/generated/templates/base-sera/tooltip.tsx +397 -0
  907. package/generated/templates/base-vega/accordion.tsx +290 -0
  908. package/generated/templates/base-vega/alert-dialog.tsx +341 -0
  909. package/generated/templates/base-vega/alert.tsx +95 -0
  910. package/generated/templates/base-vega/aspect-ratio.tsx +43 -0
  911. package/generated/templates/base-vega/attachment.tsx +274 -0
  912. package/generated/templates/base-vega/avatar.tsx +165 -0
  913. package/generated/templates/base-vega/badge.tsx +116 -0
  914. package/generated/templates/base-vega/breadcrumb.tsx +255 -0
  915. package/generated/templates/base-vega/bubble.tsx +191 -0
  916. package/generated/templates/base-vega/button-group.tsx +152 -0
  917. package/generated/templates/base-vega/button.tsx +134 -0
  918. package/generated/templates/base-vega/card.tsx +125 -0
  919. package/generated/templates/base-vega/checkbox.tsx +137 -0
  920. package/generated/templates/base-vega/collapsible.tsx +140 -0
  921. package/generated/templates/base-vega/combobox.tsx +1122 -0
  922. package/generated/templates/base-vega/context-menu.tsx +833 -0
  923. package/generated/templates/base-vega/date-picker-lite.tsx +104 -0
  924. package/generated/templates/base-vega/dialog.tsx +350 -0
  925. package/generated/templates/base-vega/direction.tsx +40 -0
  926. package/generated/templates/base-vega/drawer.tsx +424 -0
  927. package/generated/templates/base-vega/dropdown-menu.tsx +862 -0
  928. package/generated/templates/base-vega/empty.tsx +121 -0
  929. package/generated/templates/base-vega/field.tsx +256 -0
  930. package/generated/templates/base-vega/hover-card.tsx +350 -0
  931. package/generated/templates/base-vega/input-group.tsx +174 -0
  932. package/generated/templates/base-vega/input-otp-lite.tsx +96 -0
  933. package/generated/templates/base-vega/input.tsx +39 -0
  934. package/generated/templates/base-vega/item.tsx +265 -0
  935. package/generated/templates/base-vega/kbd.tsx +47 -0
  936. package/generated/templates/base-vega/label.tsx +37 -0
  937. package/generated/templates/base-vega/marker.tsx +134 -0
  938. package/generated/templates/base-vega/menu-default-translucent/combobox.tsx +1123 -0
  939. package/generated/templates/base-vega/menu-default-translucent/context-menu.tsx +834 -0
  940. package/generated/templates/base-vega/menu-default-translucent/dropdown-menu.tsx +863 -0
  941. package/generated/templates/base-vega/menu-default-translucent/menubar.tsx +525 -0
  942. package/generated/templates/base-vega/menu-default-translucent/select.tsx +570 -0
  943. package/generated/templates/base-vega/menu-inverted/combobox.tsx +1123 -0
  944. package/generated/templates/base-vega/menu-inverted/context-menu.tsx +834 -0
  945. package/generated/templates/base-vega/menu-inverted/dropdown-menu.tsx +863 -0
  946. package/generated/templates/base-vega/menu-inverted/menubar.tsx +525 -0
  947. package/generated/templates/base-vega/menu-inverted/select.tsx +570 -0
  948. package/generated/templates/base-vega/menu-inverted-translucent/combobox.tsx +1123 -0
  949. package/generated/templates/base-vega/menu-inverted-translucent/context-menu.tsx +834 -0
  950. package/generated/templates/base-vega/menu-inverted-translucent/dropdown-menu.tsx +863 -0
  951. package/generated/templates/base-vega/menu-inverted-translucent/menubar.tsx +525 -0
  952. package/generated/templates/base-vega/menu-inverted-translucent/select.tsx +570 -0
  953. package/generated/templates/base-vega/menubar.tsx +524 -0
  954. package/generated/templates/base-vega/message.tsx +111 -0
  955. package/generated/templates/base-vega/native-select.tsx +121 -0
  956. package/generated/templates/base-vega/navigation-menu.tsx +598 -0
  957. package/generated/templates/base-vega/pagination.tsx +244 -0
  958. package/generated/templates/base-vega/popover.tsx +375 -0
  959. package/generated/templates/base-vega/progress.tsx +228 -0
  960. package/generated/templates/base-vega/radio-group.tsx +160 -0
  961. package/generated/templates/base-vega/rtl/accordion.tsx +291 -0
  962. package/generated/templates/base-vega/rtl/alert-dialog.tsx +342 -0
  963. package/generated/templates/base-vega/rtl/alert.tsx +96 -0
  964. package/generated/templates/base-vega/rtl/attachment.tsx +275 -0
  965. package/generated/templates/base-vega/rtl/avatar.tsx +166 -0
  966. package/generated/templates/base-vega/rtl/badge.tsx +117 -0
  967. package/generated/templates/base-vega/rtl/breadcrumb.tsx +256 -0
  968. package/generated/templates/base-vega/rtl/bubble.tsx +192 -0
  969. package/generated/templates/base-vega/rtl/button-group.tsx +153 -0
  970. package/generated/templates/base-vega/rtl/button.tsx +135 -0
  971. package/generated/templates/base-vega/rtl/combobox.tsx +1123 -0
  972. package/generated/templates/base-vega/rtl/context-menu.tsx +834 -0
  973. package/generated/templates/base-vega/rtl/date-picker-lite.tsx +105 -0
  974. package/generated/templates/base-vega/rtl/dialog.tsx +351 -0
  975. package/generated/templates/base-vega/rtl/drawer.tsx +425 -0
  976. package/generated/templates/base-vega/rtl/dropdown-menu.tsx +863 -0
  977. package/generated/templates/base-vega/rtl/field.tsx +257 -0
  978. package/generated/templates/base-vega/rtl/hover-card.tsx +351 -0
  979. package/generated/templates/base-vega/rtl/input-group.tsx +175 -0
  980. package/generated/templates/base-vega/rtl/input-otp-lite.tsx +97 -0
  981. package/generated/templates/base-vega/rtl/item.tsx +266 -0
  982. package/generated/templates/base-vega/rtl/marker.tsx +135 -0
  983. package/generated/templates/base-vega/rtl/menubar.tsx +525 -0
  984. package/generated/templates/base-vega/rtl/native-select.tsx +122 -0
  985. package/generated/templates/base-vega/rtl/navigation-menu.tsx +599 -0
  986. package/generated/templates/base-vega/rtl/pagination.tsx +245 -0
  987. package/generated/templates/base-vega/rtl/popover.tsx +376 -0
  988. package/generated/templates/base-vega/rtl/progress.tsx +229 -0
  989. package/generated/templates/base-vega/rtl/radio-group.tsx +161 -0
  990. package/generated/templates/base-vega/rtl/scroll-area.tsx +184 -0
  991. package/generated/templates/base-vega/rtl/select.tsx +570 -0
  992. package/generated/templates/base-vega/rtl/sheet.tsx +329 -0
  993. package/generated/templates/base-vega/rtl/sidebar.tsx +763 -0
  994. package/generated/templates/base-vega/rtl/switch.tsx +107 -0
  995. package/generated/templates/base-vega/rtl/table.tsx +131 -0
  996. package/generated/templates/base-vega/rtl/tabs.tsx +216 -0
  997. package/generated/templates/base-vega/rtl/toast.tsx +814 -0
  998. package/generated/templates/base-vega/rtl/toggle-group.tsx +211 -0
  999. package/generated/templates/base-vega/rtl/toggle.tsx +138 -0
  1000. package/generated/templates/base-vega/rtl/tooltip.tsx +398 -0
  1001. package/generated/templates/base-vega/rtl_menu-default-translucent/combobox.tsx +1123 -0
  1002. package/generated/templates/base-vega/rtl_menu-default-translucent/context-menu.tsx +834 -0
  1003. package/generated/templates/base-vega/rtl_menu-default-translucent/dropdown-menu.tsx +863 -0
  1004. package/generated/templates/base-vega/rtl_menu-default-translucent/menubar.tsx +525 -0
  1005. package/generated/templates/base-vega/rtl_menu-default-translucent/select.tsx +570 -0
  1006. package/generated/templates/base-vega/rtl_menu-inverted/combobox.tsx +1123 -0
  1007. package/generated/templates/base-vega/rtl_menu-inverted/context-menu.tsx +834 -0
  1008. package/generated/templates/base-vega/rtl_menu-inverted/dropdown-menu.tsx +863 -0
  1009. package/generated/templates/base-vega/rtl_menu-inverted/menubar.tsx +525 -0
  1010. package/generated/templates/base-vega/rtl_menu-inverted/select.tsx +570 -0
  1011. package/generated/templates/base-vega/rtl_menu-inverted-translucent/combobox.tsx +1123 -0
  1012. package/generated/templates/base-vega/rtl_menu-inverted-translucent/context-menu.tsx +834 -0
  1013. package/generated/templates/base-vega/rtl_menu-inverted-translucent/dropdown-menu.tsx +863 -0
  1014. package/generated/templates/base-vega/rtl_menu-inverted-translucent/menubar.tsx +525 -0
  1015. package/generated/templates/base-vega/rtl_menu-inverted-translucent/select.tsx +570 -0
  1016. package/generated/templates/base-vega/scroll-area.tsx +183 -0
  1017. package/generated/templates/base-vega/select.tsx +569 -0
  1018. package/generated/templates/base-vega/separator.tsx +99 -0
  1019. package/generated/templates/base-vega/sheet.tsx +328 -0
  1020. package/generated/templates/base-vega/sidebar.tsx +762 -0
  1021. package/generated/templates/base-vega/skeleton.tsx +34 -0
  1022. package/generated/templates/base-vega/slider.tsx +282 -0
  1023. package/generated/templates/base-vega/spinner.tsx +74 -0
  1024. package/generated/templates/base-vega/switch.tsx +106 -0
  1025. package/generated/templates/base-vega/table.tsx +130 -0
  1026. package/generated/templates/base-vega/tabs.tsx +215 -0
  1027. package/generated/templates/base-vega/textarea.tsx +37 -0
  1028. package/generated/templates/base-vega/toast.tsx +813 -0
  1029. package/generated/templates/base-vega/toggle-group.tsx +210 -0
  1030. package/generated/templates/base-vega/toggle.tsx +137 -0
  1031. package/generated/templates/base-vega/tooltip.tsx +397 -0
  1032. package/package.json +36 -0
@@ -0,0 +1,863 @@
1
+ // Generated by shadcnui-hono-jsx. DO NOT EDIT; run `bun run generate dropdown-menu`.
2
+ // upstream: shadcn/ui base-vega/dropdown-menu (https://ui.shadcn.com/r/styles/base-vega/dropdown-menu.json)
3
+ // upstream-revision: sha256:1cb2516210c494fffe9ec7a9bda7204b89d18c2bf7d376af534065d56d44f36e; shadcn-ui/ui@98a1fe67b439324ddc857f47fbdce056600a4329
4
+ // mode: generated
5
+ // variant: menu-inverted-translucent
6
+ // client: <script type="module" src="/shadcn/menu.js"> (public/shadcn/)
7
+ // Derived from shadcn/ui. Copyright (c) 2023 shadcn.
8
+ // Original additions and modifications: Copyright (c) 2026 supermomonga.
9
+ // SPDX-License-Identifier: MIT
10
+ // Full license: LICENSE-shadcnui-hono-jsx.txt at the project root.
11
+ // Icons: lucide@1.48.0 (check, chevron-right). Copyright (c) 2026 Lucide Icons and Contributors. ISC License (see LICENSE-shadcnui-hono-jsx.txt).
12
+
13
+ import { cn } from "cn"
14
+ import type { Child, Context, JSX, JSXNode } from "hono/jsx"
15
+ import {
16
+ cloneElement,
17
+ createContext,
18
+ isValidElement,
19
+ useContext,
20
+ useId,
21
+ } from "hono/jsx"
22
+
23
+ /** Props of the intrinsic element `T`, following Hono JSX conventions (`class`, no `render`/`asChild`). */
24
+ type ComponentProps<
25
+ T extends keyof JSX.IntrinsicElements | "svg",
26
+ Render = never,
27
+ > = (T extends keyof JSX.IntrinsicElements
28
+ ? JSX.IntrinsicElements[T]
29
+ : JSX.HTMLAttributes) & {
30
+ class?: string | undefined
31
+ className?: never
32
+ render?: Render
33
+ asChild?: never
34
+ }
35
+
36
+ /** An element (or a function returning one) that replaces the default element, as in Base UI. */
37
+ type RenderProp = Child | ((props: Record<string, unknown>) => Child)
38
+
39
+ /**
40
+ * Renders `render` in place of `element`, merging props like Base UI's
41
+ * mergeProps: the render element's props win, classes are combined (the render
42
+ * element's first) and styles are merged. `type` only applies to button and
43
+ * input targets.
44
+ */
45
+ function renderElement<Element>(
46
+ element: Element,
47
+ render: RenderProp | undefined
48
+ ): Element {
49
+ if (render === undefined) return element
50
+ const own: Record<string, unknown> = {
51
+ ...(element as unknown as JSXNode).props,
52
+ }
53
+ if (typeof render === "function") return render(own) as Element
54
+ if (!isValidElement(render)) {
55
+ throw new Error("render must be a JSX element or a function returning one")
56
+ }
57
+ const target = render as JSXNode
58
+ const merged: Record<string, unknown> = { ...own }
59
+ for (const [key, value] of Object.entries(target.props)) {
60
+ if (key === "class" || key === "className") {
61
+ merged.class = [value, own.class].filter(Boolean).join(" ")
62
+ } else if (key === "style" && isObject(value) && isObject(own.style)) {
63
+ merged.style = { ...own.style, ...value }
64
+ } else {
65
+ merged[key] = value
66
+ }
67
+ }
68
+ if (
69
+ typeof target.tag === "string" &&
70
+ !["button", "input"].includes(target.tag)
71
+ ) {
72
+ if (!("type" in target.props)) delete merged.type
73
+ }
74
+ const { children, ...props } = merged
75
+ return cloneElement(
76
+ target,
77
+ props,
78
+ ...(children === undefined ? [] : [children as Child].flat())
79
+ ) as Element
80
+ }
81
+
82
+ function isObject(value: unknown): value is Record<string, unknown> {
83
+ return typeof value === "object" && value !== null
84
+ }
85
+
86
+ type MenuRootProps = {
87
+ id?: string | undefined
88
+ /** Wrap focus from the last item to the first with the arrow keys. */
89
+ loopFocus?: boolean | undefined
90
+ children?: Child
91
+ }
92
+
93
+ type MenuItemProps = ComponentProps<"div", RenderProp> & {
94
+ disabled?: boolean | undefined
95
+ /** Close the menu when the item is chosen. */
96
+ closeOnClick?: boolean | undefined
97
+ }
98
+
99
+ type MenuCheckboxItemProps = MenuItemProps & {
100
+ checked?: boolean | undefined
101
+ defaultChecked?: boolean | undefined
102
+ }
103
+
104
+ type MenuRadioGroupProps = ComponentProps<"div"> & {
105
+ value?: string | undefined
106
+ defaultValue?: string | undefined
107
+ }
108
+
109
+ type MenuRadioItemProps = MenuItemProps & { value: string }
110
+
111
+ interface MenuContextValue {
112
+ id: string
113
+ anchor: string
114
+ triggerId: string
115
+ /** Whether a trigger element labels the popup (not for context menus). */
116
+ labelled: boolean
117
+ loopFocus: boolean
118
+ }
119
+
120
+ /**
121
+ * A context shared by every generated file (the same key gives the same
122
+ * context), so parts rendered by sibling files connect: a menubar in
123
+ * menubar.tsx and the menus of dropdown-menu.tsx inside it.
124
+ */
125
+ function sharedContext<T>(key: string, fallback: T): Context<T> {
126
+ const registry = globalThis as unknown as Record<
127
+ symbol,
128
+ Context<T> | undefined
129
+ >
130
+ const symbol = Symbol.for(`shadcnui-hono-jsx:${key}`)
131
+ registry[symbol] ??= createContext(fallback)
132
+ return registry[symbol]
133
+ }
134
+
135
+ const MenuContext = sharedContext<MenuContextValue | null>("menu", null)
136
+
137
+ /** Set by a menubar: its menu triggers are menuitems, and the first one is tabbable. */
138
+ const MenubarContext = sharedContext<{ claimed: boolean } | null>(
139
+ "menubar",
140
+ null
141
+ )
142
+
143
+ function useMenuContext(): MenuContextValue {
144
+ const context = useContext(MenuContext)
145
+ if (!context) throw new Error("Menu parts must be rendered inside a menu")
146
+ return context
147
+ }
148
+
149
+ function menuContextValue(
150
+ id: string,
151
+ loopFocus: boolean,
152
+ labelled = true
153
+ ): MenuContextValue {
154
+ return {
155
+ id,
156
+ anchor: `--${id}`,
157
+ triggerId: `${id}-trigger`,
158
+ labelled,
159
+ loopFocus,
160
+ }
161
+ }
162
+
163
+ /** Labels groups (and radio groups) by their label element. */
164
+ const MenuGroupContext = sharedContext<{
165
+ labelId: string
166
+ value?: string | undefined
167
+ } | null>("menu-group", null)
168
+
169
+ /** Attributes every item renders, like Base UI's. */
170
+ function menuItemAttributes(
171
+ role: string,
172
+ disabled: boolean | undefined,
173
+ closeOnClick: boolean | undefined
174
+ ) {
175
+ return {
176
+ role,
177
+ // Focusable without the script too, so the keyboard can reach the items.
178
+ tabindex: 0,
179
+ "aria-disabled": disabled ? "true" : undefined,
180
+ "data-disabled": disabled ? "" : undefined,
181
+ "data-close-on-click":
182
+ closeOnClick === undefined ? undefined : String(closeOnClick),
183
+ }
184
+ }
185
+
186
+ /** Checked state attributes of checkbox and radio items. */
187
+ function menuCheckedAttributes(checked: boolean) {
188
+ return {
189
+ "aria-checked": checked ? "true" : "false",
190
+ "data-checked": checked ? "" : undefined,
191
+ "data-unchecked": checked ? undefined : "",
192
+ }
193
+ }
194
+
195
+ /** Whether the root's trigger labels its popup (a button, not a context menu area). */
196
+ const LABELLED_BY_TRIGGER = true
197
+
198
+ /** Connects the trigger (the anchor) and the native popover of a menu. */
199
+ function MenuRootElement({ id, loopFocus = true, children }: MenuRootProps) {
200
+ const generated = useId().replaceAll(":", "-")
201
+ return (
202
+ <MenuContext.Provider
203
+ value={menuContextValue(
204
+ id ?? `menu${generated}`,
205
+ loopFocus,
206
+ LABELLED_BY_TRIGGER
207
+ )}
208
+ >
209
+ {children}
210
+ </MenuContext.Provider>
211
+ )
212
+ }
213
+
214
+ /** A nested menu, opened from its submenu trigger by the script. */
215
+ function MenuSubmenuRootElement({ loopFocus, children }: MenuRootProps) {
216
+ const parent = useMenuContext()
217
+ const generated = useId().replaceAll(":", "-")
218
+ return (
219
+ <MenuContext.Provider
220
+ value={menuContextValue(
221
+ `${parent.id}-sub${generated}`,
222
+ loopFocus ?? parent.loopFocus
223
+ )}
224
+ >
225
+ {children}
226
+ </MenuContext.Provider>
227
+ )
228
+ }
229
+
230
+ function MenuTriggerElement({
231
+ type = "button",
232
+ render,
233
+ style,
234
+ ...props
235
+ }: ComponentProps<"button", RenderProp>) {
236
+ const menu = useMenuContext()
237
+ // In a menubar the triggers are menuitems with a roving tab stop, like Base UI.
238
+ const menubar = useContext(MenubarContext)
239
+ const first = menubar !== null && !menubar.claimed
240
+ if (menubar) menubar.claimed = true
241
+ return renderElement(
242
+ <button
243
+ type={type}
244
+ id={menu.triggerId}
245
+ command="toggle-popover"
246
+ commandfor={menu.id}
247
+ role={menubar ? "menuitem" : undefined}
248
+ tabindex={menubar ? (first ? 0 : -1) : undefined}
249
+ aria-haspopup="menu"
250
+ aria-expanded="false"
251
+ style={withStyle(style, { "anchor-name": menu.anchor })}
252
+ {...props}
253
+ />,
254
+ render
255
+ )
256
+ }
257
+
258
+ function MenuSubmenuTriggerElement({
259
+ disabled,
260
+ style,
261
+ ...props
262
+ }: MenuItemProps) {
263
+ const menu = useMenuContext()
264
+ return (
265
+ <div
266
+ role="menuitem"
267
+ tabindex={0}
268
+ aria-disabled={disabled ? "true" : undefined}
269
+ data-disabled={disabled ? "" : undefined}
270
+ id={menu.triggerId}
271
+ aria-haspopup="menu"
272
+ aria-expanded="false"
273
+ aria-controls={menu.id}
274
+ style={withStyle(style, { "anchor-name": menu.anchor })}
275
+ {...props}
276
+ />
277
+ )
278
+ }
279
+
280
+ /** The native popover renders in the top layer, so no portal is needed. */
281
+ function MenuPortalElement({ children }: { children?: Child }) {
282
+ return <>{children}</>
283
+ }
284
+
285
+ function MenuPopupElement({ style, ...props }: ComponentProps<"div">) {
286
+ const menu = useMenuContext()
287
+ const placement = useContext(AnchorPlacementContext)
288
+ return (
289
+ <div
290
+ id={menu.id}
291
+ popover="auto"
292
+ role="menu"
293
+ tabindex={-1}
294
+ aria-labelledby={menu.labelled ? menu.triggerId : undefined}
295
+ data-side={placement.side}
296
+ data-align={placement.align}
297
+ data-loop-focus={menu.loopFocus ? undefined : "false"}
298
+ style={withStyle(style, anchorPlacementStyle(menu.anchor, placement))}
299
+ {...props}
300
+ />
301
+ )
302
+ }
303
+
304
+ function MenuGroupElement(props: ComponentProps<"div">) {
305
+ const labelId = `menu-group${useId().replaceAll(":", "-")}`
306
+ return (
307
+ <MenuGroupContext.Provider value={{ labelId }}>
308
+ <div role="group" aria-labelledby={labelId} {...props} />
309
+ </MenuGroupContext.Provider>
310
+ )
311
+ }
312
+
313
+ function MenuGroupLabelElement(props: ComponentProps<"div">) {
314
+ return (
315
+ <div
316
+ id={useContext(MenuGroupContext)?.labelId}
317
+ aria-hidden="true"
318
+ {...props}
319
+ />
320
+ )
321
+ }
322
+
323
+ function MenuItemElement({
324
+ disabled,
325
+ closeOnClick,
326
+ render,
327
+ ...props
328
+ }: MenuItemProps) {
329
+ return renderElement(
330
+ <div
331
+ {...menuItemAttributes("menuitem", disabled, closeOnClick)}
332
+ {...props}
333
+ />,
334
+ render
335
+ )
336
+ }
337
+
338
+ function MenuCheckboxItemElement({
339
+ checked,
340
+ defaultChecked = false,
341
+ disabled,
342
+ closeOnClick,
343
+ render,
344
+ ...props
345
+ }: MenuCheckboxItemProps) {
346
+ return renderElement(
347
+ <div
348
+ {...menuItemAttributes("menuitemcheckbox", disabled, closeOnClick)}
349
+ {...menuCheckedAttributes(checked ?? defaultChecked)}
350
+ {...props}
351
+ />,
352
+ render
353
+ )
354
+ }
355
+
356
+ function MenuRadioGroupElement({
357
+ value,
358
+ defaultValue,
359
+ ...props
360
+ }: MenuRadioGroupProps) {
361
+ const labelId = `menu-group${useId().replaceAll(":", "-")}`
362
+ return (
363
+ <MenuGroupContext.Provider
364
+ value={{ labelId, value: value ?? defaultValue }}
365
+ >
366
+ <div role="group" aria-labelledby={labelId} {...props} />
367
+ </MenuGroupContext.Provider>
368
+ )
369
+ }
370
+
371
+ function MenuRadioItemElement({
372
+ value,
373
+ disabled,
374
+ closeOnClick,
375
+ render,
376
+ ...props
377
+ }: MenuRadioItemProps) {
378
+ const group = useContext(MenuGroupContext)
379
+ return renderElement(
380
+ <div
381
+ {...menuItemAttributes("menuitemradio", disabled, closeOnClick)}
382
+ {...menuCheckedAttributes(group?.value === value)}
383
+ data-value={value}
384
+ {...props}
385
+ />,
386
+ render
387
+ )
388
+ }
389
+
390
+ /** Shown while the item is checked (Base UI mounts it only then). */
391
+ function MenuItemIndicatorElement(props: ComponentProps<"span">) {
392
+ return (
393
+ <span
394
+ aria-hidden="true"
395
+ class="in-[[aria-checked=false]]:hidden"
396
+ {...props}
397
+ />
398
+ )
399
+ }
400
+
401
+ function MenuSeparatorElement(props: ComponentProps<"div">) {
402
+ return (
403
+ <div
404
+ role="separator"
405
+ aria-orientation="horizontal"
406
+ data-orientation="horizontal"
407
+ {...props}
408
+ />
409
+ )
410
+ }
411
+
412
+ type AnchorSide =
413
+ | "top"
414
+ | "bottom"
415
+ | "left"
416
+ | "right"
417
+ | "inline-start"
418
+ | "inline-end"
419
+
420
+ type AnchorAlign = "start" | "center" | "end"
421
+
422
+ interface AnchorPlacement {
423
+ side: AnchorSide
424
+ align: AnchorAlign
425
+ sideOffset: number
426
+ alignOffset: number
427
+ }
428
+
429
+ type AnchorPositionerProps = {
430
+ side?: AnchorSide | undefined
431
+ align?: AnchorAlign | undefined
432
+ sideOffset?: number | undefined
433
+ alignOffset?: number | undefined
434
+ class?: string | undefined
435
+ children?: Child
436
+ }
437
+
438
+ const AnchorPlacementContext = createContext<AnchorPlacement>({
439
+ side: "bottom",
440
+ align: "center",
441
+ sideOffset: 0,
442
+ alignOffset: 0,
443
+ })
444
+
445
+ /** Placement for the popup inside; the popup itself is positioned with CSS. */
446
+ function AnchorPositioner({
447
+ side = "bottom",
448
+ align = "center",
449
+ sideOffset = 0,
450
+ alignOffset = 0,
451
+ children,
452
+ }: AnchorPositionerProps) {
453
+ return (
454
+ <AnchorPlacementContext.Provider
455
+ value={{ side, align, sideOffset, alignOffset }}
456
+ >
457
+ {children}
458
+ </AnchorPlacementContext.Provider>
459
+ )
460
+ }
461
+
462
+ /** Inline styles that anchor a popup to `anchor` like Base UI's positioner. */
463
+ function anchorPlacementStyle(
464
+ anchor: string,
465
+ p: AnchorPlacement
466
+ ): Record<string, string> {
467
+ const block = p.side === "top" || p.side === "bottom"
468
+ const logical = p.side === "inline-start" || p.side === "inline-end"
469
+ const span = block
470
+ ? { start: "span-x-end", center: "", end: "span-x-start" }[p.align]
471
+ : logical
472
+ ? { start: "span-block-end", center: "", end: "span-block-start" }[
473
+ p.align
474
+ ]
475
+ : { start: "span-y-end", center: "", end: "span-y-start" }[p.align]
476
+ const toward = {
477
+ top: "margin-bottom",
478
+ bottom: "margin-top",
479
+ left: "margin-right",
480
+ right: "margin-left",
481
+ "inline-start": "margin-inline-end",
482
+ "inline-end": "margin-inline-start",
483
+ }[p.side]
484
+ const across = block
485
+ ? p.align === "end"
486
+ ? "margin-inline-end"
487
+ : "margin-inline-start"
488
+ : p.align === "end"
489
+ ? "margin-block-end"
490
+ : "margin-block-start"
491
+ const edge = { start: "0%", center: "50%", end: "100%" }[p.align]
492
+ const origin = {
493
+ top: `${edge} 100%`,
494
+ bottom: `${edge} 0%`,
495
+ left: `100% ${edge}`,
496
+ right: `0% ${edge}`,
497
+ "inline-start": `100% ${edge}`,
498
+ "inline-end": `0% ${edge}`,
499
+ }[p.side]
500
+ return {
501
+ "position-anchor": anchor,
502
+ "position-area": [p.side, span].filter(Boolean).join(" "),
503
+ "position-try-fallbacks": block ? "flip-block" : "flip-inline",
504
+ [toward]: `${p.sideOffset}px`,
505
+ // A centered popup is centered with its margins, so a start margin of
506
+ // twice the offset shifts it by the offset: toward the end of the line
507
+ // (mirrored in right-to-left text, like Base UI) or down.
508
+ ...(p.alignOffset === 0
509
+ ? {}
510
+ : p.align === "center"
511
+ ? {
512
+ [block ? "margin-inline-start" : "margin-block-start"]:
513
+ `${2 * p.alignOffset}px`,
514
+ }
515
+ : { [across]: `${p.alignOffset}px` }),
516
+ "--transform-origin": origin,
517
+ // Base UI's size variables for popup classes (`w-(--anchor-width)`, ...).
518
+ "--anchor-width": "anchor-size(width)",
519
+ "--anchor-height": "anchor-size(height)",
520
+ "--available-width": "100%",
521
+ "--available-height": "100%",
522
+ }
523
+ }
524
+
525
+ /** Adds `extra` declarations to a string or object `style` prop (the prop wins). */
526
+ function withStyle(
527
+ style: string | JSX.CSSProperties | undefined,
528
+ extra: Record<string, string>
529
+ ): string | JSX.CSSProperties {
530
+ if (typeof style === "string") {
531
+ const css = Object.entries(extra).map(([key, value]) => `${key}:${value}`)
532
+ return [...css, style].join(";")
533
+ }
534
+ return { ...extra, ...style }
535
+ }
536
+
537
+ function DropdownMenu({ ...props }: MenuRootProps) {
538
+ return <MenuRootElement data-slot="dropdown-menu" {...props} />
539
+ }
540
+
541
+ function DropdownMenuPortal({ ...props }: { children?: Child }) {
542
+ return <MenuPortalElement data-slot="dropdown-menu-portal" {...props} />
543
+ }
544
+
545
+ function DropdownMenuTrigger({
546
+ ...props
547
+ }: ComponentProps<"button", RenderProp>) {
548
+ return <MenuTriggerElement data-slot="dropdown-menu-trigger" {...props} />
549
+ }
550
+
551
+ function DropdownMenuContent({
552
+ align = "start",
553
+ alignOffset = 0,
554
+ side = "bottom",
555
+ sideOffset = 4,
556
+ class: className,
557
+ ...props
558
+ }: ComponentProps<"div"> &
559
+ Pick<
560
+ AnchorPositionerProps,
561
+ "align" | "alignOffset" | "side" | "sideOffset"
562
+ >) {
563
+ return (
564
+ <MenuPortalElement>
565
+ <AnchorPositioner
566
+ class="isolate z-50 outline-none"
567
+ align={align}
568
+ alignOffset={alignOffset}
569
+ side={side}
570
+ sideOffset={sideOffset}
571
+ >
572
+ <MenuPopupElement
573
+ data-slot="dropdown-menu-content"
574
+ class={cn(
575
+ "m-auto supports-[position-area:bottom]:m-0",
576
+ "dark z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-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 open:animate-in open:fade-in-0 open:zoom-in-95 not-open:animate-out not-open:overflow-hidden not-open:fade-out-0 not-open:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground! not-open:hidden transition-[display,overlay] transition-discrete",
577
+ className
578
+ )}
579
+ {...props}
580
+ />
581
+ </AnchorPositioner>
582
+ </MenuPortalElement>
583
+ )
584
+ }
585
+
586
+ function DropdownMenuGroup({ ...props }: ComponentProps<"div">) {
587
+ return <MenuGroupElement data-slot="dropdown-menu-group" {...props} />
588
+ }
589
+
590
+ function DropdownMenuLabel({
591
+ class: className,
592
+ inset,
593
+ ...props
594
+ }: ComponentProps<"div"> & {
595
+ inset?: boolean
596
+ }) {
597
+ return (
598
+ <MenuGroupLabelElement
599
+ data-slot="dropdown-menu-label"
600
+ data-inset={inset}
601
+ class={cn(
602
+ "px-2 py-1.5 text-xs font-medium text-muted-foreground data-inset:pl-8",
603
+ className
604
+ )}
605
+ {...props}
606
+ />
607
+ )
608
+ }
609
+
610
+ function DropdownMenuItem({
611
+ class: className,
612
+ inset,
613
+ variant = "default",
614
+ ...props
615
+ }: MenuItemProps & {
616
+ inset?: boolean
617
+ variant?: "default" | "destructive"
618
+ }) {
619
+ return (
620
+ <MenuItemElement
621
+ data-slot="dropdown-menu-item"
622
+ data-inset={inset}
623
+ data-variant={variant}
624
+ class={cn(
625
+ "group/dropdown-menu-item relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive",
626
+ className
627
+ )}
628
+ {...props}
629
+ />
630
+ )
631
+ }
632
+
633
+ function DropdownMenuSub({ ...props }: MenuRootProps) {
634
+ return <MenuSubmenuRootElement data-slot="dropdown-menu-sub" {...props} />
635
+ }
636
+
637
+ function DropdownMenuSubTrigger({
638
+ class: className,
639
+ inset,
640
+ children,
641
+ ...props
642
+ }: MenuItemProps & {
643
+ inset?: boolean
644
+ }) {
645
+ return (
646
+ <MenuSubmenuTriggerElement
647
+ data-slot="dropdown-menu-sub-trigger"
648
+ data-inset={inset}
649
+ class={cn(
650
+ "flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-8 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
651
+ className
652
+ )}
653
+ {...props}
654
+ >
655
+ {children}
656
+ <ChevronRightIcon class="ml-auto" />
657
+ </MenuSubmenuTriggerElement>
658
+ )
659
+ }
660
+
661
+ function DropdownMenuSubContent({
662
+ align = "start",
663
+ alignOffset = -3,
664
+ side = "right",
665
+ sideOffset = 0,
666
+ class: className,
667
+ ...props
668
+ }: Parameters<typeof DropdownMenuContent>[0]) {
669
+ return (
670
+ <DropdownMenuContent
671
+ data-slot="dropdown-menu-sub-content"
672
+ class={cn(
673
+ "dark w-auto min-w-[96px] rounded-md p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 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 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!",
674
+ className
675
+ )}
676
+ align={align}
677
+ alignOffset={alignOffset}
678
+ side={side}
679
+ sideOffset={sideOffset}
680
+ {...props}
681
+ />
682
+ )
683
+ }
684
+
685
+ function DropdownMenuCheckboxItem({
686
+ class: className,
687
+ children,
688
+ checked,
689
+ inset,
690
+ ...props
691
+ }: MenuCheckboxItemProps & {
692
+ inset?: boolean
693
+ }) {
694
+ return (
695
+ <MenuCheckboxItemElement
696
+ data-slot="dropdown-menu-checkbox-item"
697
+ data-inset={inset}
698
+ class={cn(
699
+ "relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-8 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
700
+ className
701
+ )}
702
+ checked={checked}
703
+ {...props}
704
+ >
705
+ <span
706
+ class="pointer-events-none absolute right-2 flex items-center justify-center"
707
+ data-slot="dropdown-menu-checkbox-item-indicator"
708
+ >
709
+ <MenuItemIndicatorElement>
710
+ <CheckIcon />
711
+ </MenuItemIndicatorElement>
712
+ </span>
713
+ {children}
714
+ </MenuCheckboxItemElement>
715
+ )
716
+ }
717
+
718
+ function DropdownMenuRadioGroup({ ...props }: MenuRadioGroupProps) {
719
+ return (
720
+ <MenuRadioGroupElement data-slot="dropdown-menu-radio-group" {...props} />
721
+ )
722
+ }
723
+
724
+ function DropdownMenuRadioItem({
725
+ class: className,
726
+ children,
727
+ inset,
728
+ ...props
729
+ }: MenuRadioItemProps & {
730
+ inset?: boolean
731
+ }) {
732
+ return (
733
+ <MenuRadioItemElement
734
+ data-slot="dropdown-menu-radio-item"
735
+ data-inset={inset}
736
+ class={cn(
737
+ "relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-8 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
738
+ className
739
+ )}
740
+ {...props}
741
+ >
742
+ <span
743
+ class="pointer-events-none absolute right-2 flex items-center justify-center"
744
+ data-slot="dropdown-menu-radio-item-indicator"
745
+ >
746
+ <MenuItemIndicatorElement>
747
+ <CheckIcon />
748
+ </MenuItemIndicatorElement>
749
+ </span>
750
+ {children}
751
+ </MenuRadioItemElement>
752
+ )
753
+ }
754
+
755
+ function DropdownMenuSeparator({
756
+ class: className,
757
+ ...props
758
+ }: ComponentProps<"div">) {
759
+ return (
760
+ <MenuSeparatorElement
761
+ data-slot="dropdown-menu-separator"
762
+ class={cn("-mx-1 my-1 h-px bg-border", className)}
763
+ {...props}
764
+ />
765
+ )
766
+ }
767
+
768
+ function DropdownMenuShortcut({
769
+ class: className,
770
+ ...props
771
+ }: ComponentProps<"span">) {
772
+ return (
773
+ <span
774
+ data-slot="dropdown-menu-shortcut"
775
+ class={cn(
776
+ "ml-auto text-xs tracking-widest text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground",
777
+ className
778
+ )}
779
+ {...props}
780
+ />
781
+ )
782
+ }
783
+ // icon-helper
784
+ /** Like lucide-react, icons are hidden from assistive technology unless labelled. */
785
+ function hasA11yProp(props: object): boolean {
786
+ return Object.keys(props).some(
787
+ (key) => key.startsWith("aria-") || key === "role" || key === "title"
788
+ )
789
+ }
790
+
791
+ // icon: {"lucide":"CheckIcon","tabler":"IconCheck","hugeicons":"Tick02Icon","phosphor":"CheckIcon","remixicon":"RiCheckLine"}
792
+ /** Lucide `check` icon, inlined (ISC License, see LICENSE-shadcnui-hono-jsx.txt). */
793
+ function CheckIcon({
794
+ class: className,
795
+ children,
796
+ ...props
797
+ }: ComponentProps<"svg">) {
798
+ return (
799
+ <svg
800
+ xmlns="http://www.w3.org/2000/svg"
801
+ width="24"
802
+ height="24"
803
+ viewBox="0 0 24 24"
804
+ fill="none"
805
+ stroke="currentColor"
806
+ stroke-width="2"
807
+ stroke-linecap="round"
808
+ stroke-linejoin="round"
809
+ class={cn("lucide lucide-check", className)}
810
+ aria-hidden={children || hasA11yProp(props) ? undefined : "true"}
811
+ {...props}
812
+ >
813
+ <path d="M20 6 9 17l-5-5" />
814
+ {children}
815
+ </svg>
816
+ )
817
+ }
818
+
819
+ // icon: {"lucide":"ChevronRightIcon","tabler":"IconChevronRight","hugeicons":"ArrowRight01Icon","phosphor":"CaretRightIcon","remixicon":"RiArrowRightSLine"}
820
+ /** Lucide `chevron-right` icon, inlined (ISC License, see LICENSE-shadcnui-hono-jsx.txt). */
821
+ function ChevronRightIcon({
822
+ class: className,
823
+ children,
824
+ ...props
825
+ }: ComponentProps<"svg">) {
826
+ return (
827
+ <svg
828
+ xmlns="http://www.w3.org/2000/svg"
829
+ width="24"
830
+ height="24"
831
+ viewBox="0 0 24 24"
832
+ fill="none"
833
+ stroke="currentColor"
834
+ stroke-width="2"
835
+ stroke-linecap="round"
836
+ stroke-linejoin="round"
837
+ class={cn("lucide lucide-chevron-right", className)}
838
+ aria-hidden={children || hasA11yProp(props) ? undefined : "true"}
839
+ {...props}
840
+ >
841
+ <path d="m9 18 6-6-6-6" />
842
+ {children}
843
+ </svg>
844
+ )
845
+ }
846
+
847
+ export {
848
+ DropdownMenu,
849
+ DropdownMenuCheckboxItem,
850
+ DropdownMenuContent,
851
+ DropdownMenuGroup,
852
+ DropdownMenuItem,
853
+ DropdownMenuLabel,
854
+ DropdownMenuPortal,
855
+ DropdownMenuRadioGroup,
856
+ DropdownMenuRadioItem,
857
+ DropdownMenuSeparator,
858
+ DropdownMenuShortcut,
859
+ DropdownMenuSub,
860
+ DropdownMenuSubContent,
861
+ DropdownMenuSubTrigger,
862
+ DropdownMenuTrigger,
863
+ }