@lobehub/ui 6.0.0-beta.1 → 6.0.0-beta.11

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 (1043) hide show
  1. package/README.md +6 -4
  2. package/es/Accordion/Accordion.mjs +3 -3
  3. package/es/Accordion/Accordion.mjs.map +1 -1
  4. package/es/Accordion/atoms.mjs +2 -2
  5. package/es/Accordion/atoms.mjs.map +1 -1
  6. package/es/Accordion/style.d.mts +1 -1
  7. package/es/ActionIcon/ActionIcon.mjs +2 -2
  8. package/es/ActionIcon/ActionIcon.mjs.map +1 -1
  9. package/es/ActionIcon/style.mjs +1 -1
  10. package/es/ActionIcon/style.mjs.map +1 -1
  11. package/es/ActionIcon/type.d.mts +1 -0
  12. package/es/Alert/Alert.mjs +5 -5
  13. package/es/Alert/Alert.mjs.map +1 -1
  14. package/es/Alert/type.d.mts +1 -0
  15. package/es/Anchor/Anchor.mjs +2 -2
  16. package/es/Anchor/Anchor.mjs.map +1 -1
  17. package/es/AutoComplete/AutoComplete.mjs +5 -5
  18. package/es/AutoComplete/AutoComplete.mjs.map +1 -1
  19. package/es/AutoComplete/style.d.mts +1 -0
  20. package/es/AutoComplete/style.mjs +2 -2
  21. package/es/AutoComplete/style.mjs.map +1 -1
  22. package/es/AutoComplete/type.d.mts +1 -0
  23. package/es/Avatar/Avatar.mjs +2 -2
  24. package/es/Avatar/Avatar.mjs.map +1 -1
  25. package/es/Avatar/AvatarGroup/index.mjs +2 -2
  26. package/es/Avatar/AvatarGroup/index.mjs.map +1 -1
  27. package/es/Breadcrumb/Breadcrumb.mjs +2 -2
  28. package/es/Breadcrumb/Breadcrumb.mjs.map +1 -1
  29. package/es/Button/Button.mjs +1 -1
  30. package/es/Button/Button.mjs.map +1 -1
  31. package/es/Button/style.d.mts +8 -1
  32. package/es/Button/style.mjs +41 -18
  33. package/es/Button/style.mjs.map +1 -1
  34. package/es/Button/type.d.mts +1 -0
  35. package/es/Carousel/Carousel.mjs +1 -1
  36. package/es/Carousel/Carousel.mjs.map +1 -1
  37. package/es/Checkbox/Checkbox.mjs +3 -3
  38. package/es/Checkbox/Checkbox.mjs.map +1 -1
  39. package/es/Checkbox/type.d.mts +1 -0
  40. package/es/CodeDiff/CodeDiff.mjs.map +1 -1
  41. package/es/CodeDiff/DiffPanel.mjs +6 -6
  42. package/es/CodeDiff/DiffPanel.mjs.map +1 -1
  43. package/es/CodeDiff/PatchDiff.mjs.map +1 -1
  44. package/es/CodeDiff/theme.mjs.map +1 -1
  45. package/es/CodeDiff/type.d.mts +2 -2
  46. package/es/CodeEditor/CodeEditor.mjs +5 -5
  47. package/es/CodeEditor/CodeEditor.mjs.map +1 -1
  48. package/es/ColorPicker/ColorInputs.mjs +136 -0
  49. package/es/ColorPicker/ColorInputs.mjs.map +1 -0
  50. package/es/ColorPicker/ColorPanel.mjs +145 -0
  51. package/es/ColorPicker/ColorPanel.mjs.map +1 -0
  52. package/es/ColorPicker/ColorPicker.mjs +63 -200
  53. package/es/ColorPicker/ColorPicker.mjs.map +1 -1
  54. package/es/ColorPicker/SaturationArea.mjs +2 -1
  55. package/es/ColorPicker/SaturationArea.mjs.map +1 -1
  56. package/es/ColorPicker/Swatch.mjs +24 -0
  57. package/es/ColorPicker/Swatch.mjs.map +1 -0
  58. package/es/ColorPicker/Swatches.mjs +66 -0
  59. package/es/ColorPicker/Swatches.mjs.map +1 -0
  60. package/es/ColorPicker/Trigger.mjs +112 -0
  61. package/es/ColorPicker/Trigger.mjs.map +1 -0
  62. package/es/ColorPicker/color.mjs +25 -1
  63. package/es/ColorPicker/color.mjs.map +1 -1
  64. package/es/ColorPicker/recent.mjs +25 -0
  65. package/es/ColorPicker/recent.mjs.map +1 -0
  66. package/es/ColorPicker/style.mjs +269 -70
  67. package/es/ColorPicker/style.mjs.map +1 -1
  68. package/es/ColorPicker/type.d.mts +15 -0
  69. package/es/ColorSwatches/ColorSwatches.mjs +18 -23
  70. package/es/ColorSwatches/ColorSwatches.mjs.map +1 -1
  71. package/es/ColorSwatches/CustomPicker.mjs +101 -0
  72. package/es/ColorSwatches/CustomPicker.mjs.map +1 -0
  73. package/es/ColorSwatches/index.d.mts +2 -2
  74. package/es/ColorSwatches/marker.stylex.mjs +9 -0
  75. package/es/ColorSwatches/marker.stylex.mjs.map +1 -0
  76. package/es/ColorSwatches/style.mjs +36 -0
  77. package/es/ColorSwatches/style.mjs.map +1 -1
  78. package/es/ColorSwatches/type.d.mts +12 -2
  79. package/es/ConfigProvider/cdnAssets.mjs +6 -0
  80. package/es/ConfigProvider/cdnAssets.mjs.map +1 -0
  81. package/es/ConfigProvider/index.mjs +2 -1
  82. package/es/ConfigProvider/index.mjs.map +1 -1
  83. package/es/ContextMenu/ContextMenuHost.mjs +2 -2
  84. package/es/ContextMenu/ContextMenuHost.mjs.map +1 -1
  85. package/es/ContextMenu/ContextMenuTrigger.mjs +2 -2
  86. package/es/ContextMenu/ContextMenuTrigger.mjs.map +1 -1
  87. package/es/ContextMenu/renderItems.mjs +3 -3
  88. package/es/ContextMenu/renderItems.mjs.map +1 -1
  89. package/es/ContextMenu/store.d.mts +0 -1
  90. package/es/ContextMenu/store.mjs.map +1 -1
  91. package/es/DatePicker/DatePicker.d.mts +9 -2
  92. package/es/DatePicker/DatePicker.mjs +15 -85
  93. package/es/DatePicker/DatePicker.mjs.map +1 -1
  94. package/es/DatePicker/DateRangePicker.d.mts +3 -2
  95. package/es/DatePicker/DateRangePicker.mjs +3 -125
  96. package/es/DatePicker/DateRangePicker.mjs.map +1 -1
  97. package/es/DatePicker/DayjsDatePicker.d.mts +12 -0
  98. package/es/DatePicker/DayjsDatePicker.mjs +19 -0
  99. package/es/DatePicker/DayjsDatePicker.mjs.map +1 -0
  100. package/es/DatePicker/DayjsDateRangePicker.d.mts +7 -0
  101. package/es/DatePicker/DayjsDateRangePicker.mjs +8 -0
  102. package/es/DatePicker/DayjsDateRangePicker.mjs.map +1 -0
  103. package/es/DatePicker/PurePanel.mjs +65 -0
  104. package/es/DatePicker/PurePanel.mjs.map +1 -0
  105. package/es/DatePicker/RangePicker.mjs +121 -0
  106. package/es/DatePicker/RangePicker.mjs.map +1 -0
  107. package/es/DatePicker/SinglePicker.mjs +134 -0
  108. package/es/DatePicker/SinglePicker.mjs.map +1 -0
  109. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs +57 -0
  110. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs.map +1 -0
  111. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs +57 -0
  112. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs.map +1 -0
  113. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs +29 -0
  114. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs.map +1 -0
  115. package/es/DatePicker/core/PickerInput/Popup/index.mjs +133 -0
  116. package/es/DatePicker/core/PickerInput/Popup/index.mjs.map +1 -0
  117. package/es/DatePicker/core/PickerInput/RangePicker.d.mts +51 -0
  118. package/es/DatePicker/core/PickerInput/RangePicker.mjs +343 -0
  119. package/es/DatePicker/core/PickerInput/RangePicker.mjs.map +1 -0
  120. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs +27 -0
  121. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs.map +1 -0
  122. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs +19 -0
  123. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs.map +1 -0
  124. package/es/DatePicker/core/PickerInput/Selector/Input.mjs +237 -0
  125. package/es/DatePicker/core/PickerInput/Selector/Input.mjs.map +1 -0
  126. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs +70 -0
  127. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs.map +1 -0
  128. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.d.mts +8 -0
  129. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs +136 -0
  130. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs.map +1 -0
  131. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs +28 -0
  132. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs.map +1 -0
  133. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs +69 -0
  134. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs.map +1 -0
  135. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs +111 -0
  136. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs.map +1 -0
  137. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs +18 -0
  138. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs.map +1 -0
  139. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs +108 -0
  140. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs.map +1 -0
  141. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs +11 -0
  142. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs.map +1 -0
  143. package/es/DatePicker/core/PickerInput/Selector/util.mjs +20 -0
  144. package/es/DatePicker/core/PickerInput/Selector/util.mjs.map +1 -0
  145. package/es/DatePicker/core/PickerInput/SinglePicker.d.mts +55 -0
  146. package/es/DatePicker/core/PickerInput/SinglePicker.mjs +318 -0
  147. package/es/DatePicker/core/PickerInput/SinglePicker.mjs.map +1 -0
  148. package/es/DatePicker/core/PickerInput/context.mjs +7 -0
  149. package/es/DatePicker/core/PickerInput/context.mjs.map +1 -0
  150. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs +30 -0
  151. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs.map +1 -0
  152. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs +37 -0
  153. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs.map +1 -0
  154. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs +18 -0
  155. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs.map +1 -0
  156. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs +20 -0
  157. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs.map +1 -0
  158. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs +31 -0
  159. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs.map +1 -0
  160. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs +98 -0
  161. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs.map +1 -0
  162. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs +41 -0
  163. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs.map +1 -0
  164. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs +34 -0
  165. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs.map +1 -0
  166. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs +35 -0
  167. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs.map +1 -0
  168. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs +9 -0
  169. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs.map +1 -0
  170. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs +36 -0
  171. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs.map +1 -0
  172. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs +27 -0
  173. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs.map +1 -0
  174. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs +18 -0
  175. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs.map +1 -0
  176. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs +19 -0
  177. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs.map +1 -0
  178. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs +20 -0
  179. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs.map +1 -0
  180. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs +24 -0
  181. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs.map +1 -0
  182. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs +107 -0
  183. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs.map +1 -0
  184. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs +144 -0
  185. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs.map +1 -0
  186. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs +219 -0
  187. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs.map +1 -0
  188. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs +11 -0
  189. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs.map +1 -0
  190. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs +131 -0
  191. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs.map +1 -0
  192. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs +35 -0
  193. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs.map +1 -0
  194. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs +84 -0
  195. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs.map +1 -0
  196. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs +73 -0
  197. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs.map +1 -0
  198. package/es/DatePicker/core/PickerPanel/PanelBody.mjs +95 -0
  199. package/es/DatePicker/core/PickerPanel/PanelBody.mjs.map +1 -0
  200. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs +130 -0
  201. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs.map +1 -0
  202. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs +64 -0
  203. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs.map +1 -0
  204. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs +108 -0
  205. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs.map +1 -0
  206. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs +44 -0
  207. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs.map +1 -0
  208. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs +157 -0
  209. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs.map +1 -0
  210. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs +100 -0
  211. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs.map +1 -0
  212. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs +71 -0
  213. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs.map +1 -0
  214. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs +62 -0
  215. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs.map +1 -0
  216. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs +200 -0
  217. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs.map +1 -0
  218. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs +25 -0
  219. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs.map +1 -0
  220. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs +31 -0
  221. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs.map +1 -0
  222. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs +34 -0
  223. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs.map +1 -0
  224. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs +92 -0
  225. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs.map +1 -0
  226. package/es/DatePicker/core/PickerPanel/context.mjs +48 -0
  227. package/es/DatePicker/core/PickerPanel/context.mjs.map +1 -0
  228. package/es/DatePicker/core/PickerPanel/index.d.mts +1 -0
  229. package/es/DatePicker/core/PickerPanel/index.mjs +175 -0
  230. package/es/DatePicker/core/PickerPanel/index.mjs.map +1 -0
  231. package/es/DatePicker/core/PickerPopup.mjs +118 -0
  232. package/es/DatePicker/core/PickerPopup.mjs.map +1 -0
  233. package/es/DatePicker/core/generate/dayjs.mjs +109 -0
  234. package/es/DatePicker/core/generate/dayjs.mjs.map +1 -0
  235. package/es/DatePicker/core/generate/index.d.mts +40 -0
  236. package/es/DatePicker/core/hooks/react.mjs +58 -0
  237. package/es/DatePicker/core/hooks/react.mjs.map +1 -0
  238. package/es/DatePicker/core/hooks/useLocale.mjs +51 -0
  239. package/es/DatePicker/core/hooks/useLocale.mjs.map +1 -0
  240. package/es/DatePicker/core/hooks/useSemantic.mjs +20 -0
  241. package/es/DatePicker/core/hooks/useSemantic.mjs.map +1 -0
  242. package/es/DatePicker/core/hooks/useSyncState.mjs +25 -0
  243. package/es/DatePicker/core/hooks/useSyncState.mjs.map +1 -0
  244. package/es/DatePicker/core/hooks/useTimeConfig.mjs +173 -0
  245. package/es/DatePicker/core/hooks/useTimeConfig.mjs.map +1 -0
  246. package/es/DatePicker/core/hooks/useTimeInfo.mjs +110 -0
  247. package/es/DatePicker/core/hooks/useTimeInfo.mjs.map +1 -0
  248. package/es/DatePicker/core/hooks/useToggleDates.mjs +21 -0
  249. package/es/DatePicker/core/hooks/useToggleDates.mjs.map +1 -0
  250. package/es/DatePicker/core/index.d.mts +5 -0
  251. package/es/DatePicker/core/index.mjs +9 -0
  252. package/es/DatePicker/core/index.mjs.map +1 -0
  253. package/es/DatePicker/core/interface.d.mts +325 -0
  254. package/es/DatePicker/core/locale/common.mjs +11 -0
  255. package/es/DatePicker/core/locale/common.mjs.map +1 -0
  256. package/es/DatePicker/core/locale/en_US.mjs +39 -0
  257. package/es/DatePicker/core/locale/en_US.mjs.map +1 -0
  258. package/es/DatePicker/core/utils/common.mjs +73 -0
  259. package/es/DatePicker/core/utils/common.mjs.map +1 -0
  260. package/es/DatePicker/core/utils/dateUtil.mjs +106 -0
  261. package/es/DatePicker/core/utils/dateUtil.mjs.map +1 -0
  262. package/es/DatePicker/core/utils/miscUtil.mjs +46 -0
  263. package/es/DatePicker/core/utils/miscUtil.mjs.map +1 -0
  264. package/es/DatePicker/core/utils/uiUtil.mjs +9 -0
  265. package/es/DatePicker/core/utils/uiUtil.mjs.map +1 -0
  266. package/es/DatePicker/dateGenerateConfig.mjs +52 -0
  267. package/es/DatePicker/dateGenerateConfig.mjs.map +1 -0
  268. package/es/DatePicker/generateConfig.mjs +12 -0
  269. package/es/DatePicker/generateConfig.mjs.map +1 -0
  270. package/es/DatePicker/generatePicker.d.mts +12 -0
  271. package/es/DatePicker/generatePicker.mjs +22 -0
  272. package/es/DatePicker/generatePicker.mjs.map +1 -0
  273. package/es/DatePicker/index.d.mts +8 -3
  274. package/es/DatePicker/index.mjs +5 -1
  275. package/es/DatePicker/legacyDate.mjs +58 -0
  276. package/es/DatePicker/legacyDate.mjs.map +1 -0
  277. package/es/DatePicker/locale.d.mts +15 -0
  278. package/es/DatePicker/locale.mjs +143 -0
  279. package/es/DatePicker/locale.mjs.map +1 -0
  280. package/es/DatePicker/semantic.mjs +29 -0
  281. package/es/DatePicker/semantic.mjs.map +1 -0
  282. package/es/DatePicker/style.mjs +3 -155
  283. package/es/DatePicker/style.mjs.map +1 -1
  284. package/es/DatePicker/type.d.mts +294 -27
  285. package/es/DatePicker/usePanelKeyboard.mjs +230 -0
  286. package/es/DatePicker/usePanelKeyboard.mjs.map +1 -0
  287. package/es/DatePicker/usePickerShared.mjs +106 -0
  288. package/es/DatePicker/usePickerShared.mjs.map +1 -0
  289. package/es/DatePicker/usePresetActive.mjs +49 -0
  290. package/es/DatePicker/usePresetActive.mjs.map +1 -0
  291. package/es/DraggablePanel/atoms.mjs +6 -6
  292. package/es/DraggablePanel/atoms.mjs.map +1 -1
  293. package/es/DraggableSideNav/DraggableSideNav.mjs +5 -5
  294. package/es/DraggableSideNav/DraggableSideNav.mjs.map +1 -1
  295. package/es/Drawer/Drawer.mjs +2 -2
  296. package/es/Drawer/Drawer.mjs.map +1 -1
  297. package/es/Drawer/atoms.d.mts +1 -0
  298. package/es/Drawer/atoms.mjs +7 -7
  299. package/es/Drawer/atoms.mjs.map +1 -1
  300. package/es/Drawer/constants.d.mts +1 -0
  301. package/es/Drawer/style.mjs.map +1 -1
  302. package/es/DropdownMenu/atoms.mjs +23 -23
  303. package/es/DropdownMenu/atoms.mjs.map +1 -1
  304. package/es/DropdownMenu/sharedStyle.mjs +2 -2
  305. package/es/DropdownMenu/sharedStyle.mjs.map +1 -1
  306. package/es/EditableText/ControlInput.mjs +42 -29
  307. package/es/EditableText/ControlInput.mjs.map +1 -1
  308. package/es/EditableText/EditableText.mjs +2 -2
  309. package/es/EditableText/EditableText.mjs.map +1 -1
  310. package/es/EditorSlashMenu/atoms.mjs +12 -12
  311. package/es/EditorSlashMenu/atoms.mjs.map +1 -1
  312. package/es/EmojiPicker/EmojiPicker.mjs +10 -16
  313. package/es/EmojiPicker/EmojiPicker.mjs.map +1 -1
  314. package/es/EmojiPicker/loadEmojiData.mjs +6 -0
  315. package/es/EmojiPicker/loadEmojiData.mjs.map +1 -0
  316. package/es/EmojiPicker/useEmojiMartI18n.mjs +37 -0
  317. package/es/EmojiPicker/useEmojiMartI18n.mjs.map +1 -0
  318. package/es/FileTypeIcon/type.d.mts +1 -0
  319. package/es/FloatingPanel/FloatingPanel.mjs +2 -2
  320. package/es/FloatingPanel/FloatingPanel.mjs.map +1 -1
  321. package/es/FloatingPanel/style.mjs +3 -2
  322. package/es/FloatingPanel/style.mjs.map +1 -1
  323. package/es/Form/Form.mjs +6 -2
  324. package/es/Form/Form.mjs.map +1 -1
  325. package/es/Form/style.mjs +3 -3
  326. package/es/Form/style.mjs.map +1 -1
  327. package/es/Form/type.d.mts +8 -0
  328. package/es/FormKit/List.mjs +2 -2
  329. package/es/FormKit/List.mjs.map +1 -1
  330. package/es/FormKit/engine/tanstack.mjs +1 -1
  331. package/es/FormKit/engine/tanstack.mjs.map +1 -1
  332. package/es/Grid/style.mjs +1 -1
  333. package/es/Grid/style.mjs.map +1 -1
  334. package/es/GroupAvatar/type.d.mts +1 -0
  335. package/es/Highlighter/FullFeatured.mjs +2 -2
  336. package/es/Highlighter/FullFeatured.mjs.map +1 -1
  337. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs +2 -2
  338. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
  339. package/es/Highlighter/SyntaxHighlighter/index.mjs +4 -4
  340. package/es/Highlighter/SyntaxHighlighter/index.mjs.map +1 -1
  341. package/es/Highlighter/const.d.mts +1 -0
  342. package/es/Highlighter/style.mjs +2 -2
  343. package/es/Highlighter/style.mjs.map +1 -1
  344. package/es/HotkeyInput/HotkeyInput.mjs +1 -1
  345. package/es/HotkeyInput/HotkeyInput.mjs.map +1 -1
  346. package/es/HtmlPreview/HtmlPreview.mjs +2 -2
  347. package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
  348. package/es/Icon/Icon.mjs +2 -2
  349. package/es/Icon/Icon.mjs.map +1 -1
  350. package/es/Image/type.d.mts +1 -0
  351. package/es/Image/viewer/ImageViewer.mjs +2 -1
  352. package/es/Image/viewer/ImageViewer.mjs.map +1 -1
  353. package/es/Image/viewer/Toolbar.mjs +19 -6
  354. package/es/Image/viewer/Toolbar.mjs.map +1 -1
  355. package/es/Image/viewer/ViewerChrome.mjs.map +1 -1
  356. package/es/ImageSelect/ImageSelect.mjs +1 -1
  357. package/es/ImageSelect/ImageSelect.mjs.map +1 -1
  358. package/es/Input/Input.mjs +7 -5
  359. package/es/Input/Input.mjs.map +1 -1
  360. package/es/Input/TextArea.mjs +1 -1
  361. package/es/Input/TextArea.mjs.map +1 -1
  362. package/es/Input/style.d.mts +1 -0
  363. package/es/Input/style.mjs +3 -3
  364. package/es/Input/style.mjs.map +1 -1
  365. package/es/Input/type.d.mts +1 -0
  366. package/es/List/ListRow.mjs +3 -3
  367. package/es/List/ListRow.mjs.map +1 -1
  368. package/es/Markdown/Markdown.mjs +2 -2
  369. package/es/Markdown/Markdown.mjs.map +1 -1
  370. package/es/Markdown/Typography.mjs +2 -2
  371. package/es/Markdown/Typography.mjs.map +1 -1
  372. package/es/Markdown/plugins/remarkColor.d.mts +1 -0
  373. package/es/Markdown/plugins/remarkGfmPlus.d.mts +1 -0
  374. package/es/Markdown/plugins/remarkVideo.d.mts +1 -0
  375. package/es/Mermaid/FullFeatured.mjs +2 -2
  376. package/es/Mermaid/FullFeatured.mjs.map +1 -1
  377. package/es/Mermaid/SyntaxMermaid/index.mjs +4 -4
  378. package/es/Mermaid/SyntaxMermaid/index.mjs.map +1 -1
  379. package/es/Mermaid/const.d.mts +1 -0
  380. package/es/Modal/atoms.d.mts +1 -0
  381. package/es/Modal/atoms.mjs +8 -8
  382. package/es/Modal/atoms.mjs.map +1 -1
  383. package/es/Modal/constants.d.mts +1 -0
  384. package/es/Modal/type.d.mts +1 -0
  385. package/es/Pagination/Pagination.mjs +182 -42
  386. package/es/Pagination/Pagination.mjs.map +1 -1
  387. package/es/Pagination/helpers.mjs +3 -3
  388. package/es/Pagination/helpers.mjs.map +1 -1
  389. package/es/Pagination/index.d.mts +2 -2
  390. package/es/Pagination/marker.stylex.mjs +9 -0
  391. package/es/Pagination/marker.stylex.mjs.map +1 -0
  392. package/es/Pagination/style.mjs +74 -4
  393. package/es/Pagination/style.mjs.map +1 -1
  394. package/es/Pagination/type.d.mts +41 -3
  395. package/es/Popover/PopoverInGroup.mjs +3 -3
  396. package/es/Popover/PopoverInGroup.mjs.map +1 -1
  397. package/es/Popover/atoms.mjs +7 -7
  398. package/es/Popover/atoms.mjs.map +1 -1
  399. package/es/Popover/style.mjs +1 -1
  400. package/es/Popover/style.mjs.map +1 -1
  401. package/es/ProTable/ProTable.d.mts +11 -0
  402. package/es/ProTable/ProTable.mjs +208 -0
  403. package/es/ProTable/ProTable.mjs.map +1 -0
  404. package/es/ProTable/hooks/useColumnRequest.mjs +55 -0
  405. package/es/ProTable/hooks/useColumnRequest.mjs.map +1 -0
  406. package/es/ProTable/hooks/useColumnsState.mjs +37 -0
  407. package/es/ProTable/hooks/useColumnsState.mjs.map +1 -0
  408. package/es/ProTable/hooks/useDelayedFlag.mjs +18 -0
  409. package/es/ProTable/hooks/useDelayedFlag.mjs.map +1 -0
  410. package/es/ProTable/hooks/useDensity.mjs +15 -0
  411. package/es/ProTable/hooks/useDensity.mjs.map +1 -0
  412. package/es/ProTable/hooks/useFetchData.mjs +97 -0
  413. package/es/ProTable/hooks/useFetchData.mjs.map +1 -0
  414. package/es/ProTable/hooks/useFullscreen.mjs +22 -0
  415. package/es/ProTable/hooks/useFullscreen.mjs.map +1 -0
  416. package/es/ProTable/hooks/usePageInfo.mjs +35 -0
  417. package/es/ProTable/hooks/usePageInfo.mjs.map +1 -0
  418. package/es/ProTable/hooks/useProColumns.mjs +123 -0
  419. package/es/ProTable/hooks/useProColumns.mjs.map +1 -0
  420. package/es/ProTable/hooks/useProLoading.mjs +19 -0
  421. package/es/ProTable/hooks/useProLoading.mjs.map +1 -0
  422. package/es/ProTable/hooks/useProLocale.mjs +22 -0
  423. package/es/ProTable/hooks/useProLocale.mjs.map +1 -0
  424. package/es/ProTable/hooks/useProRequest.mjs +137 -0
  425. package/es/ProTable/hooks/useProRequest.mjs.map +1 -0
  426. package/es/ProTable/hooks/useRowCache.mjs +11 -0
  427. package/es/ProTable/hooks/useRowCache.mjs.map +1 -0
  428. package/es/ProTable/hooks/useSearchForm.mjs +141 -0
  429. package/es/ProTable/hooks/useSearchForm.mjs.map +1 -0
  430. package/es/ProTable/hooks/useTableBindings.mjs +39 -0
  431. package/es/ProTable/hooks/useTableBindings.mjs.map +1 -0
  432. package/es/ProTable/hooks/useTableSelection.mjs +14 -0
  433. package/es/ProTable/hooks/useTableSelection.mjs.map +1 -0
  434. package/es/ProTable/index.d.mts +4 -0
  435. package/es/ProTable/index.d.ts +1 -0
  436. package/es/ProTable/index.js +1 -0
  437. package/es/ProTable/index.mjs +3 -0
  438. package/es/ProTable/locale.d.mts +15 -0
  439. package/es/ProTable/locale.mjs +66 -0
  440. package/es/ProTable/locale.mjs.map +1 -0
  441. package/es/ProTable/parts/ColumnSetting.mjs +155 -0
  442. package/es/ProTable/parts/ColumnSetting.mjs.map +1 -0
  443. package/es/ProTable/parts/FieldControl.mjs +134 -0
  444. package/es/ProTable/parts/FieldControl.mjs.map +1 -0
  445. package/es/ProTable/parts/KeywordInput.mjs +19 -0
  446. package/es/ProTable/parts/KeywordInput.mjs.map +1 -0
  447. package/es/ProTable/parts/LightFilter.mjs +70 -0
  448. package/es/ProTable/parts/LightFilter.mjs.map +1 -0
  449. package/es/ProTable/parts/OptionPopover.mjs +17 -0
  450. package/es/ProTable/parts/OptionPopover.mjs.map +1 -0
  451. package/es/ProTable/parts/SearchForm.mjs +180 -0
  452. package/es/ProTable/parts/SearchForm.mjs.map +1 -0
  453. package/es/ProTable/parts/SearchSection.mjs +33 -0
  454. package/es/ProTable/parts/SearchSection.mjs.map +1 -0
  455. package/es/ProTable/parts/TableAlert.mjs +38 -0
  456. package/es/ProTable/parts/TableAlert.mjs.map +1 -0
  457. package/es/ProTable/parts/Toolbar.mjs +50 -0
  458. package/es/ProTable/parts/Toolbar.mjs.map +1 -0
  459. package/es/ProTable/parts/ToolbarOptions.mjs +103 -0
  460. package/es/ProTable/parts/ToolbarOptions.mjs.map +1 -0
  461. package/es/ProTable/parts/renderValue.mjs +118 -0
  462. package/es/ProTable/parts/renderValue.mjs.map +1 -0
  463. package/es/ProTable/style.mjs +287 -0
  464. package/es/ProTable/style.mjs.map +1 -0
  465. package/es/ProTable/type.d.mts +400 -0
  466. package/es/ProTable/utils.mjs +152 -0
  467. package/es/ProTable/utils.mjs.map +1 -0
  468. package/es/Radio/Radio.mjs +3 -3
  469. package/es/Radio/Radio.mjs.map +1 -1
  470. package/es/Radio/type.d.mts +1 -0
  471. package/es/Rate/Rate.mjs +1 -1
  472. package/es/Rate/Rate.mjs.map +1 -1
  473. package/es/ScrollArea/atoms.mjs +4 -4
  474. package/es/ScrollArea/atoms.mjs.map +1 -1
  475. package/es/ScrollShadow/ScrollShadow.mjs +1 -1
  476. package/es/ScrollShadow/ScrollShadow.mjs.map +1 -1
  477. package/es/SearchBar/SearchBar.mjs +31 -25
  478. package/es/SearchBar/SearchBar.mjs.map +1 -1
  479. package/es/Segmented/Segmented.mjs +4 -4
  480. package/es/Segmented/Segmented.mjs.map +1 -1
  481. package/es/Segmented/atoms.d.mts +1 -0
  482. package/es/Segmented/atoms.mjs +2 -2
  483. package/es/Segmented/atoms.mjs.map +1 -1
  484. package/es/Select/Select.mjs +22 -13
  485. package/es/Select/Select.mjs.map +1 -1
  486. package/es/Select/atoms.mjs +5 -5
  487. package/es/Select/atoms.mjs.map +1 -1
  488. package/es/Select/helpers.mjs +8 -1
  489. package/es/Select/helpers.mjs.map +1 -1
  490. package/es/Select/hooks.mjs +8 -4
  491. package/es/Select/hooks.mjs.map +1 -1
  492. package/es/Select/renderOptions.mjs +2 -2
  493. package/es/Select/renderOptions.mjs.map +1 -1
  494. package/es/Select/type.d.mts +7 -0
  495. package/es/Slider/type.d.mts +1 -0
  496. package/es/Switch/Switch.mjs +9 -2
  497. package/es/Switch/Switch.mjs.map +1 -1
  498. package/es/Switch/atoms.d.mts +8 -1
  499. package/es/Switch/atoms.mjs +23 -7
  500. package/es/Switch/atoms.mjs.map +1 -1
  501. package/es/Switch/style.mjs +33 -2
  502. package/es/Switch/style.mjs.map +1 -1
  503. package/es/Table/Column.d.mts +8 -0
  504. package/es/Table/Column.mjs +6 -0
  505. package/es/Table/Column.mjs.map +1 -0
  506. package/es/Table/ColumnGroup.d.mts +11 -0
  507. package/es/Table/ColumnGroup.mjs +6 -0
  508. package/es/Table/ColumnGroup.mjs.map +1 -0
  509. package/es/Table/Table.d.mts +16 -2
  510. package/es/Table/Table.mjs +158 -118
  511. package/es/Table/Table.mjs.map +1 -1
  512. package/es/Table/atoms/cells.d.mts +42 -0
  513. package/es/Table/atoms/cells.mjs +72 -0
  514. package/es/Table/atoms/cells.mjs.map +1 -0
  515. package/es/Table/atoms/index.d.mts +3 -0
  516. package/es/Table/atoms/layout.d.mts +44 -0
  517. package/es/Table/atoms/layout.mjs +62 -0
  518. package/es/Table/atoms/layout.mjs.map +1 -0
  519. package/es/Table/constants.mjs +16 -0
  520. package/es/Table/constants.mjs.map +1 -0
  521. package/es/Table/engine/fixed.d.mts +1 -0
  522. package/es/Table/engine/fixed.mjs +53 -0
  523. package/es/Table/engine/fixed.mjs.map +1 -0
  524. package/es/Table/engine/types.d.mts +1 -0
  525. package/es/Table/engine/useTableEngine.mjs +180 -0
  526. package/es/Table/engine/useTableEngine.mjs.map +1 -0
  527. package/es/Table/index.d.mts +7 -2
  528. package/es/Table/index.mjs +4 -1
  529. package/es/Table/internal.d.mts +3 -0
  530. package/es/Table/pipeline/columnUtils.d.mts +5 -0
  531. package/es/Table/pipeline/columnUtils.mjs +58 -0
  532. package/es/Table/pipeline/columnUtils.mjs.map +1 -0
  533. package/es/Table/pipeline/convertChildrenToColumns.mjs +24 -0
  534. package/es/Table/pipeline/convertChildrenToColumns.mjs.map +1 -0
  535. package/es/Table/pipeline/normalizeColumns.mjs +140 -0
  536. package/es/Table/pipeline/normalizeColumns.mjs.map +1 -0
  537. package/es/Table/pipeline/selectionUtils.d.mts +9 -0
  538. package/es/Table/pipeline/selectionUtils.mjs +115 -0
  539. package/es/Table/pipeline/selectionUtils.mjs.map +1 -0
  540. package/es/Table/pipeline/useBreakpoint.mjs +36 -0
  541. package/es/Table/pipeline/useBreakpoint.mjs.map +1 -0
  542. package/es/Table/pipeline/useExpandable.mjs +45 -0
  543. package/es/Table/pipeline/useExpandable.mjs.map +1 -0
  544. package/es/Table/pipeline/useFilter.mjs +52 -0
  545. package/es/Table/pipeline/useFilter.mjs.map +1 -0
  546. package/es/Table/pipeline/useSelection.mjs +302 -0
  547. package/es/Table/pipeline/useSelection.mjs.map +1 -0
  548. package/es/Table/pipeline/useSorter.mjs +146 -0
  549. package/es/Table/pipeline/useSorter.mjs.map +1 -0
  550. package/es/Table/pipeline/useTableLocale.mjs +30 -0
  551. package/es/Table/pipeline/useTableLocale.mjs.map +1 -0
  552. package/es/Table/pipeline/useTableState.mjs +118 -0
  553. package/es/Table/pipeline/useTableState.mjs.map +1 -0
  554. package/es/Table/pipeline/useVirtualLayout.mjs +80 -0
  555. package/es/Table/pipeline/useVirtualLayout.mjs.map +1 -0
  556. package/es/Table/render/Body.mjs +150 -0
  557. package/es/Table/render/Body.mjs.map +1 -0
  558. package/es/Table/render/BodyCell.mjs +87 -0
  559. package/es/Table/render/BodyCell.mjs.map +1 -0
  560. package/es/Table/render/CellShell.mjs +84 -0
  561. package/es/Table/render/CellShell.mjs.map +1 -0
  562. package/es/Table/render/ExpandIcon.mjs +28 -0
  563. package/es/Table/render/ExpandIcon.mjs.map +1 -0
  564. package/es/Table/render/FilterDropdown.mjs +139 -0
  565. package/es/Table/render/FilterDropdown.mjs.map +1 -0
  566. package/es/Table/render/FilterPanel.mjs +152 -0
  567. package/es/Table/render/FilterPanel.mjs.map +1 -0
  568. package/es/Table/render/FixedFrost.mjs +122 -0
  569. package/es/Table/render/FixedFrost.mjs.map +1 -0
  570. package/es/Table/render/FixedHolder.mjs +51 -0
  571. package/es/Table/render/FixedHolder.mjs.map +1 -0
  572. package/es/Table/render/Header.mjs +184 -0
  573. package/es/Table/render/Header.mjs.map +1 -0
  574. package/es/Table/render/LoadingSkeleton.mjs +78 -0
  575. package/es/Table/render/LoadingSkeleton.mjs.map +1 -0
  576. package/es/Table/render/PaginationBar.mjs +71 -0
  577. package/es/Table/render/PaginationBar.mjs.map +1 -0
  578. package/es/Table/render/SelectionCells.mjs +111 -0
  579. package/es/Table/render/SelectionCells.mjs.map +1 -0
  580. package/es/Table/render/StickyScrollBar.mjs +99 -0
  581. package/es/Table/render/StickyScrollBar.mjs.map +1 -0
  582. package/es/Table/render/Summary.d.mts +16 -0
  583. package/es/Table/render/Summary.mjs +58 -0
  584. package/es/Table/render/Summary.mjs.map +1 -0
  585. package/es/Table/render/TableView.mjs +215 -0
  586. package/es/Table/render/TableView.mjs.map +1 -0
  587. package/es/Table/render/VirtualBody.mjs +101 -0
  588. package/es/Table/render/VirtualBody.mjs.map +1 -0
  589. package/es/Table/render/context.mjs +15 -0
  590. package/es/Table/render/context.mjs.map +1 -0
  591. package/es/Table/render/filterUtils.mjs +22 -0
  592. package/es/Table/render/filterUtils.mjs.map +1 -0
  593. package/es/Table/render/tableHelpers.mjs +27 -0
  594. package/es/Table/render/tableHelpers.mjs.map +1 -0
  595. package/es/Table/render/useColGroups.mjs +23 -0
  596. package/es/Table/render/useColGroups.mjs.map +1 -0
  597. package/es/Table/render/useScrollSync.mjs +104 -0
  598. package/es/Table/render/useScrollSync.mjs.map +1 -0
  599. package/es/Table/render/useViewContexts.mjs +134 -0
  600. package/es/Table/render/useViewContexts.mjs.map +1 -0
  601. package/es/Table/semantic.mjs +45 -0
  602. package/es/Table/semantic.mjs.map +1 -0
  603. package/es/Table/store/createTableStore.d.mts +1 -0
  604. package/es/Table/store/createTableStore.mjs +40 -0
  605. package/es/Table/store/createTableStore.mjs.map +1 -0
  606. package/es/Table/store/hooks.mjs +24 -0
  607. package/es/Table/store/hooks.mjs.map +1 -0
  608. package/es/Table/style.mjs +179 -90
  609. package/es/Table/style.mjs.map +1 -1
  610. package/es/Table/type.d.mts +467 -37
  611. package/es/Table/useTableController.mjs +293 -0
  612. package/es/Table/useTableController.mjs.map +1 -0
  613. package/es/Tabs/Tabs.mjs +37 -23
  614. package/es/Tabs/Tabs.mjs.map +1 -1
  615. package/es/Tabs/atoms.mjs +2 -2
  616. package/es/Tabs/atoms.mjs.map +1 -1
  617. package/es/Tabs/style.d.mts +1 -1
  618. package/es/Tag/Tag.mjs +2 -2
  619. package/es/Tag/Tag.mjs.map +1 -1
  620. package/es/Text/Text.mjs +2 -2
  621. package/es/Text/Text.mjs.map +1 -1
  622. package/es/Text/style.d.mts +1 -0
  623. package/es/Text/style.mjs +3 -3
  624. package/es/Text/style.mjs.map +1 -1
  625. package/es/Toast/dodge.mjs +0 -1
  626. package/es/Toast/dodge.mjs.map +1 -1
  627. package/es/Toast/dodge.stylex.mjs +1 -4
  628. package/es/Toast/dodge.stylex.mjs.map +1 -1
  629. package/es/Toast/style.mjs +1 -1
  630. package/es/Toast/style.mjs.map +1 -1
  631. package/es/ToggleGroup/ToggleGroup.mjs +4 -4
  632. package/es/ToggleGroup/ToggleGroup.mjs.map +1 -1
  633. package/es/ToggleGroup/atoms.d.mts +1 -0
  634. package/es/ToggleGroup/atoms.mjs +2 -2
  635. package/es/ToggleGroup/atoms.mjs.map +1 -1
  636. package/es/Tooltip/TooltipGroup.mjs +3 -3
  637. package/es/Tooltip/TooltipGroup.mjs.map +1 -1
  638. package/es/Tooltip/TooltipInGroup.mjs +1 -1
  639. package/es/Tooltip/TooltipInGroup.mjs.map +1 -1
  640. package/es/Tooltip/TooltipStandalone.mjs +4 -4
  641. package/es/Tooltip/TooltipStandalone.mjs.map +1 -1
  642. package/es/Tooltip/style.mjs +2 -2
  643. package/es/Tooltip/style.mjs.map +1 -1
  644. package/es/Tree/Tree.mjs +3 -3
  645. package/es/Tree/Tree.mjs.map +1 -1
  646. package/es/Tree/TreeNode.mjs +2 -2
  647. package/es/Tree/TreeNode.mjs.map +1 -1
  648. package/es/Video/Video.mjs +46 -0
  649. package/es/Video/Video.mjs.map +1 -0
  650. package/es/Video/context.mjs +14 -0
  651. package/es/Video/context.mjs.map +1 -0
  652. package/es/Video/index.d.mts +23 -39
  653. package/es/Video/index.mjs +21 -111
  654. package/es/Video/index.mjs.map +1 -1
  655. package/es/Video/parts/Caption.d.mts +9 -0
  656. package/es/Video/parts/Caption.mjs +37 -0
  657. package/es/Video/parts/Caption.mjs.map +1 -0
  658. package/es/Video/parts/CenterPlay.d.mts +8 -0
  659. package/es/Video/parts/CenterPlay.mjs +34 -0
  660. package/es/Video/parts/CenterPlay.mjs.map +1 -0
  661. package/es/Video/parts/Controls.d.mts +9 -0
  662. package/es/Video/parts/Controls.mjs +128 -0
  663. package/es/Video/parts/Controls.mjs.map +1 -0
  664. package/es/Video/parts/Frame.d.mts +9 -0
  665. package/es/Video/parts/Frame.mjs +101 -0
  666. package/es/Video/parts/Frame.mjs.map +1 -0
  667. package/es/Video/parts/HoverPreview.mjs +93 -0
  668. package/es/Video/parts/HoverPreview.mjs.map +1 -0
  669. package/es/Video/parts/LoadError.d.mts +8 -0
  670. package/es/Video/parts/LoadError.mjs +47 -0
  671. package/es/Video/parts/LoadError.mjs.map +1 -0
  672. package/es/Video/parts/PlayPauseIcon.mjs +48 -0
  673. package/es/Video/parts/PlayPauseIcon.mjs.map +1 -0
  674. package/es/Video/parts/RateMenu.mjs +48 -0
  675. package/es/Video/parts/RateMenu.mjs.map +1 -0
  676. package/es/Video/parts/Root.d.mts +9 -0
  677. package/es/Video/parts/Root.mjs +110 -0
  678. package/es/Video/parts/Root.mjs.map +1 -0
  679. package/es/Video/parts/SectionList.d.mts +9 -0
  680. package/es/Video/parts/SectionList.mjs +32 -0
  681. package/es/Video/parts/SectionList.mjs.map +1 -0
  682. package/es/Video/parts/SectionMenu.mjs +63 -0
  683. package/es/Video/parts/SectionMenu.mjs.map +1 -0
  684. package/es/Video/parts/Timeline.d.mts +9 -0
  685. package/es/Video/parts/Timeline.mjs +169 -0
  686. package/es/Video/parts/Timeline.mjs.map +1 -0
  687. package/es/Video/store.mjs +241 -0
  688. package/es/Video/store.mjs.map +1 -0
  689. package/es/Video/style.mjs +393 -23
  690. package/es/Video/style.mjs.map +1 -1
  691. package/es/Video/time.mjs +60 -0
  692. package/es/Video/time.mjs.map +1 -0
  693. package/es/Video/type.d.mts +125 -0
  694. package/es/Video/useControlsIdle.mjs +39 -0
  695. package/es/Video/useControlsIdle.mjs.map +1 -0
  696. package/es/Video/useFullscreen.mjs +17 -0
  697. package/es/Video/useFullscreen.mjs.map +1 -0
  698. package/es/Video/useKeyboard.mjs +60 -0
  699. package/es/Video/useKeyboard.mjs.map +1 -0
  700. package/es/Video/useVideo.d.mts +9 -0
  701. package/es/Video/useVideo.mjs +17 -0
  702. package/es/Video/useVideo.mjs.map +1 -0
  703. package/es/awesome/Features/FeatureItem.mjs +2 -2
  704. package/es/awesome/Features/FeatureItem.mjs.map +1 -1
  705. package/es/awesome/Giscus/style.mjs +9 -9
  706. package/es/awesome/Giscus/style.mjs.map +1 -1
  707. package/es/awesome/Grainient/Grainient.d.mts +11 -0
  708. package/es/awesome/Grainient/Grainient.mjs +314 -0
  709. package/es/awesome/Grainient/Grainient.mjs.map +1 -0
  710. package/es/awesome/Grainient/index.d.mts +3 -0
  711. package/es/awesome/Grainient/style.mjs +23 -0
  712. package/es/awesome/Grainient/style.mjs.map +1 -0
  713. package/es/awesome/Grainient/type.d.mts +121 -0
  714. package/es/awesome/GridBackground/GridBackground.mjs +1 -1
  715. package/es/awesome/GridBackground/GridBackground.mjs.map +1 -1
  716. package/es/awesome/GridBackground/GridShowcase.mjs +4 -4
  717. package/es/awesome/GridBackground/GridShowcase.mjs.map +1 -1
  718. package/es/awesome/Hero/Hero.mjs +3 -3
  719. package/es/awesome/Hero/Hero.mjs.map +1 -1
  720. package/es/awesome/InstallBanner/InstallBanner.mjs +2 -2
  721. package/es/awesome/InstallBanner/InstallBanner.mjs.map +1 -1
  722. package/es/awesome/LandingHero/LandingHero.mjs +3 -3
  723. package/es/awesome/LandingHero/LandingHero.mjs.map +1 -1
  724. package/es/awesome/LogoMarquee/LogoMarquee.mjs +2 -2
  725. package/es/awesome/LogoMarquee/LogoMarquee.mjs.map +1 -1
  726. package/es/awesome/Spline/ParentSize.mjs +1 -1
  727. package/es/awesome/Spline/ParentSize.mjs.map +1 -1
  728. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs +4 -4
  729. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
  730. package/es/awesome/index.d.mts +4 -1
  731. package/es/awesome/index.mjs +2 -1
  732. package/es/awesome/landingActions.mjs +2 -2
  733. package/es/awesome/landingActions.mjs.map +1 -1
  734. package/es/chat/BackBottom/BackBottom.mjs +1 -1
  735. package/es/chat/BackBottom/BackBottom.mjs.map +1 -1
  736. package/es/chat/BackBottom/type.d.mts +2 -2
  737. package/es/chat/ChatItem/ChatItem.mjs +2 -2
  738. package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
  739. package/es/chat/EditableMessage/EditableMessage.mjs +4 -4
  740. package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
  741. package/es/chat/EditableMessageList/EditableMessageList.mjs +2 -2
  742. package/es/chat/EditableMessageList/EditableMessageList.mjs.map +1 -1
  743. package/es/chat/EditableMessageList/messageReducer.mjs +30 -23
  744. package/es/chat/EditableMessageList/messageReducer.mjs.map +1 -1
  745. package/es/chat/MessageInput/MessageInput.mjs +3 -3
  746. package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
  747. package/es/chat/MessageModal/MessageModal.mjs +1 -1
  748. package/es/chat/MessageModal/MessageModal.mjs.map +1 -1
  749. package/es/chat/TokenTag/TokenTag.mjs +2 -3
  750. package/es/chat/TokenTag/TokenTag.mjs.map +1 -1
  751. package/es/color/index.d.mts +2 -1
  752. package/es/color/index.mjs +2 -1
  753. package/es/color/status/error.mjs +67 -0
  754. package/es/color/status/error.mjs.map +1 -0
  755. package/es/color/status/index.d.mts +11 -0
  756. package/es/color/status/index.mjs +15 -0
  757. package/es/color/status/index.mjs.map +1 -0
  758. package/es/color/status/info.mjs +67 -0
  759. package/es/color/status/info.mjs.map +1 -0
  760. package/es/color/status/success.mjs +67 -0
  761. package/es/color/status/success.mjs.map +1 -0
  762. package/es/color/status/warning.mjs +67 -0
  763. package/es/color/status/warning.mjs.map +1 -0
  764. package/es/color/types.d.mts +1 -0
  765. package/es/dashboard/AuthLayout/Aside.d.mts +10 -0
  766. package/es/dashboard/AuthLayout/Aside.mjs +31 -0
  767. package/es/dashboard/AuthLayout/Aside.mjs.map +1 -0
  768. package/es/dashboard/AuthLayout/AuthLayout.d.mts +3 -1
  769. package/es/dashboard/AuthLayout/AuthLayout.mjs +97 -37
  770. package/es/dashboard/AuthLayout/AuthLayout.mjs.map +1 -1
  771. package/es/dashboard/AuthLayout/index.d.mts +3 -2
  772. package/es/dashboard/AuthLayout/style.mjs +109 -1
  773. package/es/dashboard/AuthLayout/style.mjs.map +1 -1
  774. package/es/dashboard/AuthLayout/type.d.mts +38 -2
  775. package/es/dashboard/AuthTools/AuthLocaleSwitch.d.mts +10 -0
  776. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs +33 -0
  777. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs.map +1 -0
  778. package/es/dashboard/AuthTools/AuthThemeSwitch.d.mts +10 -0
  779. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs +59 -0
  780. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs.map +1 -0
  781. package/es/dashboard/AuthTools/index.d.mts +4 -0
  782. package/es/dashboard/AuthTools/style.mjs +27 -0
  783. package/es/dashboard/AuthTools/style.mjs.map +1 -0
  784. package/es/dashboard/AuthTools/type.d.mts +29 -0
  785. package/es/dashboard/ChartGrid/ChartGrid.d.mts +10 -0
  786. package/es/dashboard/ChartGrid/ChartGrid.mjs +19 -0
  787. package/es/dashboard/ChartGrid/ChartGrid.mjs.map +1 -0
  788. package/es/dashboard/ChartGrid/index.d.mts +3 -0
  789. package/es/dashboard/ChartGrid/style.mjs +18 -0
  790. package/es/dashboard/ChartGrid/style.mjs.map +1 -0
  791. package/es/dashboard/ChartGrid/type.d.mts +8 -0
  792. package/es/dashboard/ConsoleNav/ConsoleNav.mjs +3 -3
  793. package/es/dashboard/ConsoleNav/ConsoleNav.mjs.map +1 -1
  794. package/es/dashboard/ConsoleNav/Skeleton.d.mts +15 -0
  795. package/es/dashboard/ConsoleNav/Skeleton.mjs +82 -0
  796. package/es/dashboard/ConsoleNav/Skeleton.mjs.map +1 -0
  797. package/es/dashboard/ConsoleNav/index.d.mts +3 -2
  798. package/es/dashboard/ConsoleNav/style.mjs +20 -2
  799. package/es/dashboard/ConsoleNav/style.mjs.map +1 -1
  800. package/es/dashboard/ConsoleNav/type.d.mts +13 -0
  801. package/es/dashboard/ConsoleShell/ConsoleShell.d.mts +1 -1
  802. package/es/dashboard/ConsoleShell/ConsoleShell.mjs +26 -6
  803. package/es/dashboard/ConsoleShell/ConsoleShell.mjs.map +1 -1
  804. package/es/dashboard/ConsoleShell/style.mjs +11 -1
  805. package/es/dashboard/ConsoleShell/style.mjs.map +1 -1
  806. package/es/dashboard/ConsoleShell/type.d.mts +11 -0
  807. package/es/dashboard/FilterSidebar/FilterSidebar.mjs +18 -17
  808. package/es/dashboard/FilterSidebar/FilterSidebar.mjs.map +1 -1
  809. package/es/dashboard/FilterSidebar/style.mjs +2 -2
  810. package/es/dashboard/FilterSidebar/style.mjs.map +1 -1
  811. package/es/dashboard/FilterStrip/FilterStrip.d.mts +11 -0
  812. package/es/dashboard/FilterStrip/FilterStrip.mjs +55 -0
  813. package/es/dashboard/FilterStrip/FilterStrip.mjs.map +1 -0
  814. package/es/dashboard/FilterStrip/index.d.mts +3 -0
  815. package/es/dashboard/FilterStrip/style.mjs +78 -0
  816. package/es/dashboard/FilterStrip/style.mjs.map +1 -0
  817. package/es/dashboard/FilterStrip/type.d.mts +25 -0
  818. package/es/dashboard/LabelWithKey/LabelWithKey.d.mts +10 -0
  819. package/es/dashboard/LabelWithKey/LabelWithKey.mjs +18 -0
  820. package/es/dashboard/LabelWithKey/LabelWithKey.mjs.map +1 -0
  821. package/es/dashboard/LabelWithKey/index.d.mts +3 -0
  822. package/es/dashboard/LabelWithKey/type.d.mts +11 -0
  823. package/es/dashboard/MetricStrip/MetricCell.mjs +92 -0
  824. package/es/dashboard/MetricStrip/MetricCell.mjs.map +1 -0
  825. package/es/dashboard/MetricStrip/MetricStrip.d.mts +13 -0
  826. package/es/dashboard/MetricStrip/MetricStrip.mjs +47 -0
  827. package/es/dashboard/MetricStrip/MetricStrip.mjs.map +1 -0
  828. package/es/dashboard/MetricStrip/index.d.mts +3 -0
  829. package/es/dashboard/MetricStrip/style.mjs +169 -0
  830. package/es/dashboard/MetricStrip/style.mjs.map +1 -0
  831. package/es/dashboard/MetricStrip/type.d.mts +38 -0
  832. package/es/dashboard/PageSkeleton/PageSkeleton.mjs +20 -18
  833. package/es/dashboard/PageSkeleton/PageSkeleton.mjs.map +1 -1
  834. package/es/dashboard/PageSkeleton/style.mjs +2 -1
  835. package/es/dashboard/PageSkeleton/style.mjs.map +1 -1
  836. package/es/dashboard/PageToolbar/PageToolbar.d.mts +10 -0
  837. package/es/dashboard/PageToolbar/PageToolbar.mjs +22 -0
  838. package/es/dashboard/PageToolbar/PageToolbar.mjs.map +1 -0
  839. package/es/dashboard/PageToolbar/index.d.mts +3 -0
  840. package/es/dashboard/PageToolbar/style.mjs +36 -0
  841. package/es/dashboard/PageToolbar/style.mjs.map +1 -0
  842. package/es/dashboard/PageToolbar/type.d.mts +11 -0
  843. package/es/dashboard/PanelSurface/PanelSurface.d.mts +10 -0
  844. package/es/dashboard/PanelSurface/PanelSurface.mjs +40 -0
  845. package/es/dashboard/PanelSurface/PanelSurface.mjs.map +1 -0
  846. package/es/dashboard/PanelSurface/index.d.mts +3 -0
  847. package/es/dashboard/PanelSurface/style.mjs +25 -0
  848. package/es/dashboard/PanelSurface/style.mjs.map +1 -0
  849. package/es/dashboard/PanelSurface/type.d.mts +17 -0
  850. package/es/dashboard/Section/Section.d.mts +10 -0
  851. package/es/dashboard/Section/Section.mjs +81 -0
  852. package/es/dashboard/Section/Section.mjs.map +1 -0
  853. package/es/dashboard/Section/index.d.mts +3 -0
  854. package/es/dashboard/Section/style.mjs +31 -0
  855. package/es/dashboard/Section/style.mjs.map +1 -0
  856. package/es/dashboard/Section/type.d.mts +23 -0
  857. package/es/dashboard/StatCard/StatCard.d.mts +2 -1
  858. package/es/dashboard/StatCard/StatCard.mjs +29 -91
  859. package/es/dashboard/StatCard/StatCard.mjs.map +1 -1
  860. package/es/dashboard/StatCard/type.d.mts +18 -5
  861. package/es/dashboard/Surface/Surface.d.mts +4 -3
  862. package/es/dashboard/Surface/Surface.mjs +90 -8
  863. package/es/dashboard/Surface/Surface.mjs.map +1 -1
  864. package/es/dashboard/Surface/index.d.mts +3 -2
  865. package/es/dashboard/Surface/link.d.mts +16 -0
  866. package/es/dashboard/Surface/link.mjs +40 -0
  867. package/es/dashboard/Surface/link.mjs.map +1 -0
  868. package/es/dashboard/Surface/marker.stylex.mjs +9 -0
  869. package/es/dashboard/Surface/marker.stylex.mjs.map +1 -0
  870. package/es/dashboard/Surface/style.d.mts +2 -0
  871. package/es/dashboard/Surface/style.mjs +156 -14
  872. package/es/dashboard/Surface/style.mjs.map +1 -1
  873. package/es/dashboard/Surface/type.d.mts +29 -1
  874. package/es/dashboard/TableIconActions/TableIconActions.d.mts +17 -0
  875. package/es/dashboard/TableIconActions/TableIconActions.mjs +39 -0
  876. package/es/dashboard/TableIconActions/TableIconActions.mjs.map +1 -0
  877. package/es/dashboard/TableIconActions/index.d.mts +3 -0
  878. package/es/dashboard/TableIconActions/type.d.mts +17 -0
  879. package/es/dashboard/TitleWithTips/TitleWithTips.d.mts +10 -0
  880. package/es/dashboard/TitleWithTips/TitleWithTips.mjs +28 -0
  881. package/es/dashboard/TitleWithTips/TitleWithTips.mjs.map +1 -0
  882. package/es/dashboard/TitleWithTips/index.d.mts +3 -0
  883. package/es/dashboard/TitleWithTips/type.d.mts +10 -0
  884. package/es/dashboard/index.d.mts +38 -4
  885. package/es/dashboard/index.mjs +18 -4
  886. package/es/eslint/noBaseUiSubpath.mjs +2 -1
  887. package/es/eslint/noBaseUiSubpath.mjs.map +1 -1
  888. package/es/hooks/useControlledState.mjs +20 -0
  889. package/es/hooks/useControlledState.mjs.map +1 -0
  890. package/es/hooks/useHighlight.mjs +2 -2
  891. package/es/hooks/useHighlight.mjs.map +1 -1
  892. package/es/hooks/useHover.mjs +22 -0
  893. package/es/hooks/useHover.mjs.map +1 -0
  894. package/es/hooks/useMarkdown/utils.d.mts +1 -0
  895. package/es/hooks/useScroll.d.mts +8 -0
  896. package/es/hooks/useScroll.mjs +33 -0
  897. package/es/hooks/useScroll.mjs.map +1 -0
  898. package/es/hooks/useSize.mjs +26 -0
  899. package/es/hooks/useSize.mjs.map +1 -0
  900. package/es/i18n/resources/en/colorPicker.d.mts +5 -0
  901. package/es/i18n/resources/en/colorPicker.mjs +5 -0
  902. package/es/i18n/resources/en/colorPicker.mjs.map +1 -1
  903. package/es/i18n/resources/en/datePicker.d.mts +54 -0
  904. package/es/i18n/resources/en/datePicker.mjs +55 -1
  905. package/es/i18n/resources/en/datePicker.mjs.map +1 -1
  906. package/es/i18n/resources/en/index.d.mts +4 -2
  907. package/es/i18n/resources/en/index.mjs +6 -2
  908. package/es/i18n/resources/en/index.mjs.map +1 -1
  909. package/es/i18n/resources/en/table.d.mts +23 -0
  910. package/es/i18n/resources/en/table.mjs +24 -0
  911. package/es/i18n/resources/en/table.mjs.map +1 -0
  912. package/es/i18n/resources/en/video.d.mts +23 -0
  913. package/es/i18n/resources/en/video.mjs +24 -0
  914. package/es/i18n/resources/en/video.mjs.map +1 -0
  915. package/es/i18n/resources/zhCn/colorPicker.d.mts +5 -0
  916. package/es/i18n/resources/zhCn/colorPicker.mjs +5 -0
  917. package/es/i18n/resources/zhCn/colorPicker.mjs.map +1 -1
  918. package/es/i18n/resources/zhCn/datePicker.d.mts +54 -0
  919. package/es/i18n/resources/zhCn/datePicker.mjs +55 -1
  920. package/es/i18n/resources/zhCn/datePicker.mjs.map +1 -1
  921. package/es/i18n/resources/zhCn/index.d.mts +4 -2
  922. package/es/i18n/resources/zhCn/index.mjs +7 -3
  923. package/es/i18n/resources/zhCn/index.mjs.map +1 -1
  924. package/es/i18n/resources/zhCn/table.d.mts +23 -0
  925. package/es/i18n/resources/zhCn/table.mjs +24 -0
  926. package/es/i18n/resources/zhCn/table.mjs.map +1 -0
  927. package/es/i18n/resources/zhCn/video.d.mts +23 -0
  928. package/es/i18n/resources/zhCn/video.mjs +24 -0
  929. package/es/i18n/resources/zhCn/video.mjs.map +1 -0
  930. package/es/i18n/types.d.mts +4 -1
  931. package/es/index.d.mts +21 -8
  932. package/es/index.mjs +18 -9
  933. package/es/internal/menu/itemInterface.d.mts +1 -0
  934. package/es/internal/menu/renderUtils.d.mts +1 -0
  935. package/es/internal/overflow/OverflowList.mjs +71 -0
  936. package/es/internal/overflow/OverflowList.mjs.map +1 -0
  937. package/es/internal/virtual/VirtualScrollArea.mjs +1 -1
  938. package/es/internal/virtual/VirtualScrollArea.mjs.map +1 -1
  939. package/es/mdx/Callout/index.mjs +2 -2
  940. package/es/mdx/Callout/index.mjs.map +1 -1
  941. package/es/mdx/Cards/Card.mjs +2 -2
  942. package/es/mdx/Cards/Card.mjs.map +1 -1
  943. package/es/mdx/Cards/index.mjs +2 -2
  944. package/es/mdx/Cards/index.mjs.map +1 -1
  945. package/es/mdx/Mdx/index.mjs +2 -2
  946. package/es/mdx/Mdx/index.mjs.map +1 -1
  947. package/es/mdx/Steps/index.mjs +2 -2
  948. package/es/mdx/Steps/index.mjs.map +1 -1
  949. package/es/mdx/mdxComponents/Pre.mjs +5 -5
  950. package/es/mdx/mdxComponents/Pre.mjs.map +1 -1
  951. package/es/mdx/mdxComponents/Video.d.mts +2 -1
  952. package/es/mdx/mdxComponents/Video.mjs +5 -3
  953. package/es/mdx/mdxComponents/Video.mjs.map +1 -1
  954. package/es/mobile/ChatInputArea/ChatInputArea.mjs +1 -1
  955. package/es/mobile/ChatInputArea/ChatInputArea.mjs.map +1 -1
  956. package/es/mobile/TabBar/TabBar.mjs +1 -1
  957. package/es/mobile/TabBar/TabBar.mjs.map +1 -1
  958. package/es/node_modules/.pnpm/@eslint_core@1.2.1/node_modules/@eslint/core/dist/esm/types.d.mts +2 -46
  959. package/es/node_modules/.pnpm/@eslint_plugin-kit@0.7.3/node_modules/@eslint/plugin-kit/dist/cjs/index.d.mts +1 -1
  960. package/es/node_modules/.pnpm/@types_estree@1.0.9/node_modules/@types/estree/index.d.mts +1 -4
  961. package/es/node_modules/.pnpm/@types_mdx@2.0.14/node_modules/@types/mdx/types.d.mts +1 -0
  962. package/es/node_modules/.pnpm/eslint@10.12.0_jiti@2.6.1_supports-color@10.2.2/node_modules/eslint/lib/types/index.d.mts +2 -1
  963. package/es/storybook/StoryBook/style.mjs +2 -0
  964. package/es/storybook/StoryBook/style.mjs.map +1 -1
  965. package/es/style.css +3643 -996
  966. package/es/styles/createGlobalStyle.d.mts +1 -0
  967. package/es/styles/createGlobalStyle.mjs +1 -1
  968. package/es/styles/index.d.mts +4 -2
  969. package/es/styles/index.mjs +6 -4
  970. package/es/styles/stylex/cssVar.stylex.mjs +3 -0
  971. package/es/styles/stylex/cssVar.stylex.mjs.map +1 -1
  972. package/es/styles/stylex/props.mjs +2 -2
  973. package/es/styles/stylex/props.mjs.map +1 -1
  974. package/es/styles/theme/createLobeToken.d.mts +12 -7
  975. package/es/styles/theme/createLobeToken.mjs +3 -2
  976. package/es/styles/theme/createLobeToken.mjs.map +1 -1
  977. package/es/styles/theme/customPalette.d.mts +6 -0
  978. package/es/styles/theme/customPalette.mjs +28 -0
  979. package/es/styles/theme/customPalette.mjs.map +1 -0
  980. package/es/styles/theme/customPrimary.d.mts +7 -0
  981. package/es/styles/theme/customPrimary.mjs +101 -0
  982. package/es/styles/theme/customPrimary.mjs.map +1 -0
  983. package/es/styles/theme/generateColorPalette.d.mts +1 -0
  984. package/es/styles/theme/scope.d.mts +9 -5
  985. package/es/styles/theme/scope.mjs +73 -18
  986. package/es/styles/theme/scope.mjs.map +1 -1
  987. package/es/styles/theme/themeCss.d.mts +3 -0
  988. package/es/styles/theme/themeCss.mjs +39 -2
  989. package/es/styles/theme/themeCss.mjs.map +1 -1
  990. package/es/styles/theme/token/legacy.mjs +12 -12
  991. package/es/styles/theme/token/legacy.mjs.map +1 -1
  992. package/es/styles/theme/token/neutral.mjs +17 -9
  993. package/es/styles/theme/token/neutral.mjs.map +1 -1
  994. package/es/styles/theme/token/neutralText.mjs +91 -0
  995. package/es/styles/theme/token/neutralText.mjs.map +1 -0
  996. package/es/styles/theme/token/palette.mjs +16 -41
  997. package/es/styles/theme/token/palette.mjs.map +1 -1
  998. package/es/styles/theme/token/primary.mjs +6 -2
  999. package/es/styles/theme/token/primary.mjs.map +1 -1
  1000. package/es/styles/theme/token/static.mjs +3 -0
  1001. package/es/styles/theme/token/static.mjs.map +1 -1
  1002. package/es/theme.css +301 -290
  1003. package/es/types/customToken.d.mts +1 -0
  1004. package/es/utils/colorMath.mjs +52 -0
  1005. package/es/utils/colorMath.mjs.map +1 -0
  1006. package/es/utils/formatNumber.mjs +7 -0
  1007. package/es/utils/formatNumber.mjs.map +1 -0
  1008. package/es/utils/genCdnUrl.mjs +6 -3
  1009. package/es/utils/genCdnUrl.mjs.map +1 -1
  1010. package/es/utils/hashString.mjs +19 -0
  1011. package/es/utils/hashString.mjs.map +1 -0
  1012. package/es/utils/mergeRefs.mjs +20 -0
  1013. package/es/utils/mergeRefs.mjs.map +1 -0
  1014. package/es/utils/placement.d.mts +5 -5
  1015. package/es/utils/placement.mjs.map +1 -1
  1016. package/package.json +25 -46
  1017. package/es/DatePicker/CalendarPanel.mjs +0 -189
  1018. package/es/DatePicker/CalendarPanel.mjs.map +0 -1
  1019. package/es/DatePicker/PickerShell.mjs +0 -43
  1020. package/es/DatePicker/PickerShell.mjs.map +0 -1
  1021. package/es/DatePicker/calendar.d.mts +0 -4
  1022. package/es/DatePicker/calendar.mjs +0 -46
  1023. package/es/DatePicker/calendar.mjs.map +0 -1
  1024. package/es/Table/FilterMenu.mjs +0 -45
  1025. package/es/Table/FilterMenu.mjs.map +0 -1
  1026. package/es/Table/TableBody.mjs +0 -67
  1027. package/es/Table/TableBody.mjs.map +0 -1
  1028. package/es/Table/TableHead.mjs +0 -58
  1029. package/es/Table/TableHead.mjs.map +0 -1
  1030. package/es/Table/features.mjs +0 -12
  1031. package/es/Table/features.mjs.map +0 -1
  1032. package/es/Table/fixedOffsets.mjs +0 -29
  1033. package/es/Table/fixedOffsets.mjs.map +0 -1
  1034. package/es/Table/marker.stylex.mjs +0 -9
  1035. package/es/Table/marker.stylex.mjs.map +0 -1
  1036. package/es/Table/toColumnDefs.mjs +0 -26
  1037. package/es/Table/toColumnDefs.mjs.map +0 -1
  1038. package/es/Table/useTableState.mjs +0 -99
  1039. package/es/Table/useTableState.mjs.map +0 -1
  1040. package/es/Video/marker.stylex.mjs +0 -9
  1041. package/es/Video/marker.stylex.mjs.map +0 -1
  1042. package/es/dashboard/StatCard/style.mjs +0 -105
  1043. package/es/dashboard/StatCard/style.mjs.map +0 -1
@@ -0,0 +1,108 @@
1
+ import { pointerToPolar, stepCircular, toPosition } from "./geometry.mjs";
2
+ import * as React$1 from "react";
3
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
4
+ import { clsx } from "clsx";
5
+ //#region src/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.tsx
6
+ const STEP_KEYS = {
7
+ ArrowDown: -1,
8
+ ArrowLeft: -1,
9
+ ArrowRight: 1,
10
+ ArrowUp: 1
11
+ };
12
+ function ClockDial({ ariaPrefix, enabledValues, label, numbers, onDone, onPick, pickAt, prefixCls, selected, selectedAngle, selectedInner, selectedOffTick }) {
13
+ const cls = `${prefixCls}-time-clock`;
14
+ const [dragging, setDragging] = React$1.useState(false);
15
+ const lastPickedRef = React$1.useRef(null);
16
+ const applyPointer = (event) => {
17
+ const { angle, distance } = pointerToPolar(event.currentTarget, event.clientX, event.clientY);
18
+ const value = pickAt(angle, distance);
19
+ if (value === void 0 || value === lastPickedRef.current) return;
20
+ lastPickedRef.current = value;
21
+ onPick(value);
22
+ };
23
+ const radius = selectedInner ? 58 : 88;
24
+ const knob = toPosition(selectedAngle, radius);
25
+ return /* @__PURE__ */ jsxs("div", {
26
+ "aria-label": label,
27
+ className: clsx(`${cls}-dial`, dragging && `${cls}-dial-dragging`),
28
+ role: "group",
29
+ style: {
30
+ height: 224,
31
+ width: 224
32
+ },
33
+ tabIndex: 0,
34
+ onPointerCancel: () => setDragging(false),
35
+ onKeyDown: (event) => {
36
+ const direction = STEP_KEYS[event.key];
37
+ if (direction) {
38
+ const next = stepCircular(selected, enabledValues, direction);
39
+ if (next !== void 0) onPick(next);
40
+ } else if (event.key === "Enter") onDone();
41
+ else return;
42
+ event.preventDefault();
43
+ event.stopPropagation();
44
+ },
45
+ onPointerDown: (event) => {
46
+ if (event.button !== 0) return;
47
+ event.currentTarget.setPointerCapture?.(event.pointerId);
48
+ lastPickedRef.current = selected;
49
+ setDragging(true);
50
+ applyPointer(event);
51
+ },
52
+ onPointerMove: (event) => {
53
+ if (dragging) applyPointer(event);
54
+ },
55
+ onPointerUp: (event) => {
56
+ if (!dragging) return;
57
+ applyPointer(event);
58
+ setDragging(false);
59
+ onDone();
60
+ },
61
+ children: [selected !== null && /* @__PURE__ */ jsxs(Fragment$1, { children: [
62
+ /* @__PURE__ */ jsx("span", {
63
+ "aria-hidden": true,
64
+ className: `${cls}-hand`,
65
+ style: {
66
+ height: radius,
67
+ top: 112 - radius,
68
+ transform: `rotate(${selectedAngle}deg)`
69
+ }
70
+ }),
71
+ /* @__PURE__ */ jsx("span", {
72
+ "aria-hidden": true,
73
+ className: `${cls}-center`
74
+ }),
75
+ /* @__PURE__ */ jsx("span", {
76
+ "aria-hidden": true,
77
+ style: {
78
+ left: knob.x,
79
+ top: knob.y
80
+ },
81
+ className: clsx(`${cls}-knob`, selectedInner && `${cls}-knob-inner`, selectedOffTick && `${cls}-knob-off-tick`)
82
+ })
83
+ ] }), numbers.map((number) => {
84
+ const position = toPosition(number.angle, number.inner ? 58 : 88);
85
+ return /* @__PURE__ */ jsx("button", {
86
+ "aria-label": `${ariaPrefix} ${number.value}`,
87
+ "aria-pressed": number.value === selected,
88
+ disabled: number.disabled,
89
+ style: {
90
+ left: position.x,
91
+ top: position.y
92
+ },
93
+ tabIndex: -1,
94
+ type: "button",
95
+ className: clsx(`${cls}-number`, number.inner && `${cls}-number-inner`, number.value === selected && `${cls}-number-selected`),
96
+ onClick: () => {
97
+ onPick(number.value);
98
+ onDone();
99
+ },
100
+ children: number.label
101
+ }, `${number.inner ? "inner" : "outer"}-${number.value}`);
102
+ })]
103
+ });
104
+ }
105
+ //#endregion
106
+ export { ClockDial as default };
107
+
108
+ //# sourceMappingURL=ClockDial.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClockDial.mjs","names":["React"],"sources":["../../../../../../src/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport * as React from 'react';\n\nimport {\n DIAL_SIZE,\n type DialNumber,\n INNER_RADIUS,\n OUTER_RADIUS,\n pointerToPolar,\n stepCircular,\n toPosition,\n} from './geometry';\n\nexport interface ClockDialProps {\n ariaPrefix: string;\n enabledValues: number[];\n label: string;\n numbers: DialNumber[];\n onDone: () => void;\n onPick: (value: number) => void;\n pickAt: (angle: number, distance: number) => number | undefined;\n prefixCls: string;\n selected: number | null;\n selectedAngle: number;\n selectedInner: boolean;\n selectedOffTick: boolean;\n}\n\nconst STEP_KEYS: Record<string, 1 | -1> = {\n ArrowDown: -1,\n ArrowLeft: -1,\n ArrowRight: 1,\n ArrowUp: 1,\n};\n\nexport default function ClockDial({\n ariaPrefix,\n enabledValues,\n label,\n numbers,\n onDone,\n onPick,\n pickAt,\n prefixCls,\n selected,\n selectedAngle,\n selectedInner,\n selectedOffTick,\n}: ClockDialProps) {\n const cls = `${prefixCls}-time-clock`;\n const [dragging, setDragging] = React.useState(false);\n const lastPickedRef = React.useRef<number | null>(null);\n\n const applyPointer = (event: React.PointerEvent<HTMLDivElement>) => {\n const { angle, distance } = pointerToPolar(event.currentTarget, event.clientX, event.clientY);\n const value = pickAt(angle, distance);\n if (value === undefined || value === lastPickedRef.current) return;\n lastPickedRef.current = value;\n onPick(value);\n };\n\n const radius = selectedInner ? INNER_RADIUS : OUTER_RADIUS;\n const knob = toPosition(selectedAngle, radius);\n\n return (\n <div\n aria-label={label}\n className={clsx(`${cls}-dial`, dragging && `${cls}-dial-dragging`)}\n role=\"group\"\n style={{ height: DIAL_SIZE, width: DIAL_SIZE }}\n tabIndex={0}\n onPointerCancel={() => setDragging(false)}\n onKeyDown={(event) => {\n const direction = STEP_KEYS[event.key];\n if (direction) {\n const next = stepCircular(selected, enabledValues, direction);\n if (next !== undefined) onPick(next);\n } else if (event.key === 'Enter') {\n onDone();\n } else {\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n }}\n onPointerDown={(event) => {\n if (event.button !== 0) return;\n event.currentTarget.setPointerCapture?.(event.pointerId);\n lastPickedRef.current = selected;\n setDragging(true);\n applyPointer(event);\n }}\n onPointerMove={(event) => {\n if (dragging) applyPointer(event);\n }}\n onPointerUp={(event) => {\n if (!dragging) return;\n applyPointer(event);\n setDragging(false);\n onDone();\n }}\n >\n {selected !== null && (\n <>\n <span\n aria-hidden\n className={`${cls}-hand`}\n style={{\n height: radius,\n top: DIAL_SIZE / 2 - radius,\n transform: `rotate(${selectedAngle}deg)`,\n }}\n />\n <span aria-hidden className={`${cls}-center`} />\n <span\n aria-hidden\n style={{ left: knob.x, top: knob.y }}\n className={clsx(\n `${cls}-knob`,\n selectedInner && `${cls}-knob-inner`,\n selectedOffTick && `${cls}-knob-off-tick`,\n )}\n />\n </>\n )}\n {numbers.map((number) => {\n const position = toPosition(number.angle, number.inner ? INNER_RADIUS : OUTER_RADIUS);\n return (\n <button\n aria-label={`${ariaPrefix} ${number.value}`}\n aria-pressed={number.value === selected}\n disabled={number.disabled}\n key={`${number.inner ? 'inner' : 'outer'}-${number.value}`}\n style={{ left: position.x, top: position.y }}\n tabIndex={-1}\n type=\"button\"\n className={clsx(\n `${cls}-number`,\n number.inner && `${cls}-number-inner`,\n number.value === selected && `${cls}-number-selected`,\n )}\n onClick={() => {\n onPick(number.value);\n onDone();\n }}\n >\n {number.label}\n </button>\n );\n })}\n </div>\n );\n}\n"],"mappings":";;;;;AA4BA,MAAM,YAAoC;CACxC,WAAW;CACX,WAAW;CACX,YAAY;CACZ,SAAS;AACX;AAEA,SAAwB,UAAU,EAChC,YACA,eACA,OACA,SACA,QACA,QACA,QACA,WACA,UACA,eACA,eACA,mBACiB;CACjB,MAAM,MAAM,GAAG,UAAU;CACzB,MAAM,CAAC,UAAU,eAAeA,QAAM,SAAS,KAAK;CACpD,MAAM,gBAAgBA,QAAM,OAAsB,IAAI;CAEtD,MAAM,gBAAgB,UAA8C;EAClE,MAAM,EAAE,OAAO,aAAa,eAAe,MAAM,eAAe,MAAM,SAAS,MAAM,OAAO;EAC5F,MAAM,QAAQ,OAAO,OAAO,QAAQ;EACpC,IAAI,UAAU,KAAA,KAAa,UAAU,cAAc,SAAS;EAC5D,cAAc,UAAU;EACxB,OAAO,KAAK;CACd;CAEA,MAAM,SAAS,gBAAA,KAAA;CACf,MAAM,OAAO,WAAW,eAAe,MAAM;CAE7C,OACE,qBAAC,OAAD;EACE,cAAY;EACZ,WAAW,KAAK,GAAG,IAAI,QAAQ,YAAY,GAAG,IAAI,eAAe;EACjE,MAAK;EACL,OAAO;GAAE,QAAA;GAAmB,OAAA;EAAiB;EAC7C,UAAU;EACV,uBAAuB,YAAY,KAAK;EACxC,YAAY,UAAU;GACpB,MAAM,YAAY,UAAU,MAAM;GAClC,IAAI,WAAW;IACb,MAAM,OAAO,aAAa,UAAU,eAAe,SAAS;IAC5D,IAAI,SAAS,KAAA,GAAW,OAAO,IAAI;GACrC,OAAO,IAAI,MAAM,QAAQ,SACvB,OAAO;QAEP;GAEF,MAAM,eAAe;GACrB,MAAM,gBAAgB;EACxB;EACA,gBAAgB,UAAU;GACxB,IAAI,MAAM,WAAW,GAAG;GACxB,MAAM,cAAc,oBAAoB,MAAM,SAAS;GACvD,cAAc,UAAU;GACxB,YAAY,IAAI;GAChB,aAAa,KAAK;EACpB;EACA,gBAAgB,UAAU;GACxB,IAAI,UAAU,aAAa,KAAK;EAClC;EACA,cAAc,UAAU;GACtB,IAAI,CAAC,UAAU;GACf,aAAa,KAAK;GAClB,YAAY,KAAK;GACjB,OAAO;EACT;EAnCF,UAAA,CAqCG,aAAa,QACZ,qBAAA,YAAA,EAAA,UAAA;GACE,oBAAC,QAAD;IACE,eAAA;IACA,WAAW,GAAG,IAAI;IAClB,OAAO;KACL,QAAQ;KACR,KAAA,MAAqB;KACrB,WAAW,UAAU,cAAc;IACrC;GACD,CAAA;GACD,oBAAC,QAAD;IAAM,eAAA;IAAY,WAAW,GAAG,IAAI;GAAW,CAAA;GAC/C,oBAAC,QAAD;IACE,eAAA;IACA,OAAO;KAAE,MAAM,KAAK;KAAG,KAAK,KAAK;IAAE;IACnC,WAAW,KACT,GAAG,IAAI,QACP,iBAAiB,GAAG,IAAI,cACxB,mBAAmB,GAAG,IAAI,eAC5B;GACD,CAAA;EACD,EAAA,CAAA,GAEH,QAAQ,KAAK,WAAW;GACvB,MAAM,WAAW,WAAW,OAAO,OAAO,OAAO,QAAA,KAAA,EAAmC;GACpF,OACE,oBAAC,UAAD;IACE,cAAY,GAAG,WAAW,GAAG,OAAO;IACpC,gBAAc,OAAO,UAAU;IAC/B,UAAU,OAAO;IAEjB,OAAO;KAAE,MAAM,SAAS;KAAG,KAAK,SAAS;IAAE;IAC3C,UAAU;IACV,MAAK;IACL,WAAW,KACT,GAAG,IAAI,UACP,OAAO,SAAS,GAAG,IAAI,gBACvB,OAAO,UAAU,YAAY,GAAG,IAAI,iBACtC;IACA,eAAe;KACb,OAAO,OAAO,KAAK;KACnB,OAAO;IACT;IAEC,UAAA,OAAO;GACF,GAfD,GAAG,OAAO,QAAQ,UAAU,QAAQ,GAAG,OAAO,OAe7C;EAEZ,CAAC,CACE;;AAET"}
@@ -0,0 +1,44 @@
1
+ const CENTER = 112;
2
+ const pad = (value) => String(value).padStart(2, "0");
3
+ const toPosition = (angle, radius) => {
4
+ const rad = angle * Math.PI / 180;
5
+ return {
6
+ x: CENTER + radius * Math.sin(rad),
7
+ y: CENTER - radius * Math.cos(rad)
8
+ };
9
+ };
10
+ const pointerToPolar = (element, clientX, clientY) => {
11
+ const rect = element.getBoundingClientRect();
12
+ const scale = rect.width / 224 || 1;
13
+ const dx = (clientX - (rect.left + rect.width / 2)) / scale;
14
+ const dy = (clientY - (rect.top + rect.height / 2)) / scale;
15
+ return {
16
+ angle: (Math.atan2(dx, -dy) * 180 / Math.PI + 360) % 360,
17
+ distance: Math.hypot(dx, dy)
18
+ };
19
+ };
20
+ const isInnerRing = (distance) => distance < 73;
21
+ const nearestOnCircle = (target, candidates, period) => {
22
+ let best;
23
+ let bestDistance = Infinity;
24
+ for (const candidate of candidates) {
25
+ const raw = Math.abs(candidate - target) % period;
26
+ const distance = Math.min(raw, period - raw);
27
+ if (distance < bestDistance) {
28
+ best = candidate;
29
+ bestDistance = distance;
30
+ }
31
+ }
32
+ return best;
33
+ };
34
+ const stepCircular = (current, candidates, direction) => {
35
+ if (candidates.length === 0) return void 0;
36
+ const sorted = [...candidates].sort((a, b) => a - b);
37
+ if (current === null) return direction === 1 ? sorted[0] : sorted.at(-1);
38
+ if (direction === 1) return sorted.find((value) => value > current) ?? sorted[0];
39
+ return [...sorted].reverse().find((value) => value < current) ?? sorted.at(-1);
40
+ };
41
+ //#endregion
42
+ export { isInnerRing, nearestOnCircle, pad, pointerToPolar, stepCircular, toPosition };
43
+
44
+ //# sourceMappingURL=geometry.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometry.mjs","names":[],"sources":["../../../../../../src/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.ts"],"sourcesContent":["export const DIAL_SIZE = 224;\nexport const OUTER_RADIUS = 88;\nexport const INNER_RADIUS = 58;\n\nconst CENTER = DIAL_SIZE / 2;\n\nexport interface DialNumber {\n angle: number;\n disabled: boolean;\n inner: boolean;\n label: string;\n value: number;\n}\n\nexport const pad = (value: number) => String(value).padStart(2, '0');\n\nexport const toPosition = (angle: number, radius: number) => {\n const rad = (angle * Math.PI) / 180;\n return { x: CENTER + radius * Math.sin(rad), y: CENTER - radius * Math.cos(rad) };\n};\n\nexport const pointerToPolar = (element: HTMLElement, clientX: number, clientY: number) => {\n const rect = element.getBoundingClientRect();\n const scale = rect.width / DIAL_SIZE || 1;\n const dx = (clientX - (rect.left + rect.width / 2)) / scale;\n const dy = (clientY - (rect.top + rect.height / 2)) / scale;\n const angle = ((Math.atan2(dx, -dy) * 180) / Math.PI + 360) % 360;\n return { angle, distance: Math.hypot(dx, dy) };\n};\n\nexport const isInnerRing = (distance: number) => distance < (OUTER_RADIUS + INNER_RADIUS) / 2;\n\nexport const nearestOnCircle = (target: number, candidates: number[], period: number) => {\n let best: number | undefined;\n let bestDistance = Infinity;\n for (const candidate of candidates) {\n const raw = Math.abs(candidate - target) % period;\n const distance = Math.min(raw, period - raw);\n if (distance < bestDistance) {\n best = candidate;\n bestDistance = distance;\n }\n }\n return best;\n};\n\nexport const stepCircular = (current: number | null, candidates: number[], direction: 1 | -1) => {\n if (candidates.length === 0) return undefined;\n const sorted = [...candidates].sort((a, b) => a - b);\n if (current === null) return direction === 1 ? sorted[0] : sorted.at(-1);\n if (direction === 1) return sorted.find((value) => value > current) ?? sorted[0];\n return [...sorted].reverse().find((value) => value < current) ?? sorted.at(-1);\n};\n"],"mappings":"AAIA,MAAM,SAAA;AAUN,MAAa,OAAO,UAAkB,OAAO,KAAK,CAAC,CAAC,SAAS,GAAG,GAAG;AAEnE,MAAa,cAAc,OAAe,WAAmB;CAC3D,MAAM,MAAO,QAAQ,KAAK,KAAM;CAChC,OAAO;EAAE,GAAG,SAAS,SAAS,KAAK,IAAI,GAAG;EAAG,GAAG,SAAS,SAAS,KAAK,IAAI,GAAG;CAAE;AAClF;AAEA,MAAa,kBAAkB,SAAsB,SAAiB,YAAoB;CACxF,MAAM,OAAO,QAAQ,sBAAsB;CAC3C,MAAM,QAAQ,KAAK,QAAA,OAAqB;CACxC,MAAM,MAAM,WAAW,KAAK,OAAO,KAAK,QAAQ,MAAM;CACtD,MAAM,MAAM,WAAW,KAAK,MAAM,KAAK,SAAS,MAAM;CAEtD,OAAO;EAAE,QADO,KAAK,MAAM,IAAI,CAAC,EAAE,IAAI,MAAO,KAAK,KAAK,OAAO;EAC9C,UAAU,KAAK,MAAM,IAAI,EAAE;CAAE;AAC/C;AAEA,MAAa,eAAe,aAAqB,WAAW;AAE5D,MAAa,mBAAmB,QAAgB,YAAsB,WAAmB;CACvF,IAAI;CACJ,IAAI,eAAe;CACnB,KAAK,MAAM,aAAa,YAAY;EAClC,MAAM,MAAM,KAAK,IAAI,YAAY,MAAM,IAAI;EAC3C,MAAM,WAAW,KAAK,IAAI,KAAK,SAAS,GAAG;EAC3C,IAAI,WAAW,cAAc;GAC3B,OAAO;GACP,eAAe;EACjB;CACF;CACA,OAAO;AACT;AAEA,MAAa,gBAAgB,SAAwB,YAAsB,cAAsB;CAC/F,IAAI,WAAW,WAAW,GAAG,OAAO,KAAA;CACpC,MAAM,SAAS,CAAC,GAAG,UAAU,CAAC,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC;CACnD,IAAI,YAAY,MAAM,OAAO,cAAc,IAAI,OAAO,KAAK,OAAO,GAAG,EAAE;CACvE,IAAI,cAAc,GAAG,OAAO,OAAO,MAAM,UAAU,QAAQ,OAAO,KAAK,OAAO;CAC9E,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,UAAU,QAAQ,OAAO,KAAK,OAAO,GAAG,EAAE;AAC/E"}
@@ -0,0 +1,157 @@
1
+ import { usePanelContext } from "../../context.mjs";
2
+ import useTimeState from "../TimePanelBody/useTimeState.mjs";
3
+ import { isInnerRing, nearestOnCircle, pad, stepCircular } from "./geometry.mjs";
4
+ import ClockDial from "./ClockDial.mjs";
5
+ import * as React$1 from "react";
6
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
7
+ import { clsx } from "clsx";
8
+ import { ChevronDown, ChevronUp } from "lucide-react";
9
+ //#region src/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.tsx
10
+ const enabledValues = (units) => units.filter((unit) => !unit.disabled).map((unit) => unit.value);
11
+ const isEnabled = (units, value) => units.some((unit) => unit.value === value && !unit.disabled);
12
+ function TimeClock(props) {
13
+ const { showHour, showMinute, showSecond, use12Hours } = props;
14
+ const { prefixCls, locale } = usePanelContext();
15
+ const state = useTimeState(props);
16
+ const [view, setView] = React$1.useState(showHour ? "hour" : "minute");
17
+ const cls = `${prefixCls}-time-clock`;
18
+ const hour = state.hour ?? null;
19
+ const minute = state.minute ?? null;
20
+ const second = state.second ?? null;
21
+ const pm = hour !== null && hour >= 12;
22
+ const hourNumbers = [];
23
+ for (let index = 0; index < 12; index++) {
24
+ const outer = index === 0 ? 12 : index;
25
+ const angle = index * 30;
26
+ if (use12Hours) {
27
+ const value = index + (pm ? 12 : 0);
28
+ hourNumbers.push({
29
+ angle,
30
+ disabled: !isEnabled(state.hourUnits, value),
31
+ inner: false,
32
+ label: String(outer),
33
+ value
34
+ });
35
+ continue;
36
+ }
37
+ const inner = index === 0 ? 0 : index + 12;
38
+ hourNumbers.push({
39
+ angle,
40
+ disabled: !isEnabled(state.hourUnits, outer),
41
+ inner: false,
42
+ label: String(outer),
43
+ value: outer
44
+ }, {
45
+ angle,
46
+ disabled: !isEnabled(state.hourUnits, inner),
47
+ inner: true,
48
+ label: pad(inner),
49
+ value: inner
50
+ });
51
+ }
52
+ const minuteNumbers = Array.from({ length: 12 }, (_, index) => ({
53
+ angle: index * 30,
54
+ disabled: !isEnabled(state.minuteUnits, index * 5),
55
+ inner: false,
56
+ label: pad(index * 5),
57
+ value: index * 5
58
+ }));
59
+ const hourValues = enabledValues(state.hourUnits);
60
+ const minuteValues = enabledValues(state.minuteUnits);
61
+ const secondValues = enabledValues(state.secondUnits);
62
+ const pickHourAt = (angle, distance) => {
63
+ const index = Math.round(angle / 30) % 12;
64
+ const value = use12Hours ? index + (pm ? 12 : 0) : isInnerRing(distance) ? index === 0 ? 0 : index + 12 : index === 0 ? 12 : index;
65
+ return isEnabled(state.hourUnits, value) ? value : void 0;
66
+ };
67
+ const pickMinuteAt = (angle) => nearestOnCircle(Math.round(angle / 6) % 60, minuteValues, 60);
68
+ const stepSecond = (direction) => {
69
+ const next = stepCircular(second, secondValues, direction);
70
+ if (next !== void 0) state.onSecondChange(next);
71
+ };
72
+ const hourView = view === "hour";
73
+ const displayHour = hour === null ? "--" : pad(use12Hours ? hour % 12 || 12 : hour);
74
+ const segment = (target, label, text) => /* @__PURE__ */ jsx("button", {
75
+ "aria-label": label,
76
+ "aria-pressed": view === target,
77
+ className: clsx(`${cls}-segment`, view === target && `${cls}-segment-active`),
78
+ type: "button",
79
+ onClick: () => setView(target),
80
+ children: text
81
+ });
82
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("div", {
83
+ className: `${prefixCls}-header`,
84
+ children: /* @__PURE__ */ jsxs("div", {
85
+ className: `${cls}-header`,
86
+ children: [
87
+ showHour && segment("hour", locale.hours ?? "Hours", displayHour),
88
+ showHour && showMinute && /* @__PURE__ */ jsx("span", {
89
+ className: `${cls}-colon`,
90
+ children: ":"
91
+ }),
92
+ showMinute && segment("minute", locale.minutes ?? "Minutes", minute === null ? "--" : pad(minute)),
93
+ showSecond && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
94
+ className: `${cls}-colon`,
95
+ children: ":"
96
+ }), /* @__PURE__ */ jsxs("div", {
97
+ className: `${cls}-stepper`,
98
+ children: [
99
+ /* @__PURE__ */ jsx("button", {
100
+ "aria-label": locale.nextSecond ?? "Next second",
101
+ tabIndex: -1,
102
+ type: "button",
103
+ onClick: () => stepSecond(1),
104
+ children: /* @__PURE__ */ jsx(ChevronUp, { size: 12 })
105
+ }),
106
+ /* @__PURE__ */ jsx("span", {
107
+ "aria-label": locale.seconds ?? "Seconds",
108
+ className: `${cls}-stepper-value`,
109
+ onWheel: (event) => stepSecond(event.deltaY > 0 ? -1 : 1),
110
+ children: second === null ? "--" : pad(second)
111
+ }),
112
+ /* @__PURE__ */ jsx("button", {
113
+ "aria-label": locale.previousSecond ?? "Previous second",
114
+ tabIndex: -1,
115
+ type: "button",
116
+ onClick: () => stepSecond(-1),
117
+ children: /* @__PURE__ */ jsx(ChevronDown, { size: 12 })
118
+ })
119
+ ]
120
+ })] }),
121
+ use12Hours && /* @__PURE__ */ jsx("div", {
122
+ className: `${cls}-meridiem`,
123
+ children: state.meridiemUnits.map((unit) => /* @__PURE__ */ jsx("button", {
124
+ "aria-pressed": state.meridiem === unit.value,
125
+ disabled: unit.disabled,
126
+ type: "button",
127
+ className: clsx(`${cls}-segment`, state.meridiem === unit.value && `${cls}-segment-active`),
128
+ onClick: () => state.onMeridiemChange(unit.value),
129
+ children: unit.label
130
+ }, unit.value))
131
+ })
132
+ ]
133
+ })
134
+ }), /* @__PURE__ */ jsx("div", {
135
+ className: `${cls}-body`,
136
+ children: /* @__PURE__ */ jsx(ClockDial, {
137
+ ariaPrefix: hourView ? locale.hour ?? "Hour" : locale.minute ?? "Minute",
138
+ enabledValues: hourView ? hourValues : minuteValues,
139
+ label: hourView ? locale.hours ?? "Hours" : locale.minutes ?? "Minutes",
140
+ numbers: hourView ? hourNumbers : minuteNumbers,
141
+ prefixCls,
142
+ selected: hourView ? hour : minute,
143
+ selectedAngle: hourView ? (hour ?? 0) % 12 * 30 : (minute ?? 0) * 6,
144
+ selectedInner: hourView && !use12Hours && hour !== null && (hour === 0 || hour > 12),
145
+ selectedOffTick: !hourView && minute !== null && minute % 5 !== 0,
146
+ pickAt: (angle, distance) => hourView ? pickHourAt(angle, distance) : pickMinuteAt(angle),
147
+ onPick: (value) => hourView ? state.onHourChange(value) : state.onMinuteChange(value),
148
+ onDone: () => {
149
+ if (hourView && showMinute) setView("minute");
150
+ }
151
+ }, view)
152
+ })] });
153
+ }
154
+ //#endregion
155
+ export { TimeClock as default };
156
+
157
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["React"],"sources":["../../../../../../src/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport { ChevronDown, ChevronUp } from 'lucide-react';\nimport * as React from 'react';\n\nimport type { SharedTimeProps } from '../../../interface';\nimport { usePanelContext } from '../../context';\nimport type { Unit } from '../TimePanelBody/TimeColumn';\nimport useTimeState from '../TimePanelBody/useTimeState';\nimport ClockDial from './ClockDial';\nimport { type DialNumber, isInnerRing, nearestOnCircle, pad, stepCircular } from './geometry';\n\ntype View = 'hour' | 'minute';\n\nconst enabledValues = (units: Unit<number>[]) =>\n units.filter((unit) => !unit.disabled).map((unit) => unit.value);\n\nconst isEnabled = (units: Unit<number>[], value: number) =>\n units.some((unit) => unit.value === value && !unit.disabled);\n\nexport default function TimeClock<DateType extends object = any>(props: SharedTimeProps<DateType>) {\n const { showHour, showMinute, showSecond, use12Hours } = props;\n const { prefixCls, locale } = usePanelContext<DateType>();\n const state = useTimeState(props);\n const [view, setView] = React.useState<View>(showHour ? 'hour' : 'minute');\n\n const cls = `${prefixCls}-time-clock`;\n const hour = state.hour ?? null;\n const minute = state.minute ?? null;\n const second = state.second ?? null;\n const pm = hour !== null && hour >= 12;\n\n const hourNumbers: DialNumber[] = [];\n for (let index = 0; index < 12; index++) {\n const outer = index === 0 ? 12 : index;\n const angle = index * 30;\n if (use12Hours) {\n const value = index + (pm ? 12 : 0);\n hourNumbers.push({\n angle,\n disabled: !isEnabled(state.hourUnits, value),\n inner: false,\n label: String(outer),\n value,\n });\n continue;\n }\n const inner = index === 0 ? 0 : index + 12;\n hourNumbers.push(\n {\n angle,\n disabled: !isEnabled(state.hourUnits, outer),\n inner: false,\n label: String(outer),\n value: outer,\n },\n {\n angle,\n disabled: !isEnabled(state.hourUnits, inner),\n inner: true,\n label: pad(inner),\n value: inner,\n },\n );\n }\n\n const minuteNumbers: DialNumber[] = Array.from({ length: 12 }, (_, index) => ({\n angle: index * 30,\n disabled: !isEnabled(state.minuteUnits, index * 5),\n inner: false,\n label: pad(index * 5),\n value: index * 5,\n }));\n\n const hourValues = enabledValues(state.hourUnits);\n const minuteValues = enabledValues(state.minuteUnits);\n const secondValues = enabledValues(state.secondUnits);\n\n const pickHourAt = (angle: number, distance: number) => {\n const index = Math.round(angle / 30) % 12;\n const value = use12Hours\n ? index + (pm ? 12 : 0)\n : isInnerRing(distance)\n ? index === 0\n ? 0\n : index + 12\n : index === 0\n ? 12\n : index;\n return isEnabled(state.hourUnits, value) ? value : undefined;\n };\n\n const pickMinuteAt = (angle: number) =>\n nearestOnCircle(Math.round(angle / 6) % 60, minuteValues, 60);\n\n const stepSecond = (direction: 1 | -1) => {\n const next = stepCircular(second, secondValues, direction);\n if (next !== undefined) state.onSecondChange(next);\n };\n\n const hourView = view === 'hour';\n const displayHour = hour === null ? '--' : pad(use12Hours ? hour % 12 || 12 : hour);\n const segment = (target: View, label: string | undefined, text: string) => (\n <button\n aria-label={label}\n aria-pressed={view === target}\n className={clsx(`${cls}-segment`, view === target && `${cls}-segment-active`)}\n type=\"button\"\n onClick={() => setView(target)}\n >\n {text}\n </button>\n );\n\n return (\n <>\n <div className={`${prefixCls}-header`}>\n <div className={`${cls}-header`}>\n {showHour && segment('hour', locale.hours ?? 'Hours', displayHour)}\n {showHour && showMinute && <span className={`${cls}-colon`}>:</span>}\n {showMinute &&\n segment('minute', locale.minutes ?? 'Minutes', minute === null ? '--' : pad(minute))}\n {showSecond && (\n <>\n <span className={`${cls}-colon`}>:</span>\n <div className={`${cls}-stepper`}>\n <button\n aria-label={locale.nextSecond ?? 'Next second'}\n tabIndex={-1}\n type=\"button\"\n onClick={() => stepSecond(1)}\n >\n <ChevronUp size={12} />\n </button>\n <span\n aria-label={locale.seconds ?? 'Seconds'}\n className={`${cls}-stepper-value`}\n onWheel={(event) => stepSecond(event.deltaY > 0 ? -1 : 1)}\n >\n {second === null ? '--' : pad(second)}\n </span>\n <button\n aria-label={locale.previousSecond ?? 'Previous second'}\n tabIndex={-1}\n type=\"button\"\n onClick={() => stepSecond(-1)}\n >\n <ChevronDown size={12} />\n </button>\n </div>\n </>\n )}\n {use12Hours && (\n <div className={`${cls}-meridiem`}>\n {state.meridiemUnits.map((unit) => (\n <button\n aria-pressed={state.meridiem === unit.value}\n disabled={unit.disabled}\n key={unit.value}\n type=\"button\"\n className={clsx(\n `${cls}-segment`,\n state.meridiem === unit.value && `${cls}-segment-active`,\n )}\n onClick={() => state.onMeridiemChange(unit.value)}\n >\n {unit.label}\n </button>\n ))}\n </div>\n )}\n </div>\n </div>\n <div className={`${cls}-body`}>\n <ClockDial\n ariaPrefix={hourView ? (locale.hour ?? 'Hour') : (locale.minute ?? 'Minute')}\n enabledValues={hourView ? hourValues : minuteValues}\n key={view}\n label={hourView ? (locale.hours ?? 'Hours') : (locale.minutes ?? 'Minutes')}\n numbers={hourView ? hourNumbers : minuteNumbers}\n prefixCls={prefixCls}\n selected={hourView ? hour : minute}\n selectedAngle={hourView ? ((hour ?? 0) % 12) * 30 : (minute ?? 0) * 6}\n selectedInner={hourView && !use12Hours && hour !== null && (hour === 0 || hour > 12)}\n selectedOffTick={!hourView && minute !== null && minute % 5 !== 0}\n pickAt={(angle, distance) =>\n hourView ? pickHourAt(angle, distance) : pickMinuteAt(angle)\n }\n onPick={(value) => (hourView ? state.onHourChange(value) : state.onMinuteChange(value))}\n onDone={() => {\n if (hourView && showMinute) setView('minute');\n }}\n />\n </div>\n </>\n );\n}\n"],"mappings":";;;;;;;;;AAaA,MAAM,iBAAiB,UACrB,MAAM,QAAQ,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,KAAK,SAAS,KAAK,KAAK;AAEjE,MAAM,aAAa,OAAuB,UACxC,MAAM,MAAM,SAAS,KAAK,UAAU,SAAS,CAAC,KAAK,QAAQ;AAE7D,SAAwB,UAAyC,OAAkC;CACjG,MAAM,EAAE,UAAU,YAAY,YAAY,eAAe;CACzD,MAAM,EAAE,WAAW,WAAW,gBAA0B;CACxD,MAAM,QAAQ,aAAa,KAAK;CAChC,MAAM,CAAC,MAAM,WAAWA,QAAM,SAAe,WAAW,SAAS,QAAQ;CAEzE,MAAM,MAAM,GAAG,UAAU;CACzB,MAAM,OAAO,MAAM,QAAQ;CAC3B,MAAM,SAAS,MAAM,UAAU;CAC/B,MAAM,SAAS,MAAM,UAAU;CAC/B,MAAM,KAAK,SAAS,QAAQ,QAAQ;CAEpC,MAAM,cAA4B,CAAC;CACnC,KAAK,IAAI,QAAQ,GAAG,QAAQ,IAAI,SAAS;EACvC,MAAM,QAAQ,UAAU,IAAI,KAAK;EACjC,MAAM,QAAQ,QAAQ;EACtB,IAAI,YAAY;GACd,MAAM,QAAQ,SAAS,KAAK,KAAK;GACjC,YAAY,KAAK;IACf;IACA,UAAU,CAAC,UAAU,MAAM,WAAW,KAAK;IAC3C,OAAO;IACP,OAAO,OAAO,KAAK;IACnB;GACF,CAAC;GACD;EACF;EACA,MAAM,QAAQ,UAAU,IAAI,IAAI,QAAQ;EACxC,YAAY,KACV;GACE;GACA,UAAU,CAAC,UAAU,MAAM,WAAW,KAAK;GAC3C,OAAO;GACP,OAAO,OAAO,KAAK;GACnB,OAAO;EACT,GACA;GACE;GACA,UAAU,CAAC,UAAU,MAAM,WAAW,KAAK;GAC3C,OAAO;GACP,OAAO,IAAI,KAAK;GAChB,OAAO;EACT,CACF;CACF;CAEA,MAAM,gBAA8B,MAAM,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,WAAW;EAC5E,OAAO,QAAQ;EACf,UAAU,CAAC,UAAU,MAAM,aAAa,QAAQ,CAAC;EACjD,OAAO;EACP,OAAO,IAAI,QAAQ,CAAC;EACpB,OAAO,QAAQ;CACjB,EAAE;CAEF,MAAM,aAAa,cAAc,MAAM,SAAS;CAChD,MAAM,eAAe,cAAc,MAAM,WAAW;CACpD,MAAM,eAAe,cAAc,MAAM,WAAW;CAEpD,MAAM,cAAc,OAAe,aAAqB;EACtD,MAAM,QAAQ,KAAK,MAAM,QAAQ,EAAE,IAAI;EACvC,MAAM,QAAQ,aACV,SAAS,KAAK,KAAK,KACnB,YAAY,QAAQ,IAClB,UAAU,IACR,IACA,QAAQ,KACV,UAAU,IACR,KACA;EACR,OAAO,UAAU,MAAM,WAAW,KAAK,IAAI,QAAQ,KAAA;CACrD;CAEA,MAAM,gBAAgB,UACpB,gBAAgB,KAAK,MAAM,QAAQ,CAAC,IAAI,IAAI,cAAc,EAAE;CAE9D,MAAM,cAAc,cAAsB;EACxC,MAAM,OAAO,aAAa,QAAQ,cAAc,SAAS;EACzD,IAAI,SAAS,KAAA,GAAW,MAAM,eAAe,IAAI;CACnD;CAEA,MAAM,WAAW,SAAS;CAC1B,MAAM,cAAc,SAAS,OAAO,OAAO,IAAI,aAAa,OAAO,MAAM,KAAK,IAAI;CAClF,MAAM,WAAW,QAAc,OAA2B,SACxD,oBAAC,UAAD;EACE,cAAY;EACZ,gBAAc,SAAS;EACvB,WAAW,KAAK,GAAG,IAAI,WAAW,SAAS,UAAU,GAAG,IAAI,gBAAgB;EAC5E,MAAK;EACL,eAAe,QAAQ,MAAM;EAE5B,UAAA;CACK,CAAA;CAGV,OACE,qBAAA,YAAA,EAAA,UAAA,CACE,oBAAC,OAAD;EAAK,WAAW,GAAG,UAAU;EAC3B,UAAA,qBAAC,OAAD;GAAK,WAAW,GAAG,IAAI;GAAvB,UAAA;IACG,YAAY,QAAQ,QAAQ,OAAO,SAAS,SAAS,WAAW;IAChE,YAAY,cAAc,oBAAC,QAAD;KAAM,WAAW,GAAG,IAAI;KAAS,UAAA;IAAO,CAAA;IAClE,cACC,QAAQ,UAAU,OAAO,WAAW,WAAW,WAAW,OAAO,OAAO,IAAI,MAAM,CAAC;IACpF,cACC,qBAAA,YAAA,EAAA,UAAA,CACE,oBAAC,QAAD;KAAM,WAAW,GAAG,IAAI;KAAS,UAAA;IAAO,CAAA,GACxC,qBAAC,OAAD;KAAK,WAAW,GAAG,IAAI;KAAvB,UAAA;MACE,oBAAC,UAAD;OACE,cAAY,OAAO,cAAc;OACjC,UAAU;OACV,MAAK;OACL,eAAe,WAAW,CAAC;OAE3B,UAAA,oBAAC,WAAD,EAAW,MAAM,GAAK,CAAA;MAChB,CAAA;MACR,oBAAC,QAAD;OACE,cAAY,OAAO,WAAW;OAC9B,WAAW,GAAG,IAAI;OAClB,UAAU,UAAU,WAAW,MAAM,SAAS,IAAI,KAAK,CAAC;OAEvD,UAAA,WAAW,OAAO,OAAO,IAAI,MAAM;MAChC,CAAA;MACN,oBAAC,UAAD;OACE,cAAY,OAAO,kBAAkB;OACrC,UAAU;OACV,MAAK;OACL,eAAe,WAAW,EAAE;OAE5B,UAAA,oBAAC,aAAD,EAAa,MAAM,GAAK,CAAA;MAClB,CAAA;KACL;IACL,CAAA,CAAA,EAAA,CAAA;IAEH,cACC,oBAAC,OAAD;KAAK,WAAW,GAAG,IAAI;KACpB,UAAA,MAAM,cAAc,KAAK,SACxB,oBAAC,UAAD;MACE,gBAAc,MAAM,aAAa,KAAK;MACtC,UAAU,KAAK;MAEf,MAAK;MACL,WAAW,KACT,GAAG,IAAI,WACP,MAAM,aAAa,KAAK,SAAS,GAAG,IAAI,gBAC1C;MACA,eAAe,MAAM,iBAAiB,KAAK,KAAK;MAE/C,UAAA,KAAK;KACA,GATD,KAAK,KASJ,CACT;IACE,CAAA;GAEJ;;CACF,CAAA,GACL,oBAAC,OAAD;EAAK,WAAW,GAAG,IAAI;EACrB,UAAA,oBAAC,WAAD;GACE,YAAY,WAAY,OAAO,QAAQ,SAAW,OAAO,UAAU;GACnE,eAAe,WAAW,aAAa;GAEvC,OAAO,WAAY,OAAO,SAAS,UAAY,OAAO,WAAW;GACjE,SAAS,WAAW,cAAc;GACvB;GACX,UAAU,WAAW,OAAO;GAC5B,eAAe,YAAa,QAAQ,KAAK,KAAM,MAAM,UAAU,KAAK;GACpE,eAAe,YAAY,CAAC,cAAc,SAAS,SAAS,SAAS,KAAK,OAAO;GACjF,iBAAiB,CAAC,YAAY,WAAW,QAAQ,SAAS,MAAM;GAChE,SAAS,OAAO,aACd,WAAW,WAAW,OAAO,QAAQ,IAAI,aAAa,KAAK;GAE7D,SAAS,UAAW,WAAW,MAAM,aAAa,KAAK,IAAI,MAAM,eAAe,KAAK;GACrF,cAAc;IACZ,IAAI,YAAY,YAAY,QAAQ,QAAQ;GAC9C;EACD,GAfM,IAeN;CACE,CAAA,CACL,EAAA,CAAA;AAEN"}
@@ -0,0 +1,100 @@
1
+ import { useLayoutEffect as useLayoutEffect$1 } from "../../../hooks/react.mjs";
2
+ import { usePanelContext } from "../../context.mjs";
3
+ import useScrollTo from "./useScrollTo.mjs";
4
+ import * as React$1 from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import { clsx } from "clsx";
7
+ //#region src/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.tsx
8
+ const SCROLL_DELAY = 300;
9
+ function flattenUnits(units) {
10
+ return units.map(({ value, label, disabled }) => [
11
+ value,
12
+ label,
13
+ disabled
14
+ ].join(",")).join(";");
15
+ }
16
+ function TimeColumn(props) {
17
+ const { units, value, optionalValue, type, onChange, onHover, onDblClick, changeOnScroll } = props;
18
+ const { prefixCls, cellRender, now, locale, classNames, styles } = usePanelContext();
19
+ const panelPrefixCls = `${prefixCls}-time-panel`;
20
+ const cellPrefixCls = `${prefixCls}-time-panel-cell`;
21
+ const ulRef = React$1.useRef(null);
22
+ const checkDelayRef = React$1.useRef(void 0);
23
+ const clearDelayCheck = () => {
24
+ clearTimeout(checkDelayRef.current);
25
+ };
26
+ const [syncScroll, stopScroll, isScrolling] = useScrollTo(ulRef, value ?? optionalValue);
27
+ useLayoutEffect$1(() => {
28
+ syncScroll();
29
+ clearDelayCheck();
30
+ return () => {
31
+ stopScroll();
32
+ clearDelayCheck();
33
+ };
34
+ }, [
35
+ value,
36
+ optionalValue,
37
+ flattenUnits(units)
38
+ ]);
39
+ const onInternalScroll = (event) => {
40
+ clearDelayCheck();
41
+ const target = event.target;
42
+ if (!isScrolling() && changeOnScroll) checkDelayRef.current = setTimeout(() => {
43
+ const ul = ulRef.current;
44
+ const firstLiTop = ul.querySelector(`li`).offsetTop;
45
+ const liDistList = Array.from(ul.querySelectorAll(`li`)).map((li) => li.offsetTop - firstLiTop).map((top, index) => {
46
+ if (units[index].disabled) return Number.MAX_SAFE_INTEGER;
47
+ return Math.abs(top - target.scrollTop);
48
+ });
49
+ const minDist = Math.min(...liDistList);
50
+ const minDistIndex = liDistList.indexOf(minDist);
51
+ const targetUnit = units[minDistIndex];
52
+ if (targetUnit && !targetUnit.disabled) onChange(targetUnit.value);
53
+ }, SCROLL_DELAY);
54
+ };
55
+ const columnPrefixCls = `${panelPrefixCls}-column`;
56
+ return /* @__PURE__ */ jsx("ul", {
57
+ className: columnPrefixCls,
58
+ "data-type": type,
59
+ ref: ulRef,
60
+ onScroll: onInternalScroll,
61
+ children: units.map(({ label, value: unitValue, disabled }) => {
62
+ const inner = /* @__PURE__ */ jsx("div", {
63
+ className: `${cellPrefixCls}-inner`,
64
+ children: label
65
+ });
66
+ return /* @__PURE__ */ jsx("li", {
67
+ "data-value": unitValue,
68
+ style: styles.item,
69
+ className: clsx(cellPrefixCls, classNames.item, {
70
+ [`${cellPrefixCls}-selected`]: value === unitValue,
71
+ [`${cellPrefixCls}-disabled`]: disabled
72
+ }),
73
+ onClick: () => {
74
+ if (!disabled) onChange(unitValue);
75
+ },
76
+ onDoubleClick: () => {
77
+ if (!disabled && onDblClick) onDblClick();
78
+ },
79
+ onMouseEnter: () => {
80
+ onHover(unitValue);
81
+ },
82
+ onMouseLeave: () => {
83
+ onHover(null);
84
+ },
85
+ children: cellRender ? cellRender(unitValue, {
86
+ prefixCls,
87
+ originNode: inner,
88
+ today: now,
89
+ type: "time",
90
+ subType: type,
91
+ locale
92
+ }) : inner
93
+ }, unitValue);
94
+ })
95
+ });
96
+ }
97
+ //#endregion
98
+ export { TimeColumn as default };
99
+
100
+ //# sourceMappingURL=TimeColumn.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimeColumn.mjs","names":["React"],"sources":["../../../../../../src/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport * as React from 'react';\n\nimport { useLayoutEffect } from '../../../hooks/react';\nimport { usePanelContext } from '../../context';\nimport useScrollTo from './useScrollTo';\n\nconst SCROLL_DELAY = 300;\n\nexport type Unit<ValueType = number | string> = {\n label: string | number;\n value: ValueType;\n disabled?: boolean;\n};\n\nexport interface TimeUnitColumnProps<ValueType extends number | string = number | string> {\n changeOnScroll?: boolean;\n onChange: (value: ValueType) => void;\n onDblClick?: VoidFunction;\n onHover: (value: ValueType | null) => void;\n optionalValue?: ValueType;\n type: 'hour' | 'minute' | 'second' | 'millisecond' | 'meridiem';\n units: Unit<ValueType>[];\n value: ValueType | null;\n}\n\n// Not use JSON.stringify to avoid dead loop\nfunction flattenUnits(units: Unit<string | number>[]) {\n return units.map(({ value, label, disabled }) => [value, label, disabled].join(',')).join(';');\n}\n\nexport default function TimeColumn<\n DateType extends object,\n ValueType extends number | string = number | string,\n>(props: TimeUnitColumnProps<ValueType>) {\n const { units, value, optionalValue, type, onChange, onHover, onDblClick, changeOnScroll } =\n props;\n\n const { prefixCls, cellRender, now, locale, classNames, styles } = usePanelContext<DateType>();\n\n const panelPrefixCls = `${prefixCls}-time-panel`;\n const cellPrefixCls = `${prefixCls}-time-panel-cell`;\n\n // ========================== Refs ==========================\n const ulRef = React.useRef<HTMLUListElement>(null);\n\n // ========================= Scroll =========================\n const checkDelayRef = React.useRef<any>(undefined);\n\n const clearDelayCheck = () => {\n clearTimeout(checkDelayRef.current);\n };\n\n // ========================== Sync ==========================\n const [syncScroll, stopScroll, isScrolling] = useScrollTo(ulRef, value ?? optionalValue);\n\n // Effect sync value scroll\n useLayoutEffect(() => {\n syncScroll();\n clearDelayCheck();\n\n return () => {\n stopScroll();\n clearDelayCheck();\n };\n }, [value, optionalValue, flattenUnits(units)]);\n\n // ========================= Change =========================\n // Scroll event if sync onScroll\n const onInternalScroll: React.UIEventHandler<HTMLUListElement> = (event) => {\n clearDelayCheck();\n\n const target = event.target as HTMLUListElement;\n\n if (!isScrolling() && changeOnScroll) {\n checkDelayRef.current = setTimeout(() => {\n const ul = ulRef.current!;\n const firstLiTop = ul.querySelector<HTMLLIElement>(`li`)!.offsetTop;\n const liList = Array.from(ul.querySelectorAll<HTMLLIElement>(`li`));\n const liTopList = liList.map((li) => li.offsetTop - firstLiTop);\n const liDistList = liTopList.map((top, index) => {\n if (units[index].disabled) {\n return Number.MAX_SAFE_INTEGER;\n }\n return Math.abs(top - target.scrollTop);\n });\n\n // Find min distance index\n const minDist = Math.min(...liDistList);\n const minDistIndex = liDistList.indexOf(minDist);\n const targetUnit = units[minDistIndex];\n if (targetUnit && !targetUnit.disabled) {\n onChange(targetUnit.value);\n }\n }, SCROLL_DELAY);\n }\n };\n\n // ========================= Render =========================\n const columnPrefixCls = `${panelPrefixCls}-column`;\n\n return (\n <ul className={columnPrefixCls} data-type={type} ref={ulRef} onScroll={onInternalScroll}>\n {units.map(({ label, value: unitValue, disabled }) => {\n const inner = <div className={`${cellPrefixCls}-inner`}>{label}</div>;\n\n return (\n <li\n data-value={unitValue}\n key={unitValue}\n style={styles.item}\n className={clsx(cellPrefixCls, classNames.item, {\n [`${cellPrefixCls}-selected`]: value === unitValue,\n [`${cellPrefixCls}-disabled`]: disabled,\n })}\n onClick={() => {\n if (!disabled) {\n onChange(unitValue);\n }\n }}\n onDoubleClick={() => {\n if (!disabled && onDblClick) {\n onDblClick();\n }\n }}\n onMouseEnter={() => {\n onHover(unitValue);\n }}\n onMouseLeave={() => {\n onHover(null);\n }}\n >\n {cellRender\n ? cellRender(unitValue, {\n prefixCls,\n originNode: inner,\n today: now,\n type: 'time',\n subType: type,\n locale,\n })\n : inner}\n </li>\n );\n })}\n </ul>\n );\n}\n"],"mappings":";;;;;;;AAOA,MAAM,eAAe;AAoBrB,SAAS,aAAa,OAAgC;CACpD,OAAO,MAAM,KAAK,EAAE,OAAO,OAAO,eAAe;EAAC;EAAO;EAAO;CAAQ,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;AAC/F;AAEA,SAAwB,WAGtB,OAAuC;CACvC,MAAM,EAAE,OAAO,OAAO,eAAe,MAAM,UAAU,SAAS,YAAY,mBACxE;CAEF,MAAM,EAAE,WAAW,YAAY,KAAK,QAAQ,YAAY,WAAW,gBAA0B;CAE7F,MAAM,iBAAiB,GAAG,UAAU;CACpC,MAAM,gBAAgB,GAAG,UAAU;CAGnC,MAAM,QAAQA,QAAM,OAAyB,IAAI;CAGjD,MAAM,gBAAgBA,QAAM,OAAY,KAAA,CAAS;CAEjD,MAAM,wBAAwB;EAC5B,aAAa,cAAc,OAAO;CACpC;CAGA,MAAM,CAAC,YAAY,YAAY,eAAe,YAAY,OAAO,SAAS,aAAa;CAGvF,wBAAsB;EACpB,WAAW;EACX,gBAAgB;EAEhB,aAAa;GACX,WAAW;GACX,gBAAgB;EAClB;CACF,GAAG;EAAC;EAAO;EAAe,aAAa,KAAK;CAAC,CAAC;CAI9C,MAAM,oBAA4D,UAAU;EAC1E,gBAAgB;EAEhB,MAAM,SAAS,MAAM;EAErB,IAAI,CAAC,YAAY,KAAK,gBACpB,cAAc,UAAU,iBAAiB;GACvC,MAAM,KAAK,MAAM;GACjB,MAAM,aAAa,GAAG,cAA6B,IAAI,CAAC,CAAE;GAG1D,MAAM,aAFS,MAAM,KAAK,GAAG,iBAAgC,IAAI,CAC1C,CAAC,CAAC,KAAK,OAAO,GAAG,YAAY,UACzB,CAAC,CAAC,KAAK,KAAK,UAAU;IAC/C,IAAI,MAAM,MAAM,CAAC,UACf,OAAO,OAAO;IAEhB,OAAO,KAAK,IAAI,MAAM,OAAO,SAAS;GACxC,CAAC;GAGD,MAAM,UAAU,KAAK,IAAI,GAAG,UAAU;GACtC,MAAM,eAAe,WAAW,QAAQ,OAAO;GAC/C,MAAM,aAAa,MAAM;GACzB,IAAI,cAAc,CAAC,WAAW,UAC5B,SAAS,WAAW,KAAK;EAE7B,GAAG,YAAY;CAEnB;CAGA,MAAM,kBAAkB,GAAG,eAAe;CAE1C,OACE,oBAAC,MAAD;EAAI,WAAW;EAAiB,aAAW;EAAM,KAAK;EAAO,UAAU;EACpE,UAAA,MAAM,KAAK,EAAE,OAAO,OAAO,WAAW,eAAe;GACpD,MAAM,QAAQ,oBAAC,OAAD;IAAK,WAAW,GAAG,cAAc;IAAU,UAAA;GAAW,CAAA;GAEpE,OACE,oBAAC,MAAD;IACE,cAAY;IAEZ,OAAO,OAAO;IACd,WAAW,KAAK,eAAe,WAAW,MAAM;MAC7C,GAAG,cAAc,aAAa,UAAU;MACxC,GAAG,cAAc,aAAa;IACjC,CAAC;IACD,eAAe;KACb,IAAI,CAAC,UACH,SAAS,SAAS;IAEtB;IACA,qBAAqB;KACnB,IAAI,CAAC,YAAY,YACf,WAAW;IAEf;IACA,oBAAoB;KAClB,QAAQ,SAAS;IACnB;IACA,oBAAoB;KAClB,QAAQ,IAAI;IACd;IAEC,UAAA,aACG,WAAW,WAAW;KACpB;KACA,YAAY;KACZ,OAAO;KACP,MAAM;KACN,SAAS;KACT;IACF,CAAC,IACD;GACF,GAjCG,SAiCH;EAER,CAAC;CACC,CAAA;AAER"}
@@ -0,0 +1,71 @@
1
+ import { PickerHackContext, usePanelContext } from "../../context.mjs";
2
+ import useTimeState from "./useTimeState.mjs";
3
+ import TimeColumn from "./TimeColumn.mjs";
4
+ import * as React$1 from "react";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import { clsx } from "clsx";
7
+ //#region src/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.tsx
8
+ function TimePanelBody(props) {
9
+ const { showHour, showMinute, showSecond, showMillisecond, use12Hours: showMeridiem, changeOnScroll } = props;
10
+ const { prefixCls, classNames, styles } = usePanelContext();
11
+ const { onCellDblClick } = React$1.use(PickerHackContext);
12
+ const { hour, hourUnits, meridiem, meridiemUnits, millisecond, millisecondUnits, minute, minuteUnits, onHourChange, onHourHover, onMeridiemChange, onMeridiemHover, onMillisecondChange, onMillisecondHover, onMinuteChange, onMinuteHover, onSecondChange, onSecondHover, pickerHour, pickerMillisecond, pickerMinute, pickerSecond, second, secondUnits } = useTimeState(props);
13
+ const sharedColumnProps = {
14
+ onDblClick: onCellDblClick,
15
+ changeOnScroll
16
+ };
17
+ return /* @__PURE__ */ jsxs("div", {
18
+ className: clsx(`${prefixCls}-content`, classNames.content),
19
+ style: styles.content,
20
+ children: [
21
+ showHour && /* @__PURE__ */ jsx(TimeColumn, {
22
+ optionalValue: pickerHour,
23
+ type: "hour",
24
+ units: hourUnits,
25
+ value: hour,
26
+ onChange: onHourChange,
27
+ onHover: onHourHover,
28
+ ...sharedColumnProps
29
+ }),
30
+ showMinute && /* @__PURE__ */ jsx(TimeColumn, {
31
+ optionalValue: pickerMinute,
32
+ type: "minute",
33
+ units: minuteUnits,
34
+ value: minute,
35
+ onChange: onMinuteChange,
36
+ onHover: onMinuteHover,
37
+ ...sharedColumnProps
38
+ }),
39
+ showSecond && /* @__PURE__ */ jsx(TimeColumn, {
40
+ optionalValue: pickerSecond,
41
+ type: "second",
42
+ units: secondUnits,
43
+ value: second,
44
+ onChange: onSecondChange,
45
+ onHover: onSecondHover,
46
+ ...sharedColumnProps
47
+ }),
48
+ showMillisecond && /* @__PURE__ */ jsx(TimeColumn, {
49
+ optionalValue: pickerMillisecond,
50
+ type: "millisecond",
51
+ units: millisecondUnits,
52
+ value: millisecond,
53
+ onChange: onMillisecondChange,
54
+ onHover: onMillisecondHover,
55
+ ...sharedColumnProps
56
+ }),
57
+ showMeridiem && /* @__PURE__ */ jsx(TimeColumn, {
58
+ type: "meridiem",
59
+ units: meridiemUnits,
60
+ value: meridiem,
61
+ onChange: onMeridiemChange,
62
+ onHover: onMeridiemHover,
63
+ ...sharedColumnProps
64
+ })
65
+ ]
66
+ });
67
+ }
68
+ //#endregion
69
+ export { TimePanelBody as default };
70
+
71
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["React"],"sources":["../../../../../../src/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.tsx"],"sourcesContent":["import { clsx } from 'clsx';\nimport * as React from 'react';\n\nimport type { SharedPanelProps, SharedTimeProps } from '../../../interface';\nimport { PickerHackContext, usePanelContext } from '../../context';\nimport TimeColumn from './TimeColumn';\nimport useTimeState from './useTimeState';\n\nexport type TimePanelBodyProps<DateType extends object = any> = SharedPanelProps<DateType>;\n\nexport default function TimePanelBody<DateType extends object = any>(\n props: SharedTimeProps<DateType>,\n) {\n const {\n showHour,\n showMinute,\n showSecond,\n showMillisecond,\n use12Hours: showMeridiem,\n changeOnScroll,\n } = props;\n\n const { prefixCls, classNames, styles } = usePanelContext<DateType>();\n const { onCellDblClick } = React.use(PickerHackContext);\n\n const {\n hour,\n hourUnits,\n meridiem,\n meridiemUnits,\n millisecond,\n millisecondUnits,\n minute,\n minuteUnits,\n onHourChange,\n onHourHover,\n onMeridiemChange,\n onMeridiemHover,\n onMillisecondChange,\n onMillisecondHover,\n onMinuteChange,\n onMinuteHover,\n onSecondChange,\n onSecondHover,\n pickerHour,\n pickerMillisecond,\n pickerMinute,\n pickerSecond,\n second,\n secondUnits,\n } = useTimeState(props);\n\n // ========================= Render =========================\n const sharedColumnProps = {\n onDblClick: onCellDblClick,\n changeOnScroll,\n };\n\n return (\n <div className={clsx(`${prefixCls}-content`, classNames.content)} style={styles.content}>\n {showHour && (\n <TimeColumn\n optionalValue={pickerHour}\n type=\"hour\"\n units={hourUnits}\n value={hour}\n onChange={onHourChange}\n onHover={onHourHover}\n {...sharedColumnProps}\n />\n )}\n {showMinute && (\n <TimeColumn\n optionalValue={pickerMinute}\n type=\"minute\"\n units={minuteUnits}\n value={minute}\n onChange={onMinuteChange}\n onHover={onMinuteHover}\n {...sharedColumnProps}\n />\n )}\n {showSecond && (\n <TimeColumn\n optionalValue={pickerSecond}\n type=\"second\"\n units={secondUnits}\n value={second}\n onChange={onSecondChange}\n onHover={onSecondHover}\n {...sharedColumnProps}\n />\n )}\n {showMillisecond && (\n <TimeColumn\n optionalValue={pickerMillisecond}\n type=\"millisecond\"\n units={millisecondUnits}\n value={millisecond}\n onChange={onMillisecondChange}\n onHover={onMillisecondHover}\n {...sharedColumnProps}\n />\n )}\n {showMeridiem && (\n <TimeColumn\n type=\"meridiem\"\n units={meridiemUnits}\n value={meridiem}\n onChange={onMeridiemChange}\n onHover={onMeridiemHover}\n {...sharedColumnProps}\n />\n )}\n </div>\n );\n}\n"],"mappings":";;;;;;;AAUA,SAAwB,cACtB,OACA;CACA,MAAM,EACJ,UACA,YACA,YACA,iBACA,YAAY,cACZ,mBACE;CAEJ,MAAM,EAAE,WAAW,YAAY,WAAW,gBAA0B;CACpE,MAAM,EAAE,mBAAmBA,QAAM,IAAI,iBAAiB;CAEtD,MAAM,EACJ,MACA,WACA,UACA,eACA,aACA,kBACA,QACA,aACA,cACA,aACA,kBACA,iBACA,qBACA,oBACA,gBACA,eACA,gBACA,eACA,YACA,mBACA,cACA,cACA,QACA,gBACE,aAAa,KAAK;CAGtB,MAAM,oBAAoB;EACxB,YAAY;EACZ;CACF;CAEA,OACE,qBAAC,OAAD;EAAK,WAAW,KAAK,GAAG,UAAU,WAAW,WAAW,OAAO;EAAG,OAAO,OAAO;EAAhF,UAAA;GACG,YACC,oBAAC,YAAD;IACE,eAAe;IACf,MAAK;IACL,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,GAAI;GACL,CAAA;GAEF,cACC,oBAAC,YAAD;IACE,eAAe;IACf,MAAK;IACL,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,GAAI;GACL,CAAA;GAEF,cACC,oBAAC,YAAD;IACE,eAAe;IACf,MAAK;IACL,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,GAAI;GACL,CAAA;GAEF,mBACC,oBAAC,YAAD;IACE,eAAe;IACf,MAAK;IACL,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,GAAI;GACL,CAAA;GAEF,gBACC,oBAAC,YAAD;IACE,MAAK;IACL,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,GAAI;GACL,CAAA;EAEA;;AAET"}
@@ -0,0 +1,62 @@
1
+ import { useEvent } from "../../../hooks/react.mjs";
2
+ import { isVisible, raf } from "../../../utils/common.mjs";
3
+ import * as React$1 from "react";
4
+ //#region src/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.ts
5
+ const SPEED_PTG = 1 / 3;
6
+ function useScrollTo(ulRef, value) {
7
+ const scrollingRef = React$1.useRef(false);
8
+ const scrollRafRef = React$1.useRef(null);
9
+ const scrollDistRef = React$1.useRef(null);
10
+ const isScrolling = () => scrollingRef.current;
11
+ const stopScroll = () => {
12
+ raf.cancel(scrollRafRef.current);
13
+ scrollingRef.current = false;
14
+ };
15
+ const scrollRafTimesRef = React$1.useRef(void 0);
16
+ const startScroll = () => {
17
+ const ul = ulRef.current;
18
+ scrollDistRef.current = null;
19
+ scrollRafTimesRef.current = 0;
20
+ if (ul) {
21
+ const targetLi = ul.querySelector(`[data-value="${value}"]`);
22
+ const firstLi = ul.querySelector(`li`);
23
+ const doScroll = () => {
24
+ stopScroll();
25
+ scrollingRef.current = true;
26
+ scrollRafTimesRef.current += 1;
27
+ const { scrollTop: currentTop } = ul;
28
+ const firstLiTop = firstLi.offsetTop;
29
+ const targetLiTop = targetLi.offsetTop;
30
+ const targetTop = targetLiTop - firstLiTop;
31
+ if (targetLiTop === 0 && targetLi !== firstLi || !isVisible(ul)) {
32
+ if (scrollRafTimesRef.current <= 5) scrollRafRef.current = raf(doScroll);
33
+ return;
34
+ }
35
+ const nextTop = currentTop + (targetTop - currentTop) * SPEED_PTG;
36
+ const dist = Math.abs(targetTop - nextTop);
37
+ if (scrollDistRef.current !== null && scrollDistRef.current < dist) {
38
+ stopScroll();
39
+ return;
40
+ }
41
+ scrollDistRef.current = dist;
42
+ if (dist <= 1) {
43
+ ul.scrollTop = targetTop;
44
+ stopScroll();
45
+ return;
46
+ }
47
+ ul.scrollTop = nextTop;
48
+ scrollRafRef.current = raf(doScroll);
49
+ };
50
+ if (targetLi && firstLi) doScroll();
51
+ }
52
+ };
53
+ return [
54
+ useEvent(startScroll),
55
+ stopScroll,
56
+ isScrolling
57
+ ];
58
+ }
59
+ //#endregion
60
+ export { useScrollTo as default };
61
+
62
+ //# sourceMappingURL=useScrollTo.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useScrollTo.mjs","names":["React"],"sources":["../../../../../../src/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.ts"],"sourcesContent":["import * as React from 'react';\n\nimport { useEvent } from '../../../hooks/react';\nimport { isVisible, raf } from '../../../utils/common';\n\nconst SPEED_PTG = 1 / 3;\n\nexport default function useScrollTo(\n ulRef: React.RefObject<HTMLUListElement | null>,\n value: number | string | null | undefined,\n): [syncScroll: VoidFunction, clearScroll: VoidFunction, isScrolling: () => boolean] {\n // ========================= Scroll =========================\n const scrollingRef = React.useRef<boolean>(false);\n const scrollRafRef = React.useRef<number>(null);\n const scrollDistRef = React.useRef<number>(null);\n\n const isScrolling = () => scrollingRef.current;\n\n const stopScroll = () => {\n raf.cancel(scrollRafRef.current!);\n scrollingRef.current = false;\n };\n\n const scrollRafTimesRef = React.useRef<number | undefined>(undefined);\n\n const startScroll = () => {\n const ul = ulRef.current;\n scrollDistRef.current = null;\n scrollRafTimesRef.current = 0;\n\n if (ul) {\n const targetLi = ul.querySelector<HTMLLIElement>(`[data-value=\"${value}\"]`);\n const firstLi = ul.querySelector<HTMLLIElement>(`li`);\n\n const doScroll = () => {\n stopScroll();\n scrollingRef.current = true;\n scrollRafTimesRef.current! += 1;\n\n const { scrollTop: currentTop } = ul;\n\n const firstLiTop = firstLi!.offsetTop;\n const targetLiTop = targetLi!.offsetTop;\n const targetTop = targetLiTop - firstLiTop;\n\n // Wait for element exist. 5 frames is enough\n if ((targetLiTop === 0 && targetLi !== firstLi) || !isVisible(ul)) {\n if (scrollRafTimesRef.current! <= 5) {\n scrollRafRef.current = raf(doScroll);\n }\n return;\n }\n\n const nextTop = currentTop + (targetTop - currentTop) * SPEED_PTG;\n const dist = Math.abs(targetTop - nextTop);\n\n // Break if dist get larger, which means user is scrolling\n if (scrollDistRef.current !== null && scrollDistRef.current < dist) {\n stopScroll();\n return;\n }\n scrollDistRef.current = dist;\n\n // Stop when dist is less than 1\n if (dist <= 1) {\n ul.scrollTop = targetTop;\n stopScroll();\n return;\n }\n\n // IE not support `scrollTo`\n ul.scrollTop = nextTop;\n\n scrollRafRef.current = raf(doScroll);\n };\n\n if (targetLi && firstLi) {\n doScroll();\n }\n }\n };\n\n // ======================== Trigger =========================\n const syncScroll = useEvent(startScroll);\n\n return [syncScroll, stopScroll, isScrolling];\n}\n"],"mappings":";;;;AAKA,MAAM,YAAY,IAAI;AAEtB,SAAwB,YACtB,OACA,OACmF;CAEnF,MAAM,eAAeA,QAAM,OAAgB,KAAK;CAChD,MAAM,eAAeA,QAAM,OAAe,IAAI;CAC9C,MAAM,gBAAgBA,QAAM,OAAe,IAAI;CAE/C,MAAM,oBAAoB,aAAa;CAEvC,MAAM,mBAAmB;EACvB,IAAI,OAAO,aAAa,OAAQ;EAChC,aAAa,UAAU;CACzB;CAEA,MAAM,oBAAoBA,QAAM,OAA2B,KAAA,CAAS;CAEpE,MAAM,oBAAoB;EACxB,MAAM,KAAK,MAAM;EACjB,cAAc,UAAU;EACxB,kBAAkB,UAAU;EAE5B,IAAI,IAAI;GACN,MAAM,WAAW,GAAG,cAA6B,gBAAgB,MAAM,GAAG;GAC1E,MAAM,UAAU,GAAG,cAA6B,IAAI;GAEpD,MAAM,iBAAiB;IACrB,WAAW;IACX,aAAa,UAAU;IACvB,kBAAkB,WAAY;IAE9B,MAAM,EAAE,WAAW,eAAe;IAElC,MAAM,aAAa,QAAS;IAC5B,MAAM,cAAc,SAAU;IAC9B,MAAM,YAAY,cAAc;IAGhC,IAAK,gBAAgB,KAAK,aAAa,WAAY,CAAC,UAAU,EAAE,GAAG;KACjE,IAAI,kBAAkB,WAAY,GAChC,aAAa,UAAU,IAAI,QAAQ;KAErC;IACF;IAEA,MAAM,UAAU,cAAc,YAAY,cAAc;IACxD,MAAM,OAAO,KAAK,IAAI,YAAY,OAAO;IAGzC,IAAI,cAAc,YAAY,QAAQ,cAAc,UAAU,MAAM;KAClE,WAAW;KACX;IACF;IACA,cAAc,UAAU;IAGxB,IAAI,QAAQ,GAAG;KACb,GAAG,YAAY;KACf,WAAW;KACX;IACF;IAGA,GAAG,YAAY;IAEf,aAAa,UAAU,IAAI,QAAQ;GACrC;GAEA,IAAI,YAAY,SACd,SAAS;EAEb;CACF;CAKA,OAAO;EAFY,SAAS,WAEX;EAAG;EAAY;CAAW;AAC7C"}