@health-samurai/react-components 0.0.0-alpha.2 → 0.0.0-alpha.21

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 (571) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +102 -1
  3. package/dist/bundle.css +2349 -754
  4. package/dist/src/components/button-dropdown.d.ts +10 -0
  5. package/dist/src/components/button-dropdown.d.ts.map +1 -0
  6. package/dist/src/components/button-dropdown.js +70 -0
  7. package/dist/src/components/button-dropdown.js.map +1 -0
  8. package/dist/src/components/button-dropdown.stories.js +48 -0
  9. package/dist/src/components/button-dropdown.stories.js.map +1 -0
  10. package/dist/src/components/code-editor/fhir-autocomplete.d.ts +70 -0
  11. package/dist/src/components/code-editor/fhir-autocomplete.d.ts.map +1 -0
  12. package/dist/src/components/code-editor/fhir-autocomplete.js +1850 -0
  13. package/dist/src/components/code-editor/fhir-autocomplete.js.map +1 -0
  14. package/dist/src/components/code-editor/fhir-autocomplete.test.js +1099 -0
  15. package/dist/src/components/code-editor/fhir-autocomplete.test.js.map +1 -0
  16. package/dist/src/components/code-editor/http/grammar/http.d.ts +3 -0
  17. package/dist/src/components/code-editor/http/grammar/http.d.ts.map +1 -0
  18. package/dist/src/components/code-editor/http/grammar/http.grammar +74 -0
  19. package/dist/src/components/code-editor/http/grammar/http.js +38 -0
  20. package/dist/src/components/code-editor/http/grammar/http.js.map +1 -0
  21. package/dist/src/components/code-editor/http/grammar/http.terms.d.ts +2 -0
  22. package/dist/src/components/code-editor/http/grammar/http.terms.d.ts.map +1 -0
  23. package/dist/src/components/code-editor/http/grammar/http.terms.js +4 -0
  24. package/dist/src/components/code-editor/http/grammar/http.terms.js.map +1 -0
  25. package/dist/src/components/code-editor/http/grammar/http.test.js +80 -0
  26. package/dist/src/components/code-editor/http/grammar/http.test.js.map +1 -0
  27. package/dist/src/components/code-editor/http/index.d.ts +12 -0
  28. package/dist/src/components/code-editor/http/index.d.ts.map +1 -0
  29. package/dist/src/components/code-editor/http/index.js +486 -0
  30. package/dist/src/components/code-editor/http/index.js.map +1 -0
  31. package/dist/src/components/code-editor/index.d.ts +39 -1
  32. package/dist/src/components/code-editor/index.d.ts.map +1 -1
  33. package/dist/src/components/code-editor/index.js +1792 -45
  34. package/dist/src/components/code-editor/index.js.map +1 -1
  35. package/dist/src/components/code-editor/json-ast.d.ts +46 -0
  36. package/dist/src/components/code-editor/json-ast.d.ts.map +1 -0
  37. package/dist/src/components/code-editor/json-ast.js +465 -0
  38. package/dist/src/components/code-editor/json-ast.js.map +1 -0
  39. package/dist/src/components/code-editor/json-ast.test.js +206 -0
  40. package/dist/src/components/code-editor/json-ast.test.js.map +1 -0
  41. package/dist/src/components/code-editor/sql-completion.d.ts +22 -0
  42. package/dist/src/components/code-editor/sql-completion.d.ts.map +1 -0
  43. package/dist/src/components/code-editor/sql-completion.js +897 -0
  44. package/dist/src/components/code-editor/sql-completion.js.map +1 -0
  45. package/dist/src/components/code-editor.stories.js +280 -3
  46. package/dist/src/components/code-editor.stories.js.map +1 -1
  47. package/dist/src/components/copy-icon.d.ts +5 -1
  48. package/dist/src/components/copy-icon.d.ts.map +1 -1
  49. package/dist/src/components/copy-icon.js +41 -3
  50. package/dist/src/components/copy-icon.js.map +1 -1
  51. package/dist/src/components/data-table.d.ts +9 -0
  52. package/dist/src/components/data-table.d.ts.map +1 -0
  53. package/dist/src/components/data-table.js +66 -0
  54. package/dist/src/components/data-table.js.map +1 -0
  55. package/dist/src/components/data-table.stories.js +240 -0
  56. package/dist/src/components/data-table.stories.js.map +1 -0
  57. package/dist/src/components/date-picker-input.d.ts +10 -0
  58. package/dist/src/components/date-picker-input.d.ts.map +1 -0
  59. package/dist/src/components/date-picker-input.js +90 -0
  60. package/dist/src/components/date-picker-input.js.map +1 -0
  61. package/dist/src/components/date-picker-input.stories.js +76 -0
  62. package/dist/src/components/date-picker-input.stories.js.map +1 -0
  63. package/dist/src/components/fhir-structure-view.d.ts +34 -0
  64. package/dist/src/components/fhir-structure-view.d.ts.map +1 -0
  65. package/dist/src/components/fhir-structure-view.js +230 -0
  66. package/dist/src/components/fhir-structure-view.js.map +1 -0
  67. package/dist/src/components/fhir-structure-view.stories.js +447 -0
  68. package/dist/src/components/fhir-structure-view.stories.js.map +1 -0
  69. package/dist/src/components/icon-button.d.ts +12 -0
  70. package/dist/src/components/icon-button.d.ts.map +1 -0
  71. package/dist/src/components/icon-button.js +41 -0
  72. package/dist/src/components/icon-button.js.map +1 -0
  73. package/dist/src/components/icon-button.stories.js +157 -0
  74. package/dist/src/components/icon-button.stories.js.map +1 -0
  75. package/dist/src/components/operation-outcome-view.d.ts +27 -0
  76. package/dist/src/components/operation-outcome-view.d.ts.map +1 -0
  77. package/dist/src/components/operation-outcome-view.js +198 -0
  78. package/dist/src/components/operation-outcome-view.js.map +1 -0
  79. package/dist/src/components/operation-outcome-view.stories.js +207 -0
  80. package/dist/src/components/operation-outcome-view.stories.js.map +1 -0
  81. package/dist/src/components/request-line-editor.d.ts +13 -35
  82. package/dist/src/components/request-line-editor.d.ts.map +1 -1
  83. package/dist/src/components/request-line-editor.js +73 -49
  84. package/dist/src/components/request-line-editor.js.map +1 -1
  85. package/dist/src/components/request-line-editor.stories.js +17 -53
  86. package/dist/src/components/request-line-editor.stories.js.map +1 -1
  87. package/dist/src/components/sandbox.d.ts +13 -0
  88. package/dist/src/components/sandbox.d.ts.map +1 -0
  89. package/dist/src/components/sandbox.js +107 -0
  90. package/dist/src/components/sandbox.js.map +1 -0
  91. package/dist/src/components/sandbox.stories.js +126 -0
  92. package/dist/src/components/sandbox.stories.js.map +1 -0
  93. package/dist/src/components/segment-control.d.ts +13 -0
  94. package/dist/src/components/segment-control.d.ts.map +1 -0
  95. package/dist/src/components/segment-control.js +33 -0
  96. package/dist/src/components/segment-control.js.map +1 -0
  97. package/dist/src/components/segment-control.stories.js +68 -0
  98. package/dist/src/components/segment-control.stories.js.map +1 -0
  99. package/dist/src/components/split-button.d.ts +12 -0
  100. package/dist/src/components/split-button.d.ts.map +1 -0
  101. package/dist/src/components/split-button.js +33 -0
  102. package/dist/src/components/split-button.js.map +1 -0
  103. package/dist/src/components/split-button.stories.js +84 -0
  104. package/dist/src/components/split-button.stories.js.map +1 -0
  105. package/dist/src/components/tag.d.ts +16 -0
  106. package/dist/src/components/tag.d.ts.map +1 -0
  107. package/dist/src/components/tag.js +198 -0
  108. package/dist/src/components/tag.js.map +1 -0
  109. package/dist/src/components/tag.stories.js +459 -0
  110. package/dist/src/components/tag.stories.js.map +1 -0
  111. package/dist/src/components/tile.d.ts +15 -0
  112. package/dist/src/components/tile.d.ts.map +1 -0
  113. package/dist/src/components/tile.js +76 -0
  114. package/dist/src/components/tile.js.map +1 -0
  115. package/dist/src/components/tile.stories.js +167 -0
  116. package/dist/src/components/tile.stories.js.map +1 -0
  117. package/dist/src/components/toolbar.d.ts +18 -0
  118. package/dist/src/components/toolbar.d.ts.map +1 -0
  119. package/dist/src/components/toolbar.js +61 -0
  120. package/dist/src/components/toolbar.js.map +1 -0
  121. package/dist/src/components/toolbar.stories.js +69 -0
  122. package/dist/src/components/toolbar.stories.js.map +1 -0
  123. package/dist/src/components/tree-view.d.ts +47 -0
  124. package/dist/src/components/tree-view.d.ts.map +1 -0
  125. package/dist/src/components/tree-view.js +122 -0
  126. package/dist/src/components/tree-view.js.map +1 -0
  127. package/dist/src/components/tree-view.stories.js +283 -0
  128. package/dist/src/components/tree-view.stories.js.map +1 -0
  129. package/dist/src/icons.d.ts +11 -0
  130. package/dist/src/icons.d.ts.map +1 -0
  131. package/dist/src/icons.js +328 -0
  132. package/dist/src/icons.js.map +1 -0
  133. package/dist/src/index.css +358 -74
  134. package/dist/src/index.d.ts +17 -1
  135. package/dist/src/index.d.ts.map +1 -1
  136. package/dist/src/index.js +17 -1
  137. package/dist/src/index.js.map +1 -1
  138. package/dist/src/shadcn/components/ui/accordion.d.ts +2 -2
  139. package/dist/src/shadcn/components/ui/accordion.d.ts.map +1 -1
  140. package/dist/src/shadcn/components/ui/accordion.js +35 -9
  141. package/dist/src/shadcn/components/ui/accordion.js.map +1 -1
  142. package/dist/src/shadcn/components/ui/alert-dialog.d.ts +12 -4
  143. package/dist/src/shadcn/components/ui/alert-dialog.d.ts.map +1 -1
  144. package/dist/src/shadcn/components/ui/alert-dialog.js +128 -18
  145. package/dist/src/shadcn/components/ui/alert-dialog.js.map +1 -1
  146. package/dist/src/shadcn/components/ui/alert-dialog.stories.js +269 -19
  147. package/dist/src/shadcn/components/ui/alert-dialog.stories.js.map +1 -1
  148. package/dist/src/shadcn/components/ui/alert.d.ts +29 -6
  149. package/dist/src/shadcn/components/ui/alert.d.ts.map +1 -1
  150. package/dist/src/shadcn/components/ui/alert.js +50 -19
  151. package/dist/src/shadcn/components/ui/alert.js.map +1 -1
  152. package/dist/src/shadcn/components/ui/alert.stories.js +140 -36
  153. package/dist/src/shadcn/components/ui/alert.stories.js.map +1 -1
  154. package/dist/src/shadcn/components/ui/aspect-ratio.d.ts.map +1 -1
  155. package/dist/src/shadcn/components/ui/aspect-ratio.js +1 -0
  156. package/dist/src/shadcn/components/ui/aspect-ratio.js.map +1 -1
  157. package/dist/src/shadcn/components/ui/avatar.d.ts.map +1 -1
  158. package/dist/src/shadcn/components/ui/avatar.js +4 -3
  159. package/dist/src/shadcn/components/ui/avatar.js.map +1 -1
  160. package/dist/src/shadcn/components/ui/avatar.stories.js +68 -2
  161. package/dist/src/shadcn/components/ui/avatar.stories.js.map +1 -1
  162. package/dist/src/shadcn/components/ui/badge.d.ts +1 -1
  163. package/dist/src/shadcn/components/ui/badge.d.ts.map +1 -1
  164. package/dist/src/shadcn/components/ui/badge.js +16 -5
  165. package/dist/src/shadcn/components/ui/badge.js.map +1 -1
  166. package/dist/src/shadcn/components/ui/breadcrumb.d.ts +5 -2
  167. package/dist/src/shadcn/components/ui/breadcrumb.d.ts.map +1 -1
  168. package/dist/src/shadcn/components/ui/breadcrumb.js +98 -13
  169. package/dist/src/shadcn/components/ui/breadcrumb.js.map +1 -1
  170. package/dist/src/shadcn/components/ui/breadcrumb.stories.js +205 -45
  171. package/dist/src/shadcn/components/ui/breadcrumb.stories.js.map +1 -1
  172. package/dist/src/shadcn/components/ui/button.d.ts.map +1 -1
  173. package/dist/src/shadcn/components/ui/button.js +65 -11
  174. package/dist/src/shadcn/components/ui/button.js.map +1 -1
  175. package/dist/src/shadcn/components/ui/button.stories.js +99 -17
  176. package/dist/src/shadcn/components/ui/button.stories.js.map +1 -1
  177. package/dist/src/shadcn/components/ui/calendar.d.ts +1 -1
  178. package/dist/src/shadcn/components/ui/calendar.d.ts.map +1 -1
  179. package/dist/src/shadcn/components/ui/calendar.js +1 -0
  180. package/dist/src/shadcn/components/ui/calendar.js.map +1 -1
  181. package/dist/src/shadcn/components/ui/card.d.ts +5 -1
  182. package/dist/src/shadcn/components/ui/card.d.ts.map +1 -1
  183. package/dist/src/shadcn/components/ui/card.js +28 -7
  184. package/dist/src/shadcn/components/ui/card.js.map +1 -1
  185. package/dist/src/shadcn/components/ui/card.stories.js +23 -2
  186. package/dist/src/shadcn/components/ui/card.stories.js.map +1 -1
  187. package/dist/src/shadcn/components/ui/carousel.d.ts +1 -1
  188. package/dist/src/shadcn/components/ui/carousel.d.ts.map +1 -1
  189. package/dist/src/shadcn/components/ui/carousel.js +1 -0
  190. package/dist/src/shadcn/components/ui/carousel.js.map +1 -1
  191. package/dist/src/shadcn/components/ui/chart.d.ts +5 -5
  192. package/dist/src/shadcn/components/ui/chart.d.ts.map +1 -1
  193. package/dist/src/shadcn/components/ui/chart.js +4 -3
  194. package/dist/src/shadcn/components/ui/chart.js.map +1 -1
  195. package/dist/src/shadcn/components/ui/checkbox.d.ts +5 -1
  196. package/dist/src/shadcn/components/ui/checkbox.d.ts.map +1 -1
  197. package/dist/src/shadcn/components/ui/checkbox.js +46 -6
  198. package/dist/src/shadcn/components/ui/checkbox.js.map +1 -1
  199. package/dist/src/shadcn/components/ui/checkbox.stories.js +156 -46
  200. package/dist/src/shadcn/components/ui/checkbox.stories.js.map +1 -1
  201. package/dist/src/shadcn/components/ui/combobox.d.ts +29 -0
  202. package/dist/src/shadcn/components/ui/combobox.d.ts.map +1 -0
  203. package/dist/src/shadcn/components/ui/combobox.js +226 -0
  204. package/dist/src/shadcn/components/ui/combobox.js.map +1 -0
  205. package/dist/src/shadcn/components/ui/combobox.stories.js +167 -0
  206. package/dist/src/shadcn/components/ui/combobox.stories.js.map +1 -0
  207. package/dist/src/shadcn/components/ui/command.d.ts +4 -2
  208. package/dist/src/shadcn/components/ui/command.d.ts.map +1 -1
  209. package/dist/src/shadcn/components/ui/command.js +75 -13
  210. package/dist/src/shadcn/components/ui/command.js.map +1 -1
  211. package/dist/src/shadcn/components/ui/command.stories.js +277 -57
  212. package/dist/src/shadcn/components/ui/command.stories.js.map +1 -1
  213. package/dist/src/shadcn/components/ui/context-menu.d.ts +7 -3
  214. package/dist/src/shadcn/components/ui/context-menu.d.ts.map +1 -1
  215. package/dist/src/shadcn/components/ui/context-menu.js +120 -13
  216. package/dist/src/shadcn/components/ui/context-menu.js.map +1 -1
  217. package/dist/src/shadcn/components/ui/dialog.d.ts.map +1 -1
  218. package/dist/src/shadcn/components/ui/dialog.js +35 -7
  219. package/dist/src/shadcn/components/ui/dialog.js.map +1 -1
  220. package/dist/src/shadcn/components/ui/drawer.d.ts.map +1 -1
  221. package/dist/src/shadcn/components/ui/drawer.js +27 -5
  222. package/dist/src/shadcn/components/ui/drawer.js.map +1 -1
  223. package/dist/src/shadcn/components/ui/dropdown-menu.d.ts +7 -3
  224. package/dist/src/shadcn/components/ui/dropdown-menu.d.ts.map +1 -1
  225. package/dist/src/shadcn/components/ui/dropdown-menu.js +122 -14
  226. package/dist/src/shadcn/components/ui/dropdown-menu.js.map +1 -1
  227. package/dist/src/shadcn/components/ui/dropdown-menu.stories.js +22 -5
  228. package/dist/src/shadcn/components/ui/dropdown-menu.stories.js.map +1 -1
  229. package/dist/src/shadcn/components/ui/form.d.ts +2 -2
  230. package/dist/src/shadcn/components/ui/form.d.ts.map +1 -1
  231. package/dist/src/shadcn/components/ui/form.js +17 -8
  232. package/dist/src/shadcn/components/ui/form.js.map +1 -1
  233. package/dist/src/shadcn/components/ui/hover-card.d.ts.map +1 -1
  234. package/dist/src/shadcn/components/ui/hover-card.js +2 -1
  235. package/dist/src/shadcn/components/ui/hover-card.js.map +1 -1
  236. package/dist/src/shadcn/components/ui/input-otp.d.ts.map +1 -1
  237. package/dist/src/shadcn/components/ui/input-otp.js +1 -0
  238. package/dist/src/shadcn/components/ui/input-otp.js.map +1 -1
  239. package/dist/src/shadcn/components/ui/input.d.ts +3 -1
  240. package/dist/src/shadcn/components/ui/input.d.ts.map +1 -1
  241. package/dist/src/shadcn/components/ui/input.js +126 -17
  242. package/dist/src/shadcn/components/ui/input.js.map +1 -1
  243. package/dist/src/shadcn/components/ui/input.stories.js +218 -29
  244. package/dist/src/shadcn/components/ui/input.stories.js.map +1 -1
  245. package/dist/src/shadcn/components/ui/label.d.ts.map +1 -1
  246. package/dist/src/shadcn/components/ui/label.js +9 -1
  247. package/dist/src/shadcn/components/ui/label.js.map +1 -1
  248. package/dist/src/shadcn/components/ui/menubar.d.ts.map +1 -1
  249. package/dist/src/shadcn/components/ui/menubar.js +35 -13
  250. package/dist/src/shadcn/components/ui/menubar.js.map +1 -1
  251. package/dist/src/shadcn/components/ui/pagination.d.ts +9 -2
  252. package/dist/src/shadcn/components/ui/pagination.d.ts.map +1 -1
  253. package/dist/src/shadcn/components/ui/pagination.js +41 -24
  254. package/dist/src/shadcn/components/ui/pagination.js.map +1 -1
  255. package/dist/src/shadcn/components/ui/pagination.stories.js +44 -37
  256. package/dist/src/shadcn/components/ui/pagination.stories.js.map +1 -1
  257. package/dist/src/shadcn/components/ui/popover.d.ts.map +1 -1
  258. package/dist/src/shadcn/components/ui/popover.js +13 -1
  259. package/dist/src/shadcn/components/ui/popover.js.map +1 -1
  260. package/dist/src/shadcn/components/ui/progress.d.ts.map +1 -1
  261. package/dist/src/shadcn/components/ui/progress.js +6 -2
  262. package/dist/src/shadcn/components/ui/progress.js.map +1 -1
  263. package/dist/src/shadcn/components/ui/radio-button-group.d.ts +21 -0
  264. package/dist/src/shadcn/components/ui/radio-button-group.d.ts.map +1 -0
  265. package/dist/src/shadcn/components/ui/radio-button-group.js +148 -0
  266. package/dist/src/shadcn/components/ui/radio-button-group.js.map +1 -0
  267. package/dist/src/shadcn/components/ui/radio-button-group.stories.js +283 -0
  268. package/dist/src/shadcn/components/ui/radio-button-group.stories.js.map +1 -0
  269. package/dist/src/shadcn/components/ui/radio-group.d.ts +5 -1
  270. package/dist/src/shadcn/components/ui/radio-group.d.ts.map +1 -1
  271. package/dist/src/shadcn/components/ui/radio-group.js +40 -7
  272. package/dist/src/shadcn/components/ui/radio-group.js.map +1 -1
  273. package/dist/src/shadcn/components/ui/radio-group.stories.js +107 -32
  274. package/dist/src/shadcn/components/ui/radio-group.stories.js.map +1 -1
  275. package/dist/src/shadcn/components/ui/resizable.d.ts.map +1 -1
  276. package/dist/src/shadcn/components/ui/resizable.js +2 -1
  277. package/dist/src/shadcn/components/ui/resizable.js.map +1 -1
  278. package/dist/src/shadcn/components/ui/resizable.stories.js +2 -2
  279. package/dist/src/shadcn/components/ui/resizable.stories.js.map +1 -1
  280. package/dist/src/shadcn/components/ui/scroll-area.d.ts.map +1 -1
  281. package/dist/src/shadcn/components/ui/scroll-area.js +10 -3
  282. package/dist/src/shadcn/components/ui/scroll-area.js.map +1 -1
  283. package/dist/src/shadcn/components/ui/select.d.ts +1 -2
  284. package/dist/src/shadcn/components/ui/select.d.ts.map +1 -1
  285. package/dist/src/shadcn/components/ui/select.js +49 -19
  286. package/dist/src/shadcn/components/ui/select.js.map +1 -1
  287. package/dist/src/shadcn/components/ui/select.stories.js +193 -70
  288. package/dist/src/shadcn/components/ui/select.stories.js.map +1 -1
  289. package/dist/src/shadcn/components/ui/separator.d.ts.map +1 -1
  290. package/dist/src/shadcn/components/ui/separator.js +8 -1
  291. package/dist/src/shadcn/components/ui/separator.js.map +1 -1
  292. package/dist/src/shadcn/components/ui/sheet.js +1 -1
  293. package/dist/src/shadcn/components/ui/sheet.js.map +1 -1
  294. package/dist/src/shadcn/components/ui/sidebar.d.ts +4 -4
  295. package/dist/src/shadcn/components/ui/sidebar.d.ts.map +1 -1
  296. package/dist/src/shadcn/components/ui/sidebar.js +21 -6
  297. package/dist/src/shadcn/components/ui/sidebar.js.map +1 -1
  298. package/dist/src/shadcn/components/ui/skeleton.d.ts.map +1 -1
  299. package/dist/src/shadcn/components/ui/skeleton.js +3 -1
  300. package/dist/src/shadcn/components/ui/skeleton.js.map +1 -1
  301. package/dist/src/shadcn/components/ui/slider.d.ts.map +1 -1
  302. package/dist/src/shadcn/components/ui/slider.js +35 -4
  303. package/dist/src/shadcn/components/ui/slider.js.map +1 -1
  304. package/dist/src/shadcn/components/ui/sonner.d.ts +24 -2
  305. package/dist/src/shadcn/components/ui/sonner.d.ts.map +1 -1
  306. package/dist/src/shadcn/components/ui/sonner.js +127 -9
  307. package/dist/src/shadcn/components/ui/sonner.js.map +1 -1
  308. package/dist/src/shadcn/components/ui/sonner.stories.js +251 -12
  309. package/dist/src/shadcn/components/ui/sonner.stories.js.map +1 -1
  310. package/dist/src/shadcn/components/ui/switch.d.ts +7 -1
  311. package/dist/src/shadcn/components/ui/switch.d.ts.map +1 -1
  312. package/dist/src/shadcn/components/ui/switch.js +55 -3
  313. package/dist/src/shadcn/components/ui/switch.js.map +1 -1
  314. package/dist/src/shadcn/components/ui/switch.stories.js +84 -9
  315. package/dist/src/shadcn/components/ui/switch.stories.js.map +1 -1
  316. package/dist/src/shadcn/components/ui/table.d.ts +23 -6
  317. package/dist/src/shadcn/components/ui/table.d.ts.map +1 -1
  318. package/dist/src/shadcn/components/ui/table.js +65 -20
  319. package/dist/src/shadcn/components/ui/table.js.map +1 -1
  320. package/dist/src/shadcn/components/ui/table.stories.js +217 -97
  321. package/dist/src/shadcn/components/ui/table.stories.js.map +1 -1
  322. package/dist/src/shadcn/components/ui/tabs.d.ts +30 -5
  323. package/dist/src/shadcn/components/ui/tabs.d.ts.map +1 -1
  324. package/dist/src/shadcn/components/ui/tabs.js +470 -23
  325. package/dist/src/shadcn/components/ui/tabs.js.map +1 -1
  326. package/dist/src/shadcn/components/ui/tabs.stories.js +405 -181
  327. package/dist/src/shadcn/components/ui/tabs.stories.js.map +1 -1
  328. package/dist/src/shadcn/components/ui/textarea.d.ts +8 -1
  329. package/dist/src/shadcn/components/ui/textarea.d.ts.map +1 -1
  330. package/dist/src/shadcn/components/ui/textarea.js +30 -2
  331. package/dist/src/shadcn/components/ui/textarea.js.map +1 -1
  332. package/dist/src/shadcn/components/ui/textarea.stories.js +85 -4
  333. package/dist/src/shadcn/components/ui/textarea.stories.js.map +1 -1
  334. package/dist/src/shadcn/components/ui/toggle-group.d.ts +3 -3
  335. package/dist/src/shadcn/components/ui/toggle-group.d.ts.map +1 -1
  336. package/dist/src/shadcn/components/ui/toggle-group.js +14 -12
  337. package/dist/src/shadcn/components/ui/toggle-group.js.map +1 -1
  338. package/dist/src/shadcn/components/ui/toggle.d.ts +3 -4
  339. package/dist/src/shadcn/components/ui/toggle.d.ts.map +1 -1
  340. package/dist/src/shadcn/components/ui/toggle.js +44 -16
  341. package/dist/src/shadcn/components/ui/toggle.js.map +1 -1
  342. package/dist/src/shadcn/components/ui/toggle.stories.js +130 -7
  343. package/dist/src/shadcn/components/ui/toggle.stories.js.map +1 -1
  344. package/dist/src/shadcn/components/ui/tooltip.d.ts.map +1 -1
  345. package/dist/src/shadcn/components/ui/tooltip.js +12 -1
  346. package/dist/src/shadcn/components/ui/tooltip.js.map +1 -1
  347. package/dist/src/shadcn/components/ui/tree.d.ts +29 -0
  348. package/dist/src/shadcn/components/ui/tree.d.ts.map +1 -0
  349. package/dist/src/shadcn/components/ui/tree.js +135 -0
  350. package/dist/src/shadcn/components/ui/tree.js.map +1 -0
  351. package/dist/src/shadcn/shadcn.css +4 -4
  352. package/dist/src/tokens.css +50 -20
  353. package/dist/src/typography.css +78 -15
  354. package/package.json +84 -64
  355. package/src/components/button-dropdown.stories.tsx +41 -0
  356. package/src/components/button-dropdown.tsx +97 -0
  357. package/src/components/code-editor/fhir-autocomplete.test.ts +993 -0
  358. package/src/components/code-editor/fhir-autocomplete.ts +2322 -0
  359. package/src/components/code-editor/http/grammar/http.grammar +74 -0
  360. package/src/components/code-editor/http/grammar/http.terms.ts +9 -0
  361. package/src/components/code-editor/http/grammar/http.test.ts +110 -0
  362. package/src/components/code-editor/http/grammar/http.ts +21 -0
  363. package/src/components/code-editor/http/index.ts +424 -0
  364. package/src/components/code-editor/index.tsx +1944 -42
  365. package/src/components/code-editor/json-ast.test.ts +230 -0
  366. package/src/components/code-editor/json-ast.ts +590 -0
  367. package/src/components/code-editor/sql-completion.ts +1112 -0
  368. package/src/components/code-editor.stories.tsx +325 -2
  369. package/src/components/copy-icon.tsx +57 -3
  370. package/src/components/data-table.stories.tsx +91 -0
  371. package/src/components/data-table.tsx +126 -0
  372. package/src/components/date-picker-input.stories.tsx +79 -0
  373. package/src/components/date-picker-input.tsx +104 -0
  374. package/src/components/fhir-structure-view.stories.tsx +439 -0
  375. package/src/components/fhir-structure-view.tsx +233 -0
  376. package/src/components/icon-button.stories.tsx +86 -0
  377. package/src/components/icon-button.tsx +57 -0
  378. package/src/components/operation-outcome-view.stories.tsx +163 -0
  379. package/src/components/operation-outcome-view.tsx +254 -0
  380. package/src/components/request-line-editor.stories.tsx +17 -27
  381. package/src/components/request-line-editor.tsx +103 -61
  382. package/src/components/sandbox.stories.tsx +131 -0
  383. package/src/components/sandbox.tsx +191 -0
  384. package/src/components/segment-control.stories.tsx +61 -0
  385. package/src/components/segment-control.tsx +83 -0
  386. package/src/components/split-button.stories.tsx +68 -0
  387. package/src/components/split-button.tsx +74 -0
  388. package/src/components/tag.stories.tsx +371 -0
  389. package/src/components/tag.tsx +236 -0
  390. package/src/components/tile.stories.tsx +149 -0
  391. package/src/components/tile.tsx +105 -0
  392. package/src/components/toolbar.stories.tsx +64 -0
  393. package/src/components/toolbar.tsx +98 -0
  394. package/src/components/tree-view.stories.tsx +265 -0
  395. package/src/components/tree-view.tsx +246 -0
  396. package/src/icons.tsx +331 -0
  397. package/src/index.css +358 -74
  398. package/src/index.tsx +17 -3
  399. package/src/shadcn/components/ui/accordion.tsx +91 -10
  400. package/src/shadcn/components/ui/alert-dialog.stories.tsx +209 -15
  401. package/src/shadcn/components/ui/alert-dialog.tsx +236 -26
  402. package/src/shadcn/components/ui/alert.stories.tsx +120 -21
  403. package/src/shadcn/components/ui/alert.tsx +125 -28
  404. package/src/shadcn/components/ui/aspect-ratio.tsx +1 -0
  405. package/src/shadcn/components/ui/avatar.stories.tsx +74 -1
  406. package/src/shadcn/components/ui/avatar.tsx +22 -6
  407. package/src/shadcn/components/ui/badge.tsx +67 -18
  408. package/src/shadcn/components/ui/breadcrumb.stories.tsx +161 -41
  409. package/src/shadcn/components/ui/breadcrumb.tsx +172 -23
  410. package/src/shadcn/components/ui/button.stories.tsx +106 -18
  411. package/src/shadcn/components/ui/button.tsx +151 -55
  412. package/src/shadcn/components/ui/calendar.tsx +1 -0
  413. package/src/shadcn/components/ui/card.stories.tsx +17 -3
  414. package/src/shadcn/components/ui/card.tsx +89 -14
  415. package/src/shadcn/components/ui/carousel.tsx +1 -0
  416. package/src/shadcn/components/ui/chart.tsx +9 -5
  417. package/src/shadcn/components/ui/checkbox.stories.tsx +78 -30
  418. package/src/shadcn/components/ui/checkbox.tsx +91 -8
  419. package/src/shadcn/components/ui/combobox.stories.tsx +148 -0
  420. package/src/shadcn/components/ui/combobox.tsx +324 -0
  421. package/src/shadcn/components/ui/command.stories.tsx +184 -39
  422. package/src/shadcn/components/ui/command.tsx +218 -37
  423. package/src/shadcn/components/ui/context-menu.tsx +333 -40
  424. package/src/shadcn/components/ui/dialog.tsx +101 -13
  425. package/src/shadcn/components/ui/drawer.tsx +94 -18
  426. package/src/shadcn/components/ui/dropdown-menu.stories.tsx +18 -2
  427. package/src/shadcn/components/ui/dropdown-menu.tsx +334 -68
  428. package/src/shadcn/components/ui/form.tsx +22 -11
  429. package/src/shadcn/components/ui/hover-card.tsx +2 -1
  430. package/src/shadcn/components/ui/input-otp.tsx +1 -0
  431. package/src/shadcn/components/ui/input.stories.tsx +235 -27
  432. package/src/shadcn/components/ui/input.tsx +400 -29
  433. package/src/shadcn/components/ui/label.tsx +22 -4
  434. package/src/shadcn/components/ui/menubar.tsx +188 -43
  435. package/src/shadcn/components/ui/pagination.stories.tsx +8 -2
  436. package/src/shadcn/components/ui/pagination.tsx +65 -8
  437. package/src/shadcn/components/ui/popover.tsx +36 -4
  438. package/src/shadcn/components/ui/progress.tsx +21 -5
  439. package/src/shadcn/components/ui/radio-button-group.stories.tsx +247 -0
  440. package/src/shadcn/components/ui/radio-button-group.tsx +188 -0
  441. package/src/shadcn/components/ui/radio-group.stories.tsx +70 -14
  442. package/src/shadcn/components/ui/radio-group.tsx +85 -9
  443. package/src/shadcn/components/ui/resizable.stories.tsx +2 -2
  444. package/src/shadcn/components/ui/resizable.tsx +2 -1
  445. package/src/shadcn/components/ui/scroll-area.tsx +34 -5
  446. package/src/shadcn/components/ui/select.stories.tsx +108 -32
  447. package/src/shadcn/components/ui/select.tsx +182 -36
  448. package/src/shadcn/components/ui/separator.tsx +16 -5
  449. package/src/shadcn/components/ui/sheet.tsx +1 -1
  450. package/src/shadcn/components/ui/sidebar.tsx +69 -26
  451. package/src/shadcn/components/ui/skeleton.tsx +4 -1
  452. package/src/shadcn/components/ui/slider.tsx +83 -11
  453. package/src/shadcn/components/ui/sonner.stories.tsx +238 -17
  454. package/src/shadcn/components/ui/sonner.tsx +254 -11
  455. package/src/shadcn/components/ui/switch.stories.tsx +52 -5
  456. package/src/shadcn/components/ui/switch.tsx +92 -7
  457. package/src/shadcn/components/ui/table.stories.tsx +252 -72
  458. package/src/shadcn/components/ui/table.tsx +204 -26
  459. package/src/shadcn/components/ui/tabs.stories.tsx +235 -123
  460. package/src/shadcn/components/ui/tabs.tsx +694 -36
  461. package/src/shadcn/components/ui/textarea.stories.tsx +94 -2
  462. package/src/shadcn/components/ui/textarea.tsx +70 -5
  463. package/src/shadcn/components/ui/toggle-group.tsx +35 -13
  464. package/src/shadcn/components/ui/toggle.stories.tsx +92 -5
  465. package/src/shadcn/components/ui/toggle.tsx +96 -23
  466. package/src/shadcn/components/ui/tooltip.tsx +34 -8
  467. package/src/shadcn/components/ui/tree.tsx +257 -0
  468. package/src/shadcn/shadcn.css +4 -4
  469. package/src/tokens.css +50 -20
  470. package/src/typography.css +78 -15
  471. package/dist/src/components/code-editor.stories.d.ts +0 -7
  472. package/dist/src/components/code-editor.stories.d.ts.map +0 -1
  473. package/dist/src/components/request-line-editor.stories.d.ts +0 -11
  474. package/dist/src/components/request-line-editor.stories.d.ts.map +0 -1
  475. package/dist/src/index.stories.d.ts +0 -14
  476. package/dist/src/index.stories.d.ts.map +0 -1
  477. package/dist/src/index.stories.js +0 -19
  478. package/dist/src/index.stories.js.map +0 -1
  479. package/dist/src/shadcn/components/ui/accordion.stories.d.ts +0 -8
  480. package/dist/src/shadcn/components/ui/accordion.stories.d.ts.map +0 -1
  481. package/dist/src/shadcn/components/ui/alert-dialog.stories.d.ts +0 -8
  482. package/dist/src/shadcn/components/ui/alert-dialog.stories.d.ts.map +0 -1
  483. package/dist/src/shadcn/components/ui/alert.stories.d.ts +0 -8
  484. package/dist/src/shadcn/components/ui/alert.stories.d.ts.map +0 -1
  485. package/dist/src/shadcn/components/ui/aspect-ratio.stories.d.ts +0 -8
  486. package/dist/src/shadcn/components/ui/aspect-ratio.stories.d.ts.map +0 -1
  487. package/dist/src/shadcn/components/ui/avatar.stories.d.ts +0 -8
  488. package/dist/src/shadcn/components/ui/avatar.stories.d.ts.map +0 -1
  489. package/dist/src/shadcn/components/ui/badge.stories.d.ts +0 -8
  490. package/dist/src/shadcn/components/ui/badge.stories.d.ts.map +0 -1
  491. package/dist/src/shadcn/components/ui/breadcrumb.stories.d.ts +0 -8
  492. package/dist/src/shadcn/components/ui/breadcrumb.stories.d.ts.map +0 -1
  493. package/dist/src/shadcn/components/ui/button.stories.d.ts +0 -23
  494. package/dist/src/shadcn/components/ui/button.stories.d.ts.map +0 -1
  495. package/dist/src/shadcn/components/ui/calendar.stories.d.ts +0 -8
  496. package/dist/src/shadcn/components/ui/calendar.stories.d.ts.map +0 -1
  497. package/dist/src/shadcn/components/ui/card.stories.d.ts +0 -8
  498. package/dist/src/shadcn/components/ui/card.stories.d.ts.map +0 -1
  499. package/dist/src/shadcn/components/ui/carousel.stories.d.ts +0 -8
  500. package/dist/src/shadcn/components/ui/carousel.stories.d.ts.map +0 -1
  501. package/dist/src/shadcn/components/ui/chart.stories.d.ts +0 -8
  502. package/dist/src/shadcn/components/ui/chart.stories.d.ts.map +0 -1
  503. package/dist/src/shadcn/components/ui/checkbox.stories.d.ts +0 -8
  504. package/dist/src/shadcn/components/ui/checkbox.stories.d.ts.map +0 -1
  505. package/dist/src/shadcn/components/ui/collapsible.stories.d.ts +0 -8
  506. package/dist/src/shadcn/components/ui/collapsible.stories.d.ts.map +0 -1
  507. package/dist/src/shadcn/components/ui/command.stories.d.ts +0 -8
  508. package/dist/src/shadcn/components/ui/command.stories.d.ts.map +0 -1
  509. package/dist/src/shadcn/components/ui/context-menu.stories.d.ts +0 -8
  510. package/dist/src/shadcn/components/ui/context-menu.stories.d.ts.map +0 -1
  511. package/dist/src/shadcn/components/ui/dialog.stories.d.ts +0 -8
  512. package/dist/src/shadcn/components/ui/dialog.stories.d.ts.map +0 -1
  513. package/dist/src/shadcn/components/ui/drawer.stories.d.ts +0 -8
  514. package/dist/src/shadcn/components/ui/drawer.stories.d.ts.map +0 -1
  515. package/dist/src/shadcn/components/ui/dropdown-menu.stories.d.ts +0 -8
  516. package/dist/src/shadcn/components/ui/dropdown-menu.stories.d.ts.map +0 -1
  517. package/dist/src/shadcn/components/ui/form.stories.d.ts +0 -8
  518. package/dist/src/shadcn/components/ui/form.stories.d.ts.map +0 -1
  519. package/dist/src/shadcn/components/ui/hover-card.stories.d.ts +0 -8
  520. package/dist/src/shadcn/components/ui/hover-card.stories.d.ts.map +0 -1
  521. package/dist/src/shadcn/components/ui/input-otp.stories.d.ts +0 -8
  522. package/dist/src/shadcn/components/ui/input-otp.stories.d.ts.map +0 -1
  523. package/dist/src/shadcn/components/ui/input.stories.d.ts +0 -18
  524. package/dist/src/shadcn/components/ui/input.stories.d.ts.map +0 -1
  525. package/dist/src/shadcn/components/ui/label.stories.d.ts +0 -8
  526. package/dist/src/shadcn/components/ui/label.stories.d.ts.map +0 -1
  527. package/dist/src/shadcn/components/ui/menubar.stories.d.ts +0 -8
  528. package/dist/src/shadcn/components/ui/menubar.stories.d.ts.map +0 -1
  529. package/dist/src/shadcn/components/ui/navigation-menu.stories.d.ts +0 -8
  530. package/dist/src/shadcn/components/ui/navigation-menu.stories.d.ts.map +0 -1
  531. package/dist/src/shadcn/components/ui/pagination.stories.d.ts +0 -8
  532. package/dist/src/shadcn/components/ui/pagination.stories.d.ts.map +0 -1
  533. package/dist/src/shadcn/components/ui/popover.stories.d.ts +0 -8
  534. package/dist/src/shadcn/components/ui/popover.stories.d.ts.map +0 -1
  535. package/dist/src/shadcn/components/ui/progress.stories.d.ts +0 -8
  536. package/dist/src/shadcn/components/ui/progress.stories.d.ts.map +0 -1
  537. package/dist/src/shadcn/components/ui/radio-group.stories.d.ts +0 -8
  538. package/dist/src/shadcn/components/ui/radio-group.stories.d.ts.map +0 -1
  539. package/dist/src/shadcn/components/ui/resizable.stories.d.ts +0 -8
  540. package/dist/src/shadcn/components/ui/resizable.stories.d.ts.map +0 -1
  541. package/dist/src/shadcn/components/ui/scroll-area.stories.d.ts +0 -8
  542. package/dist/src/shadcn/components/ui/scroll-area.stories.d.ts.map +0 -1
  543. package/dist/src/shadcn/components/ui/select.stories.d.ts +0 -11
  544. package/dist/src/shadcn/components/ui/select.stories.d.ts.map +0 -1
  545. package/dist/src/shadcn/components/ui/separator.stories.d.ts +0 -8
  546. package/dist/src/shadcn/components/ui/separator.stories.d.ts.map +0 -1
  547. package/dist/src/shadcn/components/ui/sheet.stories.d.ts +0 -8
  548. package/dist/src/shadcn/components/ui/sheet.stories.d.ts.map +0 -1
  549. package/dist/src/shadcn/components/ui/sidebar.stories.d.ts +0 -11
  550. package/dist/src/shadcn/components/ui/sidebar.stories.d.ts.map +0 -1
  551. package/dist/src/shadcn/components/ui/skeleton.stories.d.ts +0 -8
  552. package/dist/src/shadcn/components/ui/skeleton.stories.d.ts.map +0 -1
  553. package/dist/src/shadcn/components/ui/slider.stories.d.ts +0 -8
  554. package/dist/src/shadcn/components/ui/slider.stories.d.ts.map +0 -1
  555. package/dist/src/shadcn/components/ui/sonner.stories.d.ts +0 -8
  556. package/dist/src/shadcn/components/ui/sonner.stories.d.ts.map +0 -1
  557. package/dist/src/shadcn/components/ui/switch.stories.d.ts +0 -8
  558. package/dist/src/shadcn/components/ui/switch.stories.d.ts.map +0 -1
  559. package/dist/src/shadcn/components/ui/table.stories.d.ts +0 -8
  560. package/dist/src/shadcn/components/ui/table.stories.d.ts.map +0 -1
  561. package/dist/src/shadcn/components/ui/tabs.stories.d.ts +0 -32
  562. package/dist/src/shadcn/components/ui/tabs.stories.d.ts.map +0 -1
  563. package/dist/src/shadcn/components/ui/textarea.stories.d.ts +0 -8
  564. package/dist/src/shadcn/components/ui/textarea.stories.d.ts.map +0 -1
  565. package/dist/src/shadcn/components/ui/toggle-group.stories.d.ts +0 -8
  566. package/dist/src/shadcn/components/ui/toggle-group.stories.d.ts.map +0 -1
  567. package/dist/src/shadcn/components/ui/toggle.stories.d.ts +0 -8
  568. package/dist/src/shadcn/components/ui/toggle.stories.d.ts.map +0 -1
  569. package/dist/src/shadcn/components/ui/tooltip.stories.d.ts +0 -8
  570. package/dist/src/shadcn/components/ui/tooltip.stories.d.ts.map +0 -1
  571. package/src/index.stories.tsx +0 -21
@@ -20,20 +20,20 @@ declare function ChartContainer({ id, className, children, config, ...props }: R
20
20
  config: ChartConfig;
21
21
  children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
22
22
  }): import("react/jsx-runtime").JSX.Element;
23
- declare const ChartStyle: ({ id, config }: {
23
+ declare function ChartStyle({ id, config }: {
24
24
  id: string;
25
25
  config: ChartConfig;
26
- }) => import("react/jsx-runtime").JSX.Element | null;
26
+ }): import("react/jsx-runtime").JSX.Element | null;
27
27
  declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
28
- declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: React.ComponentProps<typeof RechartsPrimitive.Tooltip> & React.ComponentProps<"div"> & {
28
+ declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: RechartsPrimitive.TooltipContentProps & React.ComponentProps<"div"> & {
29
29
  hideLabel?: boolean;
30
30
  hideIndicator?: boolean;
31
31
  indicator?: "line" | "dot" | "dashed";
32
32
  nameKey?: string;
33
33
  labelKey?: string;
34
34
  }): import("react/jsx-runtime").JSX.Element | null;
35
- declare const ChartLegend: typeof RechartsPrimitive.Legend;
36
- declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React.ComponentProps<"div"> & Pick<RechartsPrimitive.LegendProps, "payload" | "verticalAlign"> & {
35
+ declare const ChartLegend: React.MemoExoticComponent<(outsideProps: RechartsPrimitive.LegendProps) => React.ReactPortal | null>;
36
+ declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React.ComponentProps<"div"> & Pick<RechartsPrimitive.DefaultLegendContentProps, "payload" | "verticalAlign"> & {
37
37
  hideIcon?: boolean;
38
38
  nameKey?: string;
39
39
  }): import("react/jsx-runtime").JSX.Element | null;
@@ -1 +1 @@
1
- {"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/chart.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,iBAAiB,MAAM,UAAU,CAAC;AAK9C,QAAA,MAAM,MAAM;;;CAAwC,CAAC;AAErD,MAAM,MAAM,WAAW,GAAG;KACxB,CAAC,IAAI,MAAM,GAAG;QACd,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACxB,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;KAC3B,GAAG,CACD;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GACjC;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,OAAO,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAC/D;CACD,CAAC;AAkBF,iBAAS,cAAc,CAAC,EACvB,EAAE,EACF,SAAS,EACT,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,cAAc,CAC7B,OAAO,iBAAiB,CAAC,mBAAmB,CAC5C,CAAC,UAAU,CAAC,CAAC;CACd,2CAsBA;AAED,QAAA,MAAM,UAAU,GAAI,gBAAgB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,mDAgCtE,CAAC;AAEF,QAAA,MAAM,YAAY,kCAA4B,CAAC;AAE/C,iBAAS,mBAAmB,CAAC,EAC5B,MAAM,EACN,OAAO,EACP,SAAS,EACT,SAAiB,EACjB,SAAiB,EACjB,aAAqB,EACrB,KAAK,EACL,cAAc,EACd,cAAc,EACd,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,GACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,OAAO,CAAC,GACxD,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,kDAyHD;AAED,QAAA,MAAM,WAAW,iCAA2B,CAAC;AAE7C,iBAAS,kBAAkB,CAAC,EAC3B,SAAS,EACT,QAAgB,EAChB,OAAO,EACP,aAAwB,EACxB,OAAO,GACP,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAC7B,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,SAAS,GAAG,eAAe,CAAC,GAAG;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,kDA0CD;AAyCD,OAAO,EACN,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,UAAU,GACV,CAAC"}
1
+ {"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/chart.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,iBAAiB,MAAM,UAAU,CAAC;AAK9C,QAAA,MAAM,MAAM;;;CAAwC,CAAC;AAErD,MAAM,MAAM,WAAW,GAAG;KACxB,CAAC,IAAI,MAAM,GAAG;QACd,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACxB,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;KAC3B,GAAG,CACD;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GACjC;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,OAAO,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAC/D;CACD,CAAC;AAkBF,iBAAS,cAAc,CAAC,EACvB,EAAE,EACF,SAAS,EACT,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,cAAc,CAC7B,OAAO,iBAAiB,CAAC,mBAAmB,CAC5C,CAAC,UAAU,CAAC,CAAC;CACd,2CAsBA;AAED,iBAAS,UAAU,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,kDAgCtE;AAED,QAAA,MAAM,YAAY,kCAA4B,CAAC;AAE/C,iBAAS,mBAAmB,CAAC,EAC5B,MAAM,EACN,OAAO,EACP,SAAS,EACT,SAAiB,EACjB,SAAiB,EACjB,aAAqB,EACrB,KAAK,EACL,cAAc,EACd,cAAc,EACd,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,GACR,EAAE,iBAAiB,CAAC,mBAAmB,GACvC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,kDAyHD;AAED,QAAA,MAAM,WAAW,sGAA2B,CAAC;AAE7C,iBAAS,kBAAkB,CAAC,EAC3B,SAAS,EACT,QAAgB,EAChB,OAAO,EACP,aAAwB,EACxB,OAAO,GACP,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAC7B,IAAI,CACH,iBAAiB,CAAC,yBAAyB,EAC3C,SAAS,GAAG,eAAe,CAC3B,GAAG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,kDA0CD;AAyCD,OAAO,EACN,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,UAAU,GACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
3
  import * as React from "react";
3
4
  import * as RechartsPrimitive from "recharts";
@@ -39,7 +40,7 @@ function ChartContainer({ id, className, children, config, ...props }) {
39
40
  })
40
41
  });
41
42
  }
42
- const ChartStyle = ({ id, config })=>{
43
+ function ChartStyle({ id, config }) {
43
44
  const colorConfig = Object.entries(config).filter(([, config])=>config.theme || config.color);
44
45
  if (!colorConfig.length) {
45
46
  return null;
@@ -57,7 +58,7 @@ ${colorConfig.map(([key, itemConfig])=>{
57
58
  `).join("\n")
58
59
  }
59
60
  });
60
- };
61
+ }
61
62
  const ChartTooltip = RechartsPrimitive.Tooltip;
62
63
  function ChartTooltipContent({ active, payload, className, indicator = "dot", hideLabel = false, hideIndicator = false, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey }) {
63
64
  const { config } = useChart();
@@ -142,7 +143,7 @@ function ChartTooltipContent({ active, payload, className, indicator = "dot", hi
142
143
  })
143
144
  ]
144
145
  })
145
- }, item.dataKey);
146
+ }, String(item.dataKey ?? index));
146
147
  })
147
148
  })
148
149
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/shadcn/components/ui/chart.tsx"],"sourcesContent":["import * as React from \"react\";\nimport * as RechartsPrimitive from \"recharts\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: \"\", dark: \".dark\" } as const;\n\nexport type ChartConfig = {\n\t[k in string]: {\n\t\tlabel?: React.ReactNode;\n\t\ticon?: React.ComponentType;\n\t} & (\n\t\t| { color?: string; theme?: never }\n\t\t| { color?: never; theme: Record<keyof typeof THEMES, string> }\n\t);\n};\n\ntype ChartContextProps = {\n\tconfig: ChartConfig;\n};\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null);\n\nfunction useChart() {\n\tconst context = React.useContext(ChartContext);\n\n\tif (!context) {\n\t\tthrow new Error(\"useChart must be used within a <ChartContainer />\");\n\t}\n\n\treturn context;\n}\n\nfunction ChartContainer({\n\tid,\n\tclassName,\n\tchildren,\n\tconfig,\n\t...props\n}: React.ComponentProps<\"div\"> & {\n\tconfig: ChartConfig;\n\tchildren: React.ComponentProps<\n\t\ttypeof RechartsPrimitive.ResponsiveContainer\n\t>[\"children\"];\n}) {\n\tconst uniqueId = React.useId();\n\tconst chartId = `chart-${id || uniqueId.replace(/:/g, \"\")}`;\n\n\treturn (\n\t\t<ChartContext.Provider value={{ config }}>\n\t\t\t<div\n\t\t\t\tdata-slot=\"chart\"\n\t\t\t\tdata-chart={chartId}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<ChartStyle id={chartId} config={config} />\n\t\t\t\t<RechartsPrimitive.ResponsiveContainer>\n\t\t\t\t\t{children}\n\t\t\t\t</RechartsPrimitive.ResponsiveContainer>\n\t\t\t</div>\n\t\t</ChartContext.Provider>\n\t);\n}\n\nconst ChartStyle = ({ id, config }: { id: string; config: ChartConfig }) => {\n\tconst colorConfig = Object.entries(config).filter(\n\t\t([, config]) => config.theme || config.color,\n\t);\n\n\tif (!colorConfig.length) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<style\n\t\t\t// biome-ignore lint/security/noDangerouslySetInnerHtml: FIXME: unchanged shadcn\n\t\t\tdangerouslySetInnerHTML={{\n\t\t\t\t__html: Object.entries(THEMES)\n\t\t\t\t\t.map(\n\t\t\t\t\t\t([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n\t.map(([key, itemConfig]) => {\n\t\tconst color =\n\t\t\titemConfig.theme?.[theme as keyof typeof itemConfig.theme] ||\n\t\t\titemConfig.color;\n\t\treturn color ? ` --color-${key}: ${color};` : null;\n\t})\n\t.join(\"\\n\")}\n}\n`,\n\t\t\t\t\t)\n\t\t\t\t\t.join(\"\\n\"),\n\t\t\t}}\n\t\t/>\n\t);\n};\n\nconst ChartTooltip = RechartsPrimitive.Tooltip;\n\nfunction ChartTooltipContent({\n\tactive,\n\tpayload,\n\tclassName,\n\tindicator = \"dot\",\n\thideLabel = false,\n\thideIndicator = false,\n\tlabel,\n\tlabelFormatter,\n\tlabelClassName,\n\tformatter,\n\tcolor,\n\tnameKey,\n\tlabelKey,\n}: React.ComponentProps<typeof RechartsPrimitive.Tooltip> &\n\tReact.ComponentProps<\"div\"> & {\n\t\thideLabel?: boolean;\n\t\thideIndicator?: boolean;\n\t\tindicator?: \"line\" | \"dot\" | \"dashed\";\n\t\tnameKey?: string;\n\t\tlabelKey?: string;\n\t}) {\n\tconst { config } = useChart();\n\n\tconst tooltipLabel = React.useMemo(() => {\n\t\tif (hideLabel || !payload?.length) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst [item] = payload;\n\t\tconst key = `${labelKey || item?.dataKey || item?.name || \"value\"}`;\n\t\tconst itemConfig = getPayloadConfigFromPayload(config, item, key);\n\t\tconst value =\n\t\t\t!labelKey && typeof label === \"string\"\n\t\t\t\t? config[label as keyof typeof config]?.label || label\n\t\t\t\t: itemConfig?.label;\n\n\t\tif (labelFormatter) {\n\t\t\treturn (\n\t\t\t\t<div className={cn(\"font-medium\", labelClassName)}>\n\t\t\t\t\t{labelFormatter(value, payload)}\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\tif (!value) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn <div className={cn(\"font-medium\", labelClassName)}>{value}</div>;\n\t}, [\n\t\tlabel,\n\t\tlabelFormatter,\n\t\tpayload,\n\t\thideLabel,\n\t\tlabelClassName,\n\t\tconfig,\n\t\tlabelKey,\n\t]);\n\n\tif (!active || !payload?.length) {\n\t\treturn null;\n\t}\n\n\tconst nestLabel = payload.length === 1 && indicator !== \"dot\";\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{!nestLabel ? tooltipLabel : null}\n\t\t\t<div className=\"grid gap-1.5\">\n\t\t\t\t{payload.map((item, index) => {\n\t\t\t\t\tconst key = `${nameKey || item.name || item.dataKey || \"value\"}`;\n\t\t\t\t\tconst itemConfig = getPayloadConfigFromPayload(config, item, key);\n\t\t\t\t\tconst indicatorColor = color || item.payload.fill || item.color;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tkey={item.dataKey}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\"[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5\",\n\t\t\t\t\t\t\t\tindicator === \"dot\" && \"items-center\",\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{formatter && item?.value !== undefined && item.name ? (\n\t\t\t\t\t\t\t\tformatter(item.value, item.name, item, index, item.payload)\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{itemConfig?.icon ? (\n\t\t\t\t\t\t\t\t\t\t<itemConfig.icon />\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t!hideIndicator && (\n\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h-2.5 w-2.5\": indicator === \"dot\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w-1\": indicator === \"line\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w-0 border-[1.5px] border-dashed bg-transparent\":\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tindicator === \"dashed\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"my-0.5\": nestLabel && indicator === \"dashed\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"--color-bg\": indicatorColor,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"--color-border\": indicatorColor,\n\t\t\t\t\t\t\t\t\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\"flex flex-1 justify-between leading-none\",\n\t\t\t\t\t\t\t\t\t\t\tnestLabel ? \"items-end\" : \"items-center\",\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<div className=\"grid gap-1.5\">\n\t\t\t\t\t\t\t\t\t\t\t{nestLabel ? tooltipLabel : null}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-muted-foreground\">\n\t\t\t\t\t\t\t\t\t\t\t\t{itemConfig?.label || item.name}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t{item.value && (\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-foreground font-mono font-medium tabular-nums\">\n\t\t\t\t\t\t\t\t\t\t\t\t{item.value.toLocaleString()}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nconst ChartLegend = RechartsPrimitive.Legend;\n\nfunction ChartLegendContent({\n\tclassName,\n\thideIcon = false,\n\tpayload,\n\tverticalAlign = \"bottom\",\n\tnameKey,\n}: React.ComponentProps<\"div\"> &\n\tPick<RechartsPrimitive.LegendProps, \"payload\" | \"verticalAlign\"> & {\n\t\thideIcon?: boolean;\n\t\tnameKey?: string;\n\t}) {\n\tconst { config } = useChart();\n\n\tif (!payload?.length) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"flex items-center justify-center gap-4\",\n\t\t\t\tverticalAlign === \"top\" ? \"pb-3\" : \"pt-3\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{payload.map((item) => {\n\t\t\t\tconst key = `${nameKey || item.dataKey || \"value\"}`;\n\t\t\t\tconst itemConfig = getPayloadConfigFromPayload(config, item, key);\n\n\t\t\t\treturn (\n\t\t\t\t\t<div\n\t\t\t\t\t\tkey={item.value}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{itemConfig?.icon && !hideIcon ? (\n\t\t\t\t\t\t\t<itemConfig.icon />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"h-2 w-2 shrink-0 rounded-[2px]\"\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tbackgroundColor: item.color,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{itemConfig?.label}\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n}\n\n// Helper to extract item config from a payload.\nfunction getPayloadConfigFromPayload(\n\tconfig: ChartConfig,\n\tpayload: unknown,\n\tkey: string,\n) {\n\tif (typeof payload !== \"object\" || payload === null) {\n\t\treturn undefined;\n\t}\n\n\tconst payloadPayload =\n\t\t\"payload\" in payload &&\n\t\ttypeof payload.payload === \"object\" &&\n\t\tpayload.payload !== null\n\t\t\t? payload.payload\n\t\t\t: undefined;\n\n\tlet configLabelKey: string = key;\n\n\tif (\n\t\tkey in payload &&\n\t\ttypeof payload[key as keyof typeof payload] === \"string\"\n\t) {\n\t\tconfigLabelKey = payload[key as keyof typeof payload] as string;\n\t} else if (\n\t\tpayloadPayload &&\n\t\tkey in payloadPayload &&\n\t\ttypeof payloadPayload[key as keyof typeof payloadPayload] === \"string\"\n\t) {\n\t\tconfigLabelKey = payloadPayload[\n\t\t\tkey as keyof typeof payloadPayload\n\t\t] as string;\n\t}\n\n\treturn configLabelKey in config\n\t\t? config[configLabelKey]\n\t\t: config[key as keyof typeof config];\n}\n\nexport {\n\tChartContainer,\n\tChartTooltip,\n\tChartTooltipContent,\n\tChartLegend,\n\tChartLegendContent,\n\tChartStyle,\n};\n"],"names":["React","RechartsPrimitive","cn","THEMES","light","dark","ChartContext","createContext","useChart","context","useContext","Error","ChartContainer","id","className","children","config","props","uniqueId","useId","chartId","replace","Provider","value","div","data-slot","data-chart","ChartStyle","ResponsiveContainer","colorConfig","Object","entries","filter","theme","color","length","style","dangerouslySetInnerHTML","__html","map","prefix","key","itemConfig","join","ChartTooltip","Tooltip","ChartTooltipContent","active","payload","indicator","hideLabel","hideIndicator","label","labelFormatter","labelClassName","formatter","nameKey","labelKey","tooltipLabel","useMemo","item","dataKey","name","getPayloadConfigFromPayload","nestLabel","index","indicatorColor","fill","undefined","icon","span","toLocaleString","ChartLegend","Legend","ChartLegendContent","hideIcon","verticalAlign","backgroundColor","payloadPayload","configLabelKey"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/shadcn/components/ui/chart.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport * as RechartsPrimitive from \"recharts\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\n// Format: { THEME_NAME: CSS_SELECTOR }\nconst THEMES = { light: \"\", dark: \".dark\" } as const;\n\nexport type ChartConfig = {\n\t[k in string]: {\n\t\tlabel?: React.ReactNode;\n\t\ticon?: React.ComponentType;\n\t} & (\n\t\t| { color?: string; theme?: never }\n\t\t| { color?: never; theme: Record<keyof typeof THEMES, string> }\n\t);\n};\n\ntype ChartContextProps = {\n\tconfig: ChartConfig;\n};\n\nconst ChartContext = React.createContext<ChartContextProps | null>(null);\n\nfunction useChart() {\n\tconst context = React.useContext(ChartContext);\n\n\tif (!context) {\n\t\tthrow new Error(\"useChart must be used within a <ChartContainer />\");\n\t}\n\n\treturn context;\n}\n\nfunction ChartContainer({\n\tid,\n\tclassName,\n\tchildren,\n\tconfig,\n\t...props\n}: React.ComponentProps<\"div\"> & {\n\tconfig: ChartConfig;\n\tchildren: React.ComponentProps<\n\t\ttypeof RechartsPrimitive.ResponsiveContainer\n\t>[\"children\"];\n}) {\n\tconst uniqueId = React.useId();\n\tconst chartId = `chart-${id || uniqueId.replace(/:/g, \"\")}`;\n\n\treturn (\n\t\t<ChartContext.Provider value={{ config }}>\n\t\t\t<div\n\t\t\t\tdata-slot=\"chart\"\n\t\t\t\tdata-chart={chartId}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<ChartStyle id={chartId} config={config} />\n\t\t\t\t<RechartsPrimitive.ResponsiveContainer>\n\t\t\t\t\t{children}\n\t\t\t\t</RechartsPrimitive.ResponsiveContainer>\n\t\t\t</div>\n\t\t</ChartContext.Provider>\n\t);\n}\n\nfunction ChartStyle({ id, config }: { id: string; config: ChartConfig }) {\n\tconst colorConfig = Object.entries(config).filter(\n\t\t([, config]) => config.theme || config.color,\n\t);\n\n\tif (!colorConfig.length) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<style\n\t\t\t// biome-ignore lint/security/noDangerouslySetInnerHtml: FIXME: unchanged shadcn\n\t\t\tdangerouslySetInnerHTML={{\n\t\t\t\t__html: Object.entries(THEMES)\n\t\t\t\t\t.map(\n\t\t\t\t\t\t([theme, prefix]) => `\n${prefix} [data-chart=${id}] {\n${colorConfig\n\t.map(([key, itemConfig]) => {\n\t\tconst color =\n\t\t\titemConfig.theme?.[theme as keyof typeof itemConfig.theme] ||\n\t\t\titemConfig.color;\n\t\treturn color ? ` --color-${key}: ${color};` : null;\n\t})\n\t.join(\"\\n\")}\n}\n`,\n\t\t\t\t\t)\n\t\t\t\t\t.join(\"\\n\"),\n\t\t\t}}\n\t\t/>\n\t);\n}\n\nconst ChartTooltip = RechartsPrimitive.Tooltip;\n\nfunction ChartTooltipContent({\n\tactive,\n\tpayload,\n\tclassName,\n\tindicator = \"dot\",\n\thideLabel = false,\n\thideIndicator = false,\n\tlabel,\n\tlabelFormatter,\n\tlabelClassName,\n\tformatter,\n\tcolor,\n\tnameKey,\n\tlabelKey,\n}: RechartsPrimitive.TooltipContentProps &\n\tReact.ComponentProps<\"div\"> & {\n\t\thideLabel?: boolean;\n\t\thideIndicator?: boolean;\n\t\tindicator?: \"line\" | \"dot\" | \"dashed\";\n\t\tnameKey?: string;\n\t\tlabelKey?: string;\n\t}) {\n\tconst { config } = useChart();\n\n\tconst tooltipLabel = React.useMemo(() => {\n\t\tif (hideLabel || !payload?.length) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst [item] = payload;\n\t\tconst key = `${labelKey || item?.dataKey || item?.name || \"value\"}`;\n\t\tconst itemConfig = getPayloadConfigFromPayload(config, item, key);\n\t\tconst value =\n\t\t\t!labelKey && typeof label === \"string\"\n\t\t\t\t? config[label as keyof typeof config]?.label || label\n\t\t\t\t: itemConfig?.label;\n\n\t\tif (labelFormatter) {\n\t\t\treturn (\n\t\t\t\t<div className={cn(\"font-medium\", labelClassName)}>\n\t\t\t\t\t{labelFormatter(value, payload)}\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\tif (!value) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn <div className={cn(\"font-medium\", labelClassName)}>{value}</div>;\n\t}, [\n\t\tlabel,\n\t\tlabelFormatter,\n\t\tpayload,\n\t\thideLabel,\n\t\tlabelClassName,\n\t\tconfig,\n\t\tlabelKey,\n\t]);\n\n\tif (!active || !payload?.length) {\n\t\treturn null;\n\t}\n\n\tconst nestLabel = payload.length === 1 && indicator !== \"dot\";\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{!nestLabel ? tooltipLabel : null}\n\t\t\t<div className=\"grid gap-1.5\">\n\t\t\t\t{payload.map((item, index) => {\n\t\t\t\t\tconst key = `${nameKey || item.name || item.dataKey || \"value\"}`;\n\t\t\t\t\tconst itemConfig = getPayloadConfigFromPayload(config, item, key);\n\t\t\t\t\tconst indicatorColor = color || item.payload.fill || item.color;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tkey={String(item.dataKey ?? index)}\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\"[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5\",\n\t\t\t\t\t\t\t\tindicator === \"dot\" && \"items-center\",\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{formatter && item?.value !== undefined && item.name ? (\n\t\t\t\t\t\t\t\tformatter(item.value, item.name, item, index, item.payload)\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t{itemConfig?.icon ? (\n\t\t\t\t\t\t\t\t\t\t<itemConfig.icon />\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t!hideIndicator && (\n\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h-2.5 w-2.5\": indicator === \"dot\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w-1\": indicator === \"line\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w-0 border-[1.5px] border-dashed bg-transparent\":\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tindicator === \"dashed\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"my-0.5\": nestLabel && indicator === \"dashed\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"--color-bg\": indicatorColor,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"--color-border\": indicatorColor,\n\t\t\t\t\t\t\t\t\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\"flex flex-1 justify-between leading-none\",\n\t\t\t\t\t\t\t\t\t\t\tnestLabel ? \"items-end\" : \"items-center\",\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<div className=\"grid gap-1.5\">\n\t\t\t\t\t\t\t\t\t\t\t{nestLabel ? tooltipLabel : null}\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-muted-foreground\">\n\t\t\t\t\t\t\t\t\t\t\t\t{itemConfig?.label || item.name}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t{item.value && (\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"text-foreground font-mono font-medium tabular-nums\">\n\t\t\t\t\t\t\t\t\t\t\t\t{item.value.toLocaleString()}\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nconst ChartLegend = RechartsPrimitive.Legend;\n\nfunction ChartLegendContent({\n\tclassName,\n\thideIcon = false,\n\tpayload,\n\tverticalAlign = \"bottom\",\n\tnameKey,\n}: React.ComponentProps<\"div\"> &\n\tPick<\n\t\tRechartsPrimitive.DefaultLegendContentProps,\n\t\t\"payload\" | \"verticalAlign\"\n\t> & {\n\t\thideIcon?: boolean;\n\t\tnameKey?: string;\n\t}) {\n\tconst { config } = useChart();\n\n\tif (!payload?.length) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\t\"flex items-center justify-center gap-4\",\n\t\t\t\tverticalAlign === \"top\" ? \"pb-3\" : \"pt-3\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{payload.map((item) => {\n\t\t\t\tconst key = `${nameKey || item.dataKey || \"value\"}`;\n\t\t\t\tconst itemConfig = getPayloadConfigFromPayload(config, item, key);\n\n\t\t\t\treturn (\n\t\t\t\t\t<div\n\t\t\t\t\t\tkey={item.value}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\"[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3\",\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{itemConfig?.icon && !hideIcon ? (\n\t\t\t\t\t\t\t<itemConfig.icon />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tclassName=\"h-2 w-2 shrink-0 rounded-[2px]\"\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tbackgroundColor: item.color,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{itemConfig?.label}\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</div>\n\t);\n}\n\n// Helper to extract item config from a payload.\nfunction getPayloadConfigFromPayload(\n\tconfig: ChartConfig,\n\tpayload: unknown,\n\tkey: string,\n) {\n\tif (typeof payload !== \"object\" || payload === null) {\n\t\treturn undefined;\n\t}\n\n\tconst payloadPayload =\n\t\t\"payload\" in payload &&\n\t\ttypeof payload.payload === \"object\" &&\n\t\tpayload.payload !== null\n\t\t\t? payload.payload\n\t\t\t: undefined;\n\n\tlet configLabelKey: string = key;\n\n\tif (\n\t\tkey in payload &&\n\t\ttypeof payload[key as keyof typeof payload] === \"string\"\n\t) {\n\t\tconfigLabelKey = payload[key as keyof typeof payload] as string;\n\t} else if (\n\t\tpayloadPayload &&\n\t\tkey in payloadPayload &&\n\t\ttypeof payloadPayload[key as keyof typeof payloadPayload] === \"string\"\n\t) {\n\t\tconfigLabelKey = payloadPayload[\n\t\t\tkey as keyof typeof payloadPayload\n\t\t] as string;\n\t}\n\n\treturn configLabelKey in config\n\t\t? config[configLabelKey]\n\t\t: config[key as keyof typeof config];\n}\n\nexport {\n\tChartContainer,\n\tChartTooltip,\n\tChartTooltipContent,\n\tChartLegend,\n\tChartLegendContent,\n\tChartStyle,\n};\n"],"names":["React","RechartsPrimitive","cn","THEMES","light","dark","ChartContext","createContext","useChart","context","useContext","Error","ChartContainer","id","className","children","config","props","uniqueId","useId","chartId","replace","Provider","value","div","data-slot","data-chart","ChartStyle","ResponsiveContainer","colorConfig","Object","entries","filter","theme","color","length","style","dangerouslySetInnerHTML","__html","map","prefix","key","itemConfig","join","ChartTooltip","Tooltip","ChartTooltipContent","active","payload","indicator","hideLabel","hideIndicator","label","labelFormatter","labelClassName","formatter","nameKey","labelKey","tooltipLabel","useMemo","item","dataKey","name","getPayloadConfigFromPayload","nestLabel","index","indicatorColor","fill","undefined","icon","span","toLocaleString","String","ChartLegend","Legend","ChartLegendContent","hideIcon","verticalAlign","backgroundColor","payloadPayload","configLabelKey"],"mappings":"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"}
@@ -1,5 +1,9 @@
1
1
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
2
+ import { type VariantProps } from "class-variance-authority";
2
3
  import type * as React from "react";
3
- declare function Checkbox({ className, ...props }: React.ComponentProps<typeof CheckboxPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare const checkboxVariants: (props?: ({
5
+ size?: "small" | "regular" | null | undefined;
6
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ declare function Checkbox({ className, size, ...props }: React.ComponentProps<typeof CheckboxPrimitive.Root> & VariantProps<typeof checkboxVariants>): import("react/jsx-runtime").JSX.Element;
4
8
  export { Checkbox };
5
9
  //# sourceMappingURL=checkbox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAC;AAE9D,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,iBAAS,QAAQ,CAAC,EACjB,SAAS,EACT,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,IAAI,CAAC,2CAkBrD;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/checkbox.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAiDpC,QAAA,MAAM,gBAAgB;;8EAUpB,CAAC;AAaH,iBAAS,QAAQ,CAAC,EACjB,SAAS,EACT,IAAI,EACJ,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,IAAI,CAAC,GACrD,YAAY,CAAC,OAAO,gBAAgB,CAAC,2CA6BrC;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,17 +1,57 @@
1
+ "use client";
1
2
  import { jsx as _jsx } from "react/jsx-runtime";
2
3
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
3
- import { CheckIcon } from "lucide-react";
4
+ import { cva } from "class-variance-authority";
5
+ import { CheckIcon, MinusIcon } from "lucide-react";
4
6
  import { cn } from "../../lib/utils.js";
5
- function Checkbox({ className, ...props }) {
7
+ // Checkbox root styles
8
+ const baseCheckboxStyles = cn(// Layout
9
+ "inline-flex", "items-center", "justify-center", "peer", "shrink-0", // Shape
10
+ "rounded-[2px]", // Interaction
11
+ "outline-none", "cursor-pointer", // Animation
12
+ "transition-colors", "duration-200", // Default state
13
+ "bg-bg-primary", "border-border-dark", // Checked state
14
+ "data-[state=checked]:bg-[var(--color-fg-link)]", "data-[state=checked]:border-[var(--color-fg-link)]", "data-[state=checked]:text-white", // Indeterminate state
15
+ "data-[state=indeterminate]:bg-[var(--color-fg-link)]", "data-[state=indeterminate]:border-[var(--color-fg-link)]", "data-[state=indeterminate]:text-white", // Disabled states
16
+ "disabled:cursor-not-allowed", "disabled:bg-bg-primary", "disabled:border-[var(--color-fg-disabled)]", "disabled:data-[state=checked]:bg-[var(--color-fg-disabled)]", "disabled:data-[state=checked]:border-[var(--color-fg-disabled)]", "disabled:data-[state=checked]:text-[var(--color-fg-secondary)]", "disabled:data-[state=indeterminate]:bg-[var(--color-fg-disabled)]", "disabled:data-[state=indeterminate]:border-[var(--color-fg-disabled)]", "disabled:data-[state=indeterminate]:text-[var(--color-fg-secondary)]", // Focus styles
17
+ "focus-visible:ring-4", "focus-visible:ring-ring-blue", "focus-visible:border-border-link", // Hover styles
18
+ "disabled:hover:ring-0");
19
+ const checkboxVariants = cva(baseCheckboxStyles, {
20
+ variants: {
21
+ size: {
22
+ regular: "size-5 border-[1.5px]",
23
+ small: "size-4 border-[1.5px]"
24
+ }
25
+ },
26
+ defaultVariants: {
27
+ size: "regular"
28
+ }
29
+ });
30
+ // Checkbox indicator styles
31
+ const checkboxIndicatorStyles = cn(// Layout
32
+ "flex", "items-center", "justify-center", // Colors
33
+ "text-white", "disabled:text-[var(--color-fg-secondary)]");
34
+ function Checkbox({ className, size, ...props }) {
6
35
  return /*#__PURE__*/ _jsx(CheckboxPrimitive.Root, {
7
36
  "data-slot": "checkbox",
8
- className: cn("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50", className),
37
+ className: cn(checkboxVariants({
38
+ size
39
+ }), className),
9
40
  ...props,
10
41
  children: /*#__PURE__*/ _jsx(CheckboxPrimitive.Indicator, {
42
+ forceMount: true,
11
43
  "data-slot": "checkbox-indicator",
12
- className: "flex items-center justify-center text-current transition-none",
13
- children: /*#__PURE__*/ _jsx(CheckIcon, {
14
- className: "size-3.5"
44
+ className: cn(checkboxIndicatorStyles, "data-[state=unchecked]:opacity-0"),
45
+ children: props.checked === "indeterminate" ? /*#__PURE__*/ _jsx(MinusIcon, {
46
+ className: cn(size === "small" ? "size-2.5" : "size-3.5"),
47
+ style: {
48
+ strokeWidth: 3
49
+ }
50
+ }) : /*#__PURE__*/ _jsx(CheckIcon, {
51
+ className: cn(size === "small" ? "size-2.5" : "size-3.5"),
52
+ style: {
53
+ strokeWidth: 3
54
+ }
15
55
  })
16
56
  })
17
57
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/shadcn/components/ui/checkbox.tsx"],"sourcesContent":["import * as CheckboxPrimitive from \"@radix-ui/react-checkbox\";\nimport { CheckIcon } from \"lucide-react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\nfunction Checkbox({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof CheckboxPrimitive.Root>) {\n\treturn (\n\t\t<CheckboxPrimitive.Root\n\t\t\tdata-slot=\"checkbox\"\n\t\t\tclassName={cn(\n\t\t\t\t\"peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<CheckboxPrimitive.Indicator\n\t\t\t\tdata-slot=\"checkbox-indicator\"\n\t\t\t\tclassName=\"flex items-center justify-center text-current transition-none\"\n\t\t\t>\n\t\t\t\t<CheckIcon className=\"size-3.5\" />\n\t\t\t</CheckboxPrimitive.Indicator>\n\t\t</CheckboxPrimitive.Root>\n\t);\n}\n\nexport { Checkbox };\n"],"names":["CheckboxPrimitive","CheckIcon","cn","Checkbox","className","props","Root","data-slot","Indicator"],"mappings":";AAAA,YAAYA,uBAAuB,2BAA2B;AAC9D,SAASC,SAAS,QAAQ,eAAe;AAGzC,SAASC,EAAE,QAAQ,qBAAoB;AAEvC,SAASC,SAAS,EACjBC,SAAS,EACT,GAAGC,OACkD;IACrD,qBACC,KAACL,kBAAkBM,IAAI;QACtBC,aAAU;QACVH,WAAWF,GACV,+eACAE;QAEA,GAAGC,KAAK;kBAET,cAAA,KAACL,kBAAkBQ,SAAS;YAC3BD,aAAU;YACVH,WAAU;sBAEV,cAAA,KAACH;gBAAUG,WAAU;;;;AAIzB;AAEA,SAASD,QAAQ,GAAG"}
1
+ {"version":3,"sources":["../../../../../src/shadcn/components/ui/checkbox.tsx"],"sourcesContent":["\"use client\";\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { CheckIcon, MinusIcon } from \"lucide-react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"#shadcn/lib/utils\";\n\n// Checkbox root styles\nconst baseCheckboxStyles = cn(\n\t// Layout\n\t\"inline-flex\",\n\t\"items-center\",\n\t\"justify-center\",\n\t\"peer\",\n\t\"shrink-0\",\n\t// Shape\n\t\"rounded-[2px]\",\n\t// Interaction\n\t\"outline-none\",\n\t\"cursor-pointer\",\n\t// Animation\n\t\"transition-colors\",\n\t\"duration-200\",\n\t// Default state\n\t\"bg-bg-primary\",\n\t\"border-border-dark\",\n\t// Checked state\n\t\"data-[state=checked]:bg-[var(--color-fg-link)]\",\n\t\"data-[state=checked]:border-[var(--color-fg-link)]\",\n\t\"data-[state=checked]:text-white\",\n\t// Indeterminate state\n\t\"data-[state=indeterminate]:bg-[var(--color-fg-link)]\",\n\t\"data-[state=indeterminate]:border-[var(--color-fg-link)]\",\n\t\"data-[state=indeterminate]:text-white\",\n\t// Disabled states\n\t\"disabled:cursor-not-allowed\",\n\t\"disabled:bg-bg-primary\",\n\t\"disabled:border-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=checked]:bg-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=checked]:border-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=checked]:text-[var(--color-fg-secondary)]\",\n\t\"disabled:data-[state=indeterminate]:bg-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=indeterminate]:border-[var(--color-fg-disabled)]\",\n\t\"disabled:data-[state=indeterminate]:text-[var(--color-fg-secondary)]\",\n\t// Focus styles\n\t\"focus-visible:ring-4\",\n\t\"focus-visible:ring-ring-blue\",\n\t\"focus-visible:border-border-link\",\n\t// Hover styles\n\t\"disabled:hover:ring-0\",\n);\n\nconst checkboxVariants = cva(baseCheckboxStyles, {\n\tvariants: {\n\t\tsize: {\n\t\t\tregular: \"size-5 border-[1.5px]\",\n\t\t\tsmall: \"size-4 border-[1.5px]\",\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"regular\",\n\t},\n});\n\n// Checkbox indicator styles\nconst checkboxIndicatorStyles = cn(\n\t// Layout\n\t\"flex\",\n\t\"items-center\",\n\t\"justify-center\",\n\t// Colors\n\t\"text-white\",\n\t\"disabled:text-[var(--color-fg-secondary)]\",\n);\n\nfunction Checkbox({\n\tclassName,\n\tsize,\n\t...props\n}: React.ComponentProps<typeof CheckboxPrimitive.Root> &\n\tVariantProps<typeof checkboxVariants>) {\n\treturn (\n\t\t<CheckboxPrimitive.Root\n\t\t\tdata-slot=\"checkbox\"\n\t\t\tclassName={cn(checkboxVariants({ size }), className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<CheckboxPrimitive.Indicator\n\t\t\t\tforceMount\n\t\t\t\tdata-slot=\"checkbox-indicator\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\tcheckboxIndicatorStyles,\n\t\t\t\t\t\"data-[state=unchecked]:opacity-0\",\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{props.checked === \"indeterminate\" ? (\n\t\t\t\t\t<MinusIcon\n\t\t\t\t\t\tclassName={cn(size === \"small\" ? \"size-2.5\" : \"size-3.5\")}\n\t\t\t\t\t\tstyle={{ strokeWidth: 3 }}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<CheckIcon\n\t\t\t\t\t\tclassName={cn(size === \"small\" ? \"size-2.5\" : \"size-3.5\")}\n\t\t\t\t\t\tstyle={{ strokeWidth: 3 }}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</CheckboxPrimitive.Indicator>\n\t\t</CheckboxPrimitive.Root>\n\t);\n}\n\nexport { Checkbox };\n"],"names":["CheckboxPrimitive","cva","CheckIcon","MinusIcon","cn","baseCheckboxStyles","checkboxVariants","variants","size","regular","small","defaultVariants","checkboxIndicatorStyles","Checkbox","className","props","Root","data-slot","Indicator","forceMount","checked","style","strokeWidth"],"mappings":"AAAA;;AACA,YAAYA,uBAAuB,2BAA2B;AAC9D,SAASC,GAAG,QAA2B,2BAA2B;AAClE,SAASC,SAAS,EAAEC,SAAS,QAAQ,eAAe;AAGpD,SAASC,EAAE,QAAQ,qBAAoB;AAEvC,uBAAuB;AACvB,MAAMC,qBAAqBD,GAC1B,SAAS;AACT,eACA,gBACA,kBACA,QACA,YACA,QAAQ;AACR,iBACA,cAAc;AACd,gBACA,kBACA,YAAY;AACZ,qBACA,gBACA,gBAAgB;AAChB,iBACA,sBACA,gBAAgB;AAChB,kDACA,sDACA,mCACA,sBAAsB;AACtB,wDACA,4DACA,yCACA,kBAAkB;AAClB,+BACA,0BACA,8CACA,+DACA,mEACA,kEACA,qEACA,yEACA,wEACA,eAAe;AACf,wBACA,gCACA,oCACA,eAAe;AACf;AAGD,MAAME,mBAAmBL,IAAII,oBAAoB;IAChDE,UAAU;QACTC,MAAM;YACLC,SAAS;YACTC,OAAO;QACR;IACD;IACAC,iBAAiB;QAChBH,MAAM;IACP;AACD;AAEA,4BAA4B;AAC5B,MAAMI,0BAA0BR,GAC/B,SAAS;AACT,QACA,gBACA,kBACA,SAAS;AACT,cACA;AAGD,SAASS,SAAS,EACjBC,SAAS,EACTN,IAAI,EACJ,GAAGO,OAEkC;IACrC,qBACC,KAACf,kBAAkBgB,IAAI;QACtBC,aAAU;QACVH,WAAWV,GAAGE,iBAAiB;YAAEE;QAAK,IAAIM;QACzC,GAAGC,KAAK;kBAET,cAAA,KAACf,kBAAkBkB,SAAS;YAC3BC,UAAU;YACVF,aAAU;YACVH,WAAWV,GACVQ,yBACA;sBAGAG,MAAMK,OAAO,KAAK,gCAClB,KAACjB;gBACAW,WAAWV,GAAGI,SAAS,UAAU,aAAa;gBAC9Ca,OAAO;oBAAEC,aAAa;gBAAE;+BAGzB,KAACpB;gBACAY,WAAWV,GAAGI,SAAS,UAAU,aAAa;gBAC9Ca,OAAO;oBAAEC,aAAa;gBAAE;;;;AAM9B;AAEA,SAAST,QAAQ,GAAG"}
@@ -7,73 +7,183 @@ const meta = {
7
7
  export default meta;
8
8
  export const Demo = {
9
9
  render: ()=>/*#__PURE__*/ _jsxs("div", {
10
- className: "flex flex-col gap-6",
10
+ className: "flex gap-12",
11
11
  children: [
12
12
  /*#__PURE__*/ _jsxs("div", {
13
- className: "flex items-center gap-3",
13
+ className: "flex flex-col gap-6",
14
14
  children: [
15
- /*#__PURE__*/ _jsx(Checkbox, {
16
- id: "terms"
17
- }),
18
- /*#__PURE__*/ _jsx(Label, {
19
- htmlFor: "terms",
20
- children: "Accept terms and conditions"
21
- })
22
- ]
23
- }),
24
- /*#__PURE__*/ _jsxs("div", {
25
- className: "flex items-start gap-3",
26
- children: [
27
- /*#__PURE__*/ _jsx(Checkbox, {
28
- id: "terms-2",
29
- defaultChecked: true
15
+ /*#__PURE__*/ _jsxs("div", {
16
+ className: "flex items-center gap-3",
17
+ children: [
18
+ /*#__PURE__*/ _jsx(Checkbox, {
19
+ id: "terms",
20
+ size: "regular"
21
+ }),
22
+ /*#__PURE__*/ _jsx(Label, {
23
+ htmlFor: "terms",
24
+ children: "Unchecked"
25
+ })
26
+ ]
30
27
  }),
31
28
  /*#__PURE__*/ _jsxs("div", {
32
- className: "grid gap-2",
29
+ className: "flex items-center gap-3",
33
30
  children: [
31
+ /*#__PURE__*/ _jsx(Checkbox, {
32
+ id: "terms-2",
33
+ size: "regular",
34
+ defaultChecked: true
35
+ }),
34
36
  /*#__PURE__*/ _jsx(Label, {
35
37
  htmlFor: "terms-2",
36
- children: "Accept terms and conditions"
38
+ children: "Checked"
39
+ })
40
+ ]
41
+ }),
42
+ /*#__PURE__*/ _jsxs("div", {
43
+ className: "flex items-center gap-3",
44
+ children: [
45
+ /*#__PURE__*/ _jsx(Checkbox, {
46
+ id: "indeterminate",
47
+ size: "regular",
48
+ checked: "indeterminate"
49
+ }),
50
+ /*#__PURE__*/ _jsx(Label, {
51
+ htmlFor: "indeterminate",
52
+ children: "Indeterminate"
53
+ })
54
+ ]
55
+ }),
56
+ /*#__PURE__*/ _jsxs("div", {
57
+ className: "flex items-center gap-3",
58
+ children: [
59
+ /*#__PURE__*/ _jsx(Checkbox, {
60
+ id: "disabled",
61
+ size: "regular",
62
+ disabled: true
63
+ }),
64
+ /*#__PURE__*/ _jsx(Label, {
65
+ htmlFor: "disabled",
66
+ children: "Disabled unchecked"
67
+ })
68
+ ]
69
+ }),
70
+ /*#__PURE__*/ _jsxs("div", {
71
+ className: "flex items-center gap-3",
72
+ children: [
73
+ /*#__PURE__*/ _jsx(Checkbox, {
74
+ id: "disabled-checked",
75
+ size: "regular",
76
+ disabled: true,
77
+ defaultChecked: true
78
+ }),
79
+ /*#__PURE__*/ _jsx(Label, {
80
+ htmlFor: "disabled-checked",
81
+ children: "Disabled checked"
82
+ })
83
+ ]
84
+ }),
85
+ /*#__PURE__*/ _jsxs("div", {
86
+ className: "flex items-center gap-3",
87
+ children: [
88
+ /*#__PURE__*/ _jsx(Checkbox, {
89
+ id: "disabled-indeterminate",
90
+ size: "regular",
91
+ disabled: true,
92
+ checked: "indeterminate"
37
93
  }),
38
- /*#__PURE__*/ _jsx("p", {
39
- className: "text-muted-foreground text-sm",
40
- children: "By clicking this checkbox, you agree to the terms and conditions."
94
+ /*#__PURE__*/ _jsx(Label, {
95
+ htmlFor: "disabled-indeterminate",
96
+ children: "Disabled indeterminate"
41
97
  })
42
98
  ]
43
99
  })
44
100
  ]
45
101
  }),
46
102
  /*#__PURE__*/ _jsxs("div", {
47
- className: "flex items-start gap-3",
103
+ className: "flex flex-col gap-6",
48
104
  children: [
49
- /*#__PURE__*/ _jsx(Checkbox, {
50
- id: "toggle",
51
- disabled: true
105
+ /*#__PURE__*/ _jsxs("div", {
106
+ className: "flex items-center gap-3",
107
+ children: [
108
+ /*#__PURE__*/ _jsx(Checkbox, {
109
+ id: "terms-small",
110
+ size: "small"
111
+ }),
112
+ /*#__PURE__*/ _jsx(Label, {
113
+ htmlFor: "terms-small",
114
+ children: "Unchecked"
115
+ })
116
+ ]
52
117
  }),
53
- /*#__PURE__*/ _jsx(Label, {
54
- htmlFor: "toggle",
55
- children: "Enable notifications"
56
- })
57
- ]
58
- }),
59
- /*#__PURE__*/ _jsxs(Label, {
60
- className: "hover:bg-accent/50 flex items-start gap-3 rounded-lg border p-3 has-[[aria-checked=true]]:border-blue-600 has-[[aria-checked=true]]:bg-blue-50 dark:has-[[aria-checked=true]]:border-blue-900 dark:has-[[aria-checked=true]]:bg-blue-950",
61
- children: [
62
- /*#__PURE__*/ _jsx(Checkbox, {
63
- id: "toggle-2",
64
- defaultChecked: true,
65
- className: "data-[state=checked]:border-blue-600 data-[state=checked]:bg-blue-600 data-[state=checked]:text-white dark:data-[state=checked]:border-blue-700 dark:data-[state=checked]:bg-blue-700"
118
+ /*#__PURE__*/ _jsxs("div", {
119
+ className: "flex items-center gap-3",
120
+ children: [
121
+ /*#__PURE__*/ _jsx(Checkbox, {
122
+ id: "terms-2-small",
123
+ size: "small",
124
+ defaultChecked: true
125
+ }),
126
+ /*#__PURE__*/ _jsx(Label, {
127
+ htmlFor: "terms-2-small",
128
+ children: "Checked"
129
+ })
130
+ ]
66
131
  }),
67
132
  /*#__PURE__*/ _jsxs("div", {
68
- className: "grid gap-1.5 font-normal",
133
+ className: "flex items-center gap-3",
69
134
  children: [
70
- /*#__PURE__*/ _jsx("p", {
71
- className: "text-sm leading-none font-medium",
72
- children: "Enable notifications"
135
+ /*#__PURE__*/ _jsx(Checkbox, {
136
+ id: "indeterminate-small",
137
+ size: "small",
138
+ checked: "indeterminate"
73
139
  }),
74
- /*#__PURE__*/ _jsx("p", {
75
- className: "text-muted-foreground text-sm",
76
- children: "You can enable or disable notifications at any time."
140
+ /*#__PURE__*/ _jsx(Label, {
141
+ htmlFor: "indeterminate-small",
142
+ children: "Indeterminate"
143
+ })
144
+ ]
145
+ }),
146
+ /*#__PURE__*/ _jsxs("div", {
147
+ className: "flex items-center gap-3",
148
+ children: [
149
+ /*#__PURE__*/ _jsx(Checkbox, {
150
+ id: "disabled-small",
151
+ size: "small",
152
+ disabled: true
153
+ }),
154
+ /*#__PURE__*/ _jsx(Label, {
155
+ htmlFor: "disabled-small",
156
+ children: "Disabled unchecked"
157
+ })
158
+ ]
159
+ }),
160
+ /*#__PURE__*/ _jsxs("div", {
161
+ className: "flex items-center gap-3",
162
+ children: [
163
+ /*#__PURE__*/ _jsx(Checkbox, {
164
+ id: "disabled-checked-small",
165
+ size: "small",
166
+ disabled: true,
167
+ defaultChecked: true
168
+ }),
169
+ /*#__PURE__*/ _jsx(Label, {
170
+ htmlFor: "disabled-checked-small",
171
+ children: "Disabled checked"
172
+ })
173
+ ]
174
+ }),
175
+ /*#__PURE__*/ _jsxs("div", {
176
+ className: "flex items-center gap-3",
177
+ children: [
178
+ /*#__PURE__*/ _jsx(Checkbox, {
179
+ id: "disabled-indeterminate-small",
180
+ size: "small",
181
+ disabled: true,
182
+ checked: "indeterminate"
183
+ }),
184
+ /*#__PURE__*/ _jsx(Label, {
185
+ htmlFor: "disabled-indeterminate-small",
186
+ children: "Disabled indeterminate"
77
187
  })
78
188
  ]
79
189
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/shadcn/components/ui/checkbox.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react-vite\";\nimport { Checkbox } from \"#shadcn/components/ui/checkbox\";\nimport { Label } from \"#shadcn/components/ui/label\";\n\nconst meta = {\n\ttitle: \"Component/Checkbox\",\n} satisfies Meta;\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Demo = {\n\trender: () => (\n\t\t<div className=\"flex flex-col gap-6\">\n\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t<Checkbox id=\"terms\" />\n\t\t\t\t<Label htmlFor=\"terms\">Accept terms and conditions</Label>\n\t\t\t</div>\n\t\t\t<div className=\"flex items-start gap-3\">\n\t\t\t\t<Checkbox id=\"terms-2\" defaultChecked />\n\t\t\t\t<div className=\"grid gap-2\">\n\t\t\t\t\t<Label htmlFor=\"terms-2\">Accept terms and conditions</Label>\n\t\t\t\t\t<p className=\"text-muted-foreground text-sm\">\n\t\t\t\t\t\tBy clicking this checkbox, you agree to the terms and conditions.\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div className=\"flex items-start gap-3\">\n\t\t\t\t<Checkbox id=\"toggle\" disabled />\n\t\t\t\t<Label htmlFor=\"toggle\">Enable notifications</Label>\n\t\t\t</div>\n\t\t\t<Label className=\"hover:bg-accent/50 flex items-start gap-3 rounded-lg border p-3 has-[[aria-checked=true]]:border-blue-600 has-[[aria-checked=true]]:bg-blue-50 dark:has-[[aria-checked=true]]:border-blue-900 dark:has-[[aria-checked=true]]:bg-blue-950\">\n\t\t\t\t<Checkbox\n\t\t\t\t\tid=\"toggle-2\"\n\t\t\t\t\tdefaultChecked\n\t\t\t\t\tclassName=\"data-[state=checked]:border-blue-600 data-[state=checked]:bg-blue-600 data-[state=checked]:text-white dark:data-[state=checked]:border-blue-700 dark:data-[state=checked]:bg-blue-700\"\n\t\t\t\t/>\n\t\t\t\t<div className=\"grid gap-1.5 font-normal\">\n\t\t\t\t\t<p className=\"text-sm leading-none font-medium\">\n\t\t\t\t\t\tEnable notifications\n\t\t\t\t\t</p>\n\t\t\t\t\t<p className=\"text-muted-foreground text-sm\">\n\t\t\t\t\t\tYou can enable or disable notifications at any time.\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t</Label>\n\t\t</div>\n\t),\n} satisfies Story;\n"],"names":["Checkbox","Label","meta","title","Demo","render","div","className","id","htmlFor","defaultChecked","p","disabled"],"mappings":";AACA,SAASA,QAAQ,QAAQ,gBAAiC;AAC1D,SAASC,KAAK,QAAQ,aAA8B;AAEpD,MAAMC,OAAO;IACZC,OAAO;AACR;AACA,eAAeD,KAAK;AAIpB,OAAO,MAAME,OAAO;IACnBC,QAAQ,kBACP,MAACC;YAAIC,WAAU;;8BACd,MAACD;oBAAIC,WAAU;;sCACd,KAACP;4BAASQ,IAAG;;sCACb,KAACP;4BAAMQ,SAAQ;sCAAQ;;;;8BAExB,MAACH;oBAAIC,WAAU;;sCACd,KAACP;4BAASQ,IAAG;4BAAUE,cAAc;;sCACrC,MAACJ;4BAAIC,WAAU;;8CACd,KAACN;oCAAMQ,SAAQ;8CAAU;;8CACzB,KAACE;oCAAEJ,WAAU;8CAAgC;;;;;;8BAK/C,MAACD;oBAAIC,WAAU;;sCACd,KAACP;4BAASQ,IAAG;4BAASI,QAAQ;;sCAC9B,KAACX;4BAAMQ,SAAQ;sCAAS;;;;8BAEzB,MAACR;oBAAMM,WAAU;;sCAChB,KAACP;4BACAQ,IAAG;4BACHE,cAAc;4BACdH,WAAU;;sCAEX,MAACD;4BAAIC,WAAU;;8CACd,KAACI;oCAAEJ,WAAU;8CAAmC;;8CAGhD,KAACI;oCAAEJ,WAAU;8CAAgC;;;;;;;;AAOlD,EAAkB"}
1
+ {"version":3,"sources":["../../../../../src/shadcn/components/ui/checkbox.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react-vite\";\nimport { Checkbox } from \"#shadcn/components/ui/checkbox\";\nimport { Label } from \"#shadcn/components/ui/label\";\n\nconst meta = {\n\ttitle: \"Component/Checkbox\",\n} satisfies Meta;\nexport default meta;\n\ntype Story = StoryObj<typeof meta>;\n\nexport const Demo = {\n\trender: () => (\n\t\t<div className=\"flex gap-12\">\n\t\t\t{/* Regular size */}\n\t\t\t<div className=\"flex flex-col gap-6\">\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox id=\"terms\" size=\"regular\" />\n\t\t\t\t\t<Label htmlFor=\"terms\">Unchecked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox id=\"terms-2\" size=\"regular\" defaultChecked />\n\t\t\t\t\t<Label htmlFor=\"terms-2\">Checked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox id=\"indeterminate\" size=\"regular\" checked=\"indeterminate\" />\n\t\t\t\t\t<Label htmlFor=\"indeterminate\">Indeterminate</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox id=\"disabled\" size=\"regular\" disabled />\n\t\t\t\t\t<Label htmlFor=\"disabled\">Disabled unchecked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox\n\t\t\t\t\t\tid=\"disabled-checked\"\n\t\t\t\t\t\tsize=\"regular\"\n\t\t\t\t\t\tdisabled\n\t\t\t\t\t\tdefaultChecked\n\t\t\t\t\t/>\n\t\t\t\t\t<Label htmlFor=\"disabled-checked\">Disabled checked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox\n\t\t\t\t\t\tid=\"disabled-indeterminate\"\n\t\t\t\t\t\tsize=\"regular\"\n\t\t\t\t\t\tdisabled\n\t\t\t\t\t\tchecked=\"indeterminate\"\n\t\t\t\t\t/>\n\t\t\t\t\t<Label htmlFor=\"disabled-indeterminate\">Disabled indeterminate</Label>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t{/* Small size */}\n\t\t\t<div className=\"flex flex-col gap-6\">\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox id=\"terms-small\" size=\"small\" />\n\t\t\t\t\t<Label htmlFor=\"terms-small\">Unchecked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox id=\"terms-2-small\" size=\"small\" defaultChecked />\n\t\t\t\t\t<Label htmlFor=\"terms-2-small\">Checked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox\n\t\t\t\t\t\tid=\"indeterminate-small\"\n\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\tchecked=\"indeterminate\"\n\t\t\t\t\t/>\n\t\t\t\t\t<Label htmlFor=\"indeterminate-small\">Indeterminate</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox id=\"disabled-small\" size=\"small\" disabled />\n\t\t\t\t\t<Label htmlFor=\"disabled-small\">Disabled unchecked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox\n\t\t\t\t\t\tid=\"disabled-checked-small\"\n\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\tdisabled\n\t\t\t\t\t\tdefaultChecked\n\t\t\t\t\t/>\n\t\t\t\t\t<Label htmlFor=\"disabled-checked-small\">Disabled checked</Label>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"flex items-center gap-3\">\n\t\t\t\t\t<Checkbox\n\t\t\t\t\t\tid=\"disabled-indeterminate-small\"\n\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\tdisabled\n\t\t\t\t\t\tchecked=\"indeterminate\"\n\t\t\t\t\t/>\n\t\t\t\t\t<Label htmlFor=\"disabled-indeterminate-small\">\n\t\t\t\t\t\tDisabled indeterminate\n\t\t\t\t\t</Label>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t),\n} satisfies Story;\n"],"names":["Checkbox","Label","meta","title","Demo","render","div","className","id","size","htmlFor","defaultChecked","checked","disabled"],"mappings":";AACA,SAASA,QAAQ,QAAQ,gBAAiC;AAC1D,SAASC,KAAK,QAAQ,aAA8B;AAEpD,MAAMC,OAAO;IACZC,OAAO;AACR;AACA,eAAeD,KAAK;AAIpB,OAAO,MAAME,OAAO;IACnBC,QAAQ,kBACP,MAACC;YAAIC,WAAU;;8BAEd,MAACD;oBAAIC,WAAU;;sCACd,MAACD;4BAAIC,WAAU;;8CACd,KAACP;oCAASQ,IAAG;oCAAQC,MAAK;;8CAC1B,KAACR;oCAAMS,SAAQ;8CAAQ;;;;sCAExB,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCAASQ,IAAG;oCAAUC,MAAK;oCAAUE,cAAc;;8CACpD,KAACV;oCAAMS,SAAQ;8CAAU;;;;sCAE1B,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCAASQ,IAAG;oCAAgBC,MAAK;oCAAUG,SAAQ;;8CACpD,KAACX;oCAAMS,SAAQ;8CAAgB;;;;sCAEhC,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCAASQ,IAAG;oCAAWC,MAAK;oCAAUI,QAAQ;;8CAC/C,KAACZ;oCAAMS,SAAQ;8CAAW;;;;sCAE3B,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCACAQ,IAAG;oCACHC,MAAK;oCACLI,QAAQ;oCACRF,cAAc;;8CAEf,KAACV;oCAAMS,SAAQ;8CAAmB;;;;sCAEnC,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCACAQ,IAAG;oCACHC,MAAK;oCACLI,QAAQ;oCACRD,SAAQ;;8CAET,KAACX;oCAAMS,SAAQ;8CAAyB;;;;;;8BAI1C,MAACJ;oBAAIC,WAAU;;sCACd,MAACD;4BAAIC,WAAU;;8CACd,KAACP;oCAASQ,IAAG;oCAAcC,MAAK;;8CAChC,KAACR;oCAAMS,SAAQ;8CAAc;;;;sCAE9B,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCAASQ,IAAG;oCAAgBC,MAAK;oCAAQE,cAAc;;8CACxD,KAACV;oCAAMS,SAAQ;8CAAgB;;;;sCAEhC,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCACAQ,IAAG;oCACHC,MAAK;oCACLG,SAAQ;;8CAET,KAACX;oCAAMS,SAAQ;8CAAsB;;;;sCAEtC,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCAASQ,IAAG;oCAAiBC,MAAK;oCAAQI,QAAQ;;8CACnD,KAACZ;oCAAMS,SAAQ;8CAAiB;;;;sCAEjC,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCACAQ,IAAG;oCACHC,MAAK;oCACLI,QAAQ;oCACRF,cAAc;;8CAEf,KAACV;oCAAMS,SAAQ;8CAAyB;;;;sCAEzC,MAACJ;4BAAIC,WAAU;;8CACd,KAACP;oCACAQ,IAAG;oCACHC,MAAK;oCACLI,QAAQ;oCACRD,SAAQ;;8CAET,KAACX;oCAAMS,SAAQ;8CAA+B;;;;;;;;AAOnD,EAAkB"}
@@ -0,0 +1,29 @@
1
+ export interface ComboboxOption {
2
+ value: string;
3
+ label: string;
4
+ }
5
+ interface ComboboxProps {
6
+ options: ComboboxOption[];
7
+ value?: string;
8
+ onValueChange?: (value: string) => void;
9
+ placeholder?: string;
10
+ searchPlaceholder?: string;
11
+ emptyText?: string;
12
+ disabled?: boolean;
13
+ className?: string;
14
+ }
15
+ export declare function Combobox({ options, value, onValueChange, placeholder, searchPlaceholder, emptyText, disabled, className, }: ComboboxProps): import("react/jsx-runtime").JSX.Element;
16
+ interface MultiComboboxProps {
17
+ options: ComboboxOption[];
18
+ value?: string[];
19
+ onValueChange?: (value: string[]) => void;
20
+ placeholder?: string;
21
+ searchPlaceholder?: string;
22
+ emptyText?: string;
23
+ disabled?: boolean;
24
+ className?: string;
25
+ maxDisplay?: number;
26
+ }
27
+ export declare function MultiCombobox({ options, value, onValueChange, placeholder, searchPlaceholder, emptyText, disabled, className, maxDisplay, }: MultiComboboxProps): import("react/jsx-runtime").JSX.Element;
28
+ export {};
29
+ //# sourceMappingURL=combobox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../../../../../src/shadcn/components/ui/combobox.tsx"],"names":[],"mappings":"AAwEA,MAAM,WAAW,cAAc;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd;AAED,UAAU,aAAa;IACtB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD,wBAAgB,QAAQ,CAAC,EACxB,OAAO,EACP,KAAK,EACL,aAAa,EACb,WAAgC,EAChC,iBAA+B,EAC/B,SAA+B,EAC/B,QAAgB,EAChB,SAAS,GACT,EAAE,aAAa,2CAwEf;AAED,UAAU,kBAAkB;IAC3B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,aAAa,CAAC,EAC7B,OAAO,EACP,KAAU,EACV,aAAa,EACb,WAAiC,EACjC,iBAA+B,EAC/B,SAA+B,EAC/B,QAAgB,EAChB,SAAS,EACT,UAAc,GACd,EAAE,kBAAkB,2CA8HpB"}