@devalok/shilp-sutra 0.53.0 → 0.55.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 (429) hide show
  1. package/AGENTS.md +7 -1
  2. package/BREAKING.json +29 -0
  3. package/MIGRATION.md +83 -0
  4. package/dist/_chunks/badge-group.js +1 -1
  5. package/dist/_chunks/popover.js +38 -37
  6. package/dist/_chunks/popover.js.map +1 -1
  7. package/dist/_chunks/primitives/react-accordion.js +270 -0
  8. package/dist/_chunks/primitives/react-accordion.js.map +1 -0
  9. package/dist/_chunks/primitives/react-alert-dialog.js +857 -0
  10. package/dist/_chunks/primitives/react-alert-dialog.js.map +1 -0
  11. package/dist/_chunks/primitives/react-aspect-ratio.js +32 -0
  12. package/dist/_chunks/primitives/react-aspect-ratio.js.map +1 -0
  13. package/dist/_chunks/primitives/react-avatar.js +69 -0
  14. package/dist/_chunks/primitives/react-avatar.js.map +1 -0
  15. package/dist/_chunks/primitives/react-checkbox.js +151 -0
  16. package/dist/_chunks/primitives/react-checkbox.js.map +1 -0
  17. package/dist/_chunks/primitives/react-context-menu.js +905 -0
  18. package/dist/_chunks/primitives/react-context-menu.js.map +1 -0
  19. package/dist/_chunks/primitives/react-dropdown-menu.js +220 -0
  20. package/dist/_chunks/primitives/react-dropdown-menu.js.map +1 -0
  21. package/dist/_chunks/primitives/react-hover-card.js +153 -0
  22. package/dist/_chunks/primitives/react-hover-card.js.map +1 -0
  23. package/dist/_chunks/primitives/react-label.js +16 -0
  24. package/dist/_chunks/primitives/react-label.js.map +1 -0
  25. package/dist/_chunks/primitives/react-menubar.js +304 -0
  26. package/dist/_chunks/primitives/react-menubar.js.map +1 -0
  27. package/dist/_chunks/primitives/react-navigation-menu.js +560 -0
  28. package/dist/_chunks/primitives/react-navigation-menu.js.map +1 -0
  29. package/dist/_chunks/primitives/react-popover.js +186 -0
  30. package/dist/_chunks/primitives/react-popover.js.map +1 -0
  31. package/dist/_chunks/primitives/react-progress.js +70 -0
  32. package/dist/_chunks/primitives/react-progress.js.map +1 -0
  33. package/dist/_chunks/primitives/react-radio-group.js +170 -0
  34. package/dist/_chunks/primitives/react-radio-group.js.map +1 -0
  35. package/dist/_chunks/primitives/react-select.js +671 -0
  36. package/dist/_chunks/primitives/react-select.js.map +1 -0
  37. package/dist/_chunks/primitives/react-separator.js +24 -0
  38. package/dist/_chunks/primitives/react-separator.js.map +1 -0
  39. package/dist/_chunks/primitives/react-slider.js +349 -0
  40. package/dist/_chunks/primitives/react-slider.js.map +1 -0
  41. package/dist/_chunks/primitives/react-switch.js +92 -0
  42. package/dist/_chunks/primitives/react-switch.js.map +1 -0
  43. package/dist/_chunks/primitives/react-tabs.js +114 -0
  44. package/dist/_chunks/primitives/react-tabs.js.map +1 -0
  45. package/dist/_chunks/primitives/react-toggle-group.js +122 -0
  46. package/dist/_chunks/primitives/react-toggle-group.js.map +1 -0
  47. package/dist/_chunks/primitives/react-toggle.js +28 -0
  48. package/dist/_chunks/primitives/react-toggle.js.map +1 -0
  49. package/dist/_chunks/primitives/react-tooltip.js +341 -0
  50. package/dist/_chunks/primitives/react-tooltip.js.map +1 -0
  51. package/dist/_chunks/primitives-internal.js +2071 -0
  52. package/dist/_chunks/primitives-internal.js.map +1 -0
  53. package/dist/_chunks/shared.js +32 -32
  54. package/dist/_chunks/tiptap.js +1 -1
  55. package/dist/ai/ai-command-provider.d.ts +2 -3
  56. package/dist/ai/block-renderer.d.ts +1 -2
  57. package/dist/ai/blocks/block-shell.d.ts +0 -1
  58. package/dist/ai/blocks/block-table.d.ts +1 -2
  59. package/dist/ai/blocks/confirm.d.ts +1 -2
  60. package/dist/ai/blocks/divider.d.ts +1 -2
  61. package/dist/ai/blocks/error.d.ts +1 -2
  62. package/dist/ai/blocks/index.d.ts +7 -8
  63. package/dist/ai/blocks/info.d.ts +1 -2
  64. package/dist/ai/blocks/loading.d.ts +1 -2
  65. package/dist/ai/blocks/stat-row.d.ts +1 -2
  66. package/dist/ai/blocks/success.d.ts +1 -2
  67. package/dist/ai/blocks/text.d.ts +1 -2
  68. package/dist/ai/command-bar.d.ts +1 -2
  69. package/dist/ai/conversation.d.ts +2 -3
  70. package/dist/ai/devadoot-icon.d.ts +0 -1
  71. package/dist/ai/index.d.ts +16 -17
  72. package/dist/ai/types.js +1 -0
  73. package/dist/composed/activity-feed.d.ts +1 -2
  74. package/dist/composed/avatar-group.d.ts +11 -10
  75. package/dist/composed/avatar-group.d.ts.map +1 -1
  76. package/dist/composed/avatar-group.js +108 -140
  77. package/dist/composed/avatar-group.js.map +1 -1
  78. package/dist/composed/bulk-action-bar.d.ts +20 -13
  79. package/dist/composed/bulk-action-bar.d.ts.map +1 -1
  80. package/dist/composed/bulk-action-bar.js +81 -110
  81. package/dist/composed/bulk-action-bar.js.map +1 -1
  82. package/dist/composed/command-palette.d.ts +1 -2
  83. package/dist/composed/confirm-dialog.d.ts +0 -1
  84. package/dist/composed/date-picker/calendar-grid.d.ts +0 -1
  85. package/dist/composed/date-picker/date-picker.d.ts +0 -1
  86. package/dist/composed/date-picker/date-range-picker.d.ts +1 -2
  87. package/dist/composed/date-picker/date-time-picker.d.ts +0 -1
  88. package/dist/composed/date-picker/index.d.ts +17 -18
  89. package/dist/composed/date-picker/month-picker.d.ts +0 -1
  90. package/dist/composed/date-picker/presets.d.ts +0 -1
  91. package/dist/composed/date-picker/time-picker.d.ts +0 -1
  92. package/dist/composed/date-picker/use-calendar.d.ts +0 -1
  93. package/dist/composed/date-picker/year-picker.d.ts +0 -1
  94. package/dist/composed/deadline-indicator.d.ts +0 -1
  95. package/dist/composed/diff.d.ts +0 -1
  96. package/dist/composed/emoji-picker.d.ts +0 -1
  97. package/dist/composed/empty-state.d.ts +1 -2
  98. package/dist/composed/error-boundary.d.ts +15 -4
  99. package/dist/composed/error-boundary.d.ts.map +1 -1
  100. package/dist/composed/error-boundary.js +43 -26
  101. package/dist/composed/error-boundary.js.map +1 -1
  102. package/dist/composed/extensions/emoji-data.d.ts +0 -1
  103. package/dist/composed/extensions/emoji-node.d.ts +0 -1
  104. package/dist/composed/extensions/emoji-suggestion.d.ts +1 -2
  105. package/dist/composed/extensions/file-attachment.d.ts +0 -1
  106. package/dist/composed/extensions/mention-suggestion.d.ts +1 -2
  107. package/dist/composed/extensions/slash-command.d.ts +0 -1
  108. package/dist/composed/file-preview/audio-preview.d.ts +0 -1
  109. package/dist/composed/file-preview/document-preview.d.ts +0 -1
  110. package/dist/composed/file-preview/embed-preview.d.ts +0 -1
  111. package/dist/composed/file-preview/image-preview.d.ts +0 -1
  112. package/dist/composed/file-preview/shared.d.ts +0 -1
  113. package/dist/composed/file-preview/video-preview.d.ts +0 -1
  114. package/dist/composed/file-preview.d.ts +0 -1
  115. package/dist/composed/filter-bar.d.ts +0 -1
  116. package/dist/composed/form-section.d.ts +0 -1
  117. package/dist/composed/global-loading.d.ts +0 -1
  118. package/dist/composed/index.d.ts +49 -50
  119. package/dist/composed/inline-edit.d.ts +0 -1
  120. package/dist/composed/loading-skeleton.d.ts +2 -0
  121. package/dist/composed/loading-skeleton.d.ts.map +1 -1
  122. package/dist/composed/loading-skeleton.js +79 -56
  123. package/dist/composed/loading-skeleton.js.map +1 -1
  124. package/dist/composed/markdown-viewer.d.ts +0 -1
  125. package/dist/composed/master-detail.d.ts +21 -9
  126. package/dist/composed/master-detail.d.ts.map +1 -1
  127. package/dist/composed/master-detail.js +91 -77
  128. package/dist/composed/master-detail.js.map +1 -1
  129. package/dist/composed/member-picker.d.ts +0 -1
  130. package/dist/composed/multi-select-popover.d.ts +0 -1
  131. package/dist/composed/page-skeletons.d.ts +6 -0
  132. package/dist/composed/page-skeletons.d.ts.map +1 -1
  133. package/dist/composed/page-skeletons.js +93 -71
  134. package/dist/composed/page-skeletons.js.map +1 -1
  135. package/dist/composed/priority-indicator.d.ts +0 -1
  136. package/dist/composed/responsive-modal.d.ts +1 -2
  137. package/dist/composed/responsive-modal.js +47 -47
  138. package/dist/composed/rich-chat-input/attachment-strip.d.ts +0 -1
  139. package/dist/composed/rich-chat-input/audio-player.d.ts +0 -1
  140. package/dist/composed/rich-chat-input/audio-waveform.d.ts +0 -1
  141. package/dist/composed/rich-chat-input/chat-toolbar.d.ts +0 -1
  142. package/dist/composed/rich-chat-input/recording-overlay.d.ts +0 -1
  143. package/dist/composed/rich-chat-input/reply-banner.d.ts +0 -1
  144. package/dist/composed/rich-chat-input/schedule-send.d.ts +0 -1
  145. package/dist/composed/rich-chat-input/use-voice-recorder.d.ts +0 -1
  146. package/dist/composed/rich-chat-input.d.ts +9 -10
  147. package/dist/composed/rich-chat-input.js +1 -1
  148. package/dist/composed/rich-text-editor.d.ts +1 -2
  149. package/dist/composed/schedule-view.d.ts +0 -1
  150. package/dist/composed/simple-tooltip.d.ts +0 -1
  151. package/dist/composed/status-badge.d.ts +1 -2
  152. package/dist/hooks/index.d.ts +6 -7
  153. package/dist/hooks/use-color-mode.d.ts +0 -1
  154. package/dist/hooks/use-mobile.d.ts +0 -1
  155. package/dist/hooks/use-touch-device.d.ts +0 -1
  156. package/dist/hooks/use-viewport-height.d.ts +0 -1
  157. package/dist/motion/check-motion-provider.d.ts +0 -1
  158. package/dist/motion/index.d.ts +2 -3
  159. package/dist/motion/motion-provider.d.ts +1 -2
  160. package/dist/motion/primitives-index.d.ts +1 -2
  161. package/dist/motion/primitives.d.ts +1 -2
  162. package/dist/primitives/_internal/react-arrow.d.ts +1 -1
  163. package/dist/primitives/_internal/react-collection.d.ts +2 -2
  164. package/dist/primitives/_internal/react-dismissable-layer.d.ts +1 -1
  165. package/dist/primitives/_internal/react-focus-scope.d.ts +1 -1
  166. package/dist/primitives/_internal/react-popper.d.ts +4 -4
  167. package/dist/primitives/_internal/react-portal.d.ts +1 -1
  168. package/dist/primitives/_internal/react-use-rect.d.ts +1 -1
  169. package/dist/primitives/react-accordion.d.ts +3 -3
  170. package/dist/primitives/react-alert-dialog.d.ts +2 -2
  171. package/dist/primitives/react-aspect-ratio.d.ts +1 -1
  172. package/dist/primitives/react-avatar.d.ts +2 -2
  173. package/dist/primitives/react-checkbox.d.ts +3 -3
  174. package/dist/primitives/react-collapsible.d.ts +2 -2
  175. package/dist/primitives/react-context-menu.d.ts +3 -3
  176. package/dist/primitives/react-dialog.d.ts +5 -5
  177. package/dist/primitives/react-dropdown-menu.d.ts +3 -3
  178. package/dist/primitives/react-hover-card.d.ts +5 -5
  179. package/dist/primitives/react-label.d.ts +1 -1
  180. package/dist/primitives/react-menu.d.ts +7 -7
  181. package/dist/primitives/react-menubar.d.ts +5 -5
  182. package/dist/primitives/react-navigation-menu.d.ts +5 -5
  183. package/dist/primitives/react-popover.d.ts +6 -6
  184. package/dist/primitives/react-progress.d.ts +2 -2
  185. package/dist/primitives/react-radio-group.d.ts +3 -3
  186. package/dist/primitives/react-roving-focus.d.ts +2 -2
  187. package/dist/primitives/react-select.d.ts +6 -6
  188. package/dist/primitives/react-separator.d.ts +1 -1
  189. package/dist/primitives/react-slider.d.ts +2 -2
  190. package/dist/primitives/react-switch.d.ts +2 -2
  191. package/dist/primitives/react-tabs.d.ts +3 -3
  192. package/dist/primitives/react-toast.d.ts +3 -3
  193. package/dist/primitives/react-toggle-group.d.ts +4 -4
  194. package/dist/primitives/react-toggle.d.ts +1 -1
  195. package/dist/primitives/react-tooltip.d.ts +5 -5
  196. package/dist/primitives/react-visually-hidden.d.ts +1 -1
  197. package/dist/shell/app-command-palette.d.ts +2 -3
  198. package/dist/shell/bottom-navbar.d.ts +1 -2
  199. package/dist/shell/command-registry.d.ts +1 -2
  200. package/dist/shell/index.d.ts +12 -11
  201. package/dist/shell/index.d.ts.map +1 -1
  202. package/dist/shell/index.js +2 -3
  203. package/dist/shell/link-context.d.ts +2 -3
  204. package/dist/shell/notification-center.d.ts +0 -1
  205. package/dist/shell/notification-preferences.d.ts +0 -1
  206. package/dist/shell/notification-preferences.d.ts.map +1 -1
  207. package/dist/shell/notification-preferences.js +2 -0
  208. package/dist/shell/notification-preferences.js.map +1 -1
  209. package/dist/shell/top-bar.d.ts +1 -2
  210. package/dist/test-utils/conformance.d.ts +0 -1
  211. package/dist/ui/accordion.d.ts +1 -2
  212. package/dist/ui/accordion.js +1 -1
  213. package/dist/ui/alert-dialog.d.ts +1 -2
  214. package/dist/ui/alert-dialog.js +52 -52
  215. package/dist/ui/alert.d.ts +0 -1
  216. package/dist/ui/aspect-ratio.d.ts +1 -2
  217. package/dist/ui/aspect-ratio.js +4 -4
  218. package/dist/ui/autocomplete.d.ts +1 -2
  219. package/dist/ui/autocomplete.js +1 -1
  220. package/dist/ui/avatar.d.ts +1 -2
  221. package/dist/ui/avatar.js +33 -33
  222. package/dist/ui/badge-group.d.ts +1 -2
  223. package/dist/ui/badge-indicator.d.ts +0 -1
  224. package/dist/ui/badge.d.ts +3 -4
  225. package/dist/ui/banner.d.ts +0 -1
  226. package/dist/ui/breadcrumb.js +1 -1
  227. package/dist/ui/button-group.d.ts +1 -2
  228. package/dist/ui/button-processing.d.ts +0 -1
  229. package/dist/ui/button.d.ts +1 -2
  230. package/dist/ui/button.js +1 -1
  231. package/dist/ui/card.d.ts +0 -1
  232. package/dist/ui/charts/_internal/animation.d.ts +0 -1
  233. package/dist/ui/charts/_internal/axes.d.ts +0 -1
  234. package/dist/ui/charts/_internal/colors.d.ts +1 -2
  235. package/dist/ui/charts/_internal/grid-lines.d.ts +0 -1
  236. package/dist/ui/charts/_internal/legend.d.ts +0 -1
  237. package/dist/ui/charts/_internal/scales.d.ts +0 -1
  238. package/dist/ui/charts/_internal/tooltip.d.ts +0 -1
  239. package/dist/ui/charts/_internal/types.d.ts +0 -1
  240. package/dist/ui/charts/area-chart.d.ts +1 -2
  241. package/dist/ui/charts/bar-chart.d.ts +1 -2
  242. package/dist/ui/charts/chart-container.d.ts +1 -2
  243. package/dist/ui/charts/gauge-chart.d.ts +0 -1
  244. package/dist/ui/charts/index.d.ts +9 -10
  245. package/dist/ui/charts/line-chart.d.ts +1 -2
  246. package/dist/ui/charts/pie-chart.d.ts +0 -1
  247. package/dist/ui/charts/radar-chart.d.ts +0 -1
  248. package/dist/ui/charts/sparkline.d.ts +0 -1
  249. package/dist/ui/chat/date-separator.d.ts +0 -1
  250. package/dist/ui/chat/index.d.ts +7 -8
  251. package/dist/ui/chat/message-input.d.ts +0 -1
  252. package/dist/ui/chat/message-list.d.ts +0 -1
  253. package/dist/ui/chat/message.d.ts +1 -2
  254. package/dist/ui/chat/system-message.d.ts +1 -2
  255. package/dist/ui/chat/typing-indicator.d.ts +0 -1
  256. package/dist/ui/chat/unread-separator.d.ts +0 -1
  257. package/dist/ui/checkbox.d.ts +2 -3
  258. package/dist/ui/checkbox.js +13 -13
  259. package/dist/ui/collapsible.d.ts +1 -2
  260. package/dist/ui/collapsible.js +1 -1
  261. package/dist/ui/color-input.d.ts +0 -1
  262. package/dist/ui/color-swatch.d.ts +0 -1
  263. package/dist/ui/combobox.d.ts +3 -4
  264. package/dist/ui/combobox.d.ts.map +1 -1
  265. package/dist/ui/combobox.js +146 -141
  266. package/dist/ui/combobox.js.map +1 -1
  267. package/dist/ui/context-menu.d.ts +1 -2
  268. package/dist/ui/context-menu.js +58 -58
  269. package/dist/ui/data-table-body.d.ts +0 -1
  270. package/dist/ui/data-table-bulk-actions.d.ts +0 -1
  271. package/dist/ui/data-table-card.d.ts +0 -1
  272. package/dist/ui/data-table-context.d.ts +0 -1
  273. package/dist/ui/data-table-header.d.ts +0 -1
  274. package/dist/ui/data-table-pagination.d.ts +0 -1
  275. package/dist/ui/data-table-toolbar.d.ts +0 -1
  276. package/dist/ui/data-table.d.ts +3 -4
  277. package/dist/ui/devalok-grain.d.ts +0 -1
  278. package/dist/ui/dialog.d.ts +1 -2
  279. package/dist/ui/dialog.js +43 -43
  280. package/dist/ui/dot.d.ts +0 -1
  281. package/dist/ui/dropdown-menu.d.ts +1 -2
  282. package/dist/ui/dropdown-menu.js +69 -69
  283. package/dist/ui/file-upload.d.ts +0 -1
  284. package/dist/ui/file-upload.d.ts.map +1 -1
  285. package/dist/ui/file-upload.js +124 -138
  286. package/dist/ui/file-upload.js.map +1 -1
  287. package/dist/ui/form.d.ts +7 -1
  288. package/dist/ui/form.d.ts.map +1 -1
  289. package/dist/ui/form.js +4 -2
  290. package/dist/ui/form.js.map +1 -1
  291. package/dist/ui/hover-card.d.ts +1 -2
  292. package/dist/ui/hover-card.js +16 -16
  293. package/dist/ui/icon-button.d.ts +4 -4
  294. package/dist/ui/icon-button.d.ts.map +1 -1
  295. package/dist/ui/icon-button.js +1 -1
  296. package/dist/ui/icon-button.js.map +1 -1
  297. package/dist/ui/icon-context.d.ts +0 -1
  298. package/dist/ui/icon-group.d.ts +1 -2
  299. package/dist/ui/icon.d.ts +1 -2
  300. package/dist/ui/index.d.ts +78 -79
  301. package/dist/ui/index.d.ts.map +1 -1
  302. package/dist/ui/index.js.map +1 -1
  303. package/dist/ui/input-otp.d.ts +0 -1
  304. package/dist/ui/input.d.ts +1 -2
  305. package/dist/ui/label.d.ts +1 -2
  306. package/dist/ui/label.d.ts.map +1 -1
  307. package/dist/ui/label.js +13 -12
  308. package/dist/ui/label.js.map +1 -1
  309. package/dist/ui/lib/bottom-sheet.d.ts +0 -1
  310. package/dist/ui/lib/check-tokens.d.ts +0 -1
  311. package/dist/ui/lib/field-state.d.ts +0 -1
  312. package/dist/ui/lib/icon-input.d.ts +0 -1
  313. package/dist/ui/lib/index.d.ts +6 -7
  314. package/dist/ui/lib/keybinding.d.ts +0 -1
  315. package/dist/ui/lib/link-context.d.ts +0 -1
  316. package/dist/ui/lib/mention.d.ts +0 -1
  317. package/dist/ui/lib/normalize-icon.d.ts +2 -2
  318. package/dist/ui/lib/slot.d.ts +2 -3
  319. package/dist/ui/lib/use-controllable-open.d.ts +0 -1
  320. package/dist/ui/link.d.ts +0 -1
  321. package/dist/ui/link.js +1 -1
  322. package/dist/ui/menubar.d.ts +1 -2
  323. package/dist/ui/menubar.js +64 -64
  324. package/dist/ui/navigation-menu.d.ts +1 -2
  325. package/dist/ui/navigation-menu.js +67 -67
  326. package/dist/ui/number-input.d.ts +1 -2
  327. package/dist/ui/oauth-button/index.d.ts +1 -2
  328. package/dist/ui/oauth-button/oauth-button.d.ts +2 -3
  329. package/dist/ui/pagination.d.ts +0 -1
  330. package/dist/ui/pagination.js +1 -1
  331. package/dist/ui/popover.d.ts +1 -2
  332. package/dist/ui/progress-ring.d.ts +0 -1
  333. package/dist/ui/progress.d.ts +1 -2
  334. package/dist/ui/progress.js +30 -30
  335. package/dist/ui/radio.d.ts +2 -3
  336. package/dist/ui/radio.js +18 -18
  337. package/dist/ui/search-input.d.ts +0 -1
  338. package/dist/ui/segmented-control.d.ts +1 -2
  339. package/dist/ui/select.d.ts +1 -2
  340. package/dist/ui/select.js +55 -55
  341. package/dist/ui/separator.d.ts +1 -2
  342. package/dist/ui/separator.js +5 -5
  343. package/dist/ui/sheet.d.ts +1 -2
  344. package/dist/ui/sheet.js +45 -45
  345. package/dist/ui/sidebar.d.ts +4 -5
  346. package/dist/ui/sidebar.js +1 -1
  347. package/dist/ui/slider.d.ts +1 -2
  348. package/dist/ui/slider.js +14 -14
  349. package/dist/ui/spinner.d.ts +0 -1
  350. package/dist/ui/spinner.d.ts.map +1 -1
  351. package/dist/ui/spinner.js +50 -44
  352. package/dist/ui/spinner.js.map +1 -1
  353. package/dist/ui/split-button.d.ts +14 -4
  354. package/dist/ui/split-button.d.ts.map +1 -1
  355. package/dist/ui/split-button.js.map +1 -1
  356. package/dist/ui/stat-card.d.ts +3 -4
  357. package/dist/ui/stat-flash.d.ts +1 -2
  358. package/dist/ui/stepper.d.ts +1 -2
  359. package/dist/ui/surface.js +1 -1
  360. package/dist/ui/switch.d.ts +2 -3
  361. package/dist/ui/switch.d.ts.map +1 -1
  362. package/dist/ui/switch.js +31 -31
  363. package/dist/ui/switch.js.map +1 -1
  364. package/dist/ui/table-row-link.d.ts +0 -1
  365. package/dist/ui/table.js +1 -1
  366. package/dist/ui/table.js.map +1 -1
  367. package/dist/ui/tabs.d.ts +1 -2
  368. package/dist/ui/tabs.js +35 -35
  369. package/dist/ui/textarea.d.ts +1 -2
  370. package/dist/ui/toast-registry.d.ts +0 -1
  371. package/dist/ui/toast-types.js +1 -0
  372. package/dist/ui/toast.d.ts +2 -3
  373. package/dist/ui/toaster.d.ts +0 -1
  374. package/dist/ui/toggle-group.d.ts +2 -3
  375. package/dist/ui/toggle-group.js +14 -14
  376. package/dist/ui/toggle.d.ts +1 -2
  377. package/dist/ui/toggle.js +12 -12
  378. package/dist/ui/tooltip.d.ts +1 -2
  379. package/dist/ui/tooltip.js +21 -21
  380. package/dist/ui/tree-view/index.d.ts +3 -4
  381. package/dist/ui/tree-view/tree-item.d.ts +1 -2
  382. package/dist/ui/tree-view/tree-view.d.ts +1 -2
  383. package/dist/ui/tree-view/use-tree.d.ts +1 -2
  384. package/dist/ui/truncated-text.d.ts +0 -1
  385. package/docs/components/composed/bulk-action-bar.md +9 -3
  386. package/docs/components/composed/error-boundary.md +18 -2
  387. package/docs/components/composed/master-detail.md +12 -2
  388. package/docs/components/composed/page-skeletons.md +2 -2
  389. package/docs/components/composed/rich-chat-input.md +18 -6
  390. package/docs/components/composed/simple-tooltip.md +1 -1
  391. package/docs/components/shell/app-command-palette.md +2 -1
  392. package/docs/components/shell/bottom-navbar.md +4 -4
  393. package/docs/components/shell/command-registry.md +2 -2
  394. package/docs/components/shell/link-context.md +2 -2
  395. package/docs/components/shell/top-bar.md +1 -1
  396. package/docs/components/ui/search-input.md +2 -2
  397. package/docs/components/ui/slider.md +2 -2
  398. package/docs/components/ui/split-button.md +3 -3
  399. package/docs/recipes/install-astro.md +2 -0
  400. package/docs/recipes/install-next-app-router.md +2 -0
  401. package/docs/recipes/install-remix.md +2 -0
  402. package/docs/recipes/install-tanstack-start.md +2 -0
  403. package/docs/recipes/install-vite.md +2 -0
  404. package/docs/recipes/troubleshoot.md +80 -0
  405. package/llms.txt +2 -2
  406. package/make-kit/Guidelines.md +1 -1
  407. package/make-kit/components/overview.md +2 -2
  408. package/make-kit/foundations/surfaces.md +1 -1
  409. package/mcp-manifest.json +411 -147
  410. package/package.json +30 -10
  411. package/skill/SKILL.md +1 -1
  412. package/skill/chat-skill/README.md +18 -0
  413. package/skill/chat-skill/SKILL.md +78 -0
  414. package/skill/chat-skill/chatgpt-instructions.md +26 -0
  415. package/skill/chat-skill/gemini-instructions.md +25 -0
  416. package/skill/references/components.md +2 -2
  417. package/skill/references/setup-astro.md +2 -0
  418. package/skill/references/setup-next-app-router.md +2 -0
  419. package/skill/references/setup-remix.md +2 -0
  420. package/skill/references/setup-tanstack-start.md +2 -0
  421. package/skill/references/setup-vite.md +2 -0
  422. package/skill/references/troubleshoot.md +80 -0
  423. package/dist/_chunks/primitives.js +0 -7596
  424. package/dist/_chunks/primitives.js.map +0 -1
  425. package/dist/shell/sidebar.d.ts +0 -113
  426. package/dist/shell/sidebar.d.ts.map +0 -1
  427. package/dist/shell/sidebar.js +0 -293
  428. package/dist/shell/sidebar.js.map +0 -1
  429. package/docs/components/shell/sidebar.md +0 -103
@@ -1,65 +1,65 @@
1
1
  "use client";
2
- import { CheckboxItem2$1 as e, Content2$4 as t, Group2$1 as n, Item2$2 as r, ItemIndicator2$1 as i, Label2$1 as a, Portal2$1 as o, RadioGroup2$1 as s, RadioItem2$1 as c, Root2$6 as l, Separator2$1 as u, Sub2$1 as d, SubContent2$1 as f, SubTrigger2$1 as p, Trigger$6 as m } from "../_chunks/primitives.js";
3
- import { springs as h, tweens as g } from "./lib/motion.js";
4
- import { cn as _ } from "./lib/utils.js";
5
- import { Icon as v } from "./icon.js";
6
- import { useControllableOpen as y } from "../_chunks/use-controllable-open.js";
2
+ import { springs as e, tweens as t } from "./lib/motion.js";
3
+ import { cn as n } from "./lib/utils.js";
4
+ import { Icon as r } from "./icon.js";
5
+ import { useControllableOpen as i } from "../_chunks/use-controllable-open.js";
6
+ import { CheckboxItem2 as a, Content2 as o, Group2 as s, Item2 as c, ItemIndicator2 as l, Label2 as u, Portal2 as d, RadioGroup2 as f, RadioItem2 as p, Root2 as m, Separator2 as h, Sub2 as g, SubContent2 as _, SubTrigger2 as v, Trigger as y } from "../_chunks/primitives/react-dropdown-menu.js";
7
7
  import * as b from "react";
8
8
  import { jsx as x, jsxs as S } from "react/jsx-runtime";
9
9
  import { IconCheck as C, IconChevronRight as w, IconCircle as T } from "@tabler/icons-react";
10
10
  import { AnimatePresence as E, motion as D } from "framer-motion";
11
11
  //#region src/ui/dropdown-menu.tsx
12
12
  var O = b.createContext(!1), k = b.createContext(!1), A = ({ open: e, defaultOpen: t = !1, onOpenChange: n, ...r }) => {
13
- let { open: i, setOpen: a } = y({
13
+ let { open: a, setOpen: o } = i({
14
14
  open: e,
15
15
  defaultOpen: t,
16
16
  onOpenChange: n
17
17
  });
18
18
  return /* @__PURE__ */ x(O.Provider, {
19
- value: i,
20
- children: /* @__PURE__ */ x(l, {
21
- open: i,
22
- onOpenChange: a,
19
+ value: a,
20
+ children: /* @__PURE__ */ x(m, {
21
+ open: a,
22
+ onOpenChange: o,
23
23
  ...r
24
24
  })
25
25
  });
26
26
  };
27
27
  A.displayName = "DropdownMenu";
28
- var j = m, M = n, N = o, P = ({ open: e, defaultOpen: t = !1, onOpenChange: n, ...r }) => {
29
- let { open: i, setOpen: a } = y({
28
+ var j = y, M = s, N = d, P = ({ open: e, defaultOpen: t = !1, onOpenChange: n, ...r }) => {
29
+ let { open: a, setOpen: o } = i({
30
30
  open: e,
31
31
  defaultOpen: t,
32
32
  onOpenChange: n
33
33
  });
34
34
  return /* @__PURE__ */ x(k.Provider, {
35
- value: i,
36
- children: /* @__PURE__ */ x(d, {
37
- open: i,
38
- onOpenChange: a,
35
+ value: a,
36
+ children: /* @__PURE__ */ x(g, {
37
+ open: a,
38
+ onOpenChange: o,
39
39
  ...r
40
40
  })
41
41
  });
42
42
  };
43
43
  P.displayName = "DropdownMenuSub";
44
- var F = s, I = b.forwardRef(({ className: e, inset: t, children: n, ...r }, i) => /* @__PURE__ */ S(p, {
45
- ref: i,
46
- className: _("flex cursor-default select-none items-center gap-ds-03 rounded-control px-ds-03 py-ds-02b text-body-md outline-hidden focus:bg-surface-raised data-[state=open]:bg-surface-raised [&_svg]:pointer-events-none [&_svg]:h-ico-sm [&_svg]:w-ico-sm [&_svg]:shrink-0", t && "pl-ds-07", e),
47
- ...r,
44
+ var F = f, I = b.forwardRef(({ className: e, inset: t, children: i, ...a }, o) => /* @__PURE__ */ S(v, {
45
+ ref: o,
46
+ className: n("flex cursor-default select-none items-center gap-ds-03 rounded-control px-ds-03 py-ds-02b text-body-md outline-hidden focus:bg-surface-raised data-[state=open]:bg-surface-raised [&_svg]:pointer-events-none [&_svg]:h-ico-sm [&_svg]:w-ico-sm [&_svg]:shrink-0", t && "pl-ds-07", e),
47
+ ...a,
48
48
  children: [/* @__PURE__ */ x("span", {
49
49
  className: "min-w-0 truncate",
50
- children: n
51
- }), /* @__PURE__ */ x(v, {
50
+ children: i
51
+ }), /* @__PURE__ */ x(r, {
52
52
  icon: w,
53
53
  size: "sm",
54
54
  className: "ml-auto shrink-0"
55
55
  })]
56
56
  }));
57
- I.displayName = p.displayName;
58
- var L = b.forwardRef(({ className: e, children: t, ...n }, r) => /* @__PURE__ */ x(E, { children: b.useContext(k) && /* @__PURE__ */ x(f, {
59
- ref: r,
57
+ I.displayName = v.displayName;
58
+ var L = b.forwardRef(({ className: r, children: i, ...a }, o) => /* @__PURE__ */ x(E, { children: b.useContext(k) && /* @__PURE__ */ x(_, {
59
+ ref: o,
60
60
  forceMount: !0,
61
61
  asChild: !0,
62
- ...n,
62
+ ...a,
63
63
  children: /* @__PURE__ */ x(D.div, {
64
64
  initial: {
65
65
  opacity: 0,
@@ -74,22 +74,22 @@ var L = b.forwardRef(({ className: e, children: t, ...n }, r) => /* @__PURE__ */
74
74
  scale: .95
75
75
  },
76
76
  transition: {
77
- ...h.snappy,
78
- opacity: g.fade
77
+ ...e.snappy,
78
+ opacity: t.fade
79
79
  },
80
- className: _("z-popover min-w-[8rem] overflow-hidden rounded-overlay bg-surface-overlay p-ds-02 text-surface-fg shadow-floating", e),
81
- children: t
80
+ className: n("z-popover min-w-[8rem] overflow-hidden rounded-overlay bg-surface-overlay p-ds-02 text-surface-fg shadow-floating", r),
81
+ children: i
82
82
  })
83
83
  }) }));
84
- L.displayName = f.displayName;
85
- var R = b.forwardRef(({ className: e, sideOffset: n = 4, children: r, ...i }, a) => /* @__PURE__ */ x(E, { children: b.useContext(O) && /* @__PURE__ */ x(o, {
84
+ L.displayName = _.displayName;
85
+ var R = b.forwardRef(({ className: r, sideOffset: i = 4, children: a, ...s }, c) => /* @__PURE__ */ x(E, { children: b.useContext(O) && /* @__PURE__ */ x(d, {
86
86
  forceMount: !0,
87
- children: /* @__PURE__ */ x(t, {
88
- ref: a,
89
- sideOffset: n,
87
+ children: /* @__PURE__ */ x(o, {
88
+ ref: c,
89
+ sideOffset: i,
90
90
  forceMount: !0,
91
91
  asChild: !0,
92
- ...i,
92
+ ...s,
93
93
  children: /* @__PURE__ */ x(D.div, {
94
94
  initial: {
95
95
  opacity: 0,
@@ -104,62 +104,62 @@ var R = b.forwardRef(({ className: e, sideOffset: n = 4, children: r, ...i }, a)
104
104
  scale: .95
105
105
  },
106
106
  transition: {
107
- ...h.snappy,
108
- opacity: g.fade
107
+ ...e.snappy,
108
+ opacity: t.fade
109
109
  },
110
- className: _("z-popover min-w-[8rem] rounded-overlay bg-surface-overlay p-ds-02 text-surface-fg shadow-floating", e),
111
- children: r
110
+ className: n("z-popover min-w-[8rem] rounded-overlay bg-surface-overlay p-ds-02 text-surface-fg shadow-floating", r),
111
+ children: a
112
112
  })
113
113
  })
114
114
  }) }));
115
- R.displayName = t.displayName;
116
- var z = b.forwardRef(({ className: e, inset: t, ...n }, i) => /* @__PURE__ */ x(r, {
115
+ R.displayName = o.displayName;
116
+ var z = b.forwardRef(({ className: e, inset: t, ...r }, i) => /* @__PURE__ */ x(c, {
117
117
  ref: i,
118
- className: _("relative flex cursor-default select-none items-center gap-ds-03 rounded-control px-ds-03 py-ds-02b text-body-md outline-hidden transition-colors duration-fast-01 ease-productive-standard hover:bg-surface-raised focus:bg-surface-raised focus:text-surface-fg active:bg-surface-raised-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-action-disabled [&>svg]:h-ico-sm [&>svg]:w-ico-sm [&>svg]:shrink-0", t && "pl-ds-07", e),
119
- ...n
118
+ className: n("relative flex cursor-default select-none items-center gap-ds-03 rounded-control px-ds-03 py-ds-02b text-body-md outline-hidden transition-colors duration-fast-01 ease-productive-standard hover:bg-surface-raised focus:bg-surface-raised focus:text-surface-fg active:bg-surface-raised-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-action-disabled [&>svg]:h-ico-sm [&>svg]:w-ico-sm [&>svg]:shrink-0", t && "pl-ds-07", e),
119
+ ...r
120
120
  }));
121
- z.displayName = r.displayName;
122
- var B = b.forwardRef(({ className: t, children: n, checked: r, ...a }, o) => /* @__PURE__ */ S(e, {
123
- ref: o,
124
- className: _("relative flex cursor-default select-none items-center rounded-control py-ds-02b pl-ds-07 pr-ds-03 text-body-md outline-hidden transition-colors duration-fast-01 ease-productive-standard hover:bg-surface-raised focus:bg-surface-raised focus:text-surface-fg active:bg-surface-raised-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-action-disabled", t),
125
- checked: r,
126
- ...a,
121
+ z.displayName = c.displayName;
122
+ var B = b.forwardRef(({ className: e, children: t, checked: i, ...o }, s) => /* @__PURE__ */ S(a, {
123
+ ref: s,
124
+ className: n("relative flex cursor-default select-none items-center rounded-control py-ds-02b pl-ds-07 pr-ds-03 text-body-md outline-hidden transition-colors duration-fast-01 ease-productive-standard hover:bg-surface-raised focus:bg-surface-raised focus:text-surface-fg active:bg-surface-raised-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-action-disabled", e),
125
+ checked: i,
126
+ ...o,
127
127
  children: [/* @__PURE__ */ x("span", {
128
128
  className: "absolute left-ds-03 flex h-ico-sm w-ico-sm items-center justify-center",
129
- children: /* @__PURE__ */ x(i, { children: /* @__PURE__ */ x(v, {
129
+ children: /* @__PURE__ */ x(l, { children: /* @__PURE__ */ x(r, {
130
130
  icon: C,
131
131
  size: "sm"
132
132
  }) })
133
- }), n]
133
+ }), t]
134
134
  }));
135
- B.displayName = e.displayName;
136
- var V = b.forwardRef(({ className: e, children: t, ...n }, r) => /* @__PURE__ */ S(c, {
137
- ref: r,
138
- className: _("relative flex cursor-default select-none items-center rounded-control py-ds-02b pl-ds-07 pr-ds-03 text-body-md outline-hidden transition-colors duration-fast-01 ease-productive-standard hover:bg-surface-raised focus:bg-surface-raised focus:text-surface-fg active:bg-surface-raised-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-action-disabled", e),
139
- ...n,
135
+ B.displayName = a.displayName;
136
+ var V = b.forwardRef(({ className: e, children: t, ...r }, i) => /* @__PURE__ */ S(p, {
137
+ ref: i,
138
+ className: n("relative flex cursor-default select-none items-center rounded-control py-ds-02b pl-ds-07 pr-ds-03 text-body-md outline-hidden transition-colors duration-fast-01 ease-productive-standard hover:bg-surface-raised focus:bg-surface-raised focus:text-surface-fg active:bg-surface-raised-hover data-[disabled]:pointer-events-none data-[disabled]:opacity-action-disabled", e),
139
+ ...r,
140
140
  children: [/* @__PURE__ */ x("span", {
141
141
  className: "absolute left-ds-03 flex h-ico-sm w-ico-sm items-center justify-center",
142
- children: /* @__PURE__ */ x(i, { children: /* @__PURE__ */ x(T, { className: "h-2 w-2 fill-current" }) })
142
+ children: /* @__PURE__ */ x(l, { children: /* @__PURE__ */ x(T, { className: "h-2 w-2 fill-current" }) })
143
143
  }), /* @__PURE__ */ x("span", {
144
144
  className: "min-w-0 truncate",
145
145
  children: t
146
146
  })]
147
147
  }));
148
- V.displayName = c.displayName;
149
- var H = b.forwardRef(({ className: e, inset: t, ...n }, r) => /* @__PURE__ */ x(a, {
150
- ref: r,
151
- className: _("px-ds-03 py-ds-02b text-body-md font-semibold", t && "pl-ds-07", e),
152
- ...n
148
+ V.displayName = p.displayName;
149
+ var H = b.forwardRef(({ className: e, inset: t, ...r }, i) => /* @__PURE__ */ x(u, {
150
+ ref: i,
151
+ className: n("px-ds-03 py-ds-02b text-body-md font-semibold", t && "pl-ds-07", e),
152
+ ...r
153
153
  }));
154
- H.displayName = a.displayName;
155
- var U = b.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ x(u, {
156
- ref: n,
157
- className: _("-mx-ds-01 my-ds-02 h-px bg-surface-border", e),
154
+ H.displayName = u.displayName;
155
+ var U = b.forwardRef(({ className: e, ...t }, r) => /* @__PURE__ */ x(h, {
156
+ ref: r,
157
+ className: n("-mx-ds-01 my-ds-02 h-px bg-surface-border", e),
158
158
  ...t
159
159
  }));
160
- U.displayName = u.displayName;
160
+ U.displayName = h.displayName;
161
161
  var W = ({ className: e, ...t }) => /* @__PURE__ */ x("span", {
162
- className: _("ml-auto text-body-sm text-surface-fg-subtle", e),
162
+ className: n("ml-auto text-body-sm text-surface-fg-subtle", e),
163
163
  ...t
164
164
  });
165
165
  W.displayName = "DropdownMenuShortcut";
@@ -1,4 +1,3 @@
1
- "use client";
2
1
  import * as React from 'react';
3
2
  /**
4
3
  * Props for FileUpload — a drag-and-drop file picker with client-side validation (type + size),
@@ -1 +1 @@
1
- {"version":3,"file":"file-upload.d.ts","sourceRoot":"","sources":["../../src/ui/file-upload.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC;IAC7D,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,+CAA+C;IAC/C,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAA;IAChC,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,eAAe;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAuBD,QAAA,MAAM,UAAU,wFAkUf,CAAA;AAGD,OAAO,EAAE,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"file-upload.d.ts","sourceRoot":"","sources":["../../src/ui/file-upload.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC;IAC7D,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,+CAA+C;IAC/C,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAA;IAChC,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,eAAe;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,mBAAmB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAuBD,QAAA,MAAM,UAAU,wFAmUf,CAAA;AAGD,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -1,127 +1,127 @@
1
1
  "use client";
2
- import { durations as e, springs as t, tweens as n } from "./lib/motion.js";
3
- import { cn as r } from "./lib/utils.js";
4
- import { Spinner as i } from "./spinner.js";
5
- import { Icon as a } from "./icon.js";
6
- import * as o from "react";
7
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
8
- import { IconCheck as l, IconPaperclip as u, IconUpload as d } from "@tabler/icons-react";
9
- import { AnimatePresence as f, motion as p } from "framer-motion";
2
+ import { springs as e, tweens as t } from "./lib/motion.js";
3
+ import { cn as n } from "./lib/utils.js";
4
+ import { Spinner as r } from "./spinner.js";
5
+ import { Icon as i } from "./icon.js";
6
+ import * as a from "react";
7
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
8
+ import { IconCheck as c, IconPaperclip as l, IconUpload as u } from "@tabler/icons-react";
9
+ import { AnimatePresence as d, motion as f } from "framer-motion";
10
10
  //#region src/ui/file-upload.tsx
11
- var m = 10 * 1024 * 1024;
12
- function h(e, t) {
11
+ var p = 10 * 1024 * 1024;
12
+ function m(e, t) {
13
13
  return t.split(",").map((e) => e.trim()).some((t) => t.startsWith(".") ? e.name.toLowerCase().endsWith(t.toLowerCase()) : t.endsWith("/*") ? e.type.startsWith(t.slice(0, t.indexOf("/") + 1)) : e.type === t);
14
14
  }
15
- function g(e) {
15
+ function h(e) {
16
16
  return e < 1024 ? `${e} B` : e < 1024 * 1024 ? `${(e / 1024).toFixed(1)} KB` : `${(e / (1024 * 1024)).toFixed(1)} MB`;
17
17
  }
18
- var _ = o.forwardRef(({ accept: _, maxSize: v = m, multiple: y = !1, uploading: b = !1, progress: x = 0, onFiles: S, error: C, compact: w = !1, disabled: T = !1, className: E, label: D, sublabel: O, ...k }, A) => {
19
- let j = o.useRef(null), [M, N] = o.useState(!1), [P, F] = o.useState(null), I = o.useRef(!1), L = o.useRef(!1), R = C || P, z = o.useCallback(() => {
20
- T || b || j.current?.click();
21
- }, [T, b]), B = o.useCallback((e) => {
22
- F(null);
18
+ var g = a.forwardRef(({ accept: g, maxSize: _ = p, multiple: v = !1, uploading: y = !1, progress: b = 0, onFiles: x, error: S, compact: C = !1, disabled: w = !1, className: T, label: E, sublabel: D, ...O }, k) => {
19
+ let A = a.useRef(null), [j, M] = a.useState(!1), [N, P] = a.useState(null), F = a.useRef(!1), I = a.useRef(!1), L = S || N, R = a.useCallback(() => {
20
+ w || y || A.current?.click();
21
+ }, [w, y]), z = a.useCallback((e) => {
22
+ P(null);
23
23
  for (let t of e) {
24
- if (t.size > v) {
25
- F(`File "${t.name}" exceeds the maximum size of ${g(v)}`);
24
+ if (t.size > _) {
25
+ P(`File "${t.name}" exceeds the maximum size of ${h(_)}`);
26
26
  return;
27
27
  }
28
- if (_ && !h(t, _)) {
29
- F(`File "${t.name}" is not an accepted file type`);
28
+ if (g && !m(t, g)) {
29
+ P(`File "${t.name}" is not an accepted file type`);
30
30
  return;
31
31
  }
32
32
  }
33
- S(e);
33
+ x(e);
34
34
  }, [
35
- v,
36
35
  _,
37
- S
38
- ]), V = o.useCallback((e) => {
39
- L.current = !0;
36
+ g,
37
+ x
38
+ ]), B = a.useCallback((e) => {
39
+ I.current = !0;
40
40
  let t = e.target.files;
41
- !t || t.length === 0 || (B(Array.from(t)), e.target.value = "");
42
- }, [B]), H = o.useCallback(() => {
43
- I.current = !0, L.current = !1;
44
- }, []), U = o.useCallback(() => {
45
- I.current && !L.current && _ && F("File type is not accepted"), I.current = !1;
46
- }, [_]), W = o.useCallback((e) => {
47
- e.preventDefault(), e.stopPropagation(), !T && !b && N(!0);
48
- }, [T, b]), G = o.useCallback((e) => {
49
- e.preventDefault(), e.stopPropagation(), !T && !b && N(!0);
50
- }, [T, b]), K = o.useCallback((e) => {
51
- e.preventDefault(), e.stopPropagation(), N(!1);
52
- }, []), q = o.useCallback((e) => {
53
- if (e.preventDefault(), e.stopPropagation(), N(!1), T || b) return;
41
+ !t || t.length === 0 || (z(Array.from(t)), e.target.value = "");
42
+ }, [z]), V = a.useCallback(() => {
43
+ F.current = !0, I.current = !1;
44
+ }, []), H = a.useCallback(() => {
45
+ F.current && !I.current && g && P("File type is not accepted"), F.current = !1;
46
+ }, [g]), U = a.useCallback((e) => {
47
+ e.preventDefault(), e.stopPropagation(), !w && !y && M(!0);
48
+ }, [w, y]), W = a.useCallback((e) => {
49
+ e.preventDefault(), e.stopPropagation(), !w && !y && M(!0);
50
+ }, [w, y]), G = a.useCallback((e) => {
51
+ e.preventDefault(), e.stopPropagation(), M(!1);
52
+ }, []), K = a.useCallback((e) => {
53
+ if (e.preventDefault(), e.stopPropagation(), M(!1), w || y) return;
54
54
  let t = e.dataTransfer.files;
55
- !t || t.length === 0 || B(Array.from(t));
55
+ !t || t.length === 0 || z(Array.from(t));
56
56
  }, [
57
- T,
58
- b,
59
- B
60
- ]), J = D ?? "Drop files here or click to browse", Y = O ?? `Max file size: ${g(v)}`, X = o.useId();
61
- return w ? /* @__PURE__ */ c("div", {
62
- ref: A,
63
- className: r("inline-flex flex-col", E),
64
- ...k,
57
+ w,
58
+ y,
59
+ z
60
+ ]), q = E ?? "Drop files here or click to browse", J = D ?? `Max file size: ${h(_)}`, Y = a.useId();
61
+ return C ? /* @__PURE__ */ s("div", {
62
+ ref: k,
63
+ className: n("inline-flex flex-col", T),
64
+ ...O,
65
65
  children: [
66
- /* @__PURE__ */ c("button", {
66
+ /* @__PURE__ */ s("button", {
67
67
  type: "button",
68
- onClick: z,
69
- disabled: T,
70
- className: r("inline-flex items-center gap-ds-02 rounded-control px-ds-03 py-ds-02", "text-body-sm font-medium", "border border-surface-border-strong", "bg-surface-raised-hover text-surface-fg-muted", "hover:bg-accent-2", "disabled:opacity-action-disabled disabled:cursor-not-allowed", "transition-colors"),
71
- children: [b ? /* @__PURE__ */ s(i, { size: "sm" }) : /* @__PURE__ */ s(a, {
72
- icon: u,
68
+ onClick: R,
69
+ disabled: w,
70
+ className: n("inline-flex items-center gap-ds-02 rounded-control px-ds-03 py-ds-02", "text-body-sm font-medium", "border border-surface-border-strong", "bg-surface-raised-hover text-surface-fg-muted", "hover:bg-accent-2", "disabled:opacity-action-disabled disabled:cursor-not-allowed", "transition-colors"),
71
+ children: [y ? /* @__PURE__ */ o(r, { size: "sm" }) : /* @__PURE__ */ o(i, {
72
+ icon: l,
73
73
  size: "sm"
74
- }), D ?? "Attach files"]
74
+ }), E ?? "Attach files"]
75
75
  }),
76
- /* @__PURE__ */ s("input", {
77
- ref: j,
78
- id: X,
76
+ /* @__PURE__ */ o("input", {
77
+ ref: A,
78
+ id: Y,
79
79
  type: "file",
80
80
  className: "sr-only",
81
81
  style: { visibility: "hidden" },
82
82
  "aria-hidden": "true",
83
- "aria-label": D ?? "Attach files",
84
- accept: _,
85
- multiple: y,
86
- disabled: T,
87
- onChange: V,
88
- onClick: H,
89
- onFocus: U,
83
+ "aria-label": E ?? "Attach files",
84
+ accept: g,
85
+ multiple: v,
86
+ disabled: w,
87
+ onChange: B,
88
+ onClick: V,
89
+ onFocus: H,
90
90
  tabIndex: -1
91
91
  }),
92
- R && /* @__PURE__ */ s("p", {
92
+ L && /* @__PURE__ */ o("p", {
93
93
  role: "alert",
94
94
  "aria-live": "polite",
95
95
  className: "mt-ds-02 text-body-xs text-error-11",
96
- children: R
96
+ children: L
97
97
  })
98
98
  ]
99
- }) : /* @__PURE__ */ c("div", {
100
- ref: A,
101
- ...k,
99
+ }) : /* @__PURE__ */ s("div", {
100
+ ref: k,
101
+ ...O,
102
102
  role: "presentation",
103
- className: r("flex flex-col", E),
104
- "data-drag-active": M ? "true" : void 0,
105
- onDragEnter: W,
106
- onDragOver: G,
107
- onDragLeave: K,
108
- onDrop: q,
103
+ className: n("flex flex-col", T),
104
+ "data-drag-active": j ? "true" : void 0,
105
+ onDragEnter: U,
106
+ onDragOver: W,
107
+ onDragLeave: G,
108
+ onDrop: K,
109
109
  children: [
110
- /* @__PURE__ */ c(p.div, {
110
+ /* @__PURE__ */ s(f.div, {
111
111
  role: "button",
112
- tabIndex: 0,
113
- "aria-disabled": T || void 0,
114
- onClick: T ? void 0 : z,
112
+ tabIndex: w ? -1 : 0,
113
+ "aria-disabled": w || void 0,
114
+ onClick: w ? void 0 : R,
115
115
  onKeyDown: (e) => {
116
- !T && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), z());
116
+ !w && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), R());
117
117
  },
118
- className: r("flex flex-col items-center justify-center gap-ds-03 rounded-surface", "border-2 border-dashed p-ds-08", "cursor-pointer", "border-surface-border-strong bg-surface-raised-hover", M && "border-accent-7 bg-accent-2", T && "opacity-action-disabled cursor-not-allowed"),
119
- animate: { scale: M ? 1.02 : 1 },
120
- transition: t.snappy,
118
+ className: n("flex flex-col items-center justify-center gap-ds-03 rounded-surface", "border-2 border-dashed p-ds-08", "focus-ring transition-colors duration-fast-02 ease-productive-standard", "border-surface-border-strong bg-surface-base", w ? "cursor-not-allowed opacity-action-disabled" : "cursor-pointer hover:bg-surface-raised-hover", j && "border-accent-7 bg-accent-2"),
119
+ animate: { scale: j ? 1.02 : 1 },
120
+ transition: e.snappy,
121
121
  children: [
122
- /* @__PURE__ */ s(f, {
122
+ /* @__PURE__ */ o(d, {
123
123
  mode: "wait",
124
- children: b ? /* @__PURE__ */ s(p.div, {
124
+ children: y ? /* @__PURE__ */ o(f.div, {
125
125
  initial: {
126
126
  opacity: 0,
127
127
  scale: .5
@@ -134,9 +134,9 @@ var _ = o.forwardRef(({ accept: _, maxSize: v = m, multiple: y = !1, uploading:
134
134
  opacity: 0,
135
135
  scale: .5
136
136
  },
137
- transition: n.fade,
138
- children: /* @__PURE__ */ s(i, { size: "md" })
139
- }, "spinner") : x === 100 && !C ? /* @__PURE__ */ s(p.div, {
137
+ transition: t.fade,
138
+ children: /* @__PURE__ */ o(r, { size: "md" })
139
+ }, "spinner") : b === 100 && !S ? /* @__PURE__ */ o(f.div, {
140
140
  initial: {
141
141
  opacity: 0,
142
142
  scale: .5
@@ -149,97 +149,83 @@ var _ = o.forwardRef(({ accept: _, maxSize: v = m, multiple: y = !1, uploading:
149
149
  opacity: 0,
150
150
  scale: .5
151
151
  },
152
- transition: t.bouncy,
153
- children: /* @__PURE__ */ s(a, {
154
- icon: l,
152
+ transition: e.bouncy,
153
+ children: /* @__PURE__ */ o(i, {
154
+ icon: c,
155
155
  size: "2xl",
156
156
  className: "text-success-11"
157
157
  })
158
- }, "complete") : /* @__PURE__ */ s(p.div, {
158
+ }, "complete") : /* @__PURE__ */ o(f.div, {
159
159
  initial: { opacity: 0 },
160
160
  animate: { opacity: 1 },
161
161
  exit: { opacity: 0 },
162
- transition: n.fade,
163
- children: /* @__PURE__ */ s(a, {
164
- icon: d,
162
+ transition: t.fade,
163
+ children: /* @__PURE__ */ o(i, {
164
+ icon: u,
165
165
  size: "2xl",
166
166
  className: "text-surface-fg-subtle"
167
167
  })
168
168
  }, "upload")
169
169
  }),
170
- /* @__PURE__ */ s("span", {
171
- id: X + "-label",
170
+ /* @__PURE__ */ o("span", {
171
+ id: Y + "-label",
172
172
  className: "text-body-sm text-surface-fg-muted",
173
- children: J
173
+ children: q
174
174
  }),
175
- b ? /* @__PURE__ */ s("div", {
175
+ y ? /* @__PURE__ */ o("div", {
176
176
  className: "w-full max-w-xs",
177
- children: /* @__PURE__ */ s("div", {
177
+ children: /* @__PURE__ */ o("div", {
178
178
  role: "progressbar",
179
- "aria-valuenow": x,
179
+ "aria-valuenow": b,
180
180
  "aria-valuemin": 0,
181
181
  "aria-valuemax": 100,
182
182
  className: "h-2 w-full overflow-hidden rounded-pill bg-surface-raised-hover",
183
- children: /* @__PURE__ */ s(p.div, {
184
- className: "h-full rounded-pill bg-accent-9",
185
- animate: { width: `${x}%` },
186
- transition: t.smooth
183
+ children: /* @__PURE__ */ o(f.div, {
184
+ className: "h-full w-full origin-left rounded-pill bg-accent-9",
185
+ animate: { scaleX: Math.max(0, Math.min(100, b)) / 100 },
186
+ transition: e.smooth
187
187
  })
188
188
  })
189
- }) : /* @__PURE__ */ s("span", {
189
+ }) : /* @__PURE__ */ o("span", {
190
190
  className: "text-caption text-surface-fg-subtle",
191
- children: Y
191
+ children: J
192
192
  })
193
193
  ]
194
194
  }),
195
- /* @__PURE__ */ s("input", {
196
- ref: j,
197
- id: X,
195
+ /* @__PURE__ */ o("input", {
196
+ ref: A,
197
+ id: Y,
198
198
  type: "file",
199
199
  className: "sr-only",
200
200
  style: { visibility: "hidden" },
201
201
  "aria-hidden": "true",
202
- "aria-label": J,
203
- accept: _,
204
- multiple: y,
205
- disabled: T,
206
- onChange: V,
207
- onClick: H,
208
- onFocus: U,
202
+ "aria-label": q,
203
+ accept: g,
204
+ multiple: v,
205
+ disabled: w,
206
+ onChange: B,
207
+ onClick: V,
208
+ onFocus: H,
209
209
  tabIndex: -1
210
210
  }),
211
- /* @__PURE__ */ s(f, { children: R && /* @__PURE__ */ s(p.p, {
211
+ /* @__PURE__ */ o(d, { children: L && /* @__PURE__ */ o(f.p, {
212
212
  role: "alert",
213
213
  className: "mt-ds-02 text-body-xs text-error-11",
214
214
  initial: {
215
215
  opacity: 0,
216
- x: 0
216
+ y: -2
217
217
  },
218
218
  animate: {
219
219
  opacity: 1,
220
- x: [
221
- 0,
222
- -4,
223
- 4,
224
- -4,
225
- 4,
226
- 0
227
- ]
220
+ y: 0
228
221
  },
229
222
  exit: { opacity: 0 },
230
- transition: {
231
- opacity: n.fade,
232
- x: {
233
- type: "tween",
234
- duration: e.slow01,
235
- ease: "easeOut"
236
- }
237
- },
238
- children: R
223
+ transition: t.fade,
224
+ children: L
239
225
  }) })
240
226
  ]
241
227
  });
242
228
  });
243
- _.displayName = "FileUpload";
229
+ g.displayName = "FileUpload";
244
230
  //#endregion
245
- export { _ as FileUpload };
231
+ export { g as FileUpload };