@devalok/shilp-sutra 0.36.0 → 0.37.0-next.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 (530) hide show
  1. package/MIGRATION.md +346 -0
  2. package/README.md +26 -29
  3. package/dist/_chunks/badge-group.js +42 -42
  4. package/dist/_chunks/badge-group.js.map +1 -1
  5. package/dist/_chunks/chat.js +324 -327
  6. package/dist/_chunks/chat.js.map +1 -1
  7. package/dist/_chunks/date-picker.js +245 -245
  8. package/dist/_chunks/date-picker.js.map +1 -1
  9. package/dist/_chunks/document-preview.js +33 -33
  10. package/dist/_chunks/document-preview.js.map +1 -1
  11. package/dist/_chunks/file-preview.js +264 -264
  12. package/dist/_chunks/file-preview.js.map +1 -1
  13. package/dist/_chunks/image-preview.js +45 -45
  14. package/dist/_chunks/image-preview.js.map +1 -1
  15. package/dist/_chunks/mention-suggestion.js +85 -85
  16. package/dist/_chunks/mention-suggestion.js.map +1 -1
  17. package/dist/_chunks/motion-provider.js +13 -13
  18. package/dist/_chunks/motion-provider.js.map +1 -1
  19. package/dist/_chunks/popover.js +36 -36
  20. package/dist/_chunks/popover.js.map +1 -1
  21. package/dist/_chunks/primitives.js +489 -489
  22. package/dist/_chunks/primitives.js.map +1 -1
  23. package/dist/_chunks/rich-chat-input.js +1066 -1066
  24. package/dist/_chunks/rich-chat-input.js.map +1 -1
  25. package/dist/_chunks/shared.js +43 -43
  26. package/dist/_chunks/shared.js.map +1 -1
  27. package/dist/_chunks/text.js +432 -0
  28. package/dist/_chunks/text.js.map +1 -0
  29. package/dist/_chunks/tiptap.js +6053 -6187
  30. package/dist/_chunks/tiptap.js.map +1 -1
  31. package/dist/_chunks/tree-view.js +97 -97
  32. package/dist/_chunks/tree-view.js.map +1 -1
  33. package/dist/_chunks/use-calendar.js.map +1 -1
  34. package/dist/ai/ai-command-provider.d.ts.map +1 -1
  35. package/dist/ai/ai-command-provider.js.map +1 -1
  36. package/dist/ai/block-renderer.d.ts.map +1 -1
  37. package/dist/ai/block-renderer.js +43 -43
  38. package/dist/ai/block-renderer.js.map +1 -1
  39. package/dist/ai/blocks/block-table.d.ts.map +1 -1
  40. package/dist/ai/blocks/confirm.d.ts.map +1 -1
  41. package/dist/ai/blocks/divider.d.ts.map +1 -1
  42. package/dist/ai/blocks/error.d.ts.map +1 -1
  43. package/dist/ai/blocks/index.d.ts +5 -5
  44. package/dist/ai/blocks/index.d.ts.map +1 -1
  45. package/dist/ai/blocks/index.js +2 -2
  46. package/dist/ai/blocks/info.d.ts.map +1 -1
  47. package/dist/ai/blocks/loading.d.ts.map +1 -1
  48. package/dist/ai/blocks/stat-row.d.ts.map +1 -1
  49. package/dist/ai/blocks/success.d.ts.map +1 -1
  50. package/dist/ai/blocks/text.d.ts.map +1 -1
  51. package/dist/ai/command-bar.d.ts +0 -11
  52. package/dist/ai/command-bar.d.ts.map +1 -1
  53. package/dist/ai/command-bar.js +128 -128
  54. package/dist/ai/command-bar.js.map +1 -1
  55. package/dist/ai/conversation.d.ts +1 -1
  56. package/dist/ai/conversation.d.ts.map +1 -1
  57. package/dist/ai/conversation.js +76 -76
  58. package/dist/ai/conversation.js.map +1 -1
  59. package/dist/ai/devadoot-icon.d.ts +0 -12
  60. package/dist/ai/devadoot-icon.d.ts.map +1 -1
  61. package/dist/ai/index.d.ts +11 -11
  62. package/dist/ai/index.d.ts.map +1 -1
  63. package/dist/ai/index.js +44 -44
  64. package/dist/ai/index.js.map +1 -1
  65. package/dist/composed/activity-feed.d.ts.map +1 -1
  66. package/dist/composed/activity-feed.js +93 -93
  67. package/dist/composed/activity-feed.js.map +1 -1
  68. package/dist/composed/avatar-group.d.ts.map +1 -1
  69. package/dist/composed/avatar-group.js +50 -50
  70. package/dist/composed/avatar-group.js.map +1 -1
  71. package/dist/composed/bulk-action-bar.d.ts.map +1 -1
  72. package/dist/composed/bulk-action-bar.js +40 -40
  73. package/dist/composed/bulk-action-bar.js.map +1 -1
  74. package/dist/composed/command-palette.d.ts +0 -6
  75. package/dist/composed/command-palette.d.ts.map +1 -1
  76. package/dist/composed/command-palette.js +131 -131
  77. package/dist/composed/command-palette.js.map +1 -1
  78. package/dist/composed/confirm-dialog.d.ts.map +1 -1
  79. package/dist/composed/confirm-dialog.js.map +1 -1
  80. package/dist/composed/content-card.d.ts.map +1 -1
  81. package/dist/composed/content-card.js.map +1 -1
  82. package/dist/composed/date-picker/calendar-grid.d.ts.map +1 -1
  83. package/dist/composed/date-picker/date-picker.d.ts.map +1 -1
  84. package/dist/composed/date-picker/date-range-picker.d.ts.map +1 -1
  85. package/dist/composed/date-picker/date-time-picker.d.ts.map +1 -1
  86. package/dist/composed/date-picker/index.d.ts +11 -11
  87. package/dist/composed/date-picker/index.d.ts.map +1 -1
  88. package/dist/composed/date-picker/index.js +1 -1
  89. package/dist/composed/date-picker/month-picker.d.ts.map +1 -1
  90. package/dist/composed/date-picker/presets.d.ts.map +1 -1
  91. package/dist/composed/date-picker/time-picker.d.ts.map +1 -1
  92. package/dist/composed/date-picker/year-picker.d.ts.map +1 -1
  93. package/dist/composed/deadline-indicator.d.ts.map +1 -1
  94. package/dist/composed/deadline-indicator.js +25 -25
  95. package/dist/composed/deadline-indicator.js.map +1 -1
  96. package/dist/composed/emoji-picker.d.ts.map +1 -1
  97. package/dist/composed/emoji-picker.js +37 -37
  98. package/dist/composed/emoji-picker.js.map +1 -1
  99. package/dist/composed/empty-state.d.ts.map +1 -1
  100. package/dist/composed/empty-state.js +21 -21
  101. package/dist/composed/empty-state.js.map +1 -1
  102. package/dist/composed/error-boundary.d.ts +1 -1
  103. package/dist/composed/error-boundary.d.ts.map +1 -1
  104. package/dist/composed/error-boundary.js.map +1 -1
  105. package/dist/composed/extensions/emoji-node.d.ts.map +1 -1
  106. package/dist/composed/extensions/emoji-suggestion.d.ts.map +1 -1
  107. package/dist/composed/extensions/file-attachment.d.ts.map +1 -1
  108. package/dist/composed/extensions/mention-suggestion.d.ts +1 -1
  109. package/dist/composed/extensions/mention-suggestion.d.ts.map +1 -1
  110. package/dist/composed/extensions/slash-command.d.ts +1 -1
  111. package/dist/composed/extensions/slash-command.d.ts.map +1 -1
  112. package/dist/composed/file-preview/audio-preview.d.ts.map +1 -1
  113. package/dist/composed/file-preview/document-preview.d.ts.map +1 -1
  114. package/dist/composed/file-preview/embed-preview.d.ts.map +1 -1
  115. package/dist/composed/file-preview/image-preview.d.ts.map +1 -1
  116. package/dist/composed/file-preview/shared.d.ts.map +1 -1
  117. package/dist/composed/file-preview/video-preview.d.ts.map +1 -1
  118. package/dist/composed/file-preview.d.ts.map +1 -1
  119. package/dist/composed/filter-bar.d.ts +1 -1
  120. package/dist/composed/filter-bar.d.ts.map +1 -1
  121. package/dist/composed/filter-bar.js +54 -54
  122. package/dist/composed/filter-bar.js.map +1 -1
  123. package/dist/composed/form-section.d.ts.map +1 -1
  124. package/dist/composed/form-section.js +26 -26
  125. package/dist/composed/form-section.js.map +1 -1
  126. package/dist/composed/global-loading.d.ts.map +1 -1
  127. package/dist/composed/global-loading.js.map +1 -1
  128. package/dist/composed/index.d.ts +55 -55
  129. package/dist/composed/index.d.ts.map +1 -1
  130. package/dist/composed/index.js +17 -17
  131. package/dist/composed/inline-edit.d.ts.map +1 -1
  132. package/dist/composed/inline-edit.js.map +1 -1
  133. package/dist/composed/loading-skeleton.d.ts +1 -1
  134. package/dist/composed/loading-skeleton.d.ts.map +1 -1
  135. package/dist/composed/loading-skeleton.js.map +1 -1
  136. package/dist/composed/markdown-viewer.d.ts.map +1 -1
  137. package/dist/composed/markdown-viewer.js +3 -3
  138. package/dist/composed/markdown-viewer.js.map +1 -1
  139. package/dist/composed/master-detail.d.ts.map +1 -1
  140. package/dist/composed/master-detail.js +42 -42
  141. package/dist/composed/master-detail.js.map +1 -1
  142. package/dist/composed/member-picker.d.ts.map +1 -1
  143. package/dist/composed/member-picker.js.map +1 -1
  144. package/dist/composed/multi-select-popover.d.ts.map +1 -1
  145. package/dist/composed/multi-select-popover.js +55 -55
  146. package/dist/composed/multi-select-popover.js.map +1 -1
  147. package/dist/composed/page-header.d.ts.map +1 -1
  148. package/dist/composed/page-header.js.map +1 -1
  149. package/dist/composed/page-skeletons.d.ts.map +1 -1
  150. package/dist/composed/page-skeletons.js.map +1 -1
  151. package/dist/composed/priority-indicator.d.ts.map +1 -1
  152. package/dist/composed/priority-indicator.js +34 -34
  153. package/dist/composed/priority-indicator.js.map +1 -1
  154. package/dist/composed/responsive-overlay.d.ts.map +1 -1
  155. package/dist/composed/responsive-overlay.js.map +1 -1
  156. package/dist/composed/rich-chat-input/attachment-strip.d.ts.map +1 -1
  157. package/dist/composed/rich-chat-input/audio-player.d.ts.map +1 -1
  158. package/dist/composed/rich-chat-input/audio-waveform.d.ts.map +1 -1
  159. package/dist/composed/rich-chat-input/chat-toolbar.d.ts.map +1 -1
  160. package/dist/composed/rich-chat-input/recording-overlay.d.ts.map +1 -1
  161. package/dist/composed/rich-chat-input/reply-banner.d.ts.map +1 -1
  162. package/dist/composed/rich-chat-input/schedule-send.d.ts.map +1 -1
  163. package/dist/composed/rich-chat-input.d.ts +6 -6
  164. package/dist/composed/rich-chat-input.d.ts.map +1 -1
  165. package/dist/composed/rich-chat-input.js +1 -1
  166. package/dist/composed/rich-text-editor.d.ts.map +1 -1
  167. package/dist/composed/rich-text-editor.js +25 -25
  168. package/dist/composed/rich-text-editor.js.map +1 -1
  169. package/dist/composed/schedule-view.d.ts.map +1 -1
  170. package/dist/composed/schedule-view.js +53 -53
  171. package/dist/composed/schedule-view.js.map +1 -1
  172. package/dist/composed/simple-tooltip.d.ts.map +1 -1
  173. package/dist/composed/simple-tooltip.js.map +1 -1
  174. package/dist/composed/status-badge.d.ts +1 -1
  175. package/dist/composed/status-badge.d.ts.map +1 -1
  176. package/dist/composed/status-badge.js +30 -30
  177. package/dist/composed/status-badge.js.map +1 -1
  178. package/dist/hooks/index.d.ts +3 -3
  179. package/dist/hooks/index.d.ts.map +1 -1
  180. package/dist/hooks/index.js +1 -1
  181. package/dist/hooks/use-color-mode.js.map +1 -1
  182. package/dist/hooks/use-toast.d.ts +1 -1
  183. package/dist/hooks/use-toast.d.ts.map +1 -1
  184. package/dist/motion/index.d.ts +2 -2
  185. package/dist/motion/index.d.ts.map +1 -1
  186. package/dist/motion/index.js.map +1 -1
  187. package/dist/motion/motion-provider.d.ts +1 -1
  188. package/dist/motion/motion-provider.d.ts.map +1 -1
  189. package/dist/motion/primitives-index.d.ts +1 -1
  190. package/dist/motion/primitives-index.d.ts.map +1 -1
  191. package/dist/motion/primitives-index.js +40 -40
  192. package/dist/motion/primitives-index.js.map +1 -1
  193. package/dist/motion/primitives.d.ts +1 -1
  194. package/dist/motion/primitives.d.ts.map +1 -1
  195. package/dist/shell/app-command-palette.d.ts +0 -8
  196. package/dist/shell/app-command-palette.d.ts.map +1 -1
  197. package/dist/shell/app-command-palette.js.map +1 -1
  198. package/dist/shell/bottom-navbar.d.ts +0 -6
  199. package/dist/shell/bottom-navbar.d.ts.map +1 -1
  200. package/dist/shell/bottom-navbar.js +62 -62
  201. package/dist/shell/bottom-navbar.js.map +1 -1
  202. package/dist/shell/index.d.ts +8 -8
  203. package/dist/shell/index.d.ts.map +1 -1
  204. package/dist/shell/index.js +5 -5
  205. package/dist/shell/link-context.d.ts +1 -1
  206. package/dist/shell/link-context.d.ts.map +1 -1
  207. package/dist/shell/notification-center.d.ts +0 -6
  208. package/dist/shell/notification-center.d.ts.map +1 -1
  209. package/dist/shell/notification-center.js +54 -54
  210. package/dist/shell/notification-center.js.map +1 -1
  211. package/dist/shell/notification-preferences.d.ts +0 -6
  212. package/dist/shell/notification-preferences.d.ts.map +1 -1
  213. package/dist/shell/notification-preferences.js +22 -22
  214. package/dist/shell/notification-preferences.js.map +1 -1
  215. package/dist/shell/sidebar.d.ts.map +1 -1
  216. package/dist/shell/sidebar.js.map +1 -1
  217. package/dist/shell/top-bar.d.ts +0 -6
  218. package/dist/shell/top-bar.d.ts.map +1 -1
  219. package/dist/shell/top-bar.js.map +1 -1
  220. package/dist/tailwind/index.cjs +15 -499
  221. package/dist/tailwind/preset.d.ts +21 -0
  222. package/dist/tailwind/preset.d.ts.map +1 -1
  223. package/dist/tailwind/preset.js +14 -489
  224. package/dist/tailwind/preset.js.map +1 -1
  225. package/dist/tokens/animations.css +17 -0
  226. package/dist/tokens/base.css +26 -0
  227. package/dist/tokens/index.css +22 -0
  228. package/dist/tokens/semantic.css +436 -464
  229. package/dist/tokens/shilp-sutra.css +41 -0
  230. package/dist/tokens/typography-semantic.css +48 -41
  231. package/dist/tokens/utilities.css +276 -0
  232. package/dist/tokens/variants.css +14 -0
  233. package/dist/ui/accordion.d.ts +2 -2
  234. package/dist/ui/accordion.d.ts.map +1 -1
  235. package/dist/ui/accordion.js +23 -23
  236. package/dist/ui/accordion.js.map +1 -1
  237. package/dist/ui/alert-dialog.d.ts +2 -2
  238. package/dist/ui/alert-dialog.d.ts.map +1 -1
  239. package/dist/ui/alert-dialog.js +37 -37
  240. package/dist/ui/alert-dialog.js.map +1 -1
  241. package/dist/ui/alert.d.ts.map +1 -1
  242. package/dist/ui/alert.js +36 -36
  243. package/dist/ui/alert.js.map +1 -1
  244. package/dist/ui/aspect-ratio.d.ts +1 -1
  245. package/dist/ui/aspect-ratio.d.ts.map +1 -1
  246. package/dist/ui/aspect-ratio.js.map +1 -1
  247. package/dist/ui/autocomplete.d.ts +1 -1
  248. package/dist/ui/autocomplete.d.ts.map +1 -1
  249. package/dist/ui/autocomplete.js +27 -27
  250. package/dist/ui/autocomplete.js.map +1 -1
  251. package/dist/ui/avatar.d.ts +2 -2
  252. package/dist/ui/avatar.d.ts.map +1 -1
  253. package/dist/ui/avatar.js +41 -41
  254. package/dist/ui/avatar.js.map +1 -1
  255. package/dist/ui/badge-group.d.ts.map +1 -1
  256. package/dist/ui/badge-indicator.d.ts.map +1 -1
  257. package/dist/ui/badge-indicator.js +10 -10
  258. package/dist/ui/badge-indicator.js.map +1 -1
  259. package/dist/ui/badge.d.ts +2 -2
  260. package/dist/ui/badge.d.ts.map +1 -1
  261. package/dist/ui/banner.d.ts.map +1 -1
  262. package/dist/ui/banner.js +28 -28
  263. package/dist/ui/banner.js.map +1 -1
  264. package/dist/ui/breadcrumb.d.ts +1 -1
  265. package/dist/ui/breadcrumb.d.ts.map +1 -1
  266. package/dist/ui/breadcrumb.js.map +1 -1
  267. package/dist/ui/button-group.d.ts.map +1 -1
  268. package/dist/ui/button-group.js.map +1 -1
  269. package/dist/ui/button-processing.d.ts.map +1 -1
  270. package/dist/ui/button-processing.js +15 -15
  271. package/dist/ui/button-processing.js.map +1 -1
  272. package/dist/ui/button.d.ts.map +1 -1
  273. package/dist/ui/button.js +84 -84
  274. package/dist/ui/button.js.map +1 -1
  275. package/dist/ui/card.d.ts +1 -1
  276. package/dist/ui/card.d.ts.map +1 -1
  277. package/dist/ui/card.js +28 -28
  278. package/dist/ui/card.js.map +1 -1
  279. package/dist/ui/charts/_internal/axes.d.ts +1 -1
  280. package/dist/ui/charts/_internal/axes.d.ts.map +1 -1
  281. package/dist/ui/charts/_internal/grid-lines.d.ts.map +1 -1
  282. package/dist/ui/charts/_internal/legend.d.ts.map +1 -1
  283. package/dist/ui/charts/_internal/tooltip.d.ts +1 -1
  284. package/dist/ui/charts/_internal/tooltip.d.ts.map +1 -1
  285. package/dist/ui/charts/area-chart.d.ts.map +1 -1
  286. package/dist/ui/charts/bar-chart.d.ts +1 -1
  287. package/dist/ui/charts/bar-chart.d.ts.map +1 -1
  288. package/dist/ui/charts/chart-container.d.ts.map +1 -1
  289. package/dist/ui/charts/gauge-chart.d.ts.map +1 -1
  290. package/dist/ui/charts/index.d.ts +5 -5
  291. package/dist/ui/charts/index.d.ts.map +1 -1
  292. package/dist/ui/charts/index.js +618 -618
  293. package/dist/ui/charts/index.js.map +1 -1
  294. package/dist/ui/charts/line-chart.d.ts.map +1 -1
  295. package/dist/ui/charts/pie-chart.d.ts.map +1 -1
  296. package/dist/ui/charts/radar-chart.d.ts.map +1 -1
  297. package/dist/ui/charts/sparkline.d.ts.map +1 -1
  298. package/dist/ui/chat/date-separator.d.ts.map +1 -1
  299. package/dist/ui/chat/index.d.ts +4 -4
  300. package/dist/ui/chat/index.d.ts.map +1 -1
  301. package/dist/ui/chat/index.js +1 -1
  302. package/dist/ui/chat/message-input.d.ts.map +1 -1
  303. package/dist/ui/chat/message-list.d.ts.map +1 -1
  304. package/dist/ui/chat/message.d.ts +1 -1
  305. package/dist/ui/chat/message.d.ts.map +1 -1
  306. package/dist/ui/chat/system-message.d.ts.map +1 -1
  307. package/dist/ui/chat/typing-indicator.d.ts.map +1 -1
  308. package/dist/ui/chat/unread-separator.d.ts.map +1 -1
  309. package/dist/ui/checkbox.d.ts.map +1 -1
  310. package/dist/ui/checkbox.js +18 -18
  311. package/dist/ui/checkbox.js.map +1 -1
  312. package/dist/ui/code.d.ts.map +1 -1
  313. package/dist/ui/code.js.map +1 -1
  314. package/dist/ui/collapsible.d.ts +2 -2
  315. package/dist/ui/collapsible.d.ts.map +1 -1
  316. package/dist/ui/collapsible.js +10 -10
  317. package/dist/ui/collapsible.js.map +1 -1
  318. package/dist/ui/color-input.d.ts.map +1 -1
  319. package/dist/ui/color-input.js +85 -85
  320. package/dist/ui/color-input.js.map +1 -1
  321. package/dist/ui/color-swatch.d.ts.map +1 -1
  322. package/dist/ui/color-swatch.js.map +1 -1
  323. package/dist/ui/combobox.d.ts.map +1 -1
  324. package/dist/ui/combobox.js +58 -58
  325. package/dist/ui/combobox.js.map +1 -1
  326. package/dist/ui/container.d.ts.map +1 -1
  327. package/dist/ui/container.js.map +1 -1
  328. package/dist/ui/context-menu.d.ts +2 -2
  329. package/dist/ui/context-menu.d.ts.map +1 -1
  330. package/dist/ui/context-menu.js +47 -47
  331. package/dist/ui/context-menu.js.map +1 -1
  332. package/dist/ui/data-table-body.d.ts +1 -1
  333. package/dist/ui/data-table-body.d.ts.map +1 -1
  334. package/dist/ui/data-table-body.js +43 -43
  335. package/dist/ui/data-table-body.js.map +1 -1
  336. package/dist/ui/data-table-bulk-actions.js.map +1 -1
  337. package/dist/ui/data-table-card.d.ts.map +1 -1
  338. package/dist/ui/data-table-card.js +7 -7
  339. package/dist/ui/data-table-card.js.map +1 -1
  340. package/dist/ui/data-table-context.d.ts +1 -1
  341. package/dist/ui/data-table-context.d.ts.map +1 -1
  342. package/dist/ui/data-table-context.js.map +1 -1
  343. package/dist/ui/data-table-header.js +38 -38
  344. package/dist/ui/data-table-header.js.map +1 -1
  345. package/dist/ui/data-table-pagination.js.map +1 -1
  346. package/dist/ui/data-table-toolbar.d.ts.map +1 -1
  347. package/dist/ui/data-table-toolbar.js.map +1 -1
  348. package/dist/ui/data-table.d.ts +2 -2
  349. package/dist/ui/data-table.d.ts.map +1 -1
  350. package/dist/ui/data-table.js +5 -5
  351. package/dist/ui/data-table.js.map +1 -1
  352. package/dist/ui/devalok-grain.js +8 -8
  353. package/dist/ui/devalok-grain.js.map +1 -1
  354. package/dist/ui/dialog.d.ts +2 -2
  355. package/dist/ui/dialog.d.ts.map +1 -1
  356. package/dist/ui/dialog.js +41 -41
  357. package/dist/ui/dialog.js.map +1 -1
  358. package/dist/ui/dropdown-menu.d.ts +2 -2
  359. package/dist/ui/dropdown-menu.d.ts.map +1 -1
  360. package/dist/ui/dropdown-menu.js +46 -46
  361. package/dist/ui/dropdown-menu.js.map +1 -1
  362. package/dist/ui/file-upload.d.ts.map +1 -1
  363. package/dist/ui/file-upload.js +54 -54
  364. package/dist/ui/file-upload.js.map +1 -1
  365. package/dist/ui/form.d.ts.map +1 -1
  366. package/dist/ui/form.js +17 -17
  367. package/dist/ui/form.js.map +1 -1
  368. package/dist/ui/hover-card.d.ts +2 -2
  369. package/dist/ui/hover-card.d.ts.map +1 -1
  370. package/dist/ui/hover-card.js +19 -19
  371. package/dist/ui/hover-card.js.map +1 -1
  372. package/dist/ui/icon-button.d.ts.map +1 -1
  373. package/dist/ui/icon-button.js.map +1 -1
  374. package/dist/ui/icon-group.d.ts.map +1 -1
  375. package/dist/ui/icon-group.js +4 -4
  376. package/dist/ui/icon-group.js.map +1 -1
  377. package/dist/ui/icon.d.ts.map +1 -1
  378. package/dist/ui/icon.js +32 -32
  379. package/dist/ui/icon.js.map +1 -1
  380. package/dist/ui/index.d.ts +57 -57
  381. package/dist/ui/index.d.ts.map +1 -1
  382. package/dist/ui/index.js +27 -27
  383. package/dist/ui/index.js.map +1 -1
  384. package/dist/ui/input-otp.d.ts +1 -1
  385. package/dist/ui/input-otp.d.ts.map +1 -1
  386. package/dist/ui/input-otp.js.map +1 -1
  387. package/dist/ui/input.d.ts.map +1 -1
  388. package/dist/ui/input.js +14 -14
  389. package/dist/ui/input.js.map +1 -1
  390. package/dist/ui/label.d.ts +1 -1
  391. package/dist/ui/label.d.ts.map +1 -1
  392. package/dist/ui/label.js.map +1 -1
  393. package/dist/ui/lib/bottom-sheet.d.ts.map +1 -1
  394. package/dist/ui/lib/index.d.ts +4 -4
  395. package/dist/ui/lib/index.d.ts.map +1 -1
  396. package/dist/ui/lib/slot.d.ts +1 -1
  397. package/dist/ui/lib/slot.d.ts.map +1 -1
  398. package/dist/ui/lib/utils.d.ts.map +1 -1
  399. package/dist/ui/lib/utils.js.map +1 -1
  400. package/dist/ui/link.d.ts.map +1 -1
  401. package/dist/ui/link.js.map +1 -1
  402. package/dist/ui/menubar.d.ts +2 -2
  403. package/dist/ui/menubar.d.ts.map +1 -1
  404. package/dist/ui/menubar.js +64 -64
  405. package/dist/ui/menubar.js.map +1 -1
  406. package/dist/ui/navigation-menu.d.ts +2 -2
  407. package/dist/ui/navigation-menu.d.ts.map +1 -1
  408. package/dist/ui/navigation-menu.js +72 -72
  409. package/dist/ui/navigation-menu.js.map +1 -1
  410. package/dist/ui/number-input.d.ts.map +1 -1
  411. package/dist/ui/number-input.js.map +1 -1
  412. package/dist/ui/pagination.d.ts +1 -1
  413. package/dist/ui/pagination.d.ts.map +1 -1
  414. package/dist/ui/pagination.js.map +1 -1
  415. package/dist/ui/popover.d.ts +2 -2
  416. package/dist/ui/popover.d.ts.map +1 -1
  417. package/dist/ui/progress-ring.d.ts +1 -1
  418. package/dist/ui/progress-ring.d.ts.map +1 -1
  419. package/dist/ui/progress-ring.js +33 -33
  420. package/dist/ui/progress-ring.js.map +1 -1
  421. package/dist/ui/progress.d.ts +2 -2
  422. package/dist/ui/progress.d.ts.map +1 -1
  423. package/dist/ui/progress.js +23 -23
  424. package/dist/ui/progress.js.map +1 -1
  425. package/dist/ui/radio.d.ts.map +1 -1
  426. package/dist/ui/radio.js +19 -19
  427. package/dist/ui/radio.js.map +1 -1
  428. package/dist/ui/search-input.d.ts.map +1 -1
  429. package/dist/ui/search-input.js +17 -17
  430. package/dist/ui/search-input.js.map +1 -1
  431. package/dist/ui/segmented-control.d.ts.map +1 -1
  432. package/dist/ui/segmented-control.js +19 -19
  433. package/dist/ui/segmented-control.js.map +1 -1
  434. package/dist/ui/select.d.ts +2 -2
  435. package/dist/ui/select.d.ts.map +1 -1
  436. package/dist/ui/select.js +68 -68
  437. package/dist/ui/select.js.map +1 -1
  438. package/dist/ui/separator.d.ts +1 -1
  439. package/dist/ui/separator.d.ts.map +1 -1
  440. package/dist/ui/separator.js.map +1 -1
  441. package/dist/ui/sheet.d.ts +2 -2
  442. package/dist/ui/sheet.d.ts.map +1 -1
  443. package/dist/ui/sheet.js +44 -44
  444. package/dist/ui/sheet.js.map +1 -1
  445. package/dist/ui/sidebar.d.ts +1 -1
  446. package/dist/ui/sidebar.d.ts.map +1 -1
  447. package/dist/ui/sidebar.js +156 -156
  448. package/dist/ui/sidebar.js.map +1 -1
  449. package/dist/ui/skeleton.d.ts +1 -1
  450. package/dist/ui/skeleton.d.ts.map +1 -1
  451. package/dist/ui/skeleton.js +2 -2
  452. package/dist/ui/skeleton.js.map +1 -1
  453. package/dist/ui/slider.d.ts +2 -2
  454. package/dist/ui/slider.d.ts.map +1 -1
  455. package/dist/ui/slider.js +5 -5
  456. package/dist/ui/slider.js.map +1 -1
  457. package/dist/ui/spinner.d.ts.map +1 -1
  458. package/dist/ui/spinner.js +21 -21
  459. package/dist/ui/spinner.js.map +1 -1
  460. package/dist/ui/split-button.d.ts +1 -1
  461. package/dist/ui/split-button.d.ts.map +1 -1
  462. package/dist/ui/split-button.js +28 -28
  463. package/dist/ui/split-button.js.map +1 -1
  464. package/dist/ui/stack.d.ts +1 -1
  465. package/dist/ui/stack.d.ts.map +1 -1
  466. package/dist/ui/stack.js.map +1 -1
  467. package/dist/ui/stat-card.d.ts.map +1 -1
  468. package/dist/ui/stat-card.js +73 -73
  469. package/dist/ui/stat-card.js.map +1 -1
  470. package/dist/ui/status-dot.d.ts.map +1 -1
  471. package/dist/ui/status-dot.js.map +1 -1
  472. package/dist/ui/stepper.d.ts +1 -1
  473. package/dist/ui/stepper.d.ts.map +1 -1
  474. package/dist/ui/stepper.js +48 -48
  475. package/dist/ui/stepper.js.map +1 -1
  476. package/dist/ui/switch.d.ts +1 -1
  477. package/dist/ui/switch.d.ts.map +1 -1
  478. package/dist/ui/switch.js +15 -15
  479. package/dist/ui/switch.js.map +1 -1
  480. package/dist/ui/table.d.ts +1 -1
  481. package/dist/ui/table.d.ts.map +1 -1
  482. package/dist/ui/table.js.map +1 -1
  483. package/dist/ui/tabs.d.ts +2 -2
  484. package/dist/ui/tabs.d.ts.map +1 -1
  485. package/dist/ui/tabs.js +52 -52
  486. package/dist/ui/tabs.js.map +1 -1
  487. package/dist/ui/text.d.ts +1 -1
  488. package/dist/ui/text.d.ts.map +1 -1
  489. package/dist/ui/text.js.map +1 -1
  490. package/dist/ui/textarea.d.ts.map +1 -1
  491. package/dist/ui/textarea.js +13 -13
  492. package/dist/ui/textarea.js.map +1 -1
  493. package/dist/ui/toast-registry.js.map +1 -1
  494. package/dist/ui/toast.d.ts +3 -3
  495. package/dist/ui/toast.d.ts.map +1 -1
  496. package/dist/ui/toast.js +164 -164
  497. package/dist/ui/toast.js.map +1 -1
  498. package/dist/ui/toaster.d.ts.map +1 -1
  499. package/dist/ui/toaster.js +6 -6
  500. package/dist/ui/toaster.js.map +1 -1
  501. package/dist/ui/toggle-group.d.ts +1 -1
  502. package/dist/ui/toggle-group.d.ts.map +1 -1
  503. package/dist/ui/toggle-group.js.map +1 -1
  504. package/dist/ui/toggle.d.ts +1 -1
  505. package/dist/ui/toggle.d.ts.map +1 -1
  506. package/dist/ui/toggle.js +14 -14
  507. package/dist/ui/toggle.js.map +1 -1
  508. package/dist/ui/tooltip.d.ts +2 -2
  509. package/dist/ui/tooltip.d.ts.map +1 -1
  510. package/dist/ui/tooltip.js +26 -26
  511. package/dist/ui/tooltip.js.map +1 -1
  512. package/dist/ui/tree-view/index.d.ts +2 -2
  513. package/dist/ui/tree-view/index.d.ts.map +1 -1
  514. package/dist/ui/tree-view/index.js +1 -1
  515. package/dist/ui/tree-view/tree-view.d.ts +1 -1
  516. package/dist/ui/tree-view/tree-view.d.ts.map +1 -1
  517. package/dist/ui/visually-hidden.d.ts.map +1 -1
  518. package/dist/ui/visually-hidden.js.map +1 -1
  519. package/docs/components/_header.md +96 -0
  520. package/docs/rollback.md +179 -0
  521. package/llms-full.txt +97 -1
  522. package/llms.txt +24 -2
  523. package/package.json +296 -277
  524. package/dist/_chunks/framer.js +0 -5604
  525. package/dist/_chunks/framer.js.map +0 -1
  526. package/dist/_chunks/rolldown-runtime.js +0 -21
  527. package/dist/_chunks/sonner.js +0 -616
  528. package/dist/_chunks/sonner.js.map +0 -1
  529. package/dist/_chunks/stat-row.js +0 -432
  530. package/dist/_chunks/stat-row.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"top-bar.js","names":[],"sources":["../../src/shell/top-bar.tsx"],"sourcesContent":["'use client'\n\n/**\n * TopBar v2 — Composition-based application top bar.\n *\n * Subcomponents: TopBar.Left, TopBar.Center, TopBar.Right,\n * TopBar.Section, TopBar.IconButton, TopBar.Title, TopBar.UserMenu.\n */\nimport * as React from 'react'\nimport { useColorMode } from '../hooks/use-color-mode'\nimport { Avatar, AvatarFallback, AvatarImage } from '../ui/avatar'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from '../ui/dropdown-menu'\nimport {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from '../ui/tooltip'\nimport { IconLogout, IconUser, IconMoon, IconSun } from '@tabler/icons-react'\nimport { Icon } from '../ui/icon'\nimport { cn } from '../ui/lib/utils'\n\n// -----------------------------------------------------------------------\n// Types\n// -----------------------------------------------------------------------\n\nexport interface TopBarUser {\n name: string\n email?: string\n image?: string | null\n}\n\nexport interface UserMenuItem {\n /** Display label */\n label: string\n /** Optional icon (ReactNode) */\n icon?: React.ReactNode\n /** Navigate via onNavigate when clicked */\n href?: string\n /** Custom click handler */\n onClick?: () => void\n /** Render a separator before this item */\n separator?: boolean\n /** Text color semantic token (e.g. \"error\") — maps to text-{color} */\n color?: string\n /** Badge content — string for count, true for dot indicator */\n badge?: string | boolean\n /** Whether the item is disabled */\n disabled?: boolean\n}\n\n// -----------------------------------------------------------------------\n// TopBar (root)\n// -----------------------------------------------------------------------\n\ninterface TopBarRootProps extends React.HTMLAttributes<HTMLElement> {\n children: React.ReactNode\n className?: string\n}\n\nconst TopBarRoot = React.forwardRef<HTMLElement, TopBarRootProps>(\n ({ className, children, ...props }, ref) => {\n // Detect if a Center zone is present to switch to grid layout\n const hasCenter = React.Children.toArray(children).some(\n (child) => React.isValidElement(child) && child.type === TopBarCenter,\n )\n\n return (\n <header\n {...props}\n ref={ref}\n className={cn(\n 'z-sticky w-full border-b border-surface-border-strong bg-surface-raised px-ds-05 py-ds-04 md:px-ds-06',\n hasCenter\n ? 'grid grid-cols-[1fr_auto_1fr] items-center'\n : 'flex items-center',\n className,\n )}\n >\n {children}\n </header>\n )\n },\n)\nTopBarRoot.displayName = 'TopBar'\n\n// -----------------------------------------------------------------------\n// TopBar.Left\n// -----------------------------------------------------------------------\n\ninterface TopBarLeftProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n}\n\nconst TopBarLeft = React.forwardRef<HTMLDivElement, TopBarLeftProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex items-center gap-ds-04', className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarLeft.displayName = 'TopBar.Left'\n\n// -----------------------------------------------------------------------\n// TopBar.Center\n// -----------------------------------------------------------------------\n\ninterface TopBarCenterProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n}\n\nconst TopBarCenter = React.forwardRef<HTMLDivElement, TopBarCenterProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex items-center justify-center px-ds-04', className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarCenter.displayName = 'TopBar.Center'\n\n// -----------------------------------------------------------------------\n// TopBar.Right\n// -----------------------------------------------------------------------\n\ninterface TopBarRightProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n}\n\nconst TopBarRight = React.forwardRef<HTMLDivElement, TopBarRightProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('ml-auto flex items-center gap-ds-04', className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarRight.displayName = 'TopBar.Right'\n\n// -----------------------------------------------------------------------\n// TopBar.Section\n// -----------------------------------------------------------------------\n\nconst gapMap = {\n tight: 'gap-ds-02',\n default: 'gap-ds-04',\n loose: 'gap-ds-06',\n} as const\n\ninterface TopBarSectionProps extends React.HTMLAttributes<HTMLDivElement> {\n gap?: keyof typeof gapMap\n children: React.ReactNode\n}\n\nconst TopBarSection = React.forwardRef<HTMLDivElement, TopBarSectionProps>(\n ({ gap = 'default', className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex items-center', gapMap[gap], className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarSection.displayName = 'TopBar.Section'\n\n// -----------------------------------------------------------------------\n// TopBar.IconButton\n// -----------------------------------------------------------------------\n\ninterface TopBarIconButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n icon: React.ReactNode\n tooltip: string\n}\n\nconst TopBarIconButton = React.forwardRef<\n HTMLButtonElement,\n TopBarIconButtonProps\n>(({ icon, tooltip, className, ...props }, ref) => (\n <Tooltip>\n <TooltipTrigger asChild>\n <button\n ref={ref}\n type=\"button\"\n aria-label={tooltip}\n className={cn(\n 'flex h-ds-sm-plus w-ds-sm-plus items-center justify-center rounded-ds-full border border-surface-border-strong bg-surface-raised-hover text-surface-fg-muted transition-[color,background-color,border-color,transform] hover:bg-surface-raised-active active:scale-90 duration-fast-01 ease-productive-standard',\n className,\n )}\n {...props}\n >\n <span className=\"[&>svg]:h-ico-sm [&>svg]:w-ico-sm\" aria-hidden=\"true\">\n {icon}\n </span>\n </button>\n </TooltipTrigger>\n <TooltipContent side=\"bottom\" align=\"center\">\n {tooltip}\n </TooltipContent>\n </Tooltip>\n))\nTopBarIconButton.displayName = 'TopBar.IconButton'\n\n// -----------------------------------------------------------------------\n// TopBar.Title\n// -----------------------------------------------------------------------\n\ninterface TopBarTitleProps extends React.HTMLAttributes<HTMLHeadingElement> {\n children: React.ReactNode\n}\n\nconst TopBarTitle = React.forwardRef<HTMLHeadingElement, TopBarTitleProps>(\n ({ className, children, ...props }, ref) => (\n <h2\n ref={ref}\n className={cn(\n 'hidden text-ds-lg text-surface-fg md:block',\n className,\n )}\n {...props}\n >\n {children}\n </h2>\n ),\n)\nTopBarTitle.displayName = 'TopBar.Title'\n\n// -----------------------------------------------------------------------\n// TopBar.UserMenu\n// -----------------------------------------------------------------------\n\ninterface TopBarUserMenuProps {\n user: TopBarUser\n onNavigate?: (path: string) => void\n onLogout?: () => void\n userMenuItems?: UserMenuItem[]\n className?: string\n}\n\nconst TopBarUserMenu = React.forwardRef<HTMLButtonElement, TopBarUserMenuProps>(\n ({ user, onNavigate, onLogout, userMenuItems, className }, ref) => {\n const { colorMode, toggleColorMode } = useColorMode()\n\n return (\n <DropdownMenu>\n <Tooltip>\n <TooltipTrigger asChild>\n <DropdownMenuTrigger asChild>\n <button\n ref={ref}\n type=\"button\"\n className={cn('flex items-center gap-ds-03 outline-hidden focus-visible:ring-2 focus-visible:ring-accent-9 focus-visible:ring-offset-2', className)}\n >\n <Avatar className=\"h-ds-sm-plus w-ds-sm-plus cursor-pointer\">\n {user.image ? (\n <AvatarImage src={user.image} alt={user.name} />\n ) : null}\n <AvatarFallback className=\"bg-surface-raised-hover text-surface-fg\">\n {user.name?.charAt(0).toUpperCase()}\n </AvatarFallback>\n </Avatar>\n </button>\n </DropdownMenuTrigger>\n </TooltipTrigger>\n <TooltipContent side=\"bottom\" align=\"center\">\n User Menu\n </TooltipContent>\n </Tooltip>\n\n <DropdownMenuContent\n className=\"w-[200px] rounded-ds-xl border border-surface-border-strong bg-surface-overlay p-0 shadow-floating\"\n sideOffset={8}\n align=\"end\"\n >\n {/* User Info */}\n <div className=\"border-b border-surface-border-strong px-ds-05 py-ds-04\">\n <p className=\"text-ds-md text-surface-fg\">{user.name}</p>\n {user.email && (\n <p className=\"text-ds-sm text-surface-fg-subtle truncate\">{user.email}</p>\n )}\n </div>\n\n <DropdownMenuItem\n className=\"flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised\"\n onClick={() => onNavigate?.('/profile')}\n >\n <Icon icon={IconUser} size=\"sm\" className=\"text-surface-fg-muted\" />\n <span className=\"text-ds-md text-surface-fg-muted\">Profile</span>\n </DropdownMenuItem>\n\n {/* Custom user menu items */}\n {userMenuItems?.map((item, index) => {\n const colorMap: Record<string, string> = {\n error: 'text-error-11',\n success: 'text-success-11',\n warning: 'text-warning-11',\n info: 'text-info-11',\n }\n const textColor = item.color\n ? (colorMap[item.color] ?? 'text-surface-fg-muted')\n : 'text-surface-fg-muted'\n return (\n <React.Fragment key={item.label + index}>\n {item.separator && (\n <DropdownMenuSeparator className=\"bg-surface-border\" />\n )}\n <DropdownMenuItem\n className={cn(\n 'flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised',\n item.disabled && 'pointer-events-none opacity-action-disabled',\n )}\n disabled={item.disabled}\n onClick={() => {\n if (item.disabled) return\n if (item.onClick) item.onClick()\n else if (item.href) onNavigate?.(item.href)\n }}\n >\n {item.icon && (\n <span\n className={cn(\n '[&>svg]:h-ico-sm [&>svg]:w-ico-sm',\n textColor,\n )}\n >\n {item.icon}\n </span>\n )}\n <span className={cn('text-ds-md', textColor)}>\n {item.label}\n </span>\n {item.badge != null &&\n item.badge !== false &&\n (typeof item.badge === 'string' ? (\n <span className=\"ml-auto inline-flex h-[18px] min-w-[18px] items-center justify-center rounded-ds-full bg-error-9 px-ds-02 text-[10px] font-semibold leading-none text-error-fg\">\n {item.badge}\n </span>\n ) : (\n <span className=\"ml-auto h-[8px] w-[8px] rounded-ds-full bg-error-9\" />\n ))}\n </DropdownMenuItem>\n </React.Fragment>\n )\n })}\n\n <DropdownMenuItem\n className=\"flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised\"\n onClick={toggleColorMode}\n >\n {colorMode === 'dark' ? (\n <Icon icon={IconSun} size=\"sm\" className=\"text-surface-fg-muted\" />\n ) : (\n <Icon icon={IconMoon} size=\"sm\" className=\"text-surface-fg-muted\" />\n )}\n <span className=\"text-ds-md text-surface-fg-muted\">\n {colorMode === 'dark' ? 'Light Mode' : 'Dark Mode'}\n </span>\n </DropdownMenuItem>\n\n {onLogout && (\n <>\n <DropdownMenuSeparator className=\"bg-surface-border\" />\n <DropdownMenuItem\n className=\"flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised\"\n onClick={onLogout}\n >\n <Icon icon={IconLogout} size=\"sm\" className=\"text-error-11\" />\n <span className=\"text-ds-md text-error-11\">Logout</span>\n </DropdownMenuItem>\n </>\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n },\n)\nTopBarUserMenu.displayName = 'TopBar.UserMenu'\n\n// -----------------------------------------------------------------------\n// Compound export\n// -----------------------------------------------------------------------\n\nexport type TopBarProps = TopBarRootProps\n\nconst TopBar = Object.assign(TopBarRoot, {\n Left: TopBarLeft,\n Center: TopBarCenter,\n Right: TopBarRight,\n Section: TopBarSection,\n IconButton: TopBarIconButton,\n Title: TopBarTitle,\n UserMenu: TopBarUserMenu,\n})\n\nexport { TopBar }\n"],"mappings":"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"}
1
+ {"version":3,"file":"top-bar.js","names":[],"sources":["../../src/shell/top-bar.tsx"],"sourcesContent":["'use client'\n\n/**\n * TopBar v2 — Composition-based application top bar.\n *\n * Subcomponents: TopBar.Left, TopBar.Center, TopBar.Right,\n * TopBar.Section, TopBar.IconButton, TopBar.Title, TopBar.UserMenu.\n */\nimport { IconLogout, IconMoon, IconSun,IconUser } from '@tabler/icons-react'\nimport * as React from 'react'\n\nimport { useColorMode } from '../hooks/use-color-mode'\nimport { Avatar, AvatarFallback, AvatarImage } from '../ui/avatar'\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from '../ui/dropdown-menu'\nimport { Icon } from '../ui/icon'\nimport { cn } from '../ui/lib/utils'\nimport {\n Tooltip,\n TooltipContent,\n TooltipTrigger,\n} from '../ui/tooltip'\n\n// -----------------------------------------------------------------------\n// Types\n// -----------------------------------------------------------------------\n\nexport interface TopBarUser {\n name: string\n email?: string\n image?: string | null\n}\n\nexport interface UserMenuItem {\n /** Display label */\n label: string\n /** Optional icon (ReactNode) */\n icon?: React.ReactNode\n /** Navigate via onNavigate when clicked */\n href?: string\n /** Custom click handler */\n onClick?: () => void\n /** Render a separator before this item */\n separator?: boolean\n /** Text color semantic token (e.g. \"error\") — maps to text-{color} */\n color?: string\n /** Badge content — string for count, true for dot indicator */\n badge?: string | boolean\n /** Whether the item is disabled */\n disabled?: boolean\n}\n\n// -----------------------------------------------------------------------\n// TopBar (root)\n// -----------------------------------------------------------------------\n\ninterface TopBarRootProps extends React.HTMLAttributes<HTMLElement> {\n children: React.ReactNode\n className?: string\n}\n\nconst TopBarRoot = React.forwardRef<HTMLElement, TopBarRootProps>(\n ({ className, children, ...props }, ref) => {\n // Detect if a Center zone is present to switch to grid layout\n const hasCenter = React.Children.toArray(children).some(\n (child) => React.isValidElement(child) && child.type === TopBarCenter,\n )\n\n return (\n <header\n {...props}\n ref={ref}\n className={cn(\n 'z-sticky w-full border-b border-surface-border-strong bg-surface-raised px-ds-05 py-ds-04 md:px-ds-06',\n hasCenter\n ? 'grid grid-cols-[1fr_auto_1fr] items-center'\n : 'flex items-center',\n className,\n )}\n >\n {children}\n </header>\n )\n },\n)\nTopBarRoot.displayName = 'TopBar'\n\n// -----------------------------------------------------------------------\n// TopBar.Left\n// -----------------------------------------------------------------------\n\ninterface TopBarLeftProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n}\n\nconst TopBarLeft = React.forwardRef<HTMLDivElement, TopBarLeftProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex items-center gap-ds-04', className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarLeft.displayName = 'TopBar.Left'\n\n// -----------------------------------------------------------------------\n// TopBar.Center\n// -----------------------------------------------------------------------\n\ninterface TopBarCenterProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n}\n\nconst TopBarCenter = React.forwardRef<HTMLDivElement, TopBarCenterProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex items-center justify-center px-ds-04', className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarCenter.displayName = 'TopBar.Center'\n\n// -----------------------------------------------------------------------\n// TopBar.Right\n// -----------------------------------------------------------------------\n\ninterface TopBarRightProps extends React.HTMLAttributes<HTMLDivElement> {\n children: React.ReactNode\n}\n\nconst TopBarRight = React.forwardRef<HTMLDivElement, TopBarRightProps>(\n ({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('ml-auto flex items-center gap-ds-04', className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarRight.displayName = 'TopBar.Right'\n\n// -----------------------------------------------------------------------\n// TopBar.Section\n// -----------------------------------------------------------------------\n\nconst gapMap = {\n tight: 'gap-ds-02',\n default: 'gap-ds-04',\n loose: 'gap-ds-06',\n} as const\n\ninterface TopBarSectionProps extends React.HTMLAttributes<HTMLDivElement> {\n gap?: keyof typeof gapMap\n children: React.ReactNode\n}\n\nconst TopBarSection = React.forwardRef<HTMLDivElement, TopBarSectionProps>(\n ({ gap = 'default', className, children, ...props }, ref) => (\n <div\n ref={ref}\n className={cn('flex items-center', gapMap[gap], className)}\n {...props}\n >\n {children}\n </div>\n ),\n)\nTopBarSection.displayName = 'TopBar.Section'\n\n// -----------------------------------------------------------------------\n// TopBar.IconButton\n// -----------------------------------------------------------------------\n\ninterface TopBarIconButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n icon: React.ReactNode\n tooltip: string\n}\n\nconst TopBarIconButton = React.forwardRef<\n HTMLButtonElement,\n TopBarIconButtonProps\n>(({ icon, tooltip, className, ...props }, ref) => (\n <Tooltip>\n <TooltipTrigger asChild>\n <button\n ref={ref}\n type=\"button\"\n aria-label={tooltip}\n className={cn(\n 'flex h-ds-sm-plus w-ds-sm-plus items-center justify-center rounded-ds-full border border-surface-border-strong bg-surface-raised-hover text-surface-fg-muted transition-[color,background-color,border-color,transform] hover:bg-surface-raised-active active:scale-90 duration-fast-01 ease-productive-standard',\n className,\n )}\n {...props}\n >\n <span className=\"[&>svg]:h-ico-sm [&>svg]:w-ico-sm\" aria-hidden=\"true\">\n {icon}\n </span>\n </button>\n </TooltipTrigger>\n <TooltipContent side=\"bottom\" align=\"center\">\n {tooltip}\n </TooltipContent>\n </Tooltip>\n))\nTopBarIconButton.displayName = 'TopBar.IconButton'\n\n// -----------------------------------------------------------------------\n// TopBar.Title\n// -----------------------------------------------------------------------\n\ninterface TopBarTitleProps extends React.HTMLAttributes<HTMLHeadingElement> {\n children: React.ReactNode\n}\n\nconst TopBarTitle = React.forwardRef<HTMLHeadingElement, TopBarTitleProps>(\n ({ className, children, ...props }, ref) => (\n <h2\n ref={ref}\n className={cn(\n 'hidden text-ds-lg text-surface-fg md:block',\n className,\n )}\n {...props}\n >\n {children}\n </h2>\n ),\n)\nTopBarTitle.displayName = 'TopBar.Title'\n\n// -----------------------------------------------------------------------\n// TopBar.UserMenu\n// -----------------------------------------------------------------------\n\ninterface TopBarUserMenuProps {\n user: TopBarUser\n onNavigate?: (path: string) => void\n onLogout?: () => void\n userMenuItems?: UserMenuItem[]\n className?: string\n}\n\nconst TopBarUserMenu = React.forwardRef<HTMLButtonElement, TopBarUserMenuProps>(\n ({ user, onNavigate, onLogout, userMenuItems, className }, ref) => {\n const { colorMode, toggleColorMode } = useColorMode()\n\n return (\n <DropdownMenu>\n <Tooltip>\n <TooltipTrigger asChild>\n <DropdownMenuTrigger asChild>\n <button\n ref={ref}\n type=\"button\"\n className={cn('flex items-center gap-ds-03 outline-hidden focus-visible:ring-2 focus-visible:ring-accent-9 focus-visible:ring-offset-2', className)}\n >\n <Avatar className=\"h-ds-sm-plus w-ds-sm-plus cursor-pointer\">\n {user.image ? (\n <AvatarImage src={user.image} alt={user.name} />\n ) : null}\n <AvatarFallback className=\"bg-surface-raised-hover text-surface-fg\">\n {user.name?.charAt(0).toUpperCase()}\n </AvatarFallback>\n </Avatar>\n </button>\n </DropdownMenuTrigger>\n </TooltipTrigger>\n <TooltipContent side=\"bottom\" align=\"center\">\n User Menu\n </TooltipContent>\n </Tooltip>\n\n <DropdownMenuContent\n className=\"w-[200px] rounded-ds-xl border border-surface-border-strong bg-surface-overlay p-0 shadow-floating\"\n sideOffset={8}\n align=\"end\"\n >\n {/* User Info */}\n <div className=\"border-b border-surface-border-strong px-ds-05 py-ds-04\">\n <p className=\"text-ds-md text-surface-fg\">{user.name}</p>\n {user.email && (\n <p className=\"text-ds-sm text-surface-fg-subtle truncate\">{user.email}</p>\n )}\n </div>\n\n <DropdownMenuItem\n className=\"flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised\"\n onClick={() => onNavigate?.('/profile')}\n >\n <Icon icon={IconUser} size=\"sm\" className=\"text-surface-fg-muted\" />\n <span className=\"text-ds-md text-surface-fg-muted\">Profile</span>\n </DropdownMenuItem>\n\n {/* Custom user menu items */}\n {userMenuItems?.map((item, index) => {\n const colorMap: Record<string, string> = {\n error: 'text-error-11',\n success: 'text-success-11',\n warning: 'text-warning-11',\n info: 'text-info-11',\n }\n const textColor = item.color\n ? (colorMap[item.color] ?? 'text-surface-fg-muted')\n : 'text-surface-fg-muted'\n return (\n <React.Fragment key={item.label + index}>\n {item.separator && (\n <DropdownMenuSeparator className=\"bg-surface-border\" />\n )}\n <DropdownMenuItem\n className={cn(\n 'flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised',\n item.disabled && 'pointer-events-none opacity-action-disabled',\n )}\n disabled={item.disabled}\n onClick={() => {\n if (item.disabled) return\n if (item.onClick) item.onClick()\n else if (item.href) onNavigate?.(item.href)\n }}\n >\n {item.icon && (\n <span\n className={cn(\n '[&>svg]:h-ico-sm [&>svg]:w-ico-sm',\n textColor,\n )}\n >\n {item.icon}\n </span>\n )}\n <span className={cn('text-ds-md', textColor)}>\n {item.label}\n </span>\n {item.badge != null &&\n item.badge !== false &&\n (typeof item.badge === 'string' ? (\n <span className=\"ml-auto inline-flex h-[18px] min-w-[18px] items-center justify-center rounded-ds-full bg-error-9 px-ds-02 text-[10px] font-semibold leading-none text-error-fg\">\n {item.badge}\n </span>\n ) : (\n <span className=\"ml-auto h-[8px] w-[8px] rounded-ds-full bg-error-9\" />\n ))}\n </DropdownMenuItem>\n </React.Fragment>\n )\n })}\n\n <DropdownMenuItem\n className=\"flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised\"\n onClick={toggleColorMode}\n >\n {colorMode === 'dark' ? (\n <Icon icon={IconSun} size=\"sm\" className=\"text-surface-fg-muted\" />\n ) : (\n <Icon icon={IconMoon} size=\"sm\" className=\"text-surface-fg-muted\" />\n )}\n <span className=\"text-ds-md text-surface-fg-muted\">\n {colorMode === 'dark' ? 'Light Mode' : 'Dark Mode'}\n </span>\n </DropdownMenuItem>\n\n {onLogout && (\n <>\n <DropdownMenuSeparator className=\"bg-surface-border\" />\n <DropdownMenuItem\n className=\"flex w-full cursor-pointer items-center gap-ds-03 px-ds-05 py-ds-04 hover:bg-surface-raised\"\n onClick={onLogout}\n >\n <Icon icon={IconLogout} size=\"sm\" className=\"text-error-11\" />\n <span className=\"text-ds-md text-error-11\">Logout</span>\n </DropdownMenuItem>\n </>\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n )\n },\n)\nTopBarUserMenu.displayName = 'TopBar.UserMenu'\n\n// -----------------------------------------------------------------------\n// Compound export\n// -----------------------------------------------------------------------\n\nexport type TopBarProps = TopBarRootProps\n\nconst TopBar = Object.assign(TopBarRoot, {\n Left: TopBarLeft,\n Center: TopBarCenter,\n Right: TopBarRight,\n Section: TopBarSection,\n IconButton: TopBarIconButton,\n Title: TopBarTitle,\n UserMenu: TopBarUserMenu,\n})\n\nexport { TopBar }\n"],"mappings":"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"}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
- var __create = Object.create;
3
2
  var __defProp = Object.defineProperty;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
6
  var __export = (target, all) => {
9
7
  for (var name in all)
@@ -17,509 +15,27 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
19
  var preset_exports = {};
30
20
  __export(preset_exports, {
31
- default: () => t
21
+ default: () => e
32
22
  });
33
23
  module.exports = __toCommonJS(preset_exports);
34
- var import_plugin = __toESM(require("tailwindcss/plugin"), 1);
35
- var t = {
36
- theme: { extend: {
37
- screens: {
38
- sm: "640px",
39
- md: "768px",
40
- lg: "1024px",
41
- xl: "1280px",
42
- "2xl": "1536px"
43
- },
44
- fontFamily: {
45
- sans: [
46
- "var(--font-sans)",
47
- "system-ui",
48
- "sans-serif"
49
- ],
50
- display: [
51
- "var(--font-display)",
52
- "system-ui",
53
- "sans-serif"
54
- ],
55
- body: ["var(--font-body)", "sans-serif"],
56
- accent: ["var(--font-accent)", "sans-serif"],
57
- mono: ["var(--font-mono)", "monospace"]
58
- },
59
- fontWeight: {
60
- light: "var(--font-weight-light)",
61
- regular: "var(--font-weight-regular)",
62
- medium: "var(--font-weight-medium)",
63
- semibold: "var(--font-weight-semibold)",
64
- bold: "var(--font-weight-bold)"
65
- },
66
- letterSpacing: {
67
- "ds-tighter": "var(--tracking-tighter)",
68
- "ds-tight": "var(--tracking-tight)",
69
- "ds-normal": "var(--tracking-normal)",
70
- "ds-wide": "var(--tracking-wide)",
71
- "ds-wider": "var(--tracking-wider)",
72
- "ds-widest": "var(--tracking-widest)"
73
- },
74
- lineHeight: {
75
- "ds-none": "var(--line-height-none)",
76
- "ds-tight": "var(--line-height-tight)",
77
- "ds-snug": "var(--line-height-snug)",
78
- "ds-normal": "var(--line-height-normal)",
79
- "ds-relaxed": "var(--line-height-relaxed)",
80
- "ds-loose": "var(--line-height-loose)"
81
- },
82
- fontSize: {
83
- "ds-xs": ["var(--font-size-xs)", { lineHeight: "var(--line-height-relaxed)" }],
84
- "ds-sm": ["var(--font-size-sm)", { lineHeight: "var(--line-height-relaxed)" }],
85
- "ds-md": ["var(--font-size-md)", { lineHeight: "var(--line-height-relaxed)" }],
86
- "ds-base": ["var(--font-size-base)", { lineHeight: "var(--line-height-relaxed)" }],
87
- "ds-lg": ["var(--font-size-lg)", { lineHeight: "var(--line-height-normal)" }],
88
- "ds-xl": ["var(--font-size-xl)", { lineHeight: "var(--line-height-snug)" }],
89
- "ds-2xl": ["var(--font-size-2xl)", { lineHeight: "var(--line-height-snug)" }],
90
- "ds-3xl": ["var(--font-size-3xl)", { lineHeight: "var(--line-height-tight)" }],
91
- "ds-4xl": ["var(--font-size-4xl)", { lineHeight: "var(--line-height-tight)" }],
92
- "ds-5xl": ["var(--font-size-5xl)", { lineHeight: "var(--line-height-tight)" }],
93
- "ds-6xl": ["var(--font-size-6xl)", { lineHeight: "var(--line-height-tight)" }]
94
- },
95
- borderWidth: {
96
- "ds-sm": "var(--border-width-sm)",
97
- "ds-md": "var(--border-width-md)",
98
- "ds-lg": "var(--border-width-lg)",
99
- focus: "var(--border-focus-width)"
100
- },
101
- borderRadius: {
102
- "ds-none": "0",
103
- "ds-sm": "var(--radius-sm)",
104
- "ds-default": "var(--radius-default)",
105
- "ds-md": "var(--radius-md)",
106
- "ds-lg": "var(--radius-lg)",
107
- "ds-xl": "var(--radius-xl)",
108
- "ds-2xl": "var(--radius-2xl)",
109
- "ds-full": "var(--radius-full)"
110
- },
111
- spacing: {
112
- "ds-01": "var(--spacing-01)",
113
- "ds-02": "var(--spacing-02)",
114
- "ds-02b": "var(--spacing-02b)",
115
- "ds-03": "var(--spacing-03)",
116
- "ds-04": "var(--spacing-04)",
117
- "ds-05": "var(--spacing-05)",
118
- "ds-05b": "var(--spacing-05b)",
119
- "ds-06": "var(--spacing-06)",
120
- "ds-06b": "var(--spacing-06b)",
121
- "ds-07": "var(--spacing-07)",
122
- "ds-08": "var(--spacing-08)",
123
- "ds-09": "var(--spacing-09)",
124
- "ds-10": "var(--spacing-10)",
125
- "ds-11": "var(--spacing-11)",
126
- "ds-12": "var(--spacing-12)",
127
- "ds-13": "var(--spacing-13)",
128
- "page-x": "var(--spacing-page-x)",
129
- "page-y": "var(--spacing-page-y)",
130
- "section-gap": "var(--spacing-section-gap)",
131
- "card-gap": "var(--spacing-card-gap)",
132
- "stack-gap": "var(--spacing-stack-gap)"
133
- },
134
- width: {
135
- "ds-xs": "var(--size-xs)",
136
- "ds-xs-plus": "var(--size-xs-plus)",
137
- "ds-sm": "var(--size-sm)",
138
- "ds-sm-plus": "var(--size-sm-plus)",
139
- "ds-md": "var(--size-md)",
140
- "ds-lg": "var(--size-lg)",
141
- "ds-xl": "var(--size-xl)",
142
- "ico-sm": "var(--icon-sm)",
143
- "ico-md": "var(--icon-md)",
144
- "ico-lg": "var(--icon-lg)",
145
- "ico-xl": "var(--icon-xl)"
146
- },
147
- height: {
148
- "ds-xs": "var(--size-xs)",
149
- "ds-xs-plus": "var(--size-xs-plus)",
150
- "ds-sm": "var(--size-sm)",
151
- "ds-sm-plus": "var(--size-sm-plus)",
152
- "ds-md": "var(--size-md)",
153
- "ds-lg": "var(--size-lg)",
154
- "ds-xl": "var(--size-xl)",
155
- "ico-sm": "var(--icon-sm)",
156
- "ico-md": "var(--icon-md)",
157
- "ico-lg": "var(--icon-lg)",
158
- "ico-xl": "var(--icon-xl)"
159
- },
160
- minHeight: {
161
- "ds-xs": "var(--size-xs)",
162
- "ds-xs-plus": "var(--size-xs-plus)",
163
- "ds-sm": "var(--size-sm)",
164
- "ds-sm-plus": "var(--size-sm-plus)",
165
- "ds-md": "var(--size-md)",
166
- "ds-lg": "var(--size-lg)",
167
- "ds-xl": "var(--size-xl)"
168
- },
169
- maxWidth: {
170
- layout: "var(--max-width)",
171
- "layout-body": "var(--max-width-body)"
172
- },
173
- minWidth: {
174
- "ds-xs": "var(--size-xs)",
175
- "ds-sm": "var(--size-sm)",
176
- "ds-md": "var(--size-md)",
177
- "ds-lg": "var(--size-lg)",
178
- "ds-xl": "var(--size-xl)"
179
- },
180
- opacity: {
181
- "action-hover": "var(--action-hover-opacity)",
182
- "action-selected": "var(--action-selected-opacity)",
183
- "action-disabled": "var(--action-disabled-opacity)",
184
- "action-focus": "var(--action-focus-opacity)",
185
- "action-active": "var(--action-active-opacity)"
186
- },
187
- colors: {
188
- "accent-1": "var(--color-accent-1)",
189
- "accent-2": "var(--color-accent-2)",
190
- "accent-3": "var(--color-accent-3)",
191
- "accent-4": "var(--color-accent-4)",
192
- "accent-5": "var(--color-accent-5)",
193
- "accent-6": "var(--color-accent-6)",
194
- "accent-7": "var(--color-accent-7)",
195
- "accent-8": "var(--color-accent-8)",
196
- "accent-9": "var(--color-accent-9)",
197
- "accent-10": "var(--color-accent-10)",
198
- "accent-11": "var(--color-accent-11)",
199
- "accent-12": "var(--color-accent-12)",
200
- "accent-fg": "var(--color-accent-fg)",
201
- "secondary-1": "var(--color-secondary-1)",
202
- "secondary-2": "var(--color-secondary-2)",
203
- "secondary-3": "var(--color-secondary-3)",
204
- "secondary-4": "var(--color-secondary-4)",
205
- "secondary-5": "var(--color-secondary-5)",
206
- "secondary-6": "var(--color-secondary-6)",
207
- "secondary-7": "var(--color-secondary-7)",
208
- "secondary-8": "var(--color-secondary-8)",
209
- "secondary-9": "var(--color-secondary-9)",
210
- "secondary-10": "var(--color-secondary-10)",
211
- "secondary-11": "var(--color-secondary-11)",
212
- "secondary-12": "var(--color-secondary-12)",
213
- "secondary-fg": "var(--color-secondary-fg)",
214
- "surface-base": "var(--color-surface-base)",
215
- "surface-sunken": "var(--color-surface-sunken)",
216
- "surface-raised": "var(--color-surface-raised)",
217
- "surface-overlay": "var(--color-surface-overlay)",
218
- "surface-raised-hover": "var(--color-surface-raised-hover)",
219
- "surface-raised-active": "var(--color-surface-raised-active)",
220
- "surface-inverted": "var(--color-surface-inverted)",
221
- "surface-inverted-fg": "var(--color-surface-inverted-fg)",
222
- "surface-disabled": "var(--color-surface-disabled)",
223
- "surface-fg-disabled": "var(--color-surface-fg-disabled)",
224
- "surface-fg": "var(--color-surface-fg)",
225
- "surface-fg-muted": "var(--color-surface-fg-muted)",
226
- "surface-fg-subtle": "var(--color-surface-fg-subtle)",
227
- "surface-border": "var(--color-surface-border)",
228
- "surface-border-strong": "var(--color-surface-border-strong)",
229
- "surface-border-subtle": "var(--color-surface-border-subtle)",
230
- backdrop: "var(--color-backdrop)",
231
- link: "var(--color-link)",
232
- "link-hover": "var(--color-link-hover)",
233
- "link-visited": "var(--color-link-visited)",
234
- "error-2": "var(--color-error-2)",
235
- "error-3": "var(--color-error-3)",
236
- "error-4": "var(--color-error-4)",
237
- "error-5": "var(--color-error-5)",
238
- "error-7": "var(--color-error-7)",
239
- "error-9": "var(--color-error-9)",
240
- "error-10": "var(--color-error-10)",
241
- "error-11": "var(--color-error-11)",
242
- "error-fg": "var(--color-error-fg)",
243
- "success-2": "var(--color-success-2)",
244
- "success-3": "var(--color-success-3)",
245
- "success-4": "var(--color-success-4)",
246
- "success-5": "var(--color-success-5)",
247
- "success-7": "var(--color-success-7)",
248
- "success-9": "var(--color-success-9)",
249
- "success-10": "var(--color-success-10)",
250
- "success-11": "var(--color-success-11)",
251
- "success-fg": "var(--color-success-fg)",
252
- "warning-2": "var(--color-warning-2)",
253
- "warning-3": "var(--color-warning-3)",
254
- "warning-4": "var(--color-warning-4)",
255
- "warning-5": "var(--color-warning-5)",
256
- "warning-7": "var(--color-warning-7)",
257
- "warning-9": "var(--color-warning-9)",
258
- "warning-10": "var(--color-warning-10)",
259
- "warning-11": "var(--color-warning-11)",
260
- "warning-fg": "var(--color-warning-fg)",
261
- "info-2": "var(--color-info-2)",
262
- "info-3": "var(--color-info-3)",
263
- "info-4": "var(--color-info-4)",
264
- "info-5": "var(--color-info-5)",
265
- "info-7": "var(--color-info-7)",
266
- "info-9": "var(--color-info-9)",
267
- "info-10": "var(--color-info-10)",
268
- "info-11": "var(--color-info-11)",
269
- "info-fg": "var(--color-info-fg)",
270
- "category-teal-3": "var(--color-category-teal-3)",
271
- "category-teal-7": "var(--color-category-teal-7)",
272
- "category-teal-9": "var(--color-category-teal-9)",
273
- "category-teal-11": "var(--color-category-teal-11)",
274
- "category-amber-3": "var(--color-category-amber-3)",
275
- "category-amber-7": "var(--color-category-amber-7)",
276
- "category-amber-9": "var(--color-category-amber-9)",
277
- "category-amber-11": "var(--color-category-amber-11)",
278
- "category-slate-3": "var(--color-category-slate-3)",
279
- "category-slate-7": "var(--color-category-slate-7)",
280
- "category-slate-9": "var(--color-category-slate-9)",
281
- "category-slate-11": "var(--color-category-slate-11)",
282
- "category-indigo-3": "var(--color-category-indigo-3)",
283
- "category-indigo-7": "var(--color-category-indigo-7)",
284
- "category-indigo-9": "var(--color-category-indigo-9)",
285
- "category-indigo-11": "var(--color-category-indigo-11)",
286
- "category-cyan-3": "var(--color-category-cyan-3)",
287
- "category-cyan-7": "var(--color-category-cyan-7)",
288
- "category-cyan-9": "var(--color-category-cyan-9)",
289
- "category-cyan-11": "var(--color-category-cyan-11)",
290
- "category-orange-3": "var(--color-category-orange-3)",
291
- "category-orange-7": "var(--color-category-orange-7)",
292
- "category-orange-9": "var(--color-category-orange-9)",
293
- "category-orange-11": "var(--color-category-orange-11)",
294
- "category-emerald-3": "var(--color-category-emerald-3)",
295
- "category-emerald-7": "var(--color-category-emerald-7)",
296
- "category-emerald-9": "var(--color-category-emerald-9)",
297
- "category-emerald-11": "var(--color-category-emerald-11)",
298
- overlay: "var(--color-overlay)",
299
- disabled: "var(--color-disabled)",
300
- "skeleton-base": "var(--color-skeleton-base)",
301
- "skeleton-shimmer": "var(--color-skeleton-shimmer)",
302
- "inset-glow": "var(--color-inset-glow)",
303
- "inset-glow-strong": "var(--color-inset-glow-strong)",
304
- "inset-glow-subtle": "var(--color-inset-glow-subtle)",
305
- "surface-overlay-light": "var(--color-surface-overlay-light)",
306
- "surface-overlay-dark": "var(--color-surface-overlay-dark)",
307
- "text-shadow": "var(--color-text-shadow)",
308
- "chart-1": "var(--chart-1)",
309
- "chart-2": "var(--chart-2)",
310
- "chart-3": "var(--chart-3)",
311
- "chart-4": "var(--chart-4)",
312
- "chart-5": "var(--chart-5)",
313
- "chart-6": "var(--chart-6)",
314
- "chart-7": "var(--chart-7)",
315
- "chart-8": "var(--chart-8)"
316
- },
317
- keyframes: {
318
- "accordion-down": {
319
- from: { height: "0" },
320
- to: { height: "var(--radix-accordion-content-height)" }
321
- },
322
- "accordion-up": {
323
- from: { height: "var(--radix-accordion-content-height)" },
324
- to: { height: "0" }
325
- },
326
- "collapsible-down": {
327
- from: { height: "0" },
328
- to: { height: "var(--radix-collapsible-content-height)" }
329
- },
330
- "collapsible-up": {
331
- from: { height: "var(--radix-collapsible-content-height)" },
332
- to: { height: "0" }
333
- },
334
- "progress-indeterminate": {
335
- "0%": { transform: "translateX(-100%)" },
336
- "100%": { transform: "translateX(250%)" }
337
- },
338
- "skeleton-shimmer": {
339
- "0%": { backgroundPosition: "-200% 0" },
340
- "100%": { backgroundPosition: "200% 0" }
341
- },
342
- "caret-blink": {
343
- "0%,70%,100%": { opacity: "1" },
344
- "20%,50%": { opacity: "0" }
345
- },
346
- "timer-bar": {
347
- "0%": { transform: "scaleX(1)" },
348
- "100%": { transform: "scaleX(0)" }
349
- },
350
- "popover-in": {
351
- from: {
352
- opacity: "0",
353
- transform: "scale(0.95)"
354
- },
355
- to: {
356
- opacity: "1",
357
- transform: "scale(1)"
358
- }
359
- },
360
- "popover-out": {
361
- from: {
362
- opacity: "1",
363
- transform: "scale(1)"
364
- },
365
- to: {
366
- opacity: "0",
367
- transform: "scale(0.95)"
368
- }
369
- },
370
- "processing-ants": { to: { "--border-angle": "360deg" } }
371
- },
372
- animation: {
373
- "accordion-down": "accordion-down 200ms ease-out",
374
- "accordion-up": "accordion-up 200ms ease-out",
375
- "collapsible-down": "collapsible-down 200ms ease-out",
376
- "collapsible-up": "collapsible-up 200ms ease-out",
377
- "progress-indeterminate": "progress-indeterminate var(--duration-slow-02) var(--ease-productive-standard) infinite",
378
- "skeleton-shimmer": "skeleton-shimmer var(--duration-slow-02) var(--ease-linear) infinite",
379
- "caret-blink": "caret-blink 1.25s ease-out infinite",
380
- "timer-bar": "timer-bar linear forwards",
381
- "popover-in": "popover-in 150ms var(--ease-productive-entrance)",
382
- "popover-out": "popover-out 100ms var(--ease-productive-exit)",
383
- "processing-ants-ambient": "processing-ants 3s linear infinite",
384
- "processing-ants-working": "processing-ants 2s linear infinite",
385
- "processing-ants-urgent": "processing-ants 1s linear infinite"
386
- },
387
- backgroundImage: {
388
- "gradient-brand": "var(--gradient-brand-light)",
389
- "gradient-brand-dark": "var(--gradient-brand-dark)"
390
- },
391
- boxShadow: {
392
- raised: "var(--shadow-raised)",
393
- "raised-hover": "var(--shadow-raised-hover)",
394
- "raised-inner": "var(--shadow-raised-inner)",
395
- floating: "var(--shadow-floating)",
396
- overlay: "var(--shadow-overlay)",
397
- brand: "var(--shadow-brand)",
398
- glow: "var(--shadow-glow)",
399
- inset: "var(--shadow-inset)",
400
- pressed: "var(--shadow-pressed)",
401
- success: "var(--shadow-success)",
402
- error: "var(--shadow-error)",
403
- warning: "var(--shadow-warning)",
404
- "ring-sm": "var(--shadow-ring-sm)",
405
- ring: "var(--shadow-ring)",
406
- kbd: "var(--shadow-kbd)"
407
- },
408
- transitionDuration: {
409
- instant: "var(--duration-instant)",
410
- "fast-01": "var(--duration-fast-01)",
411
- "fast-02": "var(--duration-fast-02)",
412
- "moderate-01": "var(--duration-moderate-01)",
413
- "moderate-01b": "var(--duration-moderate-01b)",
414
- "moderate-02": "var(--duration-moderate-02)",
415
- "slow-01": "var(--duration-slow-01)",
416
- "slow-02": "var(--duration-slow-02)"
417
- },
418
- transitionTimingFunction: {
419
- "productive-standard": "var(--ease-productive-standard)",
420
- "productive-entrance": "var(--ease-productive-entrance)",
421
- "productive-exit": "var(--ease-productive-exit)",
422
- "expressive-standard": "var(--ease-expressive-standard)",
423
- "expressive-entrance": "var(--ease-expressive-entrance)",
424
- "expressive-exit": "var(--ease-expressive-exit)",
425
- bounce: "var(--ease-bounce)",
426
- linear: "var(--ease-linear)"
427
- },
428
- zIndex: {
429
- base: "var(--z-base)",
430
- raised: "var(--z-raised)",
431
- dropdown: "var(--z-dropdown)",
432
- sticky: "var(--z-sticky)",
433
- overlay: "var(--z-overlay)",
434
- modal: "var(--z-modal)",
435
- popover: "var(--z-popover)",
436
- toast: "var(--z-toast)",
437
- tooltip: "var(--z-tooltip)"
24
+ var e = {}, t = false;
25
+ function n() {
26
+ if (t) return;
27
+ t = true;
28
+ let e2 = '\n\u26A0\uFE0F [@devalok/shilp-sutra] DEPRECATION: The JS preset at "./tailwind" is deprecated in 0.37.0 and will be removed in 0.38.0.\n\nEvery class utility you relied on from this preset (bg-surface-raised, p-ds-04, shadow-raised, text-ds-md, etc.) is now emitted zero CSS by Tailwind 4. Your app will ship unstyled unless you migrate.\n\nReplace:\n // tailwind.config.ts\n import shilpSutra from "@devalok/shilp-sutra/tailwind"\n export default { presets: [shilpSutra], content: [...] }\n\nwith:\n // app/globals.css\n @import "tailwindcss";\n @import "@devalok/shilp-sutra/css";\n\nFull guide: https://github.com/devalok-design/shilp-sutra/blob/main/MIGRATION.md\n';
29
+ try {
30
+ if (typeof process < "u" && typeof process.stderr?.write == "function") {
31
+ process.stderr.write(e2);
32
+ return;
438
33
  }
439
- } },
440
- plugins: [(0, import_plugin.default)(({ addBase: e2, addUtilities: t2 }) => {
441
- let n = [
442
- "heading-2xl",
443
- "heading-xl",
444
- "heading-lg",
445
- "heading-md",
446
- "heading-sm",
447
- "heading-xs",
448
- "body-lg",
449
- "body-md",
450
- "body-sm",
451
- "body-xs",
452
- "label-lg",
453
- "label-md",
454
- "label-sm",
455
- "label-xs",
456
- "label-plain-lg",
457
- "label-plain-md",
458
- "label-plain-sm",
459
- "caption",
460
- "overline",
461
- "code"
462
- ], r = /* @__PURE__ */ new Set([
463
- "label-lg",
464
- "label-md",
465
- "label-sm",
466
- "label-xs",
467
- "overline"
468
- ]), i = /* @__PURE__ */ new Set(["code"]), a = {};
469
- for (let e3 of n) {
470
- let t3 = {
471
- "font-size": `var(--typo-${e3}-size)`,
472
- "font-weight": `var(--typo-${e3}-weight)`,
473
- "line-height": `var(--typo-${e3}-leading)`,
474
- "letter-spacing": `var(--typo-${e3}-tracking)`
475
- };
476
- r.has(e3) && (t3["text-transform"] = "uppercase"), i.has(e3) && (t3["font-family"] = "var(--typo-code-font)"), a[`.text-${e3}`] = t3;
477
- }
478
- e2({
479
- "@property --border-angle": {
480
- syntax: '"<angle>"',
481
- "initial-value": "0deg",
482
- inherits: "false"
483
- },
484
- "@media screen and (max-width: 767px)": { 'input:not([type="checkbox"]):not([type="radio"]), textarea, select': { "font-size": "max(16px, 1em) !important" } }
485
- }), t2({
486
- ...a,
487
- ".tabular-nums": { "font-variant-numeric": "tabular-nums" },
488
- ".touch-target": { position: "relative" },
489
- ".touch-target::before": {
490
- content: '""',
491
- position: "absolute",
492
- top: "50%",
493
- left: "50%",
494
- transform: "translate(-50%, -50%)",
495
- "min-width": "44px",
496
- "min-height": "44px"
497
- },
498
- ".focus-ring": { "&:focus-visible": {
499
- outline: "none",
500
- "box-shadow": "0 0 0 var(--border-focus-width) var(--color-surface-base), 0 0 0 calc(var(--border-focus-width) + var(--border-focus-offset)) var(--color-accent-9)"
501
- } },
502
- ".focus-ring-inset": { "&:focus-visible": {
503
- outline: "none",
504
- "box-shadow": "inset 0 0 0 var(--border-focus-width) var(--color-accent-9)"
505
- } },
506
- ".focus-ring-sm": { "&:focus-visible": {
507
- outline: "none",
508
- "box-shadow": "0 0 0 var(--border-focus-width) var(--color-accent-7)"
509
- } },
510
- ".pt-safe": { "padding-top": "env(safe-area-inset-top, 0px)" },
511
- ".pb-safe": { "padding-bottom": "env(safe-area-inset-bottom, 0px)" },
512
- ".pl-safe": { "padding-left": "env(safe-area-inset-left, 0px)" },
513
- ".pr-safe": { "padding-right": "env(safe-area-inset-right, 0px)" },
514
- ".p-safe": {
515
- "padding-top": "env(safe-area-inset-top, 0px)",
516
- "padding-bottom": "env(safe-area-inset-bottom, 0px)",
517
- "padding-left": "env(safe-area-inset-left, 0px)",
518
- "padding-right": "env(safe-area-inset-right, 0px)"
519
- }
520
- });
521
- })]
522
- };
34
+ } catch {
35
+ }
36
+ console.warn(e2);
37
+ }
38
+ n();
523
39
 
524
40
  module.exports = module.exports.default;
525
41
  module.exports.default = module.exports;
@@ -1,4 +1,25 @@
1
1
  import { Config } from 'tailwindcss';
2
+ /**
3
+ * @deprecated Since 0.37.0. Tailwind 4 uses CSS-first configuration via
4
+ * `@theme`, `@utility`, and `@custom-variant`, not JavaScript presets.
5
+ *
6
+ * Migrate to:
7
+ *
8
+ * ```css
9
+ * // app/globals.css
10
+ * @import "tailwindcss";
11
+ * @import "@devalok/shilp-sutra/css";
12
+ * ```
13
+ *
14
+ * And delete your `tailwind.config.ts` (or shrink it to whatever your own
15
+ * app needs — we no longer ask you to reference our preset).
16
+ *
17
+ * This export remains as a typed no-op so in-flight consumer code that
18
+ * still imports it doesn't crash at import time. Scheduled for removal
19
+ * in 0.38.0.
20
+ *
21
+ * See MIGRATION.md at the repo root for the full 0.36 → 0.37 walkthrough.
22
+ */
2
23
  declare const preset: Partial<Config>;
3
24
  export default preset;
4
25
  //# sourceMappingURL=preset.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"preset.d.ts","sourceRoot":"","sources":["../../src/tailwind/preset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGzC,QAAA,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CA4f3B,CAAA;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"preset.d.ts","sourceRoot":"","sources":["../../src/tailwind/preset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,QAAA,MAAM,MAAM,EAAE,OAAO,CAAC,MAAM,CAAM,CAAA;AA8DlC,eAAe,MAAM,CAAA"}