@sth87/shadcn-design-system 0.0.36 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (420) hide show
  1. package/dist/AI_CONTEXT.md +212 -214
  2. package/dist/cjs/components/Accordion/Accordion.cjs +1 -1
  3. package/dist/cjs/components/Accordion/Accordion.cjs.map +1 -1
  4. package/dist/cjs/components/Avatar/Avatar.cjs +1 -1
  5. package/dist/cjs/components/Avatar/Avatar.cjs.map +1 -1
  6. package/dist/cjs/components/Badge/Badge.cjs +1 -1
  7. package/dist/cjs/components/Badge/Badge.cjs.map +1 -1
  8. package/dist/cjs/components/Breadcrumb/Breadcrumb.cjs +1 -1
  9. package/dist/cjs/components/Breadcrumb/Breadcrumb.cjs.map +1 -1
  10. package/dist/cjs/components/Button/Button.cjs +1 -1
  11. package/dist/cjs/components/Button/Button.cjs.map +1 -1
  12. package/dist/cjs/components/Calendar/Calendar.cjs +1 -1
  13. package/dist/cjs/components/Calendar/Calendar.cjs.map +1 -1
  14. package/dist/cjs/components/Carousel/Carousel.cjs +1 -1
  15. package/dist/cjs/components/Carousel/Carousel.cjs.map +1 -1
  16. package/dist/cjs/components/Checkbox/Checkbox.cjs +1 -1
  17. package/dist/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
  18. package/dist/cjs/components/Collapsible/Collapsible.cjs +1 -1
  19. package/dist/cjs/components/Collapsible/Collapsible.cjs.map +1 -1
  20. package/dist/cjs/components/Command/Command.cjs +1 -1
  21. package/dist/cjs/components/Command/Command.cjs.map +1 -1
  22. package/dist/cjs/components/ContextMenu/ContextMenu.cjs +1 -1
  23. package/dist/cjs/components/ContextMenu/ContextMenu.cjs.map +1 -1
  24. package/dist/cjs/components/Cropper/Cropper.cjs +1 -1
  25. package/dist/cjs/components/Cropper/Cropper.cjs.map +1 -1
  26. package/dist/cjs/components/DatePicker/DatePicker.cjs +1 -1
  27. package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
  28. package/dist/cjs/components/DatePicker/RangePicker.cjs +1 -1
  29. package/dist/cjs/components/DatePicker/RangePicker.cjs.map +1 -1
  30. package/dist/cjs/components/DatePicker/TimePicker.cjs +1 -1
  31. package/dist/cjs/components/DatePicker/TimePicker.cjs.map +1 -1
  32. package/dist/cjs/components/Dialog/Dialog.cjs +1 -1
  33. package/dist/cjs/components/Dialog/Dialog.cjs.map +1 -1
  34. package/dist/cjs/components/DropdownMenu/DropdownMenu.cjs +1 -1
  35. package/dist/cjs/components/DropdownMenu/DropdownMenu.cjs.map +1 -1
  36. package/dist/cjs/components/FloatLabel.cjs +1 -1
  37. package/dist/cjs/components/FloatLabel.cjs.map +1 -1
  38. package/dist/cjs/components/Glass/Glass.cjs +1 -1
  39. package/dist/cjs/components/Glass/Glass.cjs.map +1 -1
  40. package/dist/cjs/components/ImageViewer/ImageViewer.cjs +1 -1
  41. package/dist/cjs/components/ImageViewer/ImageViewer.cjs.map +1 -1
  42. package/dist/cjs/components/Input/Input.cjs +1 -1
  43. package/dist/cjs/components/Input/Input.cjs.map +1 -1
  44. package/dist/cjs/components/InputOTP/InputOTP.cjs +1 -1
  45. package/dist/cjs/components/InputOTP/InputOTP.cjs.map +1 -1
  46. package/dist/cjs/components/Interactive/CursorFollow.cjs +1 -1
  47. package/dist/cjs/components/Interactive/CursorFollow.cjs.map +1 -1
  48. package/dist/cjs/components/Marquee/Marquee.cjs +1 -1
  49. package/dist/cjs/components/Marquee/Marquee.cjs.map +1 -1
  50. package/dist/cjs/components/Pagination/Pagination.cjs +1 -1
  51. package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -1
  52. package/dist/cjs/components/QrCode/QrCode.cjs +1 -1
  53. package/dist/cjs/components/QrCode/QrCode.cjs.map +1 -1
  54. package/dist/cjs/components/Radio/Radio.cjs +1 -1
  55. package/dist/cjs/components/Radio/Radio.cjs.map +1 -1
  56. package/dist/cjs/components/Rate/Rate.cjs +1 -1
  57. package/dist/cjs/components/Rate/Rate.cjs.map +1 -1
  58. package/dist/cjs/components/Resizable/Resizable.cjs +1 -1
  59. package/dist/cjs/components/Resizable/Resizable.cjs.map +1 -1
  60. package/dist/cjs/components/ScrollArea/ScrollArea.cjs +1 -1
  61. package/dist/cjs/components/ScrollArea/ScrollArea.cjs.map +1 -1
  62. package/dist/cjs/components/Select/Select.cjs +1 -1
  63. package/dist/cjs/components/Select/Select.cjs.map +1 -1
  64. package/dist/cjs/components/Sheet/Sheet.cjs +2 -2
  65. package/dist/cjs/components/Sheet/Sheet.cjs.map +1 -1
  66. package/dist/cjs/components/Slider/Slider.cjs +1 -1
  67. package/dist/cjs/components/Slider/Slider.cjs.map +1 -1
  68. package/dist/cjs/components/Stepper/Stepper.cjs +1 -1
  69. package/dist/cjs/components/Stepper/Stepper.cjs.map +1 -1
  70. package/dist/cjs/components/Stepper/StepperWrapper.cjs +1 -1
  71. package/dist/cjs/components/Stepper/StepperWrapper.cjs.map +1 -1
  72. package/dist/cjs/components/Switch/Switch.cjs +1 -1
  73. package/dist/cjs/components/Switch/Switch.cjs.map +1 -1
  74. package/dist/cjs/components/Table/TableFilter/data-table-date-filter.cjs +1 -1
  75. package/dist/cjs/components/Table/TableFilter/data-table-date-filter.cjs.map +1 -1
  76. package/dist/cjs/components/Table/TableFilter/data-table-filter-popover.cjs +1 -1
  77. package/dist/cjs/components/Table/TableFilter/data-table-filter-popover.cjs.map +1 -1
  78. package/dist/cjs/components/Table/TableFilter/data-table-slider-filter.cjs +1 -1
  79. package/dist/cjs/components/Table/TableFilter/data-table-slider-filter.cjs.map +1 -1
  80. package/dist/cjs/components/Table/data-table-column-header.cjs +1 -1
  81. package/dist/cjs/components/Table/data-table-column-header.cjs.map +1 -1
  82. package/dist/cjs/components/Table/data-table-pagination.cjs +1 -1
  83. package/dist/cjs/components/Table/data-table-pagination.cjs.map +1 -1
  84. package/dist/cjs/components/Table/data-table.cjs +1 -1
  85. package/dist/cjs/components/Table/data-table.cjs.map +1 -1
  86. package/dist/cjs/components/Tabs/Tabs.cjs +1 -1
  87. package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -1
  88. package/dist/cjs/components/Tabs/classes.cjs +1 -1
  89. package/dist/cjs/components/Tabs/classes.cjs.map +1 -1
  90. package/dist/cjs/components/Textarea/Textarea.cjs +1 -1
  91. package/dist/cjs/components/Textarea/Textarea.cjs.map +1 -1
  92. package/dist/cjs/components/TimeGridView.cjs +1 -1
  93. package/dist/cjs/components/TimeGridView.cjs.map +1 -1
  94. package/dist/cjs/components/Toast/Toast.cjs +1 -1
  95. package/dist/cjs/components/Toast/Toast.cjs.map +1 -1
  96. package/dist/cjs/components/Tooltip/Tooltip.cjs +1 -1
  97. package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  98. package/dist/cjs/components/Tour/Tour.cjs +1 -1
  99. package/dist/cjs/components/Tour/Tour.cjs.map +1 -1
  100. package/dist/cjs/components/Tour/TourWrapper.cjs +1 -1
  101. package/dist/cjs/components/Tour/TourWrapper.cjs.map +1 -1
  102. package/dist/cjs/components/Upload/Upload.cjs +3 -3
  103. package/dist/cjs/components/Upload/Upload.cjs.map +1 -1
  104. package/dist/cjs/components/WheelColumn.cjs +1 -1
  105. package/dist/cjs/components/WheelColumn.cjs.map +1 -1
  106. package/dist/cjs/lib/TextAnimation/BlurText.cjs +1 -1
  107. package/dist/cjs/lib/TextAnimation/BlurText.cjs.map +1 -1
  108. package/dist/cjs/lib/TextAnimation/CircularText.cjs +1 -1
  109. package/dist/cjs/lib/TextAnimation/CircularText.cjs.map +1 -1
  110. package/dist/cjs/lib/TextAnimation/FlipWords.cjs +1 -1
  111. package/dist/cjs/lib/TextAnimation/FlipWords.cjs.map +1 -1
  112. package/dist/cjs/lib/TextAnimation/GradientText.cjs +1 -1
  113. package/dist/cjs/lib/TextAnimation/GradientText.cjs.map +1 -1
  114. package/dist/cjs/lib/TextAnimation/RollingText.cjs +1 -1
  115. package/dist/cjs/lib/TextAnimation/RollingText.cjs.map +1 -1
  116. package/dist/cjs/lib/TextAnimation/RotatingText.cjs +1 -1
  117. package/dist/cjs/lib/TextAnimation/RotatingText.cjs.map +1 -1
  118. package/dist/cjs/lib/TextAnimation/ShimmeringText.cjs +1 -1
  119. package/dist/cjs/lib/TextAnimation/ShimmeringText.cjs.map +1 -1
  120. package/dist/cjs/lib/TextAnimation/TextGenerateEffect.cjs +1 -1
  121. package/dist/cjs/lib/TextAnimation/TextGenerateEffect.cjs.map +1 -1
  122. package/dist/cjs/lib/TextAnimation/TextHoverEffect.cjs +1 -1
  123. package/dist/cjs/lib/TextAnimation/TextHoverEffect.cjs.map +1 -1
  124. package/dist/cjs/lib/TextAnimation/TextPressureEffect.cjs +2 -2
  125. package/dist/cjs/lib/TextAnimation/TextPressureEffect.cjs.map +1 -1
  126. package/dist/cjs/lib/TextAnimation/TypingText.cjs +1 -1
  127. package/dist/cjs/lib/TextAnimation/TypingText.cjs.map +1 -1
  128. package/dist/cjs/lib/TextAnimation/WritingText.cjs +1 -1
  129. package/dist/cjs/lib/TextAnimation/WritingText.cjs.map +1 -1
  130. package/dist/cjs/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.cjs.map +1 -0
  131. package/dist/cjs/packages/ui/src/components/accordion.cjs +1 -1
  132. package/dist/cjs/packages/ui/src/components/accordion.cjs.map +1 -1
  133. package/dist/cjs/packages/ui/src/components/alert-dialog.cjs +1 -1
  134. package/dist/cjs/packages/ui/src/components/alert-dialog.cjs.map +1 -1
  135. package/dist/cjs/packages/ui/src/components/avatar.cjs +1 -1
  136. package/dist/cjs/packages/ui/src/components/avatar.cjs.map +1 -1
  137. package/dist/cjs/packages/ui/src/components/badge.cjs +1 -1
  138. package/dist/cjs/packages/ui/src/components/badge.cjs.map +1 -1
  139. package/dist/cjs/packages/ui/src/components/breadcrumb.cjs +1 -1
  140. package/dist/cjs/packages/ui/src/components/breadcrumb.cjs.map +1 -1
  141. package/dist/cjs/packages/ui/src/components/button-group.cjs +1 -1
  142. package/dist/cjs/packages/ui/src/components/button-group.cjs.map +1 -1
  143. package/dist/cjs/packages/ui/src/components/button.cjs +1 -1
  144. package/dist/cjs/packages/ui/src/components/button.cjs.map +1 -1
  145. package/dist/cjs/packages/ui/src/components/calendar.cjs +1 -1
  146. package/dist/cjs/packages/ui/src/components/calendar.cjs.map +1 -1
  147. package/dist/cjs/packages/ui/src/components/checkbox.cjs +1 -1
  148. package/dist/cjs/packages/ui/src/components/checkbox.cjs.map +1 -1
  149. package/dist/cjs/packages/ui/src/components/combobox.cjs +1 -1
  150. package/dist/cjs/packages/ui/src/components/combobox.cjs.map +1 -1
  151. package/dist/cjs/packages/ui/src/components/command.cjs +1 -1
  152. package/dist/cjs/packages/ui/src/components/command.cjs.map +1 -1
  153. package/dist/cjs/packages/ui/src/components/context-menu.cjs +1 -1
  154. package/dist/cjs/packages/ui/src/components/context-menu.cjs.map +1 -1
  155. package/dist/cjs/packages/ui/src/components/dialog.cjs +1 -1
  156. package/dist/cjs/packages/ui/src/components/dialog.cjs.map +1 -1
  157. package/dist/cjs/packages/ui/src/components/drawer.cjs +1 -1
  158. package/dist/cjs/packages/ui/src/components/drawer.cjs.map +1 -1
  159. package/dist/cjs/packages/ui/src/components/dropdown-menu.cjs +1 -1
  160. package/dist/cjs/packages/ui/src/components/dropdown-menu.cjs.map +1 -1
  161. package/dist/cjs/packages/ui/src/components/input-otp.cjs +1 -1
  162. package/dist/cjs/packages/ui/src/components/input-otp.cjs.map +1 -1
  163. package/dist/cjs/packages/ui/src/components/input.cjs +1 -1
  164. package/dist/cjs/packages/ui/src/components/input.cjs.map +1 -1
  165. package/dist/cjs/packages/ui/src/components/label.cjs +1 -1
  166. package/dist/cjs/packages/ui/src/components/label.cjs.map +1 -1
  167. package/dist/cjs/packages/ui/src/components/pagination.cjs +1 -1
  168. package/dist/cjs/packages/ui/src/components/pagination.cjs.map +1 -1
  169. package/dist/cjs/packages/ui/src/components/popover.cjs +1 -1
  170. package/dist/cjs/packages/ui/src/components/popover.cjs.map +1 -1
  171. package/dist/cjs/packages/ui/src/components/radio-group.cjs +1 -1
  172. package/dist/cjs/packages/ui/src/components/radio-group.cjs.map +1 -1
  173. package/dist/cjs/packages/ui/src/components/resizable.cjs +1 -1
  174. package/dist/cjs/packages/ui/src/components/resizable.cjs.map +1 -1
  175. package/dist/cjs/packages/ui/src/components/scroll-area.cjs +1 -1
  176. package/dist/cjs/packages/ui/src/components/scroll-area.cjs.map +1 -1
  177. package/dist/cjs/packages/ui/src/components/select.cjs +1 -1
  178. package/dist/cjs/packages/ui/src/components/select.cjs.map +1 -1
  179. package/dist/cjs/packages/ui/src/components/separator.cjs +1 -1
  180. package/dist/cjs/packages/ui/src/components/separator.cjs.map +1 -1
  181. package/dist/cjs/packages/ui/src/components/sheet.cjs +1 -1
  182. package/dist/cjs/packages/ui/src/components/sheet.cjs.map +1 -1
  183. package/dist/cjs/packages/ui/src/components/sidebar.cjs +1 -1
  184. package/dist/cjs/packages/ui/src/components/sidebar.cjs.map +1 -1
  185. package/dist/cjs/packages/ui/src/components/skeleton.cjs +1 -1
  186. package/dist/cjs/packages/ui/src/components/skeleton.cjs.map +1 -1
  187. package/dist/cjs/packages/ui/src/components/switch.cjs +1 -1
  188. package/dist/cjs/packages/ui/src/components/switch.cjs.map +1 -1
  189. package/dist/cjs/packages/ui/src/components/table.cjs +1 -1
  190. package/dist/cjs/packages/ui/src/components/table.cjs.map +1 -1
  191. package/dist/cjs/packages/ui/src/components/tabs.cjs +1 -1
  192. package/dist/cjs/packages/ui/src/components/tabs.cjs.map +1 -1
  193. package/dist/cjs/packages/ui/src/components/textarea.cjs +1 -1
  194. package/dist/cjs/packages/ui/src/components/textarea.cjs.map +1 -1
  195. package/dist/cjs/packages/ui/src/components/toggle.cjs +1 -1
  196. package/dist/cjs/packages/ui/src/components/toggle.cjs.map +1 -1
  197. package/dist/cjs/packages/ui/src/components/tooltip.cjs +1 -1
  198. package/dist/cjs/packages/ui/src/components/tooltip.cjs.map +1 -1
  199. package/dist/cjs/packages/ui/src/components/tree-view.cjs +1 -1
  200. package/dist/cjs/packages/ui/src/components/tree-view.cjs.map +1 -1
  201. package/dist/cjs/styles/index.css +1 -1
  202. package/dist/cjs/utils/animations.cjs +1 -1
  203. package/dist/cjs/utils/animations.cjs.map +1 -1
  204. package/dist/cjs/utils/css.cjs +1 -1
  205. package/dist/cjs/utils/css.cjs.map +1 -1
  206. package/dist/cjs/utils/parsers.cjs +1 -1
  207. package/dist/cjs/utils/parsers.cjs.map +1 -1
  208. package/dist/esm/components/Accordion/Accordion.js +60 -60
  209. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  210. package/dist/esm/components/Avatar/Avatar.js +40 -40
  211. package/dist/esm/components/Avatar/Avatar.js.map +1 -1
  212. package/dist/esm/components/Badge/Badge.js +1 -1
  213. package/dist/esm/components/Badge/Badge.js.map +1 -1
  214. package/dist/esm/components/Breadcrumb/Breadcrumb.js +36 -36
  215. package/dist/esm/components/Breadcrumb/Breadcrumb.js.map +1 -1
  216. package/dist/esm/components/Button/Button.js +9 -9
  217. package/dist/esm/components/Button/Button.js.map +1 -1
  218. package/dist/esm/components/Calendar/Calendar.js +4 -4
  219. package/dist/esm/components/Calendar/Calendar.js.map +1 -1
  220. package/dist/esm/components/Carousel/Carousel.js +165 -165
  221. package/dist/esm/components/Carousel/Carousel.js.map +1 -1
  222. package/dist/esm/components/Checkbox/Checkbox.js +26 -26
  223. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
  224. package/dist/esm/components/Collapsible/Collapsible.js +43 -43
  225. package/dist/esm/components/Collapsible/Collapsible.js.map +1 -1
  226. package/dist/esm/components/Command/Command.js +28 -28
  227. package/dist/esm/components/Command/Command.js.map +1 -1
  228. package/dist/esm/components/ContextMenu/ContextMenu.js +11 -11
  229. package/dist/esm/components/ContextMenu/ContextMenu.js.map +1 -1
  230. package/dist/esm/components/Cropper/Cropper.js +132 -132
  231. package/dist/esm/components/Cropper/Cropper.js.map +1 -1
  232. package/dist/esm/components/DatePicker/DatePicker.js +75 -75
  233. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  234. package/dist/esm/components/DatePicker/RangePicker.js +136 -136
  235. package/dist/esm/components/DatePicker/RangePicker.js.map +1 -1
  236. package/dist/esm/components/DatePicker/TimePicker.js +150 -150
  237. package/dist/esm/components/DatePicker/TimePicker.js.map +1 -1
  238. package/dist/esm/components/Dialog/Dialog.js +114 -114
  239. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  240. package/dist/esm/components/DropdownMenu/DropdownMenu.js +13 -13
  241. package/dist/esm/components/DropdownMenu/DropdownMenu.js.map +1 -1
  242. package/dist/esm/components/FloatLabel.js +44 -44
  243. package/dist/esm/components/FloatLabel.js.map +1 -1
  244. package/dist/esm/components/Glass/Glass.js +15 -15
  245. package/dist/esm/components/Glass/Glass.js.map +1 -1
  246. package/dist/esm/components/ImageViewer/ImageViewer.js +53 -53
  247. package/dist/esm/components/ImageViewer/ImageViewer.js.map +1 -1
  248. package/dist/esm/components/Input/Input.js +104 -104
  249. package/dist/esm/components/Input/Input.js.map +1 -1
  250. package/dist/esm/components/InputOTP/InputOTP.js +16 -16
  251. package/dist/esm/components/InputOTP/InputOTP.js.map +1 -1
  252. package/dist/esm/components/Interactive/CursorFollow.js +49 -49
  253. package/dist/esm/components/Interactive/CursorFollow.js.map +1 -1
  254. package/dist/esm/components/Marquee/Marquee.js +130 -130
  255. package/dist/esm/components/Marquee/Marquee.js.map +1 -1
  256. package/dist/esm/components/Pagination/Pagination.js +68 -68
  257. package/dist/esm/components/Pagination/Pagination.js.map +1 -1
  258. package/dist/esm/components/QrCode/QrCode.js +37 -37
  259. package/dist/esm/components/QrCode/QrCode.js.map +1 -1
  260. package/dist/esm/components/Radio/Radio.js +16 -16
  261. package/dist/esm/components/Radio/Radio.js.map +1 -1
  262. package/dist/esm/components/Rate/Rate.js +62 -62
  263. package/dist/esm/components/Rate/Rate.js.map +1 -1
  264. package/dist/esm/components/Resizable/Resizable.js +6 -6
  265. package/dist/esm/components/Resizable/Resizable.js.map +1 -1
  266. package/dist/esm/components/ScrollArea/ScrollArea.js +10 -10
  267. package/dist/esm/components/ScrollArea/ScrollArea.js.map +1 -1
  268. package/dist/esm/components/Select/Select.js +64 -64
  269. package/dist/esm/components/Select/Select.js.map +1 -1
  270. package/dist/esm/components/Sheet/Sheet.js +21 -21
  271. package/dist/esm/components/Sheet/Sheet.js.map +1 -1
  272. package/dist/esm/components/Slider/Slider.js +54 -54
  273. package/dist/esm/components/Slider/Slider.js.map +1 -1
  274. package/dist/esm/components/Stepper/Stepper.js +198 -198
  275. package/dist/esm/components/Stepper/Stepper.js.map +1 -1
  276. package/dist/esm/components/Stepper/StepperWrapper.js +15 -15
  277. package/dist/esm/components/Stepper/StepperWrapper.js.map +1 -1
  278. package/dist/esm/components/Switch/Switch.js +38 -38
  279. package/dist/esm/components/Switch/Switch.js.map +1 -1
  280. package/dist/esm/components/Table/TableFilter/data-table-date-filter.js +37 -37
  281. package/dist/esm/components/Table/TableFilter/data-table-date-filter.js.map +1 -1
  282. package/dist/esm/components/Table/TableFilter/data-table-filter-popover.js +25 -25
  283. package/dist/esm/components/Table/TableFilter/data-table-filter-popover.js.map +1 -1
  284. package/dist/esm/components/Table/TableFilter/data-table-slider-filter.js +64 -64
  285. package/dist/esm/components/Table/TableFilter/data-table-slider-filter.js.map +1 -1
  286. package/dist/esm/components/Table/data-table-column-header.js +18 -18
  287. package/dist/esm/components/Table/data-table-column-header.js.map +1 -1
  288. package/dist/esm/components/Table/data-table-pagination.js +21 -21
  289. package/dist/esm/components/Table/data-table-pagination.js.map +1 -1
  290. package/dist/esm/components/Table/data-table.js +18 -18
  291. package/dist/esm/components/Table/data-table.js.map +1 -1
  292. package/dist/esm/components/Tabs/Tabs.js +242 -242
  293. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  294. package/dist/esm/components/Tabs/classes.js +51 -51
  295. package/dist/esm/components/Tabs/classes.js.map +1 -1
  296. package/dist/esm/components/Textarea/Textarea.js +49 -49
  297. package/dist/esm/components/Textarea/Textarea.js.map +1 -1
  298. package/dist/esm/components/TimeGridView.js +12 -12
  299. package/dist/esm/components/TimeGridView.js.map +1 -1
  300. package/dist/esm/components/Toast/Toast.js +45 -45
  301. package/dist/esm/components/Toast/Toast.js.map +1 -1
  302. package/dist/esm/components/Tooltip/Tooltip.js +19 -19
  303. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  304. package/dist/esm/components/Tour/Tour.js +11 -11
  305. package/dist/esm/components/Tour/Tour.js.map +1 -1
  306. package/dist/esm/components/Tour/TourWrapper.js +15 -15
  307. package/dist/esm/components/Tour/TourWrapper.js.map +1 -1
  308. package/dist/esm/components/Upload/Upload.js +405 -405
  309. package/dist/esm/components/Upload/Upload.js.map +1 -1
  310. package/dist/esm/components/WheelColumn.js +47 -47
  311. package/dist/esm/components/WheelColumn.js.map +1 -1
  312. package/dist/esm/lib/TextAnimation/BlurText.js +18 -18
  313. package/dist/esm/lib/TextAnimation/BlurText.js.map +1 -1
  314. package/dist/esm/lib/TextAnimation/CircularText.js +7 -7
  315. package/dist/esm/lib/TextAnimation/CircularText.js.map +1 -1
  316. package/dist/esm/lib/TextAnimation/FlipWords.js +21 -21
  317. package/dist/esm/lib/TextAnimation/FlipWords.js.map +1 -1
  318. package/dist/esm/lib/TextAnimation/GradientText.js +4 -4
  319. package/dist/esm/lib/TextAnimation/GradientText.js.map +1 -1
  320. package/dist/esm/lib/TextAnimation/RollingText.js +24 -24
  321. package/dist/esm/lib/TextAnimation/RollingText.js.map +1 -1
  322. package/dist/esm/lib/TextAnimation/RotatingText.js +6 -6
  323. package/dist/esm/lib/TextAnimation/RotatingText.js.map +1 -1
  324. package/dist/esm/lib/TextAnimation/ShimmeringText.js +9 -9
  325. package/dist/esm/lib/TextAnimation/ShimmeringText.js.map +1 -1
  326. package/dist/esm/lib/TextAnimation/TextGenerateEffect.js +14 -14
  327. package/dist/esm/lib/TextAnimation/TextGenerateEffect.js.map +1 -1
  328. package/dist/esm/lib/TextAnimation/TextHoverEffect.js +9 -9
  329. package/dist/esm/lib/TextAnimation/TextHoverEffect.js.map +1 -1
  330. package/dist/esm/lib/TextAnimation/TextPressureEffect.js +3 -3
  331. package/dist/esm/lib/TextAnimation/TextPressureEffect.js.map +1 -1
  332. package/dist/esm/lib/TextAnimation/TypingText.js +17 -17
  333. package/dist/esm/lib/TextAnimation/TypingText.js.map +1 -1
  334. package/dist/esm/lib/TextAnimation/WritingText.js +10 -10
  335. package/dist/esm/lib/TextAnimation/WritingText.js.map +1 -1
  336. package/dist/esm/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.js.map +1 -0
  337. package/dist/esm/packages/ui/src/components/accordion.js +31 -31
  338. package/dist/esm/packages/ui/src/components/accordion.js.map +1 -1
  339. package/dist/esm/packages/ui/src/components/alert-dialog.js +33 -33
  340. package/dist/esm/packages/ui/src/components/alert-dialog.js.map +1 -1
  341. package/dist/esm/packages/ui/src/components/avatar.js +20 -20
  342. package/dist/esm/packages/ui/src/components/avatar.js.map +1 -1
  343. package/dist/esm/packages/ui/src/components/badge.js +53 -53
  344. package/dist/esm/packages/ui/src/components/badge.js.map +1 -1
  345. package/dist/esm/packages/ui/src/components/breadcrumb.js +20 -20
  346. package/dist/esm/packages/ui/src/components/breadcrumb.js.map +1 -1
  347. package/dist/esm/packages/ui/src/components/button-group.js +31 -31
  348. package/dist/esm/packages/ui/src/components/button-group.js.map +1 -1
  349. package/dist/esm/packages/ui/src/components/button.js +90 -90
  350. package/dist/esm/packages/ui/src/components/button.js.map +1 -1
  351. package/dist/esm/packages/ui/src/components/calendar.js +94 -94
  352. package/dist/esm/packages/ui/src/components/calendar.js.map +1 -1
  353. package/dist/esm/packages/ui/src/components/checkbox.js +47 -47
  354. package/dist/esm/packages/ui/src/components/checkbox.js.map +1 -1
  355. package/dist/esm/packages/ui/src/components/combobox.js +64 -64
  356. package/dist/esm/packages/ui/src/components/combobox.js.map +1 -1
  357. package/dist/esm/packages/ui/src/components/command.js +77 -77
  358. package/dist/esm/packages/ui/src/components/command.js.map +1 -1
  359. package/dist/esm/packages/ui/src/components/context-menu.js +76 -76
  360. package/dist/esm/packages/ui/src/components/context-menu.js.map +1 -1
  361. package/dist/esm/packages/ui/src/components/dialog.js +54 -54
  362. package/dist/esm/packages/ui/src/components/dialog.js.map +1 -1
  363. package/dist/esm/packages/ui/src/components/drawer.js +39 -39
  364. package/dist/esm/packages/ui/src/components/drawer.js.map +1 -1
  365. package/dist/esm/packages/ui/src/components/dropdown-menu.js +109 -109
  366. package/dist/esm/packages/ui/src/components/dropdown-menu.js.map +1 -1
  367. package/dist/esm/packages/ui/src/components/input-otp.js +30 -30
  368. package/dist/esm/packages/ui/src/components/input-otp.js.map +1 -1
  369. package/dist/esm/packages/ui/src/components/input.js +19 -19
  370. package/dist/esm/packages/ui/src/components/input.js.map +1 -1
  371. package/dist/esm/packages/ui/src/components/label.js +9 -9
  372. package/dist/esm/packages/ui/src/components/label.js.map +1 -1
  373. package/dist/esm/packages/ui/src/components/pagination.js +26 -26
  374. package/dist/esm/packages/ui/src/components/pagination.js.map +1 -1
  375. package/dist/esm/packages/ui/src/components/popover.js +13 -13
  376. package/dist/esm/packages/ui/src/components/popover.js.map +1 -1
  377. package/dist/esm/packages/ui/src/components/radio-group.js +45 -45
  378. package/dist/esm/packages/ui/src/components/radio-group.js.map +1 -1
  379. package/dist/esm/packages/ui/src/components/resizable.js +18 -18
  380. package/dist/esm/packages/ui/src/components/resizable.js.map +1 -1
  381. package/dist/esm/packages/ui/src/components/scroll-area.js +31 -31
  382. package/dist/esm/packages/ui/src/components/scroll-area.js.map +1 -1
  383. package/dist/esm/packages/ui/src/components/select.js +119 -119
  384. package/dist/esm/packages/ui/src/components/select.js.map +1 -1
  385. package/dist/esm/packages/ui/src/components/separator.js +86 -86
  386. package/dist/esm/packages/ui/src/components/separator.js.map +1 -1
  387. package/dist/esm/packages/ui/src/components/sheet.js +50 -50
  388. package/dist/esm/packages/ui/src/components/sheet.js.map +1 -1
  389. package/dist/esm/packages/ui/src/components/sidebar.js +198 -198
  390. package/dist/esm/packages/ui/src/components/sidebar.js.map +1 -1
  391. package/dist/esm/packages/ui/src/components/skeleton.js +3 -3
  392. package/dist/esm/packages/ui/src/components/skeleton.js.map +1 -1
  393. package/dist/esm/packages/ui/src/components/switch.js +57 -57
  394. package/dist/esm/packages/ui/src/components/switch.js.map +1 -1
  395. package/dist/esm/packages/ui/src/components/table.js +17 -17
  396. package/dist/esm/packages/ui/src/components/table.js.map +1 -1
  397. package/dist/esm/packages/ui/src/components/tabs.js +33 -33
  398. package/dist/esm/packages/ui/src/components/tabs.js.map +1 -1
  399. package/dist/esm/packages/ui/src/components/textarea.js +17 -17
  400. package/dist/esm/packages/ui/src/components/textarea.js.map +1 -1
  401. package/dist/esm/packages/ui/src/components/toggle.js +36 -36
  402. package/dist/esm/packages/ui/src/components/toggle.js.map +1 -1
  403. package/dist/esm/packages/ui/src/components/tooltip.js +20 -20
  404. package/dist/esm/packages/ui/src/components/tooltip.js.map +1 -1
  405. package/dist/esm/packages/ui/src/components/tree-view.js +218 -218
  406. package/dist/esm/packages/ui/src/components/tree-view.js.map +1 -1
  407. package/dist/esm/styles/index.css +1 -1
  408. package/dist/esm/utils/animations.js +55 -55
  409. package/dist/esm/utils/animations.js.map +1 -1
  410. package/dist/esm/utils/css.js +7 -7
  411. package/dist/esm/utils/css.js.map +1 -1
  412. package/dist/esm/utils/parsers.js +1 -1
  413. package/dist/types/components/DatePicker/RangePicker.d.ts.map +1 -1
  414. package/dist/types/lib/TextAnimation/TextPressureEffect.d.ts.map +1 -1
  415. package/dist/types/lib/TextAnimation/TypingText.d.ts.map +1 -1
  416. package/package.json +1 -1
  417. package/dist/cjs/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.cjs.map +0 -1
  418. package/dist/esm/node_modules/.pnpm/nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1/node_modules/nuqs/dist/server.js.map +0 -1
  419. /package/dist/cjs/node_modules/.pnpm/{nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1 → nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1}/node_modules/nuqs/dist/server.cjs +0 -0
  420. /package/dist/esm/node_modules/.pnpm/{nuqs@2.8.0_next@15.5.9_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1 → nuqs@2.8.0_next@15.5.9_@babel_core@7.28.5_react-dom@19.1.1_react@19.1.1__react@19.1.1__react@19.1.1}/node_modules/nuqs/dist/server.js +0 -0
@@ -1,20 +1,20 @@
1
- import { jsx as t, jsxs as a } from "react/jsx-runtime";
2
- import c from "react";
1
+ import { jsx as t, jsxs as r } from "react/jsx-runtime";
2
+ import a from "react";
3
3
  import { Textarea as S } from "../../packages/ui/src/components/textarea.js";
4
- import { cn as d } from "../../packages/ui/src/lib/utils.js";
4
+ import { cn as o } from "../../packages/ui/src/lib/utils.js";
5
5
  import { Info as T, X as V } from "lucide-react";
6
6
  import { Tooltip as _ } from "../Tooltip/Tooltip.js";
7
7
  import { FloatingLabel as k } from "../FloatLabel.js";
8
8
  import { Label as H } from "../../packages/ui/src/components/label.js";
9
- const X = c.forwardRef(
9
+ const X = a.forwardRef(
10
10
  ({
11
11
  className: y,
12
12
  label: u,
13
13
  helperText: m,
14
14
  state: i,
15
15
  size: e = "normal",
16
- isFloatLabel: r,
17
- maxLength: s,
16
+ isFloatLabel: s,
17
+ maxLength: l,
18
18
  showCharCount: h,
19
19
  infoTooltip: f,
20
20
  clearable: v,
@@ -22,78 +22,78 @@ const X = c.forwardRef(
22
22
  placeholder: w = " ",
23
23
  onChange: I,
24
24
  required: p,
25
- ...n
25
+ ...d
26
26
  }, R) => {
27
- const [x, b] = c.useState(() => typeof n.value == "string" ? n.value.length : typeof n.defaultValue == "string" ? n.defaultValue.length : 0), j = (o) => {
28
- b(o.target.value.length), I?.(o);
29
- }, g = c.useId(), l = c.useRef(null);
30
- c.useImperativeHandle(R, () => l.current);
27
+ const [x, b] = a.useState(() => typeof d.value == "string" ? d.value.length : typeof d.defaultValue == "string" ? d.defaultValue.length : 0), j = (c) => {
28
+ b(c.target.value.length), I?.(c);
29
+ }, g = a.useId(), n = a.useRef(null);
30
+ a.useImperativeHandle(R, () => n.current);
31
31
  const C = () => {
32
- if (l.current) {
33
- l.current.value = "", b(0);
34
- const o = new Event("input", { bubbles: !0 });
35
- l.current.dispatchEvent(o), N && N();
32
+ if (n.current) {
33
+ n.current.value = "", b(0);
34
+ const c = new Event("input", { bubbles: !0 });
35
+ n.current.dispatchEvent(c), N && N();
36
36
  }
37
37
  }, E = {
38
- default: "text-muted-foreground",
39
- success: "text-success",
40
- warning: "text-warning",
41
- error: "text-error"
38
+ default: "ds:text-muted-foreground",
39
+ success: "ds:text-success",
40
+ warning: "ds:text-warning",
41
+ error: "ds:text-error"
42
42
  };
43
- return /* @__PURE__ */ t("div", { className: y, children: /* @__PURE__ */ a(
43
+ return /* @__PURE__ */ t("div", { className: y, children: /* @__PURE__ */ r(
44
44
  "div",
45
45
  {
46
- className: d("flex flex-col gap-1.5 relative", {
47
- "floating-label": r
46
+ className: o("ds:flex ds:flex-col ds:gap-1.5 ds:relative", {
47
+ "ds:floating-label": s
48
48
  }),
49
49
  children: [
50
- !r && u && /* @__PURE__ */ a(
50
+ !s && u && /* @__PURE__ */ r(
51
51
  H,
52
52
  {
53
53
  htmlFor: g,
54
- className: "flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
54
+ className: "ds:flex ds:gap-2 ds:text-sm ds:font-medium ds:leading-none ds:peer-disabled:cursor-not-allowed ds:peer-disabled:opacity-70",
55
55
  children: [
56
- /* @__PURE__ */ a("span", { children: [
56
+ /* @__PURE__ */ r("span", { children: [
57
57
  u,
58
- p && /* @__PURE__ */ t("span", { className: "text-error ml-0.5", children: "*" })
58
+ p && /* @__PURE__ */ t("span", { className: "ds:text-error ds:ml-0.5", children: "*" })
59
59
  ] }),
60
- f && /* @__PURE__ */ t(_, { content: f, children: /* @__PURE__ */ t(T, { className: "size-3.5 min-w-3.5" }) })
60
+ f && /* @__PURE__ */ t(_, { content: f, children: /* @__PURE__ */ t(T, { className: "ds:size-3.5 ds:min-w-3.5" }) })
61
61
  ]
62
62
  }
63
63
  ),
64
- /* @__PURE__ */ a("div", { className: "relative", children: [
64
+ /* @__PURE__ */ r("div", { className: "ds:relative", children: [
65
65
  /* @__PURE__ */ t(
66
66
  S,
67
67
  {
68
- ref: l,
68
+ ref: n,
69
69
  id: g,
70
- className: d(
71
- "peer resize-y",
70
+ className: o(
71
+ "ds:peer ds:resize-y",
72
72
  {
73
- "pt-6 pb-2": r && (e === "lg" || e === "xl"),
74
- "pt-6 pb-1": r && e !== "lg" && e !== "xl",
75
- "text-lg": (e === "xl" || e === "lg") && !r
73
+ "ds:pt-6 ds:pb-2": s && (e === "lg" || e === "xl"),
74
+ "ds:pt-6 ds:pb-1": s && e !== "lg" && e !== "xl",
75
+ "ds:text-lg": (e === "xl" || e === "lg") && !s
76
76
  },
77
- v && x > 0 && "pr-10"
77
+ v && x > 0 && "ds:pr-10"
78
78
  // className
79
79
  ),
80
80
  placeholder: w,
81
- maxLength: s,
81
+ maxLength: l,
82
82
  onChange: j,
83
83
  state: i,
84
- size: r ? e === "xl" || e === "lg" ? e : "xl" : e,
84
+ size: s ? e === "xl" || e === "lg" ? e : "xl" : e,
85
85
  required: p,
86
- ...n
86
+ ...d
87
87
  }
88
88
  ),
89
- r && /* @__PURE__ */ t(
89
+ s && /* @__PURE__ */ t(
90
90
  k,
91
91
  {
92
92
  htmlFor: g,
93
93
  size: e,
94
94
  infoTooltip: f,
95
95
  required: p,
96
- className: "peer-placeholder-shown:items-start",
96
+ className: "ds:peer-placeholder-shown:items-start",
97
97
  children: u
98
98
  }
99
99
  ),
@@ -102,30 +102,30 @@ const X = c.forwardRef(
102
102
  {
103
103
  type: "button",
104
104
  tabIndex: -1,
105
- className: d(
106
- "absolute top-2 right-2 p-1 rounded hover:bg-accent transition-colors"
105
+ className: o(
106
+ "ds:absolute ds:top-2 ds:right-2 ds:p-1 ds:rounded ds:hover:bg-accent ds:transition-colors"
107
107
  ),
108
108
  onClick: C,
109
- disabled: n.disabled,
110
- children: /* @__PURE__ */ t(V, { className: "size-4" })
109
+ disabled: d.disabled,
110
+ children: /* @__PURE__ */ t(V, { className: "ds:size-4" })
111
111
  }
112
112
  )
113
113
  ] }),
114
- (m || h && typeof s == "number") && /* @__PURE__ */ a("div", { className: "flex items-center justify-between text-xs gap-2", children: [
114
+ (m || h && typeof l == "number") && /* @__PURE__ */ r("div", { className: "ds:flex ds:items-center ds:justify-between ds:text-xs ds:gap-2", children: [
115
115
  m && /* @__PURE__ */ t(
116
116
  "p",
117
117
  {
118
- className: d(
119
- "text-xs",
118
+ className: o(
119
+ "ds:text-xs",
120
120
  i ? E?.[i] : ""
121
121
  ),
122
122
  children: m
123
123
  }
124
124
  ),
125
- h && typeof s == "number" && /* @__PURE__ */ a("span", { className: "ml-auto text-muted-foreground", children: [
125
+ h && typeof l == "number" && /* @__PURE__ */ r("span", { className: "ds:ml-auto ds:text-muted-foreground", children: [
126
126
  x,
127
127
  " / ",
128
- s
128
+ l
129
129
  ] })
130
130
  ] })
131
131
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":["../../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n Textarea as STextarea,\n type TextareaProps as STextareaProps,\n} from \"@dsui/ui/components/textarea\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { Info, X } from \"lucide-react\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport { FloatingLabel } from \"@/components/FloatLabel\";\nimport { Label } from \"../Label\";\n\nexport type TextareaProps = Omit<\n STextareaProps,\n \"onChange\" | \"size\" | \"state\"\n> & {\n onChange?: (e: React.ChangeEvent<HTMLTextAreaElement>) => void;\n size?: \"xs\" | \"sm\" | \"normal\" | \"lg\" | \"xl\";\n state?: \"default\" | \"success\" | \"warning\" | \"error\";\n label?: string;\n helperText?: React.ReactNode;\n isFloatLabel?: boolean;\n maxLength?: number;\n showCharCount?: boolean;\n infoTooltip?: React.ReactNode;\n clearable?: boolean;\n onClear?: () => void;\n required?: boolean;\n};\n\nconst Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n className,\n label,\n helperText,\n state,\n size = \"normal\",\n isFloatLabel,\n maxLength,\n showCharCount,\n infoTooltip,\n clearable,\n onClear,\n placeholder = \" \",\n onChange,\n required,\n ...props\n },\n ref\n ) => {\n // Character count state\n const [charCount, setCharCount] = React.useState(() => {\n if (typeof props.value === \"string\") return props.value.length;\n if (typeof props.defaultValue === \"string\")\n return props.defaultValue.length;\n return 0;\n });\n\n const handleInput = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n setCharCount(e.target.value.length);\n onChange?.(e);\n };\n\n const textareaId = React.useId();\n const innerRef = React.useRef<HTMLTextAreaElement>(null);\n\n // Combine refs\n React.useImperativeHandle(ref, () => innerRef.current!);\n\n const handleClear = () => {\n if (innerRef.current) {\n innerRef.current.value = \"\";\n setCharCount(0);\n const event = new Event(\"input\", { bubbles: true });\n innerRef.current.dispatchEvent(event);\n if (onClear) onClear();\n }\n };\n\n // State\n const helperTextStyles = {\n default: \"text-muted-foreground\",\n success: \"text-success\",\n warning: \"text-warning\",\n error: \"text-error\",\n };\n\n return (\n <div className={className}>\n <div\n className={cn(\"flex flex-col gap-1.5 relative\", {\n \"floating-label\": isFloatLabel,\n })}\n >\n {!isFloatLabel && label && (\n <Label\n htmlFor={textareaId}\n className=\"flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n >\n <span>\n {label}\n {required && <span className=\"text-error ml-0.5\">*</span>}\n </span>\n {infoTooltip && (\n <Tooltip content={infoTooltip}>\n <Info className=\"size-3.5 min-w-3.5\" />\n </Tooltip>\n )}\n </Label>\n )}\n\n <div className=\"relative\">\n <STextarea\n ref={innerRef}\n id={textareaId}\n className={cn(\n \"peer resize-y\",\n {\n \"pt-6 pb-2\": isFloatLabel && (size === \"lg\" || size === \"xl\"),\n \"pt-6 pb-1\": isFloatLabel && size !== \"lg\" && size !== \"xl\",\n \"text-lg\": (size === \"xl\" || size === \"lg\") && !isFloatLabel,\n },\n clearable && charCount > 0 && \"pr-10\"\n // className\n )}\n placeholder={placeholder}\n maxLength={maxLength}\n onChange={handleInput}\n state={state}\n size={\n isFloatLabel\n ? size === \"xl\" || size === \"lg\"\n ? size\n : \"xl\"\n : size\n }\n required={required}\n {...props}\n />\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={textareaId}\n size={size}\n infoTooltip={infoTooltip}\n required={required}\n className=\"peer-placeholder-shown:items-start\"\n >\n {label}\n </FloatingLabel>\n )}\n\n {/* Clear Button */}\n {clearable && charCount > 0 && (\n <button\n type=\"button\"\n tabIndex={-1}\n className={cn(\n \"absolute top-2 right-2 p-1 rounded hover:bg-accent transition-colors\"\n )}\n onClick={handleClear}\n disabled={props.disabled}\n >\n <X className=\"size-4\" />\n </button>\n )}\n </div>\n\n {(helperText || (showCharCount && typeof maxLength === \"number\")) && (\n <div className=\"flex items-center justify-between text-xs gap-2\">\n {helperText && (\n <p\n className={cn(\n \"text-xs\",\n state ? helperTextStyles?.[state] : \"\"\n )}\n >\n {helperText}\n </p>\n )}\n {showCharCount && typeof maxLength === \"number\" && (\n <span className=\"ml-auto text-muted-foreground\">\n {charCount} / {maxLength}\n </span>\n )}\n </div>\n )}\n </div>\n </div>\n );\n }\n);\n\nTextarea.displayName = \"Textarea\";\nexport default Textarea;\n"],"names":["Textarea","React","className","label","helperText","state","size","isFloatLabel","maxLength","showCharCount","infoTooltip","clearable","onClear","placeholder","onChange","required","props","ref","charCount","setCharCount","handleInput","e","textareaId","innerRef","handleClear","event","helperTextStyles","jsx","jsxs","cn","Label","Tooltip","Info","STextarea","FloatingLabel","X"],"mappings":"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"}
1
+ {"version":3,"file":"Textarea.js","sources":["../../../../src/components/Textarea/Textarea.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n Textarea as STextarea,\n type TextareaProps as STextareaProps,\n} from \"@dsui/ui/components/textarea\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { Info, X } from \"lucide-react\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\nimport { FloatingLabel } from \"@/components/FloatLabel\";\nimport { Label } from \"../Label\";\n\nexport type TextareaProps = Omit<\n STextareaProps,\n \"onChange\" | \"size\" | \"state\"\n> & {\n onChange?: (e: React.ChangeEvent<HTMLTextAreaElement>) => void;\n size?: \"xs\" | \"sm\" | \"normal\" | \"lg\" | \"xl\";\n state?: \"default\" | \"success\" | \"warning\" | \"error\";\n label?: string;\n helperText?: React.ReactNode;\n isFloatLabel?: boolean;\n maxLength?: number;\n showCharCount?: boolean;\n infoTooltip?: React.ReactNode;\n clearable?: boolean;\n onClear?: () => void;\n required?: boolean;\n};\n\nconst Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\n (\n {\n className,\n label,\n helperText,\n state,\n size = \"normal\",\n isFloatLabel,\n maxLength,\n showCharCount,\n infoTooltip,\n clearable,\n onClear,\n placeholder = \" \",\n onChange,\n required,\n ...props\n },\n ref\n ) => {\n // Character count state\n const [charCount, setCharCount] = React.useState(() => {\n if (typeof props.value === \"string\") return props.value.length;\n if (typeof props.defaultValue === \"string\")\n return props.defaultValue.length;\n return 0;\n });\n\n const handleInput = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n setCharCount(e.target.value.length);\n onChange?.(e);\n };\n\n const textareaId = React.useId();\n const innerRef = React.useRef<HTMLTextAreaElement>(null);\n\n // Combine refs\n React.useImperativeHandle(ref, () => innerRef.current!);\n\n const handleClear = () => {\n if (innerRef.current) {\n innerRef.current.value = \"\";\n setCharCount(0);\n const event = new Event(\"input\", { bubbles: true });\n innerRef.current.dispatchEvent(event);\n if (onClear) onClear();\n }\n };\n\n // State\n const helperTextStyles = {\n default: \"ds:text-muted-foreground\",\n success: \"ds:text-success\",\n warning: \"ds:text-warning\",\n error: \"ds:text-error\",\n };\n\n return (\n <div className={className}>\n <div\n className={cn(\"ds:flex ds:flex-col ds:gap-1.5 ds:relative\", {\n \"ds:floating-label\": isFloatLabel,\n })}\n >\n {!isFloatLabel && label && (\n <Label\n htmlFor={textareaId}\n className=\"ds:flex ds:gap-2 ds:text-sm ds:font-medium ds:leading-none ds:peer-disabled:cursor-not-allowed ds:peer-disabled:opacity-70\"\n >\n <span>\n {label}\n {required && <span className=\"ds:text-error ds:ml-0.5\">*</span>}\n </span>\n {infoTooltip && (\n <Tooltip content={infoTooltip}>\n <Info className=\"ds:size-3.5 ds:min-w-3.5\" />\n </Tooltip>\n )}\n </Label>\n )}\n\n <div className=\"ds:relative\">\n <STextarea\n ref={innerRef}\n id={textareaId}\n className={cn(\n \"ds:peer ds:resize-y\",\n {\n \"ds:pt-6 ds:pb-2\": isFloatLabel && (size === \"lg\" || size === \"xl\"),\n \"ds:pt-6 ds:pb-1\": isFloatLabel && size !== \"lg\" && size !== \"xl\",\n \"ds:text-lg\": (size === \"xl\" || size === \"lg\") && !isFloatLabel,\n },\n clearable && charCount > 0 && \"ds:pr-10\"\n // className\n )}\n placeholder={placeholder}\n maxLength={maxLength}\n onChange={handleInput}\n state={state}\n size={\n isFloatLabel\n ? size === \"xl\" || size === \"lg\"\n ? size\n : \"xl\"\n : size\n }\n required={required}\n {...props}\n />\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={textareaId}\n size={size}\n infoTooltip={infoTooltip}\n required={required}\n className=\"ds:peer-placeholder-shown:items-start\"\n >\n {label}\n </FloatingLabel>\n )}\n\n {/* Clear Button */}\n {clearable && charCount > 0 && (\n <button\n type=\"button\"\n tabIndex={-1}\n className={cn(\n \"ds:absolute ds:top-2 ds:right-2 ds:p-1 ds:rounded ds:hover:bg-accent ds:transition-colors\"\n )}\n onClick={handleClear}\n disabled={props.disabled}\n >\n <X className=\"ds:size-4\" />\n </button>\n )}\n </div>\n\n {(helperText || (showCharCount && typeof maxLength === \"number\")) && (\n <div className=\"ds:flex ds:items-center ds:justify-between ds:text-xs ds:gap-2\">\n {helperText && (\n <p\n className={cn(\n \"ds:text-xs\",\n state ? helperTextStyles?.[state] : \"\"\n )}\n >\n {helperText}\n </p>\n )}\n {showCharCount && typeof maxLength === \"number\" && (\n <span className=\"ds:ml-auto ds:text-muted-foreground\">\n {charCount} / {maxLength}\n </span>\n )}\n </div>\n )}\n </div>\n </div>\n );\n }\n);\n\nTextarea.displayName = \"Textarea\";\nexport default Textarea;\n"],"names":["Textarea","React","className","label","helperText","state","size","isFloatLabel","maxLength","showCharCount","infoTooltip","clearable","onClear","placeholder","onChange","required","props","ref","charCount","setCharCount","handleInput","e","textareaId","innerRef","handleClear","event","helperTextStyles","jsx","jsxs","cn","Label","Tooltip","Info","STextarea","FloatingLabel","X"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { jsx as n } from "react/jsx-runtime";
1
+ import { jsx as s } from "react/jsx-runtime";
2
2
  import * as w from "react";
3
3
  import { memo as $, useMemo as h } from "react";
4
4
  import "@radix-ui/react-slot";
@@ -76,10 +76,10 @@ const i = (o) => String(o).padStart(2, "0"), V = (o = "primary") => ({
76
76
  ({
77
77
  HOURS: o,
78
78
  MINUTES: m,
79
- hours: p,
80
- minutes: c,
79
+ hours: d,
80
+ minutes: n,
81
81
  disabled: g,
82
- isTimeDisabled: s,
82
+ isTimeDisabled: p,
83
83
  onTimeSelect: u,
84
84
  color: f = "primary"
85
85
  }, l) => {
@@ -93,27 +93,27 @@ const i = (o) => String(o).padStart(2, "0"), V = (o = "primary") => ({
93
93
  display: `${i(r)}:${i(e)}`
94
94
  });
95
95
  return t;
96
- }, [o, m]), b = p !== void 0 && c !== void 0 ? `${i(p)}:${i(c)}` : "", v = (t, r) => {
97
- s(t, r, 0) || u(t, r);
96
+ }, [o, m]), b = d !== void 0 && n !== void 0 ? `${i(d)}:${i(n)}` : "", v = (t, r) => {
97
+ p(t, r, 0) || u(t, r);
98
98
  };
99
- return /* @__PURE__ */ n("div", { className: "flex flex-col gap-2", children: /* @__PURE__ */ n(
99
+ return /* @__PURE__ */ s("div", { className: "ds:flex ds:flex-col ds:gap-2", children: /* @__PURE__ */ s(
100
100
  "div",
101
101
  {
102
102
  ref: l,
103
- className: "flex flex-col gap-1 h-64 overflow-y-auto p-2 rounded-md",
103
+ className: "ds:flex ds:flex-col ds:gap-1 ds:h-64 ds:overflow-y-auto ds:p-2 ds:rounded-md",
104
104
  children: x.map(({ h: t, m: r, display: e }) => {
105
- const y = s(t, r, 0), d = e === b, a = V(f);
106
- return /* @__PURE__ */ n(
105
+ const y = p(t, r, 0), c = e === b, a = V(f);
106
+ return /* @__PURE__ */ s(
107
107
  N,
108
108
  {
109
109
  type: "button",
110
110
  variant: "outline",
111
111
  onClick: () => v(t, r),
112
- "data-selected": d || void 0,
112
+ "data-selected": c || void 0,
113
113
  disabled: g || y,
114
114
  size: "sm",
115
115
  className: C(
116
- d ? `${a.bg} ${a.text} font-semibold` : "text-foreground"
116
+ c ? `${a.bg} ${a.text} ds:font-semibold` : "ds:text-foreground"
117
117
  ),
118
118
  children: e
119
119
  },
@@ -1 +1 @@
1
- {"version":3,"file":"TimeGridView.js","sources":["../../../src/components/TimeGridView.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { memo, useMemo } from \"react\";\nimport { cn } from \"@dsui/ui/index\";\nimport Button from \"./Button/Button\";\nimport type { CalendarColor } from \"./Calendar/Calendar\";\n\nconst pad = (num: number): string => String(num).padStart(2, \"0\");\n\n// Color variants for time grid items\nconst getColorClasses = (color: CalendarColor = \"primary\") => {\n const colorMap = {\n primary: {\n bg: \"bg-primary\",\n text: \"text-primary-foreground\",\n },\n secondary: {\n bg: \"bg-secondary\",\n text: \"text-secondary-foreground\",\n },\n accent: {\n bg: \"bg-accent\",\n text: \"text-accent-foreground\",\n },\n destructive: {\n bg: \"bg-destructive\",\n text: \"text-destructive-foreground\",\n },\n muted: {\n bg: \"bg-muted\",\n text: \"text-muted-foreground\",\n },\n success: {\n bg: \"bg-success\",\n text: \"text-success-foreground\",\n },\n error: {\n bg: \"bg-error\",\n text: \"text-error-foreground\",\n },\n warning: {\n bg: \"bg-warning\",\n text: \"text-warning-foreground\",\n },\n foreground: {\n bg: \"bg-foreground\",\n text: \"text-background\",\n },\n };\n return colorMap[color];\n};\n\ntype TimeGridViewProps = {\n HOURS: number[];\n MINUTES: number[];\n hours: number | undefined;\n minutes: number | undefined;\n disabled: boolean;\n isTimeDisabled: (h: number, m: number, s: number) => boolean;\n onTimeSelect: (h: number, m: number) => void;\n color?: CalendarColor;\n};\n\nexport const TimeGridView = memo(\n React.forwardRef<HTMLDivElement, TimeGridViewProps>(\n (\n {\n HOURS,\n MINUTES,\n hours,\n minutes,\n disabled,\n isTimeDisabled,\n onTimeSelect,\n color = \"primary\",\n },\n ref\n ) => {\n // Generate all time combinations based on intervals (always HH:mm, never shows seconds)\n const timeOptions = useMemo(() => {\n const options: Array<{ h: number; m: number; display: string }> = [];\n\n for (const h of HOURS) {\n for (const m of MINUTES) {\n options.push({\n h,\n m,\n display: `${pad(h)}:${pad(m)}`,\n });\n }\n }\n\n return options;\n }, [HOURS, MINUTES]);\n\n const currentValue =\n hours !== undefined && minutes !== undefined\n ? `${pad(hours)}:${pad(minutes)}`\n : \"\";\n\n const handleTimeSelect = (h: number, m: number) => {\n // Always set seconds to 0 in grid mode\n if (!isTimeDisabled(h, m, 0)) {\n onTimeSelect(h, m);\n }\n };\n\n return (\n <div className=\"flex flex-col gap-2\">\n <div\n ref={ref}\n className=\"flex flex-col gap-1 h-64 overflow-y-auto p-2 rounded-md\"\n >\n {timeOptions.map(({ h, m, display }) => {\n const itemDisabled = isTimeDisabled(h, m, 0);\n const isSelected = display === currentValue;\n const colorClasses = getColorClasses(color);\n\n return (\n <Button\n key={display}\n type=\"button\"\n variant=\"outline\"\n onClick={() => handleTimeSelect(h, m)}\n data-selected={isSelected || undefined}\n disabled={disabled || itemDisabled}\n size=\"sm\"\n className={cn(\n isSelected\n ? `${colorClasses.bg} ${colorClasses.text} font-semibold`\n : \"text-foreground\"\n )}\n >\n {display}\n </Button>\n );\n })}\n </div>\n </div>\n );\n }\n )\n);\n\nTimeGridView.displayName = \"TimeGridView\";\n"],"names":["pad","num","getColorClasses","color","TimeGridView","memo","React","HOURS","MINUTES","hours","minutes","disabled","isTimeDisabled","onTimeSelect","ref","timeOptions","useMemo","options","h","m","currentValue","handleTimeSelect","jsx","display","itemDisabled","isSelected","colorClasses","Button","cn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,IAAM,CAACC,MAAwB,OAAOA,CAAG,EAAE,SAAS,GAAG,GAAG,GAG1DC,IAAkB,CAACC,IAAuB,eAC7B;AAAA,EACf,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,WAAW;AAAA,IACT,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,QAAQ;AAAA,IACN,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,aAAa;AAAA,IACX,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,OAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,OAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,YAAY;AAAA,IACV,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AACR,GAEcA,CAAK,GAcVC,IAAeC;AAAA,EAC1BC,EAAM;AAAA,IACJ,CACE;AAAA,MACE,OAAAC;AAAA,MACA,SAAAC;AAAA,MACA,OAAAC;AAAA,MACA,SAAAC;AAAA,MACA,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,OAAAV,IAAQ;AAAA,IAAA,GAEVW,MACG;AAEH,YAAMC,IAAcC,EAAQ,MAAM;AAChC,cAAMC,IAA4D,CAAA;AAElE,mBAAWC,KAAKX;AACd,qBAAWY,KAAKX;AACd,YAAAS,EAAQ,KAAK;AAAA,cACX,GAAAC;AAAA,cACA,GAAAC;AAAA,cACA,SAAS,GAAGnB,EAAIkB,CAAC,CAAC,IAAIlB,EAAImB,CAAC,CAAC;AAAA,YAAA,CAC7B;AAIL,eAAOF;AAAA,MACT,GAAG,CAACV,GAAOC,CAAO,CAAC,GAEbY,IACJX,MAAU,UAAaC,MAAY,SAC/B,GAAGV,EAAIS,CAAK,CAAC,IAAIT,EAAIU,CAAO,CAAC,KAC7B,IAEAW,IAAmB,CAACH,GAAWC,MAAc;AAEjD,QAAKP,EAAeM,GAAGC,GAAG,CAAC,KACzBN,EAAaK,GAAGC,CAAC;AAAA,MAErB;AAEA,aACE,gBAAAG,EAAC,OAAA,EAAI,WAAU,uBACb,UAAA,gBAAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAAR;AAAA,UACA,WAAU;AAAA,UAET,YAAY,IAAI,CAAC,EAAE,GAAAI,GAAG,GAAAC,GAAG,SAAAI,QAAc;AACtC,kBAAMC,IAAeZ,EAAeM,GAAGC,GAAG,CAAC,GACrCM,IAAaF,MAAYH,GACzBM,IAAexB,EAAgBC,CAAK;AAE1C,mBACE,gBAAAmB;AAAA,cAACK;AAAA,cAAA;AAAA,gBAEC,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,SAAS,MAAMN,EAAiBH,GAAGC,CAAC;AAAA,gBACpC,iBAAeM,KAAc;AAAA,gBAC7B,UAAUd,KAAYa;AAAA,gBACtB,MAAK;AAAA,gBACL,WAAWI;AAAA,kBACTH,IACI,GAAGC,EAAa,EAAE,IAAIA,EAAa,IAAI,mBACvC;AAAA,gBAAA;AAAA,gBAGL,UAAAH;AAAA,cAAA;AAAA,cAbIA;AAAA,YAAA;AAAA,UAgBX,CAAC;AAAA,QAAA;AAAA,MAAA,GAEL;AAAA,IAEJ;AAAA,EAAA;AAEJ;AAEAnB,EAAa,cAAc;"}
1
+ {"version":3,"file":"TimeGridView.js","sources":["../../../src/components/TimeGridView.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { memo, useMemo } from \"react\";\nimport { cn } from \"@dsui/ui/index\";\nimport Button from \"./Button/Button\";\nimport type { CalendarColor } from \"./Calendar/Calendar\";\n\nconst pad = (num: number): string => String(num).padStart(2, \"0\");\n\n// Color variants for time grid items\nconst getColorClasses = (color: CalendarColor = \"primary\") => {\n const colorMap = {\n primary: {\n bg: \"bg-primary\",\n text: \"text-primary-foreground\",\n },\n secondary: {\n bg: \"bg-secondary\",\n text: \"text-secondary-foreground\",\n },\n accent: {\n bg: \"bg-accent\",\n text: \"text-accent-foreground\",\n },\n destructive: {\n bg: \"bg-destructive\",\n text: \"text-destructive-foreground\",\n },\n muted: {\n bg: \"bg-muted\",\n text: \"text-muted-foreground\",\n },\n success: {\n bg: \"bg-success\",\n text: \"text-success-foreground\",\n },\n error: {\n bg: \"bg-error\",\n text: \"text-error-foreground\",\n },\n warning: {\n bg: \"bg-warning\",\n text: \"text-warning-foreground\",\n },\n foreground: {\n bg: \"bg-foreground\",\n text: \"text-background\",\n },\n };\n return colorMap[color];\n};\n\ntype TimeGridViewProps = {\n HOURS: number[];\n MINUTES: number[];\n hours: number | undefined;\n minutes: number | undefined;\n disabled: boolean;\n isTimeDisabled: (h: number, m: number, s: number) => boolean;\n onTimeSelect: (h: number, m: number) => void;\n color?: CalendarColor;\n};\n\nexport const TimeGridView = memo(\n React.forwardRef<HTMLDivElement, TimeGridViewProps>(\n (\n {\n HOURS,\n MINUTES,\n hours,\n minutes,\n disabled,\n isTimeDisabled,\n onTimeSelect,\n color = \"primary\",\n },\n ref\n ) => {\n // Generate all time combinations based on intervals (always HH:mm, never shows seconds)\n const timeOptions = useMemo(() => {\n const options: Array<{ h: number; m: number; display: string }> = [];\n\n for (const h of HOURS) {\n for (const m of MINUTES) {\n options.push({\n h,\n m,\n display: `${pad(h)}:${pad(m)}`,\n });\n }\n }\n\n return options;\n }, [HOURS, MINUTES]);\n\n const currentValue =\n hours !== undefined && minutes !== undefined\n ? `${pad(hours)}:${pad(minutes)}`\n : \"\";\n\n const handleTimeSelect = (h: number, m: number) => {\n // Always set seconds to 0 in grid mode\n if (!isTimeDisabled(h, m, 0)) {\n onTimeSelect(h, m);\n }\n };\n\n return (\n <div className=\"ds:flex ds:flex-col ds:gap-2\">\n <div\n ref={ref}\n className=\"ds:flex ds:flex-col ds:gap-1 ds:h-64 ds:overflow-y-auto ds:p-2 ds:rounded-md\"\n >\n {timeOptions.map(({ h, m, display }) => {\n const itemDisabled = isTimeDisabled(h, m, 0);\n const isSelected = display === currentValue;\n const colorClasses = getColorClasses(color);\n\n return (\n <Button\n key={display}\n type=\"button\"\n variant=\"outline\"\n onClick={() => handleTimeSelect(h, m)}\n data-selected={isSelected || undefined}\n disabled={disabled || itemDisabled}\n size=\"sm\"\n className={cn(\n isSelected\n ? `${colorClasses.bg} ${colorClasses.text} ds:font-semibold`\n : \"ds:text-foreground\"\n )}\n >\n {display}\n </Button>\n );\n })}\n </div>\n </div>\n );\n }\n )\n);\n\nTimeGridView.displayName = \"TimeGridView\";\n"],"names":["pad","num","getColorClasses","color","TimeGridView","memo","React","HOURS","MINUTES","hours","minutes","disabled","isTimeDisabled","onTimeSelect","ref","timeOptions","useMemo","options","h","m","currentValue","handleTimeSelect","jsx","display","itemDisabled","isSelected","colorClasses","Button","cn"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,MAAMA,IAAM,CAACC,MAAwB,OAAOA,CAAG,EAAE,SAAS,GAAG,GAAG,GAG1DC,IAAkB,CAACC,IAAuB,eAC7B;AAAA,EACf,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,WAAW;AAAA,IACT,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,QAAQ;AAAA,IACN,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,aAAa;AAAA,IACX,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,OAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,OAAO;AAAA,IACL,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,SAAS;AAAA,IACP,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AAAA,EAER,YAAY;AAAA,IACV,IAAI;AAAA,IACJ,MAAM;AAAA,EAAA;AACR,GAEcA,CAAK,GAcVC,IAAeC;AAAA,EAC1BC,EAAM;AAAA,IACJ,CACE;AAAA,MACE,OAAAC;AAAA,MACA,SAAAC;AAAA,MACA,OAAAC;AAAA,MACA,SAAAC;AAAA,MACA,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,OAAAV,IAAQ;AAAA,IAAA,GAEVW,MACG;AAEH,YAAMC,IAAcC,EAAQ,MAAM;AAChC,cAAMC,IAA4D,CAAA;AAElE,mBAAWC,KAAKX;AACd,qBAAWY,KAAKX;AACd,YAAAS,EAAQ,KAAK;AAAA,cACX,GAAAC;AAAA,cACA,GAAAC;AAAA,cACA,SAAS,GAAGnB,EAAIkB,CAAC,CAAC,IAAIlB,EAAImB,CAAC,CAAC;AAAA,YAAA,CAC7B;AAIL,eAAOF;AAAA,MACT,GAAG,CAACV,GAAOC,CAAO,CAAC,GAEbY,IACJX,MAAU,UAAaC,MAAY,SAC/B,GAAGV,EAAIS,CAAK,CAAC,IAAIT,EAAIU,CAAO,CAAC,KAC7B,IAEAW,IAAmB,CAACH,GAAWC,MAAc;AAEjD,QAAKP,EAAeM,GAAGC,GAAG,CAAC,KACzBN,EAAaK,GAAGC,CAAC;AAAA,MAErB;AAEA,aACE,gBAAAG,EAAC,OAAA,EAAI,WAAU,gCACb,UAAA,gBAAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,KAAAR;AAAA,UACA,WAAU;AAAA,UAET,YAAY,IAAI,CAAC,EAAE,GAAAI,GAAG,GAAAC,GAAG,SAAAI,QAAc;AACtC,kBAAMC,IAAeZ,EAAeM,GAAGC,GAAG,CAAC,GACrCM,IAAaF,MAAYH,GACzBM,IAAexB,EAAgBC,CAAK;AAE1C,mBACE,gBAAAmB;AAAA,cAACK;AAAA,cAAA;AAAA,gBAEC,MAAK;AAAA,gBACL,SAAQ;AAAA,gBACR,SAAS,MAAMN,EAAiBH,GAAGC,CAAC;AAAA,gBACpC,iBAAeM,KAAc;AAAA,gBAC7B,UAAUd,KAAYa;AAAA,gBACtB,MAAK;AAAA,gBACL,WAAWI;AAAA,kBACTH,IACI,GAAGC,EAAa,EAAE,IAAIA,EAAa,IAAI,sBACvC;AAAA,gBAAA;AAAA,gBAGL,UAAAH;AAAA,cAAA;AAAA,cAbIA;AAAA,YAAA;AAAA,UAgBX,CAAC;AAAA,QAAA;AAAA,MAAA,GAEL;AAAA,IAEJ;AAAA,EAAA;AAEJ;AAEAnB,EAAa,cAAc;"}
@@ -1,6 +1,6 @@
1
- import { jsxs as d, jsx as o } from "react/jsx-runtime";
2
- import { toast as e, Toaster as u } from "sonner";
3
- import { Info as m, AlertTriangle as l, XCircle as b, CheckCircle as f } from "lucide-react";
1
+ import { jsxs as p, jsx as t } from "react/jsx-runtime";
2
+ import { toast as o, Toaster as u } from "sonner";
3
+ import { Info as i, AlertTriangle as l, XCircle as b, CheckCircle as f } from "lucide-react";
4
4
  import "@radix-ui/react-slot";
5
5
  import "../../packages/ui/src/components/button.js";
6
6
  import "../../packages/ui/src/components/button-group.js";
@@ -34,67 +34,67 @@ import "@radix-ui/react-slider";
34
34
  import "../../packages/ui/src/components/tabs.js";
35
35
  import "../../packages/ui/src/components/toggle.js";
36
36
  const h = {
37
- default: "bg-neutral-800 text-white border border-neutral-700",
38
- success: "bg-success text-white border border-success/20",
39
- error: "bg-error text-white border border-error/20",
40
- warning: "bg-warning text-black border border-warning/20",
41
- info: "bg-info text-foreground",
42
- primary: "bg-primary text-primary-foreground border border-primary/20",
43
- secondary: "bg-secondary text-secondary-foreground border border-secondary/20"
37
+ default: "ds:bg-neutral-800 ds:text-white ds:border ds:border-neutral-700",
38
+ success: "ds:bg-success ds:text-white ds:border ds:border-success/20",
39
+ error: "ds:bg-error ds:text-white ds:border ds:border-error/20",
40
+ warning: "ds:bg-warning ds:text-black ds:border ds:border-warning/20",
41
+ info: "ds:bg-info ds:text-foreground",
42
+ primary: "ds:bg-primary ds:text-primary-foreground ds:border ds:border-primary/20",
43
+ secondary: "ds:bg-secondary ds:text-secondary-foreground ds:border ds:border-secondary/20"
44
44
  }, w = {
45
- success: /* @__PURE__ */ o(f, { className: "w-4 h-4 shrink-0" }),
46
- error: /* @__PURE__ */ o(b, { className: "w-4 h-4 shrink-0" }),
47
- warning: /* @__PURE__ */ o(l, { className: "w-4 h-4 shrink-0" }),
48
- info: /* @__PURE__ */ o(m, { className: "w-4 h-4 shrink-0" }),
45
+ success: /* @__PURE__ */ t(f, { className: "ds:w-4 ds:h-4 ds:shrink-0" }),
46
+ error: /* @__PURE__ */ t(b, { className: "ds:w-4 ds:h-4 ds:shrink-0" }),
47
+ warning: /* @__PURE__ */ t(l, { className: "ds:w-4 ds:h-4 ds:shrink-0" }),
48
+ info: /* @__PURE__ */ t(i, { className: "ds:w-4 ds:h-4 ds:shrink-0" }),
49
49
  default: null,
50
- primary: /* @__PURE__ */ o(m, { className: "w-4 h-4 shrink-0" }),
51
- secondary: /* @__PURE__ */ o(m, { className: "w-4 h-4 shrink-0" })
52
- }, s = (t, r) => /* @__PURE__ */ d(
50
+ primary: /* @__PURE__ */ t(i, { className: "ds:w-4 ds:h-4 ds:shrink-0" }),
51
+ secondary: /* @__PURE__ */ t(i, { className: "ds:w-4 ds:h-4 ds:shrink-0" })
52
+ }, e = (s, r) => /* @__PURE__ */ p(
53
53
  "div",
54
54
  {
55
55
  className: g(
56
- "flex items-center gap-2 rounded-md px-3 py-2 shadow-md text-sm font-medium",
57
- h[t]
56
+ "ds:flex ds:items-center ds:gap-2 ds:rounded-md ds:px-3 ds:py-2 ds:shadow-md ds:text-sm ds:font-medium",
57
+ h[s]
58
58
  ),
59
59
  children: [
60
- w[t],
61
- /* @__PURE__ */ o("span", { children: r })
60
+ w[s],
61
+ /* @__PURE__ */ t("span", { children: r })
62
62
  ]
63
63
  }
64
64
  ), rr = Object.assign(
65
- (...t) => {
66
- const [r] = t, i = typeof r == "function" ? r() : r ?? "Notification";
67
- return e.custom(() => s("default", i));
65
+ (...s) => {
66
+ const [r] = s, d = typeof r == "function" ? r() : r ?? "Notification";
67
+ return o.custom(() => e("default", d));
68
68
  },
69
69
  {
70
- success: (t, r) => e.custom(() => s("success", t), r),
71
- error: (t, r) => e.custom(() => s("error", t), r),
72
- warning: (t, r) => e.custom(() => s("warning", t), r),
73
- info: (t, r) => e.custom(() => s("info", t), r),
74
- primary: (t, r) => e.custom(() => s("primary", t), r),
75
- secondary: (t, r) => e.custom(() => s("secondary", t), r)
70
+ success: (s, r) => o.custom(() => e("success", s), r),
71
+ error: (s, r) => o.custom(() => e("error", s), r),
72
+ warning: (s, r) => o.custom(() => e("warning", s), r),
73
+ info: (s, r) => o.custom(() => e("info", s), r),
74
+ primary: (s, r) => o.custom(() => e("primary", s), r),
75
+ secondary: (s, r) => o.custom(() => e("secondary", s), r)
76
76
  }
77
77
  );
78
- function tr({
79
- position: t = "top-right",
78
+ function sr({
79
+ position: s = "top-right",
80
80
  richColors: r = !0,
81
- closeButton: i = !1,
82
- expand: n = !1,
83
- visibleToasts: a = 3,
84
- duration: c = 4e3,
85
- ...p
81
+ closeButton: d = !1,
82
+ expand: m = !1,
83
+ visibleToasts: n = 3,
84
+ duration: a = 4e3,
85
+ ...c
86
86
  }) {
87
- return /* @__PURE__ */ o(
87
+ return /* @__PURE__ */ t(
88
88
  u,
89
89
  {
90
- ...p,
91
- position: t,
90
+ ...c,
91
+ position: s,
92
92
  richColors: r,
93
- closeButton: i,
94
- expand: n,
95
- visibleToasts: a,
93
+ closeButton: d,
94
+ expand: m,
95
+ visibleToasts: n,
96
96
  toastOptions: {
97
- duration: c,
97
+ duration: a,
98
98
  classNames: {
99
99
  toast: "rounded-md shadow-md border-none text-sm font-medium backdrop-blur-sm text-black dark:text-white",
100
100
  description: "text-muted-foreground",
@@ -105,7 +105,7 @@ function tr({
105
105
  );
106
106
  }
107
107
  export {
108
- tr as Toaster,
108
+ sr as Toaster,
109
109
  rr as toast
110
110
  };
111
111
  //# sourceMappingURL=Toast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.js","sources":["../../../../src/components/Toast/Toast.tsx"],"sourcesContent":["import {\n Toaster as SonnerToaster,\n toast as sonnerToast,\n type ToasterProps as SonnerToasterProps,\n} from \"sonner\";\nimport { CheckCircle, XCircle, Info, AlertTriangle } from \"lucide-react\";\nimport { cn } from \"@dsui/ui/index\";\n\nconst variantStyles = {\n default: \"bg-neutral-800 text-white border border-neutral-700\",\n success: \"bg-success text-white border border-success/20\",\n error: \"bg-error text-white border border-error/20\",\n warning: \"bg-warning text-black border border-warning/20\",\n info: \"bg-info text-foreground\",\n primary: \"bg-primary text-primary-foreground border border-primary/20\",\n secondary:\n \"bg-secondary text-secondary-foreground border border-secondary/20\",\n};\n\nconst variantIcons = {\n success: <CheckCircle className=\"w-4 h-4 shrink-0\" />,\n error: <XCircle className=\"w-4 h-4 shrink-0\" />,\n warning: <AlertTriangle className=\"w-4 h-4 shrink-0\" />,\n info: <Info className=\"w-4 h-4 shrink-0\" />,\n default: null,\n primary: <Info className=\"w-4 h-4 shrink-0\" />,\n secondary: <Info className=\"w-4 h-4 shrink-0\" />,\n};\n\ntype Variant = keyof typeof variantStyles;\n\nconst renderToastContent = (variant: Variant, message: React.ReactNode) => (\n <div\n className={cn(\n \"flex items-center gap-2 rounded-md px-3 py-2 shadow-md text-sm font-medium\",\n variantStyles[variant]\n )}\n >\n {variantIcons[variant]}\n <span>{message}</span>\n </div>\n);\n\nconst toast = Object.assign(\n (...args: Parameters<typeof sonnerToast>) => {\n const [message] = args;\n const content =\n typeof message === \"function\" ? message() : (message ?? \"Notification\");\n\n return sonnerToast.custom(() => renderToastContent(\"default\", content));\n },\n {\n success: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"success\", message), opts),\n\n error: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"error\", message), opts),\n\n warning: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"warning\", message), opts),\n\n info: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"info\", message), opts),\n\n primary: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"primary\", message), opts),\n\n secondary: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) =>\n sonnerToast.custom(() => renderToastContent(\"secondary\", message), opts),\n }\n) as any;\n\nfunction Toaster({\n position = \"top-right\",\n richColors = true,\n closeButton = false,\n expand = false,\n visibleToasts = 3,\n duration = 4000,\n ...props\n}: SonnerToasterProps) {\n return (\n <SonnerToaster\n {...props}\n position={position}\n richColors={richColors}\n closeButton={closeButton}\n expand={expand}\n visibleToasts={visibleToasts}\n toastOptions={{\n duration: duration,\n classNames: {\n toast:\n \"rounded-md shadow-md border-none text-sm font-medium backdrop-blur-sm text-black dark:text-white\",\n description: \"text-muted-foreground\",\n actionButton: \"bg-white/10\",\n },\n }}\n />\n );\n}\n\nexport { toast, Toaster };\n"],"names":["variantStyles","variantIcons","jsx","CheckCircle","XCircle","AlertTriangle","Info","renderToastContent","variant","message","jsxs","cn","toast","args","content","sonnerToast","opts","Toaster","position","richColors","closeButton","expand","visibleToasts","duration","props","SonnerToaster"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAMA,IAAgB;AAAA,EACpB,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,MAAM;AAAA,EACN,SAAS;AAAA,EACT,WACE;AACJ,GAEMC,IAAe;AAAA,EACnB,SAAS,gBAAAC,EAACC,GAAA,EAAY,WAAU,mBAAA,CAAmB;AAAA,EACnD,OAAO,gBAAAD,EAACE,GAAA,EAAQ,WAAU,mBAAA,CAAmB;AAAA,EAC7C,SAAS,gBAAAF,EAACG,GAAA,EAAc,WAAU,mBAAA,CAAmB;AAAA,EACrD,MAAM,gBAAAH,EAACI,GAAA,EAAK,WAAU,mBAAA,CAAmB;AAAA,EACzC,SAAS;AAAA,EACT,SAAS,gBAAAJ,EAACI,GAAA,EAAK,WAAU,mBAAA,CAAmB;AAAA,EAC5C,WAAW,gBAAAJ,EAACI,GAAA,EAAK,WAAU,mBAAA,CAAmB;AAChD,GAIMC,IAAqB,CAACC,GAAkBC,MAC5C,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC;AAAA,MACT;AAAA,MACAX,EAAcQ,CAAO;AAAA,IAAA;AAAA,IAGtB,UAAA;AAAA,MAAAP,EAAaO,CAAO;AAAA,MACrB,gBAAAN,EAAC,UAAM,UAAAO,EAAA,CAAQ;AAAA,IAAA;AAAA,EAAA;AACjB,GAGIG,KAAQ,OAAO;AAAA,EACnB,IAAIC,MAAyC;AAC3C,UAAM,CAACJ,CAAO,IAAII,GACZC,IACJ,OAAOL,KAAY,aAAaA,EAAA,IAAaA,KAAW;AAE1D,WAAOM,EAAY,OAAO,MAAMR,EAAmB,WAAWO,CAAO,CAAC;AAAA,EACxE;AAAA,EACA;AAAA,IACE,SAAS,CACPL,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,WAAWE,CAAO,GAAGO,CAAI;AAAA,IAE1E,OAAO,CACLP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,SAASE,CAAO,GAAGO,CAAI;AAAA,IAExE,SAAS,CACPP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,WAAWE,CAAO,GAAGO,CAAI;AAAA,IAE1E,MAAM,CACJP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,QAAQE,CAAO,GAAGO,CAAI;AAAA,IAEvE,SAAS,CACPP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,WAAWE,CAAO,GAAGO,CAAI;AAAA,IAE1E,WAAW,CACTP,GACAO,MAEAD,EAAY,OAAO,MAAMR,EAAmB,aAAaE,CAAO,GAAGO,CAAI;AAAA,EAAA;AAE7E;AAEA,SAASC,GAAQ;AAAA,EACf,UAAAC,IAAW;AAAA,EACX,YAAAC,IAAa;AAAA,EACb,aAAAC,IAAc;AAAA,EACd,QAAAC,IAAS;AAAA,EACT,eAAAC,IAAgB;AAAA,EAChB,UAAAC,IAAW;AAAA,EACX,GAAGC;AACL,GAAuB;AACrB,SACE,gBAAAtB;AAAA,IAACuB;AAAAA,IAAA;AAAA,MACE,GAAGD;AAAA,MACJ,UAAAN;AAAA,MACA,YAAAC;AAAA,MACA,aAAAC;AAAA,MACA,QAAAC;AAAA,MACA,eAAAC;AAAA,MACA,cAAc;AAAA,QACZ,UAAAC;AAAA,QACA,YAAY;AAAA,UACV,OACE;AAAA,UACF,aAAa;AAAA,UACb,cAAc;AAAA,QAAA;AAAA,MAChB;AAAA,IACF;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"Toast.js","sources":["../../../../src/components/Toast/Toast.tsx"],"sourcesContent":["import {\n Toaster as SonnerToaster,\n toast as sonnerToast,\n type ToasterProps as SonnerToasterProps,\n} from \"sonner\";\nimport { CheckCircle, XCircle, Info, AlertTriangle } from \"lucide-react\";\nimport { cn } from \"@dsui/ui/index\";\n\nconst variantStyles = {\n default: \"ds:bg-neutral-800 ds:text-white ds:border ds:border-neutral-700\",\n success: \"ds:bg-success ds:text-white ds:border ds:border-success/20\",\n error: \"ds:bg-error ds:text-white ds:border ds:border-error/20\",\n warning: \"ds:bg-warning ds:text-black ds:border ds:border-warning/20\",\n info: \"ds:bg-info ds:text-foreground\",\n primary: \"ds:bg-primary ds:text-primary-foreground ds:border ds:border-primary/20\",\n secondary:\n \"ds:bg-secondary ds:text-secondary-foreground ds:border ds:border-secondary/20\",\n};\n\nconst variantIcons = {\n success: <CheckCircle className=\"ds:w-4 ds:h-4 ds:shrink-0\" />,\n error: <XCircle className=\"ds:w-4 ds:h-4 ds:shrink-0\" />,\n warning: <AlertTriangle className=\"ds:w-4 ds:h-4 ds:shrink-0\" />,\n info: <Info className=\"ds:w-4 ds:h-4 ds:shrink-0\" />,\n default: null,\n primary: <Info className=\"ds:w-4 ds:h-4 ds:shrink-0\" />,\n secondary: <Info className=\"ds:w-4 ds:h-4 ds:shrink-0\" />,\n};\n\ntype Variant = keyof typeof variantStyles;\n\nconst renderToastContent = (variant: Variant, message: React.ReactNode) => (\n <div\n className={cn(\n \"ds:flex ds:items-center ds:gap-2 ds:rounded-md ds:px-3 ds:py-2 ds:shadow-md ds:text-sm ds:font-medium\",\n variantStyles[variant]\n )}\n >\n {variantIcons[variant]}\n <span>{message}</span>\n </div>\n);\n\nconst toast = Object.assign(\n (...args: Parameters<typeof sonnerToast>) => {\n const [message] = args;\n const content =\n typeof message === \"function\" ? message() : (message ?? \"Notification\");\n\n return sonnerToast.custom(() => renderToastContent(\"default\", content));\n },\n {\n success: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"success\", message), opts),\n\n error: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"error\", message), opts),\n\n warning: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"warning\", message), opts),\n\n info: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"info\", message), opts),\n\n primary: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) => sonnerToast.custom(() => renderToastContent(\"primary\", message), opts),\n\n secondary: (\n message: React.ReactNode,\n opts?: Parameters<typeof sonnerToast>[1]\n ) =>\n sonnerToast.custom(() => renderToastContent(\"secondary\", message), opts),\n }\n) as any;\n\nfunction Toaster({\n position = \"top-right\",\n richColors = true,\n closeButton = false,\n expand = false,\n visibleToasts = 3,\n duration = 4000,\n ...props\n}: SonnerToasterProps) {\n return (\n <SonnerToaster\n {...props}\n position={position}\n richColors={richColors}\n closeButton={closeButton}\n expand={expand}\n visibleToasts={visibleToasts}\n toastOptions={{\n duration: duration,\n classNames: {\n toast:\n \"rounded-md shadow-md border-none text-sm font-medium backdrop-blur-sm text-black dark:text-white\",\n description: \"text-muted-foreground\",\n actionButton: \"bg-white/10\",\n },\n }}\n />\n );\n}\n\nexport { toast, Toaster };\n"],"names":["variantStyles","variantIcons","jsx","CheckCircle","XCircle","AlertTriangle","Info","renderToastContent","variant","message","jsxs","cn","toast","args","content","sonnerToast","opts","Toaster","position","richColors","closeButton","expand","visibleToasts","duration","props","SonnerToaster"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,MAAMA,IAAgB;AAAA,EACpB,SAAS;AAAA,EACT,SAAS;AAAA,EACT,OAAO;AAAA,EACP,SAAS;AAAA,EACT,MAAM;AAAA,EACN,SAAS;AAAA,EACT,WACE;AACJ,GAEMC,IAAe;AAAA,EACnB,SAAS,gBAAAC,EAACC,GAAA,EAAY,WAAU,4BAAA,CAA4B;AAAA,EAC5D,OAAO,gBAAAD,EAACE,GAAA,EAAQ,WAAU,4BAAA,CAA4B;AAAA,EACtD,SAAS,gBAAAF,EAACG,GAAA,EAAc,WAAU,4BAAA,CAA4B;AAAA,EAC9D,MAAM,gBAAAH,EAACI,GAAA,EAAK,WAAU,4BAAA,CAA4B;AAAA,EAClD,SAAS;AAAA,EACT,SAAS,gBAAAJ,EAACI,GAAA,EAAK,WAAU,4BAAA,CAA4B;AAAA,EACrD,WAAW,gBAAAJ,EAACI,GAAA,EAAK,WAAU,4BAAA,CAA4B;AACzD,GAIMC,IAAqB,CAACC,GAAkBC,MAC5C,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,WAAWC;AAAA,MACT;AAAA,MACAX,EAAcQ,CAAO;AAAA,IAAA;AAAA,IAGtB,UAAA;AAAA,MAAAP,EAAaO,CAAO;AAAA,MACrB,gBAAAN,EAAC,UAAM,UAAAO,EAAA,CAAQ;AAAA,IAAA;AAAA,EAAA;AACjB,GAGIG,KAAQ,OAAO;AAAA,EACnB,IAAIC,MAAyC;AAC3C,UAAM,CAACJ,CAAO,IAAII,GACZC,IACJ,OAAOL,KAAY,aAAaA,EAAA,IAAaA,KAAW;AAE1D,WAAOM,EAAY,OAAO,MAAMR,EAAmB,WAAWO,CAAO,CAAC;AAAA,EACxE;AAAA,EACA;AAAA,IACE,SAAS,CACPL,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,WAAWE,CAAO,GAAGO,CAAI;AAAA,IAE1E,OAAO,CACLP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,SAASE,CAAO,GAAGO,CAAI;AAAA,IAExE,SAAS,CACPP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,WAAWE,CAAO,GAAGO,CAAI;AAAA,IAE1E,MAAM,CACJP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,QAAQE,CAAO,GAAGO,CAAI;AAAA,IAEvE,SAAS,CACPP,GACAO,MACGD,EAAY,OAAO,MAAMR,EAAmB,WAAWE,CAAO,GAAGO,CAAI;AAAA,IAE1E,WAAW,CACTP,GACAO,MAEAD,EAAY,OAAO,MAAMR,EAAmB,aAAaE,CAAO,GAAGO,CAAI;AAAA,EAAA;AAE7E;AAEA,SAASC,GAAQ;AAAA,EACf,UAAAC,IAAW;AAAA,EACX,YAAAC,IAAa;AAAA,EACb,aAAAC,IAAc;AAAA,EACd,QAAAC,IAAS;AAAA,EACT,eAAAC,IAAgB;AAAA,EAChB,UAAAC,IAAW;AAAA,EACX,GAAGC;AACL,GAAuB;AACrB,SACE,gBAAAtB;AAAA,IAACuB;AAAAA,IAAA;AAAA,MACE,GAAGD;AAAA,MACJ,UAAAN;AAAA,MACA,YAAAC;AAAA,MACA,aAAAC;AAAA,MACA,QAAAC;AAAA,MACA,eAAAC;AAAA,MACA,cAAc;AAAA,QACZ,UAAAC;AAAA,QACA,YAAY;AAAA,UACV,OACE;AAAA,UACF,aAAa;AAAA,UACb,cAAc;AAAA,QAAA;AAAA,MAChB;AAAA,IACF;AAAA,EAAA;AAGN;"}
@@ -1,5 +1,5 @@
1
- import { jsx as t, Fragment as _, jsxs as c } from "react/jsx-runtime";
2
- import * as d from "react";
1
+ import { jsx as t, Fragment as _, jsxs as m } from "react/jsx-runtime";
2
+ import * as c from "react";
3
3
  import { useMemo as g, useCallback as j } from "react";
4
4
  import { TooltipProvider as S, Tooltip as W, TooltipTrigger as X, TooltipContent as A } from "../../packages/ui/src/components/tooltip.js";
5
5
  import "@radix-ui/react-slot";
@@ -35,19 +35,19 @@ import "../../packages/ui/src/components/tabs.js";
35
35
  import "../../packages/ui/src/components/toggle.js";
36
36
  import { useMotionValue as E, useSpring as u, useTransform as f, motion as v } from "motion/react";
37
37
  import { animationClass as F } from "../../utils/animations.js";
38
- const xt = d.memo(function({
38
+ const xt = c.memo(function({
39
39
  content: n,
40
40
  children: o,
41
41
  sideOffset: b = 4,
42
42
  delayDuration: h = 0,
43
- className: i,
43
+ className: s,
44
44
  childClassName: x,
45
45
  position: y = "top",
46
46
  noArrow: w = !1,
47
- animation: s,
47
+ animation: i,
48
48
  ...a
49
49
  }) {
50
- const l = { stiffness: 100, damping: 5 }, k = g(() => F(s, i), [s, i]), p = g(() => {
50
+ const l = { stiffness: 100, damping: 5 }, k = g(() => F(i, s), [i, s]), d = g(() => {
51
51
  switch (a.color) {
52
52
  case "primary":
53
53
  return "bg-primary text-primary-foreground [&>span>svg]:bg-primary [&>span>svg]:fill-primary";
@@ -77,23 +77,23 @@ const xt = d.memo(function({
77
77
  f(r, [-100, 100], [-50, 50]),
78
78
  l
79
79
  ), M = j(
80
- (m) => {
81
- const N = m.target.offsetWidth / 2;
82
- r.set(m.nativeEvent.offsetX - N);
80
+ (p) => {
81
+ const N = p.target.offsetWidth / 2;
82
+ r.set(p.nativeEvent.offsetX - N);
83
83
  },
84
84
  [r]
85
- ), z = d.memo(() => o ? /* @__PURE__ */ t(
85
+ ), z = c.memo(() => o ? /* @__PURE__ */ t(
86
86
  "span",
87
87
  {
88
88
  onMouseMove: M,
89
- className: e("inline-block", x),
89
+ className: e("ds:inline-block", x),
90
90
  children: o
91
91
  }
92
92
  ) : /* @__PURE__ */ t(_, {}));
93
- return s === "spec" ? /* @__PURE__ */ c(
93
+ return i === "spec" ? /* @__PURE__ */ m(
94
94
  v.div,
95
95
  {
96
- className: e("relative -me-2.5 inline-block", i),
96
+ className: e("ds:relative ds:-me-2.5 ds:inline-block", s),
97
97
  whileHover: "hover",
98
98
  initial: "initial",
99
99
  children: [
@@ -119,16 +119,16 @@ const xt = d.memo(function({
119
119
  whiteSpace: "nowrap"
120
120
  },
121
121
  className: e(
122
- "absolute -top-2 left-1/2 z-50 flex -translate-x-1/2 -translate-y-full flex-col items-center justify-center rounded-md px-4 py-2 text-xs shadow-xl",
123
- p
122
+ "ds:absolute ds:-top-2 ds:left-1/2 ds:z-50 ds:flex ds:-translate-x-1/2 ds:-translate-y-full ds:flex-col ds:items-center ds:justify-center ds:rounded-md ds:px-4 ds:py-2 ds:text-xs ds:shadow-xl",
123
+ d
124
124
  ),
125
- children: /* @__PURE__ */ t("div", { className: "relative z-1", children: n })
125
+ children: /* @__PURE__ */ t("div", { className: "ds:relative ds:z-1", children: n })
126
126
  }
127
127
  ),
128
128
  /* @__PURE__ */ t(z, {})
129
129
  ]
130
130
  }
131
- ) : /* @__PURE__ */ t(S, { delayDuration: h, children: /* @__PURE__ */ c(W, { children: [
131
+ ) : /* @__PURE__ */ t(S, { delayDuration: h, children: /* @__PURE__ */ m(W, { children: [
132
132
  /* @__PURE__ */ t(X, { asChild: !0, children: o }),
133
133
  /* @__PURE__ */ t(
134
134
  A,
@@ -136,8 +136,8 @@ const xt = d.memo(function({
136
136
  ...a,
137
137
  side: y,
138
138
  sideOffset: b,
139
- className: e(k?.className, p, {
140
- "[&>span>svg]:invisible": w
139
+ className: e(k?.className, d, {
140
+ "ds:[&>span>svg]:invisible": w
141
141
  }),
142
142
  children: n
143
143
  }