@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 @@
1
+ {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../src/ui/chip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAGjE,QAAA,MAAM,YAAY;;;;8EA6DjB,CAAA;AAED,KAAK,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAA;AAEzJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,KAAK,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,YAAY,CAAC,EAAE,OAAO,CAAC,GAAG;IAClE,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACjC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,QAAA,MAAM,IAAI;;;;;WATD,MAAM;YACL,SAAS;WACV,KAAK,CAAC,SAAS;cACZ,KAAK,CAAC,iBAAiB;eACtB,MAAM,IAAI;eACV,OAAO;gBACN,MAAM;qCA8CnB,CAAA;AAGD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,CAAA"}
@@ -0,0 +1,105 @@
1
+ import { jsxs as l, Fragment as p, jsx as r } from "react/jsx-runtime";
2
+ import * as i from "react";
3
+ import { cva as N } from "class-variance-authority";
4
+ import { cn as h } from "./lib/utils.js";
5
+ const w = N(
6
+ "inline-flex items-center gap-ds-02 font-sans leading-[var(--line-height-relaxed)] rounded-ds-full transition-colors duration-fast-01",
7
+ {
8
+ variants: {
9
+ variant: {
10
+ filled: "bg-layer-02 text-text-primary border border-transparent",
11
+ outlined: "bg-transparent text-text-primary border border-border"
12
+ },
13
+ size: {
14
+ sm: "h-ds-xs px-ds-03 text-ds-xs",
15
+ md: "h-ds-sm px-ds-04 text-ds-sm",
16
+ lg: "h-ds-md px-ds-05 text-ds-base gap-ds-03"
17
+ },
18
+ color: {
19
+ default: "",
20
+ primary: "",
21
+ success: "",
22
+ error: "",
23
+ warning: "",
24
+ info: "",
25
+ teal: "",
26
+ amber: "",
27
+ slate: "",
28
+ indigo: "",
29
+ cyan: "",
30
+ orange: "",
31
+ emerald: ""
32
+ }
33
+ },
34
+ compoundVariants: [
35
+ { variant: "filled", color: "primary", className: "bg-interactive text-text-on-color" },
36
+ { variant: "filled", color: "success", className: "bg-success-surface text-success-text border-success-border" },
37
+ { variant: "filled", color: "error", className: "bg-error-surface text-error-text border-error-border" },
38
+ { variant: "filled", color: "warning", className: "bg-warning-surface text-warning-text border-warning-border" },
39
+ { variant: "filled", color: "info", className: "bg-info-surface text-info-text border-info-border" },
40
+ { variant: "filled", color: "teal", className: "bg-category-teal-surface text-category-teal-text border-category-teal-border" },
41
+ { variant: "filled", color: "amber", className: "bg-category-amber-surface text-category-amber-text border-category-amber-border" },
42
+ { variant: "filled", color: "slate", className: "bg-category-slate-surface text-category-slate-text border-category-slate-border" },
43
+ { variant: "filled", color: "indigo", className: "bg-category-indigo-surface text-category-indigo-text border-category-indigo-border" },
44
+ { variant: "filled", color: "cyan", className: "bg-category-cyan-surface text-category-cyan-text border-category-cyan-border" },
45
+ { variant: "filled", color: "orange", className: "bg-category-orange-surface text-category-orange-text border-category-orange-border" },
46
+ { variant: "filled", color: "emerald", className: "bg-category-emerald-surface text-category-emerald-text border-category-emerald-border" },
47
+ { variant: "outlined", color: "primary", className: "border-border-interactive text-text-interactive" },
48
+ { variant: "outlined", color: "success", className: "border-border-success text-success-text" },
49
+ { variant: "outlined", color: "error", className: "border-border-error text-error-text" },
50
+ { variant: "outlined", color: "warning", className: "border-border-warning text-warning-text" },
51
+ { variant: "outlined", color: "info", className: "border-info-border text-info-text" },
52
+ { variant: "outlined", color: "teal", className: "border-category-teal-border text-category-teal-text" },
53
+ { variant: "outlined", color: "amber", className: "border-category-amber-border text-category-amber-text" },
54
+ { variant: "outlined", color: "slate", className: "border-category-slate-border text-category-slate-text" },
55
+ { variant: "outlined", color: "indigo", className: "border-category-indigo-border text-category-indigo-text" },
56
+ { variant: "outlined", color: "cyan", className: "border-category-cyan-border text-category-cyan-text" },
57
+ { variant: "outlined", color: "orange", className: "border-category-orange-border text-category-orange-text" },
58
+ { variant: "outlined", color: "emerald", className: "border-category-emerald-border text-category-emerald-text" }
59
+ ],
60
+ defaultVariants: {
61
+ variant: "filled",
62
+ size: "md",
63
+ color: "default"
64
+ }
65
+ }
66
+ ), k = i.forwardRef(
67
+ ({ label: t, variant: n, size: d, color: g, icon: o, onClick: s, onDelete: c, disabled: a, className: b, ...m }, x) => {
68
+ const e = !!s, y = e ? "button" : "span", f = e && !a ? "cursor-pointer hover:bg-field-hover" : "", u = a ? "opacity-[var(--action-disabled-opacity,0.38)] cursor-not-allowed" : "";
69
+ return i.createElement(
70
+ y,
71
+ {
72
+ ref: x,
73
+ className: h(w({ variant: n, size: d, color: g }), f, u, b),
74
+ onClick: e ? s : void 0,
75
+ disabled: e ? a : void 0,
76
+ type: e ? "button" : void 0,
77
+ ...m
78
+ },
79
+ /* @__PURE__ */ l(p, { children: [
80
+ o && /* @__PURE__ */ r("span", { className: "flex-shrink-0 [&>svg]:w-ico-sm [&>svg]:h-ico-sm", children: o }),
81
+ /* @__PURE__ */ r("span", { children: t }),
82
+ c && /* @__PURE__ */ r(
83
+ "button",
84
+ {
85
+ type: "button",
86
+ "aria-label": `Remove ${t}`,
87
+ className: "flex-shrink-0 rounded-ds-full p-ds-01 hover:bg-layer-03 transition-colors duration-fast-01 [&>svg]:w-ico-sm [&>svg]:h-ico-sm",
88
+ onClick: (v) => {
89
+ v.stopPropagation(), c();
90
+ },
91
+ children: /* @__PURE__ */ l("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, strokeLinecap: "round", strokeLinejoin: "round", children: [
92
+ /* @__PURE__ */ r("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
93
+ /* @__PURE__ */ r("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
94
+ ] })
95
+ }
96
+ )
97
+ ] })
98
+ );
99
+ }
100
+ );
101
+ k.displayName = "Chip";
102
+ export {
103
+ k as Chip,
104
+ w as chipVariants
105
+ };
@@ -0,0 +1,30 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * Props for Code — a typography component that renders either inline `<code>` or block `<pre><code>`
4
+ * monospace text, styled with the design system's layer tokens.
5
+ *
6
+ * **`variant` options:**
7
+ * - `"inline"` (default) — renders as `<code>` with a subtle layer-03 background, suitable for
8
+ * short snippets within prose (e.g. "Use the `onClick` prop to...").
9
+ * - `"block"` — renders as `<pre>` with a bordered, padded, horizontally-scrollable block for
10
+ * multi-line code samples.
11
+ *
12
+ * @example
13
+ * // Inline code reference in documentation:
14
+ * <p>Pass <Code>loading={true}</Code> to show the spinner.</p>
15
+ *
16
+ * @example
17
+ * // Block code sample (e.g. in a README or docs page):
18
+ * <Code variant="block">{`const greeting = "Hello, world!"\nconsole.log(greeting)`}</Code>
19
+ *
20
+ * @example
21
+ * // Inline API key display:
22
+ * <p>Your API key: <Code>sk-dev-abc123xyz</Code></p>
23
+ * // These are just a few ways — feel free to combine props creatively!
24
+ */
25
+ export interface CodeProps extends React.HTMLAttributes<HTMLElement> {
26
+ variant?: 'inline' | 'block';
27
+ }
28
+ declare const Code: React.ForwardRefExoticComponent<CodeProps & React.RefAttributes<HTMLElement | HTMLPreElement>>;
29
+ export { Code };
30
+ //# sourceMappingURL=code.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/ui/code.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IAClE,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;CAC7B;AAED,QAAA,MAAM,IAAI,gGA8BT,CAAA;AAGD,OAAO,EAAE,IAAI,EAAE,CAAA"}
@@ -0,0 +1,32 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ import * as a from "react";
3
+ import { cn as m } from "./lib/utils.js";
4
+ const n = a.forwardRef(
5
+ ({ className: o, variant: s = "inline", children: r, ...t }, d) => s === "block" ? /* @__PURE__ */ e(
6
+ "pre",
7
+ {
8
+ ref: d,
9
+ className: m(
10
+ "overflow-x-auto rounded-ds-md border border-border-subtle bg-layer-02 p-ds-05 font-mono text-ds-sm leading-[150%] text-text-primary",
11
+ o
12
+ ),
13
+ ...t,
14
+ children: /* @__PURE__ */ e("code", { children: r })
15
+ }
16
+ ) : /* @__PURE__ */ e(
17
+ "code",
18
+ {
19
+ ref: d,
20
+ className: m(
21
+ "rounded-ds-sm bg-layer-03 px-ds-02 py-ds-01 font-mono text-ds-sm text-text-primary",
22
+ o
23
+ ),
24
+ ...t,
25
+ children: r
26
+ }
27
+ )
28
+ );
29
+ n.displayName = "Code";
30
+ export {
31
+ n as Code
32
+ };
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ import * as CollapsiblePrimitive from '@primitives/react-collapsible';
3
+ declare const Collapsible: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleProps & React.RefAttributes<HTMLDivElement>>;
4
+ declare const CollapsibleTrigger: React.ForwardRefExoticComponent<CollapsiblePrimitive.CollapsibleTriggerProps & React.RefAttributes<HTMLButtonElement>>;
5
+ declare const CollapsibleContent: React.ForwardRefExoticComponent<Omit<CollapsiblePrimitive.CollapsibleContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
6
+ export { Collapsible, CollapsibleTrigger, CollapsibleContent };
7
+ //# sourceMappingURL=collapsible.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapsible.d.ts","sourceRoot":"","sources":["../../src/ui/collapsible.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,oBAAoB,MAAM,+BAA+B,CAAA;AAIrE,QAAA,MAAM,WAAW,8GAA4B,CAAA;AAE7C,QAAA,MAAM,kBAAkB,wHAA+B,CAAA;AAEvD,QAAA,MAAM,kBAAkB,wKAYtB,CAAA;AAGF,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { jsx as s } from "react/jsx-runtime";
2
+ import * as i from "react";
3
+ import { Root as l, Trigger as n, Content as a } from "../primitives/react-collapsible.js";
4
+ import { cn as r } from "./lib/utils.js";
5
+ const c = l, C = n, d = i.forwardRef(({ className: t, ...o }, e) => /* @__PURE__ */ s(
6
+ a,
7
+ {
8
+ ref: e,
9
+ className: r(
10
+ "overflow-hidden transition-all data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0",
11
+ t
12
+ ),
13
+ ...o
14
+ }
15
+ ));
16
+ d.displayName = a.displayName;
17
+ export {
18
+ c as Collapsible,
19
+ d as CollapsibleContent,
20
+ C as CollapsibleTrigger
21
+ };
@@ -0,0 +1,76 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * Option shape for a Combobox dropdown item.
4
+ * `value` must be unique across all options — it is the key used in selection state.
5
+ */
6
+ export interface ComboboxOption {
7
+ value: string;
8
+ label: string;
9
+ description?: string;
10
+ icon?: React.ReactNode;
11
+ disabled?: boolean;
12
+ }
13
+ /**
14
+ * Props for Combobox — a searchable single or multi-select dropdown with built-in keyboard
15
+ * navigation, pill overflow ("+ N more"), and an optional custom option renderer.
16
+ *
17
+ * **Single vs multi:** `multiple={false}` (default) — `value` is a `string`. When `multiple={true}`,
18
+ * `value` is `string[]` and selected items appear as dismissible pills in the trigger.
19
+ *
20
+ * **`onChange` signature:** always `(value: string | string[]) => void`. Check `multiple` to determine
21
+ * which type you'll receive.
22
+ *
23
+ * **Custom rendering:** Use `renderOption` to return custom JSX per option (e.g. avatars, badges).
24
+ *
25
+ * @example
26
+ * // Single-select country picker:
27
+ * <Combobox
28
+ * options={[{ value: 'in', label: 'India' }, { value: 'us', label: 'United States' }]}
29
+ * value={country}
30
+ * onChange={(v) => setCountry(v as string)}
31
+ * placeholder="Select country"
32
+ * />
33
+ *
34
+ * @example
35
+ * // Multi-select tag picker with pill display:
36
+ * <Combobox
37
+ * multiple
38
+ * options={tagOptions}
39
+ * value={selectedTags}
40
+ * onChange={(v) => setSelectedTags(v as string[])}
41
+ * placeholder="Select tags..."
42
+ * />
43
+ *
44
+ * @example
45
+ * // Custom option renderer (user avatars in assignee picker):
46
+ * <Combobox
47
+ * options={users.map(u => ({ value: u.id, label: u.name }))}
48
+ * value={assigneeId}
49
+ * onChange={(v) => setAssigneeId(v as string)}
50
+ * renderOption={(option, selected) => (
51
+ * <span className="flex items-center gap-ds-03">
52
+ * <Avatar size="xs"><AvatarFallback>{option.label[0]}</AvatarFallback></Avatar>
53
+ * {option.label}
54
+ * </span>
55
+ * )}
56
+ * />
57
+ * // These are just a few ways — feel free to combine props creatively!
58
+ */
59
+ export interface ComboboxProps {
60
+ options: ComboboxOption[];
61
+ value?: string | string[];
62
+ onChange: (value: string | string[]) => void;
63
+ placeholder?: string;
64
+ searchPlaceholder?: string;
65
+ emptyMessage?: string;
66
+ multiple?: boolean;
67
+ disabled?: boolean;
68
+ className?: string;
69
+ triggerClassName?: string;
70
+ /** Max visible items in the dropdown before scroll (default 6) */
71
+ maxVisible?: number;
72
+ renderOption?: (option: ComboboxOption, selected: boolean) => React.ReactNode;
73
+ }
74
+ declare const Combobox: React.ForwardRefExoticComponent<ComboboxProps & React.RefAttributes<HTMLButtonElement>>;
75
+ export { Combobox };
76
+ //# sourceMappingURL=combobox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"combobox.d.ts","sourceRoot":"","sources":["../../src/ui/combobox.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,cAAc,EAAE,CAAA;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,IAAI,CAAA;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,KAAK,KAAK,CAAC,SAAS,CAAA;CAC9E;AAQD,QAAA,MAAM,QAAQ,yFA2Xb,CAAA;AAGD,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -0,0 +1,286 @@
1
+ import { jsx as r, jsxs as d, Fragment as F } from "react/jsx-runtime";
2
+ import * as a from "react";
3
+ import { Root as V, Trigger as B, Portal as G, Content as U } from "../primitives/react-popover.js";
4
+ import { IconChevronDown as q, IconSearch as J, IconCheck as Q, IconX as W } from "@tabler/icons-react";
5
+ import { cn as x } from "./lib/utils.js";
6
+ const P = 2, Y = 36, Z = a.forwardRef(
7
+ ({
8
+ options: u,
9
+ value: f,
10
+ onChange: m,
11
+ placeholder: S = "Select...",
12
+ searchPlaceholder: A = "Search...",
13
+ emptyMessage: L = "No results found",
14
+ multiple: b = !1,
15
+ disabled: p = !1,
16
+ className: T,
17
+ triggerClassName: $,
18
+ maxVisible: j = 6,
19
+ renderOption: E
20
+ }, H) => {
21
+ const [h, w] = a.useState(!1), [v, y] = a.useState(""), [i, c] = a.useState(-1), k = a.useRef(null), N = a.useRef(null), R = a.useId(), I = a.useId(), n = a.useMemo(() => f == null ? [] : Array.isArray(f) ? f : [f], [f]), o = a.useMemo(
22
+ () => v ? u.filter(
23
+ (e) => e.label.toLowerCase().includes(v.toLowerCase())
24
+ ) : u,
25
+ [u, v]
26
+ ), M = a.useCallback(
27
+ (e) => n.includes(e),
28
+ [n]
29
+ ), g = a.useCallback(
30
+ (e) => {
31
+ if (b) {
32
+ const t = n.includes(e) ? n.filter((s) => s !== e) : [...n, e];
33
+ m(t);
34
+ } else
35
+ m(e), w(!1);
36
+ },
37
+ [b, n, m]
38
+ ), O = a.useCallback(
39
+ (e, t) => {
40
+ e.stopPropagation(), e.preventDefault();
41
+ const s = n.filter((l) => l !== t);
42
+ m(s);
43
+ },
44
+ [n, m]
45
+ ), _ = a.useCallback(
46
+ (e) => {
47
+ p || (w(e), e || (y(""), c(-1)));
48
+ },
49
+ [p]
50
+ );
51
+ a.useEffect(() => {
52
+ if (h) {
53
+ const e = setTimeout(() => {
54
+ var t;
55
+ (t = k.current) == null || t.focus();
56
+ }, 0);
57
+ return () => clearTimeout(e);
58
+ }
59
+ }, [h]);
60
+ const C = a.useCallback(
61
+ (e, t) => {
62
+ const s = o.length;
63
+ if (s === 0) return -1;
64
+ let l = e + t;
65
+ for (; l >= 0 && l < s; ) {
66
+ if (!o[l].disabled) return l;
67
+ l += t;
68
+ }
69
+ return e;
70
+ },
71
+ [o]
72
+ ), z = a.useCallback(
73
+ (e) => {
74
+ switch (e.key) {
75
+ case "ArrowDown": {
76
+ e.preventDefault();
77
+ const t = C(i, 1);
78
+ c(t);
79
+ break;
80
+ }
81
+ case "ArrowUp": {
82
+ e.preventDefault();
83
+ const t = C(i, -1);
84
+ c(t);
85
+ break;
86
+ }
87
+ case "Home": {
88
+ e.preventDefault();
89
+ const t = o.findIndex((s) => !s.disabled);
90
+ c(t);
91
+ break;
92
+ }
93
+ case "End": {
94
+ e.preventDefault();
95
+ let t = -1;
96
+ for (let s = o.length - 1; s >= 0; s--)
97
+ if (!o[s].disabled) {
98
+ t = s;
99
+ break;
100
+ }
101
+ c(t);
102
+ break;
103
+ }
104
+ case "Enter": {
105
+ e.preventDefault(), i >= 0 && i < o.length && !o[i].disabled && g(o[i].value);
106
+ break;
107
+ }
108
+ case "Escape": {
109
+ e.preventDefault(), w(!1), y(""), c(-1);
110
+ break;
111
+ }
112
+ }
113
+ },
114
+ [i, o, C, g]
115
+ );
116
+ a.useEffect(() => {
117
+ var e;
118
+ if (i >= 0 && N.current) {
119
+ const t = N.current.children[i];
120
+ t && ((e = t.scrollIntoView) == null || e.call(t, { block: "nearest" }));
121
+ }
122
+ }, [i]);
123
+ const K = a.useCallback(() => {
124
+ if (n.length === 0) return null;
125
+ const e = u.find((t) => t.value === n[0]);
126
+ return (e == null ? void 0 : e.label) ?? null;
127
+ }, [n, u]), X = () => {
128
+ if (b && n.length > 0) {
129
+ const e = n.slice(0, P), t = n.length - P;
130
+ return /* @__PURE__ */ d("span", { className: "flex flex-1 flex-wrap items-center gap-ds-02 overflow-hidden", children: [
131
+ e.map((s) => {
132
+ const l = u.find((D) => D.value === s);
133
+ return l ? /* @__PURE__ */ d(
134
+ "span",
135
+ {
136
+ className: "inline-flex items-center gap-ds-01 rounded-ds-md bg-interactive-subtle px-ds-03 py-[1px] text-ds-sm",
137
+ children: [
138
+ l.label,
139
+ /* @__PURE__ */ r(
140
+ "button",
141
+ {
142
+ type: "button",
143
+ className: "inline-flex items-center justify-center rounded-ds-full outline-none hover:opacity-75",
144
+ onClick: (D) => O(D, s),
145
+ "aria-label": `Remove ${l.label}`,
146
+ tabIndex: -1,
147
+ children: /* @__PURE__ */ r(W, { className: "h-3 w-3", "aria-hidden": "true" })
148
+ }
149
+ )
150
+ ]
151
+ },
152
+ s
153
+ ) : null;
154
+ }),
155
+ t > 0 && /* @__PURE__ */ d("span", { className: "text-ds-sm text-text-secondary", children: [
156
+ "+",
157
+ t,
158
+ " more"
159
+ ] })
160
+ ] });
161
+ }
162
+ if (!b && n.length === 1) {
163
+ const e = K();
164
+ if (e)
165
+ return /* @__PURE__ */ r("span", { className: "flex-1 truncate text-left", children: e });
166
+ }
167
+ return /* @__PURE__ */ r("span", { className: "flex-1 truncate text-left text-text-placeholder", children: S });
168
+ };
169
+ return /* @__PURE__ */ r(V, { open: h, onOpenChange: _, children: /* @__PURE__ */ d("div", { className: x("relative", T), children: [
170
+ /* @__PURE__ */ r(B, { asChild: !0, disabled: p, children: /* @__PURE__ */ d(
171
+ "button",
172
+ {
173
+ ref: H,
174
+ type: "button",
175
+ role: "combobox",
176
+ "aria-expanded": h,
177
+ "aria-controls": I,
178
+ "aria-haspopup": "listbox",
179
+ "aria-label": S,
180
+ disabled: p,
181
+ className: x(
182
+ "flex h-ds-md w-full items-center justify-between whitespace-nowrap rounded-ds-md border border-border bg-field px-ds-04 py-ds-03 text-ds-md",
183
+ "transition-colors duration-fast-01",
184
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-focus focus-visible:ring-offset-2 focus-visible:border-border-interactive",
185
+ "disabled:cursor-not-allowed disabled:opacity-[0.38]",
186
+ $
187
+ ),
188
+ children: [
189
+ X(),
190
+ /* @__PURE__ */ r(q, { className: x("ml-ds-02 h-ico-sm w-ico-sm shrink-0 opacity-50 transition-transform duration-fast-01", h && "rotate-180"), "aria-hidden": "true" })
191
+ ]
192
+ }
193
+ ) }),
194
+ /* @__PURE__ */ r(G, { children: /* @__PURE__ */ d(
195
+ U,
196
+ {
197
+ className: x(
198
+ "z-dropdown w-[var(--radix-popover-trigger-width)] overflow-hidden rounded-ds-lg border border-border-subtle bg-layer-01 shadow-02",
199
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2"
200
+ ),
201
+ sideOffset: 4,
202
+ align: "start",
203
+ onOpenAutoFocus: (e) => {
204
+ var t;
205
+ e.preventDefault(), (t = k.current) == null || t.focus();
206
+ },
207
+ children: [
208
+ /* @__PURE__ */ d("div", { className: "flex items-center gap-ds-02 border-b border-border-subtle px-ds-04", children: [
209
+ /* @__PURE__ */ r(J, { className: "h-ico-sm w-ico-sm shrink-0 text-text-tertiary", "aria-hidden": "true" }),
210
+ /* @__PURE__ */ r(
211
+ "input",
212
+ {
213
+ ref: k,
214
+ type: "text",
215
+ className: "flex-1 bg-transparent py-ds-03 text-ds-md outline-none placeholder:text-text-placeholder",
216
+ placeholder: A,
217
+ value: v,
218
+ onChange: (e) => {
219
+ y(e.target.value), c(-1);
220
+ },
221
+ onKeyDown: z,
222
+ "aria-autocomplete": "list",
223
+ "aria-controls": I,
224
+ "aria-activedescendant": i >= 0 ? `${R}-option-${i}` : void 0,
225
+ "aria-label": "Search options"
226
+ }
227
+ )
228
+ ] }),
229
+ o.length === 0 ? /* @__PURE__ */ r("div", { className: "px-ds-04 py-ds-05 text-center text-ds-md text-text-tertiary", children: L }) : /* @__PURE__ */ r(
230
+ "ul",
231
+ {
232
+ ref: N,
233
+ id: I,
234
+ role: "listbox",
235
+ "aria-multiselectable": b || void 0,
236
+ className: "overflow-auto p-ds-02",
237
+ style: { maxHeight: `${j * Y}px` },
238
+ children: o.map((e, t) => {
239
+ const s = M(e.value);
240
+ return /* @__PURE__ */ d(
241
+ "li",
242
+ {
243
+ id: `${R}-option-${t}`,
244
+ role: "option",
245
+ "aria-selected": s,
246
+ "aria-disabled": e.disabled || void 0,
247
+ className: x(
248
+ "relative flex cursor-pointer select-none items-center gap-ds-03 rounded-ds-md px-ds-04 py-ds-03 text-ds-md outline-none",
249
+ "transition-colors",
250
+ i === t && "bg-interactive-subtle",
251
+ s && "text-interactive",
252
+ e.disabled && "pointer-events-none opacity-[0.38]"
253
+ ),
254
+ onClick: () => {
255
+ e.disabled || g(e.value);
256
+ },
257
+ onKeyDown: (l) => {
258
+ !e.disabled && (l.key === "Enter" || l.key === " ") && (l.preventDefault(), g(e.value));
259
+ },
260
+ onMouseEnter: () => {
261
+ e.disabled || c(t);
262
+ },
263
+ children: [
264
+ e.icon && /* @__PURE__ */ r("span", { className: "flex h-ico-sm w-ico-sm items-center justify-center shrink-0", children: e.icon }),
265
+ /* @__PURE__ */ r("span", { className: "flex flex-1 flex-col", children: E ? E(e, s) : /* @__PURE__ */ d(F, { children: [
266
+ /* @__PURE__ */ r("span", { children: e.label }),
267
+ e.description && /* @__PURE__ */ r("span", { className: "text-ds-sm text-text-secondary", children: e.description })
268
+ ] }) }),
269
+ s && /* @__PURE__ */ r(Q, { className: "h-ico-sm w-ico-sm shrink-0", "aria-hidden": "true" })
270
+ ]
271
+ },
272
+ e.value
273
+ );
274
+ })
275
+ }
276
+ )
277
+ ]
278
+ }
279
+ ) })
280
+ ] }) });
281
+ }
282
+ );
283
+ Z.displayName = "Combobox";
284
+ export {
285
+ Z as Combobox
286
+ };
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ type ContainerProps<T extends React.ElementType = 'div'> = {
3
+ as?: T;
4
+ maxWidth?: 'default' | 'body' | 'full';
5
+ className?: string;
6
+ children?: React.ReactNode;
7
+ } & Omit<React.ComponentPropsWithRef<T>, 'as' | 'className' | 'children'>;
8
+ declare const Container: React.ForwardRefExoticComponent<Omit<ContainerProps<"div">, "ref"> & React.RefAttributes<HTMLElement>>;
9
+ export { Container, type ContainerProps };
10
+ //# sourceMappingURL=container.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../src/ui/container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,KAAK,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,IAAI;IACzD,EAAE,CAAC,EAAE,CAAC,CAAA;IACN,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAA;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,WAAW,GAAG,UAAU,CAAC,CAAA;AAQzE,QAAA,MAAM,SAAS,wGAad,CAAA;AAGD,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,CAAA"}
@@ -0,0 +1,24 @@
1
+ import * as a from "react";
2
+ import { cn as d } from "./lib/utils.js";
3
+ const f = {
4
+ default: "max-w-layout",
5
+ body: "max-w-layout-body",
6
+ full: "max-w-full"
7
+ }, u = a.forwardRef(
8
+ ({ as: t, maxWidth: o = "default", className: e, children: l, ...m }, n) => {
9
+ const r = t || "div";
10
+ return a.createElement(
11
+ r,
12
+ {
13
+ ref: n,
14
+ className: d("mx-auto w-full px-ds-05", f[o], e),
15
+ ...m
16
+ },
17
+ l
18
+ );
19
+ }
20
+ );
21
+ u.displayName = "Container";
22
+ export {
23
+ u as Container
24
+ };
@@ -0,0 +1,28 @@
1
+ import * as React from "react";
2
+ import * as ContextMenuPrimitive from "@primitives/react-context-menu";
3
+ declare const ContextMenu: React.FC<ContextMenuPrimitive.ContextMenuProps>;
4
+ declare const ContextMenuTrigger: React.ForwardRefExoticComponent<ContextMenuPrimitive.ContextMenuTriggerProps & React.RefAttributes<HTMLSpanElement>>;
5
+ declare const ContextMenuGroup: React.ForwardRefExoticComponent<ContextMenuPrimitive.ContextMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
6
+ declare const ContextMenuPortal: React.FC<ContextMenuPrimitive.ContextMenuPortalProps>;
7
+ declare const ContextMenuSub: React.FC<ContextMenuPrimitive.ContextMenuSubProps>;
8
+ declare const ContextMenuRadioGroup: React.ForwardRefExoticComponent<ContextMenuPrimitive.ContextMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
9
+ declare const ContextMenuSubTrigger: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
10
+ inset?: boolean;
11
+ } & React.RefAttributes<HTMLDivElement>>;
12
+ declare const ContextMenuSubContent: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
+ declare const ContextMenuContent: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
14
+ declare const ContextMenuItem: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
15
+ inset?: boolean;
16
+ } & React.RefAttributes<HTMLDivElement>>;
17
+ declare const ContextMenuCheckboxItem: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
18
+ declare const ContextMenuRadioItem: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
19
+ declare const ContextMenuLabel: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
20
+ inset?: boolean;
21
+ } & React.RefAttributes<HTMLDivElement>>;
22
+ declare const ContextMenuSeparator: React.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
23
+ declare const ContextMenuShortcut: {
24
+ ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
25
+ displayName: string;
26
+ };
27
+ export { ContextMenu, ContextMenuTrigger, ContextMenuContent, ContextMenuItem, ContextMenuCheckboxItem, ContextMenuRadioItem, ContextMenuLabel, ContextMenuSeparator, ContextMenuShortcut, ContextMenuGroup, ContextMenuPortal, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuRadioGroup, };
28
+ //# sourceMappingURL=context-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-menu.d.ts","sourceRoot":"","sources":["../../src/ui/context-menu.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,oBAAoB,MAAM,gCAAgC,CAAA;AAKtE,QAAA,MAAM,WAAW,iDAA4B,CAAA;AAE7C,QAAA,MAAM,kBAAkB,sHAA+B,CAAA;AAEvD,QAAA,MAAM,gBAAgB,mHAA6B,CAAA;AAEnD,QAAA,MAAM,iBAAiB,uDAA8B,CAAA;AAErD,QAAA,MAAM,cAAc,oDAA2B,CAAA;AAE/C,QAAA,MAAM,qBAAqB,wHAAkC,CAAA;AAE7D,QAAA,MAAM,qBAAqB;YAGf,OAAO;wCAejB,CAAA;AAGF,QAAA,MAAM,qBAAqB,2KAYzB,CAAA;AAGF,QAAA,MAAM,kBAAkB,wKActB,CAAA;AAGF,QAAA,MAAM,eAAe;YAGT,OAAO;wCAYjB,CAAA;AAGF,QAAA,MAAM,uBAAuB,6KAoB3B,CAAA;AAIF,QAAA,MAAM,oBAAoB,0KAmBxB,CAAA;AAGF,QAAA,MAAM,gBAAgB;YAGV,OAAO;wCAYjB,CAAA;AAGF,QAAA,MAAM,oBAAoB,0KASxB,CAAA;AAGF,QAAA,MAAM,mBAAmB;8BAGtB,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC;;CAUvC,CAAA;AAGD,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GACtB,CAAA"}