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

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 (1029) hide show
  1. package/README.md +3 -1
  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 +4 -4
  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/type.d.mts +1 -0
  324. package/es/FormKit/List.mjs +2 -2
  325. package/es/FormKit/List.mjs.map +1 -1
  326. package/es/FormKit/engine/tanstack.mjs +1 -1
  327. package/es/FormKit/engine/tanstack.mjs.map +1 -1
  328. package/es/Grid/style.mjs +1 -1
  329. package/es/Grid/style.mjs.map +1 -1
  330. package/es/GroupAvatar/type.d.mts +1 -0
  331. package/es/Highlighter/FullFeatured.mjs +2 -2
  332. package/es/Highlighter/FullFeatured.mjs.map +1 -1
  333. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs +2 -2
  334. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
  335. package/es/Highlighter/SyntaxHighlighter/index.mjs +4 -4
  336. package/es/Highlighter/SyntaxHighlighter/index.mjs.map +1 -1
  337. package/es/Highlighter/const.d.mts +1 -0
  338. package/es/Highlighter/style.mjs +2 -2
  339. package/es/Highlighter/style.mjs.map +1 -1
  340. package/es/HotkeyInput/HotkeyInput.mjs +1 -1
  341. package/es/HotkeyInput/HotkeyInput.mjs.map +1 -1
  342. package/es/HtmlPreview/HtmlPreview.mjs +2 -2
  343. package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
  344. package/es/Icon/Icon.mjs +2 -2
  345. package/es/Icon/Icon.mjs.map +1 -1
  346. package/es/Image/type.d.mts +1 -0
  347. package/es/Image/viewer/ImageViewer.mjs +2 -1
  348. package/es/Image/viewer/ImageViewer.mjs.map +1 -1
  349. package/es/Image/viewer/Toolbar.mjs +19 -6
  350. package/es/Image/viewer/Toolbar.mjs.map +1 -1
  351. package/es/Image/viewer/ViewerChrome.mjs.map +1 -1
  352. package/es/ImageSelect/ImageSelect.mjs +1 -1
  353. package/es/ImageSelect/ImageSelect.mjs.map +1 -1
  354. package/es/Input/Input.mjs +7 -5
  355. package/es/Input/Input.mjs.map +1 -1
  356. package/es/Input/TextArea.mjs +1 -1
  357. package/es/Input/TextArea.mjs.map +1 -1
  358. package/es/Input/style.d.mts +1 -0
  359. package/es/Input/style.mjs +3 -3
  360. package/es/Input/style.mjs.map +1 -1
  361. package/es/Input/type.d.mts +1 -0
  362. package/es/List/ListRow.mjs +3 -3
  363. package/es/List/ListRow.mjs.map +1 -1
  364. package/es/Markdown/Markdown.mjs +2 -2
  365. package/es/Markdown/Markdown.mjs.map +1 -1
  366. package/es/Markdown/Typography.mjs +2 -2
  367. package/es/Markdown/Typography.mjs.map +1 -1
  368. package/es/Markdown/plugins/remarkColor.d.mts +1 -0
  369. package/es/Markdown/plugins/remarkGfmPlus.d.mts +1 -0
  370. package/es/Markdown/plugins/remarkVideo.d.mts +1 -0
  371. package/es/Mermaid/FullFeatured.mjs +2 -2
  372. package/es/Mermaid/FullFeatured.mjs.map +1 -1
  373. package/es/Mermaid/SyntaxMermaid/index.mjs +4 -4
  374. package/es/Mermaid/SyntaxMermaid/index.mjs.map +1 -1
  375. package/es/Mermaid/const.d.mts +1 -0
  376. package/es/Modal/atoms.d.mts +1 -0
  377. package/es/Modal/atoms.mjs +8 -8
  378. package/es/Modal/atoms.mjs.map +1 -1
  379. package/es/Modal/constants.d.mts +1 -0
  380. package/es/Modal/type.d.mts +1 -0
  381. package/es/Pagination/Pagination.mjs +182 -42
  382. package/es/Pagination/Pagination.mjs.map +1 -1
  383. package/es/Pagination/helpers.mjs +3 -3
  384. package/es/Pagination/helpers.mjs.map +1 -1
  385. package/es/Pagination/index.d.mts +2 -2
  386. package/es/Pagination/marker.stylex.mjs +9 -0
  387. package/es/Pagination/marker.stylex.mjs.map +1 -0
  388. package/es/Pagination/style.mjs +74 -4
  389. package/es/Pagination/style.mjs.map +1 -1
  390. package/es/Pagination/type.d.mts +41 -3
  391. package/es/Popover/PopoverInGroup.mjs +3 -3
  392. package/es/Popover/PopoverInGroup.mjs.map +1 -1
  393. package/es/Popover/atoms.mjs +7 -7
  394. package/es/Popover/atoms.mjs.map +1 -1
  395. package/es/Popover/style.mjs +1 -1
  396. package/es/Popover/style.mjs.map +1 -1
  397. package/es/ProTable/ProTable.d.mts +11 -0
  398. package/es/ProTable/ProTable.mjs +208 -0
  399. package/es/ProTable/ProTable.mjs.map +1 -0
  400. package/es/ProTable/hooks/useColumnRequest.mjs +55 -0
  401. package/es/ProTable/hooks/useColumnRequest.mjs.map +1 -0
  402. package/es/ProTable/hooks/useColumnsState.mjs +37 -0
  403. package/es/ProTable/hooks/useColumnsState.mjs.map +1 -0
  404. package/es/ProTable/hooks/useDelayedFlag.mjs +18 -0
  405. package/es/ProTable/hooks/useDelayedFlag.mjs.map +1 -0
  406. package/es/ProTable/hooks/useDensity.mjs +15 -0
  407. package/es/ProTable/hooks/useDensity.mjs.map +1 -0
  408. package/es/ProTable/hooks/useFetchData.mjs +97 -0
  409. package/es/ProTable/hooks/useFetchData.mjs.map +1 -0
  410. package/es/ProTable/hooks/useFullscreen.mjs +22 -0
  411. package/es/ProTable/hooks/useFullscreen.mjs.map +1 -0
  412. package/es/ProTable/hooks/usePageInfo.mjs +35 -0
  413. package/es/ProTable/hooks/usePageInfo.mjs.map +1 -0
  414. package/es/ProTable/hooks/useProColumns.mjs +123 -0
  415. package/es/ProTable/hooks/useProColumns.mjs.map +1 -0
  416. package/es/ProTable/hooks/useProLoading.mjs +19 -0
  417. package/es/ProTable/hooks/useProLoading.mjs.map +1 -0
  418. package/es/ProTable/hooks/useProLocale.mjs +22 -0
  419. package/es/ProTable/hooks/useProLocale.mjs.map +1 -0
  420. package/es/ProTable/hooks/useProRequest.mjs +137 -0
  421. package/es/ProTable/hooks/useProRequest.mjs.map +1 -0
  422. package/es/ProTable/hooks/useRowCache.mjs +11 -0
  423. package/es/ProTable/hooks/useRowCache.mjs.map +1 -0
  424. package/es/ProTable/hooks/useSearchForm.mjs +141 -0
  425. package/es/ProTable/hooks/useSearchForm.mjs.map +1 -0
  426. package/es/ProTable/hooks/useTableBindings.mjs +39 -0
  427. package/es/ProTable/hooks/useTableBindings.mjs.map +1 -0
  428. package/es/ProTable/hooks/useTableSelection.mjs +14 -0
  429. package/es/ProTable/hooks/useTableSelection.mjs.map +1 -0
  430. package/es/ProTable/index.d.mts +4 -0
  431. package/es/ProTable/index.d.ts +1 -0
  432. package/es/ProTable/index.js +1 -0
  433. package/es/ProTable/index.mjs +3 -0
  434. package/es/ProTable/locale.d.mts +15 -0
  435. package/es/ProTable/locale.mjs +66 -0
  436. package/es/ProTable/locale.mjs.map +1 -0
  437. package/es/ProTable/parts/ColumnSetting.mjs +155 -0
  438. package/es/ProTable/parts/ColumnSetting.mjs.map +1 -0
  439. package/es/ProTable/parts/FieldControl.mjs +117 -0
  440. package/es/ProTable/parts/FieldControl.mjs.map +1 -0
  441. package/es/ProTable/parts/KeywordInput.mjs +19 -0
  442. package/es/ProTable/parts/KeywordInput.mjs.map +1 -0
  443. package/es/ProTable/parts/LightFilter.mjs +70 -0
  444. package/es/ProTable/parts/LightFilter.mjs.map +1 -0
  445. package/es/ProTable/parts/OptionPopover.mjs +17 -0
  446. package/es/ProTable/parts/OptionPopover.mjs.map +1 -0
  447. package/es/ProTable/parts/SearchForm.mjs +180 -0
  448. package/es/ProTable/parts/SearchForm.mjs.map +1 -0
  449. package/es/ProTable/parts/SearchSection.mjs +33 -0
  450. package/es/ProTable/parts/SearchSection.mjs.map +1 -0
  451. package/es/ProTable/parts/TableAlert.mjs +38 -0
  452. package/es/ProTable/parts/TableAlert.mjs.map +1 -0
  453. package/es/ProTable/parts/Toolbar.mjs +50 -0
  454. package/es/ProTable/parts/Toolbar.mjs.map +1 -0
  455. package/es/ProTable/parts/ToolbarOptions.mjs +103 -0
  456. package/es/ProTable/parts/ToolbarOptions.mjs.map +1 -0
  457. package/es/ProTable/parts/renderValue.mjs +118 -0
  458. package/es/ProTable/parts/renderValue.mjs.map +1 -0
  459. package/es/ProTable/style.mjs +278 -0
  460. package/es/ProTable/style.mjs.map +1 -0
  461. package/es/ProTable/type.d.mts +397 -0
  462. package/es/ProTable/utils.mjs +152 -0
  463. package/es/ProTable/utils.mjs.map +1 -0
  464. package/es/Radio/Radio.mjs +3 -3
  465. package/es/Radio/Radio.mjs.map +1 -1
  466. package/es/Radio/type.d.mts +1 -0
  467. package/es/Rate/Rate.mjs +1 -1
  468. package/es/Rate/Rate.mjs.map +1 -1
  469. package/es/ScrollArea/atoms.mjs +4 -4
  470. package/es/ScrollArea/atoms.mjs.map +1 -1
  471. package/es/ScrollShadow/ScrollShadow.mjs +1 -1
  472. package/es/ScrollShadow/ScrollShadow.mjs.map +1 -1
  473. package/es/SearchBar/SearchBar.mjs +31 -25
  474. package/es/SearchBar/SearchBar.mjs.map +1 -1
  475. package/es/Segmented/Segmented.mjs +4 -4
  476. package/es/Segmented/Segmented.mjs.map +1 -1
  477. package/es/Segmented/atoms.d.mts +1 -0
  478. package/es/Segmented/atoms.mjs +2 -2
  479. package/es/Segmented/atoms.mjs.map +1 -1
  480. package/es/Select/Select.mjs +22 -13
  481. package/es/Select/Select.mjs.map +1 -1
  482. package/es/Select/atoms.mjs +5 -5
  483. package/es/Select/atoms.mjs.map +1 -1
  484. package/es/Select/helpers.mjs +8 -1
  485. package/es/Select/helpers.mjs.map +1 -1
  486. package/es/Select/hooks.mjs +8 -4
  487. package/es/Select/hooks.mjs.map +1 -1
  488. package/es/Select/renderOptions.mjs +2 -2
  489. package/es/Select/renderOptions.mjs.map +1 -1
  490. package/es/Select/type.d.mts +7 -0
  491. package/es/Slider/type.d.mts +1 -0
  492. package/es/Switch/Switch.mjs +2 -2
  493. package/es/Switch/Switch.mjs.map +1 -1
  494. package/es/Switch/atoms.d.mts +1 -0
  495. package/es/Switch/atoms.mjs +3 -3
  496. package/es/Switch/atoms.mjs.map +1 -1
  497. package/es/Table/Column.d.mts +8 -0
  498. package/es/Table/Column.mjs +6 -0
  499. package/es/Table/Column.mjs.map +1 -0
  500. package/es/Table/ColumnGroup.d.mts +11 -0
  501. package/es/Table/ColumnGroup.mjs +6 -0
  502. package/es/Table/ColumnGroup.mjs.map +1 -0
  503. package/es/Table/Table.d.mts +16 -2
  504. package/es/Table/Table.mjs +149 -118
  505. package/es/Table/Table.mjs.map +1 -1
  506. package/es/Table/atoms/cells.d.mts +42 -0
  507. package/es/Table/atoms/cells.mjs +72 -0
  508. package/es/Table/atoms/cells.mjs.map +1 -0
  509. package/es/Table/atoms/index.d.mts +3 -0
  510. package/es/Table/atoms/layout.d.mts +44 -0
  511. package/es/Table/atoms/layout.mjs +62 -0
  512. package/es/Table/atoms/layout.mjs.map +1 -0
  513. package/es/Table/constants.mjs +16 -0
  514. package/es/Table/constants.mjs.map +1 -0
  515. package/es/Table/engine/fixed.d.mts +1 -0
  516. package/es/Table/engine/fixed.mjs +53 -0
  517. package/es/Table/engine/fixed.mjs.map +1 -0
  518. package/es/Table/engine/types.d.mts +1 -0
  519. package/es/Table/engine/useTableEngine.mjs +180 -0
  520. package/es/Table/engine/useTableEngine.mjs.map +1 -0
  521. package/es/Table/index.d.mts +7 -2
  522. package/es/Table/index.mjs +4 -1
  523. package/es/Table/internal.d.mts +3 -0
  524. package/es/Table/pipeline/columnUtils.d.mts +5 -0
  525. package/es/Table/pipeline/columnUtils.mjs +58 -0
  526. package/es/Table/pipeline/columnUtils.mjs.map +1 -0
  527. package/es/Table/pipeline/convertChildrenToColumns.mjs +24 -0
  528. package/es/Table/pipeline/convertChildrenToColumns.mjs.map +1 -0
  529. package/es/Table/pipeline/normalizeColumns.mjs +140 -0
  530. package/es/Table/pipeline/normalizeColumns.mjs.map +1 -0
  531. package/es/Table/pipeline/selectionUtils.d.mts +9 -0
  532. package/es/Table/pipeline/selectionUtils.mjs +115 -0
  533. package/es/Table/pipeline/selectionUtils.mjs.map +1 -0
  534. package/es/Table/pipeline/useBreakpoint.mjs +36 -0
  535. package/es/Table/pipeline/useBreakpoint.mjs.map +1 -0
  536. package/es/Table/pipeline/useExpandable.mjs +45 -0
  537. package/es/Table/pipeline/useExpandable.mjs.map +1 -0
  538. package/es/Table/pipeline/useFilter.mjs +52 -0
  539. package/es/Table/pipeline/useFilter.mjs.map +1 -0
  540. package/es/Table/pipeline/useSelection.mjs +302 -0
  541. package/es/Table/pipeline/useSelection.mjs.map +1 -0
  542. package/es/Table/pipeline/useSorter.mjs +146 -0
  543. package/es/Table/pipeline/useSorter.mjs.map +1 -0
  544. package/es/Table/pipeline/useTableLocale.mjs +30 -0
  545. package/es/Table/pipeline/useTableLocale.mjs.map +1 -0
  546. package/es/Table/pipeline/useTableState.mjs +118 -0
  547. package/es/Table/pipeline/useTableState.mjs.map +1 -0
  548. package/es/Table/pipeline/useVirtualLayout.mjs +80 -0
  549. package/es/Table/pipeline/useVirtualLayout.mjs.map +1 -0
  550. package/es/Table/render/Body.mjs +150 -0
  551. package/es/Table/render/Body.mjs.map +1 -0
  552. package/es/Table/render/BodyCell.mjs +87 -0
  553. package/es/Table/render/BodyCell.mjs.map +1 -0
  554. package/es/Table/render/CellShell.mjs +84 -0
  555. package/es/Table/render/CellShell.mjs.map +1 -0
  556. package/es/Table/render/ExpandIcon.mjs +28 -0
  557. package/es/Table/render/ExpandIcon.mjs.map +1 -0
  558. package/es/Table/render/FilterDropdown.mjs +139 -0
  559. package/es/Table/render/FilterDropdown.mjs.map +1 -0
  560. package/es/Table/render/FilterPanel.mjs +152 -0
  561. package/es/Table/render/FilterPanel.mjs.map +1 -0
  562. package/es/Table/render/FixedFrost.mjs +113 -0
  563. package/es/Table/render/FixedFrost.mjs.map +1 -0
  564. package/es/Table/render/FixedHolder.mjs +51 -0
  565. package/es/Table/render/FixedHolder.mjs.map +1 -0
  566. package/es/Table/render/Header.mjs +184 -0
  567. package/es/Table/render/Header.mjs.map +1 -0
  568. package/es/Table/render/LoadingSkeleton.mjs +78 -0
  569. package/es/Table/render/LoadingSkeleton.mjs.map +1 -0
  570. package/es/Table/render/PaginationBar.mjs +71 -0
  571. package/es/Table/render/PaginationBar.mjs.map +1 -0
  572. package/es/Table/render/SelectionCells.mjs +111 -0
  573. package/es/Table/render/SelectionCells.mjs.map +1 -0
  574. package/es/Table/render/StickyScrollBar.mjs +99 -0
  575. package/es/Table/render/StickyScrollBar.mjs.map +1 -0
  576. package/es/Table/render/Summary.d.mts +16 -0
  577. package/es/Table/render/Summary.mjs +58 -0
  578. package/es/Table/render/Summary.mjs.map +1 -0
  579. package/es/Table/render/TableView.mjs +215 -0
  580. package/es/Table/render/TableView.mjs.map +1 -0
  581. package/es/Table/render/VirtualBody.mjs +101 -0
  582. package/es/Table/render/VirtualBody.mjs.map +1 -0
  583. package/es/Table/render/context.mjs +15 -0
  584. package/es/Table/render/context.mjs.map +1 -0
  585. package/es/Table/render/filterUtils.mjs +22 -0
  586. package/es/Table/render/filterUtils.mjs.map +1 -0
  587. package/es/Table/render/tableHelpers.mjs +27 -0
  588. package/es/Table/render/tableHelpers.mjs.map +1 -0
  589. package/es/Table/render/useColGroups.mjs +23 -0
  590. package/es/Table/render/useColGroups.mjs.map +1 -0
  591. package/es/Table/render/useScrollSync.mjs +104 -0
  592. package/es/Table/render/useScrollSync.mjs.map +1 -0
  593. package/es/Table/render/useViewContexts.mjs +134 -0
  594. package/es/Table/render/useViewContexts.mjs.map +1 -0
  595. package/es/Table/semantic.mjs +45 -0
  596. package/es/Table/semantic.mjs.map +1 -0
  597. package/es/Table/store/createTableStore.d.mts +1 -0
  598. package/es/Table/store/createTableStore.mjs +40 -0
  599. package/es/Table/store/createTableStore.mjs.map +1 -0
  600. package/es/Table/store/hooks.mjs +24 -0
  601. package/es/Table/store/hooks.mjs.map +1 -0
  602. package/es/Table/style.mjs +175 -90
  603. package/es/Table/style.mjs.map +1 -1
  604. package/es/Table/type.d.mts +467 -37
  605. package/es/Table/useTableController.mjs +293 -0
  606. package/es/Table/useTableController.mjs.map +1 -0
  607. package/es/Tabs/Tabs.mjs +37 -23
  608. package/es/Tabs/Tabs.mjs.map +1 -1
  609. package/es/Tabs/atoms.mjs +2 -2
  610. package/es/Tabs/atoms.mjs.map +1 -1
  611. package/es/Tag/Tag.mjs +2 -2
  612. package/es/Tag/Tag.mjs.map +1 -1
  613. package/es/Text/Text.mjs +2 -2
  614. package/es/Text/Text.mjs.map +1 -1
  615. package/es/Text/style.d.mts +4 -3
  616. package/es/Text/style.mjs +3 -3
  617. package/es/Text/style.mjs.map +1 -1
  618. package/es/Toast/dodge.mjs +0 -1
  619. package/es/Toast/dodge.mjs.map +1 -1
  620. package/es/Toast/dodge.stylex.mjs +1 -4
  621. package/es/Toast/dodge.stylex.mjs.map +1 -1
  622. package/es/Toast/style.mjs +1 -1
  623. package/es/Toast/style.mjs.map +1 -1
  624. package/es/ToggleGroup/ToggleGroup.mjs +4 -4
  625. package/es/ToggleGroup/ToggleGroup.mjs.map +1 -1
  626. package/es/ToggleGroup/atoms.d.mts +1 -0
  627. package/es/ToggleGroup/atoms.mjs +2 -2
  628. package/es/ToggleGroup/atoms.mjs.map +1 -1
  629. package/es/Tooltip/TooltipGroup.mjs +3 -3
  630. package/es/Tooltip/TooltipGroup.mjs.map +1 -1
  631. package/es/Tooltip/TooltipInGroup.mjs +1 -1
  632. package/es/Tooltip/TooltipInGroup.mjs.map +1 -1
  633. package/es/Tooltip/TooltipStandalone.mjs +4 -4
  634. package/es/Tooltip/TooltipStandalone.mjs.map +1 -1
  635. package/es/Tooltip/style.mjs +2 -2
  636. package/es/Tooltip/style.mjs.map +1 -1
  637. package/es/Tree/Tree.mjs +3 -3
  638. package/es/Tree/Tree.mjs.map +1 -1
  639. package/es/Tree/TreeNode.mjs +2 -2
  640. package/es/Tree/TreeNode.mjs.map +1 -1
  641. package/es/Video/Video.mjs +46 -0
  642. package/es/Video/Video.mjs.map +1 -0
  643. package/es/Video/context.mjs +14 -0
  644. package/es/Video/context.mjs.map +1 -0
  645. package/es/Video/index.d.mts +23 -39
  646. package/es/Video/index.mjs +21 -111
  647. package/es/Video/index.mjs.map +1 -1
  648. package/es/Video/parts/Caption.d.mts +9 -0
  649. package/es/Video/parts/Caption.mjs +37 -0
  650. package/es/Video/parts/Caption.mjs.map +1 -0
  651. package/es/Video/parts/CenterPlay.d.mts +8 -0
  652. package/es/Video/parts/CenterPlay.mjs +34 -0
  653. package/es/Video/parts/CenterPlay.mjs.map +1 -0
  654. package/es/Video/parts/Controls.d.mts +9 -0
  655. package/es/Video/parts/Controls.mjs +128 -0
  656. package/es/Video/parts/Controls.mjs.map +1 -0
  657. package/es/Video/parts/Frame.d.mts +9 -0
  658. package/es/Video/parts/Frame.mjs +101 -0
  659. package/es/Video/parts/Frame.mjs.map +1 -0
  660. package/es/Video/parts/HoverPreview.mjs +93 -0
  661. package/es/Video/parts/HoverPreview.mjs.map +1 -0
  662. package/es/Video/parts/LoadError.d.mts +8 -0
  663. package/es/Video/parts/LoadError.mjs +47 -0
  664. package/es/Video/parts/LoadError.mjs.map +1 -0
  665. package/es/Video/parts/PlayPauseIcon.mjs +48 -0
  666. package/es/Video/parts/PlayPauseIcon.mjs.map +1 -0
  667. package/es/Video/parts/RateMenu.mjs +48 -0
  668. package/es/Video/parts/RateMenu.mjs.map +1 -0
  669. package/es/Video/parts/Root.d.mts +9 -0
  670. package/es/Video/parts/Root.mjs +110 -0
  671. package/es/Video/parts/Root.mjs.map +1 -0
  672. package/es/Video/parts/SectionList.d.mts +9 -0
  673. package/es/Video/parts/SectionList.mjs +32 -0
  674. package/es/Video/parts/SectionList.mjs.map +1 -0
  675. package/es/Video/parts/SectionMenu.mjs +63 -0
  676. package/es/Video/parts/SectionMenu.mjs.map +1 -0
  677. package/es/Video/parts/Timeline.d.mts +9 -0
  678. package/es/Video/parts/Timeline.mjs +169 -0
  679. package/es/Video/parts/Timeline.mjs.map +1 -0
  680. package/es/Video/store.mjs +241 -0
  681. package/es/Video/store.mjs.map +1 -0
  682. package/es/Video/style.mjs +393 -23
  683. package/es/Video/style.mjs.map +1 -1
  684. package/es/Video/time.mjs +60 -0
  685. package/es/Video/time.mjs.map +1 -0
  686. package/es/Video/type.d.mts +125 -0
  687. package/es/Video/useControlsIdle.mjs +39 -0
  688. package/es/Video/useControlsIdle.mjs.map +1 -0
  689. package/es/Video/useFullscreen.mjs +17 -0
  690. package/es/Video/useFullscreen.mjs.map +1 -0
  691. package/es/Video/useKeyboard.mjs +60 -0
  692. package/es/Video/useKeyboard.mjs.map +1 -0
  693. package/es/Video/useVideo.d.mts +9 -0
  694. package/es/Video/useVideo.mjs +17 -0
  695. package/es/Video/useVideo.mjs.map +1 -0
  696. package/es/awesome/Features/FeatureItem.mjs +2 -2
  697. package/es/awesome/Features/FeatureItem.mjs.map +1 -1
  698. package/es/awesome/Giscus/style.mjs +9 -9
  699. package/es/awesome/Giscus/style.mjs.map +1 -1
  700. package/es/awesome/Grainient/Grainient.d.mts +11 -0
  701. package/es/awesome/Grainient/Grainient.mjs +314 -0
  702. package/es/awesome/Grainient/Grainient.mjs.map +1 -0
  703. package/es/awesome/Grainient/index.d.mts +3 -0
  704. package/es/awesome/Grainient/style.mjs +23 -0
  705. package/es/awesome/Grainient/style.mjs.map +1 -0
  706. package/es/awesome/Grainient/type.d.mts +121 -0
  707. package/es/awesome/GridBackground/GridBackground.mjs +1 -1
  708. package/es/awesome/GridBackground/GridBackground.mjs.map +1 -1
  709. package/es/awesome/GridBackground/GridShowcase.mjs +4 -4
  710. package/es/awesome/GridBackground/GridShowcase.mjs.map +1 -1
  711. package/es/awesome/Hero/Hero.mjs +3 -3
  712. package/es/awesome/Hero/Hero.mjs.map +1 -1
  713. package/es/awesome/InstallBanner/InstallBanner.mjs +2 -2
  714. package/es/awesome/InstallBanner/InstallBanner.mjs.map +1 -1
  715. package/es/awesome/LandingHero/LandingHero.mjs +3 -3
  716. package/es/awesome/LandingHero/LandingHero.mjs.map +1 -1
  717. package/es/awesome/LogoMarquee/LogoMarquee.mjs +2 -2
  718. package/es/awesome/LogoMarquee/LogoMarquee.mjs.map +1 -1
  719. package/es/awesome/Spline/ParentSize.mjs +1 -1
  720. package/es/awesome/Spline/ParentSize.mjs.map +1 -1
  721. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs +4 -4
  722. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
  723. package/es/awesome/index.d.mts +4 -1
  724. package/es/awesome/index.mjs +2 -1
  725. package/es/awesome/landingActions.mjs +2 -2
  726. package/es/awesome/landingActions.mjs.map +1 -1
  727. package/es/chat/BackBottom/BackBottom.mjs +1 -1
  728. package/es/chat/BackBottom/BackBottom.mjs.map +1 -1
  729. package/es/chat/BackBottom/type.d.mts +2 -2
  730. package/es/chat/ChatItem/ChatItem.mjs +2 -2
  731. package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
  732. package/es/chat/EditableMessage/EditableMessage.mjs +4 -4
  733. package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
  734. package/es/chat/EditableMessageList/EditableMessageList.mjs +2 -2
  735. package/es/chat/EditableMessageList/EditableMessageList.mjs.map +1 -1
  736. package/es/chat/EditableMessageList/messageReducer.mjs +30 -23
  737. package/es/chat/EditableMessageList/messageReducer.mjs.map +1 -1
  738. package/es/chat/MessageInput/MessageInput.mjs +3 -3
  739. package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
  740. package/es/chat/MessageModal/MessageModal.mjs +1 -1
  741. package/es/chat/MessageModal/MessageModal.mjs.map +1 -1
  742. package/es/chat/TokenTag/TokenTag.mjs +2 -3
  743. package/es/chat/TokenTag/TokenTag.mjs.map +1 -1
  744. package/es/color/status/error.mjs +67 -0
  745. package/es/color/status/error.mjs.map +1 -0
  746. package/es/color/status/index.mjs +15 -0
  747. package/es/color/status/index.mjs.map +1 -0
  748. package/es/color/status/info.mjs +67 -0
  749. package/es/color/status/info.mjs.map +1 -0
  750. package/es/color/status/success.mjs +67 -0
  751. package/es/color/status/success.mjs.map +1 -0
  752. package/es/color/status/warning.mjs +67 -0
  753. package/es/color/status/warning.mjs.map +1 -0
  754. package/es/color/types.d.mts +1 -0
  755. package/es/dashboard/AuthLayout/Aside.d.mts +10 -0
  756. package/es/dashboard/AuthLayout/Aside.mjs +31 -0
  757. package/es/dashboard/AuthLayout/Aside.mjs.map +1 -0
  758. package/es/dashboard/AuthLayout/AuthLayout.d.mts +3 -1
  759. package/es/dashboard/AuthLayout/AuthLayout.mjs +97 -37
  760. package/es/dashboard/AuthLayout/AuthLayout.mjs.map +1 -1
  761. package/es/dashboard/AuthLayout/index.d.mts +3 -2
  762. package/es/dashboard/AuthLayout/style.mjs +109 -1
  763. package/es/dashboard/AuthLayout/style.mjs.map +1 -1
  764. package/es/dashboard/AuthLayout/type.d.mts +38 -2
  765. package/es/dashboard/AuthTools/AuthLocaleSwitch.d.mts +10 -0
  766. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs +33 -0
  767. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs.map +1 -0
  768. package/es/dashboard/AuthTools/AuthThemeSwitch.d.mts +10 -0
  769. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs +59 -0
  770. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs.map +1 -0
  771. package/es/dashboard/AuthTools/index.d.mts +4 -0
  772. package/es/dashboard/AuthTools/style.mjs +27 -0
  773. package/es/dashboard/AuthTools/style.mjs.map +1 -0
  774. package/es/dashboard/AuthTools/type.d.mts +29 -0
  775. package/es/dashboard/ChartGrid/ChartGrid.d.mts +10 -0
  776. package/es/dashboard/ChartGrid/ChartGrid.mjs +19 -0
  777. package/es/dashboard/ChartGrid/ChartGrid.mjs.map +1 -0
  778. package/es/dashboard/ChartGrid/index.d.mts +3 -0
  779. package/es/dashboard/ChartGrid/style.mjs +18 -0
  780. package/es/dashboard/ChartGrid/style.mjs.map +1 -0
  781. package/es/dashboard/ChartGrid/type.d.mts +8 -0
  782. package/es/dashboard/ConsoleNav/ConsoleNav.mjs +3 -3
  783. package/es/dashboard/ConsoleNav/ConsoleNav.mjs.map +1 -1
  784. package/es/dashboard/ConsoleNav/Skeleton.d.mts +15 -0
  785. package/es/dashboard/ConsoleNav/Skeleton.mjs +82 -0
  786. package/es/dashboard/ConsoleNav/Skeleton.mjs.map +1 -0
  787. package/es/dashboard/ConsoleNav/index.d.mts +3 -2
  788. package/es/dashboard/ConsoleNav/style.mjs +20 -2
  789. package/es/dashboard/ConsoleNav/style.mjs.map +1 -1
  790. package/es/dashboard/ConsoleNav/type.d.mts +13 -0
  791. package/es/dashboard/ConsoleShell/ConsoleShell.d.mts +1 -1
  792. package/es/dashboard/ConsoleShell/ConsoleShell.mjs +26 -6
  793. package/es/dashboard/ConsoleShell/ConsoleShell.mjs.map +1 -1
  794. package/es/dashboard/ConsoleShell/style.mjs +11 -1
  795. package/es/dashboard/ConsoleShell/style.mjs.map +1 -1
  796. package/es/dashboard/ConsoleShell/type.d.mts +11 -0
  797. package/es/dashboard/FilterSidebar/FilterSidebar.mjs +18 -17
  798. package/es/dashboard/FilterSidebar/FilterSidebar.mjs.map +1 -1
  799. package/es/dashboard/FilterSidebar/style.mjs +2 -2
  800. package/es/dashboard/FilterSidebar/style.mjs.map +1 -1
  801. package/es/dashboard/FilterStrip/FilterStrip.d.mts +11 -0
  802. package/es/dashboard/FilterStrip/FilterStrip.mjs +55 -0
  803. package/es/dashboard/FilterStrip/FilterStrip.mjs.map +1 -0
  804. package/es/dashboard/FilterStrip/index.d.mts +3 -0
  805. package/es/dashboard/FilterStrip/style.mjs +78 -0
  806. package/es/dashboard/FilterStrip/style.mjs.map +1 -0
  807. package/es/dashboard/FilterStrip/type.d.mts +25 -0
  808. package/es/dashboard/LabelWithKey/LabelWithKey.d.mts +10 -0
  809. package/es/dashboard/LabelWithKey/LabelWithKey.mjs +18 -0
  810. package/es/dashboard/LabelWithKey/LabelWithKey.mjs.map +1 -0
  811. package/es/dashboard/LabelWithKey/index.d.mts +3 -0
  812. package/es/dashboard/LabelWithKey/type.d.mts +11 -0
  813. package/es/dashboard/MetricStrip/MetricCell.mjs +92 -0
  814. package/es/dashboard/MetricStrip/MetricCell.mjs.map +1 -0
  815. package/es/dashboard/MetricStrip/MetricStrip.d.mts +13 -0
  816. package/es/dashboard/MetricStrip/MetricStrip.mjs +47 -0
  817. package/es/dashboard/MetricStrip/MetricStrip.mjs.map +1 -0
  818. package/es/dashboard/MetricStrip/index.d.mts +3 -0
  819. package/es/dashboard/MetricStrip/style.mjs +169 -0
  820. package/es/dashboard/MetricStrip/style.mjs.map +1 -0
  821. package/es/dashboard/MetricStrip/type.d.mts +38 -0
  822. package/es/dashboard/PageSkeleton/PageSkeleton.mjs +20 -18
  823. package/es/dashboard/PageSkeleton/PageSkeleton.mjs.map +1 -1
  824. package/es/dashboard/PageSkeleton/style.mjs +2 -1
  825. package/es/dashboard/PageSkeleton/style.mjs.map +1 -1
  826. package/es/dashboard/PageToolbar/PageToolbar.d.mts +10 -0
  827. package/es/dashboard/PageToolbar/PageToolbar.mjs +22 -0
  828. package/es/dashboard/PageToolbar/PageToolbar.mjs.map +1 -0
  829. package/es/dashboard/PageToolbar/index.d.mts +3 -0
  830. package/es/dashboard/PageToolbar/style.mjs +36 -0
  831. package/es/dashboard/PageToolbar/style.mjs.map +1 -0
  832. package/es/dashboard/PageToolbar/type.d.mts +11 -0
  833. package/es/dashboard/PanelSurface/PanelSurface.d.mts +10 -0
  834. package/es/dashboard/PanelSurface/PanelSurface.mjs +40 -0
  835. package/es/dashboard/PanelSurface/PanelSurface.mjs.map +1 -0
  836. package/es/dashboard/PanelSurface/index.d.mts +3 -0
  837. package/es/dashboard/PanelSurface/style.mjs +25 -0
  838. package/es/dashboard/PanelSurface/style.mjs.map +1 -0
  839. package/es/dashboard/PanelSurface/type.d.mts +17 -0
  840. package/es/dashboard/Section/Section.d.mts +10 -0
  841. package/es/dashboard/Section/Section.mjs +81 -0
  842. package/es/dashboard/Section/Section.mjs.map +1 -0
  843. package/es/dashboard/Section/index.d.mts +3 -0
  844. package/es/dashboard/Section/style.mjs +31 -0
  845. package/es/dashboard/Section/style.mjs.map +1 -0
  846. package/es/dashboard/Section/type.d.mts +23 -0
  847. package/es/dashboard/StatCard/StatCard.d.mts +2 -1
  848. package/es/dashboard/StatCard/StatCard.mjs +29 -91
  849. package/es/dashboard/StatCard/StatCard.mjs.map +1 -1
  850. package/es/dashboard/StatCard/type.d.mts +18 -5
  851. package/es/dashboard/Surface/Surface.d.mts +4 -3
  852. package/es/dashboard/Surface/Surface.mjs +90 -8
  853. package/es/dashboard/Surface/Surface.mjs.map +1 -1
  854. package/es/dashboard/Surface/index.d.mts +3 -2
  855. package/es/dashboard/Surface/link.d.mts +16 -0
  856. package/es/dashboard/Surface/link.mjs +40 -0
  857. package/es/dashboard/Surface/link.mjs.map +1 -0
  858. package/es/dashboard/Surface/marker.stylex.mjs +9 -0
  859. package/es/dashboard/Surface/marker.stylex.mjs.map +1 -0
  860. package/es/dashboard/Surface/style.d.mts +2 -0
  861. package/es/dashboard/Surface/style.mjs +156 -14
  862. package/es/dashboard/Surface/style.mjs.map +1 -1
  863. package/es/dashboard/Surface/type.d.mts +29 -1
  864. package/es/dashboard/TableIconActions/TableIconActions.d.mts +17 -0
  865. package/es/dashboard/TableIconActions/TableIconActions.mjs +39 -0
  866. package/es/dashboard/TableIconActions/TableIconActions.mjs.map +1 -0
  867. package/es/dashboard/TableIconActions/index.d.mts +3 -0
  868. package/es/dashboard/TableIconActions/type.d.mts +17 -0
  869. package/es/dashboard/TitleWithTips/TitleWithTips.d.mts +10 -0
  870. package/es/dashboard/TitleWithTips/TitleWithTips.mjs +28 -0
  871. package/es/dashboard/TitleWithTips/TitleWithTips.mjs.map +1 -0
  872. package/es/dashboard/TitleWithTips/index.d.mts +3 -0
  873. package/es/dashboard/TitleWithTips/type.d.mts +10 -0
  874. package/es/dashboard/index.d.mts +38 -4
  875. package/es/dashboard/index.mjs +18 -4
  876. package/es/eslint/noBaseUiSubpath.mjs +2 -1
  877. package/es/eslint/noBaseUiSubpath.mjs.map +1 -1
  878. package/es/hooks/useControlledState.mjs +20 -0
  879. package/es/hooks/useControlledState.mjs.map +1 -0
  880. package/es/hooks/useHighlight.mjs +2 -2
  881. package/es/hooks/useHighlight.mjs.map +1 -1
  882. package/es/hooks/useHover.mjs +22 -0
  883. package/es/hooks/useHover.mjs.map +1 -0
  884. package/es/hooks/useMarkdown/utils.d.mts +1 -0
  885. package/es/hooks/useScroll.d.mts +8 -0
  886. package/es/hooks/useScroll.mjs +33 -0
  887. package/es/hooks/useScroll.mjs.map +1 -0
  888. package/es/hooks/useSize.mjs +26 -0
  889. package/es/hooks/useSize.mjs.map +1 -0
  890. package/es/i18n/resources/en/colorPicker.d.mts +5 -0
  891. package/es/i18n/resources/en/colorPicker.mjs +5 -0
  892. package/es/i18n/resources/en/colorPicker.mjs.map +1 -1
  893. package/es/i18n/resources/en/datePicker.d.mts +54 -0
  894. package/es/i18n/resources/en/datePicker.mjs +55 -1
  895. package/es/i18n/resources/en/datePicker.mjs.map +1 -1
  896. package/es/i18n/resources/en/index.d.mts +4 -2
  897. package/es/i18n/resources/en/index.mjs +6 -2
  898. package/es/i18n/resources/en/index.mjs.map +1 -1
  899. package/es/i18n/resources/en/table.d.mts +23 -0
  900. package/es/i18n/resources/en/table.mjs +24 -0
  901. package/es/i18n/resources/en/table.mjs.map +1 -0
  902. package/es/i18n/resources/en/video.d.mts +23 -0
  903. package/es/i18n/resources/en/video.mjs +24 -0
  904. package/es/i18n/resources/en/video.mjs.map +1 -0
  905. package/es/i18n/resources/zhCn/colorPicker.d.mts +5 -0
  906. package/es/i18n/resources/zhCn/colorPicker.mjs +5 -0
  907. package/es/i18n/resources/zhCn/colorPicker.mjs.map +1 -1
  908. package/es/i18n/resources/zhCn/datePicker.d.mts +54 -0
  909. package/es/i18n/resources/zhCn/datePicker.mjs +55 -1
  910. package/es/i18n/resources/zhCn/datePicker.mjs.map +1 -1
  911. package/es/i18n/resources/zhCn/index.d.mts +4 -2
  912. package/es/i18n/resources/zhCn/index.mjs +7 -3
  913. package/es/i18n/resources/zhCn/index.mjs.map +1 -1
  914. package/es/i18n/resources/zhCn/table.d.mts +23 -0
  915. package/es/i18n/resources/zhCn/table.mjs +24 -0
  916. package/es/i18n/resources/zhCn/table.mjs.map +1 -0
  917. package/es/i18n/resources/zhCn/video.d.mts +23 -0
  918. package/es/i18n/resources/zhCn/video.mjs +24 -0
  919. package/es/i18n/resources/zhCn/video.mjs.map +1 -0
  920. package/es/i18n/types.d.mts +4 -1
  921. package/es/index.d.mts +20 -8
  922. package/es/index.mjs +17 -9
  923. package/es/internal/menu/itemInterface.d.mts +1 -0
  924. package/es/internal/menu/renderUtils.d.mts +1 -0
  925. package/es/internal/overflow/OverflowList.mjs +71 -0
  926. package/es/internal/overflow/OverflowList.mjs.map +1 -0
  927. package/es/internal/virtual/VirtualScrollArea.mjs +1 -1
  928. package/es/internal/virtual/VirtualScrollArea.mjs.map +1 -1
  929. package/es/mdx/Callout/index.mjs +2 -2
  930. package/es/mdx/Callout/index.mjs.map +1 -1
  931. package/es/mdx/Cards/Card.mjs +2 -2
  932. package/es/mdx/Cards/Card.mjs.map +1 -1
  933. package/es/mdx/Cards/index.mjs +2 -2
  934. package/es/mdx/Cards/index.mjs.map +1 -1
  935. package/es/mdx/Mdx/index.mjs +2 -2
  936. package/es/mdx/Mdx/index.mjs.map +1 -1
  937. package/es/mdx/Steps/index.mjs +2 -2
  938. package/es/mdx/Steps/index.mjs.map +1 -1
  939. package/es/mdx/mdxComponents/Pre.mjs +5 -5
  940. package/es/mdx/mdxComponents/Pre.mjs.map +1 -1
  941. package/es/mdx/mdxComponents/Video.d.mts +2 -1
  942. package/es/mdx/mdxComponents/Video.mjs +5 -3
  943. package/es/mdx/mdxComponents/Video.mjs.map +1 -1
  944. package/es/mobile/ChatInputArea/ChatInputArea.mjs +1 -1
  945. package/es/mobile/ChatInputArea/ChatInputArea.mjs.map +1 -1
  946. package/es/mobile/TabBar/TabBar.mjs +1 -1
  947. package/es/mobile/TabBar/TabBar.mjs.map +1 -1
  948. package/es/node_modules/.pnpm/@eslint_core@1.2.1/node_modules/@eslint/core/dist/esm/types.d.mts +2 -46
  949. package/es/node_modules/.pnpm/@eslint_plugin-kit@0.7.3/node_modules/@eslint/plugin-kit/dist/cjs/index.d.mts +1 -1
  950. package/es/node_modules/.pnpm/@types_estree@1.0.9/node_modules/@types/estree/index.d.mts +1 -4
  951. package/es/node_modules/.pnpm/@types_mdx@2.0.14/node_modules/@types/mdx/types.d.mts +1 -0
  952. 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
  953. package/es/storybook/StoryBook/style.mjs +2 -0
  954. package/es/storybook/StoryBook/style.mjs.map +1 -1
  955. package/es/style.css +3534 -978
  956. package/es/styles/createGlobalStyle.d.mts +1 -0
  957. package/es/styles/createGlobalStyle.mjs +1 -1
  958. package/es/styles/index.d.mts +3 -2
  959. package/es/styles/index.mjs +5 -4
  960. package/es/styles/stylex/cssVar.stylex.mjs +3 -0
  961. package/es/styles/stylex/cssVar.stylex.mjs.map +1 -1
  962. package/es/styles/stylex/props.mjs +2 -2
  963. package/es/styles/stylex/props.mjs.map +1 -1
  964. package/es/styles/theme/createLobeToken.d.mts +10 -6
  965. package/es/styles/theme/createLobeToken.mjs.map +1 -1
  966. package/es/styles/theme/customPrimary.d.mts +7 -0
  967. package/es/styles/theme/customPrimary.mjs +66 -0
  968. package/es/styles/theme/customPrimary.mjs.map +1 -0
  969. package/es/styles/theme/generateColorPalette.d.mts +1 -0
  970. package/es/styles/theme/scope.d.mts +5 -3
  971. package/es/styles/theme/scope.mjs +30 -8
  972. package/es/styles/theme/scope.mjs.map +1 -1
  973. package/es/styles/theme/themeCss.d.mts +2 -0
  974. package/es/styles/theme/themeCss.mjs +24 -2
  975. package/es/styles/theme/themeCss.mjs.map +1 -1
  976. package/es/styles/theme/token/legacy.mjs +12 -12
  977. package/es/styles/theme/token/legacy.mjs.map +1 -1
  978. package/es/styles/theme/token/neutral.mjs +17 -9
  979. package/es/styles/theme/token/neutral.mjs.map +1 -1
  980. package/es/styles/theme/token/neutralText.mjs +91 -0
  981. package/es/styles/theme/token/neutralText.mjs.map +1 -0
  982. package/es/styles/theme/token/palette.mjs +16 -41
  983. package/es/styles/theme/token/palette.mjs.map +1 -1
  984. package/es/styles/theme/token/primary.mjs +6 -2
  985. package/es/styles/theme/token/primary.mjs.map +1 -1
  986. package/es/styles/theme/token/static.mjs +3 -0
  987. package/es/styles/theme/token/static.mjs.map +1 -1
  988. package/es/theme.css +301 -290
  989. package/es/types/customToken.d.mts +1 -0
  990. package/es/utils/colorMath.mjs +52 -0
  991. package/es/utils/colorMath.mjs.map +1 -0
  992. package/es/utils/formatNumber.mjs +7 -0
  993. package/es/utils/formatNumber.mjs.map +1 -0
  994. package/es/utils/genCdnUrl.mjs +6 -3
  995. package/es/utils/genCdnUrl.mjs.map +1 -1
  996. package/es/utils/hashString.mjs +19 -0
  997. package/es/utils/hashString.mjs.map +1 -0
  998. package/es/utils/mergeRefs.mjs +20 -0
  999. package/es/utils/mergeRefs.mjs.map +1 -0
  1000. package/es/utils/placement.d.mts +5 -5
  1001. package/es/utils/placement.mjs.map +1 -1
  1002. package/package.json +25 -46
  1003. package/es/DatePicker/CalendarPanel.mjs +0 -189
  1004. package/es/DatePicker/CalendarPanel.mjs.map +0 -1
  1005. package/es/DatePicker/PickerShell.mjs +0 -43
  1006. package/es/DatePicker/PickerShell.mjs.map +0 -1
  1007. package/es/DatePicker/calendar.d.mts +0 -4
  1008. package/es/DatePicker/calendar.mjs +0 -46
  1009. package/es/DatePicker/calendar.mjs.map +0 -1
  1010. package/es/Table/FilterMenu.mjs +0 -45
  1011. package/es/Table/FilterMenu.mjs.map +0 -1
  1012. package/es/Table/TableBody.mjs +0 -67
  1013. package/es/Table/TableBody.mjs.map +0 -1
  1014. package/es/Table/TableHead.mjs +0 -58
  1015. package/es/Table/TableHead.mjs.map +0 -1
  1016. package/es/Table/features.mjs +0 -12
  1017. package/es/Table/features.mjs.map +0 -1
  1018. package/es/Table/fixedOffsets.mjs +0 -29
  1019. package/es/Table/fixedOffsets.mjs.map +0 -1
  1020. package/es/Table/marker.stylex.mjs +0 -9
  1021. package/es/Table/marker.stylex.mjs.map +0 -1
  1022. package/es/Table/toColumnDefs.mjs +0 -26
  1023. package/es/Table/toColumnDefs.mjs.map +0 -1
  1024. package/es/Table/useTableState.mjs +0 -99
  1025. package/es/Table/useTableState.mjs.map +0 -1
  1026. package/es/Video/marker.stylex.mjs +0 -9
  1027. package/es/Video/marker.stylex.mjs.map +0 -1
  1028. package/es/dashboard/StatCard/style.mjs +0 -105
  1029. package/es/dashboard/StatCard/style.mjs.map +0 -1
@@ -0,0 +1,101 @@
1
+ "use client";
2
+ import { useTableView } from "./context.mjs";
3
+ import { BodyRow } from "./Body.mjs";
4
+ import { useVirtualModel } from "../engine/useTableEngine.mjs";
5
+ import { useLayoutEffect } from "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ //#region src/Table/render/VirtualBody.tsx
8
+ const getRowSpan = (leaf, row) => {
9
+ if (!row) return 1;
10
+ return leaf.column.source.column.onCell?.(row.record, row.index)?.rowSpan ?? 1;
11
+ };
12
+ const collectSpanLines = (leaves, rows, start, end) => {
13
+ const spanning = leaves.filter((leaf) => leaf.column.source.column.onCell);
14
+ if (spanning.length === 0 || end < 0) return [];
15
+ let first = start;
16
+ let covered = spanning.filter((leaf) => getRowSpan(leaf, rows[start]) === 0);
17
+ for (let index = start; index >= 0 && covered.length > 0; index -= 1) {
18
+ covered = covered.filter((leaf) => getRowSpan(leaf, rows[index]) === 0);
19
+ first = index;
20
+ }
21
+ const lines = [];
22
+ for (let index = first; index <= end; index += 1) if (spanning.some((leaf) => getRowSpan(leaf, rows[index]) > 1)) lines.push(index);
23
+ return lines;
24
+ };
25
+ const VirtualBody = ({ emptyNode, holderRef, input, maxHeight, onScroll, rows, scrollRef, scrollX }) => {
26
+ const virtual = useVirtualModel(input, rows);
27
+ useLayoutEffect(() => {
28
+ scrollRef.current = virtual.scrollTo;
29
+ });
30
+ const { leafColumns, prefixCls, semanticClassNames, semanticStyles } = useTableView();
31
+ const width = scrollX === true ? "auto" : scrollX;
32
+ const offset = virtual.items[0]?.start ?? 0;
33
+ const spanLines = collectSpanLines(leafColumns, rows, virtual.items[0]?.index ?? 0, virtual.items.at(-1)?.index ?? -1);
34
+ return /* @__PURE__ */ jsx("div", {
35
+ style: semanticStyles.body.wrapper,
36
+ className: [`${prefixCls}-tbody-virtual`, semanticClassNames.body.wrapper].filter(Boolean).join(" "),
37
+ children: /* @__PURE__ */ jsx("div", {
38
+ className: `${prefixCls}-tbody-virtual-holder`,
39
+ ref: holderRef,
40
+ style: {
41
+ maxHeight,
42
+ overflow: "auto"
43
+ },
44
+ onScroll,
45
+ children: /* @__PURE__ */ jsxs("div", {
46
+ className: `${prefixCls}-tbody-virtual-holder-inner`,
47
+ style: {
48
+ height: virtual.totalSize,
49
+ minWidth: "100%",
50
+ position: "relative",
51
+ width
52
+ },
53
+ children: [rows.length === 0 ? /* @__PURE__ */ jsx("div", {
54
+ className: `${prefixCls}-placeholder`,
55
+ children: emptyNode
56
+ }) : /* @__PURE__ */ jsx("div", {
57
+ style: {
58
+ position: "relative",
59
+ top: offset
60
+ },
61
+ children: virtual.items.map((item) => {
62
+ const row = rows[item.index];
63
+ if (!row) return null;
64
+ return /* @__PURE__ */ jsx("div", {
65
+ "data-index": item.index,
66
+ ref: virtual.measureElement,
67
+ children: /* @__PURE__ */ jsx(BodyRow, {
68
+ depth: row.depth,
69
+ hasChildren: row.hasChildren,
70
+ index: row.index,
71
+ record: row.record,
72
+ renderIndex: row.renderIndex,
73
+ rowKey: row.key
74
+ })
75
+ }, item.key);
76
+ })
77
+ }), spanLines.map((index) => {
78
+ const row = rows[index];
79
+ const top = virtual.getRange(index)?.start ?? 0;
80
+ const getHeight = (rowSpan) => (virtual.getRange(Math.min(index + rowSpan - 1, rows.length - 1))?.end ?? top) - top;
81
+ return /* @__PURE__ */ jsx(BodyRow, {
82
+ depth: row.depth,
83
+ extra: {
84
+ getHeight,
85
+ top
86
+ },
87
+ hasChildren: row.hasChildren,
88
+ index: row.index,
89
+ record: row.record,
90
+ renderIndex: row.renderIndex,
91
+ rowKey: row.key
92
+ }, `extra-${row.key}`);
93
+ })]
94
+ })
95
+ })
96
+ });
97
+ };
98
+ //#endregion
99
+ export { VirtualBody as default };
100
+
101
+ //# sourceMappingURL=VirtualBody.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VirtualBody.mjs","names":[],"sources":["../../../src/Table/render/VirtualBody.tsx"],"sourcesContent":["'use client';\n\nimport { type ReactNode, type Ref, type RefObject, type UIEvent, useLayoutEffect } from 'react';\n\nimport type { LeafColumnModel, RowModel, VirtualInput, VirtualScrollConfig } from '../engine/types';\nimport { useVirtualModel } from '../engine/useTableEngine';\nimport type { ColumnSource } from '../pipeline/normalizeColumns';\nimport type { TableColumnType } from '../type';\nimport { BodyRow } from './Body';\nimport { useTableView } from './context';\n\ninterface VirtualBodyProps<T> {\n emptyNode: ReactNode;\n holderRef: Ref<HTMLDivElement>;\n input: VirtualInput;\n maxHeight?: number | string;\n onScroll: (event: UIEvent<HTMLDivElement>) => void;\n rows: readonly RowModel<T>[];\n scrollRef: RefObject<((config: VirtualScrollConfig) => void) | undefined>;\n scrollX?: number | string | true;\n}\n\nconst getRowSpan = <T,>(leaf: LeafColumnModel<ColumnSource<T>>, row: RowModel<T> | undefined) => {\n if (!row) return 1;\n const column = leaf.column.source.column as TableColumnType<T>;\n return column.onCell?.(row.record, row.index)?.rowSpan ?? 1;\n};\n\nconst collectSpanLines = <T,>(\n leaves: readonly LeafColumnModel<ColumnSource<T>>[],\n rows: readonly RowModel<T>[],\n start: number,\n end: number,\n) => {\n const spanning = leaves.filter(\n (leaf) => (leaf.column.source.column as TableColumnType<T>).onCell,\n );\n if (spanning.length === 0 || end < 0) return [];\n\n let first = start;\n let covered = spanning.filter((leaf) => getRowSpan(leaf, rows[start]) === 0);\n for (let index = start; index >= 0 && covered.length > 0; index -= 1) {\n covered = covered.filter((leaf) => getRowSpan(leaf, rows[index]) === 0);\n first = index;\n }\n\n const lines: number[] = [];\n for (let index = first; index <= end; index += 1) {\n if (spanning.some((leaf) => getRowSpan(leaf, rows[index]) > 1)) lines.push(index);\n }\n return lines;\n};\n\nconst VirtualBody = <T,>({\n emptyNode,\n holderRef,\n input,\n maxHeight,\n onScroll,\n rows,\n scrollRef,\n scrollX,\n}: VirtualBodyProps<T>) => {\n const virtual = useVirtualModel(input, rows);\n useLayoutEffect(() => {\n scrollRef.current = virtual.scrollTo;\n });\n const { leafColumns, prefixCls, semanticClassNames, semanticStyles } = useTableView<T>();\n const width = scrollX === true ? 'auto' : scrollX;\n const offset = virtual.items[0]?.start ?? 0;\n const spanLines = collectSpanLines(\n leafColumns,\n rows,\n virtual.items[0]?.index ?? 0,\n virtual.items.at(-1)?.index ?? -1,\n );\n\n return (\n <div\n style={semanticStyles.body.wrapper}\n className={[`${prefixCls}-tbody-virtual`, semanticClassNames.body.wrapper]\n .filter(Boolean)\n .join(' ')}\n >\n <div\n className={`${prefixCls}-tbody-virtual-holder`}\n ref={holderRef}\n style={{ maxHeight, overflow: 'auto' }}\n onScroll={onScroll}\n >\n <div\n className={`${prefixCls}-tbody-virtual-holder-inner`}\n style={{ height: virtual.totalSize, minWidth: '100%', position: 'relative', width }}\n >\n {rows.length === 0 ? (\n <div className={`${prefixCls}-placeholder`}>{emptyNode}</div>\n ) : (\n // Not a transform: that opens a stacking context and FixedFrost's rail would\n // cover the fixed cells inside it.\n <div style={{ position: 'relative', top: offset }}>\n {virtual.items.map((item) => {\n const row = rows[item.index];\n if (!row) return null;\n return (\n <div data-index={item.index} key={item.key} ref={virtual.measureElement}>\n <BodyRow\n depth={row.depth}\n hasChildren={row.hasChildren}\n index={row.index}\n record={row.record}\n renderIndex={row.renderIndex}\n rowKey={row.key}\n />\n </div>\n );\n })}\n </div>\n )}\n {spanLines.map((index) => {\n const row = rows[index];\n const top = virtual.getRange(index)?.start ?? 0;\n const getHeight = (rowSpan: number) =>\n (virtual.getRange(Math.min(index + rowSpan - 1, rows.length - 1))?.end ?? top) - top;\n return (\n <BodyRow\n depth={row.depth}\n extra={{ getHeight, top }}\n hasChildren={row.hasChildren}\n index={row.index}\n key={`extra-${row.key}`}\n record={row.record}\n renderIndex={row.renderIndex}\n rowKey={row.key}\n />\n );\n })}\n </div>\n </div>\n </div>\n );\n};\n\nexport default VirtualBody;\n"],"mappings":";;;;;;;AAsBA,MAAM,cAAkB,MAAwC,QAAiC;CAC/F,IAAI,CAAC,KAAK,OAAO;CAEjB,OADe,KAAK,OAAO,OAAO,OACpB,SAAS,IAAI,QAAQ,IAAI,KAAK,CAAC,EAAE,WAAW;AAC5D;AAEA,MAAM,oBACJ,QACA,MACA,OACA,QACG;CACH,MAAM,WAAW,OAAO,QACrB,SAAU,KAAK,OAAO,OAAO,OAA8B,MAC9D;CACA,IAAI,SAAS,WAAW,KAAK,MAAM,GAAG,OAAO,CAAC;CAE9C,IAAI,QAAQ;CACZ,IAAI,UAAU,SAAS,QAAQ,SAAS,WAAW,MAAM,KAAK,MAAM,MAAM,CAAC;CAC3E,KAAK,IAAI,QAAQ,OAAO,SAAS,KAAK,QAAQ,SAAS,GAAG,SAAS,GAAG;EACpE,UAAU,QAAQ,QAAQ,SAAS,WAAW,MAAM,KAAK,MAAM,MAAM,CAAC;EACtE,QAAQ;CACV;CAEA,MAAM,QAAkB,CAAC;CACzB,KAAK,IAAI,QAAQ,OAAO,SAAS,KAAK,SAAS,GAC7C,IAAI,SAAS,MAAM,SAAS,WAAW,MAAM,KAAK,MAAM,IAAI,CAAC,GAAG,MAAM,KAAK,KAAK;CAElF,OAAO;AACT;AAEA,MAAM,eAAmB,EACvB,WACA,WACA,OACA,WACA,UACA,MACA,WACA,cACyB;CACzB,MAAM,UAAU,gBAAgB,OAAO,IAAI;CAC3C,sBAAsB;EACpB,UAAU,UAAU,QAAQ;CAC9B,CAAC;CACD,MAAM,EAAE,aAAa,WAAW,oBAAoB,mBAAmB,aAAgB;CACvF,MAAM,QAAQ,YAAY,OAAO,SAAS;CAC1C,MAAM,SAAS,QAAQ,MAAM,EAAE,EAAE,SAAS;CAC1C,MAAM,YAAY,iBAChB,aACA,MACA,QAAQ,MAAM,EAAE,EAAE,SAAS,GAC3B,QAAQ,MAAM,GAAG,EAAE,CAAC,EAAE,SAAS,EACjC;CAEA,OACE,oBAAC,OAAD;EACE,OAAO,eAAe,KAAK;EAC3B,WAAW,CAAC,GAAG,UAAU,iBAAiB,mBAAmB,KAAK,OAAO,CAAC,CACvE,OAAO,OAAO,CAAC,CACf,KAAK,GAAG;EAEX,UAAA,oBAAC,OAAD;GACE,WAAW,GAAG,UAAU;GACxB,KAAK;GACL,OAAO;IAAE;IAAW,UAAU;GAAO;GAC3B;GAEV,UAAA,qBAAC,OAAD;IACE,WAAW,GAAG,UAAU;IACxB,OAAO;KAAE,QAAQ,QAAQ;KAAW,UAAU;KAAQ,UAAU;KAAY;IAAM;IAFpF,UAAA,CAIG,KAAK,WAAW,IACf,oBAAC,OAAD;KAAK,WAAW,GAAG,UAAU;KAAgB,UAAA;IAAe,CAAA,IAI5D,oBAAC,OAAD;KAAK,OAAO;MAAE,UAAU;MAAY,KAAK;KAAO;KAC7C,UAAA,QAAQ,MAAM,KAAK,SAAS;MAC3B,MAAM,MAAM,KAAK,KAAK;MACtB,IAAI,CAAC,KAAK,OAAO;MACjB,OACE,oBAAC,OAAD;OAAK,cAAY,KAAK;OAAsB,KAAK,QAAQ;OACvD,UAAA,oBAAC,SAAD;QACE,OAAO,IAAI;QACX,aAAa,IAAI;QACjB,OAAO,IAAI;QACX,QAAQ,IAAI;QACZ,aAAa,IAAI;QACjB,QAAQ,IAAI;OACb,CAAA;MACE,GAT6B,KAAK,GASlC;KAET,CAAC;IACE,CAAA,GAEN,UAAU,KAAK,UAAU;KACxB,MAAM,MAAM,KAAK;KACjB,MAAM,MAAM,QAAQ,SAAS,KAAK,CAAC,EAAE,SAAS;KAC9C,MAAM,aAAa,aAChB,QAAQ,SAAS,KAAK,IAAI,QAAQ,UAAU,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,OAAO;KACnF,OACE,oBAAC,SAAD;MACE,OAAO,IAAI;MACX,OAAO;OAAE;OAAW;MAAI;MACxB,aAAa,IAAI;MACjB,OAAO,IAAI;MAEX,QAAQ,IAAI;MACZ,aAAa,IAAI;MACjB,QAAQ,IAAI;KACb,GAJM,SAAS,IAAI,KAInB;IAEL,CAAC,CACE;;EACF,CAAA;CACF,CAAA;AAET"}
@@ -0,0 +1,15 @@
1
+ "use client";
2
+ import { createContext, use } from "react";
3
+ //#region src/Table/render/context.ts
4
+ const TableViewContext = createContext(null);
5
+ const useTableView = () => use(TableViewContext);
6
+ const SelectionContext = createContext(null);
7
+ const useSelectionView = () => use(SelectionContext);
8
+ const HeaderContext = createContext(null);
9
+ const useHeaderView = () => use(HeaderContext);
10
+ const MeasureRowContext = createContext(false);
11
+ const VirtualCellContext = createContext({ inverse: false });
12
+ //#endregion
13
+ export { HeaderContext, MeasureRowContext, SelectionContext, TableViewContext, VirtualCellContext, useHeaderView, useSelectionView, useTableView };
14
+
15
+ //# sourceMappingURL=context.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.mjs","names":[],"sources":["../../../src/Table/render/context.ts"],"sourcesContent":["'use client';\n\nimport {\n createContext,\n type CSSProperties,\n type HTMLAttributes,\n type Key,\n type ReactNode,\n use,\n} from 'react';\n\nimport type { LeafColumnModel } from '../engine/types';\nimport type { ColumnSource } from '../pipeline/normalizeColumns';\nimport type { ExpandType } from '../pipeline/useExpandable';\nimport type { FilterKeys, FilterState } from '../pipeline/useFilter';\nimport type { MergedSelectionItem, SelectionActions } from '../pipeline/useSelection';\nimport type { SortState } from '../pipeline/useSorter';\nimport type { NormalizedSemantic } from '../semantic';\nimport type {\n SortOrder,\n TableColumn,\n TableColumnTitleProps,\n TableCustomizeComponent,\n TableExpandIconProps,\n TableLocale,\n TableRowClassName,\n TableRowSelection,\n TableRowSelectionCheckboxProps,\n TableSorterTooltipProps,\n} from '../type';\n\nexport interface TableComponentSet {\n bodyCell?: TableCustomizeComponent;\n bodyRow?: TableCustomizeComponent;\n bodyWrapper?: TableCustomizeComponent;\n headerCell?: TableCustomizeComponent;\n headerRow?: TableCustomizeComponent;\n headerTable?: TableCustomizeComponent;\n headerWrapper?: TableCustomizeComponent;\n table?: TableCustomizeComponent;\n}\n\nexport interface ExpandView<T> {\n expandedRowClassName?: string | TableRowClassName<T>;\n expandedRowRender?: (record: T, index: number, indent: number, expanded: boolean) => ReactNode;\n expandIcon: (props: TableExpandIconProps<T>) => ReactNode;\n expandRowByClick?: boolean;\n forceRender?: boolean;\n indentSize: number;\n nestIconColumnIndex: number;\n rowExpandable?: (record: T) => boolean;\n toggle: (record: T, event?: unknown) => void;\n type: ExpandType;\n}\n\nexport interface TableViewValue<T = any> {\n components: TableComponentSet;\n expand: ExpandView<T>;\n fixColumn: boolean;\n getRowKey: (record: T, index?: number) => Key;\n horizonScroll: boolean;\n leafColumns: LeafColumnModel<ColumnSource<T>>[];\n onRow?: (record: T, index: number) => HTMLAttributes<HTMLTableRowElement>;\n prefixCls: string;\n rowClassName?: string | TableRowClassName<T>;\n rowHoverable: boolean;\n semanticClassNames: NormalizedSemantic<string>;\n semanticStyles: NormalizedSemantic<CSSProperties>;\n virtualWidths?: readonly number[];\n}\n\nexport const TableViewContext = createContext<TableViewValue | null>(null);\n\nexport const useTableView = <T>() => use(TableViewContext) as TableViewValue<T>;\n\nexport interface SelectionView<T = any> {\n actions: SelectionActions;\n checkboxPropsMap: ReadonlyMap<Key, TableRowSelectionCheckboxProps>;\n expandType: ExpandType;\n getRowKey: (record: T, index?: number) => Key;\n getTitleCheckboxProps?: () => TableRowSelectionCheckboxProps;\n hideSelectAll?: boolean;\n locale: TableLocale;\n renderCell?: TableRowSelection<T>['renderCell'];\n selections: MergedSelectionItem[] | null;\n title?: TableRowSelection<T>['columnTitle'];\n type: 'checkbox' | 'radio';\n}\n\nexport const SelectionContext = createContext<SelectionView | null>(null);\n\nexport const useSelectionView = <T>() => use(SelectionContext) as SelectionView<T>;\n\nexport interface HeaderView<T = any> {\n filterStates: readonly FilterState<T>[];\n getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;\n locale: TableLocale;\n onHeaderRow?: (\n columns: readonly TableColumn<T>[],\n index?: number,\n ) => HTMLAttributes<HTMLTableRowElement>;\n showSorterTooltip: boolean | TableSorterTooltipProps;\n sortDirections: SortOrder[];\n sortStates: readonly SortState<T>[];\n titleProps: TableColumnTitleProps<T>;\n triggerFilter: (columnKey: string, filteredKeys: FilterKeys) => void;\n triggerSort: (state: SortState<T>) => void;\n}\n\nexport const HeaderContext = createContext<HeaderView | null>(null);\n\nexport const useHeaderView = <T>() => use(HeaderContext) as HeaderView<T>;\n\nexport const MeasureRowContext = createContext(false);\n\nexport interface VirtualCellValue {\n getHeight?: (rowSpan: number) => number;\n inverse: boolean;\n}\n\nexport const VirtualCellContext = createContext<VirtualCellValue>({ inverse: false });\n"],"mappings":";;;AAuEA,MAAa,mBAAmB,cAAqC,IAAI;AAEzE,MAAa,qBAAwB,IAAI,gBAAgB;AAgBzD,MAAa,mBAAmB,cAAoC,IAAI;AAExE,MAAa,yBAA4B,IAAI,gBAAgB;AAkB7D,MAAa,gBAAgB,cAAiC,IAAI;AAElE,MAAa,sBAAyB,IAAI,aAAa;AAEvD,MAAa,oBAAoB,cAAc,KAAK;AAOpD,MAAa,qBAAqB,cAAgC,EAAE,SAAS,MAAM,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { PREFIX_CLS } from "../constants.mjs";
2
+ import { getAllKeys } from "../../Tree/utils.mjs";
3
+ import * as stylex from "@stylexjs/stylex";
4
+ //#region src/Table/render/filterUtils.ts
5
+ const sx = (...list) => stylex.props(...list).className;
6
+ const FILTER_CLS = `${PREFIX_CLS}-filter`;
7
+ const sameKeys = (a, b) => (a ?? null) === (b ?? null) || Boolean(a) && Boolean(b) && a.length === b.length && a.every((key, i) => key === b[i]);
8
+ const textMatches = (search, text) => (typeof text === "string" || typeof text === "number") && String(text).toLowerCase().includes(search);
9
+ const findLineage = (nodes, key, ancestors = []) => {
10
+ for (const node of nodes) {
11
+ if (node.key === key) return {
12
+ ancestors,
13
+ subtree: getAllKeys([node])
14
+ };
15
+ const found = node.children && findLineage(node.children, key, [...ancestors, node.key]);
16
+ if (found) return found;
17
+ }
18
+ };
19
+ //#endregion
20
+ export { FILTER_CLS, findLineage, sameKeys, sx, textMatches };
21
+
22
+ //# sourceMappingURL=filterUtils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterUtils.mjs","names":[],"sources":["../../../src/Table/render/filterUtils.ts"],"sourcesContent":["import * as stylex from '@stylexjs/stylex';\nimport type { Key, ReactNode } from 'react';\n\nimport { getAllKeys, type TreeDataNode } from '@/Tree';\n\nimport { PREFIX_CLS } from '../constants';\n\nexport const sx = (...list: (stylex.StyleXStyles | false | null | undefined)[]) =>\n stylex.props(...list).className;\n\nexport const FILTER_CLS = `${PREFIX_CLS}-filter`;\n\nexport const sameKeys = (\n a: readonly Key[] | null | undefined,\n b: readonly Key[] | null | undefined,\n) =>\n (a ?? null) === (b ?? null) ||\n (Boolean(a) && Boolean(b) && a!.length === b!.length && a!.every((key, i) => key === b![i]));\n\nexport const textMatches = (search: string, text: ReactNode) =>\n (typeof text === 'string' || typeof text === 'number') &&\n String(text).toLowerCase().includes(search);\n\nexport const findLineage = (\n nodes: readonly TreeDataNode[],\n key: string,\n ancestors: string[] = [],\n): { ancestors: string[]; subtree: string[] } | undefined => {\n for (const node of nodes) {\n if (node.key === key) return { ancestors, subtree: getAllKeys([node]) };\n const found = node.children && findLineage(node.children, key, [...ancestors, node.key]);\n if (found) return found;\n }\n};\n"],"mappings":";;;;AAIA,MAAa,MAAM,GAAG,SAA6D,OAAO,MAAM,GAAG,IAAI,CAAC,CAAC;AACzG,MAAa,aAAa,GAAG,WAAW;AACxC,MAAa,YAAY,GAAsC,OAA0C,KAAK,WAAW,KAAK,SAAS,QAAQ,CAAC,KAAK,QAAQ,CAAC,KAAK,EAAG,WAAW,EAAG,UAAU,EAAG,OAAO,KAAK,MAAM,QAAQ,EAAG,EAAE;AAChO,MAAa,eAAe,QAAgB,UAAqB,OAAO,SAAS,YAAY,OAAO,SAAS,aAAa,OAAO,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,MAAM;AACpK,MAAa,eAAe,OAAgC,KAAa,YAAsB,CAAC,MAG/E;CACf,KAAK,MAAM,QAAQ,OAAO;EACxB,IAAI,KAAK,QAAQ,KAAK,OAAO;GAC3B;GACA,SAAS,WAAW,CAAC,IAAI,CAAC;EAC5B;EACA,MAAM,QAAQ,KAAK,YAAY,YAAY,KAAK,UAAU,KAAK,CAAC,GAAG,WAAW,KAAK,GAAG,CAAC;EACvF,IAAI,OAAO,OAAO;CACpB;AACF"}
@@ -0,0 +1,27 @@
1
+ //#region src/Table/render/tableHelpers.ts
2
+ const toTableRef = (element, scrollTo) => {
3
+ const extra = {
4
+ nativeElement: element,
5
+ scrollTo
6
+ };
7
+ return new Proxy(element, { get(target, prop) {
8
+ if (prop in extra) return extra[prop];
9
+ const value = Reflect.get(target, prop, target);
10
+ return typeof value === "function" ? value.bind(target) : value;
11
+ } });
12
+ };
13
+ const resolveSticky = (sticky) => {
14
+ const config = typeof sticky === "object" ? sticky : {};
15
+ const fallback = typeof window === "undefined" ? void 0 : window;
16
+ return {
17
+ container: config.getContainer?.() || fallback,
18
+ isSticky: Boolean(sticky),
19
+ offsetHeader: config.offsetHeader ?? 0,
20
+ offsetScroll: config.offsetScroll ?? 0,
21
+ offsetSummary: config.offsetSummary ?? 0
22
+ };
23
+ };
24
+ //#endregion
25
+ export { resolveSticky, toTableRef };
26
+
27
+ //# sourceMappingURL=tableHelpers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableHelpers.mjs","names":[],"sources":["../../../src/Table/render/tableHelpers.ts"],"sourcesContent":["import type { TableProps, TableRef, TableScrollToConfig } from '../type';\nimport type { StickyConfig } from './viewTypes';\n\nexport const toTableRef = (\n element: HTMLDivElement,\n scrollTo: (config: TableScrollToConfig) => void,\n): TableRef => {\n const extra = { nativeElement: element, scrollTo };\n return new Proxy(element, {\n get(target, prop) {\n if (prop in extra) return extra[prop as keyof typeof extra];\n const value = Reflect.get(target, prop, target);\n return typeof value === 'function' ? value.bind(target) : value;\n },\n }) as TableRef;\n};\n\nexport const resolveSticky = (sticky: TableProps<unknown>['sticky']): StickyConfig => {\n const config = typeof sticky === 'object' ? sticky : {};\n const fallback = typeof window === 'undefined' ? (undefined as any) : window;\n return {\n container: config.getContainer?.() || fallback,\n isSticky: Boolean(sticky),\n offsetHeader: config.offsetHeader ?? 0,\n offsetScroll: config.offsetScroll ?? 0,\n offsetSummary: config.offsetSummary ?? 0,\n };\n};\n"],"mappings":";AAGA,MAAa,cACX,SACA,aACa;CACb,MAAM,QAAQ;EAAE,eAAe;EAAS;CAAS;CACjD,OAAO,IAAI,MAAM,SAAS,EACxB,IAAI,QAAQ,MAAM;EAChB,IAAI,QAAQ,OAAO,OAAO,MAAM;EAChC,MAAM,QAAQ,QAAQ,IAAI,QAAQ,MAAM,MAAM;EAC9C,OAAO,OAAO,UAAU,aAAa,MAAM,KAAK,MAAM,IAAI;CAC5D,EACF,CAAC;AACH;AAEA,MAAa,iBAAiB,WAAwD;CACpF,MAAM,SAAS,OAAO,WAAW,WAAW,SAAS,CAAC;CACtD,MAAM,WAAW,OAAO,WAAW,cAAe,KAAA,IAAoB;CACtE,OAAO;EACL,WAAW,OAAO,eAAe,KAAK;EACtC,UAAU,QAAQ,MAAM;EACxB,cAAc,OAAO,gBAAgB;EACrC,cAAc,OAAO,gBAAgB;EACrC,eAAe,OAAO,iBAAiB;CACzC;AACF"}
@@ -0,0 +1,23 @@
1
+ import { TableColGroup } from "../atoms/layout.mjs";
2
+ import { jsx } from "react/jsx-runtime";
3
+ //#region src/Table/render/useColGroups.tsx
4
+ const useColGroups = ({ colWidths, headerScrollbar, leafColumns, rowCount, tableLayout, virtualWidths }) => {
5
+ const colGroupColumns = leafColumns.map((leaf, index) => ({
6
+ className: leaf.column.source.colClassName,
7
+ minWidth: tableLayout === "auto" ? leaf.column.source.column.minWidth : void 0,
8
+ width: virtualWidths ? virtualWidths[index] : leaf.column.width
9
+ }));
10
+ const bodyColGroup = /* @__PURE__ */ jsx(TableColGroup, { columns: colGroupColumns });
11
+ const allMeasured = rowCount > 0 && colWidths.length === leafColumns.length && colWidths.every((width) => width !== void 0) && !colWidths.every((width) => !width);
12
+ return {
13
+ bodyColGroup,
14
+ holderColGroup: allMeasured || headerScrollbar ? /* @__PURE__ */ jsx(TableColGroup, { columns: [...allMeasured ? colWidths.map((width, index) => ({
15
+ ...colGroupColumns[index],
16
+ width
17
+ })) : colGroupColumns, ...headerScrollbar ? [{ width: headerScrollbar }] : []] }) : bodyColGroup
18
+ };
19
+ };
20
+ //#endregion
21
+ export { useColGroups };
22
+
23
+ //# sourceMappingURL=useColGroups.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useColGroups.mjs","names":[],"sources":["../../../src/Table/render/useColGroups.tsx"],"sourcesContent":["import { TableColGroup, type TableColGroupColumn } from '../atoms';\nimport type { LeafColumnModel } from '../engine/types';\nimport type { ColumnSource } from '../pipeline/normalizeColumns';\n\ninterface ColGroupsOptions<T> {\n colWidths: readonly number[];\n headerScrollbar: number;\n leafColumns: readonly LeafColumnModel<ColumnSource<T>>[];\n rowCount: number;\n tableLayout: 'auto' | 'fixed';\n virtualWidths?: readonly number[];\n}\n\nexport const useColGroups = <T,>({\n colWidths,\n headerScrollbar,\n leafColumns,\n rowCount,\n tableLayout,\n virtualWidths,\n}: ColGroupsOptions<T>) => {\n const colGroupColumns: TableColGroupColumn[] = leafColumns.map((leaf, index) => ({\n className: leaf.column.source.colClassName,\n minWidth:\n tableLayout === 'auto'\n ? (leaf.column.source.column as { minWidth?: number }).minWidth\n : undefined,\n width: virtualWidths ? virtualWidths[index] : leaf.column.width,\n }));\n const bodyColGroup = <TableColGroup columns={colGroupColumns} />;\n\n const allMeasured =\n rowCount > 0 &&\n colWidths.length === leafColumns.length &&\n colWidths.every((width) => width !== undefined) &&\n !colWidths.every((width) => !width);\n const holderColGroup =\n allMeasured || headerScrollbar ? (\n <TableColGroup\n columns={[\n ...(allMeasured\n ? colWidths.map((width, index) => ({ ...colGroupColumns[index], width }))\n : colGroupColumns),\n ...(headerScrollbar ? [{ width: headerScrollbar }] : []),\n ]}\n />\n ) : (\n bodyColGroup\n );\n\n return { bodyColGroup, holderColGroup };\n};\n"],"mappings":";;;AAaA,MAAa,gBAAoB,EAC/B,WACA,iBACA,aACA,UACA,aACA,oBACyB;CACzB,MAAM,kBAAyC,YAAY,KAAK,MAAM,WAAW;EAC/E,WAAW,KAAK,OAAO,OAAO;EAC9B,UACE,gBAAgB,SACX,KAAK,OAAO,OAAO,OAAiC,WACrD,KAAA;EACN,OAAO,gBAAgB,cAAc,SAAS,KAAK,OAAO;CAC5D,EAAE;CACF,MAAM,eAAe,oBAAC,eAAD,EAAe,SAAS,gBAAkB,CAAA;CAE/D,MAAM,cACJ,WAAW,KACX,UAAU,WAAW,YAAY,UACjC,UAAU,OAAO,UAAU,UAAU,KAAA,CAAS,KAC9C,CAAC,UAAU,OAAO,UAAU,CAAC,KAAK;CAepC,OAAO;EAAE;EAAc,gBAbrB,eAAe,kBACb,oBAAC,eAAD,EACE,SAAS,CACP,GAAI,cACA,UAAU,KAAK,OAAO,WAAW;GAAE,GAAG,gBAAgB;GAAQ;EAAM,EAAE,IACtE,iBACJ,GAAI,kBAAkB,CAAC,EAAE,OAAO,gBAAgB,CAAC,IAAI,CAAC,CACxD,EACD,CAAA,IAED;CAGkC;AACxC"}
@@ -0,0 +1,104 @@
1
+ import { useEventCallback } from "../../hooks/useEventCallback.mjs";
2
+ import { useEffect, useLayoutEffect, useRef, useState } from "react";
3
+ //#region src/Table/render/useScrollSync.ts
4
+ const forceScroll = (scrollLeft, target) => {
5
+ if (target && target.scrollLeft !== scrollLeft) target.scrollLeft = scrollLeft;
6
+ };
7
+ const useScrollSync = ({ bodyRef, columnCount, fixHeader, horizonScroll, prefixCls, rows, sticky }) => {
8
+ const rootRef = useRef(null);
9
+ const headerRef = useRef(null);
10
+ const summaryRef = useRef(null);
11
+ const stickyRef = useRef(null);
12
+ const shadowRef = useRef({
13
+ end: false,
14
+ start: false
15
+ });
16
+ const lockRef = useRef({ target: null });
17
+ const [scrollbarSize, setScrollbarSize] = useState(0);
18
+ const [, forceRender] = useState(0);
19
+ const applyShadow = () => {
20
+ const root = rootRef.current;
21
+ if (!root) return;
22
+ root.classList.toggle(`${prefixCls}-fix-start-shadow-show`, horizonScroll && shadowRef.current.start);
23
+ root.classList.toggle(`${prefixCls}-fix-end-shadow-show`, horizonScroll && shadowRef.current.end);
24
+ };
25
+ const onInternalScroll = useEventCallback(({ currentTarget, scrollLeft }) => {
26
+ const target = currentTarget ?? bodyRef.current;
27
+ const left = typeof scrollLeft === "number" ? scrollLeft : target?.scrollLeft ?? 0;
28
+ const lock = lockRef.current;
29
+ if (!lock.target || lock.target === target) {
30
+ lock.target = target ?? null;
31
+ clearTimeout(lock.timer);
32
+ lock.timer = setTimeout(() => {
33
+ lock.target = null;
34
+ }, 100);
35
+ forceScroll(left, headerRef.current);
36
+ forceScroll(left, bodyRef.current);
37
+ forceScroll(left, summaryRef.current);
38
+ stickyRef.current?.setScrollLeft(left);
39
+ }
40
+ const measure = target ?? headerRef.current;
41
+ if (measure) {
42
+ const { clientWidth, scrollWidth } = measure;
43
+ const abs = Math.abs(left);
44
+ shadowRef.current = scrollWidth === clientWidth ? {
45
+ end: false,
46
+ start: false
47
+ } : {
48
+ end: abs < scrollWidth - clientWidth - 1,
49
+ start: abs > 0
50
+ };
51
+ applyShadow();
52
+ }
53
+ });
54
+ useLayoutEffect(() => {
55
+ applyShadow();
56
+ });
57
+ useLayoutEffect(() => {
58
+ const root = rootRef.current;
59
+ if (!root || typeof ResizeObserver === "undefined") return;
60
+ const update = () => {
61
+ root.style.setProperty("--lobe-table-component-width", `${root.offsetWidth}px`);
62
+ stickyRef.current?.checkVisible();
63
+ if (horizonScroll) onInternalScroll({ currentTarget: bodyRef.current });
64
+ };
65
+ update();
66
+ const observer = new ResizeObserver(update);
67
+ observer.observe(root);
68
+ return () => observer.disconnect();
69
+ }, [
70
+ horizonScroll,
71
+ bodyRef,
72
+ onInternalScroll
73
+ ]);
74
+ useEffect(() => {
75
+ if (horizonScroll) onInternalScroll({ currentTarget: bodyRef.current });
76
+ }, [
77
+ horizonScroll,
78
+ rows,
79
+ columnCount,
80
+ bodyRef,
81
+ onInternalScroll
82
+ ]);
83
+ useLayoutEffect(() => {
84
+ const body = bodyRef.current;
85
+ if (!fixHeader || !body) return;
86
+ const size = body.offsetWidth - body.clientWidth;
87
+ setScrollbarSize((previous) => previous === size ? previous : Math.max(0, size));
88
+ });
89
+ useEffect(() => {
90
+ if (sticky) forceRender((count) => count + 1);
91
+ }, [sticky]);
92
+ return {
93
+ headerRef,
94
+ onInternalScroll,
95
+ rootRef,
96
+ scrollbarSize,
97
+ stickyRef,
98
+ summaryRef
99
+ };
100
+ };
101
+ //#endregion
102
+ export { useScrollSync };
103
+
104
+ //# sourceMappingURL=useScrollSync.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useScrollSync.mjs","names":[],"sources":["../../../src/Table/render/useScrollSync.ts"],"sourcesContent":["import { type RefObject, useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\n\nimport type { StickyScrollBarApi } from './StickyScrollBar';\n\nconst forceScroll = (scrollLeft: number, target: HTMLElement | null | undefined) => {\n if (target && target.scrollLeft !== scrollLeft) target.scrollLeft = scrollLeft;\n};\n\ninterface ScrollSyncOptions {\n bodyRef: RefObject<HTMLDivElement | null>;\n columnCount: number;\n fixHeader: boolean;\n horizonScroll: boolean;\n prefixCls: string;\n rows: unknown;\n sticky: boolean;\n}\n\nexport const useScrollSync = ({\n bodyRef,\n columnCount,\n fixHeader,\n horizonScroll,\n prefixCls,\n rows,\n sticky,\n}: ScrollSyncOptions) => {\n const rootRef = useRef<HTMLDivElement | null>(null);\n const headerRef = useRef<HTMLDivElement | null>(null);\n const summaryRef = useRef<HTMLDivElement | null>(null);\n const stickyRef = useRef<StickyScrollBarApi>(null);\n const shadowRef = useRef({ end: false, start: false });\n const lockRef = useRef<{ target: EventTarget | null; timer?: ReturnType<typeof setTimeout> }>({\n target: null,\n });\n const [scrollbarSize, setScrollbarSize] = useState(0);\n const [, forceRender] = useState(0);\n\n const applyShadow = () => {\n const root = rootRef.current;\n if (!root) return;\n root.classList.toggle(\n `${prefixCls}-fix-start-shadow-show`,\n horizonScroll && shadowRef.current.start,\n );\n root.classList.toggle(\n `${prefixCls}-fix-end-shadow-show`,\n horizonScroll && shadowRef.current.end,\n );\n };\n\n const onInternalScroll = useEventCallback(\n ({\n currentTarget,\n scrollLeft,\n }: {\n currentTarget?: HTMLElement | null;\n scrollLeft?: number;\n }) => {\n const target = currentTarget ?? bodyRef.current;\n const left = typeof scrollLeft === 'number' ? scrollLeft : (target?.scrollLeft ?? 0);\n const lock = lockRef.current;\n if (!lock.target || lock.target === target) {\n lock.target = target ?? null;\n clearTimeout(lock.timer);\n lock.timer = setTimeout(() => {\n lock.target = null;\n }, 100);\n forceScroll(left, headerRef.current);\n forceScroll(left, bodyRef.current);\n forceScroll(left, summaryRef.current);\n stickyRef.current?.setScrollLeft(left);\n }\n const measure = target ?? headerRef.current;\n if (measure) {\n const { clientWidth, scrollWidth } = measure;\n const abs = Math.abs(left);\n shadowRef.current =\n scrollWidth === clientWidth\n ? { end: false, start: false }\n : { end: abs < scrollWidth - clientWidth - 1, start: abs > 0 };\n applyShadow();\n }\n },\n );\n\n useLayoutEffect(() => {\n applyShadow();\n });\n\n useLayoutEffect(() => {\n const root = rootRef.current;\n if (!root || typeof ResizeObserver === 'undefined') return;\n const update = () => {\n root.style.setProperty('--lobe-table-component-width', `${root.offsetWidth}px`);\n stickyRef.current?.checkVisible();\n if (horizonScroll) onInternalScroll({ currentTarget: bodyRef.current });\n };\n update();\n const observer = new ResizeObserver(update);\n observer.observe(root);\n return () => observer.disconnect();\n }, [horizonScroll, bodyRef, onInternalScroll]);\n\n useEffect(() => {\n if (horizonScroll) onInternalScroll({ currentTarget: bodyRef.current });\n }, [horizonScroll, rows, columnCount, bodyRef, onInternalScroll]);\n\n useLayoutEffect(() => {\n const body = bodyRef.current;\n if (!fixHeader || !body) return;\n const size = body.offsetWidth - body.clientWidth;\n setScrollbarSize((previous) => (previous === size ? previous : Math.max(0, size)));\n });\n\n useEffect(() => {\n if (sticky) forceRender((count) => count + 1);\n }, [sticky]);\n\n return { headerRef, onInternalScroll, rootRef, scrollbarSize, stickyRef, summaryRef };\n};\n"],"mappings":";;;AAMA,MAAM,eAAe,YAAoB,WAA2C;CAClF,IAAI,UAAU,OAAO,eAAe,YAAY,OAAO,aAAa;AACtE;AAYA,MAAa,iBAAiB,EAC5B,SACA,aACA,WACA,eACA,WACA,MACA,aACuB;CACvB,MAAM,UAAU,OAA8B,IAAI;CAClD,MAAM,YAAY,OAA8B,IAAI;CACpD,MAAM,aAAa,OAA8B,IAAI;CACrD,MAAM,YAAY,OAA2B,IAAI;CACjD,MAAM,YAAY,OAAO;EAAE,KAAK;EAAO,OAAO;CAAM,CAAC;CACrD,MAAM,UAAU,OAA8E,EAC5F,QAAQ,KACV,CAAC;CACD,MAAM,CAAC,eAAe,oBAAoB,SAAS,CAAC;CACpD,MAAM,GAAG,eAAe,SAAS,CAAC;CAElC,MAAM,oBAAoB;EACxB,MAAM,OAAO,QAAQ;EACrB,IAAI,CAAC,MAAM;EACX,KAAK,UAAU,OACb,GAAG,UAAU,yBACb,iBAAiB,UAAU,QAAQ,KACrC;EACA,KAAK,UAAU,OACb,GAAG,UAAU,uBACb,iBAAiB,UAAU,QAAQ,GACrC;CACF;CAEA,MAAM,mBAAmB,kBACtB,EACC,eACA,iBAII;EACJ,MAAM,SAAS,iBAAiB,QAAQ;EACxC,MAAM,OAAO,OAAO,eAAe,WAAW,aAAc,QAAQ,cAAc;EAClF,MAAM,OAAO,QAAQ;EACrB,IAAI,CAAC,KAAK,UAAU,KAAK,WAAW,QAAQ;GAC1C,KAAK,SAAS,UAAU;GACxB,aAAa,KAAK,KAAK;GACvB,KAAK,QAAQ,iBAAiB;IAC5B,KAAK,SAAS;GAChB,GAAG,GAAG;GACN,YAAY,MAAM,UAAU,OAAO;GACnC,YAAY,MAAM,QAAQ,OAAO;GACjC,YAAY,MAAM,WAAW,OAAO;GACpC,UAAU,SAAS,cAAc,IAAI;EACvC;EACA,MAAM,UAAU,UAAU,UAAU;EACpC,IAAI,SAAS;GACX,MAAM,EAAE,aAAa,gBAAgB;GACrC,MAAM,MAAM,KAAK,IAAI,IAAI;GACzB,UAAU,UACR,gBAAgB,cACZ;IAAE,KAAK;IAAO,OAAO;GAAM,IAC3B;IAAE,KAAK,MAAM,cAAc,cAAc;IAAG,OAAO,MAAM;GAAE;GACjE,YAAY;EACd;CACF,CACF;CAEA,sBAAsB;EACpB,YAAY;CACd,CAAC;CAED,sBAAsB;EACpB,MAAM,OAAO,QAAQ;EACrB,IAAI,CAAC,QAAQ,OAAO,mBAAmB,aAAa;EACpD,MAAM,eAAe;GACnB,KAAK,MAAM,YAAY,gCAAgC,GAAG,KAAK,YAAY,GAAG;GAC9E,UAAU,SAAS,aAAa;GAChC,IAAI,eAAe,iBAAiB,EAAE,eAAe,QAAQ,QAAQ,CAAC;EACxE;EACA,OAAO;EACP,MAAM,WAAW,IAAI,eAAe,MAAM;EAC1C,SAAS,QAAQ,IAAI;EACrB,aAAa,SAAS,WAAW;CACnC,GAAG;EAAC;EAAe;EAAS;CAAgB,CAAC;CAE7C,gBAAgB;EACd,IAAI,eAAe,iBAAiB,EAAE,eAAe,QAAQ,QAAQ,CAAC;CACxE,GAAG;EAAC;EAAe;EAAM;EAAa;EAAS;CAAgB,CAAC;CAEhE,sBAAsB;EACpB,MAAM,OAAO,QAAQ;EACrB,IAAI,CAAC,aAAa,CAAC,MAAM;EACzB,MAAM,OAAO,KAAK,cAAc,KAAK;EACrC,kBAAkB,aAAc,aAAa,OAAO,WAAW,KAAK,IAAI,GAAG,IAAI,CAAE;CACnF,CAAC;CAED,gBAAgB;EACd,IAAI,QAAQ,aAAa,UAAU,QAAQ,CAAC;CAC9C,GAAG,CAAC,MAAM,CAAC;CAEX,OAAO;EAAE;EAAW;EAAkB;EAAS;EAAe;EAAW;CAAW;AACtF"}
@@ -0,0 +1,134 @@
1
+ import { useEventCallback } from "../../hooks/useEventCallback.mjs";
2
+ import { PREFIX_CLS } from "../constants.mjs";
3
+ import { DEFAULT_SORT_DIRECTIONS } from "../pipeline/useSorter.mjs";
4
+ import { useMemo } from "react";
5
+ //#region src/Table/render/useViewContexts.ts
6
+ const DEFAULT_SORTER_TOOLTIP = { target: "full-header" };
7
+ const useViewContexts = ({ controller, props, semanticClassNames, semanticStyles }) => {
8
+ const { components, expandable, getPopupContainer, onHeaderRow, onRow, rowClassName, rowHoverable = true, rowSelection, showSorterTooltip = DEFAULT_SORTER_TOOLTIP, sortDirections = DEFAULT_SORT_DIRECTIONS, virtual } = props;
9
+ const { model, selection, state, tableLocale } = controller;
10
+ const { expandedRowClassName, expandedRowRender, expandRowByClick, forceRender, rowExpandable } = expandable ?? {};
11
+ const { columnTitle, getTitleCheckboxProps, hideSelectAll, renderCell, type: selectionType = "checkbox" } = rowSelection ?? {};
12
+ const leafColumns = model.leafColumns;
13
+ const componentSet = useMemo(() => {
14
+ const fallback = virtual ? "div" : void 0;
15
+ return {
16
+ bodyCell: components?.body?.cell ?? fallback,
17
+ bodyRow: components?.body?.row ?? fallback,
18
+ bodyWrapper: components?.body?.wrapper,
19
+ headerCell: components?.header?.cell,
20
+ headerRow: components?.header?.row,
21
+ headerTable: components?.header?.table,
22
+ headerWrapper: components?.header?.wrapper,
23
+ table: components?.table
24
+ };
25
+ }, [components, virtual]);
26
+ const toggleExpand = useEventCallback((record) => controller.toggleExpand(record));
27
+ const fixColumn = controller.horizonScroll && leafColumns.some((leaf) => leaf.fixed);
28
+ const viewValue = useMemo(() => ({
29
+ components: componentSet,
30
+ expand: {
31
+ expandedRowClassName,
32
+ expandedRowRender,
33
+ expandIcon: controller.expandIcon,
34
+ expandRowByClick,
35
+ forceRender,
36
+ indentSize: controller.indentSize,
37
+ nestIconColumnIndex: controller.nestIconColumnIndex,
38
+ rowExpandable,
39
+ toggle: toggleExpand,
40
+ type: controller.expandType
41
+ },
42
+ fixColumn,
43
+ getRowKey: controller.getRowKey,
44
+ horizonScroll: controller.horizonScroll,
45
+ leafColumns,
46
+ onRow,
47
+ prefixCls: PREFIX_CLS,
48
+ rowClassName,
49
+ rowHoverable,
50
+ semanticClassNames,
51
+ semanticStyles,
52
+ virtualWidths: controller.virtualWidths
53
+ }), [
54
+ componentSet,
55
+ expandedRowClassName,
56
+ expandedRowRender,
57
+ expandRowByClick,
58
+ forceRender,
59
+ rowExpandable,
60
+ controller.expandIcon,
61
+ controller.indentSize,
62
+ controller.nestIconColumnIndex,
63
+ toggleExpand,
64
+ controller.expandType,
65
+ fixColumn,
66
+ controller.getRowKey,
67
+ controller.horizonScroll,
68
+ leafColumns,
69
+ onRow,
70
+ rowClassName,
71
+ rowHoverable,
72
+ semanticClassNames,
73
+ semanticStyles,
74
+ controller.virtualWidths
75
+ ]);
76
+ const selectionValue = useMemo(() => ({
77
+ actions: selection.actions,
78
+ checkboxPropsMap: selection.checkboxPropsMap,
79
+ expandType: controller.expandType,
80
+ getRowKey: controller.getRowKey,
81
+ getTitleCheckboxProps,
82
+ hideSelectAll,
83
+ locale: tableLocale,
84
+ renderCell,
85
+ selections: selection.mergedSelections,
86
+ title: columnTitle,
87
+ type: selectionType
88
+ }), [
89
+ selection.actions,
90
+ selection.checkboxPropsMap,
91
+ selection.mergedSelections,
92
+ controller.expandType,
93
+ controller.getRowKey,
94
+ getTitleCheckboxProps,
95
+ hideSelectAll,
96
+ renderCell,
97
+ columnTitle,
98
+ selectionType,
99
+ tableLocale
100
+ ]);
101
+ const triggerSort = useEventCallback(state.triggerSort);
102
+ const triggerFilter = useEventCallback(state.triggerFilter);
103
+ return {
104
+ headerValue: useMemo(() => ({
105
+ filterStates: state.filterStates,
106
+ getPopupContainer,
107
+ locale: tableLocale,
108
+ onHeaderRow,
109
+ showSorterTooltip,
110
+ sortDirections,
111
+ sortStates: state.sortStates,
112
+ titleProps: state.titleProps,
113
+ triggerFilter,
114
+ triggerSort
115
+ }), [
116
+ state.filterStates,
117
+ getPopupContainer,
118
+ tableLocale,
119
+ onHeaderRow,
120
+ showSorterTooltip,
121
+ sortDirections,
122
+ state.sortStates,
123
+ state.titleProps,
124
+ triggerFilter,
125
+ triggerSort
126
+ ]),
127
+ selectionValue,
128
+ viewValue
129
+ };
130
+ };
131
+ //#endregion
132
+ export { useViewContexts };
133
+
134
+ //# sourceMappingURL=useViewContexts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useViewContexts.mjs","names":[],"sources":["../../../src/Table/render/useViewContexts.ts"],"sourcesContent":["import { type CSSProperties, useMemo } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\n\nimport { PREFIX_CLS } from '../constants';\nimport { DEFAULT_SORT_DIRECTIONS } from '../pipeline/useSorter';\nimport type { NormalizedSemantic } from '../semantic';\nimport type { TableProps, TableSorterTooltipProps } from '../type';\nimport type { useTableController } from '../useTableController';\nimport type { HeaderView, SelectionView, TableComponentSet, TableViewValue } from './context';\n\nconst DEFAULT_SORTER_TOOLTIP: TableSorterTooltipProps = { target: 'full-header' };\n\ninterface ViewContextsOptions<T> {\n controller: ReturnType<typeof useTableController<T>>;\n props: TableProps<T>;\n semanticClassNames: NormalizedSemantic<string>;\n semanticStyles: NormalizedSemantic<CSSProperties>;\n}\n\nexport const useViewContexts = <T>({\n controller,\n props,\n semanticClassNames,\n semanticStyles,\n}: ViewContextsOptions<T>) => {\n const {\n components,\n expandable,\n getPopupContainer,\n onHeaderRow,\n onRow,\n rowClassName,\n rowHoverable = true,\n rowSelection,\n showSorterTooltip = DEFAULT_SORTER_TOOLTIP,\n sortDirections = DEFAULT_SORT_DIRECTIONS,\n virtual,\n } = props;\n const { model, selection, state, tableLocale } = controller;\n const { expandedRowClassName, expandedRowRender, expandRowByClick, forceRender, rowExpandable } =\n expandable ?? {};\n const {\n columnTitle,\n getTitleCheckboxProps,\n hideSelectAll,\n renderCell,\n type: selectionType = 'checkbox',\n } = rowSelection ?? {};\n const leafColumns = model.leafColumns;\n\n const componentSet = useMemo((): TableComponentSet => {\n const fallback = virtual ? 'div' : undefined;\n return {\n bodyCell: components?.body?.cell ?? fallback,\n bodyRow: components?.body?.row ?? fallback,\n bodyWrapper: components?.body?.wrapper,\n headerCell: components?.header?.cell,\n headerRow: components?.header?.row,\n headerTable: components?.header?.table,\n headerWrapper: components?.header?.wrapper,\n table: components?.table,\n };\n }, [components, virtual]);\n\n const toggleExpand = useEventCallback((record: T) => controller.toggleExpand(record));\n const fixColumn = controller.horizonScroll && leafColumns.some((leaf) => leaf.fixed);\n\n const viewValue = useMemo(\n (): TableViewValue<T> => ({\n components: componentSet,\n expand: {\n expandedRowClassName,\n expandedRowRender,\n expandIcon: controller.expandIcon,\n expandRowByClick,\n forceRender,\n indentSize: controller.indentSize,\n nestIconColumnIndex: controller.nestIconColumnIndex,\n rowExpandable,\n toggle: toggleExpand,\n type: controller.expandType,\n },\n fixColumn,\n getRowKey: controller.getRowKey,\n horizonScroll: controller.horizonScroll,\n leafColumns,\n onRow,\n prefixCls: PREFIX_CLS,\n rowClassName,\n rowHoverable,\n semanticClassNames,\n semanticStyles,\n virtualWidths: controller.virtualWidths,\n }),\n [\n componentSet,\n expandedRowClassName,\n expandedRowRender,\n expandRowByClick,\n forceRender,\n rowExpandable,\n controller.expandIcon,\n controller.indentSize,\n controller.nestIconColumnIndex,\n toggleExpand,\n controller.expandType,\n fixColumn,\n controller.getRowKey,\n controller.horizonScroll,\n leafColumns,\n onRow,\n rowClassName,\n rowHoverable,\n semanticClassNames,\n semanticStyles,\n controller.virtualWidths,\n ],\n );\n\n const selectionValue = useMemo(\n (): SelectionView<T> => ({\n actions: selection.actions,\n checkboxPropsMap: selection.checkboxPropsMap,\n expandType: controller.expandType,\n getRowKey: controller.getRowKey,\n getTitleCheckboxProps,\n hideSelectAll,\n locale: tableLocale,\n renderCell,\n selections: selection.mergedSelections,\n title: columnTitle,\n type: selectionType,\n }),\n [\n selection.actions,\n selection.checkboxPropsMap,\n selection.mergedSelections,\n controller.expandType,\n controller.getRowKey,\n getTitleCheckboxProps,\n hideSelectAll,\n renderCell,\n columnTitle,\n selectionType,\n tableLocale,\n ],\n );\n\n const triggerSort = useEventCallback(state.triggerSort);\n const triggerFilter = useEventCallback(state.triggerFilter);\n const headerValue = useMemo(\n (): HeaderView<T> => ({\n filterStates: state.filterStates,\n getPopupContainer,\n locale: tableLocale,\n onHeaderRow,\n showSorterTooltip,\n sortDirections,\n sortStates: state.sortStates,\n titleProps: state.titleProps,\n triggerFilter,\n triggerSort,\n }),\n [\n state.filterStates,\n getPopupContainer,\n tableLocale,\n onHeaderRow,\n showSorterTooltip,\n sortDirections,\n state.sortStates,\n state.titleProps,\n triggerFilter,\n triggerSort,\n ],\n );\n\n return { headerValue, selectionValue, viewValue };\n};\n"],"mappings":";;;;;AAWA,MAAM,yBAAkD,EAAE,QAAQ,cAAc;AAShF,MAAa,mBAAsB,EACjC,YACA,OACA,oBACA,qBAC4B;CAC5B,MAAM,EACJ,YACA,YACA,mBACA,aACA,OACA,cACA,eAAe,MACf,cACA,oBAAoB,wBACpB,iBAAiB,yBACjB,YACE;CACJ,MAAM,EAAE,OAAO,WAAW,OAAO,gBAAgB;CACjD,MAAM,EAAE,sBAAsB,mBAAmB,kBAAkB,aAAa,kBAC9E,cAAc,CAAC;CACjB,MAAM,EACJ,aACA,uBACA,eACA,YACA,MAAM,gBAAgB,eACpB,gBAAgB,CAAC;CACrB,MAAM,cAAc,MAAM;CAE1B,MAAM,eAAe,cAAiC;EACpD,MAAM,WAAW,UAAU,QAAQ,KAAA;EACnC,OAAO;GACL,UAAU,YAAY,MAAM,QAAQ;GACpC,SAAS,YAAY,MAAM,OAAO;GAClC,aAAa,YAAY,MAAM;GAC/B,YAAY,YAAY,QAAQ;GAChC,WAAW,YAAY,QAAQ;GAC/B,aAAa,YAAY,QAAQ;GACjC,eAAe,YAAY,QAAQ;GACnC,OAAO,YAAY;EACrB;CACF,GAAG,CAAC,YAAY,OAAO,CAAC;CAExB,MAAM,eAAe,kBAAkB,WAAc,WAAW,aAAa,MAAM,CAAC;CACpF,MAAM,YAAY,WAAW,iBAAiB,YAAY,MAAM,SAAS,KAAK,KAAK;CAEnF,MAAM,YAAY,eACU;EACxB,YAAY;EACZ,QAAQ;GACN;GACA;GACA,YAAY,WAAW;GACvB;GACA;GACA,YAAY,WAAW;GACvB,qBAAqB,WAAW;GAChC;GACA,QAAQ;GACR,MAAM,WAAW;EACnB;EACA;EACA,WAAW,WAAW;EACtB,eAAe,WAAW;EAC1B;EACA;EACA,WAAW;EACX;EACA;EACA;EACA;EACA,eAAe,WAAW;CAC5B,IACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;EACX,WAAW;EACX,WAAW;EACX;EACA,WAAW;EACX;EACA,WAAW;EACX,WAAW;EACX;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;CACb,CACF;CAEA,MAAM,iBAAiB,eACI;EACvB,SAAS,UAAU;EACnB,kBAAkB,UAAU;EAC5B,YAAY,WAAW;EACvB,WAAW,WAAW;EACtB;EACA;EACA,QAAQ;EACR;EACA,YAAY,UAAU;EACtB,OAAO;EACP,MAAM;CACR,IACA;EACE,UAAU;EACV,UAAU;EACV,UAAU;EACV,WAAW;EACX,WAAW;EACX;EACA;EACA;EACA;EACA;EACA;CACF,CACF;CAEA,MAAM,cAAc,iBAAiB,MAAM,WAAW;CACtD,MAAM,gBAAgB,iBAAiB,MAAM,aAAa;CA4B1D,OAAO;EAAE,aA3BW,eACI;GACpB,cAAc,MAAM;GACpB;GACA,QAAQ;GACR;GACA;GACA;GACA,YAAY,MAAM;GAClB,YAAY,MAAM;GAClB;GACA;EACF,IACA;GACE,MAAM;GACN;GACA;GACA;GACA;GACA;GACA,MAAM;GACN,MAAM;GACN;GACA;EACF,CAGiB;EAAG;EAAgB;CAAU;AAClD"}
@@ -0,0 +1,45 @@
1
+ import { useRef } from "react";
2
+ import "clsx";
3
+ //#region src/Table/semantic.ts
4
+ const resolveSemantic = (value, info) => typeof value === "function" ? value(info) : value;
5
+ const normalizeClassNames = (classNames) => {
6
+ const { body, header, pagination, ...rest } = classNames ?? {};
7
+ return {
8
+ ...rest,
9
+ body: { ...body },
10
+ header: { ...header },
11
+ pagination: { ...pagination }
12
+ };
13
+ };
14
+ const normalizeStyles = (styles) => {
15
+ const { body, header, pagination, ...rest } = styles ?? {};
16
+ return {
17
+ ...rest,
18
+ body: { ...body },
19
+ header: { ...header },
20
+ pagination: { ...pagination }
21
+ };
22
+ };
23
+ const sameValue = (a, b, depth) => {
24
+ if (Object.is(a, b)) return true;
25
+ if (depth === 0 || typeof a !== "object" || typeof b !== "object" || !a || !b) return false;
26
+ const keysA = Object.keys(a);
27
+ if (keysA.length !== Object.keys(b).length) return false;
28
+ return keysA.every((key) => sameValue(a[key], b[key], depth - 1));
29
+ };
30
+ const useStableValue = (value) => {
31
+ const ref = useRef(value);
32
+ if (!sameValue(ref.current, value, 3)) ref.current = value;
33
+ return ref.current;
34
+ };
35
+ const useStableSemantic = (classNames, styles, props) => {
36
+ const info = { props };
37
+ return {
38
+ classNames: useStableValue(normalizeClassNames(resolveSemantic(classNames, info))),
39
+ styles: useStableValue(normalizeStyles(resolveSemantic(styles, info)))
40
+ };
41
+ };
42
+ //#endregion
43
+ export { normalizeClassNames, normalizeStyles, resolveSemantic, useStableSemantic };
44
+
45
+ //# sourceMappingURL=semantic.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic.mjs","names":[],"sources":["../../src/Table/semantic.ts"],"sourcesContent":["import clsx from 'clsx';\nimport { type CSSProperties, useRef } from 'react';\n\nimport type { PaginationSemanticName } from '@/Pagination/type';\n\nimport type {\n TableClassNames,\n TableComponentsSemanticName,\n TableProps,\n TableSemanticInfo,\n TableStyles,\n} from './type';\n\ntype Components<V> = Partial<Record<TableComponentsSemanticName, V>>;\n\nexport interface NormalizedSemantic<V> {\n body: Components<V>;\n content?: V;\n footer?: V;\n header: Components<V>;\n pagination: Partial<Record<PaginationSemanticName, V>>;\n root?: V;\n section?: V;\n title?: V;\n}\n\nexport const resolveSemantic = <V, T>(\n value: V | ((info: TableSemanticInfo<T>) => V) | undefined,\n info: TableSemanticInfo<T>,\n): V | undefined =>\n typeof value === 'function' ? (value as (info: TableSemanticInfo<T>) => V)(info) : value;\n\nexport const normalizeClassNames = (\n classNames: TableClassNames | undefined,\n): NormalizedSemantic<string> => {\n const { body, header, pagination, ...rest } = classNames ?? {};\n return { ...rest, body: { ...body }, header: { ...header }, pagination: { ...pagination } };\n};\n\nexport const normalizeStyles = (\n styles: TableStyles | undefined,\n): NormalizedSemantic<CSSProperties> => {\n const { body, header, pagination, ...rest } = styles ?? {};\n return { ...rest, body: { ...body }, header: { ...header }, pagination: { ...pagination } };\n};\n\nexport const mergeClassName = (...names: (string | false | null | undefined)[]) =>\n clsx(...names) || undefined;\n\nexport const mergeStyle = (...styles: (CSSProperties | undefined)[]) =>\n styles.some(Boolean) ? Object.assign({}, ...styles) : undefined;\n\nconst sameValue = (a: unknown, b: unknown, depth: number): boolean => {\n if (Object.is(a, b)) return true;\n if (depth === 0 || typeof a !== 'object' || typeof b !== 'object' || !a || !b) return false;\n const keysA = Object.keys(a);\n if (keysA.length !== Object.keys(b).length) return false;\n return keysA.every((key) => sameValue((a as any)[key], (b as any)[key], depth - 1));\n};\n\nconst useStableValue = <V>(value: V): V => {\n const ref = useRef(value);\n if (!sameValue(ref.current, value, 3)) ref.current = value;\n return ref.current;\n};\n\nexport const useStableSemantic = <T>(\n classNames: TableClassNames | ((info: TableSemanticInfo<T>) => TableClassNames) | undefined,\n styles: TableStyles | ((info: TableSemanticInfo<T>) => TableStyles) | undefined,\n props: TableProps<T>,\n) => {\n const info = { props };\n return {\n classNames: useStableValue(normalizeClassNames(resolveSemantic(classNames, info))),\n styles: useStableValue(normalizeStyles(resolveSemantic(styles, info))),\n };\n};\n"],"mappings":";;;AA0BA,MAAa,mBACX,OACA,SAEA,OAAO,UAAU,aAAc,MAA4C,IAAI,IAAI;AAErF,MAAa,uBACX,eAC+B;CAC/B,MAAM,EAAE,MAAM,QAAQ,YAAY,GAAG,SAAS,cAAc,CAAC;CAC7D,OAAO;EAAE,GAAG;EAAM,MAAM,EAAE,GAAG,KAAK;EAAG,QAAQ,EAAE,GAAG,OAAO;EAAG,YAAY,EAAE,GAAG,WAAW;CAAE;AAC5F;AAEA,MAAa,mBACX,WACsC;CACtC,MAAM,EAAE,MAAM,QAAQ,YAAY,GAAG,SAAS,UAAU,CAAC;CACzD,OAAO;EAAE,GAAG;EAAM,MAAM,EAAE,GAAG,KAAK;EAAG,QAAQ,EAAE,GAAG,OAAO;EAAG,YAAY,EAAE,GAAG,WAAW;CAAE;AAC5F;AAQA,MAAM,aAAa,GAAY,GAAY,UAA2B;CACpE,IAAI,OAAO,GAAG,GAAG,CAAC,GAAG,OAAO;CAC5B,IAAI,UAAU,KAAK,OAAO,MAAM,YAAY,OAAO,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,OAAO;CACtF,MAAM,QAAQ,OAAO,KAAK,CAAC;CAC3B,IAAI,MAAM,WAAW,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,OAAO;CACnD,OAAO,MAAM,OAAO,QAAQ,UAAW,EAAU,MAAO,EAAU,MAAM,QAAQ,CAAC,CAAC;AACpF;AAEA,MAAM,kBAAqB,UAAgB;CACzC,MAAM,MAAM,OAAO,KAAK;CACxB,IAAI,CAAC,UAAU,IAAI,SAAS,OAAO,CAAC,GAAG,IAAI,UAAU;CACrD,OAAO,IAAI;AACb;AAEA,MAAa,qBACX,YACA,QACA,UACG;CACH,MAAM,OAAO,EAAE,MAAM;CACrB,OAAO;EACL,YAAY,eAAe,oBAAoB,gBAAgB,YAAY,IAAI,CAAC,CAAC;EACjF,QAAQ,eAAe,gBAAgB,gBAAgB,QAAQ,IAAI,CAAC,CAAC;CACvE;AACF"}
@@ -0,0 +1 @@
1
+ import { Key } from "react";
@@ -0,0 +1,40 @@
1
+ //#region src/Table/store/createTableStore.ts
2
+ const EMPTY_KEYS = /* @__PURE__ */ new Set();
3
+ const EMPTY_COLUMNS = /* @__PURE__ */ new Set();
4
+ const NO_HOVER = [-1, -1];
5
+ const EMPTY_SUMMARY = {
6
+ checked: false,
7
+ disabled: false,
8
+ indeterminate: false
9
+ };
10
+ const createTableStore = (initial) => {
11
+ let state = {
12
+ expandedKeys: EMPTY_KEYS,
13
+ halfSelectedKeys: EMPTY_KEYS,
14
+ hover: NO_HOVER,
15
+ selectedKeys: EMPTY_KEYS,
16
+ selectionSummary: EMPTY_SUMMARY,
17
+ sortedColumns: EMPTY_COLUMNS,
18
+ ...initial
19
+ };
20
+ const listeners = /* @__PURE__ */ new Set();
21
+ return {
22
+ getState: () => state,
23
+ setState: (patch) => {
24
+ if (!Object.keys(patch).some((key) => !Object.is(patch[key], state[key]))) return;
25
+ state = {
26
+ ...state,
27
+ ...patch
28
+ };
29
+ listeners.forEach((listener) => listener());
30
+ },
31
+ subscribe: (listener) => {
32
+ listeners.add(listener);
33
+ return () => listeners.delete(listener);
34
+ }
35
+ };
36
+ };
37
+ //#endregion
38
+ export { createTableStore };
39
+
40
+ //# sourceMappingURL=createTableStore.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTableStore.mjs","names":[],"sources":["../../../src/Table/store/createTableStore.ts"],"sourcesContent":["import type { Key } from 'react';\n\nexport interface SelectionSummary {\n checked: boolean;\n disabled: boolean;\n indeterminate: boolean;\n}\n\nexport interface TableStoreState {\n expandedKeys: ReadonlySet<Key>;\n halfSelectedKeys: ReadonlySet<Key>;\n hover: readonly [number, number];\n selectedKeys: ReadonlySet<Key>;\n selectionSummary: SelectionSummary;\n sortedColumns: ReadonlySet<string>;\n}\n\nexport interface TableStore {\n getState: () => TableStoreState;\n setState: (patch: Partial<TableStoreState>) => void;\n subscribe: (listener: () => void) => () => void;\n}\n\nconst EMPTY_KEYS: ReadonlySet<Key> = new Set();\nconst EMPTY_COLUMNS: ReadonlySet<string> = new Set();\nconst NO_HOVER = [-1, -1] as const;\nconst EMPTY_SUMMARY: SelectionSummary = { checked: false, disabled: false, indeterminate: false };\n\nexport const createTableStore = (initial?: Partial<TableStoreState>): TableStore => {\n let state: TableStoreState = {\n expandedKeys: EMPTY_KEYS,\n halfSelectedKeys: EMPTY_KEYS,\n hover: NO_HOVER,\n selectedKeys: EMPTY_KEYS,\n selectionSummary: EMPTY_SUMMARY,\n sortedColumns: EMPTY_COLUMNS,\n ...initial,\n };\n const listeners = new Set<() => void>();\n\n return {\n getState: () => state,\n setState: (patch) => {\n const changed = (Object.keys(patch) as (keyof TableStoreState)[]).some(\n (key) => !Object.is(patch[key], state[key]),\n );\n if (!changed) return;\n state = { ...state, ...patch };\n listeners.forEach((listener) => listener());\n },\n subscribe: (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n },\n };\n};\n"],"mappings":";AAuBA,MAAM,6BAA+B,IAAI,IAAI;AAC7C,MAAM,gCAAqC,IAAI,IAAI;AACnD,MAAM,WAAW,CAAC,IAAI,EAAE;AACxB,MAAM,gBAAkC;CAAE,SAAS;CAAO,UAAU;CAAO,eAAe;AAAM;AAEhG,MAAa,oBAAoB,YAAmD;CAClF,IAAI,QAAyB;EAC3B,cAAc;EACd,kBAAkB;EAClB,OAAO;EACP,cAAc;EACd,kBAAkB;EAClB,eAAe;EACf,GAAG;CACL;CACA,MAAM,4BAAY,IAAI,IAAgB;CAEtC,OAAO;EACL,gBAAgB;EAChB,WAAW,UAAU;GAInB,IAAI,CAHa,OAAO,KAAK,KAAK,CAAC,CAA+B,MAC/D,QAAQ,CAAC,OAAO,GAAG,MAAM,MAAM,MAAM,IAAI,CAEjC,GAAG;GACd,QAAQ;IAAE,GAAG;IAAO,GAAG;GAAM;GAC7B,UAAU,SAAS,aAAa,SAAS,CAAC;EAC5C;EACA,YAAY,aAAa;GACvB,UAAU,IAAI,QAAQ;GACtB,aAAa,UAAU,OAAO,QAAQ;EACxC;CACF;AACF"}
@@ -0,0 +1,24 @@
1
+ "use client";
2
+ import { createTableStore } from "./createTableStore.mjs";
3
+ import { createContext, use, useCallback, useSyncExternalStore } from "react";
4
+ //#region src/Table/store/hooks.ts
5
+ const fallbackStore = createTableStore();
6
+ const TableStoreContext = createContext(fallbackStore);
7
+ const TableStoreProvider = TableStoreContext.Provider;
8
+ const useTableStoreInstance = () => use(TableStoreContext);
9
+ const useTableStore = (selector) => {
10
+ const store = use(TableStoreContext);
11
+ const getSnapshot = useCallback(() => selector(store.getState()), [store, selector]);
12
+ return useSyncExternalStore(store.subscribe, getSnapshot, getSnapshot);
13
+ };
14
+ const useRowSelected = (key) => useTableStore(useCallback((state) => state.selectedKeys.has(key), [key]));
15
+ const useRowHalfSelected = (key) => useTableStore(useCallback((state) => state.halfSelectedKeys.has(key), [key]));
16
+ const useRowExpanded = (key) => useTableStore(useCallback((state) => state.expandedKeys.has(key), [key]));
17
+ const useCellHovered = (index, rowSpan) => useTableStore(useCallback(({ hover: [start, end] }) => start <= index + rowSpan - 1 && end >= index, [index, rowSpan]));
18
+ const useColumnSorted = (columnId) => useTableStore(useCallback((state) => state.sortedColumns.has(columnId), [columnId]));
19
+ const selectSummary = (state) => state.selectionSummary;
20
+ const useSelectionSummary = () => useTableStore(selectSummary);
21
+ //#endregion
22
+ export { TableStoreProvider, useCellHovered, useColumnSorted, useRowExpanded, useRowHalfSelected, useRowSelected, useSelectionSummary, useTableStore, useTableStoreInstance };
23
+
24
+ //# sourceMappingURL=hooks.mjs.map