@devalok/shilp-sutra 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/dist/composed/avatar-group.d.ts +17 -0
  2. package/dist/composed/avatar-group.d.ts.map +1 -0
  3. package/dist/composed/avatar-group.js +103 -0
  4. package/dist/composed/command-palette.d.ts +29 -0
  5. package/dist/composed/command-palette.d.ts.map +1 -0
  6. package/dist/composed/command-palette.js +215 -0
  7. package/dist/composed/content-card.d.ts +15 -0
  8. package/dist/composed/content-card.d.ts.map +1 -0
  9. package/dist/composed/content-card.js +108 -0
  10. package/dist/composed/date-picker/calendar-grid.d.ts +21 -0
  11. package/dist/composed/date-picker/calendar-grid.d.ts.map +1 -0
  12. package/dist/composed/date-picker/calendar-grid.js +173 -0
  13. package/dist/composed/date-picker/date-picker.d.ts +14 -0
  14. package/dist/composed/date-picker/date-picker.d.ts.map +1 -0
  15. package/dist/composed/date-picker/date-picker.js +123 -0
  16. package/dist/composed/date-picker/date-range-picker.d.ts +23 -0
  17. package/dist/composed/date-picker/date-range-picker.d.ts.map +1 -0
  18. package/dist/composed/date-picker/date-range-picker.js +166 -0
  19. package/dist/composed/date-picker/date-time-picker.d.ts +24 -0
  20. package/dist/composed/date-picker/date-time-picker.d.ts.map +1 -0
  21. package/dist/composed/date-picker/date-time-picker.js +192 -0
  22. package/dist/composed/date-picker/index.d.ts +18 -0
  23. package/dist/composed/date-picker/index.d.ts.map +1 -0
  24. package/dist/composed/date-picker/month-picker.d.ts +10 -0
  25. package/dist/composed/date-picker/month-picker.d.ts.map +1 -0
  26. package/dist/composed/date-picker/month-picker.js +52 -0
  27. package/dist/composed/date-picker/presets.d.ts +9 -0
  28. package/dist/composed/date-picker/presets.d.ts.map +1 -0
  29. package/dist/composed/date-picker/presets.js +83 -0
  30. package/dist/composed/date-picker/time-picker.d.ts +24 -0
  31. package/dist/composed/date-picker/time-picker.d.ts.map +1 -0
  32. package/dist/composed/date-picker/time-picker.js +180 -0
  33. package/dist/composed/date-picker/use-calendar.d.ts +9 -0
  34. package/dist/composed/date-picker/use-calendar.d.ts.map +1 -0
  35. package/dist/composed/date-picker/use-calendar.js +16 -0
  36. package/dist/composed/date-picker/year-picker.d.ts +10 -0
  37. package/dist/composed/date-picker/year-picker.d.ts.map +1 -0
  38. package/dist/composed/date-picker/year-picker.js +44 -0
  39. package/dist/composed/empty-state.d.ts +12 -0
  40. package/dist/composed/empty-state.d.ts.map +1 -0
  41. package/dist/composed/empty-state.js +74 -0
  42. package/dist/composed/error-boundary.d.ts +8 -0
  43. package/dist/composed/error-boundary.d.ts.map +1 -0
  44. package/dist/composed/error-boundary.js +114 -0
  45. package/dist/composed/global-loading.d.ts +7 -0
  46. package/dist/composed/global-loading.d.ts.map +1 -0
  47. package/dist/composed/global-loading.js +43 -0
  48. package/dist/composed/index.d.ts +28 -0
  49. package/dist/composed/index.d.ts.map +1 -0
  50. package/dist/composed/index.js +54 -0
  51. package/dist/composed/lib/string-utils.d.ts +6 -0
  52. package/dist/composed/lib/string-utils.d.ts.map +1 -0
  53. package/dist/composed/lib/string-utils.js +7 -0
  54. package/dist/composed/loading-skeleton.d.ts +22 -0
  55. package/dist/composed/loading-skeleton.d.ts.map +1 -0
  56. package/dist/composed/loading-skeleton.js +164 -0
  57. package/dist/composed/member-picker.d.ts +17 -0
  58. package/dist/composed/member-picker.d.ts.map +1 -0
  59. package/dist/composed/member-picker.js +81 -0
  60. package/dist/composed/page-header.d.ts +15 -0
  61. package/dist/composed/page-header.d.ts.map +1 -0
  62. package/dist/composed/page-header.js +65 -0
  63. package/dist/composed/page-skeletons.d.ts +6 -0
  64. package/dist/composed/page-skeletons.d.ts.map +1 -0
  65. package/dist/composed/page-skeletons.js +128 -0
  66. package/dist/composed/priority-indicator.d.ts +12 -0
  67. package/dist/composed/priority-indicator.d.ts.map +1 -0
  68. package/dist/composed/priority-indicator.js +86 -0
  69. package/dist/composed/rich-text-editor.d.ts +16 -0
  70. package/dist/composed/rich-text-editor.d.ts.map +1 -0
  71. package/dist/composed/rich-text-editor.js +222 -0
  72. package/dist/composed/status-badge.d.ts +13 -0
  73. package/dist/composed/status-badge.d.ts.map +1 -0
  74. package/dist/composed/status-badge.js +69 -0
  75. package/dist/hooks/index.d.ts +4 -0
  76. package/dist/hooks/index.d.ts.map +1 -0
  77. package/dist/hooks/use-color-mode.d.ts +7 -0
  78. package/dist/hooks/use-color-mode.d.ts.map +1 -0
  79. package/dist/hooks/use-color-mode.js +23 -0
  80. package/dist/hooks/use-mobile.d.ts +2 -0
  81. package/dist/hooks/use-mobile.d.ts.map +1 -0
  82. package/dist/hooks/use-mobile.js +14 -0
  83. package/dist/hooks/use-toast.d.ts +46 -0
  84. package/dist/hooks/use-toast.d.ts.map +1 -0
  85. package/dist/hooks/use-toast.js +97 -0
  86. package/dist/primitives/_internal/number.d.ts +7 -0
  87. package/dist/primitives/_internal/number.d.ts.map +1 -0
  88. package/dist/primitives/_internal/number.js +6 -0
  89. package/dist/primitives/_internal/primitive.d.ts +17 -0
  90. package/dist/primitives/_internal/primitive.d.ts.map +1 -0
  91. package/dist/primitives/_internal/primitive.js +9 -0
  92. package/dist/primitives/_internal/react-arrow.d.ts +14 -0
  93. package/dist/primitives/_internal/react-arrow.d.ts.map +1 -0
  94. package/dist/primitives/_internal/react-arrow.js +24 -0
  95. package/dist/primitives/_internal/react-collection.d.ts +22 -0
  96. package/dist/primitives/_internal/react-collection.d.ts.map +1 -0
  97. package/dist/primitives/_internal/react-collection.js +48 -0
  98. package/dist/primitives/_internal/react-compose-refs.d.ts +10 -0
  99. package/dist/primitives/_internal/react-compose-refs.d.ts.map +1 -0
  100. package/dist/primitives/_internal/react-compose-refs.js +29 -0
  101. package/dist/primitives/_internal/react-context.d.ts +25 -0
  102. package/dist/primitives/_internal/react-context.d.ts.map +1 -0
  103. package/dist/primitives/_internal/react-context.js +74 -0
  104. package/dist/primitives/_internal/react-direction.d.ts +16 -0
  105. package/dist/primitives/_internal/react-direction.d.ts.map +1 -0
  106. package/dist/primitives/_internal/react-direction.js +10 -0
  107. package/dist/primitives/_internal/react-dismissable-layer.d.ts +30 -0
  108. package/dist/primitives/_internal/react-dismissable-layer.d.ts.map +1 -0
  109. package/dist/primitives/_internal/react-dismissable-layer.js +131 -0
  110. package/dist/primitives/_internal/react-focus-guards.d.ts +12 -0
  111. package/dist/primitives/_internal/react-focus-guards.d.ts.map +1 -0
  112. package/dist/primitives/_internal/react-focus-guards.js +17 -0
  113. package/dist/primitives/_internal/react-focus-scope.d.ts +18 -0
  114. package/dist/primitives/_internal/react-focus-scope.d.ts.map +1 -0
  115. package/dist/primitives/_internal/react-focus-scope.js +137 -0
  116. package/dist/primitives/_internal/react-id.d.ts +7 -0
  117. package/dist/primitives/_internal/react-id.d.ts.map +1 -0
  118. package/dist/primitives/_internal/react-id.js +14 -0
  119. package/dist/primitives/_internal/react-popper.d.ts +50 -0
  120. package/dist/primitives/_internal/react-popper.d.ts.map +1 -0
  121. package/dist/primitives/_internal/react-popper.js +199 -0
  122. package/dist/primitives/_internal/react-portal.d.ts +15 -0
  123. package/dist/primitives/_internal/react-portal.d.ts.map +1 -0
  124. package/dist/primitives/_internal/react-portal.js +16 -0
  125. package/dist/primitives/_internal/react-presence.d.ts +16 -0
  126. package/dist/primitives/_internal/react-presence.d.ts.map +1 -0
  127. package/dist/primitives/_internal/react-presence.js +71 -0
  128. package/dist/primitives/_internal/react-primitive.d.ts +20 -0
  129. package/dist/primitives/_internal/react-primitive.d.ts.map +1 -0
  130. package/dist/primitives/_internal/react-primitive.js +36 -0
  131. package/dist/primitives/_internal/react-use-callback-ref.d.ts +7 -0
  132. package/dist/primitives/_internal/react-use-callback-ref.d.ts.map +1 -0
  133. package/dist/primitives/_internal/react-use-callback-ref.js +13 -0
  134. package/dist/primitives/_internal/react-use-controllable-state.d.ts +16 -0
  135. package/dist/primitives/_internal/react-use-controllable-state.d.ts.map +1 -0
  136. package/dist/primitives/_internal/react-use-controllable-state.js +44 -0
  137. package/dist/primitives/_internal/react-use-effect-event.d.ts +8 -0
  138. package/dist/primitives/_internal/react-use-effect-event.d.ts.map +1 -0
  139. package/dist/primitives/_internal/react-use-escape-keydown.d.ts +7 -0
  140. package/dist/primitives/_internal/react-use-escape-keydown.d.ts.map +1 -0
  141. package/dist/primitives/_internal/react-use-escape-keydown.js +14 -0
  142. package/dist/primitives/_internal/react-use-is-hydrated.d.ts +7 -0
  143. package/dist/primitives/_internal/react-use-is-hydrated.d.ts.map +1 -0
  144. package/dist/primitives/_internal/react-use-is-hydrated.js +15 -0
  145. package/dist/primitives/_internal/react-use-layout-effect.d.ts +8 -0
  146. package/dist/primitives/_internal/react-use-layout-effect.d.ts.map +1 -0
  147. package/dist/primitives/_internal/react-use-layout-effect.js +6 -0
  148. package/dist/primitives/_internal/react-use-previous.d.ts +7 -0
  149. package/dist/primitives/_internal/react-use-previous.d.ts.map +1 -0
  150. package/dist/primitives/_internal/react-use-previous.js +8 -0
  151. package/dist/primitives/_internal/react-use-rect.d.ts +4 -0
  152. package/dist/primitives/_internal/react-use-rect.d.ts.map +1 -0
  153. package/dist/primitives/_internal/react-use-size.d.ts +10 -0
  154. package/dist/primitives/_internal/react-use-size.d.ts.map +1 -0
  155. package/dist/primitives/_internal/react-use-size.js +27 -0
  156. package/dist/primitives/_internal/rect.d.ts +12 -0
  157. package/dist/primitives/_internal/rect.d.ts.map +1 -0
  158. package/dist/primitives/react-accordion.js +239 -0
  159. package/dist/primitives/react-alert-dialog.js +127 -0
  160. package/dist/primitives/react-aspect-ratio.js +43 -0
  161. package/dist/primitives/react-avatar.js +75 -0
  162. package/dist/primitives/react-checkbox.js +251 -0
  163. package/dist/primitives/react-collapsible.js +120 -0
  164. package/dist/primitives/react-context-menu.js +240 -0
  165. package/dist/primitives/react-dialog.js +262 -0
  166. package/dist/primitives/react-dropdown-menu.js +227 -0
  167. package/dist/primitives/react-hover-card.js +187 -0
  168. package/dist/primitives/react-label.js +20 -0
  169. package/dist/primitives/react-menu.js +652 -0
  170. package/dist/primitives/react-menubar.js +355 -0
  171. package/dist/primitives/react-navigation-menu.js +607 -0
  172. package/dist/primitives/react-popover.js +243 -0
  173. package/dist/primitives/react-progress.js +84 -0
  174. package/dist/primitives/react-radio-group.js +238 -0
  175. package/dist/primitives/react-roving-focus.js +183 -0
  176. package/dist/primitives/react-select.js +862 -0
  177. package/dist/primitives/react-separator.js +24 -0
  178. package/dist/primitives/react-slider.js +437 -0
  179. package/dist/primitives/react-slot.d.ts +27 -0
  180. package/dist/primitives/react-slot.d.ts.map +1 -0
  181. package/dist/primitives/react-slot.js +70 -0
  182. package/dist/primitives/react-switch.js +132 -0
  183. package/dist/primitives/react-tabs.js +163 -0
  184. package/dist/primitives/react-toast.js +446 -0
  185. package/dist/primitives/react-toggle-group.js +137 -0
  186. package/dist/primitives/react-toggle.js +33 -0
  187. package/dist/primitives/react-tooltip.js +338 -0
  188. package/dist/primitives/react-visually-hidden.js +32 -0
  189. package/dist/shell/app-command-palette.d.ts +35 -0
  190. package/dist/shell/app-command-palette.d.ts.map +1 -0
  191. package/dist/shell/app-command-palette.js +196 -0
  192. package/dist/shell/bottom-navbar.d.ts +35 -0
  193. package/dist/shell/bottom-navbar.d.ts.map +1 -0
  194. package/dist/shell/bottom-navbar.js +160 -0
  195. package/dist/shell/index.d.ts +7 -0
  196. package/dist/shell/index.d.ts.map +1 -0
  197. package/dist/shell/index.js +14 -0
  198. package/dist/shell/notification-center.d.ts +50 -0
  199. package/dist/shell/notification-center.d.ts.map +1 -0
  200. package/dist/shell/notification-center.js +221 -0
  201. package/dist/shell/notification-preferences.d.ts +41 -0
  202. package/dist/shell/notification-preferences.d.ts.map +1 -0
  203. package/dist/shell/notification-preferences.js +183 -0
  204. package/dist/shell/sidebar.d.ts +51 -0
  205. package/dist/shell/sidebar.d.ts.map +1 -0
  206. package/dist/shell/sidebar.js +101 -0
  207. package/dist/shell/top-bar.d.ts +33 -0
  208. package/dist/shell/top-bar.d.ts.map +1 -0
  209. package/dist/shell/top-bar.js +140 -0
  210. package/dist/tailwind/index.d.ts +2 -0
  211. package/dist/tailwind/index.d.ts.map +1 -0
  212. package/dist/tailwind/index.js +4 -0
  213. package/dist/tailwind/preset.d.ts +4 -0
  214. package/dist/tailwind/preset.d.ts.map +1 -0
  215. package/dist/tailwind/preset.js +310 -0
  216. package/dist/tokens/index.css +3 -0
  217. package/dist/tokens/primitives.css +189 -0
  218. package/dist/tokens/semantic.css +426 -0
  219. package/dist/tokens/typography-semantic.css +100 -0
  220. package/dist/tokens/typography.css +393 -0
  221. package/dist/ui/accordion.d.ts +53 -0
  222. package/dist/ui/accordion.d.ts.map +1 -0
  223. package/dist/ui/accordion.js +46 -0
  224. package/dist/ui/alert-dialog.d.ts +21 -0
  225. package/dist/ui/alert-dialog.d.ts.map +1 -0
  226. package/dist/ui/alert-dialog.js +117 -0
  227. package/dist/ui/alert.d.ts +47 -0
  228. package/dist/ui/alert.d.ts.map +1 -0
  229. package/dist/ui/alert.js +52 -0
  230. package/dist/ui/aspect-ratio.d.ts +4 -0
  231. package/dist/ui/aspect-ratio.d.ts.map +1 -0
  232. package/dist/ui/aspect-ratio.js +6 -0
  233. package/dist/ui/autocomplete.d.ts +49 -0
  234. package/dist/ui/autocomplete.d.ts.map +1 -0
  235. package/dist/ui/autocomplete.js +124 -0
  236. package/dist/ui/avatar.d.ts +51 -0
  237. package/dist/ui/avatar.d.ts.map +1 -0
  238. package/dist/ui/avatar.js +91 -0
  239. package/dist/ui/badge.d.ts +43 -0
  240. package/dist/ui/badge.d.ts.map +1 -0
  241. package/dist/ui/badge.js +64 -0
  242. package/dist/ui/banner.d.ts +43 -0
  243. package/dist/ui/banner.d.ts.map +1 -0
  244. package/dist/ui/banner.js +50 -0
  245. package/dist/ui/breadcrumb.d.ts +20 -0
  246. package/dist/ui/breadcrumb.d.ts.map +1 -0
  247. package/dist/ui/breadcrumb.js +83 -0
  248. package/dist/ui/button-group.d.ts +51 -0
  249. package/dist/ui/button-group.d.ts.map +1 -0
  250. package/dist/ui/button-group.js +41 -0
  251. package/dist/ui/button.d.ts +63 -0
  252. package/dist/ui/button.d.ts.map +1 -0
  253. package/dist/ui/button.js +105 -0
  254. package/dist/ui/card.d.ts +64 -0
  255. package/dist/ui/card.d.ts.map +1 -0
  256. package/dist/ui/card.js +79 -0
  257. package/dist/ui/charts/_internal/animation.d.ts +5 -0
  258. package/dist/ui/charts/_internal/animation.d.ts.map +1 -0
  259. package/dist/ui/charts/_internal/animation.js +17 -0
  260. package/dist/ui/charts/_internal/axes.d.ts +17 -0
  261. package/dist/ui/charts/_internal/axes.d.ts.map +1 -0
  262. package/dist/ui/charts/_internal/axes.js +41 -0
  263. package/dist/ui/charts/_internal/colors.d.ts +8 -0
  264. package/dist/ui/charts/_internal/colors.d.ts.map +1 -0
  265. package/dist/ui/charts/_internal/colors.js +20 -0
  266. package/dist/ui/charts/_internal/grid-lines.d.ts +16 -0
  267. package/dist/ui/charts/_internal/grid-lines.d.ts.map +1 -0
  268. package/dist/ui/charts/_internal/grid-lines.js +42 -0
  269. package/dist/ui/charts/_internal/legend.d.ts +15 -0
  270. package/dist/ui/charts/_internal/legend.d.ts.map +1 -0
  271. package/dist/ui/charts/_internal/legend.js +28 -0
  272. package/dist/ui/charts/_internal/scales.d.ts +5 -0
  273. package/dist/ui/charts/_internal/scales.d.ts.map +1 -0
  274. package/dist/ui/charts/_internal/tooltip.d.ts +23 -0
  275. package/dist/ui/charts/_internal/tooltip.d.ts.map +1 -0
  276. package/dist/ui/charts/_internal/tooltip.js +38 -0
  277. package/dist/ui/charts/_internal/types.d.ts +17 -0
  278. package/dist/ui/charts/_internal/types.d.ts.map +1 -0
  279. package/dist/ui/charts/_internal/types.js +9 -0
  280. package/dist/ui/charts/area-chart.d.ts +39 -0
  281. package/dist/ui/charts/area-chart.d.ts.map +1 -0
  282. package/dist/ui/charts/area-chart.js +244 -0
  283. package/dist/ui/charts/bar-chart.d.ts +41 -0
  284. package/dist/ui/charts/bar-chart.d.ts.map +1 -0
  285. package/dist/ui/charts/bar-chart.js +152 -0
  286. package/dist/ui/charts/chart-container.d.ts +20 -0
  287. package/dist/ui/charts/chart-container.d.ts.map +1 -0
  288. package/dist/ui/charts/chart-container.js +26 -0
  289. package/dist/ui/charts/gauge-chart.d.ts +32 -0
  290. package/dist/ui/charts/gauge-chart.d.ts.map +1 -0
  291. package/dist/ui/charts/gauge-chart.js +71 -0
  292. package/dist/ui/charts/index.d.ts +10 -0
  293. package/dist/ui/charts/index.d.ts.map +1 -0
  294. package/dist/ui/charts/line-chart.d.ts +37 -0
  295. package/dist/ui/charts/line-chart.d.ts.map +1 -0
  296. package/dist/ui/charts/line-chart.js +162 -0
  297. package/dist/ui/charts/pie-chart.d.ts +37 -0
  298. package/dist/ui/charts/pie-chart.d.ts.map +1 -0
  299. package/dist/ui/charts/pie-chart.js +131 -0
  300. package/dist/ui/charts/radar-chart.d.ts +34 -0
  301. package/dist/ui/charts/radar-chart.d.ts.map +1 -0
  302. package/dist/ui/charts/radar-chart.js +222 -0
  303. package/dist/ui/charts/sparkline.d.ts +22 -0
  304. package/dist/ui/charts/sparkline.d.ts.map +1 -0
  305. package/dist/ui/charts/sparkline.js +123 -0
  306. package/dist/ui/checkbox.d.ts +36 -0
  307. package/dist/ui/checkbox.d.ts.map +1 -0
  308. package/dist/ui/checkbox.js +33 -0
  309. package/dist/ui/chip.d.ts +66 -0
  310. package/dist/ui/chip.d.ts.map +1 -0
  311. package/dist/ui/chip.js +105 -0
  312. package/dist/ui/code.d.ts +30 -0
  313. package/dist/ui/code.d.ts.map +1 -0
  314. package/dist/ui/code.js +32 -0
  315. package/dist/ui/collapsible.d.ts +7 -0
  316. package/dist/ui/collapsible.d.ts.map +1 -0
  317. package/dist/ui/collapsible.js +21 -0
  318. package/dist/ui/combobox.d.ts +76 -0
  319. package/dist/ui/combobox.d.ts.map +1 -0
  320. package/dist/ui/combobox.js +286 -0
  321. package/dist/ui/container.d.ts +10 -0
  322. package/dist/ui/container.d.ts.map +1 -0
  323. package/dist/ui/container.js +24 -0
  324. package/dist/ui/context-menu.d.ts +28 -0
  325. package/dist/ui/context-menu.d.ts.map +1 -0
  326. package/dist/ui/context-menu.js +145 -0
  327. package/dist/ui/data-table-toolbar.d.ts +16 -0
  328. package/dist/ui/data-table-toolbar.d.ts.map +1 -0
  329. package/dist/ui/data-table-toolbar.js +136 -0
  330. package/dist/ui/data-table.d.ts +111 -0
  331. package/dist/ui/data-table.d.ts.map +1 -0
  332. package/dist/ui/data-table.js +491 -0
  333. package/dist/ui/dialog.d.ts +74 -0
  334. package/dist/ui/dialog.d.ts.map +1 -0
  335. package/dist/ui/dialog.js +110 -0
  336. package/dist/ui/dropdown-menu.d.ts +88 -0
  337. package/dist/ui/dropdown-menu.d.ts.map +1 -0
  338. package/dist/ui/dropdown-menu.js +144 -0
  339. package/dist/ui/file-upload.d.ts +67 -0
  340. package/dist/ui/file-upload.d.ts.map +1 -0
  341. package/dist/ui/file-upload.js +226 -0
  342. package/dist/ui/form.d.ts +56 -0
  343. package/dist/ui/form.d.ts.map +1 -0
  344. package/dist/ui/form.js +46 -0
  345. package/dist/ui/hover-card.d.ts +7 -0
  346. package/dist/ui/hover-card.d.ts.map +1 -0
  347. package/dist/ui/hover-card.js +23 -0
  348. package/dist/ui/icon-button.d.ts +46 -0
  349. package/dist/ui/icon-button.d.ts.map +1 -0
  350. package/dist/ui/icon-button.js +26 -0
  351. package/dist/ui/index.d.ts +68 -0
  352. package/dist/ui/index.d.ts.map +1 -0
  353. package/dist/ui/index.js +344 -0
  354. package/dist/ui/input-otp.d.ts +35 -0
  355. package/dist/ui/input-otp.d.ts.map +1 -0
  356. package/dist/ui/input-otp.js +48 -0
  357. package/dist/ui/input.d.ts +44 -0
  358. package/dist/ui/input.d.ts.map +1 -0
  359. package/dist/ui/input.js +58 -0
  360. package/dist/ui/label.d.ts +8 -0
  361. package/dist/ui/label.d.ts.map +1 -0
  362. package/dist/ui/label.js +23 -0
  363. package/dist/ui/lib/motion.d.ts +10 -0
  364. package/dist/ui/lib/motion.d.ts.map +1 -0
  365. package/dist/ui/lib/motion.js +32 -0
  366. package/dist/ui/lib/slot.d.ts +8 -0
  367. package/dist/ui/lib/slot.d.ts.map +1 -0
  368. package/dist/ui/lib/use-reduced-motion.d.ts +3 -0
  369. package/dist/ui/lib/use-reduced-motion.d.ts.map +1 -0
  370. package/dist/ui/lib/use-reduced-motion.js +14 -0
  371. package/dist/ui/lib/use-ripple.d.ts +13 -0
  372. package/dist/ui/lib/use-ripple.d.ts.map +1 -0
  373. package/dist/ui/lib/use-ripple.js +13 -0
  374. package/dist/ui/lib/utils.d.ts +3 -0
  375. package/dist/ui/lib/utils.d.ts.map +1 -0
  376. package/dist/ui/lib/utils.js +15 -0
  377. package/dist/ui/link.d.ts +8 -0
  378. package/dist/ui/link.d.ts.map +1 -0
  379. package/dist/ui/link.js +24 -0
  380. package/dist/ui/menubar.d.ts +29 -0
  381. package/dist/ui/menubar.d.ts.map +1 -0
  382. package/dist/ui/menubar.js +176 -0
  383. package/dist/ui/navigation-menu.d.ts +12 -0
  384. package/dist/ui/navigation-menu.d.ts.map +1 -0
  385. package/dist/ui/navigation-menu.js +103 -0
  386. package/dist/ui/number-input.d.ts +40 -0
  387. package/dist/ui/number-input.d.ts.map +1 -0
  388. package/dist/ui/number-input.js +80 -0
  389. package/dist/ui/pagination.d.ts +74 -0
  390. package/dist/ui/pagination.d.ts.map +1 -0
  391. package/dist/ui/pagination.js +159 -0
  392. package/dist/ui/popover.d.ts +8 -0
  393. package/dist/ui/popover.d.ts.map +1 -0
  394. package/dist/ui/popover.js +24 -0
  395. package/dist/ui/progress.d.ts +49 -0
  396. package/dist/ui/progress.d.ts.map +1 -0
  397. package/dist/ui/progress.js +75 -0
  398. package/dist/ui/radio.d.ts +6 -0
  399. package/dist/ui/radio.d.ts.map +1 -0
  400. package/dist/ui/radio.js +29 -0
  401. package/dist/ui/search-input.d.ts +44 -0
  402. package/dist/ui/search-input.d.ts.map +1 -0
  403. package/dist/ui/search-input.js +63 -0
  404. package/dist/ui/segmented-control.d.ts +122 -0
  405. package/dist/ui/segmented-control.d.ts.map +1 -0
  406. package/dist/ui/segmented-control.js +270 -0
  407. package/dist/ui/select.d.ts +49 -0
  408. package/dist/ui/select.d.ts.map +1 -0
  409. package/dist/ui/select.js +132 -0
  410. package/dist/ui/separator.d.ts +5 -0
  411. package/dist/ui/separator.d.ts.map +1 -0
  412. package/dist/ui/separator.js +24 -0
  413. package/dist/ui/sheet.d.ts +108 -0
  414. package/dist/ui/sheet.d.ts.map +1 -0
  415. package/dist/ui/sheet.js +110 -0
  416. package/dist/ui/sidebar.d.ts +67 -0
  417. package/dist/ui/sidebar.d.ts.map +1 -0
  418. package/dist/ui/sidebar.js +562 -0
  419. package/dist/ui/skeleton.d.ts +40 -0
  420. package/dist/ui/skeleton.d.ts.map +1 -0
  421. package/dist/ui/skeleton.js +36 -0
  422. package/dist/ui/slider.d.ts +5 -0
  423. package/dist/ui/slider.d.ts.map +1 -0
  424. package/dist/ui/slider.js +29 -0
  425. package/dist/ui/spinner.d.ts +38 -0
  426. package/dist/ui/spinner.d.ts.map +1 -0
  427. package/dist/ui/spinner.js +47 -0
  428. package/dist/ui/stack.d.ts +15 -0
  429. package/dist/ui/stack.d.ts.map +1 -0
  430. package/dist/ui/stack.js +41 -0
  431. package/dist/ui/stat-card.d.ts +54 -0
  432. package/dist/ui/stat-card.d.ts.map +1 -0
  433. package/dist/ui/stat-card.js +52 -0
  434. package/dist/ui/stepper.d.ts +57 -0
  435. package/dist/ui/stepper.d.ts.map +1 -0
  436. package/dist/ui/stepper.js +90 -0
  437. package/dist/ui/switch.d.ts +5 -0
  438. package/dist/ui/switch.d.ts.map +1 -0
  439. package/dist/ui/switch.js +27 -0
  440. package/dist/ui/table.d.ts +11 -0
  441. package/dist/ui/table.d.ts.map +1 -0
  442. package/dist/ui/table.js +91 -0
  443. package/dist/ui/tabs.d.ts +81 -0
  444. package/dist/ui/tabs.d.ts.map +1 -0
  445. package/dist/ui/tabs.js +74 -0
  446. package/dist/ui/text.d.ts +47 -0
  447. package/dist/ui/text.d.ts.map +1 -0
  448. package/dist/ui/text.js +59 -0
  449. package/dist/ui/textarea.d.ts +40 -0
  450. package/dist/ui/textarea.d.ts.map +1 -0
  451. package/dist/ui/textarea.js +47 -0
  452. package/dist/ui/toast.d.ts +32 -0
  453. package/dist/ui/toast.d.ts.map +1 -0
  454. package/dist/ui/toast.js +98 -0
  455. package/dist/ui/toaster.d.ts +42 -0
  456. package/dist/ui/toaster.d.ts.map +1 -0
  457. package/dist/ui/toaster.js +23 -0
  458. package/dist/ui/toggle-group.d.ts +13 -0
  459. package/dist/ui/toggle-group.d.ts.map +1 -0
  460. package/dist/ui/toggle-group.js +40 -0
  461. package/dist/ui/toggle.d.ts +13 -0
  462. package/dist/ui/toggle.d.ts.map +1 -0
  463. package/dist/ui/toggle.js +37 -0
  464. package/dist/ui/tooltip.d.ts +8 -0
  465. package/dist/ui/tooltip.d.ts.map +1 -0
  466. package/dist/ui/tooltip.js +23 -0
  467. package/dist/ui/transitions.d.ts +16 -0
  468. package/dist/ui/transitions.d.ts.map +1 -0
  469. package/dist/ui/transitions.js +100 -0
  470. package/dist/ui/tree-view/index.d.ts +4 -0
  471. package/dist/ui/tree-view/index.d.ts.map +1 -0
  472. package/dist/ui/tree-view/tree-item.d.ts +22 -0
  473. package/dist/ui/tree-view/tree-item.d.ts.map +1 -0
  474. package/dist/ui/tree-view/tree-item.js +136 -0
  475. package/dist/ui/tree-view/tree-view.d.ts +29 -0
  476. package/dist/ui/tree-view/tree-view.d.ts.map +1 -0
  477. package/dist/ui/tree-view/tree-view.js +139 -0
  478. package/dist/ui/tree-view/use-tree.d.ts +26 -0
  479. package/dist/ui/tree-view/use-tree.d.ts.map +1 -0
  480. package/dist/ui/tree-view/use-tree.js +37 -0
  481. package/dist/ui/visually-hidden.d.ts +6 -0
  482. package/dist/ui/visually-hidden.d.ts.map +1 -0
  483. package/dist/ui/visually-hidden.js +10 -0
  484. package/fonts/GoogleSans-Italic-Variable.ttf +0 -0
  485. package/fonts/GoogleSans-Variable.ttf +0 -0
  486. package/fonts/Ranade-Variable.ttf +0 -0
  487. package/fonts/Ranade-VariableItalic.ttf +0 -0
  488. package/package.json +83 -0
@@ -0,0 +1,83 @@
1
+ import { jsx as s, jsxs as i } from "react/jsx-runtime";
2
+ import { Root as c } from "../primitives/react-slot.js";
3
+ import { IconDots as n, IconChevronRight as d } from "@tabler/icons-react";
4
+ import * as m from "react";
5
+ import { cn as o } from "./lib/utils.js";
6
+ const l = m.forwardRef(({ ...e }, r) => /* @__PURE__ */ s("nav", { ref: r, "aria-label": "breadcrumb", ...e }));
7
+ l.displayName = "Breadcrumb";
8
+ const p = m.forwardRef(
9
+ ({ className: e, ...r }, a) => /* @__PURE__ */ s(
10
+ "ol",
11
+ {
12
+ ref: a,
13
+ className: o(
14
+ "flex flex-wrap items-center gap-ds-02b break-words text-ds-md text-text-secondary sm:gap-ds-03",
15
+ e
16
+ ),
17
+ ...r
18
+ }
19
+ )
20
+ );
21
+ p.displayName = "BreadcrumbList";
22
+ const u = m.forwardRef(
23
+ ({ className: e, ...r }, a) => /* @__PURE__ */ s("li", { ref: a, className: o("inline-flex items-center gap-ds-02b", e), ...r })
24
+ );
25
+ u.displayName = "BreadcrumbItem";
26
+ const f = m.forwardRef(({ className: e, asChild: r = !1, ...a }, t) => /* @__PURE__ */ s(
27
+ r ? c : "a",
28
+ {
29
+ ref: t,
30
+ className: o(
31
+ "transition-colors hover:text-text-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-focus rounded-ds-sm",
32
+ e
33
+ ),
34
+ ...a
35
+ }
36
+ ));
37
+ f.displayName = "BreadcrumbLink";
38
+ const b = m.forwardRef(
39
+ ({ className: e, ...r }, a) => /* @__PURE__ */ s(
40
+ "span",
41
+ {
42
+ ref: a,
43
+ "aria-current": "page",
44
+ className: o("font-normal text-text-primary", e),
45
+ ...r
46
+ }
47
+ )
48
+ );
49
+ b.displayName = "BreadcrumbPage";
50
+ const N = ({ children: e, className: r, ...a }) => /* @__PURE__ */ s(
51
+ "li",
52
+ {
53
+ role: "presentation",
54
+ "aria-hidden": "true",
55
+ className: o("[&>svg]:h-ico-sm [&>svg]:w-ico-sm", r),
56
+ ...a,
57
+ children: e ?? /* @__PURE__ */ s(d, {})
58
+ }
59
+ );
60
+ N.displayName = "BreadcrumbSeparator";
61
+ const x = ({ className: e, ...r }) => /* @__PURE__ */ i(
62
+ "span",
63
+ {
64
+ role: "presentation",
65
+ "aria-hidden": "true",
66
+ className: o("flex h-ds-sm-plus w-ds-sm-plus items-center justify-center", e),
67
+ ...r,
68
+ children: [
69
+ /* @__PURE__ */ s(n, { className: "h-ico-sm w-ico-sm" }),
70
+ /* @__PURE__ */ s("span", { className: "sr-only", children: "More" })
71
+ ]
72
+ }
73
+ );
74
+ x.displayName = "BreadcrumbEllipsis";
75
+ export {
76
+ l as Breadcrumb,
77
+ x as BreadcrumbEllipsis,
78
+ u as BreadcrumbItem,
79
+ f as BreadcrumbLink,
80
+ p as BreadcrumbList,
81
+ b as BreadcrumbPage,
82
+ N as BreadcrumbSeparator
83
+ };
@@ -0,0 +1,51 @@
1
+ import { ButtonProps } from './button';
2
+ import * as React from 'react';
3
+ interface ButtonGroupContextValue {
4
+ variant?: ButtonProps['variant'];
5
+ size?: ButtonProps['size'];
6
+ }
7
+ export declare function useButtonGroup(): ButtonGroupContextValue;
8
+ /**
9
+ * Props for ButtonGroup — a container that visually merges adjacent `<Button>` components into
10
+ * a single connected unit, and propagates a shared `variant` and `size` via context.
11
+ *
12
+ * **Context propagation:** Child `<Button>` components automatically inherit `variant` and `size`
13
+ * from ButtonGroup. Individual children can still override by passing their own `variant` or `size`.
14
+ *
15
+ * **Visual joining:** Adjacent button borders are merged with negative margins and border-radius overrides.
16
+ *
17
+ * @example
18
+ * // Horizontal toolbar action group (secondary variant shared):
19
+ * <ButtonGroup variant="secondary" size="sm">
20
+ * <Button startIcon={<IconBold />}>Bold</Button>
21
+ * <Button startIcon={<IconItalic />}>Italic</Button>
22
+ * <Button startIcon={<IconUnderline />}>Underline</Button>
23
+ * </ButtonGroup>
24
+ *
25
+ * @example
26
+ * // Vertical action group for a sidebar panel:
27
+ * <ButtonGroup orientation="vertical" variant="ghost" size="md">
28
+ * <Button>Profile</Button>
29
+ * <Button>Settings</Button>
30
+ * <Button variant="error-ghost">Danger zone</Button>
31
+ * </ButtonGroup>
32
+ *
33
+ * @example
34
+ * // Split button pattern (primary action + dropdown trigger):
35
+ * <ButtonGroup variant="primary" size="md">
36
+ * <Button onClick={handlePublish}>Publish</Button>
37
+ * <Button size="icon-md" aria-label="More publish options"><IconChevronDown /></Button>
38
+ * </ButtonGroup>
39
+ * // These are just a few ways — feel free to combine props creatively!
40
+ */
41
+ export interface ButtonGroupProps extends React.HTMLAttributes<HTMLDivElement> {
42
+ /** Shared variant applied to all child Buttons (children can override) */
43
+ variant?: ButtonProps['variant'];
44
+ /** Shared size applied to all child Buttons (children can override) */
45
+ size?: ButtonProps['size'];
46
+ /** Layout direction. Default: 'horizontal' */
47
+ orientation?: 'horizontal' | 'vertical';
48
+ }
49
+ declare const ButtonGroup: React.ForwardRefExoticComponent<ButtonGroupProps & React.RefAttributes<HTMLDivElement>>;
50
+ export { ButtonGroup };
51
+ //# sourceMappingURL=button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../src/ui/button-group.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAE3C,UAAU,uBAAuB;IAC/B,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAC3B;AAID,wBAAgB,cAAc,4BAE7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,WAAW,gBAAiB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC5E,0EAA0E;IAC1E,OAAO,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAA;IAChC,uEAAuE;IACvE,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IAC1B,8CAA8C;IAC9C,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,QAAA,MAAM,WAAW,yFAiChB,CAAA;AAGD,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,41 @@
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import * as o from "react";
3
+ import { cn as f } from "./lib/utils.js";
4
+ const e = o.createContext({});
5
+ function x() {
6
+ return o.useContext(e);
7
+ }
8
+ const a = o.forwardRef(
9
+ ({ className: l, variant: t, size: n, orientation: u = "horizontal", children: i, ...d }, c) => {
10
+ const s = o.useMemo(() => ({ variant: t, size: n }), [t, n]);
11
+ return /* @__PURE__ */ r(e.Provider, { value: s, children: /* @__PURE__ */ r(
12
+ "div",
13
+ {
14
+ ref: c,
15
+ role: "group",
16
+ className: f(
17
+ "inline-flex",
18
+ u === "horizontal" ? [
19
+ "flex-row",
20
+ "[&>*:not(:first-child)]:rounded-l-none",
21
+ "[&>*:not(:last-child)]:rounded-r-none",
22
+ "[&>*:not(:first-child)]:-ml-px"
23
+ ] : [
24
+ "flex-col",
25
+ "[&>*:not(:first-child)]:rounded-t-none",
26
+ "[&>*:not(:last-child)]:rounded-b-none",
27
+ "[&>*:not(:first-child)]:-mt-px"
28
+ ],
29
+ l
30
+ ),
31
+ ...d,
32
+ children: i
33
+ }
34
+ ) });
35
+ }
36
+ );
37
+ a.displayName = "ButtonGroup";
38
+ export {
39
+ a as ButtonGroup,
40
+ x as useButtonGroup
41
+ };
@@ -0,0 +1,63 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ import * as React from 'react';
3
+ export declare const buttonVariants: (props?: ({
4
+ variant?: "link" | "primary" | "secondary" | "ghost" | "error" | "error-ghost" | null | undefined;
5
+ size?: "sm" | "md" | "lg" | "icon-sm" | "icon-md" | "icon-lg" | null | undefined;
6
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
+ /**
8
+ * Props for Button — the primary action component with 6 variants, 6 size options, icon slots,
9
+ * and a built-in loading state that disables interaction and shows a spinner.
10
+ *
11
+ * **Variants:** `primary` (pink brand glow, default) | `secondary` (outlined interactive) |
12
+ * `ghost` (transparent, for toolbars) | `error` (destructive fill) | `error-ghost` (outlined error) |
13
+ * `link` (underline, inline text actions)
14
+ *
15
+ * **Sizes:** `sm` | `md` (default) | `lg` for text buttons;
16
+ * `icon-sm` | `icon-md` | `icon-lg` for square icon-only buttons (prefer `IconButton` for icon-only).
17
+ *
18
+ * **Loading:** When `loading={true}` the button is disabled and aria-busy is set.
19
+ * Use `loadingPosition` to control where the spinner appears.
20
+ *
21
+ * @example
22
+ * // Primary save action (default variant):
23
+ * <Button onClick={handleSave}>Save changes</Button>
24
+ *
25
+ * @example
26
+ * // Destructive delete with confirmation icon and loading state:
27
+ * <Button variant="error" startIcon={<IconTrash />} loading={isDeleting}>
28
+ * Delete project
29
+ * </Button>
30
+ *
31
+ * @example
32
+ * // Ghost toolbar action (compact icon-adjacent button):
33
+ * <Button variant="ghost" size="sm" startIcon={<IconEdit />}>
34
+ * Edit
35
+ * </Button>
36
+ *
37
+ * @example
38
+ * // Full-width form submit with centered loading spinner:
39
+ * <Button fullWidth loading={isPending} loadingPosition="center">
40
+ * Sign in
41
+ * </Button>
42
+ *
43
+ * @example
44
+ * // Link variant for inline text actions (renders as a <button>):
45
+ * <Button variant="link" onClick={openTerms}>View terms of service</Button>
46
+ * // These are just a few ways — feel free to combine props creatively!
47
+ */
48
+ export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
49
+ asChild?: boolean;
50
+ /** Icon element rendered before children */
51
+ startIcon?: React.ReactNode;
52
+ /** Icon element rendered after children */
53
+ endIcon?: React.ReactNode;
54
+ /** Show loading spinner and disable button */
55
+ loading?: boolean;
56
+ /** Where to render the spinner: replaces startIcon, endIcon, or centers over children */
57
+ loadingPosition?: 'start' | 'end' | 'center';
58
+ /** Stretch to full width of parent */
59
+ fullWidth?: boolean;
60
+ }
61
+ declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
62
+ export { Button };
63
+ //# sourceMappingURL=button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../src/ui/button.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,eAAO,MAAM,cAAc;;;8EA+B1B,CAAA;AAsBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAM,WAAW,WACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EACnD,YAAY,CAAC,OAAO,cAAc,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC3B,2CAA2C;IAC3C,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,yFAAyF;IACzF,eAAe,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAA;IAC5C,sCAAsC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,QAAA,MAAM,MAAM,uFA4GX,CAAA;AAGD,OAAO,EAAE,MAAM,EAAE,CAAA"}
@@ -0,0 +1,105 @@
1
+ import { jsx as r, jsxs as g } from "react/jsx-runtime";
2
+ import { cva as B } from "class-variance-authority";
3
+ import { Root as C, Slottable as R } from "../primitives/react-slot.js";
4
+ import * as V from "react";
5
+ import { useButtonGroup as E } from "./button-group.js";
6
+ import { cn as t } from "./lib/utils.js";
7
+ import { Spinner as G } from "./spinner.js";
8
+ const p = B(
9
+ "inline-flex items-center justify-center gap-ds-03 whitespace-nowrap font-sans font-semibold select-none border border-transparent transition-[color,background-color,border-color,box-shadow] duration-fast-01 ease-productive-standard focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-focus focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-[0.38]",
10
+ {
11
+ variants: {
12
+ variant: {
13
+ primary: "bg-interactive text-text-on-color hover:bg-interactive-hover active:bg-interactive-active shadow-01 hover:shadow-brand",
14
+ secondary: "bg-transparent text-interactive border-border-interactive hover:bg-interactive-subtle active:bg-layer-active",
15
+ ghost: "bg-transparent text-text-secondary hover:bg-layer-02 hover:text-text-primary active:bg-layer-active",
16
+ error: "bg-error text-text-on-color hover:bg-error-hover active:bg-error-hover shadow-01",
17
+ "error-ghost": "bg-transparent text-error border border-border-error hover:bg-error-surface active:bg-error-surface",
18
+ link: "text-text-link underline-offset-4 hover:underline active:opacity-80"
19
+ },
20
+ size: {
21
+ sm: "h-ds-sm rounded-ds-md px-ds-04 text-ds-sm",
22
+ md: "h-ds-md rounded-ds-md px-ds-05 text-ds-md",
23
+ lg: "h-ds-lg rounded-ds-lg px-ds-06 text-ds-base",
24
+ "icon-sm": "h-ds-sm w-ds-sm rounded-ds-md",
25
+ "icon-md": "h-ds-md w-ds-md rounded-ds-md",
26
+ "icon-lg": "h-ds-lg w-ds-lg rounded-ds-lg"
27
+ }
28
+ },
29
+ defaultVariants: {
30
+ variant: "primary",
31
+ size: "md"
32
+ }
33
+ }
34
+ ), M = {
35
+ sm: "h-ico-sm w-ico-sm [&>svg]:h-ico-sm [&>svg]:w-ico-sm",
36
+ md: "h-ico-sm w-ico-sm [&>svg]:h-ico-sm [&>svg]:w-ico-sm",
37
+ lg: "h-ico-md w-ico-md [&>svg]:h-ico-md [&>svg]:w-ico-md",
38
+ "icon-sm": "h-ico-sm w-ico-sm [&>svg]:h-ico-sm [&>svg]:w-ico-sm",
39
+ "icon-md": "h-ico-sm w-ico-sm [&>svg]:h-ico-sm [&>svg]:w-ico-sm",
40
+ "icon-lg": "h-ico-md w-ico-md [&>svg]:h-ico-md [&>svg]:w-ico-md"
41
+ }, q = {
42
+ sm: "sm",
43
+ md: "sm",
44
+ lg: "md",
45
+ "icon-sm": "sm",
46
+ "icon-md": "sm",
47
+ "icon-lg": "md"
48
+ }, A = V.forwardRef(
49
+ ({
50
+ className: c,
51
+ variant: x,
52
+ size: w,
53
+ asChild: y = !1,
54
+ startIcon: a,
55
+ endIcon: d,
56
+ loading: e = !1,
57
+ loadingPosition: o = "start",
58
+ fullWidth: m = !1,
59
+ disabled: l,
60
+ children: i,
61
+ ...v
62
+ }, u) => {
63
+ const b = E(), f = x ?? b.variant, s = w ?? b.size ?? "md", h = M[s], z = q[s], n = e ? /* @__PURE__ */ r(G, { size: z }) : null;
64
+ if (y) {
65
+ const k = {
66
+ className: t(
67
+ p({ variant: f, size: s, className: c }),
68
+ m && "w-full"
69
+ ),
70
+ ref: u,
71
+ disabled: l || e,
72
+ "aria-busy": e || void 0,
73
+ ...v
74
+ };
75
+ return /* @__PURE__ */ r(C, { ...k, children: /* @__PURE__ */ r(R, { children: i }) });
76
+ }
77
+ const S = () => e && o === "start" ? n : a ? /* @__PURE__ */ r("span", { className: t("inline-flex shrink-0 items-center justify-center", h), children: a }) : null, N = () => e && o === "end" ? n : d ? /* @__PURE__ */ r("span", { className: t("inline-flex shrink-0 items-center justify-center", h), children: d }) : null, j = () => e && o === "center" ? /* @__PURE__ */ g("span", { className: "relative inline-flex items-center justify-center", children: [
78
+ /* @__PURE__ */ r("span", { className: "invisible", children: i }),
79
+ /* @__PURE__ */ r("span", { className: "absolute inset-0 flex items-center justify-center", children: n })
80
+ ] }) : i;
81
+ return /* @__PURE__ */ g(
82
+ "button",
83
+ {
84
+ className: t(
85
+ p({ variant: f, size: s, className: c }),
86
+ m && "w-full"
87
+ ),
88
+ ref: u,
89
+ disabled: l || e,
90
+ "aria-busy": e || void 0,
91
+ ...v,
92
+ children: [
93
+ S(),
94
+ j(),
95
+ N()
96
+ ]
97
+ }
98
+ );
99
+ }
100
+ );
101
+ A.displayName = "Button";
102
+ export {
103
+ A as Button,
104
+ p as buttonVariants
105
+ };
@@ -0,0 +1,64 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ import * as React from 'react';
3
+ declare const cardVariants: (props?: ({
4
+ variant?: "flat" | "default" | "elevated" | "outlined" | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ /**
7
+ * Props for Card — a general-purpose content container with 4 elevation/style variants and
8
+ * an optional interactive hover state.
9
+ *
10
+ * **Variants:** `default` (subtle border + shadow-01) | `elevated` (stronger shadow-02) |
11
+ * `outlined` (2px solid border, no shadow) | `flat` (filled background, no shadow)
12
+ *
13
+ * **Composition:** Use sub-components `<CardHeader>`, `<CardTitle>`, `<CardDescription>`,
14
+ * `<CardContent>`, and `<CardFooter>` for consistent internal spacing.
15
+ *
16
+ * **Interactive:** Pass `interactive` to enable hover shadow lift and pointer cursor —
17
+ * useful for clickable cards in grids.
18
+ *
19
+ * @example
20
+ * // Standard content card with header and body:
21
+ * <Card>
22
+ * <CardHeader>
23
+ * <CardTitle>Project Alpha</CardTitle>
24
+ * <CardDescription>Last updated 2 hours ago</CardDescription>
25
+ * </CardHeader>
26
+ * <CardContent>
27
+ * <p>Sprint 4 is in progress with 12 open tasks.</p>
28
+ * </CardContent>
29
+ * </Card>
30
+ *
31
+ * @example
32
+ * // Elevated card for a dashboard stat widget:
33
+ * <Card variant="elevated">
34
+ * <CardContent>
35
+ * <StatCard label="Revenue" value="$12,400" delta={{ value: "+8%", direction: "up" }} />
36
+ * </CardContent>
37
+ * </Card>
38
+ *
39
+ * @example
40
+ * // Clickable card in a project grid (interactive hover effect):
41
+ * <Card interactive onClick={() => router.push(`/projects/${id}`)}>
42
+ * <CardHeader>
43
+ * <CardTitle>{project.name}</CardTitle>
44
+ * </CardHeader>
45
+ * </Card>
46
+ *
47
+ * @example
48
+ * // Flat card for a sidebar panel section (no shadow):
49
+ * <Card variant="flat" className="p-ds-05">
50
+ * <p className="text-text-secondary text-ds-sm">No recent activity</p>
51
+ * </Card>
52
+ * // These are just a few ways — feel free to combine props creatively!
53
+ */
54
+ export interface CardProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof cardVariants> {
55
+ interactive?: boolean;
56
+ }
57
+ declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>>;
58
+ declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
59
+ declare const CardTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
60
+ declare const CardDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
61
+ declare const CardContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
62
+ declare const CardFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
63
+ export { Card, cardVariants, CardHeader, CardFooter, CardTitle, CardDescription, CardContent };
64
+ //# sourceMappingURL=card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/ui/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,YAAY;;8EAajB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,MAAM,WAAW,SACf,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAC1C,YAAY,CAAC,OAAO,YAAY,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,QAAA,MAAM,IAAI,kFAaT,CAAA;AAGD,QAAA,MAAM,UAAU,6GASd,CAAA;AAGF,QAAA,MAAM,SAAS,6GASb,CAAA;AAGF,QAAA,MAAM,eAAe,6GASnB,CAAA;AAGF,QAAA,MAAM,WAAW,6GAKf,CAAA;AAGF,QAAA,MAAM,UAAU,6GASd,CAAA;AAGF,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,79 @@
1
+ import { jsx as d } from "react/jsx-runtime";
2
+ import * as t from "react";
3
+ import { cva as i } from "class-variance-authority";
4
+ import { cn as o } from "./lib/utils.js";
5
+ const l = i(
6
+ "rounded-ds-lg text-text-primary",
7
+ {
8
+ variants: {
9
+ variant: {
10
+ default: "bg-layer-01 border border-border-subtle shadow-01",
11
+ elevated: "bg-layer-01 border border-border-subtle shadow-02",
12
+ outlined: "bg-transparent border-2 border-border shadow-none",
13
+ flat: "bg-layer-02 border-none shadow-none"
14
+ }
15
+ },
16
+ defaultVariants: { variant: "default" }
17
+ }
18
+ ), f = t.forwardRef(
19
+ ({ className: r, variant: a, interactive: e, ...s }, n) => /* @__PURE__ */ d(
20
+ "div",
21
+ {
22
+ ref: n,
23
+ className: o(
24
+ l({ variant: a }),
25
+ e && "hover:shadow-02 hover:border-border-strong cursor-pointer transition-shadow duration-fast-01",
26
+ r
27
+ ),
28
+ ...s
29
+ }
30
+ )
31
+ );
32
+ f.displayName = "Card";
33
+ const c = t.forwardRef(({ className: r, ...a }, e) => /* @__PURE__ */ d(
34
+ "div",
35
+ {
36
+ ref: e,
37
+ className: o("flex flex-col space-y-ds-02b p-ds-06", r),
38
+ ...a
39
+ }
40
+ ));
41
+ c.displayName = "CardHeader";
42
+ const m = t.forwardRef(({ className: r, ...a }, e) => /* @__PURE__ */ d(
43
+ "div",
44
+ {
45
+ ref: e,
46
+ className: o("font-sans font-semibold leading-none tracking-tight text-text-primary", r),
47
+ ...a
48
+ }
49
+ ));
50
+ m.displayName = "CardTitle";
51
+ const p = t.forwardRef(({ className: r, ...a }, e) => /* @__PURE__ */ d(
52
+ "div",
53
+ {
54
+ ref: e,
55
+ className: o("text-ds-md text-text-secondary", r),
56
+ ...a
57
+ }
58
+ ));
59
+ p.displayName = "CardDescription";
60
+ const b = t.forwardRef(({ className: r, ...a }, e) => /* @__PURE__ */ d("div", { ref: e, className: o("p-ds-06 pt-0", r), ...a }));
61
+ b.displayName = "CardContent";
62
+ const C = t.forwardRef(({ className: r, ...a }, e) => /* @__PURE__ */ d(
63
+ "div",
64
+ {
65
+ ref: e,
66
+ className: o("flex items-center p-ds-06 pt-0", r),
67
+ ...a
68
+ }
69
+ ));
70
+ C.displayName = "CardFooter";
71
+ export {
72
+ f as Card,
73
+ b as CardContent,
74
+ p as CardDescription,
75
+ C as CardFooter,
76
+ c as CardHeader,
77
+ m as CardTitle,
78
+ l as cardVariants
79
+ };
@@ -0,0 +1,5 @@
1
+ /** Hook to detect prefers-reduced-motion */
2
+ export declare function useReducedMotion(): boolean;
3
+ /** Get transition duration respecting reduced motion preference */
4
+ export declare function getTransitionDuration(reducedMotion: boolean, duration?: number): number;
5
+ //# sourceMappingURL=animation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animation.d.ts","sourceRoot":"","sources":["../../../../src/ui/charts/_internal/animation.ts"],"names":[],"mappings":"AAEA,4CAA4C;AAC5C,wBAAgB,gBAAgB,IAAI,OAAO,CAY1C;AAED,mEAAmE;AACnE,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,SAAM,GAAG,MAAM,CAEpF"}
@@ -0,0 +1,17 @@
1
+ import { useState as o, useEffect as d } from "react";
2
+ function u() {
3
+ const [t, e] = o(!1);
4
+ return d(() => {
5
+ const n = window.matchMedia("(prefers-reduced-motion: reduce)");
6
+ e(n.matches);
7
+ const r = (c) => e(c.matches);
8
+ return n.addEventListener("change", r), () => n.removeEventListener("change", r);
9
+ }, []), t;
10
+ }
11
+ function a(t, e = 300) {
12
+ return t ? 0 : e;
13
+ }
14
+ export {
15
+ a as getTransitionDuration,
16
+ u as useReducedMotion
17
+ };
@@ -0,0 +1,17 @@
1
+ import { ScaleLinear, ScaleBand, ScalePoint, ScaleTime } from 'd3-scale';
2
+ export type AnyScale = ScaleLinear<number, number> | ScaleBand<string> | ScalePoint<string> | ScaleTime<number, number>;
3
+ interface AxisProps {
4
+ scale: AnyScale;
5
+ orientation: 'top' | 'right' | 'bottom' | 'left';
6
+ transform?: string;
7
+ tickCount?: number;
8
+ tickFormat?: (value: unknown) => string;
9
+ label?: string;
10
+ className?: string;
11
+ }
12
+ export declare function Axis({ scale, orientation, transform, tickCount, tickFormat, label, className, }: AxisProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare namespace Axis {
14
+ var displayName: string;
15
+ }
16
+ export {};
17
+ //# sourceMappingURL=axes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axes.d.ts","sourceRoot":"","sources":["../../../../src/ui/charts/_internal/axes.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE7E,MAAM,MAAM,QAAQ,GAChB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,SAAS,CAAC,MAAM,CAAC,GACjB,UAAU,CAAC,MAAM,CAAC,GAClB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAE7B,UAAU,SAAS;IACjB,KAAK,EAAE,QAAQ,CAAA;IACf,WAAW,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAA;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAA;IACvC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,wBAAgB,IAAI,CAAC,EACnB,KAAK,EACL,WAAW,EACX,SAAS,EACT,SAAS,EACT,UAAU,EACV,KAAK,EACL,SAAS,GACV,EAAE,SAAS,2CAoDX;yBA5De,IAAI"}
@@ -0,0 +1,41 @@
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { useRef as m, useEffect as d } from "react";
3
+ import { axisLeft as p, axisBottom as u, axisRight as b, axisTop as v } from "d3-axis";
4
+ import { select as A } from "d3-selection";
5
+ function h({
6
+ scale: i,
7
+ orientation: r,
8
+ transform: c,
9
+ tickCount: o,
10
+ tickFormat: l,
11
+ label: f,
12
+ className: x
13
+ }) {
14
+ const s = m(null);
15
+ return d(() => {
16
+ if (!s.current) return;
17
+ const n = {
18
+ top: v,
19
+ right: b,
20
+ bottom: u,
21
+ left: p
22
+ }[r];
23
+ let t = n(i);
24
+ o && (t = t.ticks(o)), l && (t = t.tickFormat(l));
25
+ const e = A(s.current);
26
+ e.call(t), e.selectAll(".tick line").attr("stroke", "var(--color-border-subtle)"), e.selectAll(".tick text").attr("fill", "var(--color-text-secondary)").attr("font-size", "var(--font-size-xs)"), e.selectAll(".domain").attr("stroke", "var(--color-border-default)");
27
+ }, [i, r, o, l]), /* @__PURE__ */ a("g", { ref: s, transform: c, className: x, children: f && /* @__PURE__ */ a(
28
+ "text",
29
+ {
30
+ textAnchor: "middle",
31
+ fill: "var(--color-text-secondary)",
32
+ fontSize: "var(--font-size-sm)",
33
+ ...r === "bottom" ? { x: "50%", dy: 35 } : r === "left" ? { transform: "rotate(-90)", y: -40, x: 0 } : {},
34
+ children: f
35
+ }
36
+ ) });
37
+ }
38
+ h.displayName = "Axis";
39
+ export {
40
+ h as Axis
41
+ };
@@ -0,0 +1,8 @@
1
+ import { ChartColor } from './types';
2
+ /** Get CSS variable reference for a chart color token */
3
+ export declare function getChartColor(color: ChartColor): string;
4
+ /** Get an array of chart color CSS variable references, cycling if needed */
5
+ export declare function getChartColors(count: number): string[];
6
+ /** Resolve a color prop — if it's a ChartColor token name, convert to var(); otherwise pass through */
7
+ export declare function resolveColor(color: string | ChartColor | undefined, index?: number): string;
8
+ //# sourceMappingURL=colors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../../../src/ui/charts/_internal/colors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAazC,yDAAyD;AACzD,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAEvD;AAED,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAItD;AAED,uGAAuG;AACvG,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,EAAE,KAAK,GAAE,MAAU,GAAG,MAAM,CAI9F"}
@@ -0,0 +1,20 @@
1
+ const t = [
2
+ "chart-1",
3
+ "chart-2",
4
+ "chart-3",
5
+ "chart-4",
6
+ "chart-5",
7
+ "chart-6",
8
+ "chart-7",
9
+ "chart-8"
10
+ ];
11
+ function n(r) {
12
+ return `var(--${r})`;
13
+ }
14
+ function e(r, a = 0) {
15
+ return r ? t.includes(r) ? n(r) : r : n(t[a % t.length]);
16
+ }
17
+ export {
18
+ n as getChartColor,
19
+ e as resolveColor
20
+ };
@@ -0,0 +1,16 @@
1
+ import { ScaleLinear, ScaleTime } from 'd3-scale';
2
+ type TickableScale = ScaleLinear<number, number> | ScaleTime<number, number>;
3
+ interface GridLinesProps {
4
+ width: number;
5
+ height: number;
6
+ xScale?: TickableScale;
7
+ yScale?: TickableScale;
8
+ horizontal?: boolean;
9
+ vertical?: boolean;
10
+ }
11
+ export declare function GridLines({ width, height, xScale, yScale, horizontal, vertical, }: GridLinesProps): import("react/jsx-runtime").JSX.Element;
12
+ export declare namespace GridLines {
13
+ var displayName: string;
14
+ }
15
+ export {};
16
+ //# sourceMappingURL=grid-lines.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-lines.d.ts","sourceRoot":"","sources":["../../../../src/ui/charts/_internal/grid-lines.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEtD,KAAK,aAAa,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAE5E,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,MAAM,EACN,MAAM,EACN,MAAM,EACN,UAAiB,EACjB,QAAgB,GACjB,EAAE,cAAc,2CAiChB;yBAxCe,SAAS"}