@sth87/shadcn-design-system 0.0.1

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 (760) hide show
  1. package/README.md +487 -0
  2. package/dist/cjs/_virtual/_commonjsHelpers.cjs +2 -0
  3. package/dist/cjs/_virtual/_commonjsHelpers.cjs.map +1 -0
  4. package/dist/cjs/_virtual/index.cjs +2 -0
  5. package/dist/cjs/_virtual/index.cjs.map +1 -0
  6. package/dist/cjs/_virtual/index2.cjs +2 -0
  7. package/dist/cjs/_virtual/index2.cjs.map +1 -0
  8. package/dist/cjs/components/Accordion/Accordion.cjs +2 -0
  9. package/dist/cjs/components/Accordion/Accordion.cjs.map +1 -0
  10. package/dist/cjs/components/Avatar/Avatar.cjs +2 -0
  11. package/dist/cjs/components/Avatar/Avatar.cjs.map +1 -0
  12. package/dist/cjs/components/Badge/Badge.cjs +2 -0
  13. package/dist/cjs/components/Badge/Badge.cjs.map +1 -0
  14. package/dist/cjs/components/Breadcrumb/Breadcrumb.cjs +2 -0
  15. package/dist/cjs/components/Breadcrumb/Breadcrumb.cjs.map +1 -0
  16. package/dist/cjs/components/Button/Button.cjs +2 -0
  17. package/dist/cjs/components/Button/Button.cjs.map +1 -0
  18. package/dist/cjs/components/Button/ButtonGroup.cjs +2 -0
  19. package/dist/cjs/components/Button/ButtonGroup.cjs.map +1 -0
  20. package/dist/cjs/components/Calendar/Calendar.cjs +2 -0
  21. package/dist/cjs/components/Calendar/Calendar.cjs.map +1 -0
  22. package/dist/cjs/components/Carousel/Carousel.cjs +2 -0
  23. package/dist/cjs/components/Carousel/Carousel.cjs.map +1 -0
  24. package/dist/cjs/components/Checkbox/Checkbox.cjs +2 -0
  25. package/dist/cjs/components/Checkbox/Checkbox.cjs.map +1 -0
  26. package/dist/cjs/components/Collapsible/Collapsible.cjs +2 -0
  27. package/dist/cjs/components/Collapsible/Collapsible.cjs.map +1 -0
  28. package/dist/cjs/components/Command/Command.cjs +2 -0
  29. package/dist/cjs/components/Command/Command.cjs.map +1 -0
  30. package/dist/cjs/components/Command/index.cjs +2 -0
  31. package/dist/cjs/components/Command/index.cjs.map +1 -0
  32. package/dist/cjs/components/ContextMenu/ContextMenu.cjs +2 -0
  33. package/dist/cjs/components/ContextMenu/ContextMenu.cjs.map +1 -0
  34. package/dist/cjs/components/ContextMenu/index.cjs +2 -0
  35. package/dist/cjs/components/ContextMenu/index.cjs.map +1 -0
  36. package/dist/cjs/components/Cropper/Cropper.cjs +2 -0
  37. package/dist/cjs/components/Cropper/Cropper.cjs.map +1 -0
  38. package/dist/cjs/components/Cropper/CropperTool.cjs +2 -0
  39. package/dist/cjs/components/Cropper/CropperTool.cjs.map +1 -0
  40. package/dist/cjs/components/Cropper/utils.cjs +2 -0
  41. package/dist/cjs/components/Cropper/utils.cjs.map +1 -0
  42. package/dist/cjs/components/DatePicker/DatePicker.cjs +2 -0
  43. package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -0
  44. package/dist/cjs/components/DatePicker/RangePicker.cjs +2 -0
  45. package/dist/cjs/components/DatePicker/RangePicker.cjs.map +1 -0
  46. package/dist/cjs/components/DatePicker/TimePicker.cjs +2 -0
  47. package/dist/cjs/components/DatePicker/TimePicker.cjs.map +1 -0
  48. package/dist/cjs/components/Dialog/Dialog.cjs +2 -0
  49. package/dist/cjs/components/Dialog/Dialog.cjs.map +1 -0
  50. package/dist/cjs/components/DropdownMenu/DropdownMenu.cjs +2 -0
  51. package/dist/cjs/components/DropdownMenu/DropdownMenu.cjs.map +1 -0
  52. package/dist/cjs/components/DropdownMenu/index.cjs +2 -0
  53. package/dist/cjs/components/DropdownMenu/index.cjs.map +1 -0
  54. package/dist/cjs/components/FloatLabel.cjs +2 -0
  55. package/dist/cjs/components/FloatLabel.cjs.map +1 -0
  56. package/dist/cjs/components/Glass/Glass.cjs +2 -0
  57. package/dist/cjs/components/Glass/Glass.cjs.map +1 -0
  58. package/dist/cjs/components/ImageViewer/ImageViewer.cjs +2 -0
  59. package/dist/cjs/components/ImageViewer/ImageViewer.cjs.map +1 -0
  60. package/dist/cjs/components/ImageViewer/ImageViewer.css +1 -0
  61. package/dist/cjs/components/Input/Input.cjs +2 -0
  62. package/dist/cjs/components/Input/Input.cjs.map +1 -0
  63. package/dist/cjs/components/InputOTP/InputOTP.cjs +2 -0
  64. package/dist/cjs/components/InputOTP/InputOTP.cjs.map +1 -0
  65. package/dist/cjs/components/Interactive/CursorFollow.cjs +2 -0
  66. package/dist/cjs/components/Interactive/CursorFollow.cjs.map +1 -0
  67. package/dist/cjs/components/Marquee/Marquee.cjs +2 -0
  68. package/dist/cjs/components/Marquee/Marquee.cjs.map +1 -0
  69. package/dist/cjs/components/Marquee/MarqueeWrapper.cjs +2 -0
  70. package/dist/cjs/components/Marquee/MarqueeWrapper.cjs.map +1 -0
  71. package/dist/cjs/components/Marquee/index.cjs +2 -0
  72. package/dist/cjs/components/Marquee/index.cjs.map +1 -0
  73. package/dist/cjs/components/Masonry/Masonry.cjs +2 -0
  74. package/dist/cjs/components/Masonry/Masonry.cjs.map +1 -0
  75. package/dist/cjs/components/Masonry/MasonryWrapper.cjs +2 -0
  76. package/dist/cjs/components/Masonry/MasonryWrapper.cjs.map +1 -0
  77. package/dist/cjs/components/Pagination/Pagination.cjs +2 -0
  78. package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -0
  79. package/dist/cjs/components/Pagination/index.cjs +2 -0
  80. package/dist/cjs/components/Pagination/index.cjs.map +1 -0
  81. package/dist/cjs/components/Popover/Popover.cjs +2 -0
  82. package/dist/cjs/components/Popover/Popover.cjs.map +1 -0
  83. package/dist/cjs/components/Popover/index.cjs +2 -0
  84. package/dist/cjs/components/Popover/index.cjs.map +1 -0
  85. package/dist/cjs/components/QrCode/QrCode.cjs +2 -0
  86. package/dist/cjs/components/QrCode/QrCode.cjs.map +1 -0
  87. package/dist/cjs/components/QrCode/index.cjs +2 -0
  88. package/dist/cjs/components/QrCode/index.cjs.map +1 -0
  89. package/dist/cjs/components/Radio/Radio.cjs +2 -0
  90. package/dist/cjs/components/Radio/Radio.cjs.map +1 -0
  91. package/dist/cjs/components/Rate/Rate.cjs +2 -0
  92. package/dist/cjs/components/Rate/Rate.cjs.map +1 -0
  93. package/dist/cjs/components/Resizable/Resizable.cjs +2 -0
  94. package/dist/cjs/components/Resizable/Resizable.cjs.map +1 -0
  95. package/dist/cjs/components/ScrollArea/ScrollArea.cjs +2 -0
  96. package/dist/cjs/components/ScrollArea/ScrollArea.cjs.map +1 -0
  97. package/dist/cjs/components/Select/Select.cjs +2 -0
  98. package/dist/cjs/components/Select/Select.cjs.map +1 -0
  99. package/dist/cjs/components/Separator/Separator.cjs +2 -0
  100. package/dist/cjs/components/Separator/Separator.cjs.map +1 -0
  101. package/dist/cjs/components/Sheet/Sheet.cjs +6 -0
  102. package/dist/cjs/components/Sheet/Sheet.cjs.map +1 -0
  103. package/dist/cjs/components/Sidebar/Sidebar.cjs +2 -0
  104. package/dist/cjs/components/Sidebar/Sidebar.cjs.map +1 -0
  105. package/dist/cjs/components/Skeleton/Skeleton.cjs +2 -0
  106. package/dist/cjs/components/Skeleton/Skeleton.cjs.map +1 -0
  107. package/dist/cjs/components/Slider/Slider.cjs +2 -0
  108. package/dist/cjs/components/Slider/Slider.cjs.map +1 -0
  109. package/dist/cjs/components/Stepper/Stepper.cjs +2 -0
  110. package/dist/cjs/components/Stepper/Stepper.cjs.map +1 -0
  111. package/dist/cjs/components/Stepper/StepperWrapper.cjs +2 -0
  112. package/dist/cjs/components/Stepper/StepperWrapper.cjs.map +1 -0
  113. package/dist/cjs/components/Stepper/index.cjs +2 -0
  114. package/dist/cjs/components/Stepper/index.cjs.map +1 -0
  115. package/dist/cjs/components/Switch/Switch.cjs +2 -0
  116. package/dist/cjs/components/Switch/Switch.cjs.map +1 -0
  117. package/dist/cjs/components/Table/TableFilter/data-table-date-filter.cjs +2 -0
  118. package/dist/cjs/components/Table/TableFilter/data-table-date-filter.cjs.map +1 -0
  119. package/dist/cjs/components/Table/TableFilter/data-table-filter-popover.cjs +2 -0
  120. package/dist/cjs/components/Table/TableFilter/data-table-filter-popover.cjs.map +1 -0
  121. package/dist/cjs/components/Table/TableFilter/data-table-slider-filter.cjs +2 -0
  122. package/dist/cjs/components/Table/TableFilter/data-table-slider-filter.cjs.map +1 -0
  123. package/dist/cjs/components/Table/data-table-column-header.cjs +2 -0
  124. package/dist/cjs/components/Table/data-table-column-header.cjs.map +1 -0
  125. package/dist/cjs/components/Table/data-table-pagination.cjs +2 -0
  126. package/dist/cjs/components/Table/data-table-pagination.cjs.map +1 -0
  127. package/dist/cjs/components/Table/data-table.cjs +2 -0
  128. package/dist/cjs/components/Table/data-table.cjs.map +1 -0
  129. package/dist/cjs/components/Tabs/Tabs.cjs +2 -0
  130. package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -0
  131. package/dist/cjs/components/Tabs/classes.cjs +2 -0
  132. package/dist/cjs/components/Tabs/classes.cjs.map +1 -0
  133. package/dist/cjs/components/Textarea/Textarea.cjs +2 -0
  134. package/dist/cjs/components/Textarea/Textarea.cjs.map +1 -0
  135. package/dist/cjs/components/TimeGridView.cjs +2 -0
  136. package/dist/cjs/components/TimeGridView.cjs.map +1 -0
  137. package/dist/cjs/components/Toast/Toast.cjs +2 -0
  138. package/dist/cjs/components/Toast/Toast.cjs.map +1 -0
  139. package/dist/cjs/components/Toggle/Toggle.cjs +2 -0
  140. package/dist/cjs/components/Toggle/Toggle.cjs.map +1 -0
  141. package/dist/cjs/components/Tooltip/Tooltip.cjs +2 -0
  142. package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -0
  143. package/dist/cjs/components/Tour/Tour.cjs +2 -0
  144. package/dist/cjs/components/Tour/Tour.cjs.map +1 -0
  145. package/dist/cjs/components/Tour/TourWrapper.cjs +2 -0
  146. package/dist/cjs/components/Tour/TourWrapper.cjs.map +1 -0
  147. package/dist/cjs/components/Tour/index.cjs +2 -0
  148. package/dist/cjs/components/Tour/index.cjs.map +1 -0
  149. package/dist/cjs/components/Upload/Upload.cjs +4 -0
  150. package/dist/cjs/components/Upload/Upload.cjs.map +1 -0
  151. package/dist/cjs/components/WheelColumn.cjs +2 -0
  152. package/dist/cjs/components/WheelColumn.cjs.map +1 -0
  153. package/dist/cjs/constants/common.cjs +2 -0
  154. package/dist/cjs/constants/common.cjs.map +1 -0
  155. package/dist/cjs/favicon.ico +0 -0
  156. package/dist/cjs/hooks/use-callback-ref.cjs +2 -0
  157. package/dist/cjs/hooks/use-callback-ref.cjs.map +1 -0
  158. package/dist/cjs/hooks/use-debounced-callback.cjs +2 -0
  159. package/dist/cjs/hooks/use-debounced-callback.cjs.map +1 -0
  160. package/dist/cjs/hooks/use-debounced-value.cjs +2 -0
  161. package/dist/cjs/hooks/use-debounced-value.cjs.map +1 -0
  162. package/dist/cjs/hooks/use-event-listener.cjs +2 -0
  163. package/dist/cjs/hooks/use-event-listener.cjs.map +1 -0
  164. package/dist/cjs/hooks/use-intersection-observer.cjs +2 -0
  165. package/dist/cjs/hooks/use-intersection-observer.cjs.map +1 -0
  166. package/dist/cjs/hooks/use-isomorphic-layout-effect.cjs +2 -0
  167. package/dist/cjs/hooks/use-isomorphic-layout-effect.cjs.map +1 -0
  168. package/dist/cjs/hooks/use-media-query.cjs +2 -0
  169. package/dist/cjs/hooks/use-media-query.cjs.map +1 -0
  170. package/dist/cjs/hooks/use-on-click-outside.cjs +2 -0
  171. package/dist/cjs/hooks/use-on-click-outside.cjs.map +1 -0
  172. package/dist/cjs/hooks/use-script.cjs +2 -0
  173. package/dist/cjs/hooks/use-script.cjs.map +1 -0
  174. package/dist/cjs/hooks/use-scroll-lock.cjs +2 -0
  175. package/dist/cjs/hooks/use-scroll-lock.cjs.map +1 -0
  176. package/dist/cjs/image.png +0 -0
  177. package/dist/cjs/index.cjs +2 -0
  178. package/dist/cjs/index.cjs.map +1 -0
  179. package/dist/cjs/lib/TextAnimation/BlurText.cjs +2 -0
  180. package/dist/cjs/lib/TextAnimation/BlurText.cjs.map +1 -0
  181. package/dist/cjs/lib/TextAnimation/CircularText.cjs +2 -0
  182. package/dist/cjs/lib/TextAnimation/CircularText.cjs.map +1 -0
  183. package/dist/cjs/lib/TextAnimation/FlipWords.cjs +2 -0
  184. package/dist/cjs/lib/TextAnimation/FlipWords.cjs.map +1 -0
  185. package/dist/cjs/lib/TextAnimation/GradientText.cjs +2 -0
  186. package/dist/cjs/lib/TextAnimation/GradientText.cjs.map +1 -0
  187. package/dist/cjs/lib/TextAnimation/RollingText.cjs +2 -0
  188. package/dist/cjs/lib/TextAnimation/RollingText.cjs.map +1 -0
  189. package/dist/cjs/lib/TextAnimation/RotatingText.cjs +2 -0
  190. package/dist/cjs/lib/TextAnimation/RotatingText.cjs.map +1 -0
  191. package/dist/cjs/lib/TextAnimation/ShimmeringText.cjs +2 -0
  192. package/dist/cjs/lib/TextAnimation/ShimmeringText.cjs.map +1 -0
  193. package/dist/cjs/lib/TextAnimation/SplittingText.cjs +2 -0
  194. package/dist/cjs/lib/TextAnimation/SplittingText.cjs.map +1 -0
  195. package/dist/cjs/lib/TextAnimation/TextGenerateEffect.cjs +2 -0
  196. package/dist/cjs/lib/TextAnimation/TextGenerateEffect.cjs.map +1 -0
  197. package/dist/cjs/lib/TextAnimation/TextHoverEffect.cjs +2 -0
  198. package/dist/cjs/lib/TextAnimation/TextHoverEffect.cjs.map +1 -0
  199. package/dist/cjs/lib/TextAnimation/TextPressureEffect.cjs +22 -0
  200. package/dist/cjs/lib/TextAnimation/TextPressureEffect.cjs.map +1 -0
  201. package/dist/cjs/lib/TextAnimation/TypingText.cjs +2 -0
  202. package/dist/cjs/lib/TextAnimation/TypingText.cjs.map +1 -0
  203. package/dist/cjs/lib/TextAnimation/WritingText.cjs +2 -0
  204. package/dist/cjs/lib/TextAnimation/WritingText.cjs.map +1 -0
  205. package/dist/cjs/node_modules/.pnpm/react-viewer@3.2.2/node_modules/react-viewer/dist/index.cjs +253 -0
  206. package/dist/cjs/node_modules/.pnpm/react-viewer@3.2.2/node_modules/react-viewer/dist/index.cjs.map +1 -0
  207. package/dist/cjs/node_modules/.pnpm/viewerjs@1.11.7/node_modules/viewerjs/dist/viewer.css +1 -0
  208. package/dist/cjs/styles/animation.css +1 -0
  209. package/dist/cjs/styles/index.css +1 -0
  210. package/dist/cjs/styles/theme.css +1 -0
  211. package/dist/cjs/utils/animations.cjs +2 -0
  212. package/dist/cjs/utils/animations.cjs.map +1 -0
  213. package/dist/cjs/utils/css.cjs +2 -0
  214. package/dist/cjs/utils/css.cjs.map +1 -0
  215. package/dist/cjs/utils/data-table.cjs +2 -0
  216. package/dist/cjs/utils/data-table.cjs.map +1 -0
  217. package/dist/cjs/utils/datetime.cjs +2 -0
  218. package/dist/cjs/utils/datetime.cjs.map +1 -0
  219. package/dist/cjs/vite.svg +1 -0
  220. package/dist/cjs/wave.png +0 -0
  221. package/dist/esm/_virtual/_commonjsHelpers.js +7 -0
  222. package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -0
  223. package/dist/esm/_virtual/index.js +8 -0
  224. package/dist/esm/_virtual/index.js.map +1 -0
  225. package/dist/esm/_virtual/index2.js +5 -0
  226. package/dist/esm/_virtual/index2.js.map +1 -0
  227. package/dist/esm/components/Accordion/Accordion.js +190 -0
  228. package/dist/esm/components/Accordion/Accordion.js.map +1 -0
  229. package/dist/esm/components/Avatar/Avatar.js +93 -0
  230. package/dist/esm/components/Avatar/Avatar.js.map +1 -0
  231. package/dist/esm/components/Badge/Badge.js +35 -0
  232. package/dist/esm/components/Badge/Badge.js.map +1 -0
  233. package/dist/esm/components/Breadcrumb/Breadcrumb.js +102 -0
  234. package/dist/esm/components/Breadcrumb/Breadcrumb.js.map +1 -0
  235. package/dist/esm/components/Button/Button.js +53 -0
  236. package/dist/esm/components/Button/Button.js.map +1 -0
  237. package/dist/esm/components/Button/ButtonGroup.js +53 -0
  238. package/dist/esm/components/Button/ButtonGroup.js.map +1 -0
  239. package/dist/esm/components/Calendar/Calendar.js +40 -0
  240. package/dist/esm/components/Calendar/Calendar.js.map +1 -0
  241. package/dist/esm/components/Carousel/Carousel.js +510 -0
  242. package/dist/esm/components/Carousel/Carousel.js.map +1 -0
  243. package/dist/esm/components/Checkbox/Checkbox.js +79 -0
  244. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -0
  245. package/dist/esm/components/Collapsible/Collapsible.js +107 -0
  246. package/dist/esm/components/Collapsible/Collapsible.js.map +1 -0
  247. package/dist/esm/components/Command/Command.js +113 -0
  248. package/dist/esm/components/Command/Command.js.map +1 -0
  249. package/dist/esm/components/Command/index.js +16 -0
  250. package/dist/esm/components/Command/index.js.map +1 -0
  251. package/dist/esm/components/ContextMenu/ContextMenu.js +131 -0
  252. package/dist/esm/components/ContextMenu/ContextMenu.js.map +1 -0
  253. package/dist/esm/components/ContextMenu/index.js +24 -0
  254. package/dist/esm/components/ContextMenu/index.js.map +1 -0
  255. package/dist/esm/components/Cropper/Cropper.js +1014 -0
  256. package/dist/esm/components/Cropper/Cropper.js.map +1 -0
  257. package/dist/esm/components/Cropper/CropperTool.js +157 -0
  258. package/dist/esm/components/Cropper/CropperTool.js.map +1 -0
  259. package/dist/esm/components/Cropper/utils.js +108 -0
  260. package/dist/esm/components/Cropper/utils.js.map +1 -0
  261. package/dist/esm/components/DatePicker/DatePicker.js +263 -0
  262. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -0
  263. package/dist/esm/components/DatePicker/RangePicker.js +456 -0
  264. package/dist/esm/components/DatePicker/RangePicker.js.map +1 -0
  265. package/dist/esm/components/DatePicker/TimePicker.js +444 -0
  266. package/dist/esm/components/DatePicker/TimePicker.js.map +1 -0
  267. package/dist/esm/components/Dialog/Dialog.js +223 -0
  268. package/dist/esm/components/Dialog/Dialog.js.map +1 -0
  269. package/dist/esm/components/DropdownMenu/DropdownMenu.js +196 -0
  270. package/dist/esm/components/DropdownMenu/DropdownMenu.js.map +1 -0
  271. package/dist/esm/components/DropdownMenu/index.js +24 -0
  272. package/dist/esm/components/DropdownMenu/index.js.map +1 -0
  273. package/dist/esm/components/FloatLabel.js +59 -0
  274. package/dist/esm/components/FloatLabel.js.map +1 -0
  275. package/dist/esm/components/Glass/Glass.js +93 -0
  276. package/dist/esm/components/Glass/Glass.js.map +1 -0
  277. package/dist/esm/components/ImageViewer/ImageViewer.css +1 -0
  278. package/dist/esm/components/ImageViewer/ImageViewer.js +273 -0
  279. package/dist/esm/components/ImageViewer/ImageViewer.js.map +1 -0
  280. package/dist/esm/components/Input/Input.js +267 -0
  281. package/dist/esm/components/Input/Input.js.map +1 -0
  282. package/dist/esm/components/InputOTP/InputOTP.js +70 -0
  283. package/dist/esm/components/InputOTP/InputOTP.js.map +1 -0
  284. package/dist/esm/components/Interactive/CursorFollow.js +257 -0
  285. package/dist/esm/components/Interactive/CursorFollow.js.map +1 -0
  286. package/dist/esm/components/Marquee/Marquee.js +419 -0
  287. package/dist/esm/components/Marquee/Marquee.js.map +1 -0
  288. package/dist/esm/components/Marquee/MarqueeWrapper.js +25 -0
  289. package/dist/esm/components/Marquee/MarqueeWrapper.js.map +1 -0
  290. package/dist/esm/components/Marquee/index.js +15 -0
  291. package/dist/esm/components/Marquee/index.js.map +1 -0
  292. package/dist/esm/components/Masonry/Masonry.js +840 -0
  293. package/dist/esm/components/Masonry/Masonry.js.map +1 -0
  294. package/dist/esm/components/Masonry/MasonryWrapper.js +19 -0
  295. package/dist/esm/components/Masonry/MasonryWrapper.js.map +1 -0
  296. package/dist/esm/components/Pagination/Pagination.js +209 -0
  297. package/dist/esm/components/Pagination/Pagination.js.map +1 -0
  298. package/dist/esm/components/Pagination/index.js +14 -0
  299. package/dist/esm/components/Pagination/index.js.map +1 -0
  300. package/dist/esm/components/Popover/Popover.js +51 -0
  301. package/dist/esm/components/Popover/Popover.js.map +1 -0
  302. package/dist/esm/components/Popover/index.js +9 -0
  303. package/dist/esm/components/Popover/index.js.map +1 -0
  304. package/dist/esm/components/QrCode/QrCode.js +300 -0
  305. package/dist/esm/components/QrCode/QrCode.js.map +1 -0
  306. package/dist/esm/components/QrCode/index.js +16 -0
  307. package/dist/esm/components/QrCode/index.js.map +1 -0
  308. package/dist/esm/components/Radio/Radio.js +74 -0
  309. package/dist/esm/components/Radio/Radio.js.map +1 -0
  310. package/dist/esm/components/Rate/Rate.js +191 -0
  311. package/dist/esm/components/Rate/Rate.js.map +1 -0
  312. package/dist/esm/components/Resizable/Resizable.js +89 -0
  313. package/dist/esm/components/Resizable/Resizable.js.map +1 -0
  314. package/dist/esm/components/ScrollArea/ScrollArea.js +45 -0
  315. package/dist/esm/components/ScrollArea/ScrollArea.js.map +1 -0
  316. package/dist/esm/components/Select/Select.js +199 -0
  317. package/dist/esm/components/Select/Select.js.map +1 -0
  318. package/dist/esm/components/Separator/Separator.js +7 -0
  319. package/dist/esm/components/Separator/Separator.js.map +1 -0
  320. package/dist/esm/components/Sheet/Sheet.js +141 -0
  321. package/dist/esm/components/Sheet/Sheet.js.map +1 -0
  322. package/dist/esm/components/Sidebar/Sidebar.js +30 -0
  323. package/dist/esm/components/Sidebar/Sidebar.js.map +1 -0
  324. package/dist/esm/components/Skeleton/Skeleton.js +12 -0
  325. package/dist/esm/components/Skeleton/Skeleton.js.map +1 -0
  326. package/dist/esm/components/Slider/Slider.js +420 -0
  327. package/dist/esm/components/Slider/Slider.js.map +1 -0
  328. package/dist/esm/components/Stepper/Stepper.js +886 -0
  329. package/dist/esm/components/Stepper/Stepper.js.map +1 -0
  330. package/dist/esm/components/Stepper/StepperWrapper.js +80 -0
  331. package/dist/esm/components/Stepper/StepperWrapper.js.map +1 -0
  332. package/dist/esm/components/Stepper/index.js +21 -0
  333. package/dist/esm/components/Stepper/index.js.map +1 -0
  334. package/dist/esm/components/Switch/Switch.js +126 -0
  335. package/dist/esm/components/Switch/Switch.js.map +1 -0
  336. package/dist/esm/components/Table/TableFilter/data-table-date-filter.js +126 -0
  337. package/dist/esm/components/Table/TableFilter/data-table-date-filter.js.map +1 -0
  338. package/dist/esm/components/Table/TableFilter/data-table-filter-popover.js +138 -0
  339. package/dist/esm/components/Table/TableFilter/data-table-filter-popover.js.map +1 -0
  340. package/dist/esm/components/Table/TableFilter/data-table-slider-filter.js +164 -0
  341. package/dist/esm/components/Table/TableFilter/data-table-slider-filter.js.map +1 -0
  342. package/dist/esm/components/Table/data-table-column-header.js +82 -0
  343. package/dist/esm/components/Table/data-table-column-header.js.map +1 -0
  344. package/dist/esm/components/Table/data-table-pagination.js +73 -0
  345. package/dist/esm/components/Table/data-table-pagination.js.map +1 -0
  346. package/dist/esm/components/Table/data-table.js +94 -0
  347. package/dist/esm/components/Table/data-table.js.map +1 -0
  348. package/dist/esm/components/Tabs/Tabs.js +540 -0
  349. package/dist/esm/components/Tabs/Tabs.js.map +1 -0
  350. package/dist/esm/components/Tabs/classes.js +345 -0
  351. package/dist/esm/components/Tabs/classes.js.map +1 -0
  352. package/dist/esm/components/Textarea/Textarea.js +132 -0
  353. package/dist/esm/components/Textarea/Textarea.js.map +1 -0
  354. package/dist/esm/components/TimeGridView.js +101 -0
  355. package/dist/esm/components/TimeGridView.js.map +1 -0
  356. package/dist/esm/components/Toast/Toast.js +80 -0
  357. package/dist/esm/components/Toast/Toast.js.map +1 -0
  358. package/dist/esm/components/Toggle/Toggle.js +23 -0
  359. package/dist/esm/components/Toggle/Toggle.js.map +1 -0
  360. package/dist/esm/components/Tooltip/Tooltip.js +120 -0
  361. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -0
  362. package/dist/esm/components/Tour/Tour.js +948 -0
  363. package/dist/esm/components/Tour/Tour.js.map +1 -0
  364. package/dist/esm/components/Tour/TourWrapper.js +67 -0
  365. package/dist/esm/components/Tour/TourWrapper.js.map +1 -0
  366. package/dist/esm/components/Tour/index.js +38 -0
  367. package/dist/esm/components/Tour/index.js.map +1 -0
  368. package/dist/esm/components/Upload/Upload.js +948 -0
  369. package/dist/esm/components/Upload/Upload.js.map +1 -0
  370. package/dist/esm/components/WheelColumn.js +127 -0
  371. package/dist/esm/components/WheelColumn.js.map +1 -0
  372. package/dist/esm/constants/common.js +5 -0
  373. package/dist/esm/constants/common.js.map +1 -0
  374. package/dist/esm/favicon.ico +0 -0
  375. package/dist/esm/hooks/use-callback-ref.js +14 -0
  376. package/dist/esm/hooks/use-callback-ref.js.map +1 -0
  377. package/dist/esm/hooks/use-debounced-callback.js +21 -0
  378. package/dist/esm/hooks/use-debounced-callback.js.map +1 -0
  379. package/dist/esm/hooks/use-debounced-value.js +12 -0
  380. package/dist/esm/hooks/use-debounced-value.js.map +1 -0
  381. package/dist/esm/hooks/use-event-listener.js +21 -0
  382. package/dist/esm/hooks/use-event-listener.js.map +1 -0
  383. package/dist/esm/hooks/use-intersection-observer.js +56 -0
  384. package/dist/esm/hooks/use-intersection-observer.js.map +1 -0
  385. package/dist/esm/hooks/use-isomorphic-layout-effect.js +6 -0
  386. package/dist/esm/hooks/use-isomorphic-layout-effect.js.map +1 -0
  387. package/dist/esm/hooks/use-media-query.js +22 -0
  388. package/dist/esm/hooks/use-media-query.js.map +1 -0
  389. package/dist/esm/hooks/use-on-click-outside.js +18 -0
  390. package/dist/esm/hooks/use-on-click-outside.js.map +1 -0
  391. package/dist/esm/hooks/use-script.js +46 -0
  392. package/dist/esm/hooks/use-script.js.map +1 -0
  393. package/dist/esm/hooks/use-scroll-lock.js +27 -0
  394. package/dist/esm/hooks/use-scroll-lock.js.map +1 -0
  395. package/dist/esm/image.png +0 -0
  396. package/dist/esm/index.js +223 -0
  397. package/dist/esm/index.js.map +1 -0
  398. package/dist/esm/lib/TextAnimation/BlurText.js +84 -0
  399. package/dist/esm/lib/TextAnimation/BlurText.js.map +1 -0
  400. package/dist/esm/lib/TextAnimation/CircularText.js +96 -0
  401. package/dist/esm/lib/TextAnimation/CircularText.js.map +1 -0
  402. package/dist/esm/lib/TextAnimation/FlipWords.js +103 -0
  403. package/dist/esm/lib/TextAnimation/FlipWords.js.map +1 -0
  404. package/dist/esm/lib/TextAnimation/GradientText.js +54 -0
  405. package/dist/esm/lib/TextAnimation/GradientText.js.map +1 -0
  406. package/dist/esm/lib/TextAnimation/RollingText.js +70 -0
  407. package/dist/esm/lib/TextAnimation/RollingText.js.map +1 -0
  408. package/dist/esm/lib/TextAnimation/RotatingText.js +38 -0
  409. package/dist/esm/lib/TextAnimation/RotatingText.js.map +1 -0
  410. package/dist/esm/lib/TextAnimation/ShimmeringText.js +64 -0
  411. package/dist/esm/lib/TextAnimation/ShimmeringText.js.map +1 -0
  412. package/dist/esm/lib/TextAnimation/SplittingText.js +86 -0
  413. package/dist/esm/lib/TextAnimation/SplittingText.js.map +1 -0
  414. package/dist/esm/lib/TextAnimation/TextGenerateEffect.js +59 -0
  415. package/dist/esm/lib/TextAnimation/TextGenerateEffect.js.map +1 -0
  416. package/dist/esm/lib/TextAnimation/TextHoverEffect.js +128 -0
  417. package/dist/esm/lib/TextAnimation/TextHoverEffect.js.map +1 -0
  418. package/dist/esm/lib/TextAnimation/TextPressureEffect.js +135 -0
  419. package/dist/esm/lib/TextAnimation/TextPressureEffect.js.map +1 -0
  420. package/dist/esm/lib/TextAnimation/TypingText.js +118 -0
  421. package/dist/esm/lib/TextAnimation/TypingText.js.map +1 -0
  422. package/dist/esm/lib/TextAnimation/WritingText.js +45 -0
  423. package/dist/esm/lib/TextAnimation/WritingText.js.map +1 -0
  424. package/dist/esm/node_modules/.pnpm/react-viewer@3.2.2/node_modules/react-viewer/dist/index.js +865 -0
  425. package/dist/esm/node_modules/.pnpm/react-viewer@3.2.2/node_modules/react-viewer/dist/index.js.map +1 -0
  426. package/dist/esm/node_modules/.pnpm/viewerjs@1.11.7/node_modules/viewerjs/dist/viewer.css +1 -0
  427. package/dist/esm/styles/animation.css +1 -0
  428. package/dist/esm/styles/index.css +1 -0
  429. package/dist/esm/styles/theme.css +1 -0
  430. package/dist/esm/utils/animations.js +189 -0
  431. package/dist/esm/utils/animations.js.map +1 -0
  432. package/dist/esm/utils/css.js +25 -0
  433. package/dist/esm/utils/css.js.map +1 -0
  434. package/dist/esm/utils/data-table.js +20 -0
  435. package/dist/esm/utils/data-table.js.map +1 -0
  436. package/dist/esm/utils/datetime.js +17 -0
  437. package/dist/esm/utils/datetime.js.map +1 -0
  438. package/dist/esm/vite.svg +1 -0
  439. package/dist/esm/wave.png +0 -0
  440. package/dist/types/components/Accordion/Accordion.d.ts +49 -0
  441. package/dist/types/components/Accordion/Accordion.d.ts.map +1 -0
  442. package/dist/types/components/Accordion/index.d.ts +3 -0
  443. package/dist/types/components/Accordion/index.d.ts.map +1 -0
  444. package/dist/types/components/Avatar/Avatar.d.ts +18 -0
  445. package/dist/types/components/Avatar/Avatar.d.ts.map +1 -0
  446. package/dist/types/components/Avatar/index.d.ts +3 -0
  447. package/dist/types/components/Avatar/index.d.ts.map +1 -0
  448. package/dist/types/components/Badge/Badge.d.ts +10 -0
  449. package/dist/types/components/Badge/Badge.d.ts.map +1 -0
  450. package/dist/types/components/Badge/index.d.ts +2 -0
  451. package/dist/types/components/Badge/index.d.ts.map +1 -0
  452. package/dist/types/components/Breadcrumb/Breadcrumb.d.ts +23 -0
  453. package/dist/types/components/Breadcrumb/Breadcrumb.d.ts.map +1 -0
  454. package/dist/types/components/Breadcrumb/index.d.ts +2 -0
  455. package/dist/types/components/Breadcrumb/index.d.ts.map +1 -0
  456. package/dist/types/components/Button/Button.d.ts +10 -0
  457. package/dist/types/components/Button/Button.d.ts.map +1 -0
  458. package/dist/types/components/Button/ButtonGroup.d.ts +16 -0
  459. package/dist/types/components/Button/ButtonGroup.d.ts.map +1 -0
  460. package/dist/types/components/Button/index.d.ts +5 -0
  461. package/dist/types/components/Button/index.d.ts.map +1 -0
  462. package/dist/types/components/Calendar/Calendar.d.ts +15 -0
  463. package/dist/types/components/Calendar/Calendar.d.ts.map +1 -0
  464. package/dist/types/components/Calendar/index.d.ts +3 -0
  465. package/dist/types/components/Calendar/index.d.ts.map +1 -0
  466. package/dist/types/components/Carousel/Carousel.d.ts +79 -0
  467. package/dist/types/components/Carousel/Carousel.d.ts.map +1 -0
  468. package/dist/types/components/Carousel/index.d.ts +4 -0
  469. package/dist/types/components/Carousel/index.d.ts.map +1 -0
  470. package/dist/types/components/Checkbox/Checkbox.d.ts +15 -0
  471. package/dist/types/components/Checkbox/Checkbox.d.ts.map +1 -0
  472. package/dist/types/components/Checkbox/index.d.ts +2 -0
  473. package/dist/types/components/Checkbox/index.d.ts.map +1 -0
  474. package/dist/types/components/Collapsible/Collapsible.d.ts +17 -0
  475. package/dist/types/components/Collapsible/Collapsible.d.ts.map +1 -0
  476. package/dist/types/components/Collapsible/index.d.ts +2 -0
  477. package/dist/types/components/Collapsible/index.d.ts.map +1 -0
  478. package/dist/types/components/Command/Command.d.ts +39 -0
  479. package/dist/types/components/Command/Command.d.ts.map +1 -0
  480. package/dist/types/components/Command/index.d.ts +15 -0
  481. package/dist/types/components/Command/index.d.ts.map +1 -0
  482. package/dist/types/components/ContextMenu/ContextMenu.d.ts +64 -0
  483. package/dist/types/components/ContextMenu/ContextMenu.d.ts.map +1 -0
  484. package/dist/types/components/ContextMenu/index.d.ts +23 -0
  485. package/dist/types/components/ContextMenu/index.d.ts.map +1 -0
  486. package/dist/types/components/Cropper/Cropper.d.ts +86 -0
  487. package/dist/types/components/Cropper/Cropper.d.ts.map +1 -0
  488. package/dist/types/components/Cropper/CropperTool.d.ts +149 -0
  489. package/dist/types/components/Cropper/CropperTool.d.ts.map +1 -0
  490. package/dist/types/components/Cropper/index.d.ts +4 -0
  491. package/dist/types/components/Cropper/index.d.ts.map +1 -0
  492. package/dist/types/components/Cropper/utils.d.ts +130 -0
  493. package/dist/types/components/Cropper/utils.d.ts.map +1 -0
  494. package/dist/types/components/DatePicker/DatePicker.d.ts +56 -0
  495. package/dist/types/components/DatePicker/DatePicker.d.ts.map +1 -0
  496. package/dist/types/components/DatePicker/RangePicker.d.ts +42 -0
  497. package/dist/types/components/DatePicker/RangePicker.d.ts.map +1 -0
  498. package/dist/types/components/DatePicker/TimePicker.d.ts +43 -0
  499. package/dist/types/components/DatePicker/TimePicker.d.ts.map +1 -0
  500. package/dist/types/components/DatePicker/index.d.ts +7 -0
  501. package/dist/types/components/DatePicker/index.d.ts.map +1 -0
  502. package/dist/types/components/Dialog/Dialog.d.ts +45 -0
  503. package/dist/types/components/Dialog/Dialog.d.ts.map +1 -0
  504. package/dist/types/components/Dialog/index.d.ts +2 -0
  505. package/dist/types/components/Dialog/index.d.ts.map +1 -0
  506. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +65 -0
  507. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts.map +1 -0
  508. package/dist/types/components/DropdownMenu/index.d.ts +22 -0
  509. package/dist/types/components/DropdownMenu/index.d.ts.map +1 -0
  510. package/dist/types/components/FloatLabel.d.ts +8 -0
  511. package/dist/types/components/FloatLabel.d.ts.map +1 -0
  512. package/dist/types/components/Glass/Glass.d.ts +10 -0
  513. package/dist/types/components/Glass/Glass.d.ts.map +1 -0
  514. package/dist/types/components/Glass/index.d.ts +2 -0
  515. package/dist/types/components/Glass/index.d.ts.map +1 -0
  516. package/dist/types/components/ImageViewer/ImageViewer.d.ts +58 -0
  517. package/dist/types/components/ImageViewer/ImageViewer.d.ts.map +1 -0
  518. package/dist/types/components/ImageViewer/index.d.ts +4 -0
  519. package/dist/types/components/ImageViewer/index.d.ts.map +1 -0
  520. package/dist/types/components/Input/Input.d.ts +27 -0
  521. package/dist/types/components/Input/Input.d.ts.map +1 -0
  522. package/dist/types/components/Input/index.d.ts +2 -0
  523. package/dist/types/components/Input/index.d.ts.map +1 -0
  524. package/dist/types/components/InputOTP/InputOTP.d.ts +20 -0
  525. package/dist/types/components/InputOTP/InputOTP.d.ts.map +1 -0
  526. package/dist/types/components/InputOTP/index.d.ts +2 -0
  527. package/dist/types/components/InputOTP/index.d.ts.map +1 -0
  528. package/dist/types/components/Interactive/3DCard.d.ts +28 -0
  529. package/dist/types/components/Interactive/3DCard.d.ts.map +1 -0
  530. package/dist/types/components/Interactive/3DMarquee.d.ts +20 -0
  531. package/dist/types/components/Interactive/3DMarquee.d.ts.map +1 -0
  532. package/dist/types/components/Interactive/CursorFollow.d.ts +75 -0
  533. package/dist/types/components/Interactive/CursorFollow.d.ts.map +1 -0
  534. package/dist/types/components/Interactive/index.cursor.d.ts +7 -0
  535. package/dist/types/components/Interactive/index.cursor.d.ts.map +1 -0
  536. package/dist/types/components/Interactive/index.d.ts +2 -0
  537. package/dist/types/components/Interactive/index.d.ts.map +1 -0
  538. package/dist/types/components/Label/Label.d.ts +3 -0
  539. package/dist/types/components/Label/Label.d.ts.map +1 -0
  540. package/dist/types/components/Label/index.d.ts +2 -0
  541. package/dist/types/components/Label/index.d.ts.map +1 -0
  542. package/dist/types/components/Marquee/Marquee.d.ts +31 -0
  543. package/dist/types/components/Marquee/Marquee.d.ts.map +1 -0
  544. package/dist/types/components/Marquee/MarqueeWrapper.d.ts +10 -0
  545. package/dist/types/components/Marquee/MarqueeWrapper.d.ts.map +1 -0
  546. package/dist/types/components/Marquee/index.d.ts +13 -0
  547. package/dist/types/components/Marquee/index.d.ts.map +1 -0
  548. package/dist/types/components/Masonry/Masonry.d.ts +41 -0
  549. package/dist/types/components/Masonry/Masonry.d.ts.map +1 -0
  550. package/dist/types/components/Masonry/MasonryWrapper.d.ts +29 -0
  551. package/dist/types/components/Masonry/MasonryWrapper.d.ts.map +1 -0
  552. package/dist/types/components/Masonry/index.d.ts +5 -0
  553. package/dist/types/components/Masonry/index.d.ts.map +1 -0
  554. package/dist/types/components/Pagination/Pagination.d.ts +24 -0
  555. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -0
  556. package/dist/types/components/Pagination/index.d.ts +11 -0
  557. package/dist/types/components/Pagination/index.d.ts.map +1 -0
  558. package/dist/types/components/Popover/Popover.d.ts +22 -0
  559. package/dist/types/components/Popover/Popover.d.ts.map +1 -0
  560. package/dist/types/components/Popover/index.d.ts +5 -0
  561. package/dist/types/components/Popover/index.d.ts.map +1 -0
  562. package/dist/types/components/QrCode/QrCode.d.ts +51 -0
  563. package/dist/types/components/QrCode/QrCode.d.ts.map +1 -0
  564. package/dist/types/components/QrCode/index.d.ts +13 -0
  565. package/dist/types/components/QrCode/index.d.ts.map +1 -0
  566. package/dist/types/components/Radio/Radio.d.ts +35 -0
  567. package/dist/types/components/Radio/Radio.d.ts.map +1 -0
  568. package/dist/types/components/Radio/index.d.ts +2 -0
  569. package/dist/types/components/Radio/index.d.ts.map +1 -0
  570. package/dist/types/components/Rate/Rate.d.ts +26 -0
  571. package/dist/types/components/Rate/Rate.d.ts.map +1 -0
  572. package/dist/types/components/Rate/index.d.ts +3 -0
  573. package/dist/types/components/Rate/index.d.ts.map +1 -0
  574. package/dist/types/components/Resizable/Resizable.d.ts +71 -0
  575. package/dist/types/components/Resizable/Resizable.d.ts.map +1 -0
  576. package/dist/types/components/Resizable/index.d.ts +4 -0
  577. package/dist/types/components/Resizable/index.d.ts.map +1 -0
  578. package/dist/types/components/ScrollArea/ScrollArea.d.ts +19 -0
  579. package/dist/types/components/ScrollArea/ScrollArea.d.ts.map +1 -0
  580. package/dist/types/components/ScrollArea/index.d.ts +2 -0
  581. package/dist/types/components/ScrollArea/index.d.ts.map +1 -0
  582. package/dist/types/components/Select/Select.d.ts +33 -0
  583. package/dist/types/components/Select/Select.d.ts.map +1 -0
  584. package/dist/types/components/Select/index.d.ts +2 -0
  585. package/dist/types/components/Select/index.d.ts.map +1 -0
  586. package/dist/types/components/Separator/Separator.d.ts +5 -0
  587. package/dist/types/components/Separator/Separator.d.ts.map +1 -0
  588. package/dist/types/components/Separator/index.d.ts +2 -0
  589. package/dist/types/components/Separator/index.d.ts.map +1 -0
  590. package/dist/types/components/Sheet/Sheet.d.ts +36 -0
  591. package/dist/types/components/Sheet/Sheet.d.ts.map +1 -0
  592. package/dist/types/components/Sheet/index.d.ts +2 -0
  593. package/dist/types/components/Sheet/index.d.ts.map +1 -0
  594. package/dist/types/components/Sidebar/Sidebar.d.ts +50 -0
  595. package/dist/types/components/Sidebar/Sidebar.d.ts.map +1 -0
  596. package/dist/types/components/Sidebar/index.d.ts +4 -0
  597. package/dist/types/components/Sidebar/index.d.ts.map +1 -0
  598. package/dist/types/components/Skeleton/Skeleton.d.ts +6 -0
  599. package/dist/types/components/Skeleton/Skeleton.d.ts.map +1 -0
  600. package/dist/types/components/Skeleton/index.d.ts +2 -0
  601. package/dist/types/components/Skeleton/index.d.ts.map +1 -0
  602. package/dist/types/components/Slider/Slider.d.ts +25 -0
  603. package/dist/types/components/Slider/Slider.d.ts.map +1 -0
  604. package/dist/types/components/Slider/index.d.ts +2 -0
  605. package/dist/types/components/Slider/index.d.ts.map +1 -0
  606. package/dist/types/components/Stepper/Stepper.d.ts +86 -0
  607. package/dist/types/components/Stepper/Stepper.d.ts.map +1 -0
  608. package/dist/types/components/Stepper/StepperWrapper.d.ts +25 -0
  609. package/dist/types/components/Stepper/StepperWrapper.d.ts.map +1 -0
  610. package/dist/types/components/Stepper/index.d.ts +18 -0
  611. package/dist/types/components/Stepper/index.d.ts.map +1 -0
  612. package/dist/types/components/Switch/Switch.d.ts +14 -0
  613. package/dist/types/components/Switch/Switch.d.ts.map +1 -0
  614. package/dist/types/components/Switch/index.d.ts +2 -0
  615. package/dist/types/components/Switch/index.d.ts.map +1 -0
  616. package/dist/types/components/Table/TableFilter/data-table-date-filter.d.ts +9 -0
  617. package/dist/types/components/Table/TableFilter/data-table-date-filter.d.ts.map +1 -0
  618. package/dist/types/components/Table/TableFilter/data-table-filter-popover.d.ts +11 -0
  619. package/dist/types/components/Table/TableFilter/data-table-filter-popover.d.ts.map +1 -0
  620. package/dist/types/components/Table/TableFilter/data-table-slider-filter.d.ts +8 -0
  621. package/dist/types/components/Table/TableFilter/data-table-slider-filter.d.ts.map +1 -0
  622. package/dist/types/components/Table/TableWrapper.d.ts +2 -0
  623. package/dist/types/components/Table/TableWrapper.d.ts.map +1 -0
  624. package/dist/types/components/Table/data-table-column-header.d.ts +9 -0
  625. package/dist/types/components/Table/data-table-column-header.d.ts.map +1 -0
  626. package/dist/types/components/Table/data-table-pagination.d.ts +12 -0
  627. package/dist/types/components/Table/data-table-pagination.d.ts.map +1 -0
  628. package/dist/types/components/Table/data-table-toolbar.d.ts +10 -0
  629. package/dist/types/components/Table/data-table-toolbar.d.ts.map +1 -0
  630. package/dist/types/components/Table/data-table-view-options.d.ts +9 -0
  631. package/dist/types/components/Table/data-table-view-options.d.ts.map +1 -0
  632. package/dist/types/components/Table/data-table.d.ts +18 -0
  633. package/dist/types/components/Table/data-table.d.ts.map +1 -0
  634. package/dist/types/components/Table/index.d.ts +2 -0
  635. package/dist/types/components/Table/index.d.ts.map +1 -0
  636. package/dist/types/components/Table/select-column.d.ts +5 -0
  637. package/dist/types/components/Table/select-column.d.ts.map +1 -0
  638. package/dist/types/components/Tabs/Tabs.d.ts +22 -0
  639. package/dist/types/components/Tabs/Tabs.d.ts.map +1 -0
  640. package/dist/types/components/Tabs/classes.d.ts +29 -0
  641. package/dist/types/components/Tabs/classes.d.ts.map +1 -0
  642. package/dist/types/components/Tabs/index.d.ts +4 -0
  643. package/dist/types/components/Tabs/index.d.ts.map +1 -0
  644. package/dist/types/components/Tabs/types.d.ts +15 -0
  645. package/dist/types/components/Tabs/types.d.ts.map +1 -0
  646. package/dist/types/components/Textarea/Textarea.d.ts +17 -0
  647. package/dist/types/components/Textarea/Textarea.d.ts.map +1 -0
  648. package/dist/types/components/Textarea/index.d.ts +2 -0
  649. package/dist/types/components/Textarea/index.d.ts.map +1 -0
  650. package/dist/types/components/Theme/ThemeShowcase.d.ts +3 -0
  651. package/dist/types/components/Theme/ThemeShowcase.d.ts.map +1 -0
  652. package/dist/types/components/TimeGridView.d.ts +15 -0
  653. package/dist/types/components/TimeGridView.d.ts.map +1 -0
  654. package/dist/types/components/Toast/Toast.d.ts +12 -0
  655. package/dist/types/components/Toast/Toast.d.ts.map +1 -0
  656. package/dist/types/components/Toast/index.d.ts +3 -0
  657. package/dist/types/components/Toast/index.d.ts.map +1 -0
  658. package/dist/types/components/Toggle/Toggle.d.ts +10 -0
  659. package/dist/types/components/Toggle/Toggle.d.ts.map +1 -0
  660. package/dist/types/components/Toggle/index.d.ts +2 -0
  661. package/dist/types/components/Toggle/index.d.ts.map +1 -0
  662. package/dist/types/components/Tooltip/Tooltip.d.ts +19 -0
  663. package/dist/types/components/Tooltip/Tooltip.d.ts.map +1 -0
  664. package/dist/types/components/Tooltip/index.d.ts +3 -0
  665. package/dist/types/components/Tooltip/index.d.ts.map +1 -0
  666. package/dist/types/components/Tour/Tour.d.ts +105 -0
  667. package/dist/types/components/Tour/Tour.d.ts.map +1 -0
  668. package/dist/types/components/Tour/TourWrapper.d.ts +46 -0
  669. package/dist/types/components/Tour/TourWrapper.d.ts.map +1 -0
  670. package/dist/types/components/Tour/index.d.ts +36 -0
  671. package/dist/types/components/Tour/index.d.ts.map +1 -0
  672. package/dist/types/components/TreeSelect/TreeSelect.d.ts +2 -0
  673. package/dist/types/components/TreeSelect/TreeSelect.d.ts.map +1 -0
  674. package/dist/types/components/TreeSelect/index.d.ts +2 -0
  675. package/dist/types/components/TreeSelect/index.d.ts.map +1 -0
  676. package/dist/types/components/Upload/Upload.d.ts +69 -0
  677. package/dist/types/components/Upload/Upload.d.ts.map +1 -0
  678. package/dist/types/components/Upload/index.d.ts +2 -0
  679. package/dist/types/components/Upload/index.d.ts.map +1 -0
  680. package/dist/types/components/WheelColumn.d.ts +15 -0
  681. package/dist/types/components/WheelColumn.d.ts.map +1 -0
  682. package/dist/types/config/data-table.d.ts +125 -0
  683. package/dist/types/config/data-table.d.ts.map +1 -0
  684. package/dist/types/constants/common.d.ts +4 -0
  685. package/dist/types/constants/common.d.ts.map +1 -0
  686. package/dist/types/constants/theme.d.ts +13 -0
  687. package/dist/types/constants/theme.d.ts.map +1 -0
  688. package/dist/types/hooks/index.d.ts +10 -0
  689. package/dist/types/hooks/index.d.ts.map +1 -0
  690. package/dist/types/hooks/use-callback-ref.d.ts +10 -0
  691. package/dist/types/hooks/use-callback-ref.d.ts.map +1 -0
  692. package/dist/types/hooks/use-data-table.d.ts +26 -0
  693. package/dist/types/hooks/use-data-table.d.ts.map +1 -0
  694. package/dist/types/hooks/use-debounced-callback.d.ts +2 -0
  695. package/dist/types/hooks/use-debounced-callback.d.ts.map +1 -0
  696. package/dist/types/hooks/use-debounced-value.d.ts +9 -0
  697. package/dist/types/hooks/use-debounced-value.d.ts.map +1 -0
  698. package/dist/types/hooks/use-event-listener.d.ts +7 -0
  699. package/dist/types/hooks/use-event-listener.d.ts.map +1 -0
  700. package/dist/types/hooks/use-intersection-observer.d.ts +20 -0
  701. package/dist/types/hooks/use-intersection-observer.d.ts.map +1 -0
  702. package/dist/types/hooks/use-isomorphic-layout-effect.d.ts +3 -0
  703. package/dist/types/hooks/use-isomorphic-layout-effect.d.ts.map +1 -0
  704. package/dist/types/hooks/use-media-query.d.ts +7 -0
  705. package/dist/types/hooks/use-media-query.d.ts.map +1 -0
  706. package/dist/types/hooks/use-mouse-position.d.ts +14 -0
  707. package/dist/types/hooks/use-mouse-position.d.ts.map +1 -0
  708. package/dist/types/hooks/use-on-click-outside.d.ts +5 -0
  709. package/dist/types/hooks/use-on-click-outside.d.ts.map +1 -0
  710. package/dist/types/hooks/use-script.d.ts +9 -0
  711. package/dist/types/hooks/use-script.d.ts.map +1 -0
  712. package/dist/types/hooks/use-scroll-lock.d.ts +13 -0
  713. package/dist/types/hooks/use-scroll-lock.d.ts.map +1 -0
  714. package/dist/types/index.d.ts +72 -0
  715. package/dist/types/index.d.ts.map +1 -0
  716. package/dist/types/lib/TextAnimation/BlurText.d.ts +18 -0
  717. package/dist/types/lib/TextAnimation/BlurText.d.ts.map +1 -0
  718. package/dist/types/lib/TextAnimation/CircularText.d.ts +10 -0
  719. package/dist/types/lib/TextAnimation/CircularText.d.ts.map +1 -0
  720. package/dist/types/lib/TextAnimation/FlipWords.d.ts +10 -0
  721. package/dist/types/lib/TextAnimation/FlipWords.d.ts.map +1 -0
  722. package/dist/types/lib/TextAnimation/GradientText.d.ts +11 -0
  723. package/dist/types/lib/TextAnimation/GradientText.d.ts.map +1 -0
  724. package/dist/types/lib/TextAnimation/RollingText.d.ts +12 -0
  725. package/dist/types/lib/TextAnimation/RollingText.d.ts.map +1 -0
  726. package/dist/types/lib/TextAnimation/RotatingText.d.ts +11 -0
  727. package/dist/types/lib/TextAnimation/RotatingText.d.ts.map +1 -0
  728. package/dist/types/lib/TextAnimation/ShimmeringText.d.ts +12 -0
  729. package/dist/types/lib/TextAnimation/ShimmeringText.d.ts.map +1 -0
  730. package/dist/types/lib/TextAnimation/SplittingText.d.ts +26 -0
  731. package/dist/types/lib/TextAnimation/SplittingText.d.ts.map +1 -0
  732. package/dist/types/lib/TextAnimation/TextGenerateEffect.d.ts +10 -0
  733. package/dist/types/lib/TextAnimation/TextGenerateEffect.d.ts.map +1 -0
  734. package/dist/types/lib/TextAnimation/TextHoverEffect.d.ts +6 -0
  735. package/dist/types/lib/TextAnimation/TextHoverEffect.d.ts.map +1 -0
  736. package/dist/types/lib/TextAnimation/TextPressureEffect.d.ts +20 -0
  737. package/dist/types/lib/TextAnimation/TextPressureEffect.d.ts.map +1 -0
  738. package/dist/types/lib/TextAnimation/TypingText.d.ts +27 -0
  739. package/dist/types/lib/TextAnimation/TypingText.d.ts.map +1 -0
  740. package/dist/types/lib/TextAnimation/WritingText.d.ts +13 -0
  741. package/dist/types/lib/TextAnimation/WritingText.d.ts.map +1 -0
  742. package/dist/types/lib/TextAnimation/index.d.ts +16 -0
  743. package/dist/types/lib/TextAnimation/index.d.ts.map +1 -0
  744. package/dist/types/types/data-table.d.ts +44 -0
  745. package/dist/types/types/data-table.d.ts.map +1 -0
  746. package/dist/types/types/theme.d.ts +11 -0
  747. package/dist/types/types/theme.d.ts.map +1 -0
  748. package/dist/types/types/variables.d.ts +6 -0
  749. package/dist/types/types/variables.d.ts.map +1 -0
  750. package/dist/types/utils/animations.d.ts +47 -0
  751. package/dist/types/utils/animations.d.ts.map +1 -0
  752. package/dist/types/utils/css.d.ts +4 -0
  753. package/dist/types/utils/css.d.ts.map +1 -0
  754. package/dist/types/utils/data-table.d.ts +13 -0
  755. package/dist/types/utils/data-table.d.ts.map +1 -0
  756. package/dist/types/utils/datetime.d.ts +2 -0
  757. package/dist/types/utils/datetime.d.ts.map +1 -0
  758. package/dist/types/utils/parsers.d.ts +38 -0
  759. package/dist/types/utils/parsers.d.ts.map +1 -0
  760. package/package.json +968 -0
@@ -0,0 +1,300 @@
1
+ import { jsx as v } from "react/jsx-runtime";
2
+ import { Slot as p, cn as w, useComposedRefs as I } from "@dsui/ui/index";
3
+ import * as l from "react";
4
+ const O = "QRCode", G = "QRCodeCanvas", K = "QRCodeSvg", _ = "QRCodeImage", $ = "QRCodeSkeleton";
5
+ function E(n) {
6
+ const e = l.useRef(null);
7
+ return e.current === null && (e.current = n()), e;
8
+ }
9
+ const L = l.createContext(null);
10
+ function R(n) {
11
+ const e = l.useContext(L);
12
+ if (!e)
13
+ throw new Error(`\`useQRCode\` must be used within \`${O}\``);
14
+ const t = l.useCallback(
15
+ () => n(e.getState()),
16
+ [e, n]
17
+ );
18
+ return l.useSyncExternalStore(e.subscribe, t, t);
19
+ }
20
+ const U = l.createContext(null);
21
+ function N(n) {
22
+ const e = l.useContext(U);
23
+ if (!e)
24
+ throw new Error(`\`${n}\` must be used within \`${O}\``);
25
+ return e;
26
+ }
27
+ function T(n) {
28
+ const {
29
+ value: e,
30
+ size: t = 200,
31
+ level: s = "M",
32
+ margin: a = 1,
33
+ quality: r = 0.92,
34
+ backgroundColor: o = "#ffffff",
35
+ foregroundColor: i = "#000000",
36
+ onError: d,
37
+ onGenerated: S,
38
+ className: Q,
39
+ style: u,
40
+ asChild: m,
41
+ ...b
42
+ } = n, k = l.useRef(null), P = E(() => /* @__PURE__ */ new Set()), x = E(() => ({
43
+ dataUrl: null,
44
+ svgString: null,
45
+ isGenerating: !1,
46
+ error: null,
47
+ generationKey: ""
48
+ })), C = l.useMemo(() => ({
49
+ subscribe: (c) => (P.current.add(c), () => P.current.delete(c)),
50
+ getState: () => x.current,
51
+ setState: (c, h) => {
52
+ Object.is(x.current[c], h) || (x.current[c] = h, C.notify());
53
+ },
54
+ setStates: (c) => {
55
+ let h = !1;
56
+ for (const f of Object.keys(c)) {
57
+ const g = c[f];
58
+ g !== void 0 && !Object.is(x.current[f], g) && (Object.assign(x.current, { [f]: g }), h = !0);
59
+ }
60
+ h && C.notify();
61
+ },
62
+ notify: () => {
63
+ for (const c of P.current)
64
+ c();
65
+ }
66
+ }), [P, x]), y = l.useMemo(
67
+ () => ({
68
+ errorCorrectionLevel: s,
69
+ type: "image/png",
70
+ quality: r,
71
+ margin: a,
72
+ color: {
73
+ dark: i,
74
+ light: o
75
+ },
76
+ width: t
77
+ }),
78
+ [s, a, i, o, t, r]
79
+ ), q = l.useMemo(() => e ? JSON.stringify({
80
+ value: e,
81
+ size: t,
82
+ level: s,
83
+ margin: a,
84
+ quality: r,
85
+ foregroundColor: i,
86
+ backgroundColor: o
87
+ }) : "", [e, s, a, i, o, t, r]), z = l.useCallback(
88
+ async (c) => {
89
+ if (!e || !c) return;
90
+ const h = C.getState();
91
+ if (!(h.isGenerating || h.generationKey === c)) {
92
+ C.setStates({
93
+ isGenerating: !0,
94
+ error: null
95
+ });
96
+ try {
97
+ const f = (await import("qrcode")).default;
98
+ let g = null;
99
+ try {
100
+ g = await f.toDataURL(e, y);
101
+ } catch {
102
+ g = null;
103
+ }
104
+ k.current && await f.toCanvas(k.current, e, y);
105
+ const j = await f.toString(e, {
106
+ errorCorrectionLevel: y.errorCorrectionLevel,
107
+ margin: y.margin,
108
+ color: y.color,
109
+ width: y.width,
110
+ type: "svg"
111
+ });
112
+ C.setStates({
113
+ dataUrl: g,
114
+ svgString: j,
115
+ isGenerating: !1,
116
+ generationKey: c
117
+ }), S?.();
118
+ } catch (f) {
119
+ const g = f instanceof Error ? f : new Error("Failed to generate QR code");
120
+ C.setStates({
121
+ error: g,
122
+ isGenerating: !1
123
+ }), d?.(g);
124
+ }
125
+ }
126
+ },
127
+ [e, y, C, d, S]
128
+ ), M = l.useMemo(
129
+ () => ({
130
+ value: e,
131
+ size: t,
132
+ level: s,
133
+ margin: a,
134
+ backgroundColor: o,
135
+ foregroundColor: i,
136
+ canvasRef: k
137
+ }),
138
+ [e, t, o, i, s, a]
139
+ );
140
+ l.useLayoutEffect(() => {
141
+ if (q) {
142
+ const c = requestAnimationFrame(() => {
143
+ z(q);
144
+ });
145
+ return () => cancelAnimationFrame(c);
146
+ }
147
+ }, [q, z]);
148
+ const A = m ? p : "div";
149
+ return /* @__PURE__ */ v(L.Provider, { value: C, children: /* @__PURE__ */ v(U.Provider, { value: M, children: /* @__PURE__ */ v(
150
+ A,
151
+ {
152
+ "data-slot": "qr-code",
153
+ ...b,
154
+ className: w(Q, "relative flex flex-col items-center gap-2"),
155
+ style: {
156
+ "--qr-code-size": `${t}px`,
157
+ ...u
158
+ },
159
+ children: b?.children ? b.children : /* @__PURE__ */ v(D, {})
160
+ }
161
+ ) }) });
162
+ }
163
+ function D(n) {
164
+ const { asChild: e, className: t, ref: s, ...a } = n, r = N(G), o = R((S) => S.generationKey), i = I(s, r.canvasRef);
165
+ return /* @__PURE__ */ v(
166
+ e ? p : "canvas",
167
+ {
168
+ "data-slot": "qr-code-canvas",
169
+ ...a,
170
+ ref: i,
171
+ width: r.size,
172
+ height: r.size,
173
+ className: w(
174
+ "relative max-h-(--qr-code-size) max-w-(--qr-code-size)",
175
+ !o && "invisible",
176
+ t
177
+ )
178
+ }
179
+ );
180
+ }
181
+ function V(n) {
182
+ const { asChild: e, className: t, style: s, ...a } = n, r = N(K), o = R((d) => d.svgString);
183
+ return o ? /* @__PURE__ */ v(
184
+ e ? p : "div",
185
+ {
186
+ "data-slot": "qr-code-svg",
187
+ ...a,
188
+ className: w(
189
+ "relative max-h-(--qr-code-size) max-w-(--qr-code-size)",
190
+ t
191
+ ),
192
+ style: { width: r.size, height: r.size, ...s },
193
+ dangerouslySetInnerHTML: { __html: o }
194
+ }
195
+ ) : null;
196
+ }
197
+ function H(n) {
198
+ const { alt: e = "QR Code", asChild: t, className: s, ...a } = n, r = N(_), o = R((d) => d.dataUrl);
199
+ return o ? /* @__PURE__ */ v(
200
+ t ? p : "img",
201
+ {
202
+ "data-slot": "qr-code-image",
203
+ ...a,
204
+ src: o,
205
+ alt: e,
206
+ width: r.size,
207
+ height: r.size,
208
+ className: w(
209
+ "relative max-h-(--qr-code-size) max-w-(--qr-code-size)",
210
+ s
211
+ )
212
+ }
213
+ ) : null;
214
+ }
215
+ function J(n) {
216
+ const {
217
+ filename: e = "qrcode",
218
+ format: t = "png",
219
+ asChild: s,
220
+ className: a,
221
+ children: r,
222
+ ...o
223
+ } = n, i = R((u) => u.dataUrl), d = R((u) => u.svgString), S = l.useCallback(
224
+ (u) => {
225
+ if (o.onClick?.(u), u.defaultPrevented) return;
226
+ const m = document.createElement("a");
227
+ if (t === "png" && i)
228
+ m.href = i, m.download = `${e}.png`;
229
+ else if (t === "svg" && d) {
230
+ const b = new Blob([d], { type: "image/svg+xml" });
231
+ m.href = URL.createObjectURL(b), m.download = `${e}.svg`;
232
+ } else
233
+ return;
234
+ document.body.appendChild(m), m.click(), document.body.removeChild(m), t === "svg" && d && URL.revokeObjectURL(m.href);
235
+ },
236
+ [i, d, e, t, o.onClick]
237
+ );
238
+ return /* @__PURE__ */ v(
239
+ s ? p : "button",
240
+ {
241
+ type: "button",
242
+ "data-slot": "qr-code-download",
243
+ ...o,
244
+ className: w("max-w-(--qr-code-size)", a),
245
+ onClick: S,
246
+ children: r ?? `Download ${t.toUpperCase()}`
247
+ }
248
+ );
249
+ }
250
+ function W(n) {
251
+ const { asChild: e, className: t, ...s } = n;
252
+ return /* @__PURE__ */ v(
253
+ e ? p : "div",
254
+ {
255
+ "data-slot": "qr-code-overlay",
256
+ ...s,
257
+ className: w(
258
+ "-translate-x-1/2 -translate-y-1/2 absolute top-1/2 left-1/2 flex items-center justify-center rounded-sm bg-background",
259
+ t
260
+ )
261
+ }
262
+ );
263
+ }
264
+ function X(n) {
265
+ const { asChild: e, className: t, style: s, ...a } = n, r = N($), o = R((u) => u.dataUrl), i = R((u) => u.svgString), d = R((u) => u.generationKey);
266
+ return o || i || d ? null : /* @__PURE__ */ v(
267
+ e ? p : "div",
268
+ {
269
+ "data-slot": "qr-code-skeleton",
270
+ ...a,
271
+ className: w(
272
+ "absolute max-h-(--qr-code-size) max-w-(--qr-code-size) animate-pulse bg-accent",
273
+ t
274
+ ),
275
+ style: {
276
+ width: r.size,
277
+ height: r.size,
278
+ ...s
279
+ }
280
+ }
281
+ );
282
+ }
283
+ export {
284
+ D as Canvas,
285
+ J as Download,
286
+ H as Image,
287
+ W as Overlay,
288
+ T as QRCode,
289
+ D as QRCodeCanvas,
290
+ J as QRCodeDownload,
291
+ H as QRCodeImage,
292
+ W as QRCodeOverlay,
293
+ X as QRCodeSkeleton,
294
+ V as QRCodeSvg,
295
+ T as Root,
296
+ X as Skeleton,
297
+ V as Svg,
298
+ R as useQRCode
299
+ };
300
+ //# sourceMappingURL=QrCode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QrCode.js","sources":["../../../../src/components/QrCode/QrCode.tsx"],"sourcesContent":["\"use client\";\n\nimport { cn, Slot, useComposedRefs } from \"@dsui/ui/index\";\nimport * as React from \"react\";\n\nconst ROOT_NAME = \"QRCode\";\nconst CANVAS_NAME = \"QRCodeCanvas\";\nconst SVG_NAME = \"QRCodeSvg\";\nconst IMAGE_NAME = \"QRCodeImage\";\nconst SKELETON_NAME = \"QRCodeSkeleton\";\n\ntype QRCodeLevel = \"L\" | \"M\" | \"Q\" | \"H\";\n\ninterface QRCodeCanvasOpts {\n errorCorrectionLevel: QRCodeLevel;\n type?: \"image/png\" | \"image/jpeg\" | \"image/webp\";\n quality?: number;\n margin?: number;\n color?: {\n dark: string;\n light: string;\n };\n width?: number;\n rendererOpts?: {\n quality?: number;\n };\n}\n\nfunction useLazyRef<T>(fn: () => T) {\n const ref = React.useRef<T | null>(null);\n\n if (ref.current === null) {\n ref.current = fn();\n }\n\n return ref as React.RefObject<T>;\n}\n\ninterface StoreState {\n dataUrl: string | null;\n svgString: string | null;\n isGenerating: boolean;\n error: Error | null;\n generationKey: string;\n}\n\ninterface Store {\n subscribe: (callback: () => void) => () => void;\n getState: () => StoreState;\n setState: <K extends keyof StoreState>(key: K, value: StoreState[K]) => void;\n setStates: (updates: Partial<StoreState>) => void;\n notify: () => void;\n}\n\ninterface QRCodeContextValue {\n value: string;\n size: number;\n margin: number;\n level: QRCodeLevel;\n backgroundColor: string;\n foregroundColor: string;\n canvasRef: React.RefObject<HTMLCanvasElement | null>;\n}\n\nconst StoreContext = React.createContext<Store | null>(null);\n\nfunction useStore<T>(selector: (state: StoreState) => T): T {\n const store = React.useContext(StoreContext);\n if (!store) {\n throw new Error(`\\`useQRCode\\` must be used within \\`${ROOT_NAME}\\``);\n }\n\n const getSnapshot = React.useCallback(\n () => selector(store.getState()),\n [store, selector],\n );\n\n return React.useSyncExternalStore(store.subscribe, getSnapshot, getSnapshot);\n}\n\nconst QRCodeContext = React.createContext<QRCodeContextValue | null>(null);\n\nfunction useQRCodeContext(consumerName: string) {\n const context = React.useContext(QRCodeContext);\n if (!context) {\n throw new Error(`\\`${consumerName}\\` must be used within \\`${ROOT_NAME}\\``);\n }\n return context;\n}\n\ninterface QRCodeRootProps extends Omit<React.ComponentProps<\"div\">, \"onError\"> {\n value: string;\n size?: number;\n level?: QRCodeLevel;\n margin?: number;\n quality?: number;\n backgroundColor?: string;\n foregroundColor?: string;\n onError?: (error: Error) => void;\n onGenerated?: () => void;\n asChild?: boolean;\n}\n\nfunction QRCodeRoot(props: QRCodeRootProps) {\n const {\n value,\n size = 200,\n level = \"M\",\n margin = 1,\n quality = 0.92,\n backgroundColor = \"#ffffff\",\n foregroundColor = \"#000000\",\n onError,\n onGenerated,\n className,\n style,\n asChild,\n ...rootProps\n } = props;\n\n const canvasRef = React.useRef<HTMLCanvasElement>(null);\n\n const listenersRef = useLazyRef(() => new Set<() => void>());\n const stateRef = useLazyRef<StoreState>(() => ({\n dataUrl: null,\n svgString: null,\n isGenerating: false,\n error: null,\n generationKey: \"\",\n }));\n\n const store = React.useMemo<Store>(() => {\n return {\n subscribe: (cb) => {\n listenersRef.current.add(cb);\n return () => listenersRef.current.delete(cb);\n },\n getState: () => stateRef.current,\n setState: (key, value) => {\n if (Object.is(stateRef.current[key], value)) return;\n stateRef.current[key] = value;\n store.notify();\n },\n setStates: (updates) => {\n let hasChanged = false;\n\n for (const key of Object.keys(updates) as Array<keyof StoreState>) {\n const value = updates[key];\n if (value !== undefined && !Object.is(stateRef.current[key], value)) {\n Object.assign(stateRef.current, { [key]: value });\n hasChanged = true;\n }\n }\n\n if (hasChanged) {\n store.notify();\n }\n },\n notify: () => {\n for (const cb of listenersRef.current) {\n cb();\n }\n },\n };\n }, [listenersRef, stateRef]);\n\n const canvasOpts = React.useMemo<QRCodeCanvasOpts>(\n () => ({\n errorCorrectionLevel: level,\n type: \"image/png\",\n quality,\n margin,\n color: {\n dark: foregroundColor,\n light: backgroundColor,\n },\n width: size,\n }),\n [level, margin, foregroundColor, backgroundColor, size, quality],\n );\n\n const generationKey = React.useMemo(() => {\n if (!value) return \"\";\n\n return JSON.stringify({\n value,\n size,\n level,\n margin,\n quality,\n foregroundColor,\n backgroundColor,\n });\n }, [value, level, margin, foregroundColor, backgroundColor, size, quality]);\n\n const onQRCodeGenerate = React.useCallback(\n async (targetGenerationKey: string) => {\n if (!value || !targetGenerationKey) return;\n\n const currentState = store.getState();\n if (\n currentState.isGenerating ||\n currentState.generationKey === targetGenerationKey\n )\n return;\n\n store.setStates({\n isGenerating: true,\n error: null,\n });\n\n try {\n const QRCode = (await import(\"qrcode\")).default;\n\n let dataUrl: string | null = null;\n\n try {\n dataUrl = await QRCode.toDataURL(value, canvasOpts);\n } catch {\n dataUrl = null;\n }\n\n if (canvasRef.current) {\n await QRCode.toCanvas(canvasRef.current, value, canvasOpts);\n }\n\n const svgString = await QRCode.toString(value, {\n errorCorrectionLevel: canvasOpts.errorCorrectionLevel,\n margin: canvasOpts.margin,\n color: canvasOpts.color,\n width: canvasOpts.width,\n type: \"svg\",\n });\n\n store.setStates({\n dataUrl,\n svgString,\n isGenerating: false,\n generationKey: targetGenerationKey,\n });\n\n onGenerated?.();\n } catch (error) {\n const parsedError =\n error instanceof Error\n ? error\n : new Error(\"Failed to generate QR code\");\n store.setStates({\n error: parsedError,\n isGenerating: false,\n });\n onError?.(parsedError);\n }\n },\n [value, canvasOpts, store, onError, onGenerated],\n );\n\n const contextValue = React.useMemo<QRCodeContextValue>(\n () => ({\n value,\n size,\n level,\n margin,\n backgroundColor,\n foregroundColor,\n canvasRef,\n }),\n [value, size, backgroundColor, foregroundColor, level, margin],\n );\n\n React.useLayoutEffect(() => {\n if (generationKey) {\n const rafId = requestAnimationFrame(() => {\n onQRCodeGenerate(generationKey);\n });\n\n return () => cancelAnimationFrame(rafId);\n }\n }, [generationKey, onQRCodeGenerate]);\n\n const RootPrimitive = asChild ? Slot : \"div\";\n\n return (\n <StoreContext.Provider value={store}>\n <QRCodeContext.Provider value={contextValue}>\n <RootPrimitive\n data-slot=\"qr-code\"\n {...rootProps}\n className={cn(className, \"relative flex flex-col items-center gap-2\")}\n style={\n {\n \"--qr-code-size\": `${size}px`,\n ...style,\n } as React.CSSProperties\n }\n >\n {rootProps?.children ? rootProps.children : <QRCodeCanvas />}\n </RootPrimitive>\n </QRCodeContext.Provider>\n </StoreContext.Provider>\n );\n}\n\ninterface QRCodeCanvasProps extends React.ComponentProps<\"canvas\"> {\n asChild?: boolean;\n}\n\nfunction QRCodeCanvas(props: QRCodeCanvasProps) {\n const { asChild, className, ref, ...canvasProps } = props;\n\n const context = useQRCodeContext(CANVAS_NAME);\n const generationKey = useStore((state) => state.generationKey);\n\n const composedRef = useComposedRefs(ref, context.canvasRef);\n\n const CanvasPrimitive = asChild ? Slot : \"canvas\";\n\n return (\n <CanvasPrimitive\n data-slot=\"qr-code-canvas\"\n {...canvasProps}\n ref={composedRef}\n width={context.size}\n height={context.size}\n className={cn(\n \"relative max-h-(--qr-code-size) max-w-(--qr-code-size)\",\n !generationKey && \"invisible\",\n className,\n )}\n />\n );\n}\n\ninterface QRCodeSvgProps extends React.ComponentProps<\"div\"> {\n asChild?: boolean;\n}\n\nfunction QRCodeSvg(props: QRCodeSvgProps) {\n const { asChild, className, style, ...svgProps } = props;\n\n const context = useQRCodeContext(SVG_NAME);\n const svgString = useStore((state) => state.svgString);\n\n if (!svgString) return null;\n\n const SvgPrimitive = asChild ? Slot : \"div\";\n\n return (\n <SvgPrimitive\n data-slot=\"qr-code-svg\"\n {...svgProps}\n className={cn(\n \"relative max-h-(--qr-code-size) max-w-(--qr-code-size)\",\n className,\n )}\n style={{ width: context.size, height: context.size, ...style }}\n dangerouslySetInnerHTML={{ __html: svgString }}\n />\n );\n}\n\ninterface QRCodeImageProps extends React.ComponentProps<\"img\"> {\n asChild?: boolean;\n}\n\nfunction QRCodeImage(props: QRCodeImageProps) {\n const { alt = \"QR Code\", asChild, className, ...imageProps } = props;\n\n const context = useQRCodeContext(IMAGE_NAME);\n const dataUrl = useStore((state) => state.dataUrl);\n\n if (!dataUrl) return null;\n\n const ImagePrimitive = asChild ? Slot : \"img\";\n\n return (\n <ImagePrimitive\n data-slot=\"qr-code-image\"\n {...imageProps}\n src={dataUrl}\n alt={alt}\n width={context.size}\n height={context.size}\n className={cn(\n \"relative max-h-(--qr-code-size) max-w-(--qr-code-size)\",\n className,\n )}\n />\n );\n}\n\ninterface QRCodeDownloadProps extends React.ComponentProps<\"button\"> {\n filename?: string;\n format?: \"png\" | \"svg\";\n asChild?: boolean;\n}\n\nfunction QRCodeDownload(props: QRCodeDownloadProps) {\n const {\n filename = \"qrcode\",\n format = \"png\",\n asChild,\n className,\n children,\n ...buttonProps\n } = props;\n\n const dataUrl = useStore((state) => state.dataUrl);\n const svgString = useStore((state) => state.svgString);\n\n const onClick = React.useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n buttonProps.onClick?.(event);\n if (event.defaultPrevented) return;\n\n const link = document.createElement(\"a\");\n\n if (format === \"png\" && dataUrl) {\n link.href = dataUrl;\n link.download = `${filename}.png`;\n } else if (format === \"svg\" && svgString) {\n const blob = new Blob([svgString], { type: \"image/svg+xml\" });\n link.href = URL.createObjectURL(blob);\n link.download = `${filename}.svg`;\n } else {\n return;\n }\n\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n\n if (format === \"svg\" && svgString) {\n URL.revokeObjectURL(link.href);\n }\n },\n [dataUrl, svgString, filename, format, buttonProps.onClick],\n );\n\n const ButtonPrimitive = asChild ? Slot : \"button\";\n\n return (\n <ButtonPrimitive\n type=\"button\"\n data-slot=\"qr-code-download\"\n {...buttonProps}\n className={cn(\"max-w-(--qr-code-size)\", className)}\n onClick={onClick}\n >\n {children ?? `Download ${format.toUpperCase()}`}\n </ButtonPrimitive>\n );\n}\n\ninterface QRCodeOverlayProps extends React.ComponentProps<\"div\"> {\n asChild?: boolean;\n}\n\nfunction QRCodeOverlay(props: QRCodeOverlayProps) {\n const { asChild, className, ...overlayProps } = props;\n\n const OverlayPrimitive = asChild ? Slot : \"div\";\n\n return (\n <OverlayPrimitive\n data-slot=\"qr-code-overlay\"\n {...overlayProps}\n className={cn(\n \"-translate-x-1/2 -translate-y-1/2 absolute top-1/2 left-1/2 flex items-center justify-center rounded-sm bg-background\",\n className,\n )}\n />\n );\n}\n\ninterface QRCodeSkeletonProps extends React.ComponentProps<\"div\"> {\n asChild?: boolean;\n}\n\nfunction QRCodeSkeleton(props: QRCodeSkeletonProps) {\n const { asChild, className, style, ...skeletonProps } = props;\n\n const context = useQRCodeContext(SKELETON_NAME);\n const dataUrl = useStore((state) => state.dataUrl);\n const svgString = useStore((state) => state.svgString);\n const generationKey = useStore((state) => state.generationKey);\n\n const isLoaded = dataUrl || svgString || generationKey;\n\n if (isLoaded) return null;\n\n const SkeletonPrimitive = asChild ? Slot : \"div\";\n\n return (\n <SkeletonPrimitive\n data-slot=\"qr-code-skeleton\"\n {...skeletonProps}\n className={cn(\n \"absolute max-h-(--qr-code-size) max-w-(--qr-code-size) animate-pulse bg-accent\",\n className,\n )}\n style={{\n width: context.size,\n height: context.size,\n ...style,\n }}\n />\n );\n}\n\nexport {\n QRCodeRoot as Root,\n QRCodeCanvas as Canvas,\n QRCodeSvg as Svg,\n QRCodeImage as Image,\n QRCodeOverlay as Overlay,\n QRCodeSkeleton as Skeleton,\n QRCodeDownload as Download,\n //\n QRCodeRoot as QRCode,\n QRCodeCanvas,\n QRCodeSvg,\n QRCodeImage,\n QRCodeOverlay,\n QRCodeSkeleton,\n QRCodeDownload,\n //\n useStore as useQRCode,\n //\n type QRCodeRootProps as QRCodeProps,\n};\n"],"names":["ROOT_NAME","CANVAS_NAME","SVG_NAME","IMAGE_NAME","SKELETON_NAME","useLazyRef","fn","ref","React","StoreContext","useStore","selector","store","getSnapshot","QRCodeContext","useQRCodeContext","consumerName","context","QRCodeRoot","props","value","size","level","margin","quality","backgroundColor","foregroundColor","onError","onGenerated","className","style","asChild","rootProps","canvasRef","listenersRef","stateRef","cb","key","updates","hasChanged","canvasOpts","generationKey","onQRCodeGenerate","targetGenerationKey","currentState","QRCode","dataUrl","svgString","error","parsedError","contextValue","rafId","RootPrimitive","Slot","jsx","cn","QRCodeCanvas","canvasProps","state","composedRef","useComposedRefs","QRCodeSvg","svgProps","QRCodeImage","alt","imageProps","QRCodeDownload","filename","format","children","buttonProps","onClick","event","link","blob","QRCodeOverlay","overlayProps","QRCodeSkeleton","skeletonProps"],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { Root as o, Download as e, Skeleton as a, Overlay as s, Image as d, Svg as C, Canvas as n } from "./QrCode.js";
2
+ import { useQRCode as r } from "./QrCode.js";
3
+ const t = Object.assign(o, {
4
+ Canvas: n,
5
+ Svg: C,
6
+ Image: d,
7
+ Overlay: s,
8
+ Skeleton: a,
9
+ Download: e
10
+ });
11
+ export {
12
+ t as QRCode,
13
+ t as QrCode,
14
+ r as useQRCode
15
+ };
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/QrCode/index.ts"],"sourcesContent":["import {\n Root,\n Canvas,\n Svg,\n Image,\n Overlay,\n Skeleton,\n Download,\n useQRCode,\n type QRCodeProps,\n} from \"./QrCode\";\n\nconst QRCode = Object.assign(Root, {\n Canvas,\n Svg,\n Image,\n Overlay,\n Skeleton,\n Download,\n});\n\nexport { QRCode, QRCode as QrCode };\n\n// Export hook và type\nexport { useQRCode };\nexport type { QRCodeProps };\n"],"names":["QRCode","Root","Canvas","Svg","Image","Overlay","Skeleton","Download"],"mappings":";;AAYA,MAAMA,IAAS,OAAO,OAAOC,GAAM;AAAA,EAAA,QACjCC;AAAAA,EAAA,KACAC;AAAAA,EAAA,OACAC;AAAAA,EAAA,SACAC;AAAAA,EAAA,UACAC;AAAAA,EAAA,UACAC;AACF,CAAC;"}
@@ -0,0 +1,74 @@
1
+ import { jsxs as m, jsx as a } from "react/jsx-runtime";
2
+ import n from "react";
3
+ import { RadioGroup as f, RadioGroupItem as I } from "@dsui/ui/components/radio-group";
4
+ import { cn as c } from "@dsui/ui/index";
5
+ const p = n.forwardRef(
6
+ (d, i) => {
7
+ const { label: e, variant: l = "option", rootClassName: o, ...s } = d, r = n.useId();
8
+ return /* @__PURE__ */ m("div", { className: c("flex items-center space-x-2", o), children: [
9
+ /* @__PURE__ */ a(I, { ref: i, id: r, ...s }),
10
+ l === "option" && e && /* @__PURE__ */ a(
11
+ "label",
12
+ {
13
+ htmlFor: r,
14
+ className: "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
15
+ children: e
16
+ }
17
+ ),
18
+ l === "button-group" && e && /* @__PURE__ */ a("span", { className: "sr-only", children: e })
19
+ ] });
20
+ }
21
+ );
22
+ p.displayName = "RadioItem";
23
+ const u = n.forwardRef((d, i) => {
24
+ const {
25
+ options: e,
26
+ label: l,
27
+ helperText: o,
28
+ variant: s = "option",
29
+ size: r = "default",
30
+ color: x,
31
+ value: b,
32
+ onValueChange: N,
33
+ children: h,
34
+ className: R,
35
+ rootClassName: v,
36
+ disabled: g
37
+ } = d;
38
+ return /* @__PURE__ */ m("div", { className: c("flex flex-col gap-1.5", v), children: [
39
+ l && /* @__PURE__ */ a("label", { className: "text-sm font-medium", children: l }),
40
+ /* @__PURE__ */ m(
41
+ f,
42
+ {
43
+ ref: i,
44
+ value: b,
45
+ onValueChange: N,
46
+ variant: s,
47
+ className: c(R),
48
+ children: [
49
+ e && e.map((t) => /* @__PURE__ */ a(
50
+ p,
51
+ {
52
+ value: t.value,
53
+ label: t.label,
54
+ disabled: g || t.disabled,
55
+ variant: s,
56
+ size: r,
57
+ color: x
58
+ },
59
+ t.value
60
+ )),
61
+ h
62
+ ]
63
+ }
64
+ ),
65
+ o && /* @__PURE__ */ a("p", { className: "text-xs text-muted-foreground", children: o })
66
+ ] });
67
+ });
68
+ u.displayName = "Radio";
69
+ u.Group = f;
70
+ u.Item = p;
71
+ export {
72
+ u as default
73
+ };
74
+ //# sourceMappingURL=Radio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Radio.js","sources":["../../../../src/components/Radio/Radio.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n RadioGroupItem as SRadioGroupItem,\n RadioGroup as SRadioGroup,\n type RadioGroupProps,\n type RadioGroupItemProps,\n} from \"@dsui/ui/components/radio-group\";\nimport { cn } from \"@dsui/ui/index\";\n\ntype RadioItemProps = RadioGroupItemProps & {\n label?: React.ReactNode;\n variant?: \"option\" | \"button-group\";\n size?: \"default\" | \"sm\" | \"lg\";\n color?:\n | \"primary\"\n | \"secondary\"\n | \"accent\"\n | \"destructive\"\n | \"muted\"\n | \"success\"\n | \"error\"\n | \"warning\";\n rootClassName?: string;\n};\n\nconst RadioItem = React.forwardRef<HTMLButtonElement, RadioItemProps>(\n (props, ref) => {\n const { label, variant = \"option\", rootClassName, ...itemProps } = props;\n const id = React.useId();\n\n return (\n <div className={cn(\"flex items-center space-x-2\", rootClassName)}>\n <SRadioGroupItem ref={ref} id={id} {...itemProps} />\n {variant === \"option\" && label && (\n <label\n htmlFor={id}\n className=\"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n >\n {label}\n </label>\n )}\n {variant === \"button-group\" && label && (\n <span className=\"sr-only\">{label}</span>\n )}\n </div>\n );\n },\n);\n\nRadioItem.displayName = \"RadioItem\";\n\ntype RadioProps = {\n options?: Array<{\n label: React.ReactNode;\n value: string;\n disabled?: boolean;\n }>;\n label?: React.ReactNode;\n helperText?: React.ReactNode;\n variant?: \"option\" | \"button-group\";\n size?: \"default\" | \"sm\" | \"lg\";\n color?:\n | \"primary\"\n | \"secondary\"\n | \"accent\"\n | \"destructive\"\n | \"muted\"\n | \"success\"\n | \"error\"\n | \"warning\";\n value?: string;\n onValueChange?: (value: string) => void;\n children?: React.ReactNode;\n className?: string;\n rootClassName?: string;\n disabled?: boolean;\n} & RadioGroupProps;\n\nconst Radio = React.forwardRef<HTMLDivElement, RadioProps>((props, ref) => {\n const {\n options,\n label,\n helperText,\n variant = \"option\",\n size = \"default\",\n color,\n value,\n onValueChange,\n children,\n className,\n rootClassName,\n disabled,\n } = props;\n\n return (\n <div className={cn(\"flex flex-col gap-1.5\", rootClassName)}>\n {label && <label className=\"text-sm font-medium\">{label}</label>}\n\n <SRadioGroup\n ref={ref}\n value={value}\n onValueChange={onValueChange}\n variant={variant}\n className={cn(className)}\n >\n {options &&\n options.map((option) => (\n <RadioItem\n key={option.value}\n value={option.value}\n label={option.label}\n disabled={disabled || option.disabled}\n variant={variant}\n size={size}\n color={color}\n />\n ))}\n {children}\n </SRadioGroup>\n\n {helperText && (\n <p className=\"text-xs text-muted-foreground\">{helperText}</p>\n )}\n </div>\n );\n}) as React.ForwardRefExoticComponent<\n RadioProps & React.RefAttributes<HTMLDivElement>\n> & {\n Group: typeof SRadioGroup;\n Item: typeof RadioItem;\n};\n\nRadio.displayName = \"Radio\";\n\nRadio.Group = SRadioGroup;\nRadio.Item = RadioItem;\n\nexport default Radio;\nexport { type RadioProps, type RadioGroupProps, type RadioGroupItemProps };\n"],"names":["RadioItem","React","props","ref","label","variant","rootClassName","itemProps","id","cn","jsx","SRadioGroupItem","Radio","options","helperText","size","color","value","onValueChange","children","className","disabled","jsxs","SRadioGroup","option"],"mappings":";;;;AAyBA,MAAMA,IAAYC,EAAM;AAAA,EACtB,CAACC,GAAOC,MAAQ;AACd,UAAM,EAAE,OAAAC,GAAO,SAAAC,IAAU,UAAU,eAAAC,GAAe,GAAGC,MAAcL,GAC7DM,IAAKP,EAAM,MAAA;AAEjB,6BACG,OAAA,EAAI,WAAWQ,EAAG,+BAA+BH,CAAa,GAC7D,UAAA;AAAA,MAAA,gBAAAI,EAACC,GAAA,EAAgB,KAAAR,GAAU,IAAAK,GAAS,GAAGD,EAAA,CAAW;AAAA,MACjDF,MAAY,YAAYD,KACvB,gBAAAM;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,SAASF;AAAA,UACT,WAAU;AAAA,UAET,UAAAJ;AAAA,QAAA;AAAA,MAAA;AAAA,MAGJC,MAAY,kBAAkBD,uBAC5B,QAAA,EAAK,WAAU,WAAW,UAAAA,EAAA,CAAM;AAAA,IAAA,GAErC;AAAA,EAEJ;AACF;AAEAJ,EAAU,cAAc;AA6BxB,MAAMY,IAAQX,EAAM,WAAuC,CAACC,GAAOC,MAAQ;AACzE,QAAM;AAAA,IACJ,SAAAU;AAAA,IACA,OAAAT;AAAA,IACA,YAAAU;AAAA,IACA,SAAAT,IAAU;AAAA,IACV,MAAAU,IAAO;AAAA,IACP,OAAAC;AAAA,IACA,OAAAC;AAAA,IACA,eAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,eAAAd;AAAA,IACA,UAAAe;AAAA,EAAA,IACEnB;AAEJ,2BACG,OAAA,EAAI,WAAWO,EAAG,yBAAyBH,CAAa,GACtD,UAAA;AAAA,IAAAF,KAAS,gBAAAM,EAAC,SAAA,EAAM,WAAU,uBAAuB,UAAAN,GAAM;AAAA,IAExD,gBAAAkB;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,KAAApB;AAAA,QACA,OAAAc;AAAA,QACA,eAAAC;AAAA,QACA,SAAAb;AAAA,QACA,WAAWI,EAAGW,CAAS;AAAA,QAEtB,UAAA;AAAA,UAAAP,KACCA,EAAQ,IAAI,CAACW,MACX,gBAAAd;AAAA,YAACV;AAAA,YAAA;AAAA,cAEC,OAAOwB,EAAO;AAAA,cACd,OAAOA,EAAO;AAAA,cACd,UAAUH,KAAYG,EAAO;AAAA,cAC7B,SAAAnB;AAAA,cACA,MAAAU;AAAA,cACA,OAAAC;AAAA,YAAA;AAAA,YANKQ,EAAO;AAAA,UAAA,CAQf;AAAA,UACFL;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAGFL,KACC,gBAAAJ,EAAC,KAAA,EAAE,WAAU,iCAAiC,UAAAI,EAAA,CAAW;AAAA,EAAA,GAE7D;AAEJ,CAAC;AAODF,EAAM,cAAc;AAEpBA,EAAM,QAAQW;AACdX,EAAM,OAAOZ;"}
@@ -0,0 +1,191 @@
1
+ import { jsx as l, jsxs as y, Fragment as V } from "react/jsx-runtime";
2
+ import Q, { useState as x, useRef as W } from "react";
3
+ import { StarHalf as X, Star as Y } from "lucide-react";
4
+ import { cn as D } from "@dsui/ui/lib/utils";
5
+ const Z = Q.forwardRef(
6
+ ({
7
+ count: c = 5,
8
+ value: N,
9
+ defaultValue: _ = 0,
10
+ allowHalf: a = !1,
11
+ allowClear: k = !0,
12
+ size: i = "middle",
13
+ color: b = "warning",
14
+ character: f,
15
+ className: A,
16
+ style: E,
17
+ disabled: s = !1,
18
+ autoFocus: F = !1,
19
+ keyboard: L = !0,
20
+ tooltips: m,
21
+ onChange: v,
22
+ onHoverChange: M,
23
+ onFocus: $,
24
+ onBlur: j,
25
+ onKeyDown: B
26
+ }, u) => {
27
+ const [K, p] = x(_), [o, R] = x(null), C = W(null), n = N !== void 0 ? N : K, S = {
28
+ small: 20,
29
+ middle: 24,
30
+ large: 32
31
+ }, H = {
32
+ primary: "text-primary [&_svg]:fill-primary",
33
+ secondary: "text-secondary [&_svg]:fill-secondary",
34
+ accent: "text-accent [&_svg]:fill-accent",
35
+ destructive: "text-destructive [&_svg]:fill-destructive",
36
+ muted: "text-muted-foreground [&_svg]:fill-muted-foreground",
37
+ success: "text-success [&_svg]:fill-success",
38
+ error: "text-error [&_svg]:fill-error",
39
+ warning: "text-yellow-400 [&_svg]:fill-yellow-400"
40
+ }, d = (e, r) => {
41
+ if (s) return;
42
+ const t = r ? e + 0.5 : e + 1;
43
+ k && t === n ? (p(0), v?.(0)) : (p(t), v?.(t));
44
+ }, h = (e, r) => {
45
+ if (s) return;
46
+ const t = r ? e + 0.5 : e + 1;
47
+ R(t), M?.(t);
48
+ }, P = () => {
49
+ R(null), M?.(0);
50
+ }, T = (e) => {
51
+ if (!L || s) return;
52
+ B?.(e);
53
+ const r = a ? 0.5 : 1;
54
+ let t = n;
55
+ switch (e.key) {
56
+ case "ArrowRight":
57
+ case "ArrowUp":
58
+ e.preventDefault(), t = Math.min(n + r, c);
59
+ break;
60
+ case "ArrowLeft":
61
+ case "ArrowDown":
62
+ e.preventDefault(), t = Math.max(n - r, 0);
63
+ break;
64
+ case "Home":
65
+ e.preventDefault(), t = a ? 0.5 : 1;
66
+ break;
67
+ case "End":
68
+ e.preventDefault(), t = c;
69
+ break;
70
+ default:
71
+ return;
72
+ }
73
+ p(t), v?.(t);
74
+ }, U = () => {
75
+ $?.();
76
+ }, q = () => {
77
+ j?.();
78
+ }, z = (e) => {
79
+ const r = o !== null ? o : n;
80
+ return r >= e + 1 ? 100 : r > e && r < e + 1 ? (r - e) * 100 : 0;
81
+ }, G = (e) => {
82
+ if (!a) return !1;
83
+ const t = (o !== null ? o : n) - e;
84
+ return t > 0 && t <= 0.5;
85
+ }, g = (e = !1) => typeof f == "function" ? f({
86
+ count: c,
87
+ value: n,
88
+ defaultValue: _,
89
+ allowHalf: a,
90
+ allowClear: k,
91
+ size: i,
92
+ disabled: s
93
+ }) : e ? /* @__PURE__ */ l(X, { className: "w-full h-full" }) : f || /* @__PURE__ */ l(Y, { className: "w-full h-full" }), J = (e) => {
94
+ if (!(!m || !m[e]))
95
+ return m[e];
96
+ };
97
+ return /* @__PURE__ */ l(
98
+ "div",
99
+ {
100
+ ref: (e) => {
101
+ C.current = e, typeof u == "function" ? u(e) : u && (u.current = e);
102
+ },
103
+ className: D(
104
+ "inline-flex items-center gap-1",
105
+ s && "opacity-50 cursor-not-allowed",
106
+ !s && "cursor-pointer",
107
+ A
108
+ ),
109
+ style: E,
110
+ onMouseLeave: P,
111
+ onKeyDown: T,
112
+ onFocus: U,
113
+ onBlur: q,
114
+ tabIndex: s ? -1 : 0,
115
+ role: "slider",
116
+ "aria-label": "Rate",
117
+ "aria-valuemin": 0,
118
+ "aria-valuemax": c,
119
+ "aria-valuenow": n,
120
+ "aria-disabled": s,
121
+ autoFocus: F,
122
+ children: Array.from({ length: c }, (e, r) => {
123
+ const t = z(r), w = J(r), O = G(r);
124
+ return /* @__PURE__ */ y("div", { className: "relative group", title: w, children: [
125
+ /* @__PURE__ */ y(
126
+ "div",
127
+ {
128
+ className: "relative inline-flex",
129
+ style: {
130
+ width: `${S[i]}px`,
131
+ height: `${S[i]}px`
132
+ },
133
+ children: [
134
+ /* @__PURE__ */ l("div", { className: "text-muted-foreground/30 pointer-events-none", children: g(!1) }),
135
+ t > 0 && /* @__PURE__ */ l(
136
+ "div",
137
+ {
138
+ className: D(
139
+ "absolute inset-0 pointer-events-none",
140
+ H[b]
141
+ ),
142
+ children: O ? g(!0) : /* @__PURE__ */ l(
143
+ "div",
144
+ {
145
+ className: "overflow-hidden",
146
+ style: { width: `${t}%` },
147
+ children: g(!1)
148
+ }
149
+ )
150
+ }
151
+ ),
152
+ !s && /* @__PURE__ */ l(V, { children: a ? /* @__PURE__ */ y(V, { children: [
153
+ /* @__PURE__ */ l(
154
+ "div",
155
+ {
156
+ className: "absolute inset-0 w-1/2 cursor-pointer",
157
+ onClick: () => d(r, !0),
158
+ onMouseEnter: () => h(r, !0)
159
+ }
160
+ ),
161
+ /* @__PURE__ */ l(
162
+ "div",
163
+ {
164
+ className: "absolute inset-0 left-1/2 w-1/2 cursor-pointer",
165
+ onClick: () => d(r, !1),
166
+ onMouseEnter: () => h(r, !1)
167
+ }
168
+ )
169
+ ] }) : /* @__PURE__ */ l(
170
+ "div",
171
+ {
172
+ className: "absolute inset-0 cursor-pointer",
173
+ onClick: () => d(r, !1),
174
+ onMouseEnter: () => h(r, !1)
175
+ }
176
+ ) })
177
+ ]
178
+ }
179
+ ),
180
+ w && (o === r + 1 || a && o === r + 0.5) && /* @__PURE__ */ l("div", { className: "absolute top-full left-1/2 -translate-x-1/2 mt-1 px-2 py-1 text-xs bg-foreground text-background rounded whitespace-nowrap z-10", children: w })
181
+ ] }, r);
182
+ })
183
+ }
184
+ );
185
+ }
186
+ );
187
+ Z.displayName = "Rate";
188
+ export {
189
+ Z as default
190
+ };
191
+ //# sourceMappingURL=Rate.js.map