@lobehub/ui 6.0.0-beta.7 → 6.0.0-beta.9

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 (675) hide show
  1. package/es/Accordion/Accordion.mjs +3 -3
  2. package/es/Accordion/Accordion.mjs.map +1 -1
  3. package/es/Accordion/atoms.mjs +2 -2
  4. package/es/Accordion/atoms.mjs.map +1 -1
  5. package/es/Accordion/style.d.mts +1 -1
  6. package/es/ActionIcon/ActionIcon.mjs +2 -2
  7. package/es/ActionIcon/ActionIcon.mjs.map +1 -1
  8. package/es/Alert/Alert.mjs +5 -5
  9. package/es/Alert/Alert.mjs.map +1 -1
  10. package/es/AutoComplete/AutoComplete.mjs +5 -5
  11. package/es/AutoComplete/AutoComplete.mjs.map +1 -1
  12. package/es/AutoComplete/style.mjs +2 -2
  13. package/es/AutoComplete/style.mjs.map +1 -1
  14. package/es/Avatar/Avatar.mjs +2 -2
  15. package/es/Avatar/Avatar.mjs.map +1 -1
  16. package/es/Avatar/AvatarGroup/index.mjs +2 -2
  17. package/es/Avatar/AvatarGroup/index.mjs.map +1 -1
  18. package/es/Breadcrumb/Breadcrumb.mjs +2 -2
  19. package/es/Breadcrumb/Breadcrumb.mjs.map +1 -1
  20. package/es/Button/Button.mjs +1 -1
  21. package/es/Button/Button.mjs.map +1 -1
  22. package/es/Button/style.d.mts +8 -1
  23. package/es/Button/style.mjs +41 -18
  24. package/es/Button/style.mjs.map +1 -1
  25. package/es/Checkbox/Checkbox.mjs +3 -3
  26. package/es/Checkbox/Checkbox.mjs.map +1 -1
  27. package/es/CodeDiff/DiffPanel.mjs +4 -4
  28. package/es/CodeDiff/DiffPanel.mjs.map +1 -1
  29. package/es/CodeEditor/CodeEditor.mjs +4 -4
  30. package/es/CodeEditor/CodeEditor.mjs.map +1 -1
  31. package/es/ColorPicker/ColorInputs.mjs +136 -0
  32. package/es/ColorPicker/ColorInputs.mjs.map +1 -0
  33. package/es/ColorPicker/ColorPanel.mjs +145 -0
  34. package/es/ColorPicker/ColorPanel.mjs.map +1 -0
  35. package/es/ColorPicker/ColorPicker.mjs +62 -199
  36. package/es/ColorPicker/ColorPicker.mjs.map +1 -1
  37. package/es/ColorPicker/SaturationArea.mjs +2 -1
  38. package/es/ColorPicker/SaturationArea.mjs.map +1 -1
  39. package/es/ColorPicker/Swatch.mjs +24 -0
  40. package/es/ColorPicker/Swatch.mjs.map +1 -0
  41. package/es/ColorPicker/Swatches.mjs +66 -0
  42. package/es/ColorPicker/Swatches.mjs.map +1 -0
  43. package/es/ColorPicker/Trigger.mjs +112 -0
  44. package/es/ColorPicker/Trigger.mjs.map +1 -0
  45. package/es/ColorPicker/color.mjs +25 -1
  46. package/es/ColorPicker/color.mjs.map +1 -1
  47. package/es/ColorPicker/recent.mjs +25 -0
  48. package/es/ColorPicker/recent.mjs.map +1 -0
  49. package/es/ColorPicker/style.mjs +269 -70
  50. package/es/ColorPicker/style.mjs.map +1 -1
  51. package/es/ColorPicker/type.d.mts +15 -0
  52. package/es/ContextMenu/ContextMenuHost.mjs +2 -2
  53. package/es/ContextMenu/ContextMenuHost.mjs.map +1 -1
  54. package/es/ContextMenu/ContextMenuTrigger.mjs +2 -2
  55. package/es/ContextMenu/ContextMenuTrigger.mjs.map +1 -1
  56. package/es/ContextMenu/renderItems.mjs +3 -3
  57. package/es/ContextMenu/renderItems.mjs.map +1 -1
  58. package/es/DatePicker/DatePicker.d.mts +9 -2
  59. package/es/DatePicker/DatePicker.mjs +15 -85
  60. package/es/DatePicker/DatePicker.mjs.map +1 -1
  61. package/es/DatePicker/DateRangePicker.d.mts +3 -2
  62. package/es/DatePicker/DateRangePicker.mjs +3 -125
  63. package/es/DatePicker/DateRangePicker.mjs.map +1 -1
  64. package/es/DatePicker/DayjsDatePicker.d.mts +12 -0
  65. package/es/DatePicker/DayjsDatePicker.mjs +19 -0
  66. package/es/DatePicker/DayjsDatePicker.mjs.map +1 -0
  67. package/es/DatePicker/DayjsDateRangePicker.d.mts +7 -0
  68. package/es/DatePicker/DayjsDateRangePicker.mjs +8 -0
  69. package/es/DatePicker/DayjsDateRangePicker.mjs.map +1 -0
  70. package/es/DatePicker/PurePanel.mjs +65 -0
  71. package/es/DatePicker/PurePanel.mjs.map +1 -0
  72. package/es/DatePicker/RangePicker.mjs +121 -0
  73. package/es/DatePicker/RangePicker.mjs.map +1 -0
  74. package/es/DatePicker/SinglePicker.mjs +134 -0
  75. package/es/DatePicker/SinglePicker.mjs.map +1 -0
  76. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs +57 -0
  77. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs.map +1 -0
  78. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs +57 -0
  79. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs.map +1 -0
  80. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs +29 -0
  81. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs.map +1 -0
  82. package/es/DatePicker/core/PickerInput/Popup/index.mjs +133 -0
  83. package/es/DatePicker/core/PickerInput/Popup/index.mjs.map +1 -0
  84. package/es/DatePicker/core/PickerInput/RangePicker.d.mts +51 -0
  85. package/es/DatePicker/core/PickerInput/RangePicker.mjs +343 -0
  86. package/es/DatePicker/core/PickerInput/RangePicker.mjs.map +1 -0
  87. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs +27 -0
  88. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs.map +1 -0
  89. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs +19 -0
  90. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs.map +1 -0
  91. package/es/DatePicker/core/PickerInput/Selector/Input.mjs +237 -0
  92. package/es/DatePicker/core/PickerInput/Selector/Input.mjs.map +1 -0
  93. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs +70 -0
  94. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs.map +1 -0
  95. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.d.mts +8 -0
  96. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs +136 -0
  97. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs.map +1 -0
  98. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs +28 -0
  99. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs.map +1 -0
  100. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs +69 -0
  101. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs.map +1 -0
  102. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs +111 -0
  103. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs.map +1 -0
  104. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs +18 -0
  105. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs.map +1 -0
  106. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs +108 -0
  107. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs.map +1 -0
  108. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs +11 -0
  109. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs.map +1 -0
  110. package/es/DatePicker/core/PickerInput/Selector/util.mjs +20 -0
  111. package/es/DatePicker/core/PickerInput/Selector/util.mjs.map +1 -0
  112. package/es/DatePicker/core/PickerInput/SinglePicker.d.mts +55 -0
  113. package/es/DatePicker/core/PickerInput/SinglePicker.mjs +318 -0
  114. package/es/DatePicker/core/PickerInput/SinglePicker.mjs.map +1 -0
  115. package/es/DatePicker/core/PickerInput/context.mjs +7 -0
  116. package/es/DatePicker/core/PickerInput/context.mjs.map +1 -0
  117. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs +30 -0
  118. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs.map +1 -0
  119. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs +37 -0
  120. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs.map +1 -0
  121. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs +18 -0
  122. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs.map +1 -0
  123. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs +20 -0
  124. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs.map +1 -0
  125. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs +31 -0
  126. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs.map +1 -0
  127. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs +98 -0
  128. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs.map +1 -0
  129. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs +41 -0
  130. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs.map +1 -0
  131. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs +34 -0
  132. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs.map +1 -0
  133. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs +35 -0
  134. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs.map +1 -0
  135. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs +9 -0
  136. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs.map +1 -0
  137. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs +36 -0
  138. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs.map +1 -0
  139. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs +27 -0
  140. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs.map +1 -0
  141. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs +18 -0
  142. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs.map +1 -0
  143. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs +19 -0
  144. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs.map +1 -0
  145. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs +20 -0
  146. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs.map +1 -0
  147. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs +24 -0
  148. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs.map +1 -0
  149. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs +107 -0
  150. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs.map +1 -0
  151. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs +144 -0
  152. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs.map +1 -0
  153. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs +219 -0
  154. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs.map +1 -0
  155. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs +11 -0
  156. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs.map +1 -0
  157. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs +131 -0
  158. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs.map +1 -0
  159. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs +35 -0
  160. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs.map +1 -0
  161. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs +84 -0
  162. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs.map +1 -0
  163. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs +73 -0
  164. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs.map +1 -0
  165. package/es/DatePicker/core/PickerPanel/PanelBody.mjs +95 -0
  166. package/es/DatePicker/core/PickerPanel/PanelBody.mjs.map +1 -0
  167. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs +130 -0
  168. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs.map +1 -0
  169. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs +64 -0
  170. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs.map +1 -0
  171. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs +108 -0
  172. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs.map +1 -0
  173. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs +44 -0
  174. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs.map +1 -0
  175. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs +157 -0
  176. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs.map +1 -0
  177. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs +100 -0
  178. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs.map +1 -0
  179. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs +71 -0
  180. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs.map +1 -0
  181. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs +62 -0
  182. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs.map +1 -0
  183. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs +200 -0
  184. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs.map +1 -0
  185. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs +25 -0
  186. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs.map +1 -0
  187. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs +31 -0
  188. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs.map +1 -0
  189. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs +34 -0
  190. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs.map +1 -0
  191. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs +92 -0
  192. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs.map +1 -0
  193. package/es/DatePicker/core/PickerPanel/context.mjs +48 -0
  194. package/es/DatePicker/core/PickerPanel/context.mjs.map +1 -0
  195. package/es/DatePicker/core/PickerPanel/index.d.mts +1 -0
  196. package/es/DatePicker/core/PickerPanel/index.mjs +175 -0
  197. package/es/DatePicker/core/PickerPanel/index.mjs.map +1 -0
  198. package/es/DatePicker/core/PickerPopup.mjs +118 -0
  199. package/es/DatePicker/core/PickerPopup.mjs.map +1 -0
  200. package/es/DatePicker/core/generate/dayjs.mjs +109 -0
  201. package/es/DatePicker/core/generate/dayjs.mjs.map +1 -0
  202. package/es/DatePicker/core/generate/index.d.mts +40 -0
  203. package/es/DatePicker/core/hooks/react.mjs +58 -0
  204. package/es/DatePicker/core/hooks/react.mjs.map +1 -0
  205. package/es/DatePicker/core/hooks/useLocale.mjs +51 -0
  206. package/es/DatePicker/core/hooks/useLocale.mjs.map +1 -0
  207. package/es/DatePicker/core/hooks/useSemantic.mjs +20 -0
  208. package/es/DatePicker/core/hooks/useSemantic.mjs.map +1 -0
  209. package/es/DatePicker/core/hooks/useSyncState.mjs +25 -0
  210. package/es/DatePicker/core/hooks/useSyncState.mjs.map +1 -0
  211. package/es/DatePicker/core/hooks/useTimeConfig.mjs +173 -0
  212. package/es/DatePicker/core/hooks/useTimeConfig.mjs.map +1 -0
  213. package/es/DatePicker/core/hooks/useTimeInfo.mjs +110 -0
  214. package/es/DatePicker/core/hooks/useTimeInfo.mjs.map +1 -0
  215. package/es/DatePicker/core/hooks/useToggleDates.mjs +21 -0
  216. package/es/DatePicker/core/hooks/useToggleDates.mjs.map +1 -0
  217. package/es/DatePicker/core/index.d.mts +5 -0
  218. package/es/DatePicker/core/index.mjs +9 -0
  219. package/es/DatePicker/core/index.mjs.map +1 -0
  220. package/es/DatePicker/core/interface.d.mts +325 -0
  221. package/es/DatePicker/core/locale/common.mjs +11 -0
  222. package/es/DatePicker/core/locale/common.mjs.map +1 -0
  223. package/es/DatePicker/core/locale/en_US.mjs +39 -0
  224. package/es/DatePicker/core/locale/en_US.mjs.map +1 -0
  225. package/es/DatePicker/core/utils/common.mjs +73 -0
  226. package/es/DatePicker/core/utils/common.mjs.map +1 -0
  227. package/es/DatePicker/core/utils/dateUtil.mjs +106 -0
  228. package/es/DatePicker/core/utils/dateUtil.mjs.map +1 -0
  229. package/es/DatePicker/core/utils/miscUtil.mjs +46 -0
  230. package/es/DatePicker/core/utils/miscUtil.mjs.map +1 -0
  231. package/es/DatePicker/core/utils/uiUtil.mjs +9 -0
  232. package/es/DatePicker/core/utils/uiUtil.mjs.map +1 -0
  233. package/es/DatePicker/dateGenerateConfig.mjs +52 -0
  234. package/es/DatePicker/dateGenerateConfig.mjs.map +1 -0
  235. package/es/DatePicker/generateConfig.mjs +12 -0
  236. package/es/DatePicker/generateConfig.mjs.map +1 -0
  237. package/es/DatePicker/generatePicker.d.mts +12 -0
  238. package/es/DatePicker/generatePicker.mjs +22 -0
  239. package/es/DatePicker/generatePicker.mjs.map +1 -0
  240. package/es/DatePicker/index.d.mts +8 -3
  241. package/es/DatePicker/index.mjs +5 -1
  242. package/es/DatePicker/legacyDate.mjs +58 -0
  243. package/es/DatePicker/legacyDate.mjs.map +1 -0
  244. package/es/DatePicker/locale.d.mts +15 -0
  245. package/es/DatePicker/locale.mjs +143 -0
  246. package/es/DatePicker/locale.mjs.map +1 -0
  247. package/es/DatePicker/semantic.mjs +29 -0
  248. package/es/DatePicker/semantic.mjs.map +1 -0
  249. package/es/DatePicker/style.mjs +3 -155
  250. package/es/DatePicker/style.mjs.map +1 -1
  251. package/es/DatePicker/type.d.mts +294 -27
  252. package/es/DatePicker/usePanelKeyboard.mjs +230 -0
  253. package/es/DatePicker/usePanelKeyboard.mjs.map +1 -0
  254. package/es/DatePicker/usePickerShared.mjs +106 -0
  255. package/es/DatePicker/usePickerShared.mjs.map +1 -0
  256. package/es/DatePicker/usePresetActive.mjs +49 -0
  257. package/es/DatePicker/usePresetActive.mjs.map +1 -0
  258. package/es/DraggablePanel/atoms.mjs +5 -5
  259. package/es/DraggablePanel/atoms.mjs.map +1 -1
  260. package/es/DraggableSideNav/DraggableSideNav.mjs +3 -3
  261. package/es/DraggableSideNav/DraggableSideNav.mjs.map +1 -1
  262. package/es/Drawer/Drawer.mjs +2 -2
  263. package/es/Drawer/Drawer.mjs.map +1 -1
  264. package/es/Drawer/atoms.mjs +6 -6
  265. package/es/Drawer/atoms.mjs.map +1 -1
  266. package/es/DropdownMenu/atoms.mjs +22 -22
  267. package/es/DropdownMenu/atoms.mjs.map +1 -1
  268. package/es/DropdownMenu/sharedStyle.mjs +2 -2
  269. package/es/DropdownMenu/sharedStyle.mjs.map +1 -1
  270. package/es/EditorSlashMenu/atoms.mjs +12 -12
  271. package/es/EditorSlashMenu/atoms.mjs.map +1 -1
  272. package/es/EmojiPicker/EmojiPicker.mjs +7 -7
  273. package/es/EmojiPicker/EmojiPicker.mjs.map +1 -1
  274. package/es/EmojiPicker/loadEmojiData.mjs +6 -0
  275. package/es/EmojiPicker/loadEmojiData.mjs.map +1 -0
  276. package/es/FloatingPanel/FloatingPanel.mjs +2 -2
  277. package/es/FloatingPanel/FloatingPanel.mjs.map +1 -1
  278. package/es/FormKit/List.mjs +2 -2
  279. package/es/FormKit/List.mjs.map +1 -1
  280. package/es/Highlighter/FullFeatured.mjs +2 -2
  281. package/es/Highlighter/FullFeatured.mjs.map +1 -1
  282. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs +2 -2
  283. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
  284. package/es/Highlighter/SyntaxHighlighter/index.mjs +4 -4
  285. package/es/Highlighter/SyntaxHighlighter/index.mjs.map +1 -1
  286. package/es/Highlighter/style.mjs +2 -2
  287. package/es/Highlighter/style.mjs.map +1 -1
  288. package/es/HtmlPreview/HtmlPreview.mjs +2 -2
  289. package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
  290. package/es/Icon/Icon.mjs +2 -2
  291. package/es/Icon/Icon.mjs.map +1 -1
  292. package/es/List/ListRow.mjs +3 -3
  293. package/es/List/ListRow.mjs.map +1 -1
  294. package/es/Markdown/Markdown.mjs +2 -2
  295. package/es/Markdown/Markdown.mjs.map +1 -1
  296. package/es/Markdown/Typography.mjs +2 -2
  297. package/es/Markdown/Typography.mjs.map +1 -1
  298. package/es/Mermaid/FullFeatured.mjs +2 -2
  299. package/es/Mermaid/FullFeatured.mjs.map +1 -1
  300. package/es/Mermaid/SyntaxMermaid/index.mjs +4 -4
  301. package/es/Mermaid/SyntaxMermaid/index.mjs.map +1 -1
  302. package/es/Modal/atoms.mjs +6 -6
  303. package/es/Modal/atoms.mjs.map +1 -1
  304. package/es/Pagination/Pagination.mjs +181 -41
  305. package/es/Pagination/Pagination.mjs.map +1 -1
  306. package/es/Pagination/helpers.mjs +3 -3
  307. package/es/Pagination/helpers.mjs.map +1 -1
  308. package/es/Pagination/index.d.mts +2 -2
  309. package/es/Pagination/marker.stylex.mjs +9 -0
  310. package/es/Pagination/marker.stylex.mjs.map +1 -0
  311. package/es/Pagination/style.mjs +74 -4
  312. package/es/Pagination/style.mjs.map +1 -1
  313. package/es/Pagination/type.d.mts +41 -3
  314. package/es/Popover/PopoverInGroup.mjs +2 -2
  315. package/es/Popover/PopoverInGroup.mjs.map +1 -1
  316. package/es/Popover/atoms.mjs +6 -6
  317. package/es/Popover/atoms.mjs.map +1 -1
  318. package/es/ProTable/ProTable.d.mts +11 -0
  319. package/es/ProTable/ProTable.mjs +208 -0
  320. package/es/ProTable/ProTable.mjs.map +1 -0
  321. package/es/ProTable/hooks/useColumnRequest.mjs +55 -0
  322. package/es/ProTable/hooks/useColumnRequest.mjs.map +1 -0
  323. package/es/ProTable/hooks/useColumnsState.mjs +37 -0
  324. package/es/ProTable/hooks/useColumnsState.mjs.map +1 -0
  325. package/es/ProTable/hooks/useDelayedFlag.mjs +18 -0
  326. package/es/ProTable/hooks/useDelayedFlag.mjs.map +1 -0
  327. package/es/ProTable/hooks/useDensity.mjs +15 -0
  328. package/es/ProTable/hooks/useDensity.mjs.map +1 -0
  329. package/es/ProTable/hooks/useFetchData.mjs +97 -0
  330. package/es/ProTable/hooks/useFetchData.mjs.map +1 -0
  331. package/es/ProTable/hooks/useFullscreen.mjs +22 -0
  332. package/es/ProTable/hooks/useFullscreen.mjs.map +1 -0
  333. package/es/ProTable/hooks/usePageInfo.mjs +35 -0
  334. package/es/ProTable/hooks/usePageInfo.mjs.map +1 -0
  335. package/es/ProTable/hooks/useProColumns.mjs +123 -0
  336. package/es/ProTable/hooks/useProColumns.mjs.map +1 -0
  337. package/es/ProTable/hooks/useProLoading.mjs +19 -0
  338. package/es/ProTable/hooks/useProLoading.mjs.map +1 -0
  339. package/es/ProTable/hooks/useProLocale.mjs +22 -0
  340. package/es/ProTable/hooks/useProLocale.mjs.map +1 -0
  341. package/es/ProTable/hooks/useProRequest.mjs +137 -0
  342. package/es/ProTable/hooks/useProRequest.mjs.map +1 -0
  343. package/es/ProTable/hooks/useRowCache.mjs +11 -0
  344. package/es/ProTable/hooks/useRowCache.mjs.map +1 -0
  345. package/es/ProTable/hooks/useSearchForm.mjs +141 -0
  346. package/es/ProTable/hooks/useSearchForm.mjs.map +1 -0
  347. package/es/ProTable/hooks/useTableBindings.mjs +39 -0
  348. package/es/ProTable/hooks/useTableBindings.mjs.map +1 -0
  349. package/es/ProTable/hooks/useTableSelection.mjs +14 -0
  350. package/es/ProTable/hooks/useTableSelection.mjs.map +1 -0
  351. package/es/ProTable/index.d.mts +4 -0
  352. package/es/ProTable/index.d.ts +1 -0
  353. package/es/ProTable/index.js +1 -0
  354. package/es/ProTable/index.mjs +3 -0
  355. package/es/ProTable/locale.d.mts +15 -0
  356. package/es/ProTable/locale.mjs +66 -0
  357. package/es/ProTable/locale.mjs.map +1 -0
  358. package/es/ProTable/parts/ColumnSetting.mjs +155 -0
  359. package/es/ProTable/parts/ColumnSetting.mjs.map +1 -0
  360. package/es/ProTable/parts/FieldControl.mjs +117 -0
  361. package/es/ProTable/parts/FieldControl.mjs.map +1 -0
  362. package/es/ProTable/parts/KeywordInput.mjs +19 -0
  363. package/es/ProTable/parts/KeywordInput.mjs.map +1 -0
  364. package/es/ProTable/parts/LightFilter.mjs +70 -0
  365. package/es/ProTable/parts/LightFilter.mjs.map +1 -0
  366. package/es/ProTable/parts/OptionPopover.mjs +17 -0
  367. package/es/ProTable/parts/OptionPopover.mjs.map +1 -0
  368. package/es/ProTable/parts/SearchForm.mjs +180 -0
  369. package/es/ProTable/parts/SearchForm.mjs.map +1 -0
  370. package/es/ProTable/parts/SearchSection.mjs +33 -0
  371. package/es/ProTable/parts/SearchSection.mjs.map +1 -0
  372. package/es/ProTable/parts/TableAlert.mjs +38 -0
  373. package/es/ProTable/parts/TableAlert.mjs.map +1 -0
  374. package/es/ProTable/parts/Toolbar.mjs +50 -0
  375. package/es/ProTable/parts/Toolbar.mjs.map +1 -0
  376. package/es/ProTable/parts/ToolbarOptions.mjs +103 -0
  377. package/es/ProTable/parts/ToolbarOptions.mjs.map +1 -0
  378. package/es/ProTable/parts/renderValue.mjs +118 -0
  379. package/es/ProTable/parts/renderValue.mjs.map +1 -0
  380. package/es/ProTable/style.mjs +278 -0
  381. package/es/ProTable/style.mjs.map +1 -0
  382. package/es/ProTable/type.d.mts +397 -0
  383. package/es/ProTable/utils.mjs +152 -0
  384. package/es/ProTable/utils.mjs.map +1 -0
  385. package/es/Radio/Radio.mjs +3 -3
  386. package/es/Radio/Radio.mjs.map +1 -1
  387. package/es/ScrollArea/atoms.mjs +4 -4
  388. package/es/ScrollArea/atoms.mjs.map +1 -1
  389. package/es/Segmented/Segmented.mjs +3 -3
  390. package/es/Segmented/Segmented.mjs.map +1 -1
  391. package/es/Segmented/atoms.mjs +2 -2
  392. package/es/Segmented/atoms.mjs.map +1 -1
  393. package/es/Select/Select.mjs +22 -13
  394. package/es/Select/Select.mjs.map +1 -1
  395. package/es/Select/atoms.mjs +4 -4
  396. package/es/Select/atoms.mjs.map +1 -1
  397. package/es/Select/helpers.mjs +8 -1
  398. package/es/Select/helpers.mjs.map +1 -1
  399. package/es/Select/hooks.mjs +8 -4
  400. package/es/Select/hooks.mjs.map +1 -1
  401. package/es/Select/renderOptions.mjs +2 -2
  402. package/es/Select/renderOptions.mjs.map +1 -1
  403. package/es/Select/type.d.mts +7 -0
  404. package/es/Switch/Switch.mjs +2 -2
  405. package/es/Switch/Switch.mjs.map +1 -1
  406. package/es/Switch/atoms.mjs +2 -2
  407. package/es/Switch/atoms.mjs.map +1 -1
  408. package/es/Table/Column.d.mts +8 -0
  409. package/es/Table/Column.mjs +6 -0
  410. package/es/Table/Column.mjs.map +1 -0
  411. package/es/Table/ColumnGroup.d.mts +11 -0
  412. package/es/Table/ColumnGroup.mjs +6 -0
  413. package/es/Table/ColumnGroup.mjs.map +1 -0
  414. package/es/Table/Table.d.mts +16 -2
  415. package/es/Table/Table.mjs +149 -118
  416. package/es/Table/Table.mjs.map +1 -1
  417. package/es/Table/atoms/cells.d.mts +42 -0
  418. package/es/Table/atoms/cells.mjs +72 -0
  419. package/es/Table/atoms/cells.mjs.map +1 -0
  420. package/es/Table/atoms/index.d.mts +3 -0
  421. package/es/Table/atoms/layout.d.mts +44 -0
  422. package/es/Table/atoms/layout.mjs +62 -0
  423. package/es/Table/atoms/layout.mjs.map +1 -0
  424. package/es/Table/constants.mjs +16 -0
  425. package/es/Table/constants.mjs.map +1 -0
  426. package/es/Table/engine/fixed.d.mts +1 -0
  427. package/es/Table/engine/fixed.mjs +53 -0
  428. package/es/Table/engine/fixed.mjs.map +1 -0
  429. package/es/Table/engine/types.d.mts +1 -0
  430. package/es/Table/engine/useTableEngine.mjs +180 -0
  431. package/es/Table/engine/useTableEngine.mjs.map +1 -0
  432. package/es/Table/index.d.mts +7 -2
  433. package/es/Table/index.mjs +4 -1
  434. package/es/Table/internal.d.mts +3 -0
  435. package/es/Table/pipeline/columnUtils.d.mts +5 -0
  436. package/es/Table/pipeline/columnUtils.mjs +58 -0
  437. package/es/Table/pipeline/columnUtils.mjs.map +1 -0
  438. package/es/Table/pipeline/convertChildrenToColumns.mjs +24 -0
  439. package/es/Table/pipeline/convertChildrenToColumns.mjs.map +1 -0
  440. package/es/Table/pipeline/normalizeColumns.mjs +140 -0
  441. package/es/Table/pipeline/normalizeColumns.mjs.map +1 -0
  442. package/es/Table/pipeline/selectionUtils.d.mts +9 -0
  443. package/es/Table/pipeline/selectionUtils.mjs +115 -0
  444. package/es/Table/pipeline/selectionUtils.mjs.map +1 -0
  445. package/es/Table/pipeline/useBreakpoint.mjs +36 -0
  446. package/es/Table/pipeline/useBreakpoint.mjs.map +1 -0
  447. package/es/Table/pipeline/useExpandable.mjs +45 -0
  448. package/es/Table/pipeline/useExpandable.mjs.map +1 -0
  449. package/es/Table/pipeline/useFilter.mjs +52 -0
  450. package/es/Table/pipeline/useFilter.mjs.map +1 -0
  451. package/es/Table/pipeline/useSelection.mjs +302 -0
  452. package/es/Table/pipeline/useSelection.mjs.map +1 -0
  453. package/es/Table/pipeline/useSorter.mjs +146 -0
  454. package/es/Table/pipeline/useSorter.mjs.map +1 -0
  455. package/es/Table/pipeline/useTableLocale.mjs +30 -0
  456. package/es/Table/pipeline/useTableLocale.mjs.map +1 -0
  457. package/es/Table/pipeline/useTableState.mjs +118 -0
  458. package/es/Table/pipeline/useTableState.mjs.map +1 -0
  459. package/es/Table/pipeline/useVirtualLayout.mjs +80 -0
  460. package/es/Table/pipeline/useVirtualLayout.mjs.map +1 -0
  461. package/es/Table/render/Body.mjs +150 -0
  462. package/es/Table/render/Body.mjs.map +1 -0
  463. package/es/Table/render/BodyCell.mjs +87 -0
  464. package/es/Table/render/BodyCell.mjs.map +1 -0
  465. package/es/Table/render/CellShell.mjs +84 -0
  466. package/es/Table/render/CellShell.mjs.map +1 -0
  467. package/es/Table/render/ExpandIcon.mjs +28 -0
  468. package/es/Table/render/ExpandIcon.mjs.map +1 -0
  469. package/es/Table/render/FilterDropdown.mjs +139 -0
  470. package/es/Table/render/FilterDropdown.mjs.map +1 -0
  471. package/es/Table/render/FilterPanel.mjs +152 -0
  472. package/es/Table/render/FilterPanel.mjs.map +1 -0
  473. package/es/Table/render/FixedFrost.mjs +113 -0
  474. package/es/Table/render/FixedFrost.mjs.map +1 -0
  475. package/es/Table/render/FixedHolder.mjs +51 -0
  476. package/es/Table/render/FixedHolder.mjs.map +1 -0
  477. package/es/Table/render/Header.mjs +184 -0
  478. package/es/Table/render/Header.mjs.map +1 -0
  479. package/es/Table/render/LoadingSkeleton.mjs +78 -0
  480. package/es/Table/render/LoadingSkeleton.mjs.map +1 -0
  481. package/es/Table/render/PaginationBar.mjs +71 -0
  482. package/es/Table/render/PaginationBar.mjs.map +1 -0
  483. package/es/Table/render/SelectionCells.mjs +111 -0
  484. package/es/Table/render/SelectionCells.mjs.map +1 -0
  485. package/es/Table/render/StickyScrollBar.mjs +99 -0
  486. package/es/Table/render/StickyScrollBar.mjs.map +1 -0
  487. package/es/Table/render/Summary.d.mts +16 -0
  488. package/es/Table/render/Summary.mjs +58 -0
  489. package/es/Table/render/Summary.mjs.map +1 -0
  490. package/es/Table/render/TableView.mjs +215 -0
  491. package/es/Table/render/TableView.mjs.map +1 -0
  492. package/es/Table/render/VirtualBody.mjs +101 -0
  493. package/es/Table/render/VirtualBody.mjs.map +1 -0
  494. package/es/Table/render/context.mjs +15 -0
  495. package/es/Table/render/context.mjs.map +1 -0
  496. package/es/Table/render/filterUtils.mjs +22 -0
  497. package/es/Table/render/filterUtils.mjs.map +1 -0
  498. package/es/Table/render/tableHelpers.mjs +27 -0
  499. package/es/Table/render/tableHelpers.mjs.map +1 -0
  500. package/es/Table/render/useColGroups.mjs +23 -0
  501. package/es/Table/render/useColGroups.mjs.map +1 -0
  502. package/es/Table/render/useScrollSync.mjs +104 -0
  503. package/es/Table/render/useScrollSync.mjs.map +1 -0
  504. package/es/Table/render/useViewContexts.mjs +134 -0
  505. package/es/Table/render/useViewContexts.mjs.map +1 -0
  506. package/es/Table/semantic.mjs +45 -0
  507. package/es/Table/semantic.mjs.map +1 -0
  508. package/es/Table/store/createTableStore.d.mts +1 -0
  509. package/es/Table/store/createTableStore.mjs +40 -0
  510. package/es/Table/store/createTableStore.mjs.map +1 -0
  511. package/es/Table/store/hooks.mjs +24 -0
  512. package/es/Table/store/hooks.mjs.map +1 -0
  513. package/es/Table/style.mjs +175 -90
  514. package/es/Table/style.mjs.map +1 -1
  515. package/es/Table/type.d.mts +467 -37
  516. package/es/Table/useTableController.mjs +293 -0
  517. package/es/Table/useTableController.mjs.map +1 -0
  518. package/es/Tabs/Tabs.mjs +2 -2
  519. package/es/Tabs/Tabs.mjs.map +1 -1
  520. package/es/Tabs/atoms.mjs +2 -2
  521. package/es/Tabs/atoms.mjs.map +1 -1
  522. package/es/Tag/Tag.mjs +2 -2
  523. package/es/Tag/Tag.mjs.map +1 -1
  524. package/es/Text/Text.mjs +2 -2
  525. package/es/Text/Text.mjs.map +1 -1
  526. package/es/Text/style.d.mts +3 -3
  527. package/es/Text/style.mjs +3 -3
  528. package/es/Text/style.mjs.map +1 -1
  529. package/es/ToggleGroup/ToggleGroup.mjs +3 -3
  530. package/es/ToggleGroup/ToggleGroup.mjs.map +1 -1
  531. package/es/ToggleGroup/atoms.mjs +2 -2
  532. package/es/ToggleGroup/atoms.mjs.map +1 -1
  533. package/es/Tooltip/TooltipGroup.mjs +3 -3
  534. package/es/Tooltip/TooltipGroup.mjs.map +1 -1
  535. package/es/Tooltip/TooltipStandalone.mjs +3 -3
  536. package/es/Tooltip/TooltipStandalone.mjs.map +1 -1
  537. package/es/Tree/Tree.mjs +2 -2
  538. package/es/Tree/Tree.mjs.map +1 -1
  539. package/es/Tree/TreeNode.mjs +2 -2
  540. package/es/Tree/TreeNode.mjs.map +1 -1
  541. package/es/Video/Video.mjs +2 -2
  542. package/es/Video/Video.mjs.map +1 -1
  543. package/es/awesome/Features/FeatureItem.mjs +2 -2
  544. package/es/awesome/Features/FeatureItem.mjs.map +1 -1
  545. package/es/awesome/Hero/Hero.mjs +3 -3
  546. package/es/awesome/Hero/Hero.mjs.map +1 -1
  547. package/es/awesome/InstallBanner/InstallBanner.mjs +2 -2
  548. package/es/awesome/InstallBanner/InstallBanner.mjs.map +1 -1
  549. package/es/awesome/LandingHero/LandingHero.mjs +3 -3
  550. package/es/awesome/LandingHero/LandingHero.mjs.map +1 -1
  551. package/es/awesome/LogoMarquee/LogoMarquee.mjs +2 -2
  552. package/es/awesome/LogoMarquee/LogoMarquee.mjs.map +1 -1
  553. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs +4 -4
  554. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
  555. package/es/awesome/landingActions.mjs +2 -2
  556. package/es/awesome/landingActions.mjs.map +1 -1
  557. package/es/chat/ChatItem/ChatItem.mjs +2 -2
  558. package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
  559. package/es/chat/EditableMessage/EditableMessage.mjs +3 -3
  560. package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
  561. package/es/chat/EditableMessageList/EditableMessageList.mjs +1 -1
  562. package/es/chat/MessageInput/MessageInput.mjs +3 -3
  563. package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
  564. package/es/dashboard/AuthLayout/AuthLayout.mjs +8 -4
  565. package/es/dashboard/AuthLayout/AuthLayout.mjs.map +1 -1
  566. package/es/dashboard/AuthLayout/style.mjs +14 -3
  567. package/es/dashboard/AuthLayout/style.mjs.map +1 -1
  568. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs +2 -2
  569. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs.map +1 -1
  570. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs +2 -2
  571. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs.map +1 -1
  572. package/es/dashboard/ConsoleNav/ConsoleNav.mjs +3 -3
  573. package/es/dashboard/ConsoleNav/ConsoleNav.mjs.map +1 -1
  574. package/es/dashboard/ConsoleNav/style.mjs +2 -2
  575. package/es/dashboard/ConsoleNav/style.mjs.map +1 -1
  576. package/es/dashboard/ConsoleShell/style.mjs +1 -1
  577. package/es/dashboard/ConsoleShell/style.mjs.map +1 -1
  578. package/es/dashboard/FilterSidebar/FilterSidebar.mjs +1 -1
  579. package/es/dashboard/FilterSidebar/style.mjs +2 -2
  580. package/es/dashboard/FilterSidebar/style.mjs.map +1 -1
  581. package/es/dashboard/FilterStrip/style.mjs +1 -1
  582. package/es/dashboard/FilterStrip/style.mjs.map +1 -1
  583. package/es/dashboard/MetricStrip/MetricCell.mjs +25 -14
  584. package/es/dashboard/MetricStrip/MetricCell.mjs.map +1 -1
  585. package/es/dashboard/MetricStrip/style.mjs +14 -1
  586. package/es/dashboard/MetricStrip/style.mjs.map +1 -1
  587. package/es/dashboard/MetricStrip/type.d.mts +2 -0
  588. package/es/dashboard/PageSkeleton/style.mjs +2 -1
  589. package/es/dashboard/PageSkeleton/style.mjs.map +1 -1
  590. package/es/dashboard/StatCard/StatCard.d.mts +1 -1
  591. package/es/dashboard/StatCard/StatCard.mjs +2 -1
  592. package/es/dashboard/StatCard/StatCard.mjs.map +1 -1
  593. package/es/dashboard/StatCard/type.d.mts +2 -0
  594. package/es/dashboard/Surface/Surface.mjs +3 -4
  595. package/es/dashboard/Surface/Surface.mjs.map +1 -1
  596. package/es/dashboard/Surface/link.mjs +1 -1
  597. package/es/dashboard/Surface/link.mjs.map +1 -1
  598. package/es/dashboard/Surface/style.mjs +15 -14
  599. package/es/dashboard/Surface/style.mjs.map +1 -1
  600. package/es/dashboard/index.mjs +2 -2
  601. package/es/eslint/noBaseUiSubpath.mjs +2 -1
  602. package/es/eslint/noBaseUiSubpath.mjs.map +1 -1
  603. package/es/i18n/resources/en/colorPicker.d.mts +5 -0
  604. package/es/i18n/resources/en/colorPicker.mjs +5 -0
  605. package/es/i18n/resources/en/colorPicker.mjs.map +1 -1
  606. package/es/i18n/resources/en/datePicker.d.mts +54 -0
  607. package/es/i18n/resources/en/datePicker.mjs +55 -1
  608. package/es/i18n/resources/en/datePicker.mjs.map +1 -1
  609. package/es/i18n/resources/en/index.d.mts +4 -3
  610. package/es/i18n/resources/en/index.mjs +3 -1
  611. package/es/i18n/resources/en/index.mjs.map +1 -1
  612. package/es/i18n/resources/en/table.d.mts +23 -0
  613. package/es/i18n/resources/en/table.mjs +24 -0
  614. package/es/i18n/resources/en/table.mjs.map +1 -0
  615. package/es/i18n/resources/zhCn/colorPicker.d.mts +5 -0
  616. package/es/i18n/resources/zhCn/colorPicker.mjs +5 -0
  617. package/es/i18n/resources/zhCn/colorPicker.mjs.map +1 -1
  618. package/es/i18n/resources/zhCn/datePicker.d.mts +54 -0
  619. package/es/i18n/resources/zhCn/datePicker.mjs +55 -1
  620. package/es/i18n/resources/zhCn/datePicker.mjs.map +1 -1
  621. package/es/i18n/resources/zhCn/index.d.mts +4 -3
  622. package/es/i18n/resources/zhCn/index.mjs +4 -2
  623. package/es/i18n/resources/zhCn/index.mjs.map +1 -1
  624. package/es/i18n/resources/zhCn/table.d.mts +23 -0
  625. package/es/i18n/resources/zhCn/table.mjs +24 -0
  626. package/es/i18n/resources/zhCn/table.mjs.map +1 -0
  627. package/es/i18n/types.d.mts +3 -2
  628. package/es/index.d.mts +15 -6
  629. package/es/index.mjs +12 -6
  630. package/es/internal/overflow/OverflowList.mjs +71 -0
  631. package/es/internal/overflow/OverflowList.mjs.map +1 -0
  632. package/es/mdx/Callout/index.mjs +2 -2
  633. package/es/mdx/Callout/index.mjs.map +1 -1
  634. package/es/mdx/Cards/Card.mjs +2 -2
  635. package/es/mdx/Cards/Card.mjs.map +1 -1
  636. package/es/mdx/Cards/index.mjs +2 -2
  637. package/es/mdx/Cards/index.mjs.map +1 -1
  638. package/es/mdx/Mdx/index.mjs +2 -2
  639. package/es/mdx/Mdx/index.mjs.map +1 -1
  640. package/es/mdx/Steps/index.mjs +2 -2
  641. package/es/mdx/Steps/index.mjs.map +1 -1
  642. package/es/mdx/mdxComponents/Pre.mjs +5 -5
  643. package/es/mdx/mdxComponents/Pre.mjs.map +1 -1
  644. package/es/storybook/StoryBook/style.mjs +2 -0
  645. package/es/storybook/StoryBook/style.mjs.map +1 -1
  646. package/es/style.css +2966 -957
  647. package/es/styles/stylex/props.mjs +2 -2
  648. package/es/styles/stylex/props.mjs.map +1 -1
  649. package/es/styles/theme/themeCss.mjs +15 -0
  650. package/es/styles/theme/themeCss.mjs.map +1 -1
  651. package/es/theme.css +8 -0
  652. package/package.json +6 -1
  653. package/es/DatePicker/CalendarPanel.mjs +0 -189
  654. package/es/DatePicker/CalendarPanel.mjs.map +0 -1
  655. package/es/DatePicker/PickerShell.mjs +0 -43
  656. package/es/DatePicker/PickerShell.mjs.map +0 -1
  657. package/es/DatePicker/calendar.d.mts +0 -4
  658. package/es/DatePicker/calendar.mjs +0 -46
  659. package/es/DatePicker/calendar.mjs.map +0 -1
  660. package/es/Table/FilterMenu.mjs +0 -45
  661. package/es/Table/FilterMenu.mjs.map +0 -1
  662. package/es/Table/TableBody.mjs +0 -67
  663. package/es/Table/TableBody.mjs.map +0 -1
  664. package/es/Table/TableHead.mjs +0 -58
  665. package/es/Table/TableHead.mjs.map +0 -1
  666. package/es/Table/features.mjs +0 -12
  667. package/es/Table/features.mjs.map +0 -1
  668. package/es/Table/fixedOffsets.mjs +0 -29
  669. package/es/Table/fixedOffsets.mjs.map +0 -1
  670. package/es/Table/marker.stylex.mjs +0 -9
  671. package/es/Table/marker.stylex.mjs.map +0 -1
  672. package/es/Table/toColumnDefs.mjs +0 -26
  673. package/es/Table/toColumnDefs.mjs.map +0 -1
  674. package/es/Table/useTableState.mjs +0 -99
  675. package/es/Table/useTableState.mjs.map +0 -1
@@ -0,0 +1,72 @@
1
+ "use client";
2
+ import { PREFIX_CLS } from "../constants.mjs";
3
+ import { createElement, isValidElement } from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import clsx$1 from "clsx";
6
+ //#region src/Table/atoms/cells.tsx
7
+ const CELL = `${PREFIX_CLS}-cell`;
8
+ const getEllipsisTitle = (ellipsis, rowType, children) => {
9
+ const config = ellipsis === true ? { showTitle: true } : ellipsis;
10
+ if (!config || !(config.showTitle || rowType === "header")) return void 0;
11
+ if (typeof children === "string" || typeof children === "number") return String(children);
12
+ if (isValidElement(children)) {
13
+ const inner = children.props.children;
14
+ if (typeof inner === "string") return inner;
15
+ }
16
+ };
17
+ const TableCell = ({ align, appendNode, children, className, colSpan, component = "td", ellipsis, fixEnd, fixStart, hovered, rowSpan, rowType = "body", shadowEnd, shadowStart, sticky, style, title, zIndex, zIndexReverse, ...rest }) => {
18
+ const isFixStart = typeof fixStart === "number";
19
+ const isFixEnd = typeof fixEnd === "number";
20
+ const fixedStyle = {};
21
+ if (isFixStart) fixedStyle.insetInlineStart = fixStart;
22
+ if (isFixEnd) fixedStyle.insetInlineEnd = fixEnd;
23
+ if (isFixStart || isFixEnd) {
24
+ fixedStyle["--z-offset"] = zIndex;
25
+ fixedStyle["--z-offset-reverse"] = zIndexReverse;
26
+ }
27
+ const content = ellipsis && Boolean(isFixStart && shadowStart || isFixEnd && shadowEnd) ? /* @__PURE__ */ jsx("span", {
28
+ className: `${CELL}-content`,
29
+ children
30
+ }) : children;
31
+ return createElement(component, {
32
+ ...rest,
33
+ className: clsx$1(CELL, className, (isFixStart || isFixEnd) && `${CELL}-fix`, isFixStart && `${CELL}-fix-start`, isFixEnd && `${CELL}-fix-end`, isFixStart && shadowStart && `${CELL}-fix-start-shadow`, isFixEnd && shadowEnd && `${CELL}-fix-end-shadow`, ellipsis && `${CELL}-ellipsis`, appendNode && `${CELL}-with-append`, (isFixStart || isFixEnd) && sticky && `${CELL}-fix-sticky`, hovered && `${CELL}-row-hover`),
34
+ colSpan: colSpan !== void 0 && colSpan !== 1 ? colSpan : void 0,
35
+ rowSpan: rowSpan !== void 0 && rowSpan !== 1 ? rowSpan : void 0,
36
+ style: {
37
+ ...fixedStyle,
38
+ ...align && { textAlign: align },
39
+ ...style
40
+ },
41
+ title: title ?? getEllipsisTitle(ellipsis, rowType, children)
42
+ }, appendNode, content);
43
+ };
44
+ const TableHeaderCell = ({ component, ...props }) => /* @__PURE__ */ jsx(TableCell, {
45
+ rowType: "header",
46
+ ...props,
47
+ component: component ?? "th"
48
+ });
49
+ const TableRow = ({ className, component = "tr", level, selected, ...rest }) => createElement(component, {
50
+ ...rest,
51
+ className: clsx$1(level !== void 0 && `lobe-table-row`, level !== void 0 && `lobe-table-row-level-${level}`, selected && `lobe-table-row-selected`, className) || void 0
52
+ });
53
+ const TableExpandedRow = ({ cellComponent, children, className, colSpan, component = "tr", expanded = true, fixed }) => createElement(component, {
54
+ className,
55
+ style: { display: expanded ? void 0 : "none" }
56
+ }, /* @__PURE__ */ jsx(TableCell, {
57
+ colSpan,
58
+ component: cellComponent,
59
+ children: fixed ? /* @__PURE__ */ jsx("div", {
60
+ className: `${PREFIX_CLS}-expanded-row-fixed`,
61
+ style: {
62
+ insetInlineStart: 0,
63
+ overflow: "hidden",
64
+ position: "sticky"
65
+ },
66
+ children
67
+ }) : children
68
+ }));
69
+ //#endregion
70
+ export { TableCell, TableExpandedRow, TableHeaderCell, TableRow };
71
+
72
+ //# sourceMappingURL=cells.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cells.mjs","names":["clsx"],"sources":["../../../src/Table/atoms/cells.tsx"],"sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport {\n createElement,\n type CSSProperties,\n type HTMLAttributes,\n isValidElement,\n type ReactNode,\n type Ref,\n type TdHTMLAttributes,\n} from 'react';\n\nimport { PREFIX_CLS } from '../constants';\nimport type { TableColumnAlign, TableCustomizeComponent } from '../type';\n\nconst CELL = `${PREFIX_CLS}-cell`;\n\nexport interface TableCellProps extends Omit<TdHTMLAttributes<HTMLTableCellElement>, 'align'> {\n align?: TableColumnAlign;\n appendNode?: ReactNode;\n component?: TableCustomizeComponent;\n ellipsis?: boolean | { showTitle?: boolean };\n fixEnd?: number;\n fixStart?: number;\n hovered?: boolean;\n ref?: Ref<HTMLTableCellElement>;\n rowType?: 'body' | 'header';\n shadowEnd?: boolean;\n shadowStart?: boolean;\n sticky?: boolean;\n zIndex?: number;\n zIndexReverse?: number;\n}\n\nconst getEllipsisTitle = (\n ellipsis: TableCellProps['ellipsis'],\n rowType: TableCellProps['rowType'],\n children: ReactNode,\n) => {\n const config = ellipsis === true ? { showTitle: true } : ellipsis;\n if (!config || !(config.showTitle || rowType === 'header')) return undefined;\n if (typeof children === 'string' || typeof children === 'number') return String(children);\n if (isValidElement<{ children?: unknown }>(children)) {\n const inner = children.props.children;\n if (typeof inner === 'string') return inner;\n }\n return undefined;\n};\n\nexport const TableCell = ({\n align,\n appendNode,\n children,\n className,\n colSpan,\n component = 'td',\n ellipsis,\n fixEnd,\n fixStart,\n hovered,\n rowSpan,\n rowType = 'body',\n shadowEnd,\n shadowStart,\n sticky,\n style,\n title,\n zIndex,\n zIndexReverse,\n ...rest\n}: TableCellProps) => {\n const isFixStart = typeof fixStart === 'number';\n const isFixEnd = typeof fixEnd === 'number';\n const fixedStyle: CSSProperties & Record<string, unknown> = {};\n if (isFixStart) fixedStyle.insetInlineStart = fixStart;\n if (isFixEnd) fixedStyle.insetInlineEnd = fixEnd;\n if (isFixStart || isFixEnd) {\n fixedStyle['--z-offset'] = zIndex;\n fixedStyle['--z-offset-reverse'] = zIndexReverse;\n }\n const withShadow = Boolean((isFixStart && shadowStart) || (isFixEnd && shadowEnd));\n const content =\n ellipsis && withShadow ? <span className={`${CELL}-content`}>{children}</span> : children;\n\n return createElement(\n component,\n {\n ...rest,\n className: clsx(\n CELL,\n className,\n (isFixStart || isFixEnd) && `${CELL}-fix`,\n isFixStart && `${CELL}-fix-start`,\n isFixEnd && `${CELL}-fix-end`,\n isFixStart && shadowStart && `${CELL}-fix-start-shadow`,\n isFixEnd && shadowEnd && `${CELL}-fix-end-shadow`,\n ellipsis && `${CELL}-ellipsis`,\n appendNode && `${CELL}-with-append`,\n (isFixStart || isFixEnd) && sticky && `${CELL}-fix-sticky`,\n hovered && `${CELL}-row-hover`,\n ),\n colSpan: colSpan !== undefined && colSpan !== 1 ? colSpan : undefined,\n rowSpan: rowSpan !== undefined && rowSpan !== 1 ? rowSpan : undefined,\n style: { ...fixedStyle, ...(align && { textAlign: align }), ...style },\n title: title ?? getEllipsisTitle(ellipsis, rowType, children),\n },\n appendNode,\n content,\n );\n};\n\nexport const TableHeaderCell = ({ component, ...props }: TableCellProps) => (\n <TableCell rowType=\"header\" {...props} component={component ?? 'th'} />\n);\n\nexport interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {\n component?: TableCustomizeComponent;\n level?: number;\n ref?: Ref<HTMLTableRowElement>;\n selected?: boolean;\n}\n\nexport const TableRow = ({\n className,\n component = 'tr',\n level,\n selected,\n ...rest\n}: TableRowProps) =>\n createElement(component, {\n ...rest,\n className:\n clsx(\n level !== undefined && `${PREFIX_CLS}-row`,\n level !== undefined && `${PREFIX_CLS}-row-level-${level}`,\n selected && `${PREFIX_CLS}-row-selected`,\n className,\n ) || undefined,\n });\n\nexport interface TableExpandedRowProps {\n cellComponent?: TableCustomizeComponent;\n children?: ReactNode;\n className?: string;\n colSpan: number;\n component?: TableCustomizeComponent;\n expanded?: boolean;\n fixed?: boolean;\n}\n\nexport const TableExpandedRow = ({\n cellComponent,\n children,\n className,\n colSpan,\n component = 'tr',\n expanded = true,\n fixed,\n}: TableExpandedRowProps) =>\n createElement(\n component,\n { className, style: { display: expanded ? undefined : 'none' } },\n <TableCell colSpan={colSpan} component={cellComponent}>\n {fixed ? (\n <div\n className={`${PREFIX_CLS}-expanded-row-fixed`}\n style={{ insetInlineStart: 0, overflow: 'hidden', position: 'sticky' }}\n >\n {children}\n </div>\n ) : (\n children\n )}\n </TableCell>,\n );\n"],"mappings":";;;;;;AAgBA,MAAM,OAAO,GAAG,WAAW;AAmB3B,MAAM,oBACJ,UACA,SACA,aACG;CACH,MAAM,SAAS,aAAa,OAAO,EAAE,WAAW,KAAK,IAAI;CACzD,IAAI,CAAC,UAAU,EAAE,OAAO,aAAa,YAAY,WAAW,OAAO,KAAA;CACnE,IAAI,OAAO,aAAa,YAAY,OAAO,aAAa,UAAU,OAAO,OAAO,QAAQ;CACxF,IAAI,eAAuC,QAAQ,GAAG;EACpD,MAAM,QAAQ,SAAS,MAAM;EAC7B,IAAI,OAAO,UAAU,UAAU,OAAO;CACxC;AAEF;AAEA,MAAa,aAAa,EACxB,OACA,YACA,UACA,WACA,SACA,YAAY,MACZ,UACA,QACA,UACA,SACA,SACA,UAAU,QACV,WACA,aACA,QACA,OACA,OACA,QACA,eACA,GAAG,WACiB;CACpB,MAAM,aAAa,OAAO,aAAa;CACvC,MAAM,WAAW,OAAO,WAAW;CACnC,MAAM,aAAsD,CAAC;CAC7D,IAAI,YAAY,WAAW,mBAAmB;CAC9C,IAAI,UAAU,WAAW,iBAAiB;CAC1C,IAAI,cAAc,UAAU;EAC1B,WAAW,gBAAgB;EAC3B,WAAW,wBAAwB;CACrC;CAEA,MAAM,UACJ,YAFiB,QAAS,cAAc,eAAiB,YAAY,SAEhD,IAAI,oBAAC,QAAD;EAAM,WAAW,GAAG,KAAK;EAAY;CAAe,CAAA,IAAI;CAEnF,OAAO,cACL,WACA;EACE,GAAG;EACH,WAAWA,OACT,MACA,YACC,cAAc,aAAa,GAAG,KAAK,OACpC,cAAc,GAAG,KAAK,aACtB,YAAY,GAAG,KAAK,WACpB,cAAc,eAAe,GAAG,KAAK,oBACrC,YAAY,aAAa,GAAG,KAAK,kBACjC,YAAY,GAAG,KAAK,YACpB,cAAc,GAAG,KAAK,gBACrB,cAAc,aAAa,UAAU,GAAG,KAAK,cAC9C,WAAW,GAAG,KAAK,WACrB;EACA,SAAS,YAAY,KAAA,KAAa,YAAY,IAAI,UAAU,KAAA;EAC5D,SAAS,YAAY,KAAA,KAAa,YAAY,IAAI,UAAU,KAAA;EAC5D,OAAO;GAAE,GAAG;GAAY,GAAI,SAAS,EAAE,WAAW,MAAM;GAAI,GAAG;EAAM;EACrE,OAAO,SAAS,iBAAiB,UAAU,SAAS,QAAQ;CAC9D,GACA,YACA,OACF;AACF;AAEA,MAAa,mBAAmB,EAAE,WAAW,GAAG,YAC9C,oBAAC,WAAD;CAAW,SAAQ;CAAS,GAAI;CAAO,WAAW,aAAa;AAAO,CAAA;AAUxE,MAAa,YAAY,EACvB,WACA,YAAY,MACZ,OACA,UACA,GAAG,WAEH,cAAc,WAAW;CACvB,GAAG;CACH,WACEA,OACE,UAAU,KAAA,KAAa,kBACvB,UAAU,KAAA,KAAa,wBAA2B,SAClD,YAAY,2BACZ,SACF,KAAK,KAAA;AACT,CAAC;AAYH,MAAa,oBAAoB,EAC/B,eACA,UACA,WACA,SACA,YAAY,MACZ,WAAW,MACX,YAEA,cACE,WACA;CAAE;CAAW,OAAO,EAAE,SAAS,WAAW,KAAA,IAAY,OAAO;AAAE,GAC/D,oBAAC,WAAD;CAAoB;CAAS,WAAW;CACrC,UAAA,QACC,oBAAC,OAAD;EACE,WAAW,GAAG,WAAW;EACzB,OAAO;GAAE,kBAAkB;GAAG,UAAU;GAAU,UAAU;EAAS;EAEpE;CACE,CAAA,IAEL;AAEO,CAAA,CACb"}
@@ -0,0 +1,3 @@
1
+ import { TableCell, TableCellProps, TableExpandedRow, TableExpandedRowProps, TableHeaderCell, TableRow, TableRowProps } from "./cells.mjs";
2
+ import { TableBody, TableColGroup, TableColGroupColumn, TableColGroupProps, TableContainer, TableElement, TableElementProps, TableFooter, TableHeader, TablePartProps, TableRoot, TableRootProps, TableScroll, TableScrollProps, TableSectionProps, TableSummaryFoot, TableTitle } from "./layout.mjs";
3
+ export { TableBody, TableCell, type TableCellProps, TableColGroup, type TableColGroupColumn, type TableColGroupProps, TableContainer, TableElement, type TableElementProps, TableExpandedRow, type TableExpandedRowProps, TableFooter, TableHeader, TableHeaderCell, type TablePartProps, TableRoot, type TableRootProps, TableRow, type TableRowProps, TableScroll, type TableScrollProps, type TableSectionProps, TableSummaryFoot, TableTitle };
@@ -0,0 +1,44 @@
1
+ import { TableCustomizeComponent, TableSize, TableVariant } from "../type.mjs";
2
+ import { HTMLAttributes, Ref, TableHTMLAttributes } from "react";
3
+ //#region src/Table/atoms/layout.d.ts
4
+ export interface TableRootProps extends HTMLAttributes<HTMLDivElement> {
5
+ grouped?: boolean;
6
+ hoverable?: boolean;
7
+ ref?: Ref<HTMLDivElement>;
8
+ size?: TableSize;
9
+ variant?: TableVariant;
10
+ }
11
+ export declare const TableRoot: ({ className, grouped, hoverable, size, variant, ...rest }: TableRootProps) => import("react").JSX.Element;
12
+ export interface TablePartProps extends HTMLAttributes<HTMLDivElement> {
13
+ ref?: Ref<HTMLDivElement>;
14
+ }
15
+ export declare const TableContainer: ({ className, ...rest }: TablePartProps) => import("react").JSX.Element;
16
+ export interface TableScrollProps extends TablePartProps {
17
+ part?: 'body' | 'content' | 'header' | 'summary';
18
+ }
19
+ export declare const TableScroll: ({ className, part, ...rest }: TableScrollProps) => import("react").JSX.Element;
20
+ export declare const TableTitle: ({ className, ...rest }: TablePartProps) => import("react").JSX.Element;
21
+ export declare const TableFooter: ({ className, ...rest }: TablePartProps) => import("react").JSX.Element;
22
+ export interface TableElementProps extends TableHTMLAttributes<HTMLTableElement> {
23
+ component?: TableCustomizeComponent;
24
+ ref?: Ref<HTMLTableElement>;
25
+ }
26
+ export declare const TableElement: ({ component, ...rest }: TableElementProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
27
+ export interface TableColGroupColumn {
28
+ className?: string;
29
+ minWidth?: number | string;
30
+ width?: number | string;
31
+ }
32
+ export interface TableColGroupProps {
33
+ columns: readonly TableColGroupColumn[];
34
+ }
35
+ export declare const TableColGroup: ({ columns }: TableColGroupProps) => import("react").JSX.Element | null;
36
+ export interface TableSectionProps extends HTMLAttributes<HTMLTableSectionElement> {
37
+ component?: TableCustomizeComponent;
38
+ ref?: Ref<HTMLTableSectionElement>;
39
+ }
40
+ export declare const TableHeader: ({ className, component, ...rest }: TableSectionProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
41
+ export declare const TableBody: ({ className, component, ...rest }: TableSectionProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
42
+ export declare const TableSummaryFoot: ({ className, ...rest }: TableSectionProps) => import("react").JSX.Element;
43
+ //#endregion
44
+ //# sourceMappingURL=layout.d.mts.map
@@ -0,0 +1,62 @@
1
+ "use client";
2
+ import { PREFIX_CLS, SIZE_CLASS } from "../constants.mjs";
3
+ import { createElement } from "react";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import clsx$1 from "clsx";
6
+ //#region src/Table/atoms/layout.tsx
7
+ const TableRoot = ({ className, grouped, hoverable = true, size = "middle", variant = "borderless", ...rest }) => /* @__PURE__ */ jsx("div", {
8
+ ...rest,
9
+ className: clsx$1(PREFIX_CLS, SIZE_CLASS[size], `${PREFIX_CLS}-${variant}`, grouped && `lobe-table-grouped`, hoverable && `lobe-table-hoverable`, className)
10
+ });
11
+ const TableContainer = ({ className, ...rest }) => /* @__PURE__ */ jsx("div", {
12
+ ...rest,
13
+ className: clsx$1(`${PREFIX_CLS}-container`, className)
14
+ });
15
+ const TableScroll = ({ className, part = "content", ...rest }) => /* @__PURE__ */ jsx("div", {
16
+ ...rest,
17
+ className: clsx$1(`${PREFIX_CLS}-${part}`, className)
18
+ });
19
+ const TableTitle = ({ className, ...rest }) => /* @__PURE__ */ jsx("div", {
20
+ ...rest,
21
+ className: clsx$1(`${PREFIX_CLS}-title`, className)
22
+ });
23
+ const TableFooter = ({ className, ...rest }) => /* @__PURE__ */ jsx("div", {
24
+ ...rest,
25
+ className: clsx$1(`${PREFIX_CLS}-footer`, className)
26
+ });
27
+ const TableElement = ({ component = "table", ...rest }) => createElement(component, rest);
28
+ const TableColGroup = ({ columns }) => {
29
+ const cols = [];
30
+ let mustInsert = false;
31
+ for (let index = columns.length - 1; index >= 0; index -= 1) {
32
+ const { className, minWidth, width } = columns[index];
33
+ if (width || minWidth || className || mustInsert) {
34
+ const style = {
35
+ minWidth,
36
+ width
37
+ };
38
+ cols.unshift(/* @__PURE__ */ jsx("col", {
39
+ className,
40
+ style
41
+ }, index));
42
+ mustInsert = true;
43
+ }
44
+ }
45
+ return cols.length > 0 ? /* @__PURE__ */ jsx("colgroup", { children: cols }) : null;
46
+ };
47
+ const TableHeader = ({ className, component = "thead", ...rest }) => createElement(component, {
48
+ ...rest,
49
+ className: clsx$1(`${PREFIX_CLS}-thead`, className)
50
+ });
51
+ const TableBody = ({ className, component = "tbody", ...rest }) => createElement(component, {
52
+ ...rest,
53
+ className: clsx$1(`${PREFIX_CLS}-tbody`, className)
54
+ });
55
+ const TableSummaryFoot = ({ className, ...rest }) => /* @__PURE__ */ jsx("tfoot", {
56
+ ...rest,
57
+ className: clsx$1(`${PREFIX_CLS}-summary`, className)
58
+ });
59
+ //#endregion
60
+ export { TableBody, TableColGroup, TableContainer, TableElement, TableFooter, TableHeader, TableRoot, TableScroll, TableSummaryFoot, TableTitle };
61
+
62
+ //# sourceMappingURL=layout.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.mjs","names":["clsx"],"sources":["../../../src/Table/atoms/layout.tsx"],"sourcesContent":["'use client';\n\nimport '../style.css';\n\nimport clsx from 'clsx';\nimport {\n createElement,\n type CSSProperties,\n type HTMLAttributes,\n type ReactNode,\n type Ref,\n type TableHTMLAttributes,\n} from 'react';\n\nimport { PREFIX_CLS, SIZE_CLASS } from '../constants';\nimport type { TableCustomizeComponent, TableSize, TableVariant } from '../type';\n\nexport interface TableRootProps extends HTMLAttributes<HTMLDivElement> {\n grouped?: boolean;\n hoverable?: boolean;\n ref?: Ref<HTMLDivElement>;\n size?: TableSize;\n variant?: TableVariant;\n}\n\nexport const TableRoot = ({\n className,\n grouped,\n hoverable = true,\n size = 'middle',\n variant = 'borderless',\n ...rest\n}: TableRootProps) => (\n <div\n {...rest}\n className={clsx(\n PREFIX_CLS,\n SIZE_CLASS[size],\n `${PREFIX_CLS}-${variant}`,\n grouped && `${PREFIX_CLS}-grouped`,\n hoverable && `${PREFIX_CLS}-hoverable`,\n className,\n )}\n />\n);\n\nexport interface TablePartProps extends HTMLAttributes<HTMLDivElement> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const TableContainer = ({ className, ...rest }: TablePartProps) => (\n <div {...rest} className={clsx(`${PREFIX_CLS}-container`, className)} />\n);\n\nexport interface TableScrollProps extends TablePartProps {\n part?: 'body' | 'content' | 'header' | 'summary';\n}\n\nexport const TableScroll = ({ className, part = 'content', ...rest }: TableScrollProps) => (\n <div {...rest} className={clsx(`${PREFIX_CLS}-${part}`, className)} />\n);\n\nexport const TableTitle = ({ className, ...rest }: TablePartProps) => (\n <div {...rest} className={clsx(`${PREFIX_CLS}-title`, className)} />\n);\n\nexport const TableFooter = ({ className, ...rest }: TablePartProps) => (\n <div {...rest} className={clsx(`${PREFIX_CLS}-footer`, className)} />\n);\n\nexport interface TableElementProps extends TableHTMLAttributes<HTMLTableElement> {\n component?: TableCustomizeComponent;\n ref?: Ref<HTMLTableElement>;\n}\n\nexport const TableElement = ({ component = 'table', ...rest }: TableElementProps) =>\n createElement(component, rest);\n\nexport interface TableColGroupColumn {\n className?: string;\n minWidth?: number | string;\n width?: number | string;\n}\n\nexport interface TableColGroupProps {\n columns: readonly TableColGroupColumn[];\n}\n\nexport const TableColGroup = ({ columns }: TableColGroupProps) => {\n const cols: ReactNode[] = [];\n let mustInsert = false;\n for (let index = columns.length - 1; index >= 0; index -= 1) {\n const { className, minWidth, width } = columns[index];\n if (width || minWidth || className || mustInsert) {\n const style: CSSProperties = { minWidth, width };\n cols.unshift(<col className={className} key={index} style={style} />);\n mustInsert = true;\n }\n }\n return cols.length > 0 ? <colgroup>{cols}</colgroup> : null;\n};\n\nexport interface TableSectionProps extends HTMLAttributes<HTMLTableSectionElement> {\n component?: TableCustomizeComponent;\n ref?: Ref<HTMLTableSectionElement>;\n}\n\nexport const TableHeader = ({ className, component = 'thead', ...rest }: TableSectionProps) =>\n createElement(component, { ...rest, className: clsx(`${PREFIX_CLS}-thead`, className) });\n\nexport const TableBody = ({ className, component = 'tbody', ...rest }: TableSectionProps) =>\n createElement(component, { ...rest, className: clsx(`${PREFIX_CLS}-tbody`, className) });\n\nexport const TableSummaryFoot = ({ className, ...rest }: TableSectionProps) => (\n <tfoot {...rest} className={clsx(`${PREFIX_CLS}-summary`, className)} />\n);\n"],"mappings":";;;;;;AAyBA,MAAa,aAAa,EACxB,WACA,SACA,YAAY,MACZ,OAAO,UACP,UAAU,cACV,GAAG,WAEH,oBAAC,OAAD;CACE,GAAI;CACJ,WAAWA,OACT,YACA,WAAW,OACX,GAAG,WAAW,GAAG,WACjB,WAAW,sBACX,aAAa,wBACb,SACF;AACD,CAAA;AAOH,MAAa,kBAAkB,EAAE,WAAW,GAAG,WAC7C,oBAAC,OAAD;CAAK,GAAI;CAAM,WAAWA,OAAK,GAAG,WAAW,aAAa,SAAS;AAAI,CAAA;AAOzE,MAAa,eAAe,EAAE,WAAW,OAAO,WAAW,GAAG,WAC5D,oBAAC,OAAD;CAAK,GAAI;CAAM,WAAWA,OAAK,GAAG,WAAW,GAAG,QAAQ,SAAS;AAAI,CAAA;AAGvE,MAAa,cAAc,EAAE,WAAW,GAAG,WACzC,oBAAC,OAAD;CAAK,GAAI;CAAM,WAAWA,OAAK,GAAG,WAAW,SAAS,SAAS;AAAI,CAAA;AAGrE,MAAa,eAAe,EAAE,WAAW,GAAG,WAC1C,oBAAC,OAAD;CAAK,GAAI;CAAM,WAAWA,OAAK,GAAG,WAAW,UAAU,SAAS;AAAI,CAAA;AAQtE,MAAa,gBAAgB,EAAE,YAAY,SAAS,GAAG,WACrD,cAAc,WAAW,IAAI;AAY/B,MAAa,iBAAiB,EAAE,cAAkC;CAChE,MAAM,OAAoB,CAAC;CAC3B,IAAI,aAAa;CACjB,KAAK,IAAI,QAAQ,QAAQ,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG;EAC3D,MAAM,EAAE,WAAW,UAAU,UAAU,QAAQ;EAC/C,IAAI,SAAS,YAAY,aAAa,YAAY;GAChD,MAAM,QAAuB;IAAE;IAAU;GAAM;GAC/C,KAAK,QAAQ,oBAAC,OAAD;IAAgB;IAA8B;GAAQ,GAAtB,KAAsB,CAAC;GACpE,aAAa;EACf;CACF;CACA,OAAO,KAAK,SAAS,IAAI,oBAAC,YAAD,EAAA,UAAW,KAAe,CAAA,IAAI;AACzD;AAOA,MAAa,eAAe,EAAE,WAAW,YAAY,SAAS,GAAG,WAC/D,cAAc,WAAW;CAAE,GAAG;CAAM,WAAWA,OAAK,GAAG,WAAW,SAAS,SAAS;AAAE,CAAC;AAEzF,MAAa,aAAa,EAAE,WAAW,YAAY,SAAS,GAAG,WAC7D,cAAc,WAAW;CAAE,GAAG;CAAM,WAAWA,OAAK,GAAG,WAAW,SAAS,SAAS;AAAE,CAAC;AAEzF,MAAa,oBAAoB,EAAE,WAAW,GAAG,WAC/C,oBAAC,SAAD;CAAO,GAAI;CAAM,WAAWA,OAAK,GAAG,WAAW,WAAW,SAAS;AAAI,CAAA"}
@@ -0,0 +1,16 @@
1
+ //#region src/Table/constants.ts
2
+ const PREFIX_CLS = "lobe-table";
3
+ const VIRTUAL_ROW_HEIGHT = {
4
+ large: 55,
5
+ middle: 47,
6
+ small: 39
7
+ };
8
+ const SIZE_CLASS = {
9
+ large: `${PREFIX_CLS}-large`,
10
+ middle: `${PREFIX_CLS}-medium`,
11
+ small: `${PREFIX_CLS}-small`
12
+ };
13
+ //#endregion
14
+ export { PREFIX_CLS, SIZE_CLASS, VIRTUAL_ROW_HEIGHT };
15
+
16
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.mjs","names":[],"sources":["../../src/Table/constants.ts"],"sourcesContent":["import type { TableSize } from './type';\n\nexport const PREFIX_CLS = 'lobe-table';\n\nexport const EXPAND_COLUMN_WIDTH = 48;\nexport const SELECTION_COLUMN_WIDTH = 32;\nexport const SELECTION_DROPDOWN_WIDTH = 24;\nexport const DEFAULT_INDENT_SIZE = 15;\n\nexport const VIRTUAL_ROW_HEIGHT: Record<TableSize, number> = {\n large: 16 * 2 + 22 + 1,\n middle: 12 * 2 + 22 + 1,\n small: 8 * 2 + 22 + 1,\n};\n\nexport const SIZE_CLASS: Record<TableSize, string> = {\n large: `${PREFIX_CLS}-large`,\n middle: `${PREFIX_CLS}-medium`,\n small: `${PREFIX_CLS}-small`,\n};\n"],"mappings":";AAEA,MAAa,aAAa;AAO1B,MAAa,qBAAgD;CAC3D,OAAO;CACP,QAAQ;CACR,OAAO;AACT;AAEA,MAAa,aAAwC;CACnD,OAAO,GAAG,WAAW;CACrB,QAAQ,GAAG,WAAW;CACtB,OAAO,GAAG,WAAW;AACvB"}
@@ -0,0 +1 @@
1
+ import "./types.mjs";
@@ -0,0 +1,53 @@
1
+ //#region src/Table/engine/fixed.ts
2
+ const getStickyOffsets = (widths, leaves) => {
3
+ const count = leaves.length;
4
+ const collect = (from, to, step) => {
5
+ const offsets = [];
6
+ let total = 0;
7
+ for (let index = from; index !== to; index += step) {
8
+ offsets.push(total);
9
+ if (leaves[index].fixed) total += widths[index] || 0;
10
+ }
11
+ return offsets;
12
+ };
13
+ return {
14
+ end: collect(count - 1, -1, -1).reverse(),
15
+ start: collect(0, count, 1),
16
+ widths
17
+ };
18
+ };
19
+ const isStart = (column) => column?.fixed === "start";
20
+ const isEnd = (column) => column?.fixed === "end";
21
+ const getFixedInfo = (colStart, colEnd, leaves, offsets) => {
22
+ const count = leaves.length;
23
+ const info = {
24
+ offsetFixedEndShadow: 0,
25
+ offsetFixedStartShadow: 0,
26
+ shadowEnd: false,
27
+ shadowStart: false,
28
+ zIndex: 0,
29
+ zIndexReverse: 0
30
+ };
31
+ if (isStart(leaves[colStart]) && isStart(leaves[colEnd])) {
32
+ info.fixStart = offsets.start[colStart];
33
+ info.shadowStart = !isStart(leaves[colEnd + 1]);
34
+ info.zIndex = count * 2 - colStart;
35
+ info.zIndexReverse = count + colStart;
36
+ } else if (isEnd(leaves[colEnd]) && isEnd(leaves[colStart])) {
37
+ info.fixEnd = offsets.end[colEnd];
38
+ info.shadowEnd = !isEnd(leaves[colStart - 1]);
39
+ info.zIndex = colEnd;
40
+ info.zIndexReverse = count - colEnd;
41
+ }
42
+ if (info.shadowStart) {
43
+ for (let index = 0; index < colStart; index += 1) if (!isStart(leaves[index])) info.offsetFixedStartShadow += offsets.widths[index] || 0;
44
+ }
45
+ if (info.shadowEnd) {
46
+ for (let index = count - 1; index > colEnd; index -= 1) if (!isEnd(leaves[index])) info.offsetFixedEndShadow += offsets.widths[index] || 0;
47
+ }
48
+ return info;
49
+ };
50
+ //#endregion
51
+ export { getFixedInfo, getStickyOffsets };
52
+
53
+ //# sourceMappingURL=fixed.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixed.mjs","names":[],"sources":["../../../src/Table/engine/fixed.ts"],"sourcesContent":["import type { EngineColumn, FixedInfo } from './types';\n\nexport interface StickyOffsets {\n end: number[];\n start: number[];\n widths: readonly number[];\n}\n\nexport const getStickyOffsets = (\n widths: readonly number[],\n leaves: readonly Pick<EngineColumn, 'fixed'>[],\n): StickyOffsets => {\n const count = leaves.length;\n const collect = (from: number, to: number, step: number) => {\n const offsets: number[] = [];\n let total = 0;\n for (let index = from; index !== to; index += step) {\n offsets.push(total);\n if (leaves[index].fixed) total += widths[index] || 0;\n }\n return offsets;\n };\n return { end: collect(count - 1, -1, -1).reverse(), start: collect(0, count, 1), widths };\n};\n\nconst isStart = (column?: Pick<EngineColumn, 'fixed'>) => column?.fixed === 'start';\nconst isEnd = (column?: Pick<EngineColumn, 'fixed'>) => column?.fixed === 'end';\n\nexport const getFixedInfo = (\n colStart: number,\n colEnd: number,\n leaves: readonly Pick<EngineColumn, 'fixed'>[],\n offsets: StickyOffsets,\n): FixedInfo => {\n const count = leaves.length;\n const info: FixedInfo = {\n offsetFixedEndShadow: 0,\n offsetFixedStartShadow: 0,\n shadowEnd: false,\n shadowStart: false,\n zIndex: 0,\n zIndexReverse: 0,\n };\n\n if (isStart(leaves[colStart]) && isStart(leaves[colEnd])) {\n info.fixStart = offsets.start[colStart];\n info.shadowStart = !isStart(leaves[colEnd + 1]);\n info.zIndex = count * 2 - colStart;\n info.zIndexReverse = count + colStart;\n } else if (isEnd(leaves[colEnd]) && isEnd(leaves[colStart])) {\n info.fixEnd = offsets.end[colEnd];\n info.shadowEnd = !isEnd(leaves[colStart - 1]);\n info.zIndex = colEnd;\n info.zIndexReverse = count - colEnd;\n }\n\n if (info.shadowStart) {\n for (let index = 0; index < colStart; index += 1) {\n if (!isStart(leaves[index])) info.offsetFixedStartShadow += offsets.widths[index] || 0;\n }\n }\n if (info.shadowEnd) {\n for (let index = count - 1; index > colEnd; index -= 1) {\n if (!isEnd(leaves[index])) info.offsetFixedEndShadow += offsets.widths[index] || 0;\n }\n }\n return info;\n};\n"],"mappings":";AAQA,MAAa,oBACX,QACA,WACkB;CAClB,MAAM,QAAQ,OAAO;CACrB,MAAM,WAAW,MAAc,IAAY,SAAiB;EAC1D,MAAM,UAAoB,CAAC;EAC3B,IAAI,QAAQ;EACZ,KAAK,IAAI,QAAQ,MAAM,UAAU,IAAI,SAAS,MAAM;GAClD,QAAQ,KAAK,KAAK;GAClB,IAAI,OAAO,MAAM,CAAC,OAAO,SAAS,OAAO,UAAU;EACrD;EACA,OAAO;CACT;CACA,OAAO;EAAE,KAAK,QAAQ,QAAQ,GAAG,IAAI,EAAE,CAAC,CAAC,QAAQ;EAAG,OAAO,QAAQ,GAAG,OAAO,CAAC;EAAG;CAAO;AAC1F;AAEA,MAAM,WAAW,WAAyC,QAAQ,UAAU;AAC5E,MAAM,SAAS,WAAyC,QAAQ,UAAU;AAE1E,MAAa,gBACX,UACA,QACA,QACA,YACc;CACd,MAAM,QAAQ,OAAO;CACrB,MAAM,OAAkB;EACtB,sBAAsB;EACtB,wBAAwB;EACxB,WAAW;EACX,aAAa;EACb,QAAQ;EACR,eAAe;CACjB;CAEA,IAAI,QAAQ,OAAO,SAAS,KAAK,QAAQ,OAAO,OAAO,GAAG;EACxD,KAAK,WAAW,QAAQ,MAAM;EAC9B,KAAK,cAAc,CAAC,QAAQ,OAAO,SAAS,EAAE;EAC9C,KAAK,SAAS,QAAQ,IAAI;EAC1B,KAAK,gBAAgB,QAAQ;CAC/B,OAAO,IAAI,MAAM,OAAO,OAAO,KAAK,MAAM,OAAO,SAAS,GAAG;EAC3D,KAAK,SAAS,QAAQ,IAAI;EAC1B,KAAK,YAAY,CAAC,MAAM,OAAO,WAAW,EAAE;EAC5C,KAAK,SAAS;EACd,KAAK,gBAAgB,QAAQ;CAC/B;CAEA,IAAI,KAAK,aACF;OAAA,IAAI,QAAQ,GAAG,QAAQ,UAAU,SAAS,GAC7C,IAAI,CAAC,QAAQ,OAAO,MAAM,GAAG,KAAK,0BAA0B,QAAQ,OAAO,UAAU;CAAA;CAGzF,IAAI,KAAK,WACF;OAAA,IAAI,QAAQ,QAAQ,GAAG,QAAQ,QAAQ,SAAS,GACnD,IAAI,CAAC,MAAM,OAAO,MAAM,GAAG,KAAK,wBAAwB,QAAQ,OAAO,UAAU;CAAA;CAGrF,OAAO;AACT"}
@@ -0,0 +1 @@
1
+ import { Key } from "react";
@@ -0,0 +1,180 @@
1
+ import { getFixedInfo, getStickyOffsets } from "./fixed.mjs";
2
+ import { useCallback, useMemo } from "react";
3
+ import { createExpandedRowModel, rowExpandingFeature, tableFeatures, useTable } from "@tanstack/react-table";
4
+ import { measureElement, observeElementRect, useVirtualizer } from "@tanstack/react-virtual";
5
+ //#region src/Table/engine/useTableEngine.ts
6
+ const features = tableFeatures({
7
+ expandedRowModel: createExpandedRowModel(),
8
+ rowExpandingFeature
9
+ });
10
+ const flattenLeaves = (columns, inheritedFixed) => columns.flatMap((column) => {
11
+ const fixed = column.fixed ?? inheritedFixed;
12
+ if (column.children?.length) return flattenLeaves(column.children, fixed);
13
+ return [{
14
+ ...column,
15
+ fixed
16
+ }];
17
+ });
18
+ const toColumnDefs = (columns) => columns.map((column) => column.children?.length ? {
19
+ columns: toColumnDefs(column.children),
20
+ id: column.key,
21
+ meta: column
22
+ } : {
23
+ id: column.key,
24
+ meta: column
25
+ });
26
+ const useHeaderRows = (table, columns, leaves, offsets) => useMemo(() => {
27
+ const leafIndex = new Map(leaves.map((leaf, index) => [leaf.key, index]));
28
+ const fixedByKey = /* @__PURE__ */ new Map();
29
+ const collectFixed = (list, inherited) => list.forEach((column) => {
30
+ const fixed = column.fixed ?? inherited;
31
+ fixedByKey.set(column.key, fixed);
32
+ if (column.children) collectFixed(column.children, fixed);
33
+ });
34
+ collectFixed(columns);
35
+ return table.getHeaderGroups().map((group) => group.headers.flatMap((header) => {
36
+ if (header.rowSpan === 0) return [];
37
+ const column = header.column.columnDef.meta;
38
+ const leafHeader = header.getLeafHeaders().find((leaf) => !leaf.subHeaders.length);
39
+ const colStart = leafIndex.get(leafHeader?.column.id) ?? 0;
40
+ const colSpan = column.headerColSpan ?? header.colSpan;
41
+ if (colSpan === 0) return [];
42
+ const colEnd = colStart + colSpan - 1;
43
+ return [{
44
+ colEnd,
45
+ colSpan,
46
+ colStart,
47
+ column: {
48
+ ...column,
49
+ fixed: fixedByKey.get(column.key)
50
+ },
51
+ fixedInfo: getFixedInfo(colStart, colEnd, leaves, offsets),
52
+ isLeaf: !column.children?.length,
53
+ key: column.key,
54
+ rowSpan: header.rowSpan
55
+ }];
56
+ }));
57
+ }, [
58
+ table,
59
+ columns,
60
+ leaves,
61
+ offsets
62
+ ]);
63
+ const useVirtualModel = (virtual, rows) => {
64
+ const { rowHeight } = virtual;
65
+ const fallbackHeight = virtual.initialHeight ?? 0;
66
+ const observeRect = useCallback((instance, callback) => observeElementRect(instance, (rect) => callback({
67
+ height: rect.height || fallbackHeight,
68
+ width: rect.width
69
+ })), [fallbackHeight]);
70
+ const estimateSize = useCallback(() => rowHeight, [rowHeight]);
71
+ const measure = useCallback((element, entry, instance) => measureElement(element, entry, instance) || rowHeight, [rowHeight]);
72
+ const getItemKey = useCallback((index) => rows[index]?.key ?? index, [rows]);
73
+ const virtualizer = useVirtualizer({
74
+ count: rows.length,
75
+ estimateSize,
76
+ getItemKey,
77
+ getScrollElement: virtual.getScrollElement,
78
+ initialRect: {
79
+ height: fallbackHeight,
80
+ width: 0
81
+ },
82
+ measureElement: measure,
83
+ observeElementRect: observeRect,
84
+ overscan: virtual.overscan ?? 6
85
+ });
86
+ const scrollTo = ({ align = "nearest", index, key, offset = 0, top }) => {
87
+ const element = virtual.getScrollElement();
88
+ if (!element) return;
89
+ if (typeof top === "number") {
90
+ element.scrollTop = top;
91
+ return;
92
+ }
93
+ const target = key === void 0 ? index : rows.findIndex((row) => String(row.key) === String(key));
94
+ if (target === void 0 || target < 0) return;
95
+ const item = virtualizer.measurementsCache[target];
96
+ if (!item) return;
97
+ const viewport = element.clientHeight;
98
+ let next = element.scrollTop;
99
+ if (align === "start") next = item.start;
100
+ else if (align === "end") next = item.end - viewport;
101
+ else if (item.start < next) next = item.start;
102
+ else if (item.end > next + viewport) next = item.end - viewport;
103
+ element.scrollTop = Math.max(0, next + offset);
104
+ };
105
+ return {
106
+ getRange: (index) => {
107
+ const item = virtualizer.measurementsCache[index];
108
+ return item ? {
109
+ end: item.end,
110
+ start: item.start
111
+ } : void 0;
112
+ },
113
+ items: virtualizer.getVirtualItems().map((item) => ({
114
+ index: item.index,
115
+ key: item.key,
116
+ size: item.size,
117
+ start: item.start
118
+ })),
119
+ measureElement: virtualizer.measureElement,
120
+ scrollTo,
121
+ totalSize: virtualizer.getTotalSize()
122
+ };
123
+ };
124
+ const useTableEngine = ({ columnWidths, columns, data, expandedKeys, getChildren, getRowKey }) => {
125
+ const columnDefs = useMemo(() => toColumnDefs(columns), [columns]);
126
+ const leaves = useMemo(() => flattenLeaves(columns), [columns]);
127
+ const expanded = useMemo(() => {
128
+ const state = {};
129
+ expandedKeys.forEach((key) => {
130
+ state[String(key)] = true;
131
+ });
132
+ return state;
133
+ }, [expandedKeys]);
134
+ const table = useTable({
135
+ columns: columnDefs,
136
+ data,
137
+ features,
138
+ getRowId: (record, index) => String(getRowKey(record, index)),
139
+ getSubRows: getChildren ? (record) => {
140
+ const children = getChildren(record);
141
+ return children?.length ? children : void 0;
142
+ } : void 0,
143
+ state: { expanded }
144
+ }, () => null);
145
+ const offsets = useMemo(() => getStickyOffsets(columnWidths, leaves), [columnWidths, leaves]);
146
+ const leafColumns = useMemo(() => leaves.map((column, index) => ({
147
+ column,
148
+ fixed: column.fixed,
149
+ fixedInfo: getFixedInfo(index, index, leaves, offsets),
150
+ index,
151
+ key: column.key
152
+ })), [leaves, offsets]);
153
+ const headerRows = useHeaderRows(table, columns, leaves, offsets);
154
+ const coreRows = table.getRowModel().rows;
155
+ return {
156
+ headerRows,
157
+ leafColumns,
158
+ rows: useMemo(() => coreRows.map((row, index) => {
159
+ const key = getRowKey(row.original, row.index);
160
+ return {
161
+ depth: row.depth,
162
+ expanded: expandedKeys.has(key),
163
+ hasChildren: Boolean(getChildren?.(row.original)),
164
+ index,
165
+ key,
166
+ record: row.original,
167
+ renderIndex: row.index
168
+ };
169
+ }), [
170
+ coreRows,
171
+ expandedKeys,
172
+ getChildren,
173
+ getRowKey
174
+ ])
175
+ };
176
+ };
177
+ //#endregion
178
+ export { useTableEngine, useVirtualModel };
179
+
180
+ //# sourceMappingURL=useTableEngine.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableEngine.mjs","names":[],"sources":["../../../src/Table/engine/useTableEngine.ts"],"sourcesContent":["import {\n type ColumnDef,\n createExpandedRowModel,\n type ExpandedState,\n rowExpandingFeature,\n tableFeatures,\n useTable,\n} from '@tanstack/react-table';\nimport {\n measureElement,\n observeElementRect,\n useVirtualizer,\n type Virtualizer,\n} from '@tanstack/react-virtual';\nimport { type Key, useCallback, useMemo } from 'react';\n\nimport { getFixedInfo, getStickyOffsets } from './fixed';\nimport type {\n EngineColumn,\n HeaderCellModel,\n LeafColumnModel,\n RowModel,\n TableEngineInput,\n TableModel,\n VirtualInput,\n VirtualModel,\n VirtualScrollConfig,\n} from './types';\n\nconst features = tableFeatures({\n expandedRowModel: createExpandedRowModel(),\n rowExpandingFeature,\n});\n\ntype Features = typeof features;\n\nconst flattenLeaves = <C>(\n columns: readonly EngineColumn<C>[],\n inheritedFixed?: EngineColumn<C>['fixed'],\n): EngineColumn<C>[] =>\n columns.flatMap((column) => {\n const fixed = column.fixed ?? inheritedFixed;\n if (column.children?.length) return flattenLeaves(column.children, fixed);\n return [{ ...column, fixed }];\n });\n\nconst toColumnDefs = <C>(columns: readonly EngineColumn<C>[]): ColumnDef<Features, any>[] =>\n columns.map((column) =>\n column.children?.length\n ? { columns: toColumnDefs(column.children), id: column.key, meta: column }\n : { id: column.key, meta: column },\n ) as ColumnDef<Features, any>[];\n\nconst useHeaderRows = <C>(\n table: { getHeaderGroups: () => any[] },\n columns: readonly EngineColumn<C>[],\n leaves: readonly EngineColumn<C>[],\n offsets: ReturnType<typeof getStickyOffsets>,\n): HeaderCellModel<C>[][] =>\n useMemo(() => {\n const leafIndex = new Map(leaves.map((leaf, index) => [leaf.key, index]));\n const fixedByKey = new Map<string, EngineColumn<C>['fixed']>();\n const collectFixed = (list: readonly EngineColumn<C>[], inherited?: EngineColumn<C>['fixed']) =>\n list.forEach((column) => {\n const fixed = column.fixed ?? inherited;\n fixedByKey.set(column.key, fixed);\n if (column.children) collectFixed(column.children, fixed);\n });\n collectFixed(columns);\n\n return table.getHeaderGroups().map((group) =>\n group.headers.flatMap((header: any): HeaderCellModel<C>[] => {\n if (header.rowSpan === 0) return [];\n const column = header.column.columnDef.meta as EngineColumn<C>;\n const leafHeader = header.getLeafHeaders().find((leaf: any) => !leaf.subHeaders.length);\n const colStart = leafIndex.get(leafHeader?.column.id) ?? 0;\n const colSpan = column.headerColSpan ?? header.colSpan;\n if (colSpan === 0) return [];\n const colEnd = colStart + colSpan - 1;\n return [\n {\n colEnd,\n colSpan,\n colStart,\n column: { ...column, fixed: fixedByKey.get(column.key) },\n fixedInfo: getFixedInfo(colStart, colEnd, leaves, offsets),\n isLeaf: !column.children?.length,\n key: column.key,\n rowSpan: header.rowSpan,\n },\n ];\n }),\n );\n }, [table, columns, leaves, offsets]);\n\nexport const useVirtualModel = <T>(\n virtual: VirtualInput,\n rows: readonly RowModel<T>[],\n): VirtualModel => {\n const { rowHeight } = virtual;\n const fallbackHeight = virtual.initialHeight ?? 0;\n const observeRect = useCallback(\n (\n instance: Virtualizer<HTMLElement, Element>,\n callback: (rect: { height: number; width: number }) => void,\n ) =>\n observeElementRect(instance, (rect) =>\n callback({ height: rect.height || fallbackHeight, width: rect.width }),\n ),\n [fallbackHeight],\n );\n const estimateSize = useCallback(() => rowHeight, [rowHeight]);\n const measure = useCallback(\n (\n element: Element,\n entry: ResizeObserverEntry | undefined,\n instance: Virtualizer<HTMLElement, Element>,\n ) => measureElement(element, entry, instance) || rowHeight,\n [rowHeight],\n );\n const getItemKey = useCallback((index: number) => rows[index]?.key ?? index, [rows]);\n const virtualizer = useVirtualizer({\n count: rows.length,\n estimateSize,\n getItemKey,\n getScrollElement: virtual.getScrollElement,\n initialRect: { height: fallbackHeight, width: 0 },\n measureElement: measure,\n observeElementRect: observeRect,\n overscan: virtual.overscan ?? 6,\n });\n\n const scrollTo = ({ align = 'nearest', index, key, offset = 0, top }: VirtualScrollConfig) => {\n const element = virtual.getScrollElement();\n if (!element) return;\n if (typeof top === 'number') {\n element.scrollTop = top;\n return;\n }\n const target =\n key === undefined ? index : rows.findIndex((row) => String(row.key) === String(key));\n if (target === undefined || target < 0) return;\n const item = virtualizer.measurementsCache[target];\n if (!item) return;\n const viewport = element.clientHeight;\n let next = element.scrollTop;\n if (align === 'start') next = item.start;\n else if (align === 'end') next = item.end - viewport;\n else if (item.start < next) next = item.start;\n else if (item.end > next + viewport) next = item.end - viewport;\n element.scrollTop = Math.max(0, next + offset);\n };\n\n return {\n getRange: (index) => {\n const item = virtualizer.measurementsCache[index];\n return item ? { end: item.end, start: item.start } : undefined;\n },\n items: virtualizer.getVirtualItems().map((item) => ({\n index: item.index,\n key: item.key as Key,\n size: item.size,\n start: item.start,\n })),\n measureElement: virtualizer.measureElement,\n scrollTo,\n totalSize: virtualizer.getTotalSize(),\n };\n};\n\nexport const useTableEngine = <T, C = unknown>({\n columnWidths,\n columns,\n data,\n expandedKeys,\n getChildren,\n getRowKey,\n}: TableEngineInput<T, C>): TableModel<T, C> => {\n const columnDefs = useMemo(() => toColumnDefs(columns), [columns]);\n const leaves = useMemo(() => flattenLeaves(columns), [columns]);\n\n const expanded = useMemo(() => {\n const state: Record<string, boolean> = {};\n expandedKeys.forEach((key) => {\n state[String(key)] = true;\n });\n return state as ExpandedState;\n }, [expandedKeys]);\n\n const table = useTable(\n {\n columns: columnDefs,\n data: data as T[],\n features,\n getRowId: (record: T, index: number) => String(getRowKey(record, index)),\n getSubRows: getChildren\n ? (record: T) => {\n const children = getChildren(record);\n return children?.length ? children : undefined;\n }\n : undefined,\n state: { expanded },\n } as any,\n () => null,\n );\n\n const offsets = useMemo(() => getStickyOffsets(columnWidths, leaves), [columnWidths, leaves]);\n\n const leafColumns = useMemo(\n (): LeafColumnModel<C>[] =>\n leaves.map((column, index) => ({\n column,\n fixed: column.fixed,\n fixedInfo: getFixedInfo(index, index, leaves, offsets),\n index,\n key: column.key,\n })),\n [leaves, offsets],\n );\n\n const headerRows = useHeaderRows(table as any, columns, leaves, offsets);\n\n const coreRows = (table as any).getRowModel().rows as any[];\n const rows = useMemo(\n (): RowModel<T>[] =>\n coreRows.map((row, index) => {\n const key = getRowKey(row.original, row.index);\n return {\n depth: row.depth,\n expanded: expandedKeys.has(key),\n hasChildren: Boolean(getChildren?.(row.original)),\n index,\n key,\n record: row.original,\n renderIndex: row.index,\n };\n }),\n [coreRows, expandedKeys, getChildren, getRowKey],\n );\n\n return { headerRows, leafColumns, rows };\n};\n"],"mappings":";;;;;AA6BA,MAAM,WAAW,cAAc;CAC7B,kBAAkB,uBAAuB;CACzC;AACF,CAAC;AAID,MAAM,iBACJ,SACA,mBAEA,QAAQ,SAAS,WAAW;CAC1B,MAAM,QAAQ,OAAO,SAAS;CAC9B,IAAI,OAAO,UAAU,QAAQ,OAAO,cAAc,OAAO,UAAU,KAAK;CACxE,OAAO,CAAC;EAAE,GAAG;EAAQ;CAAM,CAAC;AAC9B,CAAC;AAEH,MAAM,gBAAmB,YACvB,QAAQ,KAAK,WACX,OAAO,UAAU,SACb;CAAE,SAAS,aAAa,OAAO,QAAQ;CAAG,IAAI,OAAO;CAAK,MAAM;AAAO,IACvE;CAAE,IAAI,OAAO;CAAK,MAAM;AAAO,CACrC;AAEF,MAAM,iBACJ,OACA,SACA,QACA,YAEA,cAAc;CACZ,MAAM,YAAY,IAAI,IAAI,OAAO,KAAK,MAAM,UAAU,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;CACxE,MAAM,6BAAa,IAAI,IAAsC;CAC7D,MAAM,gBAAgB,MAAkC,cACtD,KAAK,SAAS,WAAW;EACvB,MAAM,QAAQ,OAAO,SAAS;EAC9B,WAAW,IAAI,OAAO,KAAK,KAAK;EAChC,IAAI,OAAO,UAAU,aAAa,OAAO,UAAU,KAAK;CAC1D,CAAC;CACH,aAAa,OAAO;CAEpB,OAAO,MAAM,gBAAgB,CAAC,CAAC,KAAK,UAClC,MAAM,QAAQ,SAAS,WAAsC;EAC3D,IAAI,OAAO,YAAY,GAAG,OAAO,CAAC;EAClC,MAAM,SAAS,OAAO,OAAO,UAAU;EACvC,MAAM,aAAa,OAAO,eAAe,CAAC,CAAC,MAAM,SAAc,CAAC,KAAK,WAAW,MAAM;EACtF,MAAM,WAAW,UAAU,IAAI,YAAY,OAAO,EAAE,KAAK;EACzD,MAAM,UAAU,OAAO,iBAAiB,OAAO;EAC/C,IAAI,YAAY,GAAG,OAAO,CAAC;EAC3B,MAAM,SAAS,WAAW,UAAU;EACpC,OAAO,CACL;GACE;GACA;GACA;GACA,QAAQ;IAAE,GAAG;IAAQ,OAAO,WAAW,IAAI,OAAO,GAAG;GAAE;GACvD,WAAW,aAAa,UAAU,QAAQ,QAAQ,OAAO;GACzD,QAAQ,CAAC,OAAO,UAAU;GAC1B,KAAK,OAAO;GACZ,SAAS,OAAO;EAClB,CACF;CACF,CAAC,CACH;AACF,GAAG;CAAC;CAAO;CAAS;CAAQ;AAAO,CAAC;AAEtC,MAAa,mBACX,SACA,SACiB;CACjB,MAAM,EAAE,cAAc;CACtB,MAAM,iBAAiB,QAAQ,iBAAiB;CAChD,MAAM,cAAc,aAEhB,UACA,aAEA,mBAAmB,WAAW,SAC5B,SAAS;EAAE,QAAQ,KAAK,UAAU;EAAgB,OAAO,KAAK;CAAM,CAAC,CACvE,GACF,CAAC,cAAc,CACjB;CACA,MAAM,eAAe,kBAAkB,WAAW,CAAC,SAAS,CAAC;CAC7D,MAAM,UAAU,aAEZ,SACA,OACA,aACG,eAAe,SAAS,OAAO,QAAQ,KAAK,WACjD,CAAC,SAAS,CACZ;CACA,MAAM,aAAa,aAAa,UAAkB,KAAK,MAAM,EAAE,OAAO,OAAO,CAAC,IAAI,CAAC;CACnF,MAAM,cAAc,eAAe;EACjC,OAAO,KAAK;EACZ;EACA;EACA,kBAAkB,QAAQ;EAC1B,aAAa;GAAE,QAAQ;GAAgB,OAAO;EAAE;EAChD,gBAAgB;EAChB,oBAAoB;EACpB,UAAU,QAAQ,YAAY;CAChC,CAAC;CAED,MAAM,YAAY,EAAE,QAAQ,WAAW,OAAO,KAAK,SAAS,GAAG,UAA+B;EAC5F,MAAM,UAAU,QAAQ,iBAAiB;EACzC,IAAI,CAAC,SAAS;EACd,IAAI,OAAO,QAAQ,UAAU;GAC3B,QAAQ,YAAY;GACpB;EACF;EACA,MAAM,SACJ,QAAQ,KAAA,IAAY,QAAQ,KAAK,WAAW,QAAQ,OAAO,IAAI,GAAG,MAAM,OAAO,GAAG,CAAC;EACrF,IAAI,WAAW,KAAA,KAAa,SAAS,GAAG;EACxC,MAAM,OAAO,YAAY,kBAAkB;EAC3C,IAAI,CAAC,MAAM;EACX,MAAM,WAAW,QAAQ;EACzB,IAAI,OAAO,QAAQ;EACnB,IAAI,UAAU,SAAS,OAAO,KAAK;OAC9B,IAAI,UAAU,OAAO,OAAO,KAAK,MAAM;OACvC,IAAI,KAAK,QAAQ,MAAM,OAAO,KAAK;OACnC,IAAI,KAAK,MAAM,OAAO,UAAU,OAAO,KAAK,MAAM;EACvD,QAAQ,YAAY,KAAK,IAAI,GAAG,OAAO,MAAM;CAC/C;CAEA,OAAO;EACL,WAAW,UAAU;GACnB,MAAM,OAAO,YAAY,kBAAkB;GAC3C,OAAO,OAAO;IAAE,KAAK,KAAK;IAAK,OAAO,KAAK;GAAM,IAAI,KAAA;EACvD;EACA,OAAO,YAAY,gBAAgB,CAAC,CAAC,KAAK,UAAU;GAClD,OAAO,KAAK;GACZ,KAAK,KAAK;GACV,MAAM,KAAK;GACX,OAAO,KAAK;EACd,EAAE;EACF,gBAAgB,YAAY;EAC5B;EACA,WAAW,YAAY,aAAa;CACtC;AACF;AAEA,MAAa,kBAAkC,EAC7C,cACA,SACA,MACA,cACA,aACA,gBAC8C;CAC9C,MAAM,aAAa,cAAc,aAAa,OAAO,GAAG,CAAC,OAAO,CAAC;CACjE,MAAM,SAAS,cAAc,cAAc,OAAO,GAAG,CAAC,OAAO,CAAC;CAE9D,MAAM,WAAW,cAAc;EAC7B,MAAM,QAAiC,CAAC;EACxC,aAAa,SAAS,QAAQ;GAC5B,MAAM,OAAO,GAAG,KAAK;EACvB,CAAC;EACD,OAAO;CACT,GAAG,CAAC,YAAY,CAAC;CAEjB,MAAM,QAAQ,SACZ;EACE,SAAS;EACH;EACN;EACA,WAAW,QAAW,UAAkB,OAAO,UAAU,QAAQ,KAAK,CAAC;EACvE,YAAY,eACP,WAAc;GACb,MAAM,WAAW,YAAY,MAAM;GACnC,OAAO,UAAU,SAAS,WAAW,KAAA;EACvC,IACA,KAAA;EACJ,OAAO,EAAE,SAAS;CACpB,SACM,IACR;CAEA,MAAM,UAAU,cAAc,iBAAiB,cAAc,MAAM,GAAG,CAAC,cAAc,MAAM,CAAC;CAE5F,MAAM,cAAc,cAEhB,OAAO,KAAK,QAAQ,WAAW;EAC7B;EACA,OAAO,OAAO;EACd,WAAW,aAAa,OAAO,OAAO,QAAQ,OAAO;EACrD;EACA,KAAK,OAAO;CACd,EAAE,GACJ,CAAC,QAAQ,OAAO,CAClB;CAEA,MAAM,aAAa,cAAc,OAAc,SAAS,QAAQ,OAAO;CAEvE,MAAM,WAAY,MAAc,YAAY,CAAC,CAAC;CAkB9C,OAAO;EAAE;EAAY;EAAa,MAjBrB,cAET,SAAS,KAAK,KAAK,UAAU;GAC3B,MAAM,MAAM,UAAU,IAAI,UAAU,IAAI,KAAK;GAC7C,OAAO;IACL,OAAO,IAAI;IACX,UAAU,aAAa,IAAI,GAAG;IAC9B,aAAa,QAAQ,cAAc,IAAI,QAAQ,CAAC;IAChD;IACA;IACA,QAAQ,IAAI;IACZ,aAAa,IAAI;GACnB;EACF,CAAC,GACH;GAAC;GAAU;GAAc;GAAa;EAAS,CAGZ;CAAE;AACzC"}
@@ -1,3 +1,8 @@
1
- import { FilterValue, SortOrder, TableColumn, TableFilters, TablePaginationConfig, TableProps, TableSemanticName, TableSorterResult } from "./type.mjs";
1
+ import { FilterValue, SortOrder, TableBreakpoint, TableCellAttributes, TableClassNames, TableColumn, TableColumnAlign, TableColumnEllipsis, TableColumnFilterItem, TableColumnFixed, TableColumnGroupType, TableColumnSorter, TableColumnTitle, TableColumnTitleProps, TableColumnType, TableColumnsType, TableCompareFn, TableComponents, TableComponentsSemanticName, TableCurrentDataSource, TableCustomizeComponent, TableDataIndex, TableExpandIconProps, TableExpandableConfig, TableExpandedRowRender, TableFilterDropdownPopupProps, TableFilterDropdownProps, TableFilters, TableHeaderCellAttributes, TableLoadingConfig, TableLocale, TableMultipleSorterResult, TablePaginationConfig, TablePaginationPlacement, TableProps, TableRef, TableRenderedCell, TableRowClassName, TableRowSelectMethod, TableRowSelection, TableRowSelectionCheckboxProps, TableRowSelectionType, TableScrollToConfig, TableSelectionItem, TableSelectionPreset, TableSemanticInfo, TableSemanticName, TableSize, TableSorterResult, TableSorterTooltipProps, TableSticky, TableStyles, TableSummaryCellProps, TableSummaryProps, TableSummaryRowProps, TableVariant } from "./type.mjs";
2
+ import { TableCell, TableCellProps, TableExpandedRow, TableExpandedRowProps, TableHeaderCell, TableRow, TableRowProps } from "./atoms/cells.mjs";
3
+ import { TableBody, TableColGroup, TableColGroupColumn, TableColGroupProps, TableContainer, TableElement, TableElementProps, TableFooter, TableHeader, TablePartProps, TableRoot, TableRootProps, TableScroll, TableScrollProps, TableSectionProps, TableSummaryFoot, TableTitle } from "./atoms/layout.mjs";
4
+ import "./atoms/index.mjs";
5
+ import { TableColumnProps } from "./Column.mjs";
6
+ import { TableColumnGroupProps } from "./ColumnGroup.mjs";
2
7
  import Table from "./Table.mjs";
3
- export { type FilterValue, type SortOrder, type TableColumn, type TableFilters, type TablePaginationConfig, type TableProps, type TableSemanticName, type TableSorterResult, Table as default };
8
+ export { type FilterValue, type SortOrder, TableBody, type TableBreakpoint, TableCell, type TableCellAttributes, type TableCellProps, type TableClassNames, TableColGroup, type TableColGroupColumn, type TableColGroupProps, type TableColumn, type TableColumnAlign, type TableColumnEllipsis, type TableColumnFilterItem, type TableColumnFixed, type TableColumnGroupProps, type TableColumnGroupType, type TableColumnProps, type TableColumnSorter, type TableColumnTitle, type TableColumnTitleProps, type TableColumnType, type TableColumnsType, type TableCompareFn, type TableComponents, type TableComponentsSemanticName, TableContainer, type TableCurrentDataSource, type TableCustomizeComponent, type TableDataIndex, TableElement, type TableElementProps, type TableExpandIconProps, type TableExpandableConfig, TableExpandedRow, type TableExpandedRowProps, type TableExpandedRowRender, type TableFilterDropdownPopupProps, type TableFilterDropdownProps, type TableFilters, TableFooter, TableHeader, TableHeaderCell, type TableHeaderCellAttributes, type TableLoadingConfig, type TableLocale, type TableMultipleSorterResult, type TablePaginationConfig, type TablePaginationPlacement, type TablePartProps, type TableProps, type TableRef, type TableRenderedCell, TableRoot, type TableRootProps, TableRow, type TableRowClassName, type TableRowProps, type TableRowSelectMethod, type TableRowSelection, type TableRowSelectionCheckboxProps, type TableRowSelectionType, TableScroll, type TableScrollProps, type TableScrollToConfig, type TableSectionProps, type TableSelectionItem, type TableSelectionPreset, type TableSemanticInfo, type TableSemanticName, type TableSize, type TableSorterResult, type TableSorterTooltipProps, type TableSticky, type TableStyles, type TableSummaryCellProps, TableSummaryFoot, type TableSummaryProps, type TableSummaryRowProps, TableTitle, type TableVariant, Table as default };
@@ -1 +1,4 @@
1
- export { default } from "./Table.mjs";
1
+ import { TableCell, TableExpandedRow, TableHeaderCell, TableRow } from "./atoms/cells.mjs";
2
+ import { TableBody, TableColGroup, TableContainer, TableElement, TableFooter, TableHeader, TableRoot, TableScroll, TableSummaryFoot, TableTitle } from "./atoms/layout.mjs";
3
+ import Table from "./Table.mjs";
4
+ export { TableBody, TableCell, TableColGroup, TableContainer, TableElement, TableExpandedRow, TableFooter, TableHeader, TableHeaderCell, TableRoot, TableRow, TableScroll, TableSummaryFoot, TableTitle, Table as default };
@@ -0,0 +1,3 @@
1
+ import "./type.mjs";
2
+ import "./store/createTableStore.mjs";
3
+ import { Ref } from "react";
@@ -0,0 +1,5 @@
1
+ import { TableColumn } from "../type.mjs";
2
+ //#region src/Table/pipeline/columnUtils.d.ts
3
+ export declare const EXPAND_COLUMN: TableColumn<any>;
4
+ //#endregion
5
+ //# sourceMappingURL=columnUtils.d.mts.map
@@ -0,0 +1,58 @@
1
+ import { SELECTION_COLUMN } from "./selectionUtils.mjs";
2
+ //#region src/Table/pipeline/columnUtils.ts
3
+ const EXPAND_COLUMN = {};
4
+ const isColumnGroup = (column) => "children" in column && Array.isArray(column.children);
5
+ const dataIndexOf = (column) => "dataIndex" in column ? column.dataIndex : void 0;
6
+ const getColumnPos = (index, parentPos) => parentPos === void 0 ? String(index) : `${parentPos}-${index}`;
7
+ const getColumnId = (column, pos) => {
8
+ if (column.key != null) return String(column.key);
9
+ const dataIndex = dataIndexOf(column);
10
+ if (Array.isArray(dataIndex)) {
11
+ if (dataIndex.length > 0) return dataIndex.join(".");
12
+ } else if (dataIndex != null && dataIndex !== "") return String(dataIndex);
13
+ return `__column_${pos}`;
14
+ };
15
+ const getPathValue = (record, path) => {
16
+ if (path == null || path === "") return void 0;
17
+ const keys = Array.isArray(path) ? path : [path];
18
+ let value = record;
19
+ for (const key of keys) {
20
+ if (value == null) return void 0;
21
+ value = value[key];
22
+ }
23
+ return value;
24
+ };
25
+ const getCellValue = (record, column) => getPathValue(record, dataIndexOf(column));
26
+ const flattenColumns = (columns, parentPos) => {
27
+ const list = [];
28
+ columns.forEach((column, index) => {
29
+ if (column === EXPAND_COLUMN || column === SELECTION_COLUMN) return;
30
+ const pos = getColumnPos(index, parentPos);
31
+ list.push({
32
+ column,
33
+ id: getColumnId(column, pos)
34
+ });
35
+ if (isColumnGroup(column)) list.push(...flattenColumns(column.children, pos));
36
+ });
37
+ return list;
38
+ };
39
+ const assertColumnKeys = (columns) => {
40
+ for (const { column } of flattenColumns(columns)) if ((Boolean(column.sorter) || Boolean(column.filters) || column.filterDropdown !== void 0) && column.key == null && dataIndexOf(column) == null) throw new Error("[Table] sortable or filterable columns need a `key` or `dataIndex`");
41
+ };
42
+ const fillColumns = (columns, defaults) => {
43
+ if (!defaults) return columns;
44
+ const { children: _children, ...base } = defaults;
45
+ return columns.map((column) => {
46
+ if (column === EXPAND_COLUMN || column === SELECTION_COLUMN) return column;
47
+ const merged = { ...base };
48
+ for (const [key, value] of Object.entries(column)) if (value !== void 0) merged[key] = value;
49
+ if (isColumnGroup(column)) merged.children = fillColumns(column.children, defaults);
50
+ return merged;
51
+ });
52
+ };
53
+ const isColumnVisibleAt = (column, screens) => !column.responsive || !screens || column.responsive.some((point) => screens.has(point));
54
+ const renderColumnTitle = (title, props) => typeof title === "function" ? title(props) : title;
55
+ //#endregion
56
+ export { EXPAND_COLUMN, assertColumnKeys, fillColumns, flattenColumns, getCellValue, getColumnId, getColumnPos, getPathValue, isColumnGroup, isColumnVisibleAt, renderColumnTitle };
57
+
58
+ //# sourceMappingURL=columnUtils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columnUtils.mjs","names":[],"sources":["../../../src/Table/pipeline/columnUtils.ts"],"sourcesContent":["import type {\n TableBreakpoint,\n TableColumn,\n TableColumnGroupType,\n TableColumnTitle,\n TableColumnTitleProps,\n TableColumnType,\n} from '../type';\nimport { SELECTION_COLUMN } from './selectionUtils';\n\ntype DataIndexOf<T> = TableColumnType<T>['dataIndex'];\n\nexport const EXPAND_COLUMN = {} as TableColumn<any>;\n\nexport const isColumnGroup = <T>(column: TableColumn<T>): column is TableColumnGroupType<T> =>\n 'children' in column && Array.isArray(column.children);\n\nconst dataIndexOf = <T>(column: TableColumn<T>): DataIndexOf<T> =>\n 'dataIndex' in column ? column.dataIndex : undefined;\n\nexport const getColumnPos = (index: number, parentPos?: string) =>\n parentPos === undefined ? String(index) : `${parentPos}-${index}`;\n\nexport const getColumnId = (column: TableColumn<any>, pos: number | string): string => {\n if (column.key != null) return String(column.key);\n const dataIndex = dataIndexOf(column);\n if (Array.isArray(dataIndex)) {\n if (dataIndex.length > 0) return dataIndex.join('.');\n } else if (dataIndex != null && dataIndex !== '') {\n return String(dataIndex);\n }\n return `__column_${pos}`;\n};\n\nexport const getPathValue = (record: unknown, path: DataIndexOf<any>): unknown => {\n if (path == null || path === '') return undefined;\n const keys = Array.isArray(path) ? path : [path];\n let value: any = record;\n for (const key of keys) {\n if (value == null) return undefined;\n value = value[key as PropertyKey];\n }\n return value;\n};\n\nexport const getCellValue = <T>(record: T, column: TableColumn<T>): unknown =>\n getPathValue(record, dataIndexOf(column));\n\nexport interface FlatColumn<T> {\n column: TableColumn<T>;\n id: string;\n}\n\nexport const flattenColumns = <T>(columns: readonly TableColumn<T>[], parentPos?: string) => {\n const list: FlatColumn<T>[] = [];\n columns.forEach((column, index) => {\n if (column === EXPAND_COLUMN || column === SELECTION_COLUMN) return;\n const pos = getColumnPos(index, parentPos);\n list.push({ column, id: getColumnId(column, pos) });\n if (isColumnGroup(column)) list.push(...flattenColumns(column.children, pos));\n });\n return list;\n};\n\nexport const assertColumnKeys = (columns: readonly TableColumn<any>[]) => {\n for (const { column } of flattenColumns(columns)) {\n const needsStableId =\n Boolean(column.sorter) || Boolean(column.filters) || column.filterDropdown !== undefined;\n if (needsStableId && column.key == null && dataIndexOf(column) == null) {\n throw new Error('[Table] sortable or filterable columns need a `key` or `dataIndex`');\n }\n }\n};\n\nexport const fillColumns = <T>(\n columns: readonly TableColumn<T>[],\n defaults: Partial<TableColumnType<T>> | undefined,\n): TableColumn<T>[] => {\n if (!defaults) return columns as TableColumn<T>[];\n const { children: _children, ...base } = defaults as Partial<TableColumnGroupType<T>>;\n return columns.map((column) => {\n if (column === EXPAND_COLUMN || column === SELECTION_COLUMN) return column;\n const merged = { ...base } as Record<string, unknown>;\n for (const [key, value] of Object.entries(column)) {\n if (value !== undefined) merged[key] = value;\n }\n if (isColumnGroup(column)) merged.children = fillColumns(column.children, defaults);\n return merged as unknown as TableColumn<T>;\n });\n};\n\nexport const isColumnVisibleAt = (\n column: TableColumn<any>,\n screens: ReadonlySet<TableBreakpoint> | null,\n) => !column.responsive || !screens || column.responsive.some((point) => screens.has(point));\n\nexport const renderColumnTitle = <T>(\n title: TableColumnTitle<T>,\n props: TableColumnTitleProps<T>,\n) => (typeof title === 'function' ? title(props) : title);\n"],"mappings":";;AAYA,MAAa,gBAAgB,CAAC;AAE9B,MAAa,iBAAoB,WAC/B,cAAc,UAAU,MAAM,QAAQ,OAAO,QAAQ;AAEvD,MAAM,eAAkB,WACtB,eAAe,SAAS,OAAO,YAAY,KAAA;AAE7C,MAAa,gBAAgB,OAAe,cAC1C,cAAc,KAAA,IAAY,OAAO,KAAK,IAAI,GAAG,UAAU,GAAG;AAE5D,MAAa,eAAe,QAA0B,QAAiC;CACrF,IAAI,OAAO,OAAO,MAAM,OAAO,OAAO,OAAO,GAAG;CAChD,MAAM,YAAY,YAAY,MAAM;CACpC,IAAI,MAAM,QAAQ,SAAS,GACrB;MAAA,UAAU,SAAS,GAAG,OAAO,UAAU,KAAK,GAAG;CAAA,OAC9C,IAAI,aAAa,QAAQ,cAAc,IAC5C,OAAO,OAAO,SAAS;CAEzB,OAAO,YAAY;AACrB;AAEA,MAAa,gBAAgB,QAAiB,SAAoC;CAChF,IAAI,QAAQ,QAAQ,SAAS,IAAI,OAAO,KAAA;CACxC,MAAM,OAAO,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;CAC/C,IAAI,QAAa;CACjB,KAAK,MAAM,OAAO,MAAM;EACtB,IAAI,SAAS,MAAM,OAAO,KAAA;EAC1B,QAAQ,MAAM;CAChB;CACA,OAAO;AACT;AAEA,MAAa,gBAAmB,QAAW,WACzC,aAAa,QAAQ,YAAY,MAAM,CAAC;AAO1C,MAAa,kBAAqB,SAAoC,cAAuB;CAC3F,MAAM,OAAwB,CAAC;CAC/B,QAAQ,SAAS,QAAQ,UAAU;EACjC,IAAI,WAAW,iBAAiB,WAAW,kBAAkB;EAC7D,MAAM,MAAM,aAAa,OAAO,SAAS;EACzC,KAAK,KAAK;GAAE;GAAQ,IAAI,YAAY,QAAQ,GAAG;EAAE,CAAC;EAClD,IAAI,cAAc,MAAM,GAAG,KAAK,KAAK,GAAG,eAAe,OAAO,UAAU,GAAG,CAAC;CAC9E,CAAC;CACD,OAAO;AACT;AAEA,MAAa,oBAAoB,YAAyC;CACxE,KAAK,MAAM,EAAE,YAAY,eAAe,OAAO,GAG7C,KADE,QAAQ,OAAO,MAAM,KAAK,QAAQ,OAAO,OAAO,KAAK,OAAO,mBAAmB,KAAA,MAC5D,OAAO,OAAO,QAAQ,YAAY,MAAM,KAAK,MAChE,MAAM,IAAI,MAAM,oEAAoE;AAG1F;AAEA,MAAa,eACX,SACA,aACqB;CACrB,IAAI,CAAC,UAAU,OAAO;CACtB,MAAM,EAAE,UAAU,WAAW,GAAG,SAAS;CACzC,OAAO,QAAQ,KAAK,WAAW;EAC7B,IAAI,WAAW,iBAAiB,WAAW,kBAAkB,OAAO;EACpE,MAAM,SAAS,EAAE,GAAG,KAAK;EACzB,KAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,MAAM,GAC9C,IAAI,UAAU,KAAA,GAAW,OAAO,OAAO;EAEzC,IAAI,cAAc,MAAM,GAAG,OAAO,WAAW,YAAY,OAAO,UAAU,QAAQ;EAClF,OAAO;CACT,CAAC;AACH;AAEA,MAAa,qBACX,QACA,YACG,CAAC,OAAO,cAAc,CAAC,WAAW,OAAO,WAAW,MAAM,UAAU,QAAQ,IAAI,KAAK,CAAC;AAE3F,MAAa,qBACX,OACA,UACI,OAAO,UAAU,aAAa,MAAM,KAAK,IAAI"}