@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,444 @@
1
+ import { jsxs as H, jsx as r } from "react/jsx-runtime";
2
+ import { useState as $, useEffect as Te, useRef as z, useMemo as Z, useCallback as P, memo as $e } from "react";
3
+ import { cn as b } from "@dsui/ui/index";
4
+ import _ from "../Button/Button.js";
5
+ import ze from "../Select/Select.js";
6
+ import Ee from "../Input/Input.js";
7
+ import { Popover as Ue, PopoverTrigger as qe, PopoverContent as Ae } from "@dsui/ui/components/popover";
8
+ import { Drawer as Ge, DrawerTrigger as Je, DrawerContent as Ke, DrawerHeader as Qe, DrawerTitle as We, DrawerDescription as Xe } from "@dsui/ui/components/drawer";
9
+ import { isMobile as Ne } from "react-device-detect";
10
+ import { Clock as Ye } from "lucide-react";
11
+ import { TimeColumnwheel as B } from "../WheelColumn.js";
12
+ import { TimeGridView as Ze } from "../TimeGridView.js";
13
+ import { parse as _e, isValid as ye, format as Be } from "date-fns";
14
+ const L = (o, d = 1) => {
15
+ const C = [];
16
+ for (let g = 0; g < o; g += d)
17
+ C.push(g);
18
+ return C;
19
+ }, E = (o) => String(o).padStart(2, "0"), De = (o, d = "HH:mm") => !o || !ye(o) ? "" : Be(o, d), Se = (o, d = "HH:mm") => {
20
+ if (!o) return;
21
+ const g = _e(o, d, /* @__PURE__ */ new Date());
22
+ if (ye(g))
23
+ return g;
24
+ };
25
+ function Le(o) {
26
+ return o.replace(/HH|mm|ss/g, (d) => {
27
+ switch (d) {
28
+ case "HH":
29
+ case "mm":
30
+ case "ss":
31
+ return "99";
32
+ default:
33
+ return d;
34
+ }
35
+ }).replace(/H|m|s/g, () => "9");
36
+ }
37
+ function pt({
38
+ value: o,
39
+ onChange: d,
40
+ onSelect: C,
41
+ showHours: g = !0,
42
+ showMinutes: ee = !0,
43
+ showSeconds: j = !1,
44
+ disabled: v = !1,
45
+ className: te,
46
+ timeLabel: c,
47
+ mask: U,
48
+ format: y,
49
+ mode: a = "wheel",
50
+ hourInterval: ne = 1,
51
+ minuteInterval: re = 1,
52
+ secondInterval: se = 1,
53
+ disabledTimes: oe = [],
54
+ disabledTimeRanges: ie = [],
55
+ showNowButton: ce = !1,
56
+ nowButtonLabel: ae = "Now",
57
+ standalone: le = !0,
58
+ desktopMode: ue = "popover",
59
+ mobileMode: Me = "drawer",
60
+ color: F = "primary",
61
+ ...ke
62
+ }) {
63
+ let x, T;
64
+ typeof y == "string" ? (x = y, T = y) : y ? (x = y.input, T = y.output) : (x = j ? "HH:mm:ss" : "HH:mm", T = j ? "HH:mm:ss" : "HH:mm");
65
+ const [p, N] = $(void 0), [h, D] = $(void 0), [w, S] = $(void 0), [q, me] = $(!1);
66
+ Te(() => {
67
+ if (o) {
68
+ const e = Se(o, x);
69
+ e && (N(e.getHours()), D(e.getMinutes()), S(e.getSeconds()));
70
+ } else
71
+ N(void 0), D(void 0), S(void 0);
72
+ }, [o, x]);
73
+ const A = z(null), G = z(null), J = z(null), K = z(null), M = Z(
74
+ () => L(24, ne),
75
+ [ne]
76
+ ), k = Z(
77
+ () => L(60, re),
78
+ [re]
79
+ ), V = Z(
80
+ () => L(60, se),
81
+ [se]
82
+ ), l = P(
83
+ (e, t, n = 0) => {
84
+ const s = `${E(e ?? 0)}:${E(t ?? 0)}${j ? `:${E(n ?? 0)}` : ""}`;
85
+ if (oe.includes(s))
86
+ return !0;
87
+ for (const m of ie) {
88
+ const [u, i, f = 0] = m.from.split(":").map(Number), [R, Ie, Oe = 0] = m.to.split(":").map(Number), xe = (e ?? 0) * 3600 + (t ?? 0) * 60 + (n ?? 0), Fe = u * 3600 + i * 60 + f, Re = R * 3600 + Ie * 60 + Oe;
89
+ if (xe >= Fe && xe <= Re)
90
+ return !0;
91
+ }
92
+ return !1;
93
+ },
94
+ [oe, ie, j]
95
+ ), Q = P(
96
+ (e) => {
97
+ if (c)
98
+ return typeof c == "boolean" ? c ? e === "hours" ? "Hour" : e === "minutes" ? "Minute" : "Second" : void 0 : typeof c == "string" ? c : e === "hours" ? c.hours || "Hour" : e === "minutes" ? c.minutes || "Minute" : c.seconds || "Second";
99
+ },
100
+ [c]
101
+ ), fe = typeof c == "string" && /* @__PURE__ */ r(
102
+ "div",
103
+ {
104
+ className: "text-xs font-semibold text-muted-foreground uppercase p-2 border-b w-full text-center",
105
+ children: c
106
+ },
107
+ "common-label"
108
+ ), Pe = P(
109
+ (e, t, n = 0) => {
110
+ const s = M.reduce(
111
+ (i, f) => Math.abs(f - e) < Math.abs(i - e) ? f : i
112
+ ), m = k.reduce(
113
+ (i, f) => Math.abs(f - t) < Math.abs(i - t) ? f : i
114
+ ), u = V.reduce(
115
+ (i, f) => Math.abs(f - n) < Math.abs(i - n) ? f : i
116
+ );
117
+ if (l(s, m, u)) {
118
+ for (const i of M)
119
+ for (const f of k)
120
+ for (const R of V)
121
+ if (!l(i, f, R))
122
+ return { h: i, m: f, s: R };
123
+ }
124
+ return { h: s, m, s: u };
125
+ },
126
+ [M, k, V, l]
127
+ ), I = P(
128
+ (e, t, n) => {
129
+ const s = /* @__PURE__ */ new Date();
130
+ s.setHours(e, t, n, 0);
131
+ const m = De(s, T);
132
+ C?.(s, m);
133
+ },
134
+ [T, C]
135
+ ), de = (e) => {
136
+ l(e, h, w) || (N(e), I(e, h ?? 0, w ?? 0));
137
+ }, pe = (e) => {
138
+ l(p, e, w) || (D(e), I(p ?? 0, e, w ?? 0));
139
+ }, he = (e) => {
140
+ l(p, h, e) || (S(e), I(p ?? 0, h ?? 0, e));
141
+ }, O = P(
142
+ (e) => {
143
+ if (e.current) {
144
+ const t = e.current.querySelector(
145
+ "[data-selected]"
146
+ );
147
+ if (t) {
148
+ const n = e.current, s = n.clientHeight, m = t.offsetTop, u = t.clientHeight, i = m - s / 2 + u / 2;
149
+ n.scrollTo({
150
+ top: i,
151
+ behavior: "smooth"
152
+ });
153
+ }
154
+ }
155
+ },
156
+ []
157
+ ), W = P(() => {
158
+ a === "wheel" ? (O(A), O(G), O(J)) : a === "compact" && O(K);
159
+ }, [A, G, J, K, a, O]), ge = () => {
160
+ const e = /* @__PURE__ */ new Date(), { h: t, m: n, s } = Pe(
161
+ e.getHours(),
162
+ e.getMinutes(),
163
+ e.getSeconds()
164
+ );
165
+ N(t), D(n), S(s), I(t, n, s), setTimeout(() => W(), 100);
166
+ };
167
+ Te(() => {
168
+ const e = setTimeout(() => W(), 100);
169
+ return () => clearTimeout(e);
170
+ }, [q, a, W]);
171
+ const X = $e(
172
+ ({
173
+ items: e,
174
+ value: t,
175
+ onChange: n,
176
+ timeLabel: s,
177
+ type: m
178
+ }) => /* @__PURE__ */ H("div", { className: "flex flex-col gap-2", children: [
179
+ s && /* @__PURE__ */ r("div", { className: "text-xs font-semibold text-muted-foreground uppercase p-2 border-b w-full text-center", children: s }),
180
+ /* @__PURE__ */ r("div", { className: "p-2", children: /* @__PURE__ */ r(
181
+ ze,
182
+ {
183
+ value: t?.toString() || "",
184
+ onValueChange: (u) => n(Number(u)),
185
+ disabled: v,
186
+ clearable: !1,
187
+ search: !1,
188
+ options: e.map((u) => {
189
+ const i = m === "hours" && l(u, h, w) || m === "minutes" && l(p, u, w) || m === "seconds" && l(p, h, u);
190
+ return {
191
+ label: E(u),
192
+ value: u.toString(),
193
+ disabled: i
194
+ };
195
+ })
196
+ }
197
+ ) })
198
+ ] })
199
+ ), je = (e, t) => {
200
+ l(e, t, 0) || (N(e), D(t), S(0), I(e, t, 0));
201
+ }, ve = () => {
202
+ const e = [];
203
+ if (a === "compact")
204
+ return /* @__PURE__ */ r(
205
+ Ze,
206
+ {
207
+ HOURS: M,
208
+ MINUTES: k,
209
+ hours: p,
210
+ minutes: h,
211
+ disabled: v,
212
+ isTimeDisabled: l,
213
+ onTimeSelect: je,
214
+ ref: K,
215
+ color: F
216
+ }
217
+ );
218
+ if (g) {
219
+ const t = typeof c == "string" ? void 0 : Q("hours");
220
+ a === "wheel" ? e.push(
221
+ /* @__PURE__ */ r(
222
+ B,
223
+ {
224
+ ref: A,
225
+ items: M,
226
+ value: p,
227
+ onChange: de,
228
+ timeLabel: t,
229
+ isItemDisabled: (n) => l(n, h, w),
230
+ disabled: v,
231
+ color: F
232
+ },
233
+ "hours"
234
+ )
235
+ ) : a === "select" && e.push(
236
+ /* @__PURE__ */ r(
237
+ X,
238
+ {
239
+ items: M,
240
+ value: p,
241
+ onChange: de,
242
+ timeLabel: t,
243
+ type: "hours"
244
+ },
245
+ "hours"
246
+ )
247
+ );
248
+ }
249
+ if (ee) {
250
+ const t = typeof c == "string" ? void 0 : Q("minutes");
251
+ a === "wheel" ? e.push(
252
+ /* @__PURE__ */ r(
253
+ B,
254
+ {
255
+ ref: G,
256
+ items: k,
257
+ value: h,
258
+ onChange: pe,
259
+ timeLabel: t,
260
+ itemClassName: g ? "border-l" : void 0,
261
+ isItemDisabled: (n) => l(p, n, w),
262
+ disabled: v,
263
+ color: F
264
+ },
265
+ "minutes"
266
+ )
267
+ ) : a === "select" && e.push(
268
+ /* @__PURE__ */ r(
269
+ X,
270
+ {
271
+ items: k,
272
+ value: h,
273
+ onChange: pe,
274
+ timeLabel: t,
275
+ type: "minutes"
276
+ },
277
+ "minutes"
278
+ )
279
+ );
280
+ }
281
+ if (j) {
282
+ const t = typeof c == "string" ? void 0 : Q("seconds");
283
+ a === "wheel" ? e.push(
284
+ /* @__PURE__ */ r(
285
+ B,
286
+ {
287
+ ref: J,
288
+ items: V,
289
+ value: w,
290
+ onChange: he,
291
+ timeLabel: t,
292
+ itemClassName: ee || g ? "border-l" : void 0,
293
+ isItemDisabled: (n) => l(p, h, n),
294
+ disabled: v,
295
+ color: F
296
+ },
297
+ "seconds"
298
+ )
299
+ ) : a === "select" && e.push(
300
+ /* @__PURE__ */ r(
301
+ X,
302
+ {
303
+ items: V,
304
+ value: w,
305
+ onChange: he,
306
+ timeLabel: t,
307
+ type: "seconds"
308
+ },
309
+ "seconds"
310
+ )
311
+ );
312
+ }
313
+ return e;
314
+ };
315
+ if (!le)
316
+ return /* @__PURE__ */ H(
317
+ "div",
318
+ {
319
+ className: b("flex flex-col gap-2 h-full justify-between", te),
320
+ children: [
321
+ fe,
322
+ /* @__PURE__ */ r(
323
+ "div",
324
+ {
325
+ className: b(
326
+ "flex rounded overflow-clip mb-auto",
327
+ a === "wheel" ? "items-end justify-center p-0 h-72" : "items-start justify-center"
328
+ ),
329
+ children: ve()
330
+ }
331
+ ),
332
+ ce && /* @__PURE__ */ r(
333
+ _,
334
+ {
335
+ type: "button",
336
+ variant: "solid",
337
+ size: "xs",
338
+ onClick: ge,
339
+ disabled: v,
340
+ className: b("rounded-none"),
341
+ children: ae
342
+ }
343
+ )
344
+ ]
345
+ }
346
+ );
347
+ const we = /* @__PURE__ */ H("div", { className: b("flex flex-col gap-4 h-full", te), children: [
348
+ fe,
349
+ /* @__PURE__ */ r(
350
+ "div",
351
+ {
352
+ className: b(
353
+ "flex rounded overflow-clip my-auto mx-auto max-w-sm md:max-w-md lg:max-w-lg relative",
354
+ a === "wheel" ? "items-end justify-center p-0" : "items-start justify-center",
355
+ {
356
+ "h-72": a === "wheel",
357
+ "w-xs": le && (Ne || ue === "drawer")
358
+ }
359
+ ),
360
+ children: ve()
361
+ }
362
+ ),
363
+ ce && /* @__PURE__ */ r(
364
+ _,
365
+ {
366
+ type: "button",
367
+ variant: "solid",
368
+ size: "xs",
369
+ onClick: ge,
370
+ disabled: v,
371
+ className: b("rounded-none"),
372
+ children: ae
373
+ }
374
+ )
375
+ ] }), Ce = /* @__PURE__ */ H(
376
+ _,
377
+ {
378
+ variant: "ghost",
379
+ className: "!p-1 !leading-0 h-auto rounded hover:bg-accent transition-colors",
380
+ disabled: v,
381
+ children: [
382
+ /* @__PURE__ */ r(Ye, { className: "size-4" }),
383
+ /* @__PURE__ */ r("span", { className: "sr-only", children: "Select time" })
384
+ ]
385
+ }
386
+ ), He = /* @__PURE__ */ H(Ue, { open: q, onOpenChange: me, children: [
387
+ /* @__PURE__ */ r(qe, { asChild: !0, disabled: v, children: Ce }),
388
+ /* @__PURE__ */ r(
389
+ Ae,
390
+ {
391
+ className: b(
392
+ "w-auto overflow-hidden p-0",
393
+ "backdrop-blur bg-background/50"
394
+ ),
395
+ children: we
396
+ }
397
+ )
398
+ ] }), be = /* @__PURE__ */ H(Ge, { open: q, onOpenChange: me, children: [
399
+ /* @__PURE__ */ r(Je, { asChild: !0, children: Ce }),
400
+ /* @__PURE__ */ H(
401
+ Ke,
402
+ {
403
+ className: b(
404
+ "w-auto overflow-hidden p-0",
405
+ "backdrop-blur bg-background"
406
+ ),
407
+ children: [
408
+ /* @__PURE__ */ H(Qe, { className: "sr-only", children: [
409
+ /* @__PURE__ */ r(We, { children: "Select time" }),
410
+ /* @__PURE__ */ r(Xe, { children: "Choose a time" })
411
+ ] }),
412
+ we
413
+ ]
414
+ }
415
+ )
416
+ ] }), Ve = T;
417
+ let Y;
418
+ return U === !0 ? Y = Le(x) : typeof U == "string" && (Y = U), /* @__PURE__ */ r(
419
+ Ee,
420
+ {
421
+ ...ke,
422
+ clearable: !0,
423
+ value: o || "",
424
+ placeholder: Ve,
425
+ mask: Y,
426
+ disabled: v,
427
+ className: "cursor-pointer",
428
+ onChange: (e) => {
429
+ const t = e.target.value, n = Se(t, x);
430
+ if (n) {
431
+ N(n.getHours()), D(n.getMinutes()), S(n.getSeconds());
432
+ const s = De(n, T);
433
+ d?.(e, s, n), C?.(n, s);
434
+ } else
435
+ N(0), D(0), S(0), d?.(e, t, void 0), C?.(void 0, t);
436
+ },
437
+ suffixIcon: Ne ? Me === "drawer" ? be : He : ue === "drawer" ? be : He
438
+ }
439
+ );
440
+ }
441
+ export {
442
+ pt as TimePicker
443
+ };
444
+ //# sourceMappingURL=TimePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimePicker.js","sources":["../../../../src/components/DatePicker/TimePicker.tsx"],"sourcesContent":["import * as React from \"react\";\nimport {\n memo,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n type RefObject,\n} from \"react\";\nimport { cn } from \"@dsui/ui/index\";\nimport Button from \"../Button/Button\";\nimport Select from \"../Select/Select\";\nimport Input, { type InputProps } from \"../Input/Input\";\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"@dsui/ui/components/popover\";\nimport {\n Drawer,\n DrawerContent,\n DrawerDescription,\n DrawerHeader,\n DrawerTitle,\n DrawerTrigger,\n} from \"@dsui/ui/components/drawer\";\nimport { isMobile } from \"react-device-detect\";\nimport { Clock } from \"lucide-react\";\nimport { TimeColumnwheel } from \"../../components/WheelColumn\";\nimport { TimeGridView } from \"../../components/TimeGridView\";\nimport { format as dfFormat, parse, isValid } from \"date-fns\";\nimport type { CalendarColor } from \"../Calendar/Calendar\";\n\nexport type TimePickerMode = \"wheel\" | \"select\" | \"compact\";\n\nexport type DisabledTimeRange = {\n from: string; // Format: \"HH:mm\" or \"HH:mm:ss\"\n to: string; // Format: \"HH:mm\" or \"HH:mm:ss\"\n};\n\nexport type FormatType = string | { input: string; output: string };\n\nexport type TimePickerProps = Omit<\n InputProps,\n \"value\" | \"onChange\" | \"onSelect\" | \"mask\" | \"children\"\n> & {\n value?: string; // Time string in specified format\n onChange?: (\n event?: React.ChangeEvent<HTMLInputElement>,\n value?: string,\n date?: Date,\n ) => void;\n onSelect?: (date?: Date, value?: string) => void;\n showHours?: boolean;\n showMinutes?: boolean;\n showSeconds?: boolean;\n disabled?: boolean;\n className?: string;\n timeLabel?:\n | boolean\n | string\n | { hours?: string; minutes?: string; seconds?: string };\n mask?: boolean | string; // Enable mask for time input: true (auto-generate), string (custom mask), false/undefined (no mask)\n format?: FormatType; // Time format using date-fns format tokens (default: auto from showSeconds)\n\n // New configuration options\n mode?: TimePickerMode; // Display mode: 'wheel' (default), 'select', 'compact'\n hourInterval?: number; // Hour interval (e.g., 1, 2, 3) - defaults to 1\n minuteInterval?: number; // Minute interval (e.g., 5, 10, 15, 30) - defaults to 1\n secondInterval?: number; // Second interval (e.g., 5, 10, 15, 30) - defaults to 1\n disabledTimes?: string[]; // Array of disabled times in \"HH:mm\" or \"HH:mm:ss\" format\n disabledTimeRanges?: DisabledTimeRange[]; // Array of disabled time ranges\n showNowButton?: boolean; // Show \"Now\" button to select current time\n nowButtonLabel?: string; // Label for \"Now\" button (defaults to \"Now\")\n\n // Standalone mode configuration\n standalone?: boolean; // When true (default), TimePicker shows as a drawer/popover with trigger. When false, it's used as an integrated component (e.g., inside DatePicker)\n desktopMode?: \"popover\" | \"drawer\"; // Desktop display mode for standalone: 'popover' or 'drawer'\n mobileMode?: \"popover\" | \"drawer\"; // Mobile display mode for standalone: 'popover' or 'drawer'\n color?: CalendarColor; // Color variant for selected time (defaults to \"primary\")\n};\n\nconst generateIntervalArray = (max: number, interval: number = 1): number[] => {\n const result: number[] = [];\n for (let i = 0; i < max; i += interval) {\n result.push(i);\n }\n return result;\n};\n\nconst pad = (num: number): string => String(num).padStart(2, \"0\");\n\n// Format time Date to string using date-fns\nconst formatTime = (\n date: Date | undefined,\n format: string = \"HH:mm\",\n): string => {\n if (!date || !isValid(date)) return \"\";\n return dfFormat(date, format);\n};\n\n// Parse time string to Date using date-fns\nconst parseTimeString = (\n timeStr: string,\n format: string = \"HH:mm\",\n): Date | undefined => {\n if (!timeStr) return undefined;\n\n const referenceDate = new Date();\n const parsedDate = parse(timeStr, format, referenceDate);\n\n if (!isValid(parsedDate)) return undefined;\n\n return parsedDate;\n};\n\nfunction generateMaskFromTimeFormat(format: string): string {\n return format\n .replace(/HH|mm|ss/g, (match) => {\n switch (match) {\n case \"HH\":\n case \"mm\":\n case \"ss\":\n return \"99\";\n default:\n return match;\n }\n })\n .replace(/H|m|s/g, () => \"9\");\n}\n\nexport function TimePicker({\n value,\n onChange,\n onSelect,\n showHours = true,\n showMinutes = true,\n showSeconds = false,\n disabled = false,\n className,\n timeLabel,\n mask,\n format,\n mode = \"wheel\",\n hourInterval = 1,\n minuteInterval = 1,\n secondInterval = 1,\n disabledTimes = [],\n disabledTimeRanges = [],\n showNowButton = false,\n nowButtonLabel = \"Now\",\n standalone = true,\n desktopMode = \"popover\",\n mobileMode = \"drawer\",\n color = \"primary\",\n ...props\n}: TimePickerProps) {\n // Determine input and output formats (like DatePicker)\n let inputFormat: string;\n let outputFormat: string;\n if (typeof format === \"string\") {\n inputFormat = format;\n outputFormat = format;\n } else if (format) {\n inputFormat = format.input;\n outputFormat = format.output;\n } else {\n // Auto-determine from showSeconds if not provided\n inputFormat = showSeconds ? \"HH:mm:ss\" : \"HH:mm\";\n outputFormat = showSeconds ? \"HH:mm:ss\" : \"HH:mm\";\n }\n\n const [hours, setHours] = useState<number | undefined>(undefined);\n const [minutes, setMinutes] = useState<number | undefined>(undefined);\n const [seconds, setSeconds] = useState<number | undefined>(undefined);\n const [standaloneOpen, setStandaloneOpen] = useState(false);\n\n useEffect(() => {\n if (value) {\n const parsed = parseTimeString(value, inputFormat);\n if (parsed) {\n setHours(parsed.getHours());\n setMinutes(parsed.getMinutes());\n setSeconds(parsed.getSeconds());\n }\n } else {\n setHours(undefined);\n setMinutes(undefined);\n setSeconds(undefined);\n }\n }, [value, inputFormat]);\n\n const hoursRef = useRef<HTMLDivElement>(null);\n const minutesRef = useRef<HTMLDivElement>(null);\n const secondsRef = useRef<HTMLDivElement>(null);\n const gridRef = useRef<HTMLDivElement>(null);\n\n // Generate time arrays based on intervals\n const HOURS = useMemo(\n () => generateIntervalArray(24, hourInterval),\n [hourInterval],\n );\n const MINUTES = useMemo(\n () => generateIntervalArray(60, minuteInterval),\n [minuteInterval],\n );\n const SECONDS = useMemo(\n () => generateIntervalArray(60, secondInterval),\n [secondInterval],\n );\n\n // Helper function to check if a time is disabled\n const isTimeDisabled = useCallback(\n (\n h: number | undefined,\n m: number | undefined,\n s: number | undefined = 0,\n ): boolean => {\n const timeStr = `${pad(h ?? 0)}:${pad(m ?? 0)}${showSeconds ? `:${pad(s ?? 0)}` : \"\"}`;\n\n // Check if specific time is disabled\n if (disabledTimes.includes(timeStr)) {\n return true;\n }\n\n // Check if time is in a disabled range\n for (const range of disabledTimeRanges) {\n const [fromH, fromM, fromS = 0] = range.from.split(\":\").map(Number);\n const [toH, toM, toS = 0] = range.to.split(\":\").map(Number);\n\n const currentTime = (h ?? 0) * 3600 + (m ?? 0) * 60 + (s ?? 0);\n const fromTime = fromH * 3600 + fromM * 60 + fromS;\n const toTime = toH * 3600 + toM * 60 + toS;\n\n if (currentTime >= fromTime && currentTime <= toTime) {\n return true;\n }\n }\n\n return false;\n },\n [disabledTimes, disabledTimeRanges, showSeconds],\n );\n\n // Helper function to get time label based on type and timeLabel prop\n const getTimeLabel = useCallback(\n (type: \"hours\" | \"minutes\" | \"seconds\"): string | undefined => {\n if (!timeLabel) return undefined;\n\n if (typeof timeLabel === \"boolean\") {\n return timeLabel\n ? type === \"hours\"\n ? \"Hour\"\n : type === \"minutes\"\n ? \"Minute\"\n : \"Second\"\n : undefined;\n }\n\n if (typeof timeLabel === \"string\") {\n return timeLabel;\n }\n\n // Object case\n if (type === \"hours\") return timeLabel.hours || \"Hour\";\n if (type === \"minutes\") return timeLabel.minutes || \"Minute\";\n return timeLabel.seconds || \"Second\";\n },\n [timeLabel],\n );\n\n // If timeLabel is a string, show it as a common label above all columns\n const shareLabel = typeof timeLabel === \"string\" && (\n <div\n key=\"common-label\"\n className=\"text-xs font-semibold text-muted-foreground uppercase p-2 border-b w-full text-center\"\n >\n {timeLabel}\n </div>\n );\n\n // Find nearest valid time\n const findNearestValidTime = useCallback(\n (\n targetH: number,\n targetM: number,\n targetS: number = 0,\n ): { h: number; m: number; s: number } => {\n // Find nearest hour\n const nearestH = HOURS.reduce((prev, curr) =>\n Math.abs(curr - targetH) < Math.abs(prev - targetH) ? curr : prev,\n );\n\n // Find nearest minute\n const nearestM = MINUTES.reduce((prev, curr) =>\n Math.abs(curr - targetM) < Math.abs(prev - targetM) ? curr : prev,\n );\n\n // Find nearest second\n const nearestS = SECONDS.reduce((prev, curr) =>\n Math.abs(curr - targetS) < Math.abs(prev - targetS) ? curr : prev,\n );\n\n // If the nearest time is disabled, find the next available time\n if (isTimeDisabled(nearestH, nearestM, nearestS)) {\n // Try to find next available time\n for (const h of HOURS) {\n for (const m of MINUTES) {\n for (const s of SECONDS) {\n if (!isTimeDisabled(h, m, s)) {\n return { h, m, s };\n }\n }\n }\n }\n }\n\n return { h: nearestH, m: nearestM, s: nearestS };\n },\n [HOURS, MINUTES, SECONDS, isTimeDisabled],\n );\n\n const updateDateTime = useCallback(\n (h: number, m: number, s: number) => {\n const newDate = new Date();\n newDate.setHours(h, m, s, 0);\n const formattedValue = formatTime(newDate, outputFormat);\n onSelect?.(newDate, formattedValue);\n },\n [outputFormat, onSelect],\n );\n\n const handleHourChange = (h: number) => {\n if (!isTimeDisabled(h, minutes, seconds)) {\n setHours(h);\n updateDateTime(h, minutes ?? 0, seconds ?? 0);\n }\n };\n\n const handleMinuteChange = (m: number) => {\n if (!isTimeDisabled(hours, m, seconds)) {\n setMinutes(m);\n updateDateTime(hours ?? 0, m, seconds ?? 0);\n }\n };\n\n const handleSecondChange = (s: number) => {\n if (!isTimeDisabled(hours, minutes, s)) {\n setSeconds(s);\n updateDateTime(hours ?? 0, minutes ?? 0, s);\n }\n };\n\n // Scroll to center item when selected\n const scrollToSelected = useCallback(\n (ref: RefObject<HTMLDivElement | null>) => {\n if (ref.current) {\n const selected = ref.current.querySelector(\n \"[data-selected]\",\n ) as HTMLElement;\n if (selected) {\n const container = ref.current;\n const containerHeight = container.clientHeight;\n const selectedTop = selected.offsetTop;\n const selectedHeight = selected.clientHeight;\n\n const scrollPosition =\n selectedTop - containerHeight / 2 + selectedHeight / 2;\n\n container.scrollTo({\n top: scrollPosition,\n behavior: \"smooth\",\n });\n }\n }\n },\n [],\n );\n\n const scrollHandler = useCallback(() => {\n if (mode === \"wheel\") {\n // Scroll to selected item when picker opens (only for initial load)\n scrollToSelected(hoursRef);\n scrollToSelected(minutesRef);\n scrollToSelected(secondsRef);\n } else if (mode === \"compact\") {\n // Scroll to selected item in grid mode\n scrollToSelected(gridRef);\n }\n }, [hoursRef, minutesRef, secondsRef, gridRef, mode, scrollToSelected]);\n\n const handleNowClick = () => {\n const now = new Date();\n const { h, m, s } = findNearestValidTime(\n now.getHours(),\n now.getMinutes(),\n now.getSeconds(),\n );\n setHours(h);\n setMinutes(m);\n setSeconds(s);\n updateDateTime(h, m, s);\n setTimeout(() => scrollHandler(), 100);\n };\n\n useEffect(() => {\n const timer = setTimeout(() => scrollHandler(), 100);\n return () => clearTimeout(timer);\n }, [standaloneOpen, mode, scrollHandler]);\n\n // Normal Mode - Dropdown/Input style\n const TimeColumnNormal = memo(\n ({\n items,\n value: selectedValue,\n onChange: onChangeCol,\n timeLabel,\n type,\n }: {\n items: number[];\n value: number | undefined;\n onChange: (val: number) => void;\n timeLabel?: string;\n type: \"hours\" | \"minutes\" | \"seconds\";\n }) => (\n <div className=\"flex flex-col gap-2\">\n {timeLabel && (\n <div className=\"text-xs font-semibold text-muted-foreground uppercase p-2 border-b w-full text-center\">\n {timeLabel}\n </div>\n )}\n <div className=\"p-2\">\n <Select\n value={selectedValue?.toString() || \"\"}\n onValueChange={(value) => onChangeCol(Number(value))}\n disabled={disabled}\n clearable={false}\n search={false}\n options={items.map((item) => {\n const itemDisabled =\n (type === \"hours\" && isTimeDisabled(item, minutes, seconds)) ||\n (type === \"minutes\" && isTimeDisabled(hours, item, seconds)) ||\n (type === \"seconds\" && isTimeDisabled(hours, minutes, item));\n\n return {\n label: pad(item),\n value: item.toString(),\n disabled: itemDisabled,\n };\n })}\n />\n </div>\n </div>\n ),\n );\n\n // Grid Mode - Combined time selection (HH:mm format only, vertical layout)\n const handleTimeSelect = (h: number, m: number) => {\n // Always set seconds to 0 in grid mode\n if (!isTimeDisabled(h, m, 0)) {\n setHours(h);\n setMinutes(m);\n setSeconds(0);\n updateDateTime(h, m, 0);\n }\n };\n\n const renderColumns = () => {\n const columns = [];\n\n // Grid mode shows combined time options\n if (mode === \"compact\") {\n return (\n <TimeGridView\n HOURS={HOURS}\n MINUTES={MINUTES}\n hours={hours}\n minutes={minutes}\n disabled={disabled}\n isTimeDisabled={isTimeDisabled}\n onTimeSelect={handleTimeSelect}\n ref={gridRef}\n color={color}\n />\n );\n }\n\n if (showHours) {\n const hourLabel =\n typeof timeLabel === \"string\" ? undefined : getTimeLabel(\"hours\");\n\n if (mode === \"wheel\") {\n columns.push(\n <TimeColumnwheel\n key=\"hours\"\n ref={hoursRef}\n items={HOURS}\n value={hours}\n onChange={handleHourChange}\n timeLabel={hourLabel}\n isItemDisabled={(item) => isTimeDisabled(item, minutes, seconds)}\n disabled={disabled}\n color={color}\n />,\n );\n } else if (mode === \"select\") {\n columns.push(\n <TimeColumnNormal\n key=\"hours\"\n items={HOURS}\n value={hours}\n onChange={handleHourChange}\n timeLabel={hourLabel}\n type=\"hours\"\n />,\n );\n }\n }\n\n if (showMinutes) {\n const minuteLabel =\n typeof timeLabel === \"string\" ? undefined : getTimeLabel(\"minutes\");\n\n if (mode === \"wheel\") {\n columns.push(\n <TimeColumnwheel\n key=\"minutes\"\n ref={minutesRef}\n items={MINUTES}\n value={minutes}\n onChange={handleMinuteChange}\n timeLabel={minuteLabel}\n itemClassName={showHours ? \"border-l\" : undefined}\n isItemDisabled={(item) => isTimeDisabled(hours, item, seconds)}\n disabled={disabled}\n color={color}\n />,\n );\n } else if (mode === \"select\") {\n columns.push(\n <TimeColumnNormal\n key=\"minutes\"\n items={MINUTES}\n value={minutes}\n onChange={handleMinuteChange}\n timeLabel={minuteLabel}\n type=\"minutes\"\n />,\n );\n }\n }\n\n if (showSeconds) {\n const secondLabel =\n typeof timeLabel === \"string\" ? undefined : getTimeLabel(\"seconds\");\n\n if (mode === \"wheel\") {\n columns.push(\n <TimeColumnwheel\n key=\"seconds\"\n ref={secondsRef}\n items={SECONDS}\n value={seconds}\n onChange={handleSecondChange}\n timeLabel={secondLabel}\n itemClassName={showMinutes || showHours ? \"border-l\" : undefined}\n isItemDisabled={(item) => isTimeDisabled(hours, minutes, item)}\n disabled={disabled}\n color={color}\n />,\n );\n } else if (mode === \"select\") {\n columns.push(\n <TimeColumnNormal\n key=\"seconds\"\n items={SECONDS}\n value={seconds}\n onChange={handleSecondChange}\n timeLabel={secondLabel}\n type=\"seconds\"\n />,\n );\n }\n }\n\n return columns;\n };\n\n // If standalone mode is disabled, return the content directly (for integration with DatePicker)\n if (!standalone) {\n return (\n <div\n className={cn(\"flex flex-col gap-2 h-full justify-between\", className)}\n >\n {shareLabel}\n\n <div\n className={cn(\n \"flex rounded overflow-clip mb-auto\",\n mode === \"wheel\"\n ? \"items-end justify-center p-0 h-72\"\n : \"items-start justify-center\",\n )}\n >\n {renderColumns()}\n </div>\n\n {showNowButton && (\n <Button\n type=\"button\"\n variant=\"solid\"\n size=\"xs\"\n onClick={handleNowClick}\n disabled={disabled}\n className={cn(\"rounded-none\")}\n >\n {nowButtonLabel}\n </Button>\n )}\n </div>\n );\n }\n\n // Render the time picker content\n const timePickerContent = (\n <div className={cn(\"flex flex-col gap-4 h-full\", className)}>\n {shareLabel}\n\n <div\n className={cn(\n \"flex rounded overflow-clip my-auto mx-auto max-w-sm md:max-w-md lg:max-w-lg relative\",\n mode === \"wheel\"\n ? \"items-end justify-center p-0\"\n : \"items-start justify-center\",\n {\n \"h-72\": mode === \"wheel\",\n \"w-xs\": standalone && (isMobile || desktopMode === \"drawer\"),\n },\n )}\n >\n {renderColumns()}\n </div>\n\n {showNowButton && (\n <Button\n type=\"button\"\n variant=\"solid\"\n size=\"xs\"\n onClick={handleNowClick}\n disabled={disabled}\n className={cn(\"rounded-none\")}\n >\n {nowButtonLabel}\n </Button>\n )}\n </div>\n );\n\n // Standalone mode: show as drawer or popover with Input\n const iconTrigger = (\n <Button\n variant=\"ghost\"\n className=\"!p-1 !leading-0 h-auto rounded hover:bg-accent transition-colors\"\n disabled={disabled}\n >\n <Clock className=\"size-4\" />\n <span className=\"sr-only\">Select time</span>\n </Button>\n );\n\n const popPicker = (\n <Popover open={standaloneOpen} onOpenChange={setStandaloneOpen}>\n <PopoverTrigger asChild disabled={disabled}>\n {iconTrigger}\n </PopoverTrigger>\n <PopoverContent\n className={cn(\n \"w-auto overflow-hidden p-0\",\n \"backdrop-blur bg-background/50\",\n )}\n >\n {timePickerContent}\n </PopoverContent>\n </Popover>\n );\n\n const drawPicker = (\n <Drawer open={standaloneOpen} onOpenChange={setStandaloneOpen}>\n <DrawerTrigger asChild>{iconTrigger}</DrawerTrigger>\n <DrawerContent\n className={cn(\n \"w-auto overflow-hidden p-0\",\n \"backdrop-blur bg-background\",\n )}\n >\n <DrawerHeader className=\"sr-only\">\n <DrawerTitle>Select time</DrawerTitle>\n <DrawerDescription>Choose a time</DrawerDescription>\n </DrawerHeader>\n {timePickerContent}\n </DrawerContent>\n </Drawer>\n );\n\n // Determine the mask to use\n const timeFormat = outputFormat; // Use outputFormat for placeholder\n let maskToUse: string | undefined;\n if (mask === true) {\n maskToUse = generateMaskFromTimeFormat(inputFormat);\n } else if (typeof mask === \"string\") {\n maskToUse = mask;\n }\n // If mask is false or undefined, maskToUse remains undefined\n\n // Handle Input change (when user types)\n const handleInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const inputValue = e.target.value;\n const parsedDate = parseTimeString(inputValue, inputFormat);\n\n if (parsedDate) {\n setHours(parsedDate.getHours());\n setMinutes(parsedDate.getMinutes());\n setSeconds(parsedDate.getSeconds());\n const formattedValue = formatTime(parsedDate, outputFormat);\n onChange?.(e, formattedValue, parsedDate);\n onSelect?.(parsedDate, formattedValue);\n } else {\n // Reset state when input is cleared\n setHours(0);\n setMinutes(0);\n setSeconds(0);\n onChange?.(e, inputValue, undefined);\n onSelect?.(undefined, inputValue);\n }\n };\n\n // Return Input with picker as suffix icon (standalone mode)\n return (\n <Input\n {...props}\n clearable\n value={value || \"\"}\n placeholder={timeFormat}\n mask={maskToUse}\n disabled={disabled}\n className=\"cursor-pointer\"\n onChange={handleInputChange}\n suffixIcon={\n isMobile\n ? mobileMode === \"drawer\"\n ? drawPicker\n : popPicker\n : desktopMode === \"drawer\"\n ? drawPicker\n : popPicker\n }\n />\n );\n}\n"],"names":["generateIntervalArray","max","interval","result","i","pad","num","formatTime","date","format","isValid","dfFormat","parseTimeString","timeStr","parsedDate","parse","generateMaskFromTimeFormat","match","TimePicker","value","onChange","onSelect","showHours","showMinutes","showSeconds","disabled","className","timeLabel","mask","mode","hourInterval","minuteInterval","secondInterval","disabledTimes","disabledTimeRanges","showNowButton","nowButtonLabel","standalone","desktopMode","mobileMode","color","props","inputFormat","outputFormat","hours","setHours","useState","minutes","setMinutes","seconds","setSeconds","standaloneOpen","setStandaloneOpen","useEffect","parsed","hoursRef","useRef","minutesRef","secondsRef","gridRef","HOURS","useMemo","MINUTES","SECONDS","isTimeDisabled","useCallback","h","m","s","range","fromH","fromM","fromS","toH","toM","toS","currentTime","fromTime","toTime","getTimeLabel","type","shareLabel","jsx","findNearestValidTime","targetH","targetM","targetS","nearestH","prev","curr","nearestM","nearestS","updateDateTime","newDate","formattedValue","handleHourChange","handleMinuteChange","handleSecondChange","scrollToSelected","ref","selected","container","containerHeight","selectedTop","selectedHeight","scrollPosition","scrollHandler","handleNowClick","now","timer","TimeColumnNormal","memo","items","selectedValue","onChangeCol","jsxs","Select","item","itemDisabled","handleTimeSelect","renderColumns","columns","TimeGridView","hourLabel","TimeColumnwheel","minuteLabel","secondLabel","cn","Button","timePickerContent","isMobile","iconTrigger","Clock","popPicker","Popover","PopoverTrigger","PopoverContent","drawPicker","Drawer","DrawerTrigger","DrawerContent","DrawerHeader","DrawerTitle","DrawerDescription","timeFormat","maskToUse","Input","inputValue"],"mappings":"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"}