@databricks/appkit-ui 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/CLAUDE.md +121 -1228
  2. package/NOTICE.md +1 -1
  3. package/bin/appkit.js +3 -0
  4. package/dist/cli/commands/docs.js +47 -0
  5. package/dist/cli/commands/docs.js.map +1 -0
  6. package/dist/cli/commands/generate-types.js +38 -0
  7. package/dist/cli/commands/generate-types.js.map +1 -0
  8. package/dist/cli/commands/lint.js +104 -0
  9. package/dist/cli/commands/lint.js.map +1 -0
  10. package/dist/cli/commands/setup.js +121 -0
  11. package/dist/cli/commands/setup.js.map +1 -0
  12. package/dist/cli/index.d.ts +1 -0
  13. package/dist/cli/index.js +24 -0
  14. package/dist/cli/index.js.map +1 -0
  15. package/dist/js/arrow/arrow-client.d.ts +48 -0
  16. package/dist/js/arrow/arrow-client.d.ts.map +1 -1
  17. package/dist/js/arrow/arrow-client.js +51 -3
  18. package/dist/js/arrow/arrow-client.js.map +1 -1
  19. package/dist/react/charts/area/index.d.ts +6 -17
  20. package/dist/react/charts/area/index.d.ts.map +1 -1
  21. package/dist/react/charts/area/index.js +5 -17
  22. package/dist/react/charts/area/index.js.map +1 -1
  23. package/dist/react/charts/bar/index.d.ts +5 -26
  24. package/dist/react/charts/bar/index.d.ts.map +1 -1
  25. package/dist/react/charts/bar/index.js +4 -26
  26. package/dist/react/charts/bar/index.js.map +1 -1
  27. package/dist/react/charts/create-chart.js +1 -2
  28. package/dist/react/charts/create-chart.js.map +1 -1
  29. package/dist/react/charts/heatmap/index.d.ts +7 -22
  30. package/dist/react/charts/heatmap/index.d.ts.map +1 -1
  31. package/dist/react/charts/heatmap/index.js +6 -22
  32. package/dist/react/charts/heatmap/index.js.map +1 -1
  33. package/dist/react/charts/line/index.d.ts +6 -18
  34. package/dist/react/charts/line/index.d.ts.map +1 -1
  35. package/dist/react/charts/line/index.js +5 -18
  36. package/dist/react/charts/line/index.js.map +1 -1
  37. package/dist/react/charts/normalize.js +16 -16
  38. package/dist/react/charts/normalize.js.map +1 -1
  39. package/dist/react/charts/pie/index.d.ts +10 -32
  40. package/dist/react/charts/pie/index.d.ts.map +1 -1
  41. package/dist/react/charts/pie/index.js +9 -32
  42. package/dist/react/charts/pie/index.js.map +1 -1
  43. package/dist/react/charts/radar/index.d.ts +6 -16
  44. package/dist/react/charts/radar/index.d.ts.map +1 -1
  45. package/dist/react/charts/radar/index.js +5 -16
  46. package/dist/react/charts/radar/index.js.map +1 -1
  47. package/dist/react/charts/scatter/index.d.ts +6 -16
  48. package/dist/react/charts/scatter/index.d.ts.map +1 -1
  49. package/dist/react/charts/scatter/index.js +5 -16
  50. package/dist/react/charts/scatter/index.js.map +1 -1
  51. package/dist/react/charts/types.d.ts +0 -5
  52. package/dist/react/charts/types.d.ts.map +1 -1
  53. package/dist/react/charts/types.js.map +1 -1
  54. package/dist/react/charts/wrapper.d.ts +0 -2
  55. package/dist/react/charts/wrapper.d.ts.map +1 -1
  56. package/dist/react/charts/wrapper.js +2 -4
  57. package/dist/react/charts/wrapper.js.map +1 -1
  58. package/dist/react/hooks/types.d.ts +0 -2
  59. package/dist/react/hooks/types.d.ts.map +1 -1
  60. package/dist/react/hooks/use-analytics-query.d.ts +4 -0
  61. package/dist/react/hooks/use-analytics-query.d.ts.map +1 -1
  62. package/dist/react/hooks/use-analytics-query.js +17 -14
  63. package/dist/react/hooks/use-analytics-query.js.map +1 -1
  64. package/dist/react/hooks/use-chart-data.d.ts +0 -2
  65. package/dist/react/hooks/use-chart-data.d.ts.map +1 -1
  66. package/dist/react/hooks/use-chart-data.js +2 -3
  67. package/dist/react/hooks/use-chart-data.js.map +1 -1
  68. package/dist/react/table/data-table.d.ts +4 -1
  69. package/dist/react/table/data-table.d.ts.map +1 -1
  70. package/dist/react/table/data-table.js +4 -1
  71. package/dist/react/table/data-table.js.map +1 -1
  72. package/dist/react/table/table-wrapper.js +5 -6
  73. package/dist/react/table/table-wrapper.js.map +1 -1
  74. package/dist/react/table/types.d.ts.map +1 -1
  75. package/dist/react/ui/accordion.d.ts +9 -5
  76. package/dist/react/ui/accordion.d.ts.map +1 -1
  77. package/dist/react/ui/accordion.js +4 -0
  78. package/dist/react/ui/accordion.js.map +1 -1
  79. package/dist/react/ui/alert-dialog.d.ts +23 -12
  80. package/dist/react/ui/alert-dialog.d.ts.map +1 -1
  81. package/dist/react/ui/alert-dialog.js +11 -0
  82. package/dist/react/ui/alert-dialog.js.map +1 -1
  83. package/dist/react/ui/alert.d.ts +7 -4
  84. package/dist/react/ui/alert.d.ts.map +1 -1
  85. package/dist/react/ui/alert.js +3 -0
  86. package/dist/react/ui/alert.js.map +1 -1
  87. package/dist/react/ui/aspect-ratio.d.ts +3 -2
  88. package/dist/react/ui/aspect-ratio.d.ts.map +1 -1
  89. package/dist/react/ui/aspect-ratio.js +1 -0
  90. package/dist/react/ui/aspect-ratio.js.map +1 -1
  91. package/dist/react/ui/avatar.d.ts +7 -4
  92. package/dist/react/ui/avatar.d.ts.map +1 -1
  93. package/dist/react/ui/avatar.js +3 -0
  94. package/dist/react/ui/avatar.js.map +1 -1
  95. package/dist/react/ui/badge.d.ts +5 -4
  96. package/dist/react/ui/badge.d.ts.map +1 -1
  97. package/dist/react/ui/badge.js +1 -0
  98. package/dist/react/ui/badge.js.map +1 -1
  99. package/dist/react/ui/breadcrumb.d.ts +15 -8
  100. package/dist/react/ui/breadcrumb.d.ts.map +1 -1
  101. package/dist/react/ui/breadcrumb.js +7 -0
  102. package/dist/react/ui/breadcrumb.js.map +1 -1
  103. package/dist/react/ui/button-group.d.ts +9 -6
  104. package/dist/react/ui/button-group.d.ts.map +1 -1
  105. package/dist/react/ui/button-group.js +3 -0
  106. package/dist/react/ui/button-group.js.map +1 -1
  107. package/dist/react/ui/button.d.ts +5 -4
  108. package/dist/react/ui/button.d.ts.map +1 -1
  109. package/dist/react/ui/button.js +1 -0
  110. package/dist/react/ui/button.js.map +1 -1
  111. package/dist/react/ui/calendar.d.ts +5 -3
  112. package/dist/react/ui/calendar.d.ts.map +1 -1
  113. package/dist/react/ui/calendar.js +14 -12
  114. package/dist/react/ui/calendar.js.map +1 -1
  115. package/dist/react/ui/card.d.ts +15 -8
  116. package/dist/react/ui/card.d.ts.map +1 -1
  117. package/dist/react/ui/card.js +7 -0
  118. package/dist/react/ui/card.js.map +1 -1
  119. package/dist/react/ui/carousel.d.ts +11 -6
  120. package/dist/react/ui/carousel.d.ts.map +1 -1
  121. package/dist/react/ui/carousel.js +9 -4
  122. package/dist/react/ui/carousel.js.map +1 -1
  123. package/dist/react/ui/chart.d.ts +6 -5
  124. package/dist/react/ui/chart.d.ts.map +1 -1
  125. package/dist/react/ui/chart.js +2 -1
  126. package/dist/react/ui/chart.js.map +1 -1
  127. package/dist/react/ui/checkbox.d.ts +3 -2
  128. package/dist/react/ui/checkbox.d.ts.map +1 -1
  129. package/dist/react/ui/checkbox.js +1 -0
  130. package/dist/react/ui/checkbox.js.map +1 -1
  131. package/dist/react/ui/collapsible.d.ts +7 -4
  132. package/dist/react/ui/collapsible.d.ts.map +1 -1
  133. package/dist/react/ui/collapsible.js +3 -0
  134. package/dist/react/ui/collapsible.js.map +1 -1
  135. package/dist/react/ui/command.d.ts +19 -10
  136. package/dist/react/ui/command.d.ts.map +1 -1
  137. package/dist/react/ui/command.js +9 -0
  138. package/dist/react/ui/command.js.map +1 -1
  139. package/dist/react/ui/context-menu.d.ts +17 -16
  140. package/dist/react/ui/context-menu.d.ts.map +1 -1
  141. package/dist/react/ui/context-menu.js +1 -0
  142. package/dist/react/ui/context-menu.js.map +1 -1
  143. package/dist/react/ui/dialog.d.ts +21 -11
  144. package/dist/react/ui/dialog.d.ts.map +1 -1
  145. package/dist/react/ui/dialog.js +10 -0
  146. package/dist/react/ui/dialog.js.map +1 -1
  147. package/dist/react/ui/drawer.d.ts +21 -11
  148. package/dist/react/ui/drawer.d.ts.map +1 -1
  149. package/dist/react/ui/drawer.js +10 -0
  150. package/dist/react/ui/drawer.js.map +1 -1
  151. package/dist/react/ui/dropdown-menu.d.ts +17 -16
  152. package/dist/react/ui/dropdown-menu.d.ts.map +1 -1
  153. package/dist/react/ui/dropdown-menu.js +1 -0
  154. package/dist/react/ui/dropdown-menu.js.map +1 -1
  155. package/dist/react/ui/empty.d.ts +8 -7
  156. package/dist/react/ui/empty.d.ts.map +1 -1
  157. package/dist/react/ui/empty.js +1 -0
  158. package/dist/react/ui/empty.js.map +1 -1
  159. package/dist/react/ui/field.d.ts +21 -11
  160. package/dist/react/ui/field.d.ts.map +1 -1
  161. package/dist/react/ui/field.js +10 -0
  162. package/dist/react/ui/field.js.map +1 -1
  163. package/dist/react/ui/form.d.ts +14 -7
  164. package/dist/react/ui/form.d.ts.map +1 -1
  165. package/dist/react/ui/form.js +7 -0
  166. package/dist/react/ui/form.js.map +1 -1
  167. package/dist/react/ui/hover-card.d.ts +5 -4
  168. package/dist/react/ui/hover-card.d.ts.map +1 -1
  169. package/dist/react/ui/hover-card.js +1 -0
  170. package/dist/react/ui/hover-card.js.map +1 -1
  171. package/dist/react/ui/input-group.d.ts +16 -10
  172. package/dist/react/ui/input-group.d.ts.map +1 -1
  173. package/dist/react/ui/input-group.js +6 -0
  174. package/dist/react/ui/input-group.js.map +1 -1
  175. package/dist/react/ui/input-otp.d.ts +9 -5
  176. package/dist/react/ui/input-otp.d.ts.map +1 -1
  177. package/dist/react/ui/input-otp.js +4 -0
  178. package/dist/react/ui/input-otp.js.map +1 -1
  179. package/dist/react/ui/input.d.ts +3 -2
  180. package/dist/react/ui/input.d.ts.map +1 -1
  181. package/dist/react/ui/input.js +1 -0
  182. package/dist/react/ui/input.js.map +1 -1
  183. package/dist/react/ui/item.d.ts +15 -14
  184. package/dist/react/ui/item.d.ts.map +1 -1
  185. package/dist/react/ui/item.js +1 -0
  186. package/dist/react/ui/item.js.map +1 -1
  187. package/dist/react/ui/kbd.d.ts +1 -0
  188. package/dist/react/ui/kbd.d.ts.map +1 -1
  189. package/dist/react/ui/kbd.js +1 -0
  190. package/dist/react/ui/kbd.js.map +1 -1
  191. package/dist/react/ui/label.d.ts +1 -0
  192. package/dist/react/ui/label.d.ts.map +1 -1
  193. package/dist/react/ui/label.js +1 -0
  194. package/dist/react/ui/label.js.map +1 -1
  195. package/dist/react/ui/menubar.d.ts +1 -0
  196. package/dist/react/ui/menubar.d.ts.map +1 -1
  197. package/dist/react/ui/menubar.js +1 -0
  198. package/dist/react/ui/menubar.js.map +1 -1
  199. package/dist/react/ui/navigation-menu.d.ts +8 -0
  200. package/dist/react/ui/navigation-menu.d.ts.map +1 -1
  201. package/dist/react/ui/navigation-menu.js +8 -0
  202. package/dist/react/ui/navigation-menu.js.map +1 -1
  203. package/dist/react/ui/pagination.d.ts +7 -0
  204. package/dist/react/ui/pagination.d.ts.map +1 -1
  205. package/dist/react/ui/pagination.js +7 -0
  206. package/dist/react/ui/pagination.js.map +1 -1
  207. package/dist/react/ui/popover.d.ts +6 -5
  208. package/dist/react/ui/popover.d.ts.map +1 -1
  209. package/dist/react/ui/popover.js +1 -0
  210. package/dist/react/ui/popover.js.map +1 -1
  211. package/dist/react/ui/progress.d.ts +3 -2
  212. package/dist/react/ui/progress.d.ts.map +1 -1
  213. package/dist/react/ui/progress.js +1 -0
  214. package/dist/react/ui/progress.js.map +1 -1
  215. package/dist/react/ui/radio-group.d.ts +4 -3
  216. package/dist/react/ui/radio-group.d.ts.map +1 -1
  217. package/dist/react/ui/radio-group.js +1 -0
  218. package/dist/react/ui/radio-group.js.map +1 -1
  219. package/dist/react/ui/resizable.d.ts +7 -4
  220. package/dist/react/ui/resizable.d.ts.map +1 -1
  221. package/dist/react/ui/resizable.js +3 -0
  222. package/dist/react/ui/resizable.js.map +1 -1
  223. package/dist/react/ui/scroll-area.d.ts +5 -3
  224. package/dist/react/ui/scroll-area.d.ts.map +1 -1
  225. package/dist/react/ui/scroll-area.js +2 -0
  226. package/dist/react/ui/scroll-area.js.map +1 -1
  227. package/dist/react/ui/select.d.ts +23 -11
  228. package/dist/react/ui/select.d.ts.map +1 -1
  229. package/dist/react/ui/select.js +12 -0
  230. package/dist/react/ui/select.js.map +1 -1
  231. package/dist/react/ui/separator.d.ts +3 -2
  232. package/dist/react/ui/separator.d.ts.map +1 -1
  233. package/dist/react/ui/separator.js +1 -0
  234. package/dist/react/ui/separator.js.map +1 -1
  235. package/dist/react/ui/sheet.d.ts +17 -9
  236. package/dist/react/ui/sheet.d.ts.map +1 -1
  237. package/dist/react/ui/sheet.js +10 -0
  238. package/dist/react/ui/sheet.js.map +1 -1
  239. package/dist/react/ui/sidebar.d.ts +46 -24
  240. package/dist/react/ui/sidebar.d.ts.map +1 -1
  241. package/dist/react/ui/sidebar.js +23 -1
  242. package/dist/react/ui/sidebar.js.map +1 -1
  243. package/dist/react/ui/skeleton.d.ts +3 -2
  244. package/dist/react/ui/skeleton.d.ts.map +1 -1
  245. package/dist/react/ui/skeleton.js +1 -0
  246. package/dist/react/ui/skeleton.js.map +1 -1
  247. package/dist/react/ui/slider.d.ts +3 -2
  248. package/dist/react/ui/slider.d.ts.map +1 -1
  249. package/dist/react/ui/slider.js +1 -0
  250. package/dist/react/ui/slider.js.map +1 -1
  251. package/dist/react/ui/sonner.d.ts +3 -2
  252. package/dist/react/ui/sonner.d.ts.map +1 -1
  253. package/dist/react/ui/sonner.js +1 -0
  254. package/dist/react/ui/sonner.js.map +1 -1
  255. package/dist/react/ui/spinner.d.ts +3 -2
  256. package/dist/react/ui/spinner.d.ts.map +1 -1
  257. package/dist/react/ui/spinner.js +1 -0
  258. package/dist/react/ui/spinner.js.map +1 -1
  259. package/dist/react/ui/switch.d.ts +3 -2
  260. package/dist/react/ui/switch.d.ts.map +1 -1
  261. package/dist/react/ui/switch.js +1 -0
  262. package/dist/react/ui/switch.js.map +1 -1
  263. package/dist/react/ui/table.d.ts +1 -0
  264. package/dist/react/ui/table.d.ts.map +1 -1
  265. package/dist/react/ui/table.js +1 -0
  266. package/dist/react/ui/table.js.map +1 -1
  267. package/dist/react/ui/tabs.d.ts +9 -5
  268. package/dist/react/ui/tabs.d.ts.map +1 -1
  269. package/dist/react/ui/tabs.js +4 -0
  270. package/dist/react/ui/tabs.js.map +1 -1
  271. package/dist/react/ui/textarea.d.ts +3 -2
  272. package/dist/react/ui/textarea.d.ts.map +1 -1
  273. package/dist/react/ui/textarea.js +1 -0
  274. package/dist/react/ui/textarea.js.map +1 -1
  275. package/dist/react/ui/toggle-group.d.ts +4 -3
  276. package/dist/react/ui/toggle-group.d.ts.map +1 -1
  277. package/dist/react/ui/toggle-group.js +1 -0
  278. package/dist/react/ui/toggle-group.js.map +1 -1
  279. package/dist/react/ui/toggle.d.ts +3 -2
  280. package/dist/react/ui/toggle.d.ts.map +1 -1
  281. package/dist/react/ui/toggle.js +1 -0
  282. package/dist/react/ui/toggle.js.map +1 -1
  283. package/dist/react/ui/tooltip.d.ts +7 -5
  284. package/dist/react/ui/tooltip.d.ts.map +1 -1
  285. package/dist/react/ui/tooltip.js +2 -0
  286. package/dist/react/ui/tooltip.js.map +1 -1
  287. package/docs/docs/api/appkit/Class.AppKitError/index.html +77 -0
  288. package/docs/docs/api/appkit/Class.AppKitError.md +154 -0
  289. package/docs/docs/api/appkit/Class.AuthenticationError/index.html +110 -0
  290. package/docs/docs/api/appkit/Class.AuthenticationError.md +236 -0
  291. package/docs/docs/api/appkit/Class.ConfigurationError/index.html +112 -0
  292. package/docs/docs/api/appkit/Class.ConfigurationError.md +243 -0
  293. package/docs/docs/api/appkit/Class.ConnectionError/index.html +120 -0
  294. package/docs/docs/api/appkit/Class.ConnectionError.md +265 -0
  295. package/docs/docs/api/appkit/Class.ExecutionError/index.html +116 -0
  296. package/docs/docs/api/appkit/Class.ExecutionError.md +250 -0
  297. package/docs/docs/api/appkit/Class.InitializationError/index.html +104 -0
  298. package/docs/docs/api/appkit/Class.InitializationError.md +222 -0
  299. package/docs/docs/api/appkit/Class.Plugin/index.html +149 -0
  300. package/docs/docs/api/appkit/Class.Plugin.md +392 -0
  301. package/docs/docs/api/appkit/Class.ServerError/index.html +108 -0
  302. package/docs/docs/api/appkit/Class.ServerError.md +229 -0
  303. package/docs/docs/api/appkit/Class.TunnelError/index.html +108 -0
  304. package/docs/docs/api/appkit/Class.TunnelError.md +231 -0
  305. package/docs/docs/api/appkit/Class.ValidationError/index.html +106 -0
  306. package/docs/docs/api/appkit/Class.ValidationError.md +225 -0
  307. package/docs/docs/api/appkit/Function.appKitTypesPlugin/index.html +24 -0
  308. package/docs/docs/api/appkit/Function.appKitTypesPlugin.md +20 -0
  309. package/docs/docs/api/appkit/Function.createApp/index.html +24 -0
  310. package/docs/docs/api/appkit/Function.createApp.md +31 -0
  311. package/docs/docs/api/appkit/Function.isSQLTypeMarker/index.html +25 -0
  312. package/docs/docs/api/appkit/Function.isSQLTypeMarker.md +32 -0
  313. package/docs/docs/api/appkit/Interface.BasePluginConfig/index.html +28 -0
  314. package/docs/docs/api/appkit/Interface.BasePluginConfig.md +37 -0
  315. package/docs/docs/api/appkit/Interface.CacheConfig/index.html +63 -0
  316. package/docs/docs/api/appkit/Interface.CacheConfig.md +131 -0
  317. package/docs/docs/api/appkit/Interface.ITelemetry/index.html +73 -0
  318. package/docs/docs/api/appkit/Interface.ITelemetry.md +144 -0
  319. package/docs/docs/api/appkit/Interface.StreamExecutionSettings/index.html +26 -0
  320. package/docs/docs/api/appkit/Interface.StreamExecutionSettings.md +30 -0
  321. package/docs/docs/api/appkit/Interface.TelemetryConfig/index.html +32 -0
  322. package/docs/docs/api/appkit/Interface.TelemetryConfig.md +48 -0
  323. package/docs/docs/api/appkit/TypeAlias.IAppRouter/index.html +18 -0
  324. package/docs/docs/api/appkit/TypeAlias.IAppRouter.md +8 -0
  325. package/docs/docs/api/appkit/Variable.sql/index.html +98 -0
  326. package/docs/docs/api/appkit/Variable.sql.md +260 -0
  327. package/docs/docs/api/appkit/index.html +28 -0
  328. package/docs/docs/api/appkit-ui/data/AreaChart/index.html +29 -0
  329. package/docs/docs/api/appkit-ui/data/AreaChart.md +79 -0
  330. package/docs/docs/api/appkit-ui/data/BarChart/index.html +29 -0
  331. package/docs/docs/api/appkit-ui/data/BarChart.md +74 -0
  332. package/docs/docs/api/appkit-ui/data/DataTable/index.html +36 -0
  333. package/docs/docs/api/appkit-ui/data/DataTable.md +69 -0
  334. package/docs/docs/api/appkit-ui/data/DonutChart/index.html +29 -0
  335. package/docs/docs/api/appkit-ui/data/DonutChart.md +72 -0
  336. package/docs/docs/api/appkit-ui/data/HeatmapChart/index.html +35 -0
  337. package/docs/docs/api/appkit-ui/data/HeatmapChart.md +91 -0
  338. package/docs/docs/api/appkit-ui/data/LineChart/index.html +29 -0
  339. package/docs/docs/api/appkit-ui/data/LineChart.md +77 -0
  340. package/docs/docs/api/appkit-ui/data/PieChart/index.html +29 -0
  341. package/docs/docs/api/appkit-ui/data/PieChart.md +72 -0
  342. package/docs/docs/api/appkit-ui/data/RadarChart/index.html +29 -0
  343. package/docs/docs/api/appkit-ui/data/RadarChart.md +74 -0
  344. package/docs/docs/api/appkit-ui/data/ScatterChart/index.html +29 -0
  345. package/docs/docs/api/appkit-ui/data/ScatterChart.md +76 -0
  346. package/docs/docs/api/appkit-ui/index.html +23 -0
  347. package/docs/docs/api/appkit-ui/styling/index.html +74 -0
  348. package/docs/docs/api/appkit-ui/styling.md +81 -0
  349. package/docs/docs/api/appkit-ui/ui/Accordion/index.html +48 -0
  350. package/docs/docs/api/appkit-ui/ui/Accordion.md +139 -0
  351. package/docs/docs/api/appkit-ui/ui/Alert/index.html +41 -0
  352. package/docs/docs/api/appkit-ui/ui/Alert.md +89 -0
  353. package/docs/docs/api/appkit-ui/ui/AlertDialog/index.html +97 -0
  354. package/docs/docs/api/appkit-ui/ui/AlertDialog.md +282 -0
  355. package/docs/docs/api/appkit-ui/ui/AspectRatio/index.html +27 -0
  356. package/docs/docs/api/appkit-ui/ui/AspectRatio.md +46 -0
  357. package/docs/docs/api/appkit-ui/ui/Avatar/index.html +41 -0
  358. package/docs/docs/api/appkit-ui/ui/Avatar.md +90 -0
  359. package/docs/docs/api/appkit-ui/ui/Badge/index.html +27 -0
  360. package/docs/docs/api/appkit-ui/ui/Badge.md +38 -0
  361. package/docs/docs/api/appkit-ui/ui/Breadcrumb/index.html +69 -0
  362. package/docs/docs/api/appkit-ui/ui/Breadcrumb.md +193 -0
  363. package/docs/docs/api/appkit-ui/ui/Button/index.html +27 -0
  364. package/docs/docs/api/appkit-ui/ui/Button.md +39 -0
  365. package/docs/docs/api/appkit-ui/ui/ButtonGroup/index.html +38 -0
  366. package/docs/docs/api/appkit-ui/ui/ButtonGroup.md +68 -0
  367. package/docs/docs/api/appkit-ui/ui/Calendar/index.html +34 -0
  368. package/docs/docs/api/appkit-ui/ui/Calendar.md +154 -0
  369. package/docs/docs/api/appkit-ui/ui/Card/index.html +69 -0
  370. package/docs/docs/api/appkit-ui/ui/Card.md +222 -0
  371. package/docs/docs/api/appkit-ui/ui/Carousel/index.html +55 -0
  372. package/docs/docs/api/appkit-ui/ui/Carousel.md +152 -0
  373. package/docs/docs/api/appkit-ui/ui/ChartContainer/index.html +58 -0
  374. package/docs/docs/api/appkit-ui/ui/ChartContainer.md +343 -0
  375. package/docs/docs/api/appkit-ui/ui/Checkbox/index.html +27 -0
  376. package/docs/docs/api/appkit-ui/ui/Checkbox.md +53 -0
  377. package/docs/docs/api/appkit-ui/ui/Collapsible/index.html +41 -0
  378. package/docs/docs/api/appkit-ui/ui/Collapsible.md +125 -0
  379. package/docs/docs/api/appkit-ui/ui/Command/index.html +83 -0
  380. package/docs/docs/api/appkit-ui/ui/Command.md +287 -0
  381. package/docs/docs/api/appkit-ui/ui/ContextMenu/index.html +111 -0
  382. package/docs/docs/api/appkit-ui/ui/ContextMenu.md +419 -0
  383. package/docs/docs/api/appkit-ui/ui/Dialog/index.html +90 -0
  384. package/docs/docs/api/appkit-ui/ui/Dialog.md +285 -0
  385. package/docs/docs/api/appkit-ui/ui/Drawer/index.html +90 -0
  386. package/docs/docs/api/appkit-ui/ui/Drawer.md +387 -0
  387. package/docs/docs/api/appkit-ui/ui/DropdownMenu/index.html +111 -0
  388. package/docs/docs/api/appkit-ui/ui/DropdownMenu.md +478 -0
  389. package/docs/docs/api/appkit-ui/ui/Empty/index.html +54 -0
  390. package/docs/docs/api/appkit-ui/ui/Empty.md +109 -0
  391. package/docs/docs/api/appkit-ui/ui/Field/index.html +87 -0
  392. package/docs/docs/api/appkit-ui/ui/Field.md +201 -0
  393. package/docs/docs/api/appkit-ui/ui/FormControl/index.html +59 -0
  394. package/docs/docs/api/appkit-ui/ui/FormControl.md +128 -0
  395. package/docs/docs/api/appkit-ui/ui/HoverCard/index.html +39 -0
  396. package/docs/docs/api/appkit-ui/ui/HoverCard.md +131 -0
  397. package/docs/docs/api/appkit-ui/ui/Input/index.html +27 -0
  398. package/docs/docs/api/appkit-ui/ui/Input.md +35 -0
  399. package/docs/docs/api/appkit-ui/ui/InputGroup/index.html +59 -0
  400. package/docs/docs/api/appkit-ui/ui/InputGroup.md +123 -0
  401. package/docs/docs/api/appkit-ui/ui/InputOTP/index.html +48 -0
  402. package/docs/docs/api/appkit-ui/ui/InputOTP.md +124 -0
  403. package/docs/docs/api/appkit-ui/ui/Item/index.html +78 -0
  404. package/docs/docs/api/appkit-ui/ui/Item.md +185 -0
  405. package/docs/docs/api/appkit-ui/ui/Kbd/index.html +30 -0
  406. package/docs/docs/api/appkit-ui/ui/Kbd.md +39 -0
  407. package/docs/docs/api/appkit-ui/ui/Label/index.html +27 -0
  408. package/docs/docs/api/appkit-ui/ui/Label.md +44 -0
  409. package/docs/docs/api/appkit-ui/ui/Menubar/index.html +117 -0
  410. package/docs/docs/api/appkit-ui/ui/Menubar.md +484 -0
  411. package/docs/docs/api/appkit-ui/ui/NavigationMenu/index.html +76 -0
  412. package/docs/docs/api/appkit-ui/ui/NavigationMenu.md +338 -0
  413. package/docs/docs/api/appkit-ui/ui/Pagination/index.html +69 -0
  414. package/docs/docs/api/appkit-ui/ui/Pagination.md +191 -0
  415. package/docs/docs/api/appkit-ui/ui/Popover/index.html +45 -0
  416. package/docs/docs/api/appkit-ui/ui/Popover.md +173 -0
  417. package/docs/docs/api/appkit-ui/ui/Progress/index.html +27 -0
  418. package/docs/docs/api/appkit-ui/ui/Progress.md +51 -0
  419. package/docs/docs/api/appkit-ui/ui/RadioGroup/index.html +33 -0
  420. package/docs/docs/api/appkit-ui/ui/RadioGroup.md +83 -0
  421. package/docs/docs/api/appkit-ui/ui/ResizableHandle/index.html +41 -0
  422. package/docs/docs/api/appkit-ui/ui/ResizableHandle.md +136 -0
  423. package/docs/docs/api/appkit-ui/ui/ScrollArea/index.html +34 -0
  424. package/docs/docs/api/appkit-ui/ui/ScrollArea.md +83 -0
  425. package/docs/docs/api/appkit-ui/ui/Select/index.html +82 -0
  426. package/docs/docs/api/appkit-ui/ui/Select.md +267 -0
  427. package/docs/docs/api/appkit-ui/ui/Separator/index.html +27 -0
  428. package/docs/docs/api/appkit-ui/ui/Separator.md +56 -0
  429. package/docs/docs/api/appkit-ui/ui/Sheet/index.html +76 -0
  430. package/docs/docs/api/appkit-ui/ui/Sheet.md +236 -0
  431. package/docs/docs/api/appkit-ui/ui/Sidebar/index.html +183 -0
  432. package/docs/docs/api/appkit-ui/ui/Sidebar.md +490 -0
  433. package/docs/docs/api/appkit-ui/ui/Skeleton/index.html +27 -0
  434. package/docs/docs/api/appkit-ui/ui/Skeleton.md +43 -0
  435. package/docs/docs/api/appkit-ui/ui/Slider/index.html +27 -0
  436. package/docs/docs/api/appkit-ui/ui/Slider.md +61 -0
  437. package/docs/docs/api/appkit-ui/ui/Spinner/index.html +24 -0
  438. package/docs/docs/api/appkit-ui/ui/Spinner.md +22 -0
  439. package/docs/docs/api/appkit-ui/ui/Switch/index.html +27 -0
  440. package/docs/docs/api/appkit-ui/ui/Switch.md +46 -0
  441. package/docs/docs/api/appkit-ui/ui/Table/index.html +69 -0
  442. package/docs/docs/api/appkit-ui/ui/Table.md +236 -0
  443. package/docs/docs/api/appkit-ui/ui/Tabs/index.html +48 -0
  444. package/docs/docs/api/appkit-ui/ui/Tabs.md +177 -0
  445. package/docs/docs/api/appkit-ui/ui/Textarea/index.html +27 -0
  446. package/docs/docs/api/appkit-ui/ui/Textarea.md +35 -0
  447. package/docs/docs/api/appkit-ui/ui/Toaster/index.html +27 -0
  448. package/docs/docs/api/appkit-ui/ui/Toaster.md +75 -0
  449. package/docs/docs/api/appkit-ui/ui/Toggle/index.html +27 -0
  450. package/docs/docs/api/appkit-ui/ui/Toggle.md +48 -0
  451. package/docs/docs/api/appkit-ui/ui/ToggleGroup/index.html +33 -0
  452. package/docs/docs/api/appkit-ui/ui/ToggleGroup.md +88 -0
  453. package/docs/docs/api/appkit-ui/ui/Tooltip/index.html +46 -0
  454. package/docs/docs/api/appkit-ui/ui/Tooltip.md +134 -0
  455. package/docs/docs/api/appkit-ui.md +15 -0
  456. package/docs/docs/api/appkit.md +48 -0
  457. package/docs/docs/api/index.html +28 -0
  458. package/docs/docs/api.md +24 -0
  459. package/docs/docs/app-management/index.html +106 -0
  460. package/docs/docs/app-management.md +171 -0
  461. package/docs/docs/architecture/index.html +71 -0
  462. package/docs/docs/architecture.md +69 -0
  463. package/docs/docs/category/development/index.html +16 -0
  464. package/docs/docs/category/development.md +3 -0
  465. package/docs/docs/configuration/index.html +66 -0
  466. package/docs/docs/configuration.md +150 -0
  467. package/docs/docs/core-principles/index.html +38 -0
  468. package/docs/docs/core-principles.md +31 -0
  469. package/docs/docs/development/index.html +34 -0
  470. package/docs/docs/development/llm-guide/index.html +74 -0
  471. package/docs/docs/development/llm-guide.md +74 -0
  472. package/docs/docs/development/local-development/index.html +27 -0
  473. package/docs/docs/development/local-development.md +20 -0
  474. package/docs/docs/development/project-setup/index.html +69 -0
  475. package/docs/docs/development/project-setup.md +246 -0
  476. package/docs/docs/development/remote-bridge/index.html +76 -0
  477. package/docs/docs/development/remote-bridge.md +80 -0
  478. package/docs/docs/development/type-generation/index.html +65 -0
  479. package/docs/docs/development/type-generation.md +110 -0
  480. package/docs/docs/development.md +21 -0
  481. package/docs/docs/index.html +58 -0
  482. package/docs/docs/plugins/index.html +151 -0
  483. package/docs/docs/plugins.md +313 -0
  484. package/docs/docs.md +64 -0
  485. package/llms.txt +121 -1228
  486. package/package.json +7 -5
  487. package/scripts/postinstall.js +1 -1
  488. package/AGENTS.md +0 -1231
  489. package/bin/setup-claude.js +0 -190
@@ -1,29 +1,33 @@
1
1
  import * as React$1 from "react";
2
- import * as react_jsx_runtime158 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime152 from "react/jsx-runtime";
3
3
  import { OTPInput } from "input-otp";
4
4
 
5
5
  //#region src/react/ui/input-otp.d.ts
6
+ /** One-time password input with individual character slots */
6
7
  declare function InputOTP({
7
8
  className,
8
9
  containerClassName,
9
10
  ...props
10
11
  }: React$1.ComponentProps<typeof OTPInput> & {
11
12
  containerClassName?: string;
12
- }): react_jsx_runtime158.JSX.Element;
13
+ }): react_jsx_runtime152.JSX.Element;
14
+ /** Container grouping OTP input slots together */
13
15
  declare function InputOTPGroup({
14
16
  className,
15
17
  ...props
16
- }: React$1.ComponentProps<"div">): react_jsx_runtime158.JSX.Element;
18
+ }: React$1.ComponentProps<"div">): react_jsx_runtime152.JSX.Element;
19
+ /** Individual character slot within the OTP input */
17
20
  declare function InputOTPSlot({
18
21
  index,
19
22
  className,
20
23
  ...props
21
24
  }: React$1.ComponentProps<"div"> & {
22
25
  index: number;
23
- }): react_jsx_runtime158.JSX.Element;
26
+ }): react_jsx_runtime152.JSX.Element;
27
+ /** Visual separator between OTP slot groups */
24
28
  declare function InputOTPSeparator({
25
29
  ...props
26
- }: React$1.ComponentProps<"div">): react_jsx_runtime158.JSX.Element;
30
+ }: React$1.ComponentProps<"div">): react_jsx_runtime152.JSX.Element;
27
31
  //#endregion
28
32
  export { InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot };
29
33
  //# sourceMappingURL=input-otp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input-otp.d.ts","names":[],"sources":["../../../src/react/ui/input-otp.tsx"],"sourcesContent":[],"mappings":";;;;;iBAMS,QAAA;;;;GAIN,OAAA,CAAM,sBAAsB;;IAE9B,oBAAA,CAAA,GAAA,CAAA;AAXqD,iBAyB7C,aAAA,CApBQ;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAoB+B,OAAA,CAAM,cApBrC,CAAA,KAAA,CAAA,CAAA,EAoB0D,oBAAA,CAAA,GAAA,CAAA,OApB1D;iBA8BR,YAAA,CA9BQ;EAAA,KAAA;EAAA,SAAA;EAAA,GAAA;CAAA,EAkCd,OAAA,CAAM,cAlCQ,CAAA,KAAA,CAAA,GAAA;OACf,EAAA,MAAA;IAmCD,oBAAA,CAAA,GAAA,CAAA,OAlCC;iBA0DO,iBAAA,CAxDsB;EAAA,GAAA;AAAA,CAAA,EAwDU,OAAA,CAAM,cAxDhB,CAAA,KAAA,CAAA,CAAA,EAwDqC,oBAAA,CAAA,GAAA,CAAA,OAxDrC"}
1
+ {"version":3,"file":"input-otp.d.ts","names":[],"sources":["../../../src/react/ui/input-otp.tsx"],"sourcesContent":[],"mappings":";;;;;;iBAOS,QAAA;;;;AAN6C,GAUnD,OAAA,CAAM,sBAAsB;;AAVuB,CAAA,CAAA,EAYrD,oBAAA,CAAA,GAAA,CAAA,OANgB;;iBAqBR,aAAA,CApBP;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAoB8C,OAAA,CAAM,cApBpD,CAAA,KAAA,CAAA,CAAA,EAoByE,oBAAA,CAAA,GAAA,CAAA,OApBzE;;iBA+BO,YAAA,CA5BsB;EAAA,KAAA;EAAA,SAAA;EAAA,GAAA;CAAA,EAgC5B,OAAA,CAAM,cAhCsB,CAAA,KAAA,CAAA,GAAA;OAA5B,EAAA,MAAM;IAkCR,oBAAA,CAAA,GAAA,CAAA,OAhCA;;AAAA,iBAyDQ,iBAAA,CA1Ca;EAAA,GAAA;AAAA,CAAA,EA0CmB,OAAA,CAAM,cA1CzB,CAAA,KAAA,CAAA,CAAA,EA0C8C,oBAAA,CAAA,GAAA,CAAA,OA1C9C"}
@@ -5,6 +5,7 @@ import { MinusIcon } from "lucide-react";
5
5
  import { OTPInput, OTPInputContext } from "input-otp";
6
6
 
7
7
  //#region src/react/ui/input-otp.tsx
8
+ /** One-time password input with individual character slots */
8
9
  function InputOTP({ className, containerClassName, ...props }) {
9
10
  return /* @__PURE__ */ jsx(OTPInput, {
10
11
  "data-slot": "input-otp",
@@ -13,6 +14,7 @@ function InputOTP({ className, containerClassName, ...props }) {
13
14
  ...props
14
15
  });
15
16
  }
17
+ /** Container grouping OTP input slots together */
16
18
  function InputOTPGroup({ className, ...props }) {
17
19
  return /* @__PURE__ */ jsx("div", {
18
20
  "data-slot": "input-otp-group",
@@ -20,6 +22,7 @@ function InputOTPGroup({ className, ...props }) {
20
22
  ...props
21
23
  });
22
24
  }
25
+ /** Individual character slot within the OTP input */
23
26
  function InputOTPSlot({ index, className, ...props }) {
24
27
  const { char, hasFakeCaret, isActive } = React$1.useContext(OTPInputContext)?.slots[index] ?? {};
25
28
  return /* @__PURE__ */ jsxs("div", {
@@ -33,6 +36,7 @@ function InputOTPSlot({ index, className, ...props }) {
33
36
  })]
34
37
  });
35
38
  }
39
+ /** Visual separator between OTP slot groups */
36
40
  function InputOTPSeparator({ ...props }) {
37
41
  return /* @__PURE__ */ jsx("div", {
38
42
  "data-slot": "input-otp-separator",
@@ -1 +1 @@
1
- {"version":3,"file":"input-otp.js","names":["React"],"sources":["../../../src/react/ui/input-otp.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\nimport { MinusIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction InputOTP({\n className,\n containerClassName,\n ...props\n}: React.ComponentProps<typeof OTPInput> & {\n containerClassName?: string;\n}) {\n return (\n <OTPInput\n data-slot=\"input-otp\"\n containerClassName={cn(\n \"flex items-center gap-2 has-disabled:opacity-50\",\n containerClassName,\n )}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n );\n}\n\nfunction InputOTPGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-otp-group\"\n className={cn(\"flex items-center\", className)}\n {...props}\n />\n );\n}\n\nfunction InputOTPSlot({\n index,\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n index: number;\n}) {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};\n\n return (\n <div\n data-slot=\"input-otp-slot\"\n data-active={isActive}\n className={cn(\n \"data-[active=true]:border-ring data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 aria-invalid:border-destructive data-[active=true]:aria-invalid:border-destructive dark:bg-input/30 border-input relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px]\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink bg-foreground h-4 w-px duration-1000\" />\n </div>\n )}\n </div>\n );\n}\n\nfunction InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"input-otp-separator\" role=\"separator\" {...props}>\n <MinusIcon />\n </div>\n );\n}\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"],"mappings":";;;;;;;AAMA,SAAS,SAAS,EAChB,WACA,oBACA,GAAG,SAGF;AACD,QACE,oBAAC;EACC,aAAU;EACV,oBAAoB,GAClB,mDACA,mBACD;EACD,WAAW,GAAG,+BAA+B,UAAU;EACvD,GAAI;GACJ;;AAIN,SAAS,cAAc,EAAE,WAAW,GAAG,SAAsC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,qBAAqB,UAAU;EAC7C,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,OACA,WACA,GAAG,SAGF;CAED,MAAM,EAAE,MAAM,cAAc,aADJA,QAAM,WAAW,gBAAgB,EACC,MAAM,UAAU,EAAE;AAE5E,QACE,qBAAC;EACC,aAAU;EACV,eAAa;EACb,WAAW,GACT,4fACA,UACD;EACD,GAAI;aAEH,MACA,gBACC,oBAAC;GAAI,WAAU;aACb,oBAAC,SAAI,WAAU,6DAA6D;IACxE;GAEJ;;AAIV,SAAS,kBAAkB,EAAE,GAAG,SAAsC;AACpE,QACE,oBAAC;EAAI,aAAU;EAAsB,MAAK;EAAY,GAAI;YACxD,oBAAC,cAAY;GACT"}
1
+ {"version":3,"file":"input-otp.js","names":["React"],"sources":["../../../src/react/ui/input-otp.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\nimport { MinusIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\n/** One-time password input with individual character slots */\nfunction InputOTP({\n className,\n containerClassName,\n ...props\n}: React.ComponentProps<typeof OTPInput> & {\n containerClassName?: string;\n}) {\n return (\n <OTPInput\n data-slot=\"input-otp\"\n containerClassName={cn(\n \"flex items-center gap-2 has-disabled:opacity-50\",\n containerClassName,\n )}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n );\n}\n\n/** Container grouping OTP input slots together */\nfunction InputOTPGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-otp-group\"\n className={cn(\"flex items-center\", className)}\n {...props}\n />\n );\n}\n\n/** Individual character slot within the OTP input */\nfunction InputOTPSlot({\n index,\n className,\n ...props\n}: React.ComponentProps<\"div\"> & {\n index: number;\n}) {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};\n\n return (\n <div\n data-slot=\"input-otp-slot\"\n data-active={isActive}\n className={cn(\n \"data-[active=true]:border-ring data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40 aria-invalid:border-destructive data-[active=true]:aria-invalid:border-destructive dark:bg-input/30 border-input relative flex h-9 w-9 items-center justify-center border-y border-r text-sm shadow-xs transition-all outline-none first:rounded-l-md first:border-l last:rounded-r-md data-[active=true]:z-10 data-[active=true]:ring-[3px]\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink bg-foreground h-4 w-px duration-1000\" />\n </div>\n )}\n </div>\n );\n}\n\n/** Visual separator between OTP slot groups */\nfunction InputOTPSeparator({ ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"input-otp-separator\" role=\"separator\" {...props}>\n <MinusIcon />\n </div>\n );\n}\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"],"mappings":";;;;;;;;AAOA,SAAS,SAAS,EAChB,WACA,oBACA,GAAG,SAGF;AACD,QACE,oBAAC;EACC,aAAU;EACV,oBAAoB,GAClB,mDACA,mBACD;EACD,WAAW,GAAG,+BAA+B,UAAU;EACvD,GAAI;GACJ;;;AAKN,SAAS,cAAc,EAAE,WAAW,GAAG,SAAsC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,qBAAqB,UAAU;EAC7C,GAAI;GACJ;;;AAKN,SAAS,aAAa,EACpB,OACA,WACA,GAAG,SAGF;CAED,MAAM,EAAE,MAAM,cAAc,aADJA,QAAM,WAAW,gBAAgB,EACC,MAAM,UAAU,EAAE;AAE5E,QACE,qBAAC;EACC,aAAU;EACV,eAAa;EACb,WAAW,GACT,4fACA,UACD;EACD,GAAI;aAEH,MACA,gBACC,oBAAC;GAAI,WAAU;aACb,oBAAC,SAAI,WAAU,6DAA6D;IACxE;GAEJ;;;AAKV,SAAS,kBAAkB,EAAE,GAAG,SAAsC;AACpE,QACE,oBAAC;EAAI,aAAU;EAAsB,MAAK;EAAY,GAAI;YACxD,oBAAC,cAAY;GACT"}
@@ -1,12 +1,13 @@
1
1
  import * as React$1 from "react";
2
- import * as react_jsx_runtime151 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime145 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/react/ui/input.d.ts
5
+ /** Text input field for single-line user input */
5
6
  declare function Input({
6
7
  className,
7
8
  type,
8
9
  ...props
9
- }: React$1.ComponentProps<"input">): react_jsx_runtime151.JSX.Element;
10
+ }: React$1.ComponentProps<"input">): react_jsx_runtime145.JSX.Element;
10
11
  //#endregion
11
12
  export { Input };
12
13
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","names":[],"sources":["../../../src/react/ui/input.tsx"],"sourcesContent":[],"mappings":";;;;iBAIS,KAAA;;;;GAAqC,OAAA,CAAM,0BAAuB,oBAAA,CAAA,GAAA,CAAA"}
1
+ {"version":3,"file":"input.d.ts","names":[],"sources":["../../../src/react/ui/input.tsx"],"sourcesContent":[],"mappings":";;;;;iBAKS,KAAA;;;;GAAqC,OAAA,CAAM,0BAAuB,oBAAA,CAAA,GAAA,CAAA"}
@@ -2,6 +2,7 @@ import { cn } from "../lib/utils.js";
2
2
  import { jsx } from "react/jsx-runtime";
3
3
 
4
4
  //#region src/react/ui/input.tsx
5
+ /** Text input field for single-line user input */
5
6
  function Input({ className, type, ...props }) {
6
7
  return /* @__PURE__ */ jsx("input", {
7
8
  type,
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","names":[],"sources":["../../../src/react/ui/input.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction Input({ className, type, ...props }: React.ComponentProps<\"input\">) {\n return (\n <input\n type={type}\n data-slot=\"input\"\n className={cn(\n \"file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n \"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n \"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Input };\n"],"mappings":";;;;AAIA,SAAS,MAAM,EAAE,WAAW,MAAM,GAAG,SAAwC;AAC3E,QACE,oBAAC;EACO;EACN,aAAU;EACV,WAAW,GACT,8bACA,iFACA,0GACA,UACD;EACD,GAAI;GACJ"}
1
+ {"version":3,"file":"input.js","names":[],"sources":["../../../src/react/ui/input.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"../lib/utils\";\n\n/** Text input field for single-line user input */\nfunction Input({ className, type, ...props }: React.ComponentProps<\"input\">) {\n return (\n <input\n type={type}\n data-slot=\"input\"\n className={cn(\n \"file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n \"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n \"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Input };\n"],"mappings":";;;;;AAKA,SAAS,MAAM,EAAE,WAAW,MAAM,GAAG,SAAwC;AAC3E,QACE,oBAAC;EACO;EACN,aAAU;EACV,WAAW,GACT,8bACA,iFACA,0GACA,UACD;EACD,GAAI;GACJ"}
@@ -1,22 +1,23 @@
1
1
  import { Separator } from "./separator.js";
2
2
  import * as React$1 from "react";
3
- import * as react_jsx_runtime138 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime156 from "react/jsx-runtime";
4
4
  import { VariantProps } from "class-variance-authority";
5
- import * as class_variance_authority_types5 from "class-variance-authority/types";
5
+ import * as class_variance_authority_types7 from "class-variance-authority/types";
6
6
 
7
7
  //#region src/react/ui/item.d.ts
8
8
  declare function ItemGroup({
9
9
  className,
10
10
  ...props
11
- }: React$1.ComponentProps<"div">): react_jsx_runtime138.JSX.Element;
11
+ }: React$1.ComponentProps<"div">): react_jsx_runtime156.JSX.Element;
12
12
  declare function ItemSeparator({
13
13
  className,
14
14
  ...props
15
- }: React$1.ComponentProps<typeof Separator>): react_jsx_runtime138.JSX.Element;
15
+ }: React$1.ComponentProps<typeof Separator>): react_jsx_runtime156.JSX.Element;
16
16
  declare const itemVariants: (props?: ({
17
17
  variant?: "default" | "outline" | "muted" | null | undefined;
18
18
  size?: "default" | "sm" | null | undefined;
19
- } & class_variance_authority_types5.ClassProp) | undefined) => string;
19
+ } & class_variance_authority_types7.ClassProp) | undefined) => string;
20
+ /** Flexible container for list items with media, content, and actions */
20
21
  declare function Item({
21
22
  className,
22
23
  variant,
@@ -25,39 +26,39 @@ declare function Item({
25
26
  ...props
26
27
  }: React$1.ComponentProps<"div"> & VariantProps<typeof itemVariants> & {
27
28
  asChild?: boolean;
28
- }): react_jsx_runtime138.JSX.Element;
29
+ }): react_jsx_runtime156.JSX.Element;
29
30
  declare const itemMediaVariants: (props?: ({
30
31
  variant?: "default" | "icon" | "image" | null | undefined;
31
- } & class_variance_authority_types5.ClassProp) | undefined) => string;
32
+ } & class_variance_authority_types7.ClassProp) | undefined) => string;
32
33
  declare function ItemMedia({
33
34
  className,
34
35
  variant,
35
36
  ...props
36
- }: React$1.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): react_jsx_runtime138.JSX.Element;
37
+ }: React$1.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): react_jsx_runtime156.JSX.Element;
37
38
  declare function ItemContent({
38
39
  className,
39
40
  ...props
40
- }: React$1.ComponentProps<"div">): react_jsx_runtime138.JSX.Element;
41
+ }: React$1.ComponentProps<"div">): react_jsx_runtime156.JSX.Element;
41
42
  declare function ItemTitle({
42
43
  className,
43
44
  ...props
44
- }: React$1.ComponentProps<"div">): react_jsx_runtime138.JSX.Element;
45
+ }: React$1.ComponentProps<"div">): react_jsx_runtime156.JSX.Element;
45
46
  declare function ItemDescription({
46
47
  className,
47
48
  ...props
48
- }: React$1.ComponentProps<"p">): react_jsx_runtime138.JSX.Element;
49
+ }: React$1.ComponentProps<"p">): react_jsx_runtime156.JSX.Element;
49
50
  declare function ItemActions({
50
51
  className,
51
52
  ...props
52
- }: React$1.ComponentProps<"div">): react_jsx_runtime138.JSX.Element;
53
+ }: React$1.ComponentProps<"div">): react_jsx_runtime156.JSX.Element;
53
54
  declare function ItemHeader({
54
55
  className,
55
56
  ...props
56
- }: React$1.ComponentProps<"div">): react_jsx_runtime138.JSX.Element;
57
+ }: React$1.ComponentProps<"div">): react_jsx_runtime156.JSX.Element;
57
58
  declare function ItemFooter({
58
59
  className,
59
60
  ...props
60
- }: React$1.ComponentProps<"div">): react_jsx_runtime138.JSX.Element;
61
+ }: React$1.ComponentProps<"div">): react_jsx_runtime156.JSX.Element;
61
62
  //#endregion
62
63
  export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle };
63
64
  //# sourceMappingURL=item.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"item.d.ts","names":[],"sources":["../../../src/react/ui/item.tsx"],"sourcesContent":[],"mappings":";;;;;;;iBAOS,SAAA;;;GAAmC,OAAA,CAAM,wBAAqB,oBAAA,CAAA,GAAA,CAAA;iBAW9D,aAAA;;;GAGN,OAAA,CAAM,sBAAsB,aAAU,oBAAA,CAAA,GAAA,CAAA;cAWnC,oBAzBY;;EAAT,IAAA,CAAA,EAAA,SAAS,GAAA,IAAA,GAAA,IAAA,GAAA,SAAA;CAAA,GA4CjB,+BAAA,CAAA,SA5CiB,CAAA,GAAA,SAAA,EAAA,GAAA,MAAA;iBA8CT,IAAA,CA9CY;EAAA,SAAA;EAAA,OAAA;EAAA,IAAA;EAAA,OAAA;EAAA,GAAA;CAAA,EAoDlB,OAAA,CAAM,cApDY,CAAA,KAAA,CAAA,GAqDnB,YArDmB,CAAA,OAqDC,YArDD,CAAA,GAAA;SAAuB,CAAA,EAAA,OAAM;IAqDS,oBAAA,CAAA,GAAA,CAAA,OArDY;cAkEjE,iBAlEiE,EAAA,CAAA,KAWjD,CAXiD,EAAA,CAAA;EAW9D,OAAA,CAAA,EAAA,SAAa,GAAA,MAAA,GAAA,OAAA,GAAA,IAAA,GAAA,SAAA;CAAA,GAsErB,+BAAA,CAAA,SAtEqB,CAAA,GAAA,SAAA,EAAA,GAAA,MAAA;iBAwEb,SAAA,CAvEP;EAAA,SAAA;EAAA,OAAA;EAAA,GAAA;AAAA,CAAA,EA2EC,OAAA,CAAM,cA3EP,CAAA,KAAA,CAAA,GA2E+B,YA3E/B,CAAA,OA2EmD,iBA3EnD,CAAA,CAAA,EA2EqE,oBAAA,CAAA,GAAA,CAAA,OA3ErE;iBAsFO,WAAA,CApFsB;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAoFe,OAAA,CAAM,cApFrB,CAAA,KAAA,CAAA,CAAA,EAoF0C,oBAAA,CAAA,GAAA,CAAA,OApF1C;iBAiGtB,SAAA,CAjGA;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAiGmC,OAAA,CAAM,cAjGzC,CAAA,KAAA,CAAA,CAAA,EAiG8D,oBAAA,CAAA,GAAA,CAAA,OAjG9D;iBA8GA,eAAA,CA9GgC;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8GS,OAAA,CAAM,cA9Gf,CAAA,GAAA,CAAA,CAAA,EA8GkC,oBAAA,CAAA,GAAA,CAAA,OA9GlC;iBA4HhC,WAAA,CA5HgC;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA4HK,OAAA,CAAM,cA5HX,CAAA,KAAA,CAAA,CAAA,EA4HgC,oBAAA,CAAA,GAAA,CAAA,OA5HhC;AAAA,iBAsIhC,UAAA,CAxGR;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAwG4C,OAAA,CAAM,cAxGlD,CAAA,KAAA,CAAA,CAAA,EAwGuE,oBAAA,CAAA,GAAA,CAAA,OAxGvE;iBAqHQ,UAAA,CAnHI;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAmHgC,OAAA,CAAM,cAnHtC,CAAA,KAAA,CAAA,CAAA,EAmH2D,oBAAA,CAAA,GAAA,CAAA,OAnH3D"}
1
+ {"version":3,"file":"item.d.ts","names":[],"sources":["../../../src/react/ui/item.tsx"],"sourcesContent":[],"mappings":";;;;;;;iBAOS,SAAA;;;GAAmC,OAAA,CAAM,wBAAqB,oBAAA,CAAA,GAAA,CAAA;iBAW9D,aAAA;;;GAGN,OAAA,CAAM,sBAAsB,aAAU,oBAAA,CAAA,GAAA,CAAA;cAWnC,oBAzBY;;EAAT,IAAA,CAAA,EAAA,SAAS,GAAA,IAAA,GAAA,IAAA,GAAA,SAAA;CAAA,GA4CjB,+BAAA,CAAA,SA5CiB,CAAA,GAAA,SAAA,EAAA,GAAA,MAAA;;iBA+CT,IAAA,CA/CyC;EAAA,SAAA;EAAA,OAAA;EAAA,IAAA;EAAA,OAAA;EAAA,GAAA;CAAA,EAqD/C,OAAA,CAAM,cArDyC,CAAA,KAAA,CAAA,GAsDhD,YAtDgD,CAAA,OAsD5B,YAtD4B,CAAA,GAAA;SAAqB,CAAA,EAAA,OAAA;CAAA,CAAA,EAsDZ,oBAAA,CAAA,GAAA,CAAA,OAtDY;AAAA,cAmEjE,iBAxDgB,EAAA,CAAA,KACpB,CADoB,EAAA,CAAA;EAAA,OAAA,CAAA,EAAA,SAAA,GAAA,MAAA,GAAA,OAAA,GAAA,IAAA,GAAA,SAAA;IAuErB,+BAAA,CAAA,SAtEC,CAAA,GAAA,SAAA,EAAA,GAAA,MAAA;iBAwEO,SAAA,CAtEsB;EAAA,SAAA;EAAA,OAAA;EAAA,GAAA;AAAA,CAAA,EA0E5B,OAAA,CAAM,cA1EsB,CAAA,KAAA,CAAA,GA0EE,YA1EF,CAAA,OA0EsB,iBA1EtB,CAAA,CAAA,EA0EwC,oBAAA,CAAA,GAAA,CAAA,OA1ExC;iBAqFtB,WAAA,CArFA;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAqFqC,OAAA,CAAM,cArF3C,CAAA,KAAA,CAAA,CAAA,EAqFgE,oBAAA,CAAA,GAAA,CAAA,OArFhE;iBAkGA,SAAA,CAlGgC;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAkGG,OAAA,CAAM,cAlGT,CAAA,KAAA,CAAA,CAAA,EAkG8B,oBAAA,CAAA,GAAA,CAAA,OAlG9B;iBA+GhC,eAAA,CA/GgC;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA+GS,OAAA,CAAM,cA/Gf,CAAA,GAAA,CAAA,CAAA,EA+GkC,oBAAA,CAAA,GAAA,CAAA,OA/GlC;AAAA,iBA6HhC,WAAA,CA/FR;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA+F6C,OAAA,CAAM,cA/FnD,CAAA,KAAA,CAAA,CAAA,EA+FwE,oBAAA,CAAA,GAAA,CAAA,OA/FxE;iBAyGQ,UAAA,CAtGI;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAsGgC,OAAA,CAAM,cAtGtC,CAAA,KAAA,CAAA,CAAA,EAsG2D,oBAAA,CAAA,GAAA,CAAA,OAtG3D;iBAmHJ,UAAA,CAnHI;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAmHgC,OAAA,CAAM,cAnHtC,CAAA,KAAA,CAAA,CAAA,EAmH2D,oBAAA,CAAA,GAAA,CAAA,OAnH3D"}
@@ -38,6 +38,7 @@ const itemVariants = cva("group/item flex items-center border border-transparent
38
38
  size: "default"
39
39
  }
40
40
  });
41
+ /** Flexible container for list items with media, content, and actions */
41
42
  function Item({ className, variant = "default", size = "default", asChild = false, ...props }) {
42
43
  return /* @__PURE__ */ jsx(asChild ? Slot : "div", {
43
44
  "data-slot": "item",
@@ -1 +1 @@
1
- {"version":3,"file":"item.js","names":[],"sources":["../../../src/react/ui/item.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../lib/utils\";\nimport { Separator } from \"./separator\";\n\nfunction ItemGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n className={cn(\"group/item-group flex flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"item-separator\"\n orientation=\"horizontal\"\n className={cn(\"my-0\", className)}\n {...props}\n />\n );\n}\n\nconst itemVariants = cva(\n \"group/item flex items-center border border-transparent text-sm rounded-md transition-colors [a]:hover:bg-accent/50 [a]:transition-colors duration-100 flex-wrap outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border-border\",\n muted: \"bg-muted/50\",\n },\n size: {\n default: \"p-4 gap-4 \",\n sm: \"py-3 px-4 gap-2.5\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction Item({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> &\n VariantProps<typeof itemVariants> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"div\";\n return (\n <Comp\n data-slot=\"item\"\n data-variant={variant}\n data-size={size}\n className={cn(itemVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\nconst itemMediaVariants = cva(\n \"flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none group-has-[[data-slot=item-description]]/item:translate-y-0.5\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"size-8 border rounded-sm bg-muted [&_svg:not([class*='size-'])]:size-4\",\n image:\n \"size-10 rounded-sm overflow-hidden [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction ItemMedia({\n className,\n variant = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>) {\n return (\n <div\n data-slot=\"item-media\"\n data-variant={variant}\n className={cn(itemMediaVariants({ variant, className }))}\n {...props}\n />\n );\n}\n\nfunction ItemContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-content\"\n className={cn(\n \"flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-title\"\n className={cn(\n \"flex w-fit items-center gap-2 text-sm leading-snug font-medium\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"item-description\"\n className={cn(\n \"text-muted-foreground line-clamp-2 text-sm leading-normal font-normal text-balance\",\n \"[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemActions({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-actions\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-header\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-footer\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Item,\n ItemMedia,\n ItemContent,\n ItemActions,\n ItemGroup,\n ItemSeparator,\n ItemTitle,\n ItemDescription,\n ItemHeader,\n ItemFooter,\n};\n"],"mappings":";;;;;;;AAOA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;AACvE,QACE,oBAAC;EACC,MAAK;EACL,aAAU;EACV,WAAW,GAAG,kCAAkC,UAAU;EAC1D,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,WACA,GAAG,SACsC;AACzC,QACE,oBAAC;EACC,aAAU;EACV,aAAY;EACZ,WAAW,GAAG,QAAQ,UAAU;EAChC,GAAI;GACJ;;AAIN,MAAM,eAAe,IACnB,8PACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;GACT,OAAO;GACR;EACD,MAAM;GACJ,SAAS;GACT,IAAI;GACL;EACF;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACP;CACF,CACF;AAED,SAAS,KAAK,EACZ,WACA,UAAU,WACV,OAAO,WACP,UAAU,OACV,GAAG,SAEwD;AAE3D,QACE,oBAFW,UAAU,OAAO;EAG1B,aAAU;EACV,gBAAc;EACd,aAAW;EACX,WAAW,GAAG,aAAa;GAAE;GAAS;GAAM;GAAW,CAAC,CAAC;EACzD,GAAI;GACJ;;AAIN,MAAM,oBAAoB,IACxB,sMACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,MAAM;EACN,OACE;EACH,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,UAAU,EACjB,WACA,UAAU,WACV,GAAG,SACoE;AACvE,QACE,oBAAC;EACC,aAAU;EACV,gBAAc;EACd,WAAW,GAAG,kBAAkB;GAAE;GAAS;GAAW,CAAC,CAAC;EACxD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,qEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;AACvE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,kEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAoC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sFACA,qEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,2BAA2B,UAAU;EACnD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;GACJ"}
1
+ {"version":3,"file":"item.js","names":[],"sources":["../../../src/react/ui/item.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../lib/utils\";\nimport { Separator } from \"./separator\";\n\nfunction ItemGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n className={cn(\"group/item-group flex flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"item-separator\"\n orientation=\"horizontal\"\n className={cn(\"my-0\", className)}\n {...props}\n />\n );\n}\n\nconst itemVariants = cva(\n \"group/item flex items-center border border-transparent text-sm rounded-md transition-colors [a]:hover:bg-accent/50 [a]:transition-colors duration-100 flex-wrap outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border-border\",\n muted: \"bg-muted/50\",\n },\n size: {\n default: \"p-4 gap-4 \",\n sm: \"py-3 px-4 gap-2.5\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\n/** Flexible container for list items with media, content, and actions */\nfunction Item({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> &\n VariantProps<typeof itemVariants> & { asChild?: boolean }) {\n const Comp = asChild ? Slot : \"div\";\n return (\n <Comp\n data-slot=\"item\"\n data-variant={variant}\n data-size={size}\n className={cn(itemVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\nconst itemMediaVariants = cva(\n \"flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none group-has-[[data-slot=item-description]]/item:translate-y-0.5\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"size-8 border rounded-sm bg-muted [&_svg:not([class*='size-'])]:size-4\",\n image:\n \"size-10 rounded-sm overflow-hidden [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction ItemMedia({\n className,\n variant = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>) {\n return (\n <div\n data-slot=\"item-media\"\n data-variant={variant}\n className={cn(itemMediaVariants({ variant, className }))}\n {...props}\n />\n );\n}\n\nfunction ItemContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-content\"\n className={cn(\n \"flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-title\"\n className={cn(\n \"flex w-fit items-center gap-2 text-sm leading-snug font-medium\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"item-description\"\n className={cn(\n \"text-muted-foreground line-clamp-2 text-sm leading-normal font-normal text-balance\",\n \"[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemActions({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-actions\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-header\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-footer\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Item,\n ItemMedia,\n ItemContent,\n ItemActions,\n ItemGroup,\n ItemSeparator,\n ItemTitle,\n ItemDescription,\n ItemHeader,\n ItemFooter,\n};\n"],"mappings":";;;;;;;AAOA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;AACvE,QACE,oBAAC;EACC,MAAK;EACL,aAAU;EACV,WAAW,GAAG,kCAAkC,UAAU;EAC1D,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,WACA,GAAG,SACsC;AACzC,QACE,oBAAC;EACC,aAAU;EACV,aAAY;EACZ,WAAW,GAAG,QAAQ,UAAU;EAChC,GAAI;GACJ;;AAIN,MAAM,eAAe,IACnB,8PACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;GACT,OAAO;GACR;EACD,MAAM;GACJ,SAAS;GACT,IAAI;GACL;EACF;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACP;CACF,CACF;;AAGD,SAAS,KAAK,EACZ,WACA,UAAU,WACV,OAAO,WACP,UAAU,OACV,GAAG,SAEwD;AAE3D,QACE,oBAFW,UAAU,OAAO;EAG1B,aAAU;EACV,gBAAc;EACd,aAAW;EACX,WAAW,GAAG,aAAa;GAAE;GAAS;GAAM;GAAW,CAAC,CAAC;EACzD,GAAI;GACJ;;AAIN,MAAM,oBAAoB,IACxB,sMACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,MAAM;EACN,OACE;EACH,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAED,SAAS,UAAU,EACjB,WACA,UAAU,WACV,GAAG,SACoE;AACvE,QACE,oBAAC;EACC,aAAU;EACV,gBAAc;EACd,WAAW,GAAG,kBAAkB;GAAE;GAAS;GAAW,CAAC,CAAC;EACxD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,qEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;AACvE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,kEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAoC;AAC3E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sFACA,qEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,2BAA2B,UAAU;EACnD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;GACJ"}
@@ -1,6 +1,7 @@
1
1
  import * as react_jsx_runtime166 from "react/jsx-runtime";
2
2
 
3
3
  //#region src/react/ui/kbd.d.ts
4
+ /** Visual representation of keyboard keys */
4
5
  declare function Kbd({
5
6
  className,
6
7
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"kbd.d.ts","names":[],"sources":["../../../src/react/ui/kbd.tsx"],"sourcesContent":[],"mappings":";;;iBAES,GAAA;;;GAA6B,KAAA,CAAM,wBAAqB,oBAAA,CAAA,GAAA,CAAA;iBAexD,QAAA;;;GAAkC,KAAA,CAAM,wBAAqB,oBAAA,CAAA,GAAA,CAAA"}
1
+ {"version":3,"file":"kbd.d.ts","names":[],"sources":["../../../src/react/ui/kbd.tsx"],"sourcesContent":[],"mappings":";;;;iBAGS,GAAA;;;GAA6B,KAAA,CAAM,wBAAqB,oBAAA,CAAA,GAAA,CAAA;iBAexD,QAAA;;;GAAkC,KAAA,CAAM,wBAAqB,oBAAA,CAAA,GAAA,CAAA"}
@@ -2,6 +2,7 @@ import { cn } from "../lib/utils.js";
2
2
  import { jsx } from "react/jsx-runtime";
3
3
 
4
4
  //#region src/react/ui/kbd.tsx
5
+ /** Visual representation of keyboard keys */
5
6
  function Kbd({ className, ...props }) {
6
7
  return /* @__PURE__ */ jsx("kbd", {
7
8
  "data-slot": "kbd",
@@ -1 +1 @@
1
- {"version":3,"file":"kbd.js","names":[],"sources":["../../../src/react/ui/kbd.tsx"],"sourcesContent":["import { cn } from \"../lib/utils\";\n\nfunction Kbd({ className, ...props }: React.ComponentProps<\"kbd\">) {\n return (\n <kbd\n data-slot=\"kbd\"\n className={cn(\n \"bg-muted text-muted-foreground pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none\",\n \"[&_svg:not([class*='size-'])]:size-3\",\n \"[[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction KbdGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <kbd\n data-slot=\"kbd-group\"\n className={cn(\"inline-flex items-center gap-1\", className)}\n {...props}\n />\n );\n}\n\nexport { Kbd, KbdGroup };\n"],"mappings":";;;;AAEA,SAAS,IAAI,EAAE,WAAW,GAAG,SAAsC;AACjE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,gLACA,wCACA,0JACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,SAAS,EAAE,WAAW,GAAG,SAAsC;AACtE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,kCAAkC,UAAU;EAC1D,GAAI;GACJ"}
1
+ {"version":3,"file":"kbd.js","names":[],"sources":["../../../src/react/ui/kbd.tsx"],"sourcesContent":["import { cn } from \"../lib/utils\";\n\n/** Visual representation of keyboard keys */\nfunction Kbd({ className, ...props }: React.ComponentProps<\"kbd\">) {\n return (\n <kbd\n data-slot=\"kbd\"\n className={cn(\n \"bg-muted text-muted-foreground pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none\",\n \"[&_svg:not([class*='size-'])]:size-3\",\n \"[[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction KbdGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <kbd\n data-slot=\"kbd-group\"\n className={cn(\"inline-flex items-center gap-1\", className)}\n {...props}\n />\n );\n}\n\nexport { Kbd, KbdGroup };\n"],"mappings":";;;;;AAGA,SAAS,IAAI,EAAE,WAAW,GAAG,SAAsC;AACjE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,gLACA,wCACA,0JACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,SAAS,EAAE,WAAW,GAAG,SAAsC;AACtE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,kCAAkC,UAAU;EAC1D,GAAI;GACJ"}
@@ -3,6 +3,7 @@ import * as react_jsx_runtime168 from "react/jsx-runtime";
3
3
  import * as LabelPrimitive from "@radix-ui/react-label";
4
4
 
5
5
  //#region src/react/ui/label.d.ts
6
+ /** Text label associated with form controls */
6
7
  declare function Label({
7
8
  className,
8
9
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"label.d.ts","names":[],"sources":["../../../src/react/ui/label.tsx"],"sourcesContent":[],"mappings":";;;;;iBAOS,KAAA;;;GAGN,OAAA,CAAM,sBAAsB,cAAA,CAAe,QAAK,oBAAA,CAAA,GAAA,CAAA"}
1
+ {"version":3,"file":"label.d.ts","names":[],"sources":["../../../src/react/ui/label.tsx"],"sourcesContent":[],"mappings":";;;;;;iBAQS,KAAA;;;GAGN,OAAA,CAAM,sBAAsB,cAAA,CAAe,QAAK,oBAAA,CAAA,GAAA,CAAA"}
@@ -5,6 +5,7 @@ import { jsx } from "react/jsx-runtime";
5
5
  import * as LabelPrimitive from "@radix-ui/react-label";
6
6
 
7
7
  //#region src/react/ui/label.tsx
8
+ /** Text label associated with form controls */
8
9
  function Label({ className, ...props }) {
9
10
  return /* @__PURE__ */ jsx(LabelPrimitive.Root, {
10
11
  "data-slot": "label",
@@ -1 +1 @@
1
- {"version":3,"file":"label.js","names":[],"sources":["../../../src/react/ui/label.tsx"],"sourcesContent":["\"use client\";\n\nimport type * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction Label({\n className,\n ...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n return (\n <LabelPrimitive.Root\n data-slot=\"label\"\n className={cn(\n \"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Label };\n"],"mappings":";;;;;;;AAOA,SAAS,MAAM,EACb,WACA,GAAG,SACgD;AACnD,QACE,oBAAC,eAAe;EACd,aAAU;EACV,WAAW,GACT,uNACA,UACD;EACD,GAAI;GACJ"}
1
+ {"version":3,"file":"label.js","names":[],"sources":["../../../src/react/ui/label.tsx"],"sourcesContent":["\"use client\";\n\nimport type * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\n\nimport { cn } from \"../lib/utils\";\n\n/** Text label associated with form controls */\nfunction Label({\n className,\n ...props\n}: React.ComponentProps<typeof LabelPrimitive.Root>) {\n return (\n <LabelPrimitive.Root\n data-slot=\"label\"\n className={cn(\n \"flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Label };\n"],"mappings":";;;;;;;;AAQA,SAAS,MAAM,EACb,WACA,GAAG,SACgD;AACnD,QACE,oBAAC,eAAe;EACd,aAAU;EACV,WAAW,GACT,uNACA,UACD;EACD,GAAI;GACJ"}
@@ -3,6 +3,7 @@ import * as react_jsx_runtime169 from "react/jsx-runtime";
3
3
  import * as MenubarPrimitive from "@radix-ui/react-menubar";
4
4
 
5
5
  //#region src/react/ui/menubar.d.ts
6
+ /** Horizontal menu bar with dropdown menus */
6
7
  declare function Menubar({
7
8
  className,
8
9
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.d.ts","names":[],"sources":["../../../src/react/ui/menubar.tsx"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"menubar.d.ts","names":[],"sources":["../../../src/react/ui/menubar.tsx"],"sourcesContent":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { CheckIcon, ChevronRightIcon, CircleIcon } from "lucide-react";
5
5
  import * as MenubarPrimitive from "@radix-ui/react-menubar";
6
6
 
7
7
  //#region src/react/ui/menubar.tsx
8
+ /** Horizontal menu bar with dropdown menus */
8
9
  function Menubar({ className, ...props }) {
9
10
  return /* @__PURE__ */ jsx(MenubarPrimitive.Root, {
10
11
  "data-slot": "menubar",
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.js","names":[],"sources":["../../../src/react/ui/menubar.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport * as MenubarPrimitive from \"@radix-ui/react-menubar\";\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\nimport { useResolvedPortalContainer } from \"../portal-container-context\";\n\nfunction Menubar({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Root>) {\n return (\n <MenubarPrimitive.Root\n data-slot=\"menubar\"\n className={cn(\n \"bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarMenu({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Menu>) {\n return <MenubarPrimitive.Menu data-slot=\"menubar-menu\" {...props} />;\n}\n\nfunction MenubarGroup({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Group>) {\n return <MenubarPrimitive.Group data-slot=\"menubar-group\" {...props} />;\n}\n\nfunction MenubarPortal({\n container,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Portal>) {\n return (\n <MenubarPrimitive.Portal\n data-slot=\"menubar-portal\"\n container={useResolvedPortalContainer(container)}\n {...props}\n />\n );\n}\n\nfunction MenubarRadioGroup({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.RadioGroup>) {\n return (\n <MenubarPrimitive.RadioGroup data-slot=\"menubar-radio-group\" {...props} />\n );\n}\n\nfunction MenubarTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Trigger>) {\n return (\n <MenubarPrimitive.Trigger\n data-slot=\"menubar-trigger\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarContent({\n className,\n align = \"start\",\n alignOffset = -4,\n sideOffset = 8,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Content>) {\n return (\n <MenubarPortal>\n <MenubarPrimitive.Content\n data-slot=\"menubar-content\"\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md\",\n className,\n )}\n {...props}\n />\n </MenubarPortal>\n );\n}\n\nfunction MenubarItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <MenubarPrimitive.Item\n data-slot=\"menubar-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.CheckboxItem>) {\n return (\n <MenubarPrimitive.CheckboxItem\n data-slot=\"menubar-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.CheckboxItem>\n );\n}\n\nfunction MenubarRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.RadioItem>) {\n return (\n <MenubarPrimitive.RadioItem\n data-slot=\"menubar-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.RadioItem>\n );\n}\n\nfunction MenubarLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.Label\n data-slot=\"menubar-label\"\n data-inset={inset}\n className={cn(\n \"px-2 py-1.5 text-sm font-medium data-[inset]:pl-8\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Separator>) {\n return (\n <MenubarPrimitive.Separator\n data-slot=\"menubar-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction MenubarShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"menubar-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarSub({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Sub>) {\n return <MenubarPrimitive.Sub data-slot=\"menubar-sub\" {...props} />;\n}\n\nfunction MenubarSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.SubTrigger\n data-slot=\"menubar-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </MenubarPrimitive.SubTrigger>\n );\n}\n\nfunction MenubarSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubContent>) {\n return (\n <MenubarPrimitive.SubContent\n data-slot=\"menubar-sub-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Menubar,\n MenubarPortal,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarGroup,\n MenubarSeparator,\n MenubarLabel,\n MenubarItem,\n MenubarShortcut,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSub,\n MenubarSubTrigger,\n MenubarSubContent,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"menubar.js","names":[],"sources":["../../../src/react/ui/menubar.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport * as MenubarPrimitive from \"@radix-ui/react-menubar\";\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\nimport { useResolvedPortalContainer } from \"../portal-container-context\";\n\n/** Horizontal menu bar with dropdown menus */\nfunction Menubar({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Root>) {\n return (\n <MenubarPrimitive.Root\n data-slot=\"menubar\"\n className={cn(\n \"bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarMenu({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Menu>) {\n return <MenubarPrimitive.Menu data-slot=\"menubar-menu\" {...props} />;\n}\n\nfunction MenubarGroup({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Group>) {\n return <MenubarPrimitive.Group data-slot=\"menubar-group\" {...props} />;\n}\n\nfunction MenubarPortal({\n container,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Portal>) {\n return (\n <MenubarPrimitive.Portal\n data-slot=\"menubar-portal\"\n container={useResolvedPortalContainer(container)}\n {...props}\n />\n );\n}\n\nfunction MenubarRadioGroup({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.RadioGroup>) {\n return (\n <MenubarPrimitive.RadioGroup data-slot=\"menubar-radio-group\" {...props} />\n );\n}\n\nfunction MenubarTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Trigger>) {\n return (\n <MenubarPrimitive.Trigger\n data-slot=\"menubar-trigger\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarContent({\n className,\n align = \"start\",\n alignOffset = -4,\n sideOffset = 8,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Content>) {\n return (\n <MenubarPortal>\n <MenubarPrimitive.Content\n data-slot=\"menubar-content\"\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md\",\n className,\n )}\n {...props}\n />\n </MenubarPortal>\n );\n}\n\nfunction MenubarItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <MenubarPrimitive.Item\n data-slot=\"menubar-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.CheckboxItem>) {\n return (\n <MenubarPrimitive.CheckboxItem\n data-slot=\"menubar-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.CheckboxItem>\n );\n}\n\nfunction MenubarRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.RadioItem>) {\n return (\n <MenubarPrimitive.RadioItem\n data-slot=\"menubar-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.RadioItem>\n );\n}\n\nfunction MenubarLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.Label\n data-slot=\"menubar-label\"\n data-inset={inset}\n className={cn(\n \"px-2 py-1.5 text-sm font-medium data-[inset]:pl-8\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Separator>) {\n return (\n <MenubarPrimitive.Separator\n data-slot=\"menubar-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction MenubarShortcut({\n className,\n ...props\n}: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"menubar-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarSub({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Sub>) {\n return <MenubarPrimitive.Sub data-slot=\"menubar-sub\" {...props} />;\n}\n\nfunction MenubarSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.SubTrigger\n data-slot=\"menubar-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </MenubarPrimitive.SubTrigger>\n );\n}\n\nfunction MenubarSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubContent>) {\n return (\n <MenubarPrimitive.SubContent\n data-slot=\"menubar-sub-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Menubar,\n MenubarPortal,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarGroup,\n MenubarSeparator,\n MenubarLabel,\n MenubarItem,\n MenubarShortcut,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSub,\n MenubarSubTrigger,\n MenubarSubContent,\n};\n"],"mappings":"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"}
@@ -4,6 +4,7 @@ import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
4
4
  import * as class_variance_authority_types9 from "class-variance-authority/types";
5
5
 
6
6
  //#region src/react/ui/navigation-menu.d.ts
7
+ /** Horizontal navigation menu with dropdown submenus */
7
8
  declare function NavigationMenu({
8
9
  className,
9
10
  children,
@@ -12,32 +13,39 @@ declare function NavigationMenu({
12
13
  }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Root> & {
13
14
  viewport?: boolean;
14
15
  }): react_jsx_runtime185.JSX.Element;
16
+ /** Container list for navigation menu items */
15
17
  declare function NavigationMenuList({
16
18
  className,
17
19
  ...props
18
20
  }: React$1.ComponentProps<typeof NavigationMenuPrimitive.List>): react_jsx_runtime185.JSX.Element;
21
+ /** Individual navigation menu item */
19
22
  declare function NavigationMenuItem({
20
23
  className,
21
24
  ...props
22
25
  }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Item>): react_jsx_runtime185.JSX.Element;
23
26
  declare const navigationMenuTriggerStyle: (props?: class_variance_authority_types9.ClassProp | undefined) => string;
27
+ /** Button that opens a navigation submenu */
24
28
  declare function NavigationMenuTrigger({
25
29
  className,
26
30
  children,
27
31
  ...props
28
32
  }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Trigger>): react_jsx_runtime185.JSX.Element;
33
+ /** Dropdown content area for navigation submenu */
29
34
  declare function NavigationMenuContent({
30
35
  className,
31
36
  ...props
32
37
  }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Content>): react_jsx_runtime185.JSX.Element;
38
+ /** Viewport container for navigation menu content */
33
39
  declare function NavigationMenuViewport({
34
40
  className,
35
41
  ...props
36
42
  }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Viewport>): react_jsx_runtime185.JSX.Element;
43
+ /** Clickable link within navigation menu */
37
44
  declare function NavigationMenuLink({
38
45
  className,
39
46
  ...props
40
47
  }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Link>): react_jsx_runtime185.JSX.Element;
48
+ /** Visual indicator for active navigation menu item */
41
49
  declare function NavigationMenuIndicator({
42
50
  className,
43
51
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-menu.d.ts","names":[],"sources":["../../../src/react/ui/navigation-menu.tsx"],"sourcesContent":[],"mappings":";;;;;;iBAOS,cAAA;;;;;GAKN,OAAA,CAAM,sBAAsB,uBAAA,CAAwB;;IAEtD,oBAAA,CAAA,GAAA,CAAA;iBAiBQ,kBAAA;;;GAGN,OAAA,CAAM,sBAAsB,uBAAA,CAAwB,QAAK,oBAAA,CAAA,GAAA,CAAA;AAjCe,iBA8ClE,kBAAA,CAxCc;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA2CpB,OAAA,CAAM,cA3Cc,CAAA,OA2CQ,uBAAA,CAAwB,IA3ChC,CAAA,CAAA,EA2CqC,oBAAA,CAAA,GAAA,CAAA,OA3CrC;cAqDjB,0BArDiB,EAAA,CAAA,KAAA,CAAA,EAuDtB,+BAAA,CAF+B,SAAA,GArDT,SAAA,EAAA,GAAA,MAAA;iBAyDd,qBAAA,CAxDP;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;AAAA,CAAA,EA4DC,OAAA,CAAM,cA5DP,CAAA,OA4D6B,uBAAA,CAAwB,OA5DrD,CAAA,CAAA,EA4D6D,oBAAA,CAAA,GAAA,CAAA,OA5D7D;iBA4EO,qBAAA,CA3EP;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8EC,OAAA,CAAM,cA9EP,CAAA,OA8E6B,uBAAA,CAAwB,OA9ErD,CAAA,CAAA,EA8E6D,oBAAA,CAAA,GAAA,CAAA,OA9E7D;iBA4FO,sBAAA,CA3FP;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA8FC,OAAA,CAAM,cA9FP,CAAA,OA8F6B,uBAAA,CAAwB,QA9FrD,CAAA,CAAA,EA8F8D,oBAAA,CAAA,GAAA,CAAA,OA9F9D;iBAiHO,kBAAA,CA/G8C;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAkHpD,OAAA,CAAM,cAlH8C,CAAA,OAkHxB,uBAAA,CAAwB,IAlHA,CAAA,CAAA,EAkHK,oBAAA,CAAA,GAAA,CAAA,OAlHL;iBA+H9C,uBAAA,CA/HA;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAkIN,OAAA,CAAM,cAlIA,CAAA,OAkIsB,uBAAA,CAAwB,SAlI9C,CAAA,CAAA,EAkIwD,oBAAA,CAAA,GAAA,CAAA,OAlIxD"}
1
+ {"version":3,"file":"navigation-menu.d.ts","names":[],"sources":["../../../src/react/ui/navigation-menu.tsx"],"sourcesContent":[],"mappings":";;;;;;;iBAQS,cAAA;;;;;GAKN,OAAA,CAAM,sBAAsB,uBAAA,CAAwB;;IAEtD,oBAAA,CAAA,GAAA,CAAA;AAd0E;iBAgClE,kBAAA,CAzBc;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA4BpB,OAAA,CAAM,cA5Bc,CAAA,OA4BQ,uBAAA,CAAwB,IA5BhC,CAAA,CAAA,EA4BqC,oBAAA,CAAA,GAAA,CAAA,OA5BrC;;iBA0Cd,kBAAA,CAxCP;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA2CC,OAAA,CAAM,cA3CP,CAAA,OA2C6B,uBAAA,CAAwB,IA3CrD,CAAA,CAAA,EA2C0D,oBAAA,CAAA,GAAA,CAAA,OA3C1D;cAqDI,0BApDJ,EAAA,CAAA,KAAA,CAAA,EAsDD,+BAAA,CAF+B,SAAA,GApD9B,SAAA,EAAA,GAAA,MAAA;;iBAyDO,qBAAA,CAvDA;EAAA,SAAA;EAAA,QAAA;EAAA,GAAA;AAAA,CAAA,EA2DN,OAAA,CAAM,cA3DA,CAAA,OA2DsB,uBAAA,CAAwB,OA3D9C,CAAA,CAAA,EA2DsD,oBAAA,CAAA,GAAA,CAAA,OA3DtD;;iBA4EA,qBAAA,CA1ER;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA6EE,OAAA,CAAM,cA7ER,CAAA,OA6E8B,uBAAA,CAAwB,OA7EtD,CAAA,CAAA,EA6E8D,oBAAA,CAAA,GAAA,CAAA,OA7E9D;AAAA;iBA4FQ,sBAAA,CA1EkB;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EA6ExB,OAAA,CAAM,cA7EkB,CAAA,OA6EI,uBAAA,CAAwB,QA7E5B,CAAA,CAAA,EA6EqC,oBAAA,CAAA,GAAA,CAAA,OA7ErC;;iBAiGlB,kBAAA,CA9F8C;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAiGpD,OAAA,CAAM,cAjG8C,CAAA,OAiGxB,uBAAA,CAAwB,IAjGA,CAAA,CAAA,EAiGK,oBAAA,CAAA,GAAA,CAAA,OAjGL;;iBA+G9C,uBAAA,CA/GmD;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAkHzD,OAAA,CAAM,cAlHmD,CAAA,OAkH7B,uBAAA,CAAwB,SAlHK,CAAA,CAAA,EAkHK,oBAAA,CAAA,GAAA,CAAA,OAlHL"}
@@ -5,6 +5,7 @@ import { cva } from "class-variance-authority";
5
5
  import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
6
6
 
7
7
  //#region src/react/ui/navigation-menu.tsx
8
+ /** Horizontal navigation menu with dropdown submenus */
8
9
  function NavigationMenu({ className, children, viewport = true, ...props }) {
9
10
  return /* @__PURE__ */ jsxs(NavigationMenuPrimitive.Root, {
10
11
  "data-slot": "navigation-menu",
@@ -14,6 +15,7 @@ function NavigationMenu({ className, children, viewport = true, ...props }) {
14
15
  children: [children, viewport && /* @__PURE__ */ jsx(NavigationMenuViewport, {})]
15
16
  });
16
17
  }
18
+ /** Container list for navigation menu items */
17
19
  function NavigationMenuList({ className, ...props }) {
18
20
  return /* @__PURE__ */ jsx(NavigationMenuPrimitive.List, {
19
21
  "data-slot": "navigation-menu-list",
@@ -21,6 +23,7 @@ function NavigationMenuList({ className, ...props }) {
21
23
  ...props
22
24
  });
23
25
  }
26
+ /** Individual navigation menu item */
24
27
  function NavigationMenuItem({ className, ...props }) {
25
28
  return /* @__PURE__ */ jsx(NavigationMenuPrimitive.Item, {
26
29
  "data-slot": "navigation-menu-item",
@@ -29,6 +32,7 @@ function NavigationMenuItem({ className, ...props }) {
29
32
  });
30
33
  }
31
34
  const navigationMenuTriggerStyle = cva("group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-accent data-[state=open]:text-accent-foreground data-[state=open]:focus:bg-accent data-[state=open]:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1");
35
+ /** Button that opens a navigation submenu */
32
36
  function NavigationMenuTrigger({ className, children, ...props }) {
33
37
  return /* @__PURE__ */ jsxs(NavigationMenuPrimitive.Trigger, {
34
38
  "data-slot": "navigation-menu-trigger",
@@ -44,6 +48,7 @@ function NavigationMenuTrigger({ className, children, ...props }) {
44
48
  ]
45
49
  });
46
50
  }
51
+ /** Dropdown content area for navigation submenu */
47
52
  function NavigationMenuContent({ className, ...props }) {
48
53
  return /* @__PURE__ */ jsx(NavigationMenuPrimitive.Content, {
49
54
  "data-slot": "navigation-menu-content",
@@ -51,6 +56,7 @@ function NavigationMenuContent({ className, ...props }) {
51
56
  ...props
52
57
  });
53
58
  }
59
+ /** Viewport container for navigation menu content */
54
60
  function NavigationMenuViewport({ className, ...props }) {
55
61
  return /* @__PURE__ */ jsx("div", {
56
62
  className: cn("absolute top-full left-0 isolate z-50 flex justify-center"),
@@ -61,6 +67,7 @@ function NavigationMenuViewport({ className, ...props }) {
61
67
  })
62
68
  });
63
69
  }
70
+ /** Clickable link within navigation menu */
64
71
  function NavigationMenuLink({ className, ...props }) {
65
72
  return /* @__PURE__ */ jsx(NavigationMenuPrimitive.Link, {
66
73
  "data-slot": "navigation-menu-link",
@@ -68,6 +75,7 @@ function NavigationMenuLink({ className, ...props }) {
68
75
  ...props
69
76
  });
70
77
  }
78
+ /** Visual indicator for active navigation menu item */
71
79
  function NavigationMenuIndicator({ className, ...props }) {
72
80
  return /* @__PURE__ */ jsx(NavigationMenuPrimitive.Indicator, {
73
81
  "data-slot": "navigation-menu-indicator",
@@ -1 +1 @@
1
- {"version":3,"file":"navigation-menu.js","names":[],"sources":["../../../src/react/ui/navigation-menu.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport * as NavigationMenuPrimitive from \"@radix-ui/react-navigation-menu\";\nimport { cva } from \"class-variance-authority\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\nfunction NavigationMenu({\n className,\n children,\n viewport = true,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Root> & {\n viewport?: boolean;\n}) {\n return (\n <NavigationMenuPrimitive.Root\n data-slot=\"navigation-menu\"\n data-viewport={viewport}\n className={cn(\n \"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center\",\n className,\n )}\n {...props}\n >\n {children}\n {viewport && <NavigationMenuViewport />}\n </NavigationMenuPrimitive.Root>\n );\n}\n\nfunction NavigationMenuList({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.List>) {\n return (\n <NavigationMenuPrimitive.List\n data-slot=\"navigation-menu-list\"\n className={cn(\n \"group flex flex-1 list-none items-center justify-center gap-1\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction NavigationMenuItem({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Item>) {\n return (\n <NavigationMenuPrimitive.Item\n data-slot=\"navigation-menu-item\"\n className={cn(\"relative\", className)}\n {...props}\n />\n );\n}\n\nconst navigationMenuTriggerStyle = cva(\n \"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-accent data-[state=open]:text-accent-foreground data-[state=open]:focus:bg-accent data-[state=open]:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1\",\n);\n\nfunction NavigationMenuTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Trigger>) {\n return (\n <NavigationMenuPrimitive.Trigger\n data-slot=\"navigation-menu-trigger\"\n className={cn(navigationMenuTriggerStyle(), \"group\", className)}\n {...props}\n >\n {children}{\" \"}\n <ChevronDownIcon\n className=\"relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180\"\n aria-hidden=\"true\"\n />\n </NavigationMenuPrimitive.Trigger>\n );\n}\n\nfunction NavigationMenuContent({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Content>) {\n return (\n <NavigationMenuPrimitive.Content\n data-slot=\"navigation-menu-content\"\n className={cn(\n \"data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto\",\n \"group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction NavigationMenuViewport({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Viewport>) {\n return (\n <div\n className={cn(\n \"absolute top-full left-0 isolate z-50 flex justify-center\",\n )}\n >\n <NavigationMenuPrimitive.Viewport\n data-slot=\"navigation-menu-viewport\"\n className={cn(\n \"origin-top-center bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border shadow md:w-[var(--radix-navigation-menu-viewport-width)]\",\n className,\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction NavigationMenuLink({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Link>) {\n return (\n <NavigationMenuPrimitive.Link\n data-slot=\"navigation-menu-link\"\n className={cn(\n \"data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus-visible:ring-ring/50 [&_svg:not([class*='text-'])]:text-muted-foreground flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction NavigationMenuIndicator({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Indicator>) {\n return (\n <NavigationMenuPrimitive.Indicator\n data-slot=\"navigation-menu-indicator\"\n className={cn(\n \"data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden\",\n className,\n )}\n {...props}\n >\n <div className=\"bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md\" />\n </NavigationMenuPrimitive.Indicator>\n );\n}\n\nexport {\n NavigationMenu,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuContent,\n NavigationMenuTrigger,\n NavigationMenuLink,\n NavigationMenuIndicator,\n NavigationMenuViewport,\n navigationMenuTriggerStyle,\n};\n"],"mappings":";;;;;;;AAOA,SAAS,eAAe,EACtB,WACA,UACA,WAAW,MACX,GAAG,SAGF;AACD,QACE,qBAAC,wBAAwB;EACvB,aAAU;EACV,iBAAe;EACf,WAAW,GACT,oFACA,UACD;EACD,GAAI;aAEH,UACA,YAAY,oBAAC,2BAAyB;GACV;;AAInC,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,iEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GAAG,YAAY,UAAU;EACpC,GAAI;GACJ;;AAIN,MAAM,6BAA6B,IACjC,+fACD;AAED,SAAS,sBAAsB,EAC7B,WACA,UACA,GAAG,SAC4D;AAC/D,QACE,qBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GAAG,4BAA4B,EAAE,SAAS,UAAU;EAC/D,GAAI;;GAEH;GAAU;GACX,oBAAC;IACC,WAAU;IACV,eAAY;KACZ;;GAC8B;;AAItC,SAAS,sBAAsB,EAC7B,WACA,GAAG,SAC4D;AAC/D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,oWACA,6hCACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,uBAAuB,EAC9B,WACA,GAAG,SAC6D;AAChE,QACE,oBAAC;EACC,WAAW,GACT,4DACD;YAED,oBAAC,wBAAwB;GACvB,aAAU;GACV,WAAW,GACT,sVACA,UACD;GACD,GAAI;IACJ;GACE;;AAIV,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,ydACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,wBAAwB,EAC/B,WACA,GAAG,SAC8D;AACjE,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,gMACA,UACD;EACD,GAAI;YAEJ,oBAAC,SAAI,WAAU,2EAA2E;GACxD"}
1
+ {"version":3,"file":"navigation-menu.js","names":[],"sources":["../../../src/react/ui/navigation-menu.tsx"],"sourcesContent":["import type * as React from \"react\";\nimport * as NavigationMenuPrimitive from \"@radix-ui/react-navigation-menu\";\nimport { cva } from \"class-variance-authority\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport { cn } from \"../lib/utils\";\n\n/** Horizontal navigation menu with dropdown submenus */\nfunction NavigationMenu({\n className,\n children,\n viewport = true,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Root> & {\n viewport?: boolean;\n}) {\n return (\n <NavigationMenuPrimitive.Root\n data-slot=\"navigation-menu\"\n data-viewport={viewport}\n className={cn(\n \"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center\",\n className,\n )}\n {...props}\n >\n {children}\n {viewport && <NavigationMenuViewport />}\n </NavigationMenuPrimitive.Root>\n );\n}\n\n/** Container list for navigation menu items */\nfunction NavigationMenuList({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.List>) {\n return (\n <NavigationMenuPrimitive.List\n data-slot=\"navigation-menu-list\"\n className={cn(\n \"group flex flex-1 list-none items-center justify-center gap-1\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Individual navigation menu item */\nfunction NavigationMenuItem({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Item>) {\n return (\n <NavigationMenuPrimitive.Item\n data-slot=\"navigation-menu-item\"\n className={cn(\"relative\", className)}\n {...props}\n />\n );\n}\n\nconst navigationMenuTriggerStyle = cva(\n \"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-accent data-[state=open]:text-accent-foreground data-[state=open]:focus:bg-accent data-[state=open]:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1\",\n);\n\n/** Button that opens a navigation submenu */\nfunction NavigationMenuTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Trigger>) {\n return (\n <NavigationMenuPrimitive.Trigger\n data-slot=\"navigation-menu-trigger\"\n className={cn(navigationMenuTriggerStyle(), \"group\", className)}\n {...props}\n >\n {children}{\" \"}\n <ChevronDownIcon\n className=\"relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180\"\n aria-hidden=\"true\"\n />\n </NavigationMenuPrimitive.Trigger>\n );\n}\n\n/** Dropdown content area for navigation submenu */\nfunction NavigationMenuContent({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Content>) {\n return (\n <NavigationMenuPrimitive.Content\n data-slot=\"navigation-menu-content\"\n className={cn(\n \"data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto\",\n \"group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Viewport container for navigation menu content */\nfunction NavigationMenuViewport({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Viewport>) {\n return (\n <div\n className={cn(\n \"absolute top-full left-0 isolate z-50 flex justify-center\",\n )}\n >\n <NavigationMenuPrimitive.Viewport\n data-slot=\"navigation-menu-viewport\"\n className={cn(\n \"origin-top-center bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border shadow md:w-[var(--radix-navigation-menu-viewport-width)]\",\n className,\n )}\n {...props}\n />\n </div>\n );\n}\n\n/** Clickable link within navigation menu */\nfunction NavigationMenuLink({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Link>) {\n return (\n <NavigationMenuPrimitive.Link\n data-slot=\"navigation-menu-link\"\n className={cn(\n \"data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus-visible:ring-ring/50 [&_svg:not([class*='text-'])]:text-muted-foreground flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Visual indicator for active navigation menu item */\nfunction NavigationMenuIndicator({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Indicator>) {\n return (\n <NavigationMenuPrimitive.Indicator\n data-slot=\"navigation-menu-indicator\"\n className={cn(\n \"data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden\",\n className,\n )}\n {...props}\n >\n <div className=\"bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md\" />\n </NavigationMenuPrimitive.Indicator>\n );\n}\n\nexport {\n NavigationMenu,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuContent,\n NavigationMenuTrigger,\n NavigationMenuLink,\n NavigationMenuIndicator,\n NavigationMenuViewport,\n navigationMenuTriggerStyle,\n};\n"],"mappings":";;;;;;;;AAQA,SAAS,eAAe,EACtB,WACA,UACA,WAAW,MACX,GAAG,SAGF;AACD,QACE,qBAAC,wBAAwB;EACvB,aAAU;EACV,iBAAe;EACf,WAAW,GACT,oFACA,UACD;EACD,GAAI;aAEH,UACA,YAAY,oBAAC,2BAAyB;GACV;;;AAKnC,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,iEACA,UACD;EACD,GAAI;GACJ;;;AAKN,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GAAG,YAAY,UAAU;EACpC,GAAI;GACJ;;AAIN,MAAM,6BAA6B,IACjC,+fACD;;AAGD,SAAS,sBAAsB,EAC7B,WACA,UACA,GAAG,SAC4D;AAC/D,QACE,qBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GAAG,4BAA4B,EAAE,SAAS,UAAU;EAC/D,GAAI;;GAEH;GAAU;GACX,oBAAC;IACC,WAAU;IACV,eAAY;KACZ;;GAC8B;;;AAKtC,SAAS,sBAAsB,EAC7B,WACA,GAAG,SAC4D;AAC/D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,oWACA,6hCACA,UACD;EACD,GAAI;GACJ;;;AAKN,SAAS,uBAAuB,EAC9B,WACA,GAAG,SAC6D;AAChE,QACE,oBAAC;EACC,WAAW,GACT,4DACD;YAED,oBAAC,wBAAwB;GACvB,aAAU;GACV,WAAW,GACT,sVACA,UACD;GACD,GAAI;IACJ;GACE;;;AAKV,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,ydACA,UACD;EACD,GAAI;GACJ;;;AAKN,SAAS,wBAAwB,EAC/B,WACA,GAAG,SAC8D;AACjE,QACE,oBAAC,wBAAwB;EACvB,aAAU;EACV,WAAW,GACT,gMACA,UACD;EACD,GAAI;YAEJ,oBAAC,SAAI,WAAU,2EAA2E;GACxD"}