@devalok/shilp-sutra 0.34.1 → 0.36.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 (439) hide show
  1. package/LICENSE +21 -21
  2. package/dist/_chunks/badge-group.js +95 -95
  3. package/dist/_chunks/badge-group.js.map +1 -0
  4. package/dist/_chunks/chat.js +7 -2
  5. package/dist/_chunks/chat.js.map +1 -0
  6. package/dist/_chunks/date-picker.js.map +1 -0
  7. package/dist/_chunks/document-preview.js.map +1 -0
  8. package/dist/_chunks/file-preview.js.map +1 -0
  9. package/dist/_chunks/framer.js +62 -62
  10. package/dist/_chunks/framer.js.map +1 -0
  11. package/dist/_chunks/image-preview.js +1 -1
  12. package/dist/_chunks/image-preview.js.map +1 -0
  13. package/dist/_chunks/keybinding.js.map +1 -0
  14. package/dist/_chunks/link-context.js.map +1 -0
  15. package/dist/_chunks/mention-suggestion.js.map +1 -0
  16. package/dist/_chunks/motion-provider.js.map +1 -0
  17. package/dist/_chunks/popover.js +32 -36
  18. package/dist/_chunks/popover.js.map +1 -0
  19. package/dist/_chunks/primitives.js +686 -686
  20. package/dist/_chunks/primitives.js.map +1 -0
  21. package/dist/_chunks/rich-chat-input.js +650 -649
  22. package/dist/_chunks/rich-chat-input.js.map +1 -0
  23. package/dist/_chunks/shared.js.map +1 -0
  24. package/dist/_chunks/sonner.js.map +1 -0
  25. package/dist/_chunks/stat-row.js +158 -158
  26. package/dist/_chunks/stat-row.js.map +1 -0
  27. package/dist/_chunks/tiptap.js +11 -11
  28. package/dist/_chunks/tiptap.js.map +1 -0
  29. package/dist/_chunks/tree-view.js +1 -1
  30. package/dist/_chunks/tree-view.js.map +1 -0
  31. package/dist/_chunks/use-calendar.js.map +1 -0
  32. package/dist/_chunks/vendor-client.js +1 -1
  33. package/dist/_chunks/vendor-client.js.map +1 -0
  34. package/dist/_chunks/vendor-utils.js.map +1 -0
  35. package/dist/ai/ai-command-provider.js.map +1 -0
  36. package/dist/ai/block-renderer.js.map +1 -0
  37. package/dist/ai/blocks/loading.d.ts.map +1 -1
  38. package/dist/ai/command-bar.js.map +1 -0
  39. package/dist/ai/conversation.js +76 -76
  40. package/dist/ai/conversation.js.map +1 -0
  41. package/dist/ai/devadoot-icon.d.ts.map +1 -1
  42. package/dist/ai/index.js.map +1 -0
  43. package/dist/composed/activity-feed.js.map +1 -0
  44. package/dist/composed/avatar-group.js +1 -1
  45. package/dist/composed/avatar-group.js.map +1 -0
  46. package/dist/composed/bulk-action-bar.js +13 -21
  47. package/dist/composed/bulk-action-bar.js.map +1 -0
  48. package/dist/composed/command-palette.js.map +1 -0
  49. package/dist/composed/confirm-dialog.js.map +1 -0
  50. package/dist/composed/content-card.js.map +1 -0
  51. package/dist/composed/deadline-indicator.js.map +1 -0
  52. package/dist/composed/emoji-picker.js.map +1 -0
  53. package/dist/composed/empty-state.d.ts.map +1 -1
  54. package/dist/composed/empty-state.js +30 -30
  55. package/dist/composed/empty-state.js.map +1 -0
  56. package/dist/composed/error-boundary.js.map +1 -0
  57. package/dist/composed/filter-bar.js.map +1 -0
  58. package/dist/composed/form-section.js.map +1 -0
  59. package/dist/composed/global-loading.js.map +1 -0
  60. package/dist/composed/inline-edit.js.map +1 -0
  61. package/dist/composed/lib/string-utils.js.map +1 -0
  62. package/dist/composed/loading-skeleton.js.map +1 -0
  63. package/dist/composed/markdown-viewer.js.map +1 -0
  64. package/dist/composed/master-detail.js.map +1 -0
  65. package/dist/composed/member-picker.js.map +1 -0
  66. package/dist/composed/multi-select-popover.d.ts.map +1 -1
  67. package/dist/composed/multi-select-popover.js +4 -0
  68. package/dist/composed/multi-select-popover.js.map +1 -0
  69. package/dist/composed/page-header.js.map +1 -0
  70. package/dist/composed/page-skeletons.js.map +1 -0
  71. package/dist/composed/priority-indicator.js.map +1 -0
  72. package/dist/composed/responsive-overlay.js.map +1 -0
  73. package/dist/composed/rich-chat-input/attachment-strip.d.ts.map +1 -1
  74. package/dist/composed/rich-chat-input/reply-banner.d.ts.map +1 -1
  75. package/dist/composed/rich-chat-input/schedule-send.d.ts.map +1 -1
  76. package/dist/composed/rich-chat-input.d.ts.map +1 -1
  77. package/dist/composed/rich-text-editor.js.map +1 -0
  78. package/dist/composed/schedule-view.js.map +1 -0
  79. package/dist/composed/simple-tooltip.js.map +1 -0
  80. package/dist/composed/status-badge.d.ts.map +1 -1
  81. package/dist/composed/status-badge.js.map +1 -0
  82. package/dist/hooks/use-color-mode.js.map +1 -0
  83. package/dist/hooks/use-mobile.js.map +1 -0
  84. package/dist/hooks/use-touch-device.js.map +1 -0
  85. package/dist/hooks/use-viewport-height.js.map +1 -0
  86. package/dist/motion/check-motion-provider.d.ts +3 -0
  87. package/dist/motion/check-motion-provider.d.ts.map +1 -0
  88. package/dist/motion/index.js +14 -0
  89. package/dist/motion/index.js.map +1 -0
  90. package/dist/motion/primitives-index.js.map +1 -0
  91. package/dist/primitives/react-accordion.d.ts +114 -114
  92. package/dist/primitives/react-alert-dialog.d.ts +51 -51
  93. package/dist/primitives/react-aspect-ratio.d.ts +11 -11
  94. package/dist/primitives/react-avatar.d.ts +24 -24
  95. package/dist/primitives/react-checkbox.d.ts +50 -50
  96. package/dist/primitives/react-collapsible.d.ts +33 -33
  97. package/dist/primitives/react-context-menu.d.ts +96 -96
  98. package/dist/primitives/react-dialog.d.ts +103 -103
  99. package/dist/primitives/react-dropdown-menu.d.ts +97 -97
  100. package/dist/primitives/react-hover-card.d.ts +79 -79
  101. package/dist/primitives/react-label.d.ts +10 -10
  102. package/dist/primitives/react-menu.d.ts +169 -169
  103. package/dist/primitives/react-menubar.d.ts +115 -115
  104. package/dist/primitives/react-navigation-menu.d.ts +126 -126
  105. package/dist/primitives/react-popover.d.ts +85 -85
  106. package/dist/primitives/react-progress.d.ts +19 -19
  107. package/dist/primitives/react-radio-group.d.ts +58 -58
  108. package/dist/primitives/react-roving-focus.d.ts +49 -49
  109. package/dist/primitives/react-select.d.ts +137 -137
  110. package/dist/primitives/react-separator.d.ts +21 -21
  111. package/dist/primitives/react-slider.d.ts +75 -75
  112. package/dist/primitives/react-switch.d.ts +21 -21
  113. package/dist/primitives/react-tabs.d.ts +56 -56
  114. package/dist/primitives/react-toast.d.ts +120 -120
  115. package/dist/primitives/react-toggle-group.d.ts +75 -75
  116. package/dist/primitives/react-toggle.d.ts +24 -24
  117. package/dist/primitives/react-tooltip.d.ts +101 -101
  118. package/dist/primitives/react-visually-hidden.d.ts +22 -22
  119. package/dist/shell/app-command-palette.d.ts +2 -0
  120. package/dist/shell/app-command-palette.d.ts.map +1 -1
  121. package/dist/shell/app-command-palette.js +42 -155
  122. package/dist/shell/app-command-palette.js.map +1 -0
  123. package/dist/shell/bottom-navbar.js +1 -1
  124. package/dist/shell/bottom-navbar.js.map +1 -0
  125. package/dist/shell/command-registry.js.map +1 -0
  126. package/dist/shell/notification-center.d.ts.map +1 -1
  127. package/dist/shell/notification-center.js +194 -169
  128. package/dist/shell/notification-center.js.map +1 -0
  129. package/dist/shell/notification-preferences.js.map +1 -0
  130. package/dist/shell/sidebar.js.map +1 -0
  131. package/dist/shell/top-bar.js +1 -1
  132. package/dist/shell/top-bar.js.map +1 -0
  133. package/dist/tailwind/index.cjs +48 -1
  134. package/dist/tailwind/preset.d.ts.map +1 -1
  135. package/dist/tailwind/preset.js +48 -1
  136. package/dist/tailwind/preset.js.map +1 -0
  137. package/dist/tokens/index.css +4 -4
  138. package/dist/tokens/primitives.css +442 -442
  139. package/dist/tokens/semantic.css +742 -547
  140. package/dist/tokens/typography-semantic.css +123 -100
  141. package/dist/tokens/typography.css +422 -422
  142. package/dist/ui/accordion.js +13 -13
  143. package/dist/ui/accordion.js.map +1 -0
  144. package/dist/ui/alert-dialog.d.ts +6 -2
  145. package/dist/ui/alert-dialog.d.ts.map +1 -1
  146. package/dist/ui/alert-dialog.js +43 -42
  147. package/dist/ui/alert-dialog.js.map +1 -0
  148. package/dist/ui/alert.d.ts +3 -2
  149. package/dist/ui/alert.d.ts.map +1 -1
  150. package/dist/ui/alert.js +31 -5
  151. package/dist/ui/alert.js.map +1 -0
  152. package/dist/ui/aspect-ratio.js +1 -1
  153. package/dist/ui/aspect-ratio.js.map +1 -0
  154. package/dist/ui/autocomplete.d.ts.map +1 -1
  155. package/dist/ui/autocomplete.js +92 -67
  156. package/dist/ui/autocomplete.js.map +1 -0
  157. package/dist/ui/avatar.js +9 -9
  158. package/dist/ui/avatar.js.map +1 -0
  159. package/dist/ui/badge-indicator.js.map +1 -0
  160. package/dist/ui/banner.js.map +1 -0
  161. package/dist/ui/breadcrumb.js +1 -1
  162. package/dist/ui/breadcrumb.js.map +1 -0
  163. package/dist/ui/button-group.js.map +1 -0
  164. package/dist/ui/button-processing.d.ts.map +1 -1
  165. package/dist/ui/button-processing.js +61 -40
  166. package/dist/ui/button-processing.js.map +1 -0
  167. package/dist/ui/button.js +8 -8
  168. package/dist/ui/button.js.map +1 -0
  169. package/dist/ui/card.js.map +1 -0
  170. package/dist/ui/charts/bar-chart.d.ts.map +1 -1
  171. package/dist/ui/charts/chart-container.d.ts +2 -0
  172. package/dist/ui/charts/chart-container.d.ts.map +1 -1
  173. package/dist/ui/charts/index.js +88 -65
  174. package/dist/ui/charts/index.js.map +1 -0
  175. package/dist/ui/charts/line-chart.d.ts.map +1 -1
  176. package/dist/ui/chat/message-input.d.ts.map +1 -1
  177. package/dist/ui/chat/message-list.d.ts +1 -1
  178. package/dist/ui/chat/message-list.d.ts.map +1 -1
  179. package/dist/ui/chat/message.d.ts.map +1 -1
  180. package/dist/ui/chat/system-message.d.ts.map +1 -1
  181. package/dist/ui/checkbox.d.ts.map +1 -1
  182. package/dist/ui/checkbox.js +33 -28
  183. package/dist/ui/checkbox.js.map +1 -0
  184. package/dist/ui/code.js.map +1 -0
  185. package/dist/ui/collapsible.js +1 -1
  186. package/dist/ui/collapsible.js.map +1 -0
  187. package/dist/ui/color-input.d.ts.map +1 -1
  188. package/dist/ui/color-input.js +165 -163
  189. package/dist/ui/color-input.js.map +1 -0
  190. package/dist/ui/color-swatch.js.map +1 -0
  191. package/dist/ui/combobox.d.ts +7 -0
  192. package/dist/ui/combobox.d.ts.map +1 -1
  193. package/dist/ui/combobox.js +147 -113
  194. package/dist/ui/combobox.js.map +1 -0
  195. package/dist/ui/container.js +1 -1
  196. package/dist/ui/container.js.map +1 -0
  197. package/dist/ui/context-menu.js.map +1 -0
  198. package/dist/ui/data-table-body.js.map +1 -0
  199. package/dist/ui/data-table-bulk-actions.js +1 -1
  200. package/dist/ui/data-table-bulk-actions.js.map +1 -0
  201. package/dist/ui/data-table-card.js.map +1 -0
  202. package/dist/ui/data-table-context.js.map +1 -0
  203. package/dist/ui/data-table-header.js.map +1 -0
  204. package/dist/ui/data-table-pagination.js.map +1 -0
  205. package/dist/ui/data-table-toolbar.js.map +1 -0
  206. package/dist/ui/data-table.js +34 -31
  207. package/dist/ui/data-table.js.map +1 -0
  208. package/dist/ui/devalok-grain.js.map +1 -0
  209. package/dist/ui/dialog.js +31 -35
  210. package/dist/ui/dialog.js.map +1 -0
  211. package/dist/ui/dropdown-menu.js.map +1 -0
  212. package/dist/ui/file-upload.js +120 -120
  213. package/dist/ui/file-upload.js.map +1 -0
  214. package/dist/ui/form.d.ts +8 -0
  215. package/dist/ui/form.d.ts.map +1 -1
  216. package/dist/ui/form.js +14 -12
  217. package/dist/ui/form.js.map +1 -0
  218. package/dist/ui/hover-card.js.map +1 -0
  219. package/dist/ui/icon-button.js.map +1 -0
  220. package/dist/ui/icon-context.js.map +1 -0
  221. package/dist/ui/icon-group.js.map +1 -0
  222. package/dist/ui/icon.js.map +1 -0
  223. package/dist/ui/index.d.ts +4 -4
  224. package/dist/ui/index.d.ts.map +1 -1
  225. package/dist/ui/index.js +82 -66
  226. package/dist/ui/index.js.map +1 -0
  227. package/dist/ui/input-otp.d.ts +12 -3
  228. package/dist/ui/input-otp.d.ts.map +1 -1
  229. package/dist/ui/input-otp.js +41 -27
  230. package/dist/ui/input-otp.js.map +1 -0
  231. package/dist/ui/input.d.ts.map +1 -1
  232. package/dist/ui/input.js +16 -15
  233. package/dist/ui/input.js.map +1 -0
  234. package/dist/ui/label.d.ts.map +1 -1
  235. package/dist/ui/label.js +19 -14
  236. package/dist/ui/label.js.map +1 -0
  237. package/dist/ui/lib/check-tokens.d.ts +3 -0
  238. package/dist/ui/lib/check-tokens.d.ts.map +1 -0
  239. package/dist/ui/lib/date-utils.js.map +1 -0
  240. package/dist/ui/lib/motion.d.ts +15 -4
  241. package/dist/ui/lib/motion.d.ts.map +1 -1
  242. package/dist/ui/lib/motion.js +18 -9
  243. package/dist/ui/lib/motion.js.map +1 -0
  244. package/dist/ui/lib/utils.js.map +1 -0
  245. package/dist/ui/link.js +2 -2
  246. package/dist/ui/link.js.map +1 -0
  247. package/dist/ui/menubar.js.map +1 -0
  248. package/dist/ui/navigation-menu.js.map +1 -0
  249. package/dist/ui/number-input.d.ts +16 -1
  250. package/dist/ui/number-input.d.ts.map +1 -1
  251. package/dist/ui/number-input.js +79 -49
  252. package/dist/ui/number-input.js.map +1 -0
  253. package/dist/ui/pagination.js +1 -1
  254. package/dist/ui/pagination.js.map +1 -0
  255. package/dist/ui/progress-ring.d.ts.map +1 -1
  256. package/dist/ui/progress-ring.js.map +1 -0
  257. package/dist/ui/progress.js.map +1 -0
  258. package/dist/ui/radio.d.ts.map +1 -1
  259. package/dist/ui/radio.js +27 -20
  260. package/dist/ui/radio.js.map +1 -0
  261. package/dist/ui/search-input.js.map +1 -0
  262. package/dist/ui/segmented-control.d.ts +1 -1
  263. package/dist/ui/segmented-control.d.ts.map +1 -1
  264. package/dist/ui/segmented-control.js +2 -0
  265. package/dist/ui/segmented-control.js.map +1 -0
  266. package/dist/ui/select.d.ts.map +1 -1
  267. package/dist/ui/select.js +54 -48
  268. package/dist/ui/select.js.map +1 -0
  269. package/dist/ui/separator.d.ts.map +1 -1
  270. package/dist/ui/separator.js +10 -7
  271. package/dist/ui/separator.js.map +1 -0
  272. package/dist/ui/sheet.js +29 -29
  273. package/dist/ui/sheet.js.map +1 -0
  274. package/dist/ui/sidebar.js +7 -7
  275. package/dist/ui/sidebar.js.map +1 -0
  276. package/dist/ui/skeleton.js.map +1 -0
  277. package/dist/ui/slider.d.ts +22 -3
  278. package/dist/ui/slider.d.ts.map +1 -1
  279. package/dist/ui/slider.js +57 -19
  280. package/dist/ui/slider.js.map +1 -0
  281. package/dist/ui/spinner.js.map +1 -0
  282. package/dist/ui/split-button.d.ts.map +1 -1
  283. package/dist/ui/split-button.js +77 -76
  284. package/dist/ui/split-button.js.map +1 -0
  285. package/dist/ui/stack.js.map +1 -0
  286. package/dist/ui/stat-card.js.map +1 -0
  287. package/dist/ui/status-dot.js.map +1 -0
  288. package/dist/ui/stepper.d.ts +10 -0
  289. package/dist/ui/stepper.d.ts.map +1 -1
  290. package/dist/ui/stepper.js +80 -75
  291. package/dist/ui/stepper.js.map +1 -0
  292. package/dist/ui/switch.d.ts.map +1 -1
  293. package/dist/ui/switch.js +26 -22
  294. package/dist/ui/switch.js.map +1 -0
  295. package/dist/ui/table.js.map +1 -0
  296. package/dist/ui/tabs.d.ts +3 -1
  297. package/dist/ui/tabs.d.ts.map +1 -1
  298. package/dist/ui/tabs.js +68 -48
  299. package/dist/ui/tabs.js.map +1 -0
  300. package/dist/ui/text.d.ts +1 -1
  301. package/dist/ui/text.d.ts.map +1 -1
  302. package/dist/ui/text.js +10 -2
  303. package/dist/ui/text.js.map +1 -0
  304. package/dist/ui/textarea.js +1 -1
  305. package/dist/ui/textarea.js.map +1 -0
  306. package/dist/ui/toast-registry.d.ts +8 -0
  307. package/dist/ui/toast-registry.d.ts.map +1 -0
  308. package/dist/ui/toast-registry.js +13 -0
  309. package/dist/ui/toast-registry.js.map +1 -0
  310. package/dist/ui/toast.d.ts.map +1 -1
  311. package/dist/ui/toast.js +141 -136
  312. package/dist/ui/toast.js.map +1 -0
  313. package/dist/ui/toaster.d.ts.map +1 -1
  314. package/dist/ui/toaster.js +15 -14
  315. package/dist/ui/toaster.js.map +1 -0
  316. package/dist/ui/toggle-group.d.ts +2 -0
  317. package/dist/ui/toggle-group.d.ts.map +1 -1
  318. package/dist/ui/toggle-group.js +23 -16
  319. package/dist/ui/toggle-group.js.map +1 -0
  320. package/dist/ui/toggle.d.ts +2 -0
  321. package/dist/ui/toggle.d.ts.map +1 -1
  322. package/dist/ui/toggle.js +14 -6
  323. package/dist/ui/toggle.js.map +1 -0
  324. package/dist/ui/tooltip.js.map +1 -0
  325. package/dist/ui/visually-hidden.js.map +1 -0
  326. package/docs/components/_header.md +85 -85
  327. package/docs/components/composed/activity-feed.md +62 -62
  328. package/docs/components/composed/avatar-group.md +65 -65
  329. package/docs/components/composed/bulk-action-bar.md +40 -40
  330. package/docs/components/composed/command-palette.md +40 -40
  331. package/docs/components/composed/confirm-dialog.md +46 -46
  332. package/docs/components/composed/content-card.md +36 -36
  333. package/docs/components/composed/date-picker.md +130 -130
  334. package/docs/components/composed/deadline-indicator.md +27 -27
  335. package/docs/components/composed/emoji-picker.md +52 -52
  336. package/docs/components/composed/empty-state.md +53 -53
  337. package/docs/components/composed/error-boundary.md +29 -29
  338. package/docs/components/composed/file-preview.md +40 -40
  339. package/docs/components/composed/filter-bar.md +57 -57
  340. package/docs/components/composed/form-section.md +31 -31
  341. package/docs/components/composed/global-loading.md +27 -27
  342. package/docs/components/composed/inline-edit.md +35 -35
  343. package/docs/components/composed/loading-skeleton.md +51 -51
  344. package/docs/components/composed/markdown-viewer.md +27 -27
  345. package/docs/components/composed/master-detail.md +48 -48
  346. package/docs/components/composed/member-picker.md +35 -35
  347. package/docs/components/composed/multi-select-popover.md +62 -62
  348. package/docs/components/composed/page-header.md +41 -41
  349. package/docs/components/composed/page-skeletons.md +32 -32
  350. package/docs/components/composed/priority-indicator.md +32 -32
  351. package/docs/components/composed/responsive-overlay.md +34 -34
  352. package/docs/components/composed/rich-text-editor.md +82 -82
  353. package/docs/components/composed/schedule-view.md +39 -39
  354. package/docs/components/composed/simple-tooltip.md +33 -33
  355. package/docs/components/composed/status-badge.md +55 -55
  356. package/docs/components/shell/app-command-palette.md +44 -44
  357. package/docs/components/shell/bottom-navbar.md +52 -52
  358. package/docs/components/shell/command-registry.md +48 -48
  359. package/docs/components/shell/link-context.md +41 -41
  360. package/docs/components/shell/notification-center.md +63 -63
  361. package/docs/components/shell/notification-preferences.md +42 -42
  362. package/docs/components/shell/sidebar.md +92 -92
  363. package/docs/components/shell/top-bar.md +143 -143
  364. package/docs/components/ui/accordion.md +51 -51
  365. package/docs/components/ui/alert-dialog.md +61 -61
  366. package/docs/components/ui/alert.md +46 -46
  367. package/docs/components/ui/aspect-ratio.md +25 -25
  368. package/docs/components/ui/autocomplete.md +48 -48
  369. package/docs/components/ui/avatar.md +56 -56
  370. package/docs/components/ui/badge.md +83 -82
  371. package/docs/components/ui/banner.md +42 -42
  372. package/docs/components/ui/breadcrumb.md +37 -37
  373. package/docs/components/ui/button-group.md +41 -41
  374. package/docs/components/ui/button.md +94 -93
  375. package/docs/components/ui/card.md +52 -52
  376. package/docs/components/ui/charts.md +43 -43
  377. package/docs/components/ui/checkbox.md +36 -36
  378. package/docs/components/ui/chip.md +47 -47
  379. package/docs/components/ui/code.md +28 -28
  380. package/docs/components/ui/collapsible.md +40 -40
  381. package/docs/components/ui/color-input.md +91 -91
  382. package/docs/components/ui/color-swatch.md +25 -25
  383. package/docs/components/ui/combobox.md +54 -54
  384. package/docs/components/ui/container.md +26 -26
  385. package/docs/components/ui/context-menu.md +43 -43
  386. package/docs/components/ui/data-table-body.md +1 -1
  387. package/docs/components/ui/data-table-bulk-actions.md +1 -1
  388. package/docs/components/ui/data-table-card.md +1 -1
  389. package/docs/components/ui/data-table-context.md +1 -1
  390. package/docs/components/ui/data-table-header.md +1 -1
  391. package/docs/components/ui/data-table-pagination.md +1 -1
  392. package/docs/components/ui/data-table-toolbar.md +44 -44
  393. package/docs/components/ui/data-table.md +94 -94
  394. package/docs/components/ui/dialog.md +54 -54
  395. package/docs/components/ui/dropdown-menu.md +48 -48
  396. package/docs/components/ui/file-upload.md +41 -41
  397. package/docs/components/ui/form.md +51 -51
  398. package/docs/components/ui/hover-card.md +32 -32
  399. package/docs/components/ui/icon-button.md +40 -40
  400. package/docs/components/ui/input-otp.md +44 -44
  401. package/docs/components/ui/input.md +74 -74
  402. package/docs/components/ui/label.md +25 -25
  403. package/docs/components/ui/link.md +29 -29
  404. package/docs/components/ui/menubar.md +44 -44
  405. package/docs/components/ui/navigation-menu.md +46 -46
  406. package/docs/components/ui/number-input.md +44 -44
  407. package/docs/components/ui/pagination.md +48 -48
  408. package/docs/components/ui/popover.md +30 -30
  409. package/docs/components/ui/progress-ring.md +41 -41
  410. package/docs/components/ui/progress.md +34 -34
  411. package/docs/components/ui/radio.md +34 -34
  412. package/docs/components/ui/search-input.md +43 -43
  413. package/docs/components/ui/segmented-control.md +50 -50
  414. package/docs/components/ui/select.md +53 -53
  415. package/docs/components/ui/separator.md +32 -32
  416. package/docs/components/ui/sheet.md +47 -47
  417. package/docs/components/ui/sidebar.md +72 -72
  418. package/docs/components/ui/skeleton.md +77 -77
  419. package/docs/components/ui/slider.md +29 -29
  420. package/docs/components/ui/spinner.md +54 -54
  421. package/docs/components/ui/stack.md +39 -39
  422. package/docs/components/ui/stat-card.md +61 -61
  423. package/docs/components/ui/status-dot.md +26 -26
  424. package/docs/components/ui/stepper.md +49 -49
  425. package/docs/components/ui/switch.md +47 -47
  426. package/docs/components/ui/table.md +47 -47
  427. package/docs/components/ui/tabs.md +60 -60
  428. package/docs/components/ui/text.md +37 -37
  429. package/docs/components/ui/textarea.md +39 -39
  430. package/docs/components/ui/toast.md +65 -65
  431. package/docs/components/ui/toaster.md +47 -47
  432. package/docs/components/ui/toggle-group.md +43 -43
  433. package/docs/components/ui/toggle.md +37 -37
  434. package/docs/components/ui/tooltip.md +38 -38
  435. package/docs/components/ui/tree-view.md +65 -65
  436. package/docs/components/ui/visually-hidden.md +21 -21
  437. package/llms-full.txt +5266 -5264
  438. package/llms.txt +624 -580
  439. package/package.json +7 -8
@@ -1,93 +1,94 @@
1
- # Button
2
-
3
- - Import: @devalok/shilp-sutra/ui/button
4
- - Server-safe: No
5
- - Category: ui
6
-
7
- ## Props
8
- variant: "solid" | "soft" | "outline" | "ghost" | "link" | "default" (alias->solid) | "destructive" (alias->solid+error)
9
- color: "accent" | "error" | "success" | "warning" | "neutral" | "default" (alias->accent)
10
- size: "xs" | "sm" | "md" | "lg" | "compact-xs" | "compact-sm" | "compact-md" | "icon" | "icon-xs" | "icon-sm" | "icon-md" | "icon-lg"
11
- weight: "semibold" | "normal"
12
- shape: "default" | "pill"
13
- startIcon: ReactElement (use <Icon icon={...} />) | null
14
- endIcon: ReactElement (use <Icon icon={...} />) | null
15
- loading: boolean (disables button, shows spinner)
16
- loadingPosition: "start" | "end" | "center" (default: "start")
17
- fullWidth: boolean
18
- asChild: boolean
19
- processing: boolean | 'ambient' | 'working' | 'urgent' (marching ants SVG border)
20
- processingColor: 'accent' | 'error' | 'success' | 'warning' | 'neutral' (override animation color)
21
- processingDisabled: boolean (disable button during processing, default: true)
22
- onClickAsync: (e: MouseEvent) => Promise<void> (auto loading->success/error->idle, auto-activates processing)
23
- asyncFeedbackDuration: number (ms, default 1500)
24
-
25
- ## Defaults
26
- variant="solid", color="accent", weight="semibold", size="md", shape="default"
27
-
28
- ## Example
29
- ```jsx
30
- <Button variant="solid" color="error" startIcon={<Icon icon={IconTrash} />} loading={isDeleting}>
31
- Delete project
32
- </Button>
33
- <Button variant="soft" color="success" startIcon={<Icon icon={IconCheck} />}>Approved</Button>
34
- <Button variant="soft" color="warning" size="compact-sm" shape="pill">Overdue</Button>
35
- ```
36
-
37
- ## Gotchas
38
- - DO NOT use variant="destructive" use variant="solid" color="error"
39
- - DO NOT use variant="secondary" — use variant="outline" or variant="ghost"
40
- - DO NOT use size="default" — use size="md"
41
- - DO NOT use color="danger" or color="default" — use color="error" or color="accent"
42
- - startIcon/endIcon now expect `<Icon icon={...} />` wrapper, not bare icon components
43
- - Inherits variant/color/size/weight/shape from ButtonGroup context if present
44
- - onClickAsync overrides onClick and loading when active; also auto-activates processing='working' during loading phase
45
- - processing forces soft variant so marching ants pop against the background
46
- - processingDisabled=true (default) makes button aria-disabled and pointer-events-none during processing
47
- - Grain children (DevalokGrain) are auto-separated and rendered as direct button children for absolute positioning
48
-
49
- ## Changes
50
- ### v0.33.0
51
- - **Added** `disabled` inherited from ButtonGroup context
52
- - **Added** Position-aware border-radius when inside an attached ButtonGroup (compound component pattern)
53
-
54
- ### v0.29.0
55
- - **Added** `soft` variant — tinted background, colored text (new middle ground between solid and ghost)
56
- - **Added** 5 color options: `accent` (default), `error`, `success`, `warning`, `neutral` (replaces old `default`/`error`-only axis)
57
- - **Added** `shape` prop: `"default"` | `"pill"` (rounded-full with extra horizontal padding)
58
- - **Added** compact sizes: `compact-xs`, `compact-sm`, `compact-md` (height-less inline buttons)
59
- - **Added** `xs` size and `icon-xs` size
60
- - **Added** `weight` prop: `"semibold"` (default) | `"normal"` for lighter labels
61
- - **Changed** `startIcon`/`endIcon` now accept `<Icon icon={...} />` wrapper (auto-sized via IconProvider context per button size)
62
- - **Changed** Default color is now `"accent"` (was `"default"`)
63
- - **Changed** Solid hover adds tinted shadows per color (e.g., `hover:shadow-brand`, `hover:shadow-error`)
64
- - **Changed** Icon slots get negative-margin inset to tighten padding against button edges
65
- - **Added** DevalokGrain support grain children are auto-separated and rendered for texture overlays
66
- - **Added** `processing` propmarching ants SVG border while content stays visible (`"ambient"` (3s) | `"working"` (2s) | `"urgent"` (1s) | boolean). Forces soft variant so ants pop.
67
- - **Added** `processingColor` — override processing animation color independently of button color
68
- - **Added** `processingDisabled` — disable button during processing (default: true). Set false for cancel-by-click patterns.
69
- - **Added** Auto-processing during `onClickAsync` — loading phase auto-activates `processing='working'` when no explicit `processing` prop is set
70
- - **Added** Always-on layout animationsmooth width/height transitions via Framer Motion FLIP
71
-
72
- ### v0.22.0
73
- - **Changed** Active/pressed scale from `0.97` to `0.95` for snappier press feedback.
74
- - **Fixed** Ghost/outline hover not fading — `transition-transform` in base overrode `transition-colors` from variant. Combined into single `transition-[color,background-color,border-color,box-shadow,transform]`.
75
- - **Added** `disabled:cursor-not-allowed` to button base (was missing).
76
-
77
- ### v0.18.0
78
- - **Added** `onClickAsync` prop — promise-driven loading -> success/error state machine
79
- - **Added** `asyncFeedbackDuration` prop (default 1500ms)
80
- - **Changed** whileTap scale animation added via Framer Motion
81
- - **Fixed** Async feedback colors `bg-success text-text-on-color` changed to `bg-success-9 text-accent-fg`
82
- - **Fixed** `onClickAsync` added `isMountedRef` guard to prevent set-state-after-unmount
83
-
84
- ### v0.4.2
85
- - **Fixed** `Omit<HTMLAttributes, 'color'>` resolves TS2320 conflict with CVA color prop
86
- - **Fixed** `className` was passed inside `buttonVariants()` (silently dropped by CVA) now separate `cn()` argument
87
-
88
- ### v0.3.0
89
- - **Changed** (BREAKING) `variant="primary"` renamed to `variant="solid"`, `variant="secondary"` renamed to `variant="outline"`, `variant="error"` moved to `color="error"`
90
- - **Fixed** All dismiss/close buttons now meet WCAG 2.5.8 minimum 24px touch target
91
-
92
- ### v0.1.0
93
- - **Added** Initial release
1
+ # Button
2
+
3
+ - Import: @devalok/shilp-sutra/ui/button
4
+ - Server-safe: No
5
+ - Category: ui
6
+
7
+ ## Props
8
+ variant: "solid" | "soft" | "outline" | "ghost" | "link"
9
+ color: "accent" | "error" | "success" | "warning" | "neutral"
10
+ size: "xs" | "sm" | "md" | "lg" | "compact-xs" | "compact-sm" | "compact-md" | "icon" | "icon-xs" | "icon-sm" | "icon-md" | "icon-lg"
11
+ weight: "semibold" | "normal"
12
+ shape: "default" | "pill"
13
+ startIcon: ReactElement (use <Icon icon={...} />) | null
14
+ endIcon: ReactElement (use <Icon icon={...} />) | null
15
+ loading: boolean (disables button, shows spinner)
16
+ loadingPosition: "start" | "end" | "center" (default: "start")
17
+ fullWidth: boolean
18
+ asChild: boolean
19
+ processing: boolean | 'ambient' | 'working' | 'urgent' (marching ants SVG border)
20
+ processingColor: 'accent' | 'error' | 'success' | 'warning' | 'neutral' (override animation color)
21
+ processingDisabled: boolean (disable button during processing, default: true)
22
+ onClickAsync: (e: MouseEvent) => Promise<void> (auto loading->success/error->idle, auto-activates processing)
23
+ asyncFeedbackDuration: number (ms, default 1500)
24
+
25
+ ## Defaults
26
+ variant="solid", color="accent", weight="semibold", size="md", shape="default"
27
+
28
+ ## Example
29
+ ```jsx
30
+ <Button variant="solid" color="error" startIcon={<Icon icon={IconTrash} />} loading={isDeleting}>
31
+ Delete project
32
+ </Button>
33
+ <Button variant="soft" color="success" startIcon={<Icon icon={IconCheck} />}>Approved</Button>
34
+ <Button variant="soft" color="warning" size="compact-sm" shape="pill">Overdue</Button>
35
+ ```
36
+
37
+ ## Gotchas
38
+ - **Prefer `variant="soft"` over `variant="outline"` for secondary actions.** Soft (tinted step-3 bg, step-11 text) is the Devalok-recommended default — it feels warmer and brand-consistent. Use `outline` only when soft's tint would disappear (on colored/surface-raised bg), in toolbar/icon-dense contexts, or when you need outline's stronger hierarchy next to a primary action.
39
+ - DO NOT use variant="destructive" — use variant="solid" color="error"
40
+ - DO NOT use variant="secondary" — use variant="soft" (preferred) or variant="ghost"
41
+ - DO NOT use size="default" — use size="md"
42
+ - DO NOT use color="danger" or color="default" use color="error" or color="accent"
43
+ - startIcon/endIcon now expect `<Icon icon={...} />` wrapper, not bare icon components
44
+ - Inherits variant/color/size/weight/shape from ButtonGroup context if present
45
+ - onClickAsync overrides onClick and loading when active; also auto-activates processing='working' during loading phase
46
+ - processing forces soft variant so marching ants pop against the background
47
+ - processingDisabled=true (default) makes button aria-disabled and pointer-events-none during processing
48
+ - Grain children (DevalokGrain) are auto-separated and rendered as direct button children for absolute positioning
49
+
50
+ ## Changes
51
+ ### v0.33.0
52
+ - **Added** `disabled` inherited from ButtonGroup context
53
+ - **Added** Position-aware border-radius when inside an attached ButtonGroup (compound component pattern)
54
+
55
+ ### v0.29.0
56
+ - **Added** `soft` variant tinted background, colored text (new middle ground between solid and ghost)
57
+ - **Added** 5 color options: `accent` (default), `error`, `success`, `warning`, `neutral` (replaces old `default`/`error`-only axis)
58
+ - **Added** `shape` prop: `"default"` | `"pill"` (rounded-full with extra horizontal padding)
59
+ - **Added** compact sizes: `compact-xs`, `compact-sm`, `compact-md` (height-less inline buttons)
60
+ - **Added** `xs` size and `icon-xs` size
61
+ - **Added** `weight` prop: `"semibold"` (default) | `"normal"` for lighter labels
62
+ - **Changed** `startIcon`/`endIcon` now accept `<Icon icon={...} />` wrapper (auto-sized via IconProvider context per button size)
63
+ - **Changed** Default color is now `"accent"` (was `"default"`)
64
+ - **Changed** Solid hover adds tinted shadows per color (e.g., `hover:shadow-brand`, `hover:shadow-error`)
65
+ - **Changed** Icon slots get negative-margin inset to tighten padding against button edges
66
+ - **Added** DevalokGrain supportgrain children are auto-separated and rendered for texture overlays
67
+ - **Added** `processing` prop marching ants SVG border while content stays visible (`"ambient"` (3s) | `"working"` (2s) | `"urgent"` (1s) | boolean). Forces soft variant so ants pop.
68
+ - **Added** `processingColor` — override processing animation color independently of button color
69
+ - **Added** `processingDisabled` — disable button during processing (default: true). Set false for cancel-by-click patterns.
70
+ - **Added** Auto-processing during `onClickAsync`loading phase auto-activates `processing='working'` when no explicit `processing` prop is set
71
+ - **Added** Always-on layout animation — smooth width/height transitions via Framer Motion FLIP
72
+
73
+ ### v0.22.0
74
+ - **Changed** Active/pressed scale from `0.97` to `0.95` for snappier press feedback.
75
+ - **Fixed** Ghost/outline hover not fading — `transition-transform` in base overrode `transition-colors` from variant. Combined into single `transition-[color,background-color,border-color,box-shadow,transform]`.
76
+ - **Added** `disabled:cursor-not-allowed` to button base (was missing).
77
+
78
+ ### v0.18.0
79
+ - **Added** `onClickAsync` prop promise-driven loading -> success/error state machine
80
+ - **Added** `asyncFeedbackDuration` prop (default 1500ms)
81
+ - **Changed** whileTap scale animation added via Framer Motion
82
+ - **Fixed** Async feedback colors — `bg-success text-text-on-color` changed to `bg-success-9 text-accent-fg`
83
+ - **Fixed** `onClickAsync` added `isMountedRef` guard to prevent set-state-after-unmount
84
+
85
+ ### v0.4.2
86
+ - **Fixed** `Omit<HTMLAttributes, 'color'>` resolves TS2320 conflict with CVA color prop
87
+ - **Fixed** `className` was passed inside `buttonVariants()` (silently dropped by CVA) — now separate `cn()` argument
88
+
89
+ ### v0.3.0
90
+ - **Changed** (BREAKING) `variant="primary"` renamed to `variant="solid"`, `variant="secondary"` renamed to `variant="outline"`, `variant="error"` moved to `color="error"`
91
+ - **Fixed** All dismiss/close buttons now meet WCAG 2.5.8 minimum 24px touch target
92
+
93
+ ### v0.1.0
94
+ - **Added** Initial release
@@ -1,52 +1,52 @@
1
- # Card
2
-
3
- - Import: @devalok/shilp-sutra/ui/card
4
- - Server-safe: No
5
- - Category: ui
6
-
7
- ## Props
8
- variant: "default" | "elevated" | "outline" | "flat"
9
- interactive: boolean (enables hover shadow lift + pointer cursor)
10
-
11
- ## Compound Components
12
- Card (root)
13
- CardHeader
14
- CardTitle
15
- CardDescription
16
- CardContent
17
- CardFooter
18
-
19
- ## Defaults
20
- variant="default"
21
-
22
- ## Example
23
- ```jsx
24
- <Card variant="elevated" interactive onClick={() => navigate(url)}>
25
- <CardHeader>
26
- <CardTitle>Project</CardTitle>
27
- <CardDescription>Last updated 2h ago</CardDescription>
28
- </CardHeader>
29
- <CardContent><p>Content here</p></CardContent>
30
- </Card>
31
- ```
32
-
33
- ## Gotchas
34
- - Use `interactive` prop for clickable cards — adds hover lift and pointer cursor
35
-
36
- ## Changes
37
- ### v0.31.0
38
- - **Added** `color` prop: semantic border color (accent, error, success, warning, info, neutral)
39
- - **Added** `size` prop: `sm | md | lg` — padding propagated to sub-components via React context
40
-
41
- ### v0.18.0
42
- - **Changed** Interactive card hover lift animation migrated to Framer Motion
43
-
44
- ### v0.4.2
45
- - **Changed** (BREAKING) `variant="outlined"` renamed to `variant="outline"`
46
- - **Added** `cardVariants` export
47
-
48
- ### v0.1.1
49
- - **Fixed** `leading-none tracking-tight` changed to `leading-ds-none tracking-ds-tight` for token compliance
50
-
51
- ### v0.1.0
52
- - **Added** Initial release
1
+ # Card
2
+
3
+ - Import: @devalok/shilp-sutra/ui/card
4
+ - Server-safe: No
5
+ - Category: ui
6
+
7
+ ## Props
8
+ variant: "default" | "elevated" | "outline" | "flat"
9
+ interactive: boolean (enables hover shadow lift + pointer cursor)
10
+
11
+ ## Compound Components
12
+ Card (root)
13
+ CardHeader
14
+ CardTitle
15
+ CardDescription
16
+ CardContent
17
+ CardFooter
18
+
19
+ ## Defaults
20
+ variant="default"
21
+
22
+ ## Example
23
+ ```jsx
24
+ <Card variant="elevated" interactive onClick={() => navigate(url)}>
25
+ <CardHeader>
26
+ <CardTitle>Project</CardTitle>
27
+ <CardDescription>Last updated 2h ago</CardDescription>
28
+ </CardHeader>
29
+ <CardContent><p>Content here</p></CardContent>
30
+ </Card>
31
+ ```
32
+
33
+ ## Gotchas
34
+ - Use `interactive` prop for clickable cards — adds hover lift and pointer cursor
35
+
36
+ ## Changes
37
+ ### v0.31.0
38
+ - **Added** `color` prop: semantic border color (accent, error, success, warning, info, neutral)
39
+ - **Added** `size` prop: `sm | md | lg` — padding propagated to sub-components via React context
40
+
41
+ ### v0.18.0
42
+ - **Changed** Interactive card hover lift animation migrated to Framer Motion
43
+
44
+ ### v0.4.2
45
+ - **Changed** (BREAKING) `variant="outlined"` renamed to `variant="outline"`
46
+ - **Added** `cardVariants` export
47
+
48
+ ### v0.1.1
49
+ - **Fixed** `leading-none tracking-tight` changed to `leading-ds-none tracking-ds-tight` for token compliance
50
+
51
+ ### v0.1.0
52
+ - **Added** Initial release
@@ -1,43 +1,43 @@
1
- # Charts
2
-
3
- - Import: @devalok/shilp-sutra/ui/charts
4
- - Server-safe: No
5
- - Category: ui
6
-
7
- ## Props
8
- Charts is a collection of chart components. Each accepts data-specific props.
9
-
10
- Exported components:
11
- ChartContainer — wrapper with responsive sizing
12
- BarChart
13
- LineChart
14
- AreaChart
15
- PieChart
16
- Sparkline
17
- GaugeChart
18
- RadarChart
19
- Legend — chart legend with LegendItem[]
20
-
21
- ## Defaults
22
- none
23
-
24
- ## Example
25
- ```jsx
26
- import { BarChart } from '@devalok/shilp-sutra/ui/charts'
27
-
28
- <BarChart data={salesData} />
29
- ```
30
-
31
- ## Gotchas
32
- - Barrel-isolated since v0.5.0 — must use `@devalok/shilp-sutra/ui/charts`, NOT the `ui` barrel
33
- - Requires D3 as an optional peer dependency
34
-
35
- ## Changes
36
- ### v0.18.0
37
- - **Changed** All 8 chart types migrated to Framer Motion entrance animations
38
-
39
- ### v0.5.0
40
- - **Changed** (BREAKING) All chart components removed from `@devalok/shilp-sutra/ui` barrel export. Must use `@devalok/shilp-sutra/ui/charts` import path.
41
-
42
- ### v0.1.0
43
- - **Added** Initial release
1
+ # Charts
2
+
3
+ - Import: @devalok/shilp-sutra/ui/charts
4
+ - Server-safe: No
5
+ - Category: ui
6
+
7
+ ## Props
8
+ Charts is a collection of chart components. Each accepts data-specific props.
9
+
10
+ Exported components:
11
+ ChartContainer — wrapper with responsive sizing
12
+ BarChart
13
+ LineChart
14
+ AreaChart
15
+ PieChart
16
+ Sparkline
17
+ GaugeChart
18
+ RadarChart
19
+ Legend — chart legend with LegendItem[]
20
+
21
+ ## Defaults
22
+ none
23
+
24
+ ## Example
25
+ ```jsx
26
+ import { BarChart } from '@devalok/shilp-sutra/ui/charts'
27
+
28
+ <BarChart data={salesData} />
29
+ ```
30
+
31
+ ## Gotchas
32
+ - Barrel-isolated since v0.5.0 — must use `@devalok/shilp-sutra/ui/charts`, NOT the `ui` barrel
33
+ - Requires D3 as an optional peer dependency
34
+
35
+ ## Changes
36
+ ### v0.18.0
37
+ - **Changed** All 8 chart types migrated to Framer Motion entrance animations
38
+
39
+ ### v0.5.0
40
+ - **Changed** (BREAKING) All chart components removed from `@devalok/shilp-sutra/ui` barrel export. Must use `@devalok/shilp-sutra/ui/charts` import path.
41
+
42
+ ### v0.1.0
43
+ - **Added** Initial release
@@ -1,36 +1,36 @@
1
- # Checkbox
2
-
3
- - Import: @devalok/shilp-sutra/ui/checkbox
4
- - Server-safe: No
5
- - Category: ui
6
-
7
- ## Props
8
- checked: boolean | "indeterminate"
9
- onCheckedChange: (checked: boolean | "indeterminate") => void
10
- error: boolean (shows red border)
11
- indeterminate: boolean (overrides checked, shows dash icon)
12
- disabled: boolean
13
-
14
- ## Defaults
15
- none
16
-
17
- ## Example
18
- ```jsx
19
- <Checkbox checked={agreed} onCheckedChange={(v) => setAgreed(v === true)} />
20
- ```
21
-
22
- ## Gotchas
23
- - indeterminate overrides checked visually
24
-
25
- ## Changes
26
- ### v0.22.0
27
- - **Changed** Check indicator animation from scale-bounce to path-draw (stroke draws progressively). Indeterminate dash also draws in.
28
- - **Fixed** Uncontrolled checkbox never showed checkmark — `checked` from props was `undefined`, so `isActive` was always `false`. Now tracks internal state.
29
- - **Added** Hover state on unchecked checkbox (subtle background highlight).
30
-
31
- ### v0.18.0
32
- - **Changed** Bouncy check indicator animation migrated to Framer Motion
33
- - **Fixed** Icon sizing uses design tokens consistently
34
-
35
- ### v0.1.0
36
- - **Added** Initial release
1
+ # Checkbox
2
+
3
+ - Import: @devalok/shilp-sutra/ui/checkbox
4
+ - Server-safe: No
5
+ - Category: ui
6
+
7
+ ## Props
8
+ checked: boolean | "indeterminate"
9
+ onCheckedChange: (checked: boolean | "indeterminate") => void
10
+ error: boolean (shows red border)
11
+ indeterminate: boolean (overrides checked, shows dash icon)
12
+ disabled: boolean
13
+
14
+ ## Defaults
15
+ none
16
+
17
+ ## Example
18
+ ```jsx
19
+ <Checkbox checked={agreed} onCheckedChange={(v) => setAgreed(v === true)} />
20
+ ```
21
+
22
+ ## Gotchas
23
+ - indeterminate overrides checked visually
24
+
25
+ ## Changes
26
+ ### v0.22.0
27
+ - **Changed** Check indicator animation from scale-bounce to path-draw (stroke draws progressively). Indeterminate dash also draws in.
28
+ - **Fixed** Uncontrolled checkbox never showed checkmark — `checked` from props was `undefined`, so `isActive` was always `false`. Now tracks internal state.
29
+ - **Added** Hover state on unchecked checkbox (subtle background highlight).
30
+
31
+ ### v0.18.0
32
+ - **Changed** Bouncy check indicator animation migrated to Framer Motion
33
+ - **Fixed** Icon sizing uses design tokens consistently
34
+
35
+ ### v0.1.0
36
+ - **Added** Initial release
@@ -1,47 +1,47 @@
1
- # Chip
2
-
3
- - Import: @devalok/shilp-sutra/ui/chip
4
- - Server-safe: No
5
- - Category: ui
6
-
7
- ## Props
8
- label: string (REQUIRED — use this, NOT children)
9
- variant: "subtle" | "outline"
10
- color: "default" | "primary" | "success" | "error" | "warning" | "info" | "teal" | "amber" | "slate" | "indigo" | "cyan" | "orange" | "emerald"
11
- size: "sm" | "md" | "lg"
12
- icon: ReactNode
13
- onClick: MouseEventHandler (renders as <button> when provided)
14
- onDismiss: () => void (shows X button)
15
- disabled: boolean
16
-
17
- ## Defaults
18
- variant="subtle", size="md", color="default"
19
-
20
- ## Example
21
- ```jsx
22
- <Chip label="In Progress" color="warning" />
23
- <Chip label="React" color="info" onDismiss={() => removeFilter('react')} />
24
- ```
25
-
26
- ## Additional Exports
27
- ChipGroup — re-exported AnimatePresence from framer-motion; wrap a list of Chips for coordinated exit animations
28
-
29
- ## Gotchas
30
- - MUST use label prop — children are NOT rendered
31
- - `<Chip>text</Chip>` is WRONG — use `<Chip label="text" />`
32
- - Wrap dynamic chip lists in `<ChipGroup>` for exit animations
33
- - `color="primary"` will be renamed to `color="brand"` in v1.0 — use `color="primary"` for now
34
-
35
- ## Changes
36
- ### v0.19.1
37
- - **Fixed** `active:scale-95` tap feedback broken by Framer Motion transform override — replaced with `whileTap={{ scale: 0.95 }}`
38
-
39
- ### v0.4.2
40
- - **Changed** (BREAKING) `variant="filled"` renamed to `"subtle"`, `variant="outlined"` renamed to `"outline"`, `onDelete` renamed to `onDismiss`
41
-
42
- ### v0.1.1
43
- - **Fixed** `opacity-[var(--action-disabled-opacity,0.38)]` replaced with `opacity-action-disabled`
44
- - **Fixed** Converted from `React.createElement` to JSX syntax
45
-
46
- ### v0.1.0
47
- - **Added** Initial release
1
+ # Chip
2
+
3
+ - Import: @devalok/shilp-sutra/ui/chip
4
+ - Server-safe: No
5
+ - Category: ui
6
+
7
+ ## Props
8
+ label: string (REQUIRED — use this, NOT children)
9
+ variant: "subtle" | "outline"
10
+ color: "default" | "primary" | "success" | "error" | "warning" | "info" | "teal" | "amber" | "slate" | "indigo" | "cyan" | "orange" | "emerald"
11
+ size: "sm" | "md" | "lg"
12
+ icon: ReactNode
13
+ onClick: MouseEventHandler (renders as <button> when provided)
14
+ onDismiss: () => void (shows X button)
15
+ disabled: boolean
16
+
17
+ ## Defaults
18
+ variant="subtle", size="md", color="default"
19
+
20
+ ## Example
21
+ ```jsx
22
+ <Chip label="In Progress" color="warning" />
23
+ <Chip label="React" color="info" onDismiss={() => removeFilter('react')} />
24
+ ```
25
+
26
+ ## Additional Exports
27
+ ChipGroup — re-exported AnimatePresence from framer-motion; wrap a list of Chips for coordinated exit animations
28
+
29
+ ## Gotchas
30
+ - MUST use label prop — children are NOT rendered
31
+ - `<Chip>text</Chip>` is WRONG — use `<Chip label="text" />`
32
+ - Wrap dynamic chip lists in `<ChipGroup>` for exit animations
33
+ - `color="primary"` will be renamed to `color="brand"` in v1.0 — use `color="primary"` for now
34
+
35
+ ## Changes
36
+ ### v0.19.1
37
+ - **Fixed** `active:scale-95` tap feedback broken by Framer Motion transform override — replaced with `whileTap={{ scale: 0.95 }}`
38
+
39
+ ### v0.4.2
40
+ - **Changed** (BREAKING) `variant="filled"` renamed to `"subtle"`, `variant="outlined"` renamed to `"outline"`, `onDelete` renamed to `onDismiss`
41
+
42
+ ### v0.1.1
43
+ - **Fixed** `opacity-[var(--action-disabled-opacity,0.38)]` replaced with `opacity-action-disabled`
44
+ - **Fixed** Converted from `React.createElement` to JSX syntax
45
+
46
+ ### v0.1.0
47
+ - **Added** Initial release
@@ -1,28 +1,28 @@
1
- # Code
2
-
3
- - Import: @devalok/shilp-sutra/ui/code
4
- - Server-safe: Yes
5
- - Category: ui
6
-
7
- ## Props
8
- variant: "inline" | "block"
9
- children: ReactNode
10
-
11
- ## Defaults
12
- variant="inline"
13
-
14
- ## Example
15
- ```jsx
16
- <Code>onClick</Code>
17
- <Code variant="block">{`const x = 1;\nconsole.log(x);`}</Code>
18
- ```
19
-
20
- ## Gotchas
21
- - "block" renders as `<pre><code>`, "inline" renders as `<code>`
22
-
23
- ## Changes
24
- ### v0.1.1
25
- - **Fixed** `leading-[150%]` replaced with `leading-ds-relaxed` for token compliance
26
-
27
- ### v0.1.0
28
- - **Added** Initial release
1
+ # Code
2
+
3
+ - Import: @devalok/shilp-sutra/ui/code
4
+ - Server-safe: Yes
5
+ - Category: ui
6
+
7
+ ## Props
8
+ variant: "inline" | "block"
9
+ children: ReactNode
10
+
11
+ ## Defaults
12
+ variant="inline"
13
+
14
+ ## Example
15
+ ```jsx
16
+ <Code>onClick</Code>
17
+ <Code variant="block">{`const x = 1;\nconsole.log(x);`}</Code>
18
+ ```
19
+
20
+ ## Gotchas
21
+ - "block" renders as `<pre><code>`, "inline" renders as `<code>`
22
+
23
+ ## Changes
24
+ ### v0.1.1
25
+ - **Fixed** `leading-[150%]` replaced with `leading-ds-relaxed` for token compliance
26
+
27
+ ### v0.1.0
28
+ - **Added** Initial release