@lobehub/ui 6.0.0-beta.6 → 6.0.0-beta.8

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 (682) 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/ColorSwatches/type.d.mts +2 -2
  53. package/es/ContextMenu/ContextMenuHost.mjs +2 -2
  54. package/es/ContextMenu/ContextMenuHost.mjs.map +1 -1
  55. package/es/ContextMenu/ContextMenuTrigger.mjs +2 -2
  56. package/es/ContextMenu/ContextMenuTrigger.mjs.map +1 -1
  57. package/es/ContextMenu/renderItems.mjs +3 -3
  58. package/es/ContextMenu/renderItems.mjs.map +1 -1
  59. package/es/DatePicker/DatePicker.d.mts +7 -2
  60. package/es/DatePicker/DatePicker.mjs +13 -85
  61. package/es/DatePicker/DatePicker.mjs.map +1 -1
  62. package/es/DatePicker/DateRangePicker.d.mts +3 -2
  63. package/es/DatePicker/DateRangePicker.mjs +3 -125
  64. package/es/DatePicker/DateRangePicker.mjs.map +1 -1
  65. package/es/DatePicker/PurePanel.mjs +65 -0
  66. package/es/DatePicker/PurePanel.mjs.map +1 -0
  67. package/es/DatePicker/RangePicker.mjs +115 -0
  68. package/es/DatePicker/RangePicker.mjs.map +1 -0
  69. package/es/DatePicker/SinglePicker.mjs +132 -0
  70. package/es/DatePicker/SinglePicker.mjs.map +1 -0
  71. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs +57 -0
  72. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs.map +1 -0
  73. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs +57 -0
  74. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs.map +1 -0
  75. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs +29 -0
  76. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs.map +1 -0
  77. package/es/DatePicker/core/PickerInput/Popup/index.mjs +133 -0
  78. package/es/DatePicker/core/PickerInput/Popup/index.mjs.map +1 -0
  79. package/es/DatePicker/core/PickerInput/RangePicker.d.mts +51 -0
  80. package/es/DatePicker/core/PickerInput/RangePicker.mjs +343 -0
  81. package/es/DatePicker/core/PickerInput/RangePicker.mjs.map +1 -0
  82. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs +27 -0
  83. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs.map +1 -0
  84. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs +19 -0
  85. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs.map +1 -0
  86. package/es/DatePicker/core/PickerInput/Selector/Input.mjs +237 -0
  87. package/es/DatePicker/core/PickerInput/Selector/Input.mjs.map +1 -0
  88. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs +70 -0
  89. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs.map +1 -0
  90. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.d.mts +8 -0
  91. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs +136 -0
  92. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs.map +1 -0
  93. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs +28 -0
  94. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs.map +1 -0
  95. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs +69 -0
  96. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs.map +1 -0
  97. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs +111 -0
  98. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs.map +1 -0
  99. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs +18 -0
  100. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs.map +1 -0
  101. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs +108 -0
  102. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs.map +1 -0
  103. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs +11 -0
  104. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs.map +1 -0
  105. package/es/DatePicker/core/PickerInput/Selector/util.mjs +20 -0
  106. package/es/DatePicker/core/PickerInput/Selector/util.mjs.map +1 -0
  107. package/es/DatePicker/core/PickerInput/SinglePicker.d.mts +55 -0
  108. package/es/DatePicker/core/PickerInput/SinglePicker.mjs +318 -0
  109. package/es/DatePicker/core/PickerInput/SinglePicker.mjs.map +1 -0
  110. package/es/DatePicker/core/PickerInput/context.mjs +7 -0
  111. package/es/DatePicker/core/PickerInput/context.mjs.map +1 -0
  112. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs +30 -0
  113. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs.map +1 -0
  114. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs +37 -0
  115. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs.map +1 -0
  116. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs +18 -0
  117. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs.map +1 -0
  118. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs +20 -0
  119. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs.map +1 -0
  120. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs +31 -0
  121. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs.map +1 -0
  122. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs +98 -0
  123. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs.map +1 -0
  124. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs +41 -0
  125. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs.map +1 -0
  126. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs +34 -0
  127. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs.map +1 -0
  128. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs +35 -0
  129. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs.map +1 -0
  130. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs +9 -0
  131. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs.map +1 -0
  132. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs +36 -0
  133. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs.map +1 -0
  134. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs +27 -0
  135. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs.map +1 -0
  136. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs +18 -0
  137. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs.map +1 -0
  138. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs +19 -0
  139. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs.map +1 -0
  140. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs +20 -0
  141. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs.map +1 -0
  142. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs +24 -0
  143. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs.map +1 -0
  144. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs +107 -0
  145. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs.map +1 -0
  146. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs +144 -0
  147. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs.map +1 -0
  148. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs +219 -0
  149. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs.map +1 -0
  150. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs +11 -0
  151. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs.map +1 -0
  152. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs +131 -0
  153. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs.map +1 -0
  154. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs +35 -0
  155. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs.map +1 -0
  156. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs +84 -0
  157. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs.map +1 -0
  158. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs +73 -0
  159. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs.map +1 -0
  160. package/es/DatePicker/core/PickerPanel/PanelBody.mjs +95 -0
  161. package/es/DatePicker/core/PickerPanel/PanelBody.mjs.map +1 -0
  162. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs +130 -0
  163. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs.map +1 -0
  164. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs +64 -0
  165. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs.map +1 -0
  166. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs +108 -0
  167. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs.map +1 -0
  168. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs +44 -0
  169. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs.map +1 -0
  170. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs +157 -0
  171. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs.map +1 -0
  172. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs +100 -0
  173. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs.map +1 -0
  174. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs +71 -0
  175. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs.map +1 -0
  176. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs +62 -0
  177. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs.map +1 -0
  178. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs +200 -0
  179. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs.map +1 -0
  180. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs +25 -0
  181. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs.map +1 -0
  182. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs +31 -0
  183. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs.map +1 -0
  184. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs +34 -0
  185. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs.map +1 -0
  186. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs +92 -0
  187. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs.map +1 -0
  188. package/es/DatePicker/core/PickerPanel/context.mjs +48 -0
  189. package/es/DatePicker/core/PickerPanel/context.mjs.map +1 -0
  190. package/es/DatePicker/core/PickerPanel/index.d.mts +1 -0
  191. package/es/DatePicker/core/PickerPanel/index.mjs +175 -0
  192. package/es/DatePicker/core/PickerPanel/index.mjs.map +1 -0
  193. package/es/DatePicker/core/PickerPopup.mjs +118 -0
  194. package/es/DatePicker/core/PickerPopup.mjs.map +1 -0
  195. package/es/DatePicker/core/generate/dayjs.mjs +109 -0
  196. package/es/DatePicker/core/generate/dayjs.mjs.map +1 -0
  197. package/es/DatePicker/core/generate/index.d.mts +40 -0
  198. package/es/DatePicker/core/hooks/react.mjs +58 -0
  199. package/es/DatePicker/core/hooks/react.mjs.map +1 -0
  200. package/es/DatePicker/core/hooks/useLocale.mjs +51 -0
  201. package/es/DatePicker/core/hooks/useLocale.mjs.map +1 -0
  202. package/es/DatePicker/core/hooks/useSemantic.mjs +20 -0
  203. package/es/DatePicker/core/hooks/useSemantic.mjs.map +1 -0
  204. package/es/DatePicker/core/hooks/useSyncState.mjs +25 -0
  205. package/es/DatePicker/core/hooks/useSyncState.mjs.map +1 -0
  206. package/es/DatePicker/core/hooks/useTimeConfig.mjs +173 -0
  207. package/es/DatePicker/core/hooks/useTimeConfig.mjs.map +1 -0
  208. package/es/DatePicker/core/hooks/useTimeInfo.mjs +110 -0
  209. package/es/DatePicker/core/hooks/useTimeInfo.mjs.map +1 -0
  210. package/es/DatePicker/core/hooks/useToggleDates.mjs +21 -0
  211. package/es/DatePicker/core/hooks/useToggleDates.mjs.map +1 -0
  212. package/es/DatePicker/core/index.d.mts +5 -0
  213. package/es/DatePicker/core/index.mjs +9 -0
  214. package/es/DatePicker/core/index.mjs.map +1 -0
  215. package/es/DatePicker/core/interface.d.mts +325 -0
  216. package/es/DatePicker/core/locale/common.mjs +11 -0
  217. package/es/DatePicker/core/locale/common.mjs.map +1 -0
  218. package/es/DatePicker/core/locale/en_US.mjs +39 -0
  219. package/es/DatePicker/core/locale/en_US.mjs.map +1 -0
  220. package/es/DatePicker/core/utils/common.mjs +73 -0
  221. package/es/DatePicker/core/utils/common.mjs.map +1 -0
  222. package/es/DatePicker/core/utils/dateUtil.mjs +106 -0
  223. package/es/DatePicker/core/utils/dateUtil.mjs.map +1 -0
  224. package/es/DatePicker/core/utils/miscUtil.mjs +46 -0
  225. package/es/DatePicker/core/utils/miscUtil.mjs.map +1 -0
  226. package/es/DatePicker/core/utils/uiUtil.mjs +9 -0
  227. package/es/DatePicker/core/utils/uiUtil.mjs.map +1 -0
  228. package/es/DatePicker/generateConfig.mjs +12 -0
  229. package/es/DatePicker/generateConfig.mjs.map +1 -0
  230. package/es/DatePicker/generatePicker.d.mts +12 -0
  231. package/es/DatePicker/generatePicker.mjs +22 -0
  232. package/es/DatePicker/generatePicker.mjs.map +1 -0
  233. package/es/DatePicker/index.d.mts +6 -3
  234. package/es/DatePicker/index.mjs +3 -1
  235. package/es/DatePicker/locale.d.mts +15 -0
  236. package/es/DatePicker/locale.mjs +143 -0
  237. package/es/DatePicker/locale.mjs.map +1 -0
  238. package/es/DatePicker/semantic.mjs +29 -0
  239. package/es/DatePicker/semantic.mjs.map +1 -0
  240. package/es/DatePicker/style.mjs +3 -155
  241. package/es/DatePicker/style.mjs.map +1 -1
  242. package/es/DatePicker/type.d.mts +268 -27
  243. package/es/DatePicker/usePanelKeyboard.mjs +230 -0
  244. package/es/DatePicker/usePanelKeyboard.mjs.map +1 -0
  245. package/es/DatePicker/usePickerShared.mjs +106 -0
  246. package/es/DatePicker/usePickerShared.mjs.map +1 -0
  247. package/es/DatePicker/usePresetActive.mjs +48 -0
  248. package/es/DatePicker/usePresetActive.mjs.map +1 -0
  249. package/es/DraggablePanel/atoms.mjs +5 -5
  250. package/es/DraggablePanel/atoms.mjs.map +1 -1
  251. package/es/DraggableSideNav/DraggableSideNav.mjs +3 -3
  252. package/es/DraggableSideNav/DraggableSideNav.mjs.map +1 -1
  253. package/es/Drawer/Drawer.mjs +2 -2
  254. package/es/Drawer/Drawer.mjs.map +1 -1
  255. package/es/Drawer/atoms.mjs +6 -6
  256. package/es/Drawer/atoms.mjs.map +1 -1
  257. package/es/DropdownMenu/atoms.mjs +22 -22
  258. package/es/DropdownMenu/atoms.mjs.map +1 -1
  259. package/es/DropdownMenu/sharedStyle.mjs +2 -2
  260. package/es/DropdownMenu/sharedStyle.mjs.map +1 -1
  261. package/es/EditableText/EditableText.mjs +1 -1
  262. package/es/EditorSlashMenu/atoms.mjs +12 -12
  263. package/es/EditorSlashMenu/atoms.mjs.map +1 -1
  264. package/es/EmojiPicker/EmojiPicker.mjs +7 -7
  265. package/es/EmojiPicker/EmojiPicker.mjs.map +1 -1
  266. package/es/EmojiPicker/loadEmojiData.mjs +6 -0
  267. package/es/EmojiPicker/loadEmojiData.mjs.map +1 -0
  268. package/es/FloatingPanel/FloatingPanel.mjs +2 -2
  269. package/es/FloatingPanel/FloatingPanel.mjs.map +1 -1
  270. package/es/FormKit/List.mjs +2 -2
  271. package/es/FormKit/List.mjs.map +1 -1
  272. package/es/Highlighter/FullFeatured.mjs +2 -2
  273. package/es/Highlighter/FullFeatured.mjs.map +1 -1
  274. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs +2 -2
  275. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
  276. package/es/Highlighter/SyntaxHighlighter/index.mjs +4 -4
  277. package/es/Highlighter/SyntaxHighlighter/index.mjs.map +1 -1
  278. package/es/Highlighter/style.mjs +2 -2
  279. package/es/Highlighter/style.mjs.map +1 -1
  280. package/es/HtmlPreview/HtmlPreview.mjs +2 -2
  281. package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
  282. package/es/Icon/Icon.mjs +2 -2
  283. package/es/Icon/Icon.mjs.map +1 -1
  284. package/es/List/ListRow.mjs +3 -3
  285. package/es/List/ListRow.mjs.map +1 -1
  286. package/es/Markdown/Markdown.mjs +2 -2
  287. package/es/Markdown/Markdown.mjs.map +1 -1
  288. package/es/Markdown/Typography.mjs +2 -2
  289. package/es/Markdown/Typography.mjs.map +1 -1
  290. package/es/Mermaid/FullFeatured.mjs +2 -2
  291. package/es/Mermaid/FullFeatured.mjs.map +1 -1
  292. package/es/Mermaid/SyntaxMermaid/index.mjs +4 -4
  293. package/es/Mermaid/SyntaxMermaid/index.mjs.map +1 -1
  294. package/es/Modal/atoms.mjs +6 -6
  295. package/es/Modal/atoms.mjs.map +1 -1
  296. package/es/Pagination/Pagination.mjs +181 -41
  297. package/es/Pagination/Pagination.mjs.map +1 -1
  298. package/es/Pagination/helpers.mjs +3 -3
  299. package/es/Pagination/helpers.mjs.map +1 -1
  300. package/es/Pagination/index.d.mts +2 -2
  301. package/es/Pagination/marker.stylex.mjs +9 -0
  302. package/es/Pagination/marker.stylex.mjs.map +1 -0
  303. package/es/Pagination/style.mjs +74 -4
  304. package/es/Pagination/style.mjs.map +1 -1
  305. package/es/Pagination/type.d.mts +41 -3
  306. package/es/Popover/PopoverInGroup.mjs +2 -2
  307. package/es/Popover/PopoverInGroup.mjs.map +1 -1
  308. package/es/Popover/atoms.mjs +6 -6
  309. package/es/Popover/atoms.mjs.map +1 -1
  310. package/es/ProTable/ProTable.d.mts +11 -0
  311. package/es/ProTable/ProTable.mjs +208 -0
  312. package/es/ProTable/ProTable.mjs.map +1 -0
  313. package/es/ProTable/hooks/useColumnRequest.mjs +55 -0
  314. package/es/ProTable/hooks/useColumnRequest.mjs.map +1 -0
  315. package/es/ProTable/hooks/useColumnsState.mjs +37 -0
  316. package/es/ProTable/hooks/useColumnsState.mjs.map +1 -0
  317. package/es/ProTable/hooks/useDelayedFlag.mjs +18 -0
  318. package/es/ProTable/hooks/useDelayedFlag.mjs.map +1 -0
  319. package/es/ProTable/hooks/useDensity.mjs +15 -0
  320. package/es/ProTable/hooks/useDensity.mjs.map +1 -0
  321. package/es/ProTable/hooks/useFetchData.mjs +97 -0
  322. package/es/ProTable/hooks/useFetchData.mjs.map +1 -0
  323. package/es/ProTable/hooks/useFullscreen.mjs +22 -0
  324. package/es/ProTable/hooks/useFullscreen.mjs.map +1 -0
  325. package/es/ProTable/hooks/usePageInfo.mjs +35 -0
  326. package/es/ProTable/hooks/usePageInfo.mjs.map +1 -0
  327. package/es/ProTable/hooks/useProColumns.mjs +123 -0
  328. package/es/ProTable/hooks/useProColumns.mjs.map +1 -0
  329. package/es/ProTable/hooks/useProLoading.mjs +19 -0
  330. package/es/ProTable/hooks/useProLoading.mjs.map +1 -0
  331. package/es/ProTable/hooks/useProLocale.mjs +22 -0
  332. package/es/ProTable/hooks/useProLocale.mjs.map +1 -0
  333. package/es/ProTable/hooks/useProRequest.mjs +137 -0
  334. package/es/ProTable/hooks/useProRequest.mjs.map +1 -0
  335. package/es/ProTable/hooks/useRowCache.mjs +11 -0
  336. package/es/ProTable/hooks/useRowCache.mjs.map +1 -0
  337. package/es/ProTable/hooks/useSearchForm.mjs +141 -0
  338. package/es/ProTable/hooks/useSearchForm.mjs.map +1 -0
  339. package/es/ProTable/hooks/useTableBindings.mjs +39 -0
  340. package/es/ProTable/hooks/useTableBindings.mjs.map +1 -0
  341. package/es/ProTable/hooks/useTableSelection.mjs +14 -0
  342. package/es/ProTable/hooks/useTableSelection.mjs.map +1 -0
  343. package/es/ProTable/index.d.mts +4 -0
  344. package/es/ProTable/index.d.ts +1 -0
  345. package/es/ProTable/index.js +1 -0
  346. package/es/ProTable/index.mjs +3 -0
  347. package/es/ProTable/locale.d.mts +15 -0
  348. package/es/ProTable/locale.mjs +66 -0
  349. package/es/ProTable/locale.mjs.map +1 -0
  350. package/es/ProTable/parts/ColumnSetting.mjs +155 -0
  351. package/es/ProTable/parts/ColumnSetting.mjs.map +1 -0
  352. package/es/ProTable/parts/FieldControl.mjs +117 -0
  353. package/es/ProTable/parts/FieldControl.mjs.map +1 -0
  354. package/es/ProTable/parts/KeywordInput.mjs +19 -0
  355. package/es/ProTable/parts/KeywordInput.mjs.map +1 -0
  356. package/es/ProTable/parts/LightFilter.mjs +70 -0
  357. package/es/ProTable/parts/LightFilter.mjs.map +1 -0
  358. package/es/ProTable/parts/OptionPopover.mjs +17 -0
  359. package/es/ProTable/parts/OptionPopover.mjs.map +1 -0
  360. package/es/ProTable/parts/SearchForm.mjs +180 -0
  361. package/es/ProTable/parts/SearchForm.mjs.map +1 -0
  362. package/es/ProTable/parts/SearchSection.mjs +33 -0
  363. package/es/ProTable/parts/SearchSection.mjs.map +1 -0
  364. package/es/ProTable/parts/TableAlert.mjs +38 -0
  365. package/es/ProTable/parts/TableAlert.mjs.map +1 -0
  366. package/es/ProTable/parts/Toolbar.mjs +50 -0
  367. package/es/ProTable/parts/Toolbar.mjs.map +1 -0
  368. package/es/ProTable/parts/ToolbarOptions.mjs +103 -0
  369. package/es/ProTable/parts/ToolbarOptions.mjs.map +1 -0
  370. package/es/ProTable/parts/renderValue.mjs +118 -0
  371. package/es/ProTable/parts/renderValue.mjs.map +1 -0
  372. package/es/ProTable/style.mjs +278 -0
  373. package/es/ProTable/style.mjs.map +1 -0
  374. package/es/ProTable/type.d.mts +397 -0
  375. package/es/ProTable/utils.mjs +152 -0
  376. package/es/ProTable/utils.mjs.map +1 -0
  377. package/es/Radio/Radio.mjs +3 -3
  378. package/es/Radio/Radio.mjs.map +1 -1
  379. package/es/ScrollArea/atoms.mjs +4 -4
  380. package/es/ScrollArea/atoms.mjs.map +1 -1
  381. package/es/Segmented/Segmented.mjs +3 -3
  382. package/es/Segmented/Segmented.mjs.map +1 -1
  383. package/es/Segmented/atoms.mjs +2 -2
  384. package/es/Segmented/atoms.mjs.map +1 -1
  385. package/es/Select/Select.mjs +22 -13
  386. package/es/Select/Select.mjs.map +1 -1
  387. package/es/Select/atoms.mjs +4 -4
  388. package/es/Select/atoms.mjs.map +1 -1
  389. package/es/Select/helpers.mjs +8 -1
  390. package/es/Select/helpers.mjs.map +1 -1
  391. package/es/Select/hooks.mjs +8 -4
  392. package/es/Select/hooks.mjs.map +1 -1
  393. package/es/Select/renderOptions.mjs +2 -2
  394. package/es/Select/renderOptions.mjs.map +1 -1
  395. package/es/Select/type.d.mts +7 -0
  396. package/es/Switch/Switch.mjs +2 -2
  397. package/es/Switch/Switch.mjs.map +1 -1
  398. package/es/Switch/atoms.mjs +2 -2
  399. package/es/Switch/atoms.mjs.map +1 -1
  400. package/es/Table/Column.d.mts +8 -0
  401. package/es/Table/Column.mjs +6 -0
  402. package/es/Table/Column.mjs.map +1 -0
  403. package/es/Table/ColumnGroup.d.mts +11 -0
  404. package/es/Table/ColumnGroup.mjs +6 -0
  405. package/es/Table/ColumnGroup.mjs.map +1 -0
  406. package/es/Table/Table.d.mts +16 -2
  407. package/es/Table/Table.mjs +149 -118
  408. package/es/Table/Table.mjs.map +1 -1
  409. package/es/Table/atoms/cells.d.mts +42 -0
  410. package/es/Table/atoms/cells.mjs +72 -0
  411. package/es/Table/atoms/cells.mjs.map +1 -0
  412. package/es/Table/atoms/index.d.mts +3 -0
  413. package/es/Table/atoms/layout.d.mts +44 -0
  414. package/es/Table/atoms/layout.mjs +62 -0
  415. package/es/Table/atoms/layout.mjs.map +1 -0
  416. package/es/Table/constants.mjs +16 -0
  417. package/es/Table/constants.mjs.map +1 -0
  418. package/es/Table/engine/fixed.d.mts +1 -0
  419. package/es/Table/engine/fixed.mjs +53 -0
  420. package/es/Table/engine/fixed.mjs.map +1 -0
  421. package/es/Table/engine/types.d.mts +1 -0
  422. package/es/Table/engine/useTableEngine.mjs +180 -0
  423. package/es/Table/engine/useTableEngine.mjs.map +1 -0
  424. package/es/Table/index.d.mts +7 -2
  425. package/es/Table/index.mjs +4 -1
  426. package/es/Table/internal.d.mts +3 -0
  427. package/es/Table/pipeline/columnUtils.d.mts +5 -0
  428. package/es/Table/pipeline/columnUtils.mjs +58 -0
  429. package/es/Table/pipeline/columnUtils.mjs.map +1 -0
  430. package/es/Table/pipeline/convertChildrenToColumns.mjs +24 -0
  431. package/es/Table/pipeline/convertChildrenToColumns.mjs.map +1 -0
  432. package/es/Table/pipeline/normalizeColumns.mjs +140 -0
  433. package/es/Table/pipeline/normalizeColumns.mjs.map +1 -0
  434. package/es/Table/pipeline/selectionUtils.d.mts +9 -0
  435. package/es/Table/pipeline/selectionUtils.mjs +115 -0
  436. package/es/Table/pipeline/selectionUtils.mjs.map +1 -0
  437. package/es/Table/pipeline/useBreakpoint.mjs +36 -0
  438. package/es/Table/pipeline/useBreakpoint.mjs.map +1 -0
  439. package/es/Table/pipeline/useExpandable.mjs +45 -0
  440. package/es/Table/pipeline/useExpandable.mjs.map +1 -0
  441. package/es/Table/pipeline/useFilter.mjs +52 -0
  442. package/es/Table/pipeline/useFilter.mjs.map +1 -0
  443. package/es/Table/pipeline/useSelection.mjs +302 -0
  444. package/es/Table/pipeline/useSelection.mjs.map +1 -0
  445. package/es/Table/pipeline/useSorter.mjs +146 -0
  446. package/es/Table/pipeline/useSorter.mjs.map +1 -0
  447. package/es/Table/pipeline/useTableLocale.mjs +30 -0
  448. package/es/Table/pipeline/useTableLocale.mjs.map +1 -0
  449. package/es/Table/pipeline/useTableState.mjs +118 -0
  450. package/es/Table/pipeline/useTableState.mjs.map +1 -0
  451. package/es/Table/pipeline/useVirtualLayout.mjs +80 -0
  452. package/es/Table/pipeline/useVirtualLayout.mjs.map +1 -0
  453. package/es/Table/render/Body.mjs +150 -0
  454. package/es/Table/render/Body.mjs.map +1 -0
  455. package/es/Table/render/BodyCell.mjs +87 -0
  456. package/es/Table/render/BodyCell.mjs.map +1 -0
  457. package/es/Table/render/CellShell.mjs +84 -0
  458. package/es/Table/render/CellShell.mjs.map +1 -0
  459. package/es/Table/render/ExpandIcon.mjs +28 -0
  460. package/es/Table/render/ExpandIcon.mjs.map +1 -0
  461. package/es/Table/render/FilterDropdown.mjs +139 -0
  462. package/es/Table/render/FilterDropdown.mjs.map +1 -0
  463. package/es/Table/render/FilterPanel.mjs +152 -0
  464. package/es/Table/render/FilterPanel.mjs.map +1 -0
  465. package/es/Table/render/FixedFrost.mjs +113 -0
  466. package/es/Table/render/FixedFrost.mjs.map +1 -0
  467. package/es/Table/render/FixedHolder.mjs +51 -0
  468. package/es/Table/render/FixedHolder.mjs.map +1 -0
  469. package/es/Table/render/Header.mjs +184 -0
  470. package/es/Table/render/Header.mjs.map +1 -0
  471. package/es/Table/render/LoadingSkeleton.mjs +78 -0
  472. package/es/Table/render/LoadingSkeleton.mjs.map +1 -0
  473. package/es/Table/render/PaginationBar.mjs +71 -0
  474. package/es/Table/render/PaginationBar.mjs.map +1 -0
  475. package/es/Table/render/SelectionCells.mjs +111 -0
  476. package/es/Table/render/SelectionCells.mjs.map +1 -0
  477. package/es/Table/render/StickyScrollBar.mjs +99 -0
  478. package/es/Table/render/StickyScrollBar.mjs.map +1 -0
  479. package/es/Table/render/Summary.d.mts +16 -0
  480. package/es/Table/render/Summary.mjs +58 -0
  481. package/es/Table/render/Summary.mjs.map +1 -0
  482. package/es/Table/render/TableView.mjs +215 -0
  483. package/es/Table/render/TableView.mjs.map +1 -0
  484. package/es/Table/render/VirtualBody.mjs +101 -0
  485. package/es/Table/render/VirtualBody.mjs.map +1 -0
  486. package/es/Table/render/context.mjs +15 -0
  487. package/es/Table/render/context.mjs.map +1 -0
  488. package/es/Table/render/filterUtils.mjs +22 -0
  489. package/es/Table/render/filterUtils.mjs.map +1 -0
  490. package/es/Table/render/tableHelpers.mjs +27 -0
  491. package/es/Table/render/tableHelpers.mjs.map +1 -0
  492. package/es/Table/render/useColGroups.mjs +23 -0
  493. package/es/Table/render/useColGroups.mjs.map +1 -0
  494. package/es/Table/render/useScrollSync.mjs +104 -0
  495. package/es/Table/render/useScrollSync.mjs.map +1 -0
  496. package/es/Table/render/useViewContexts.mjs +134 -0
  497. package/es/Table/render/useViewContexts.mjs.map +1 -0
  498. package/es/Table/semantic.mjs +45 -0
  499. package/es/Table/semantic.mjs.map +1 -0
  500. package/es/Table/store/createTableStore.d.mts +1 -0
  501. package/es/Table/store/createTableStore.mjs +40 -0
  502. package/es/Table/store/createTableStore.mjs.map +1 -0
  503. package/es/Table/store/hooks.mjs +24 -0
  504. package/es/Table/store/hooks.mjs.map +1 -0
  505. package/es/Table/style.mjs +175 -90
  506. package/es/Table/style.mjs.map +1 -1
  507. package/es/Table/type.d.mts +467 -37
  508. package/es/Table/useTableController.mjs +293 -0
  509. package/es/Table/useTableController.mjs.map +1 -0
  510. package/es/Tabs/Tabs.mjs +2 -2
  511. package/es/Tabs/Tabs.mjs.map +1 -1
  512. package/es/Tabs/atoms.mjs +2 -2
  513. package/es/Tabs/atoms.mjs.map +1 -1
  514. package/es/Tabs/style.d.mts +1 -1
  515. package/es/Tag/Tag.mjs +2 -2
  516. package/es/Tag/Tag.mjs.map +1 -1
  517. package/es/Text/Text.mjs +2 -2
  518. package/es/Text/Text.mjs.map +1 -1
  519. package/es/Text/style.d.mts +3 -3
  520. package/es/Text/style.mjs +3 -3
  521. package/es/Text/style.mjs.map +1 -1
  522. package/es/ToggleGroup/ToggleGroup.mjs +3 -3
  523. package/es/ToggleGroup/ToggleGroup.mjs.map +1 -1
  524. package/es/ToggleGroup/atoms.mjs +2 -2
  525. package/es/ToggleGroup/atoms.mjs.map +1 -1
  526. package/es/Tooltip/TooltipGroup.mjs +3 -3
  527. package/es/Tooltip/TooltipGroup.mjs.map +1 -1
  528. package/es/Tooltip/TooltipStandalone.mjs +3 -3
  529. package/es/Tooltip/TooltipStandalone.mjs.map +1 -1
  530. package/es/Tree/Tree.mjs +2 -2
  531. package/es/Tree/Tree.mjs.map +1 -1
  532. package/es/Tree/TreeNode.mjs +2 -2
  533. package/es/Tree/TreeNode.mjs.map +1 -1
  534. package/es/Video/Video.mjs +2 -2
  535. package/es/Video/Video.mjs.map +1 -1
  536. package/es/awesome/Features/FeatureItem.mjs +2 -2
  537. package/es/awesome/Features/FeatureItem.mjs.map +1 -1
  538. package/es/awesome/Hero/Hero.mjs +3 -3
  539. package/es/awesome/Hero/Hero.mjs.map +1 -1
  540. package/es/awesome/InstallBanner/InstallBanner.mjs +2 -2
  541. package/es/awesome/InstallBanner/InstallBanner.mjs.map +1 -1
  542. package/es/awesome/LandingHero/LandingHero.mjs +3 -3
  543. package/es/awesome/LandingHero/LandingHero.mjs.map +1 -1
  544. package/es/awesome/LogoMarquee/LogoMarquee.mjs +2 -2
  545. package/es/awesome/LogoMarquee/LogoMarquee.mjs.map +1 -1
  546. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs +4 -4
  547. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
  548. package/es/awesome/landingActions.mjs +2 -2
  549. package/es/awesome/landingActions.mjs.map +1 -1
  550. package/es/chat/ChatItem/ChatItem.mjs +2 -2
  551. package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
  552. package/es/chat/EditableMessage/EditableMessage.mjs +3 -3
  553. package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
  554. package/es/chat/EditableMessageList/EditableMessageList.mjs +1 -1
  555. package/es/chat/MessageInput/MessageInput.mjs +3 -3
  556. package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
  557. package/es/dashboard/AuthLayout/AuthLayout.mjs +8 -4
  558. package/es/dashboard/AuthLayout/AuthLayout.mjs.map +1 -1
  559. package/es/dashboard/AuthLayout/style.mjs +14 -3
  560. package/es/dashboard/AuthLayout/style.mjs.map +1 -1
  561. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs +2 -2
  562. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs.map +1 -1
  563. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs +2 -2
  564. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs.map +1 -1
  565. package/es/dashboard/ConsoleNav/ConsoleNav.mjs +3 -3
  566. package/es/dashboard/ConsoleNav/ConsoleNav.mjs.map +1 -1
  567. package/es/dashboard/ConsoleNav/style.mjs +2 -2
  568. package/es/dashboard/ConsoleNav/style.mjs.map +1 -1
  569. package/es/dashboard/ConsoleShell/style.mjs +1 -1
  570. package/es/dashboard/ConsoleShell/style.mjs.map +1 -1
  571. package/es/dashboard/FilterSidebar/FilterSidebar.mjs +1 -1
  572. package/es/dashboard/FilterSidebar/style.mjs +2 -2
  573. package/es/dashboard/FilterSidebar/style.mjs.map +1 -1
  574. package/es/dashboard/FilterStrip/style.mjs +1 -1
  575. package/es/dashboard/FilterStrip/style.mjs.map +1 -1
  576. package/es/dashboard/MetricStrip/MetricCell.mjs +25 -14
  577. package/es/dashboard/MetricStrip/MetricCell.mjs.map +1 -1
  578. package/es/dashboard/MetricStrip/style.mjs +14 -1
  579. package/es/dashboard/MetricStrip/style.mjs.map +1 -1
  580. package/es/dashboard/MetricStrip/type.d.mts +2 -0
  581. package/es/dashboard/PageSkeleton/style.mjs +2 -1
  582. package/es/dashboard/PageSkeleton/style.mjs.map +1 -1
  583. package/es/dashboard/StatCard/StatCard.d.mts +1 -1
  584. package/es/dashboard/StatCard/StatCard.mjs +2 -1
  585. package/es/dashboard/StatCard/StatCard.mjs.map +1 -1
  586. package/es/dashboard/StatCard/type.d.mts +2 -0
  587. package/es/dashboard/Surface/Surface.mjs +3 -4
  588. package/es/dashboard/Surface/Surface.mjs.map +1 -1
  589. package/es/dashboard/Surface/link.mjs +1 -1
  590. package/es/dashboard/Surface/link.mjs.map +1 -1
  591. package/es/dashboard/Surface/style.mjs +15 -14
  592. package/es/dashboard/Surface/style.mjs.map +1 -1
  593. package/es/dashboard/index.mjs +2 -2
  594. package/es/eslint/noBaseUiSubpath.mjs +2 -1
  595. package/es/eslint/noBaseUiSubpath.mjs.map +1 -1
  596. package/es/i18n/resources/en/colorPicker.d.mts +5 -0
  597. package/es/i18n/resources/en/colorPicker.mjs +5 -0
  598. package/es/i18n/resources/en/colorPicker.mjs.map +1 -1
  599. package/es/i18n/resources/en/datePicker.d.mts +54 -0
  600. package/es/i18n/resources/en/datePicker.mjs +55 -1
  601. package/es/i18n/resources/en/datePicker.mjs.map +1 -1
  602. package/es/i18n/resources/en/index.d.mts +4 -3
  603. package/es/i18n/resources/en/index.mjs +3 -1
  604. package/es/i18n/resources/en/index.mjs.map +1 -1
  605. package/es/i18n/resources/en/table.d.mts +23 -0
  606. package/es/i18n/resources/en/table.mjs +24 -0
  607. package/es/i18n/resources/en/table.mjs.map +1 -0
  608. package/es/i18n/resources/zhCn/colorPicker.d.mts +5 -0
  609. package/es/i18n/resources/zhCn/colorPicker.mjs +5 -0
  610. package/es/i18n/resources/zhCn/colorPicker.mjs.map +1 -1
  611. package/es/i18n/resources/zhCn/datePicker.d.mts +54 -0
  612. package/es/i18n/resources/zhCn/datePicker.mjs +55 -1
  613. package/es/i18n/resources/zhCn/datePicker.mjs.map +1 -1
  614. package/es/i18n/resources/zhCn/index.d.mts +4 -3
  615. package/es/i18n/resources/zhCn/index.mjs +4 -2
  616. package/es/i18n/resources/zhCn/index.mjs.map +1 -1
  617. package/es/i18n/resources/zhCn/table.d.mts +23 -0
  618. package/es/i18n/resources/zhCn/table.mjs +24 -0
  619. package/es/i18n/resources/zhCn/table.mjs.map +1 -0
  620. package/es/i18n/types.d.mts +3 -2
  621. package/es/index.d.mts +15 -7
  622. package/es/index.mjs +14 -9
  623. package/es/internal/overflow/OverflowList.mjs +71 -0
  624. package/es/internal/overflow/OverflowList.mjs.map +1 -0
  625. package/es/mdx/Callout/index.mjs +2 -2
  626. package/es/mdx/Callout/index.mjs.map +1 -1
  627. package/es/mdx/Cards/Card.mjs +2 -2
  628. package/es/mdx/Cards/Card.mjs.map +1 -1
  629. package/es/mdx/Cards/index.mjs +2 -2
  630. package/es/mdx/Cards/index.mjs.map +1 -1
  631. package/es/mdx/Mdx/index.mjs +2 -2
  632. package/es/mdx/Mdx/index.mjs.map +1 -1
  633. package/es/mdx/Steps/index.mjs +2 -2
  634. package/es/mdx/Steps/index.mjs.map +1 -1
  635. package/es/mdx/mdxComponents/Pre.mjs +5 -5
  636. package/es/mdx/mdxComponents/Pre.mjs.map +1 -1
  637. package/es/storybook/StoryBook/style.mjs +2 -0
  638. package/es/storybook/StoryBook/style.mjs.map +1 -1
  639. package/es/style.css +2966 -957
  640. package/es/styles/createGlobalStyle.mjs +1 -1
  641. package/es/styles/index.d.mts +3 -2
  642. package/es/styles/index.mjs +5 -4
  643. package/es/styles/stylex/props.mjs +2 -2
  644. package/es/styles/stylex/props.mjs.map +1 -1
  645. package/es/styles/theme/createLobeToken.d.mts +3 -2
  646. package/es/styles/theme/createLobeToken.mjs.map +1 -1
  647. package/es/styles/theme/customPrimary.d.mts +7 -0
  648. package/es/styles/theme/customPrimary.mjs +66 -0
  649. package/es/styles/theme/customPrimary.mjs.map +1 -0
  650. package/es/styles/theme/scope.d.mts +4 -3
  651. package/es/styles/theme/scope.mjs +30 -8
  652. package/es/styles/theme/scope.mjs.map +1 -1
  653. package/es/styles/theme/themeCss.d.mts +2 -0
  654. package/es/styles/theme/themeCss.mjs +24 -2
  655. package/es/styles/theme/themeCss.mjs.map +1 -1
  656. package/es/styles/theme/token/primary.mjs +6 -2
  657. package/es/styles/theme/token/primary.mjs.map +1 -1
  658. package/es/theme.css +8 -0
  659. package/package.json +6 -1
  660. package/es/DatePicker/CalendarPanel.mjs +0 -189
  661. package/es/DatePicker/CalendarPanel.mjs.map +0 -1
  662. package/es/DatePicker/PickerShell.mjs +0 -43
  663. package/es/DatePicker/PickerShell.mjs.map +0 -1
  664. package/es/DatePicker/calendar.d.mts +0 -4
  665. package/es/DatePicker/calendar.mjs +0 -46
  666. package/es/DatePicker/calendar.mjs.map +0 -1
  667. package/es/Table/FilterMenu.mjs +0 -45
  668. package/es/Table/FilterMenu.mjs.map +0 -1
  669. package/es/Table/TableBody.mjs +0 -67
  670. package/es/Table/TableBody.mjs.map +0 -1
  671. package/es/Table/TableHead.mjs +0 -58
  672. package/es/Table/TableHead.mjs.map +0 -1
  673. package/es/Table/features.mjs +0 -12
  674. package/es/Table/features.mjs.map +0 -1
  675. package/es/Table/fixedOffsets.mjs +0 -29
  676. package/es/Table/fixedOffsets.mjs.map +0 -1
  677. package/es/Table/marker.stylex.mjs +0 -9
  678. package/es/Table/marker.stylex.mjs.map +0 -1
  679. package/es/Table/toColumnDefs.mjs +0 -26
  680. package/es/Table/toColumnDefs.mjs.map +0 -1
  681. package/es/Table/useTableState.mjs +0 -99
  682. package/es/Table/useTableState.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"renderOptions.mjs","names":["BaseSelect"],"sources":["../../src/Select/renderOptions.tsx"],"sourcesContent":["'use client';\n\nimport { Select as BaseSelect } from '@base-ui/react/select';\nimport clsx from 'clsx';\nimport { Check } from 'lucide-react';\n\nimport { menuStyles } from '@/DropdownMenu/sharedStyle';\nimport Icon from '@/Icon';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { getOptionSearchText, isGroupOption } from './helpers';\nimport { styles } from './style';\nimport {\n type SelectClassNames,\n type SelectOption,\n type SelectOptions,\n type SelectProps,\n} from './type';\n\ninterface RenderOptionsParams {\n classNames: SelectClassNames | undefined;\n isBoldIndicator: boolean;\n items: SelectOptions<any>;\n itemTextClassName: string;\n listItemHeight: number | undefined;\n optionRender: SelectProps['optionRender'];\n}\n\nfunction renderItem(\n option: SelectOption<any>,\n index: number,\n params: Omit<RenderOptionsParams, 'items'>,\n) {\n const { classNames, isBoldIndicator, itemTextClassName, listItemHeight, optionRender } = params;\n\n return (\n <BaseSelect.Item\n disabled={option.disabled}\n key={`${String(option.value)}-${index}`}\n label={getOptionSearchText(option)}\n value={option.value}\n {...styleProps(\n [menuStyles.item, isBoldIndicator && styles.itemBoldSelected],\n clsx(classNames?.item, classNames?.option, option.className),\n { minHeight: listItemHeight, ...option.style },\n )}\n >\n <BaseSelect.ItemText className={itemTextClassName}>\n {optionRender ? optionRender(option, { index }) : option.label}\n </BaseSelect.ItemText>\n {!isBoldIndicator && (\n <BaseSelect.ItemIndicator {...styleProps(styles.itemIndicator, classNames?.itemIndicator)}>\n <Icon icon={Check} size={'small'} />\n </BaseSelect.ItemIndicator>\n )}\n </BaseSelect.Item>\n );\n}\n\nexport function renderOptions(params: RenderOptionsParams) {\n const { classNames, items } = params;\n let optionIndex = 0;\n\n return items.map((item, index) => {\n if (isGroupOption(item)) {\n return (\n <BaseSelect.Group className={classNames?.group} key={`group-${index}`}>\n <BaseSelect.GroupLabel {...styleProps(menuStyles.groupLabel, classNames?.groupLabel)}>\n {item.label}\n </BaseSelect.GroupLabel>\n {item.options.map((option) => renderItem(option, optionIndex++, params))}\n </BaseSelect.Group>\n );\n }\n\n return renderItem(item, optionIndex++, params);\n });\n}\n"],"mappings":";;;;;;;;;;;AA4BA,SAAS,WACP,QACA,OACA,QACA;CACA,MAAM,EAAE,YAAY,iBAAiB,mBAAmB,gBAAgB,iBAAiB;CAEzF,OACE,qBAACA,OAAW,MAAZ;EACE,UAAU,OAAO;EAEjB,OAAO,oBAAoB,MAAM;EACjC,OAAO,OAAO;EACd,GAAI,WACF,CAAC,WAAW,MAAM,mBAAmB,OAAO,gBAAgB,GAC5D,KAAK,YAAY,MAAM,YAAY,QAAQ,OAAO,SAAS,GAC3D;GAAE,WAAW;GAAgB,GAAG,OAAO;EAAM,CAC/C;EATF,UAAA,CAWE,oBAACA,OAAW,UAAZ;GAAqB,WAAW;GAC7B,UAAA,eAAe,aAAa,QAAQ,EAAE,MAAM,CAAC,IAAI,OAAO;EACtC,CAAA,GACpB,CAAC,mBACA,oBAACA,OAAW,eAAZ;GAA0B,GAAI,WAAW,OAAO,eAAe,YAAY,aAAa;GACtF,UAAA,oBAAC,MAAD;IAAM,MAAM;IAAO,MAAM;GAAU,CAAA;EACX,CAAA,CAEb;CAjBV,GAAA,GAAG,OAAO,OAAO,KAAK,EAAE,GAAG,OAiBjB;AAErB;AAEA,SAAgB,cAAc,QAA6B;CACzD,MAAM,EAAE,YAAY,UAAU;CAC9B,IAAI,cAAc;CAElB,OAAO,MAAM,KAAK,MAAM,UAAU;EAChC,IAAI,cAAc,IAAI,GACpB,OACE,qBAACA,OAAW,OAAZ;GAAkB,WAAW,YAAY;GAAzC,UAAA,CACE,oBAACA,OAAW,YAAZ;IAAuB,GAAI,WAAW,WAAW,YAAY,YAAY,UAAU;IAChF,UAAA,KAAK;GACe,CAAA,GACtB,KAAK,QAAQ,KAAK,WAAW,WAAW,QAAQ,eAAe,MAAM,CAAC,CACvD;EALmC,GAAA,SAAS,OAK5C;EAItB,OAAO,WAAW,MAAM,eAAe,MAAM;CAC/C,CAAC;AACH"}
1
+ {"version":3,"file":"renderOptions.mjs","names":["BaseSelect","clsx"],"sources":["../../src/Select/renderOptions.tsx"],"sourcesContent":["'use client';\n\nimport { Select as BaseSelect } from '@base-ui/react/select';\nimport clsx from 'clsx';\nimport { Check } from 'lucide-react';\n\nimport { menuStyles } from '@/DropdownMenu/sharedStyle';\nimport Icon from '@/Icon';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { getOptionSearchText, isGroupOption } from './helpers';\nimport { styles } from './style';\nimport {\n type SelectClassNames,\n type SelectOption,\n type SelectOptions,\n type SelectProps,\n} from './type';\n\ninterface RenderOptionsParams {\n classNames: SelectClassNames | undefined;\n isBoldIndicator: boolean;\n items: SelectOptions<any>;\n itemTextClassName: string;\n listItemHeight: number | undefined;\n optionRender: SelectProps['optionRender'];\n}\n\nfunction renderItem(\n option: SelectOption<any>,\n index: number,\n params: Omit<RenderOptionsParams, 'items'>,\n) {\n const { classNames, isBoldIndicator, itemTextClassName, listItemHeight, optionRender } = params;\n\n return (\n <BaseSelect.Item\n disabled={option.disabled}\n key={`${String(option.value)}-${index}`}\n label={getOptionSearchText(option)}\n value={option.value}\n {...styleProps(\n [menuStyles.item, isBoldIndicator && styles.itemBoldSelected],\n clsx(classNames?.item, classNames?.option, option.className),\n { minHeight: listItemHeight, ...option.style },\n )}\n >\n <BaseSelect.ItemText className={itemTextClassName}>\n {optionRender ? optionRender(option, { index }) : option.label}\n </BaseSelect.ItemText>\n {!isBoldIndicator && (\n <BaseSelect.ItemIndicator {...styleProps(styles.itemIndicator, classNames?.itemIndicator)}>\n <Icon icon={Check} size={'small'} />\n </BaseSelect.ItemIndicator>\n )}\n </BaseSelect.Item>\n );\n}\n\nexport function renderOptions(params: RenderOptionsParams) {\n const { classNames, items } = params;\n let optionIndex = 0;\n\n return items.map((item, index) => {\n if (isGroupOption(item)) {\n return (\n <BaseSelect.Group className={classNames?.group} key={`group-${index}`}>\n <BaseSelect.GroupLabel {...styleProps(menuStyles.groupLabel, classNames?.groupLabel)}>\n {item.label}\n </BaseSelect.GroupLabel>\n {item.options.map((option) => renderItem(option, optionIndex++, params))}\n </BaseSelect.Group>\n );\n }\n\n return renderItem(item, optionIndex++, params);\n });\n}\n"],"mappings":";;;;;;;;;;;AA4BA,SAAS,WACP,QACA,OACA,QACA;CACA,MAAM,EAAE,YAAY,iBAAiB,mBAAmB,gBAAgB,iBAAiB;CAEzF,OACE,qBAACA,OAAW,MAAZ;EACE,UAAU,OAAO;EAEjB,OAAO,oBAAoB,MAAM;EACjC,OAAO,OAAO;EACd,GAAI,WACF,CAAC,WAAW,MAAM,mBAAmB,OAAO,gBAAgB,GAC5DC,OAAK,YAAY,MAAM,YAAY,QAAQ,OAAO,SAAS,GAC3D;GAAE,WAAW;GAAgB,GAAG,OAAO;EAAM,CAC/C;EATF,UAAA,CAWE,oBAACD,OAAW,UAAZ;GAAqB,WAAW;GAC7B,UAAA,eAAe,aAAa,QAAQ,EAAE,MAAM,CAAC,IAAI,OAAO;EACtC,CAAA,GACpB,CAAC,mBACA,oBAACA,OAAW,eAAZ;GAA0B,GAAI,WAAW,OAAO,eAAe,YAAY,aAAa;GACtF,UAAA,oBAAC,MAAD;IAAM,MAAM;IAAO,MAAM;GAAU,CAAA;EACX,CAAA,CAEb;CAjBV,GAAA,GAAG,OAAO,OAAO,KAAK,EAAE,GAAG,OAiBjB;AAErB;AAEA,SAAgB,cAAc,QAA6B;CACzD,MAAM,EAAE,YAAY,UAAU;CAC9B,IAAI,cAAc;CAElB,OAAO,MAAM,KAAK,MAAM,UAAU;EAChC,IAAI,cAAc,IAAI,GACpB,OACE,qBAACA,OAAW,OAAZ;GAAkB,WAAW,YAAY;GAAzC,UAAA,CACE,oBAACA,OAAW,YAAZ;IAAuB,GAAI,WAAW,WAAW,YAAY,YAAY,UAAU;IAChF,UAAA,KAAK;GACe,CAAA,GACtB,KAAK,QAAQ,KAAK,WAAW,WAAW,QAAQ,eAAe,MAAM,CAAC,CACvD;EALmC,GAAA,SAAS,OAK5C;EAItB,OAAO,WAAW,MAAM,eAAe,MAAM;CAC/C,CAAC;AACH"}
@@ -64,6 +64,11 @@ export interface SelectProps<Value = string> extends Pick<VirtualListProps, 'vir
64
64
  defaultOpen?: boolean;
65
65
  defaultValue?: Value | Value[] | null;
66
66
  disabled?: boolean;
67
+ /**
68
+ * Local filtering of the options while searching: `false` keeps every option (filter on the
69
+ * server through `onSearch`), a function decides per option. @default true
70
+ */
71
+ filterOption?: boolean | ((input: string, option: SelectOption<Value>) => boolean);
67
72
  id?: string;
68
73
  labelRender?: (option: SelectOption<Value>) => ReactNode;
69
74
  /**
@@ -76,6 +81,8 @@ export interface SelectProps<Value = string> extends Pick<VirtualListProps, 'vir
76
81
  name?: string;
77
82
  onChange?: (value: Value | Value[] | null | undefined, option?: SelectOption<Value> | SelectOption<Value>[]) => void;
78
83
  onOpenChange?: (open: boolean, eventDetails?: SelectRootChangeEventDetails) => void;
84
+ /** Called with the search text as it is typed (`showSearch`). */
85
+ onSearch?: (value: string) => void;
79
86
  onSelect?: (value: Value, option?: SelectOption<Value>) => void;
80
87
  open?: boolean;
81
88
  optionRender?: (option: SelectOption<Value>, info: {
@@ -5,7 +5,7 @@ import { styles } from "./style.mjs";
5
5
  import { SwitchIcon, SwitchRoot, SwitchThumb } from "./atoms.mjs";
6
6
  import { memo } from "react";
7
7
  import { jsx, jsxs } from "react/jsx-runtime";
8
- import clsx from "clsx";
8
+ import clsx$1 from "clsx";
9
9
  import * as stylex from "@stylexjs/stylex";
10
10
  import { Loader2 } from "lucide-react";
11
11
  //#region src/Switch/Switch.tsx
@@ -16,7 +16,7 @@ const Switch = memo(({ autoFocus, checked, checkedChildren, className, className
16
16
  return /* @__PURE__ */ jsxs(SwitchRoot, {
17
17
  autoFocus,
18
18
  checked: resolvedChecked,
19
- className: clsx(className, rootClassName, classNames?.root),
19
+ className: clsx$1(className, rootClassName, classNames?.root),
20
20
  defaultChecked: resolvedDefaultChecked,
21
21
  disabled: isDisabled,
22
22
  id,
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.mjs","names":[],"sources":["../../src/Switch/Switch.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { Loader2 } from 'lucide-react';\nimport { memo } from 'react';\n\nimport Icon from '@/Icon';\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\n\nimport { SwitchIcon, SwitchRoot, SwitchThumb } from './atoms';\nimport { styles } from './style';\nimport type { SwitchProps } from './type';\n\nconst Switch = memo<SwitchProps>(\n ({\n autoFocus,\n checked,\n checkedChildren,\n className,\n classNames,\n defaultChecked,\n defaultValue,\n disabled,\n id,\n loading,\n name,\n onChange,\n onClick,\n ref,\n rootClassName,\n size = 'default',\n style,\n styles: customStyles,\n tabIndex,\n title,\n unCheckedChildren,\n value,\n }) => {\n const isDisabled = disabled || loading;\n const resolvedChecked = value ?? checked;\n const resolvedDefaultChecked = defaultValue ?? defaultChecked;\n\n return (\n <SwitchRoot\n autoFocus={autoFocus}\n checked={resolvedChecked}\n className={clsx(className, rootClassName, classNames?.root)}\n defaultChecked={resolvedDefaultChecked}\n disabled={isDisabled}\n id={id}\n name={name}\n ref={ref}\n size={size}\n style={{ ...style, ...customStyles?.root }}\n tabIndex={tabIndex}\n title={title}\n onCheckedChange={onChange}\n onClick={onClick}\n >\n {checkedChildren && (\n <SwitchIcon\n className={classNames?.content}\n position=\"left\"\n size={size}\n style={customStyles?.content}\n >\n {checkedChildren}\n </SwitchIcon>\n )}\n {unCheckedChildren && (\n <SwitchIcon\n className={classNames?.content}\n position=\"right\"\n size={size}\n style={customStyles?.content}\n >\n {unCheckedChildren}\n </SwitchIcon>\n )}\n <SwitchThumb className={classNames?.thumb} size={size} style={customStyles?.thumb}>\n {loading && (\n <Icon\n {...stylex.props(styles.loading)}\n icon={Loader2}\n size={size === 'small' ? 8 : 12}\n style={{ color: cssVar.colorPrimary }}\n />\n )}\n </SwitchThumb>\n </SwitchRoot>\n );\n },\n);\n\nSwitch.displayName = 'Switch';\n\nexport default Switch;\n"],"mappings":";;;;;;;;;;;AAWA,MAAM,SAAS,MAAmB,EAChC,WACA,SACA,iBACA,WACA,YACA,gBACA,cACA,UACA,IACA,SACA,MACA,UACA,SACA,KACA,eACA,OAAO,WACP,OACA,QAAQ,cACR,UACA,OACA,mBACA,YACI;CACJ,MAAM,aAAa,YAAY;CAC/B,MAAM,kBAAkB,SAAS;CACjC,MAAM,yBAAyB,gBAAgB;CAC/C,OAAO,qBAAC,YAAD;EAAuB;EAAW,SAAS;EAAiB,WAAW,KAAK,WAAW,eAAe,YAAY,IAAI;EAAG,gBAAgB;EAAwB,UAAU;EAAgB;EAAU;EAAW;EAAW;EAAM,OAAO;GAC7O,GAAG;GACH,GAAG,cAAc;EACnB;EAAa;EAAiB;EAAO,iBAAiB;EAAmB;EAHlE,UAAA;GAIA,mBAAmB,oBAAC,YAAD;IAAY,WAAW,YAAY;IAAS,UAAS;IAAa;IAAM,OAAO,cAAc;IAC5G,UAAA;GACS,CAAA;GACb,qBAAqB,oBAAC,YAAD;IAAY,WAAW,YAAY;IAAS,UAAS;IAAc;IAAM,OAAO,cAAc;IAC/G,UAAA;GACS,CAAA;GACd,oBAAC,aAAD;IAAa,WAAW,YAAY;IAAa;IAAM,OAAO,cAAc;IACzE,UAAA,WAAW,oBAAC,MAAD;KAAM,GAAI,OAAO,MAAM,OAAO,OAAO;KAAG,MAAM;KAAS,MAAM,SAAS,UAAU,IAAI;KAAI,OAAO,EAC7G,OAAO,OAAO,aAChB;IAAI,CAAA;GACW,CAAA;EACH;;AAClB,CAAC;AACD,OAAO,cAAc"}
1
+ {"version":3,"file":"Switch.mjs","names":["clsx"],"sources":["../../src/Switch/Switch.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { Loader2 } from 'lucide-react';\nimport { memo } from 'react';\n\nimport Icon from '@/Icon';\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\n\nimport { SwitchIcon, SwitchRoot, SwitchThumb } from './atoms';\nimport { styles } from './style';\nimport type { SwitchProps } from './type';\n\nconst Switch = memo<SwitchProps>(\n ({\n autoFocus,\n checked,\n checkedChildren,\n className,\n classNames,\n defaultChecked,\n defaultValue,\n disabled,\n id,\n loading,\n name,\n onChange,\n onClick,\n ref,\n rootClassName,\n size = 'default',\n style,\n styles: customStyles,\n tabIndex,\n title,\n unCheckedChildren,\n value,\n }) => {\n const isDisabled = disabled || loading;\n const resolvedChecked = value ?? checked;\n const resolvedDefaultChecked = defaultValue ?? defaultChecked;\n\n return (\n <SwitchRoot\n autoFocus={autoFocus}\n checked={resolvedChecked}\n className={clsx(className, rootClassName, classNames?.root)}\n defaultChecked={resolvedDefaultChecked}\n disabled={isDisabled}\n id={id}\n name={name}\n ref={ref}\n size={size}\n style={{ ...style, ...customStyles?.root }}\n tabIndex={tabIndex}\n title={title}\n onCheckedChange={onChange}\n onClick={onClick}\n >\n {checkedChildren && (\n <SwitchIcon\n className={classNames?.content}\n position=\"left\"\n size={size}\n style={customStyles?.content}\n >\n {checkedChildren}\n </SwitchIcon>\n )}\n {unCheckedChildren && (\n <SwitchIcon\n className={classNames?.content}\n position=\"right\"\n size={size}\n style={customStyles?.content}\n >\n {unCheckedChildren}\n </SwitchIcon>\n )}\n <SwitchThumb className={classNames?.thumb} size={size} style={customStyles?.thumb}>\n {loading && (\n <Icon\n {...stylex.props(styles.loading)}\n icon={Loader2}\n size={size === 'small' ? 8 : 12}\n style={{ color: cssVar.colorPrimary }}\n />\n )}\n </SwitchThumb>\n </SwitchRoot>\n );\n },\n);\n\nSwitch.displayName = 'Switch';\n\nexport default Switch;\n"],"mappings":";;;;;;;;;;;AAWA,MAAM,SAAS,MAAmB,EAChC,WACA,SACA,iBACA,WACA,YACA,gBACA,cACA,UACA,IACA,SACA,MACA,UACA,SACA,KACA,eACA,OAAO,WACP,OACA,QAAQ,cACR,UACA,OACA,mBACA,YACI;CACJ,MAAM,aAAa,YAAY;CAC/B,MAAM,kBAAkB,SAAS;CACjC,MAAM,yBAAyB,gBAAgB;CAC/C,OAAO,qBAAC,YAAD;EAAuB;EAAW,SAAS;EAAiB,WAAWA,OAAK,WAAW,eAAe,YAAY,IAAI;EAAG,gBAAgB;EAAwB,UAAU;EAAgB;EAAU;EAAW;EAAW;EAAM,OAAO;GAC7O,GAAG;GACH,GAAG,cAAc;EACnB;EAAa;EAAiB;EAAO,iBAAiB;EAAmB;EAHlE,UAAA;GAIA,mBAAmB,oBAAC,YAAD;IAAY,WAAW,YAAY;IAAS,UAAS;IAAa;IAAM,OAAO,cAAc;IAC5G,UAAA;GACS,CAAA;GACb,qBAAqB,oBAAC,YAAD;IAAY,WAAW,YAAY;IAAS,UAAS;IAAc;IAAM,OAAO,cAAc;IAC/G,UAAA;GACS,CAAA;GACd,oBAAC,aAAD;IAAa,WAAW,YAAY;IAAa;IAAM,OAAO,cAAc;IACzE,UAAA,WAAW,oBAAC,MAAD;KAAM,GAAI,OAAO,MAAM,OAAO,OAAO;KAAG,MAAM;KAAS,MAAM,SAAS,UAAU,IAAI;KAAI,OAAO,EAC7G,OAAO,OAAO,aAChB;IAAI,CAAA;GACW,CAAA;EACH;;AAClB,CAAC;AACD,OAAO,cAAc"}
@@ -6,7 +6,7 @@ import { switchMarker } from "./marker.stylex.mjs";
6
6
  import { styles } from "./style.mjs";
7
7
  import { createContext, use, useEffect, useMemo, useRef, useState } from "react";
8
8
  import { jsx } from "react/jsx-runtime";
9
- import clsx from "clsx";
9
+ import clsx$1 from "clsx";
10
10
  import * as stylex from "@stylexjs/stylex";
11
11
  import { Switch } from "@base-ui/react/switch";
12
12
  import { animate, motionValue } from "motion";
@@ -113,7 +113,7 @@ const SwitchRoot = ({ checked, className, defaultChecked, onCheckedChange, onCli
113
113
  focusRing.info,
114
114
  styles.root,
115
115
  rootSizeStyles[size]
116
- ], clsx("lobe-switch", className), style),
116
+ ], clsx$1("lobe-switch", className), style),
117
117
  onClick: handleClick,
118
118
  onKeyDown: handleKeyDown,
119
119
  onKeyUp: handleKeyUp,
@@ -1 +1 @@
1
- {"version":3,"file":"atoms.mjs","names":[],"sources":["../../src/Switch/atoms.tsx"],"sourcesContent":["'use client';\n\nimport './style.css';\n\nimport { Switch } from '@base-ui/react/switch';\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { animate, motionValue } from 'motion';\nimport type { CSSProperties, KeyboardEvent, MouseEvent, PointerEvent } from 'react';\nimport { createContext, use, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { useControlledState } from '@/hooks/useControlledState';\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { switchMarker } from './marker.stylex';\nimport { styles } from './style';\nimport type {\n SwitchChangeEventHandler,\n SwitchContextType,\n SwitchIconPosition,\n SwitchIconProps,\n SwitchRootProps,\n SwitchSize,\n SwitchThumbProps,\n} from './type';\n\nconst THUMB_METRICS: Record<\n SwitchSize,\n { checkedX: number; pressedCheckedX: number; pressedWidth: number; width: number }\n> = {\n default: { checkedX: 14, pressedCheckedX: 10, pressedWidth: 22, width: 18 },\n small: { checkedX: 12, pressedCheckedX: 8, pressedWidth: 16, width: 12 },\n};\n\nconst rootSizeStyles = { default: styles.rootDefault, small: styles.rootSmall };\nconst thumbSizeStyles = { default: styles.thumbDefault, small: styles.thumbSmall };\n\nconst THUMB_SPRING = { damping: 24, stiffness: 360, type: 'spring' as const };\n\nconst SwitchContext = createContext<SwitchContextType | null>(null);\n\nexport const useSwitchContext = () => {\n const context = use(SwitchContext);\n if (!context) {\n throw new Error('useSwitchContext must be used within a SwitchRoot');\n }\n return context;\n};\n\ntype SwitchRootInternalProps = Omit<SwitchRootProps, 'onCheckedChange' | 'onClick'> & {\n onCheckedChange?: SwitchChangeEventHandler;\n onClick?: SwitchChangeEventHandler;\n};\n\nexport const SwitchRoot = ({\n checked,\n className,\n defaultChecked,\n onCheckedChange,\n onClick,\n onKeyDown,\n onKeyUp,\n onPointerCancel,\n onPointerDown,\n onPointerLeave,\n onPointerUp,\n size = 'default',\n children,\n disabled,\n readOnly,\n required,\n inputRef,\n id,\n name,\n style,\n ...rest\n}: SwitchRootInternalProps) => {\n const [isPressed, setIsPressed] = useState(false);\n const lastEventRef = useRef<MouseEvent<HTMLButtonElement> | KeyboardEvent<HTMLButtonElement>>(\n null,\n );\n\n const [isChecked, setIsChecked] = useControlledState(defaultChecked ?? false, {\n defaultValue: defaultChecked,\n onChange: (value: boolean) => {\n if (lastEventRef.current) {\n onCheckedChange?.(value, lastEventRef.current);\n }\n },\n value: checked,\n });\n\n const contextValue = useMemo(\n () => ({\n isChecked: Boolean(isChecked),\n isPressed,\n setIsChecked: (value: boolean) => setIsChecked(value),\n setIsPressed,\n }),\n [isChecked, isPressed, setIsChecked],\n );\n\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n lastEventRef.current = event;\n onClick?.(!isChecked, event);\n };\n\n const isInteractive = !disabled && !readOnly;\n\n const handleKeyDown = (event: KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n lastEventRef.current = event;\n }\n if (event.key === ' ' && isInteractive) {\n setIsPressed(true);\n }\n onKeyDown?.(event);\n };\n\n const handleKeyUp = (event: KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === ' ') {\n setIsPressed(false);\n }\n onKeyUp?.(event);\n };\n\n const handlePointerDown = (event: PointerEvent<HTMLButtonElement>) => {\n if (isInteractive) {\n setIsPressed(true);\n }\n onPointerDown?.(event);\n };\n\n const handlePointerUp = (event: PointerEvent<HTMLButtonElement>) => {\n setIsPressed(false);\n onPointerUp?.(event);\n };\n\n const handlePointerCancel = (event: PointerEvent<HTMLButtonElement>) => {\n setIsPressed(false);\n onPointerCancel?.(event);\n };\n\n const handlePointerLeave = (event: PointerEvent<HTMLButtonElement>) => {\n setIsPressed(false);\n onPointerLeave?.(event);\n };\n\n return (\n <SwitchContext value={contextValue}>\n <Switch.Root\n nativeButton\n checked={isChecked}\n defaultChecked={defaultChecked}\n disabled={disabled}\n id={id}\n inputRef={inputRef}\n name={name}\n readOnly={readOnly}\n required={required}\n render={\n <button\n {...rest}\n {...styleProps(\n [switchMarker, focusRing.info, styles.root, rootSizeStyles[size]],\n clsx('lobe-switch', className),\n style,\n )}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n onPointerCancel={handlePointerCancel}\n onPointerDown={handlePointerDown}\n onPointerLeave={handlePointerLeave}\n onPointerUp={handlePointerUp}\n />\n }\n onCheckedChange={setIsChecked}\n >\n {children}\n </Switch.Root>\n </SwitchContext>\n );\n};\n\nSwitchRoot.displayName = 'SwitchRoot';\n\nexport const SwitchThumb = ({\n className,\n size = 'default',\n style,\n children,\n ...rest\n}: SwitchThumbProps) => {\n const { isChecked, isPressed } = useSwitchContext();\n const ref = useRef<HTMLSpanElement>(null);\n\n const metrics = THUMB_METRICS[size];\n const targetX = isChecked ? (isPressed ? metrics.pressedCheckedX : metrics.checkedX) : 0;\n const targetWidth = isPressed ? metrics.pressedWidth : metrics.width;\n\n const [values] = useState(() => ({\n width: motionValue(targetWidth),\n x: motionValue(targetX),\n }));\n\n // animated keys stay referentially stable so React never rewrites mid-flight inline values\n const [initialStyle] = useState<CSSProperties>(\n () => ({ '--switch-x': `${targetX}px`, 'width': targetWidth }) as CSSProperties,\n );\n\n useEffect(() => {\n const el = ref.current;\n if (!el) return;\n const unsubscribeX = values.x.on('change', (x) => {\n el.style.setProperty('--switch-x', `${x}px`);\n });\n const unsubscribeWidth = values.width.on('change', (width) => {\n el.style.setProperty('width', `${width}px`);\n });\n return () => {\n unsubscribeX();\n unsubscribeWidth();\n };\n }, [values]);\n\n useEffect(() => {\n const reduceMotion = window.matchMedia?.('(prefers-reduced-motion: reduce)').matches ?? false;\n const transition = reduceMotion ? { duration: 0 } : THUMB_SPRING;\n const animations = [\n animate(values.x, targetX, transition),\n animate(values.width, targetWidth, transition),\n ];\n return () => {\n for (const animation of animations) animation.stop();\n };\n }, [values, targetX, targetWidth]);\n\n return (\n <Switch.Thumb\n render={\n <span\n {...rest}\n ref={ref}\n {...styleProps([styles.thumb, thumbSizeStyles[size]], className, {\n ...initialStyle,\n ...style,\n })}\n >\n {children}\n </span>\n }\n />\n );\n};\n\nSwitchThumb.displayName = 'SwitchThumb';\n\nconst iconPositionStyles: Record<SwitchIconPosition, stylex.StyleXStyles> = {\n left: styles.iconLeft,\n right: styles.iconRight,\n thumb: styles.iconThumb,\n};\n\nexport const SwitchIcon = ({\n children,\n className,\n position,\n size: _size,\n style,\n ...rest\n}: SwitchIconProps) => {\n return (\n <span {...styleProps([styles.icon, iconPositionStyles[position]], className, style)} {...rest}>\n {children}\n </span>\n );\n};\n\nSwitchIcon.displayName = 'SwitchIcon';\n\nconst switchClassNames = Object.fromEntries(\n Object.entries(styles).map(([key, value]) => [key, stylex.props(value).className ?? '']),\n) as Record<keyof typeof styles, string>;\n\nexport const switchStyles = {\n ...switchClassNames,\n iconLeftSmall: switchClassNames.iconLeft,\n iconRightSmall: switchClassNames.iconRight,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"atoms.mjs","names":["clsx"],"sources":["../../src/Switch/atoms.tsx"],"sourcesContent":["'use client';\n\nimport './style.css';\n\nimport { Switch } from '@base-ui/react/switch';\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { animate, motionValue } from 'motion';\nimport type { CSSProperties, KeyboardEvent, MouseEvent, PointerEvent } from 'react';\nimport { createContext, use, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { useControlledState } from '@/hooks/useControlledState';\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { switchMarker } from './marker.stylex';\nimport { styles } from './style';\nimport type {\n SwitchChangeEventHandler,\n SwitchContextType,\n SwitchIconPosition,\n SwitchIconProps,\n SwitchRootProps,\n SwitchSize,\n SwitchThumbProps,\n} from './type';\n\nconst THUMB_METRICS: Record<\n SwitchSize,\n { checkedX: number; pressedCheckedX: number; pressedWidth: number; width: number }\n> = {\n default: { checkedX: 14, pressedCheckedX: 10, pressedWidth: 22, width: 18 },\n small: { checkedX: 12, pressedCheckedX: 8, pressedWidth: 16, width: 12 },\n};\n\nconst rootSizeStyles = { default: styles.rootDefault, small: styles.rootSmall };\nconst thumbSizeStyles = { default: styles.thumbDefault, small: styles.thumbSmall };\n\nconst THUMB_SPRING = { damping: 24, stiffness: 360, type: 'spring' as const };\n\nconst SwitchContext = createContext<SwitchContextType | null>(null);\n\nexport const useSwitchContext = () => {\n const context = use(SwitchContext);\n if (!context) {\n throw new Error('useSwitchContext must be used within a SwitchRoot');\n }\n return context;\n};\n\ntype SwitchRootInternalProps = Omit<SwitchRootProps, 'onCheckedChange' | 'onClick'> & {\n onCheckedChange?: SwitchChangeEventHandler;\n onClick?: SwitchChangeEventHandler;\n};\n\nexport const SwitchRoot = ({\n checked,\n className,\n defaultChecked,\n onCheckedChange,\n onClick,\n onKeyDown,\n onKeyUp,\n onPointerCancel,\n onPointerDown,\n onPointerLeave,\n onPointerUp,\n size = 'default',\n children,\n disabled,\n readOnly,\n required,\n inputRef,\n id,\n name,\n style,\n ...rest\n}: SwitchRootInternalProps) => {\n const [isPressed, setIsPressed] = useState(false);\n const lastEventRef = useRef<MouseEvent<HTMLButtonElement> | KeyboardEvent<HTMLButtonElement>>(\n null,\n );\n\n const [isChecked, setIsChecked] = useControlledState(defaultChecked ?? false, {\n defaultValue: defaultChecked,\n onChange: (value: boolean) => {\n if (lastEventRef.current) {\n onCheckedChange?.(value, lastEventRef.current);\n }\n },\n value: checked,\n });\n\n const contextValue = useMemo(\n () => ({\n isChecked: Boolean(isChecked),\n isPressed,\n setIsChecked: (value: boolean) => setIsChecked(value),\n setIsPressed,\n }),\n [isChecked, isPressed, setIsChecked],\n );\n\n const handleClick = (event: MouseEvent<HTMLButtonElement>) => {\n lastEventRef.current = event;\n onClick?.(!isChecked, event);\n };\n\n const isInteractive = !disabled && !readOnly;\n\n const handleKeyDown = (event: KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n lastEventRef.current = event;\n }\n if (event.key === ' ' && isInteractive) {\n setIsPressed(true);\n }\n onKeyDown?.(event);\n };\n\n const handleKeyUp = (event: KeyboardEvent<HTMLButtonElement>) => {\n if (event.key === ' ') {\n setIsPressed(false);\n }\n onKeyUp?.(event);\n };\n\n const handlePointerDown = (event: PointerEvent<HTMLButtonElement>) => {\n if (isInteractive) {\n setIsPressed(true);\n }\n onPointerDown?.(event);\n };\n\n const handlePointerUp = (event: PointerEvent<HTMLButtonElement>) => {\n setIsPressed(false);\n onPointerUp?.(event);\n };\n\n const handlePointerCancel = (event: PointerEvent<HTMLButtonElement>) => {\n setIsPressed(false);\n onPointerCancel?.(event);\n };\n\n const handlePointerLeave = (event: PointerEvent<HTMLButtonElement>) => {\n setIsPressed(false);\n onPointerLeave?.(event);\n };\n\n return (\n <SwitchContext value={contextValue}>\n <Switch.Root\n nativeButton\n checked={isChecked}\n defaultChecked={defaultChecked}\n disabled={disabled}\n id={id}\n inputRef={inputRef}\n name={name}\n readOnly={readOnly}\n required={required}\n render={\n <button\n {...rest}\n {...styleProps(\n [switchMarker, focusRing.info, styles.root, rootSizeStyles[size]],\n clsx('lobe-switch', className),\n style,\n )}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n onPointerCancel={handlePointerCancel}\n onPointerDown={handlePointerDown}\n onPointerLeave={handlePointerLeave}\n onPointerUp={handlePointerUp}\n />\n }\n onCheckedChange={setIsChecked}\n >\n {children}\n </Switch.Root>\n </SwitchContext>\n );\n};\n\nSwitchRoot.displayName = 'SwitchRoot';\n\nexport const SwitchThumb = ({\n className,\n size = 'default',\n style,\n children,\n ...rest\n}: SwitchThumbProps) => {\n const { isChecked, isPressed } = useSwitchContext();\n const ref = useRef<HTMLSpanElement>(null);\n\n const metrics = THUMB_METRICS[size];\n const targetX = isChecked ? (isPressed ? metrics.pressedCheckedX : metrics.checkedX) : 0;\n const targetWidth = isPressed ? metrics.pressedWidth : metrics.width;\n\n const [values] = useState(() => ({\n width: motionValue(targetWidth),\n x: motionValue(targetX),\n }));\n\n // animated keys stay referentially stable so React never rewrites mid-flight inline values\n const [initialStyle] = useState<CSSProperties>(\n () => ({ '--switch-x': `${targetX}px`, 'width': targetWidth }) as CSSProperties,\n );\n\n useEffect(() => {\n const el = ref.current;\n if (!el) return;\n const unsubscribeX = values.x.on('change', (x) => {\n el.style.setProperty('--switch-x', `${x}px`);\n });\n const unsubscribeWidth = values.width.on('change', (width) => {\n el.style.setProperty('width', `${width}px`);\n });\n return () => {\n unsubscribeX();\n unsubscribeWidth();\n };\n }, [values]);\n\n useEffect(() => {\n const reduceMotion = window.matchMedia?.('(prefers-reduced-motion: reduce)').matches ?? false;\n const transition = reduceMotion ? { duration: 0 } : THUMB_SPRING;\n const animations = [\n animate(values.x, targetX, transition),\n animate(values.width, targetWidth, transition),\n ];\n return () => {\n for (const animation of animations) animation.stop();\n };\n }, [values, targetX, targetWidth]);\n\n return (\n <Switch.Thumb\n render={\n <span\n {...rest}\n ref={ref}\n {...styleProps([styles.thumb, thumbSizeStyles[size]], className, {\n ...initialStyle,\n ...style,\n })}\n >\n {children}\n </span>\n }\n />\n );\n};\n\nSwitchThumb.displayName = 'SwitchThumb';\n\nconst iconPositionStyles: Record<SwitchIconPosition, stylex.StyleXStyles> = {\n left: styles.iconLeft,\n right: styles.iconRight,\n thumb: styles.iconThumb,\n};\n\nexport const SwitchIcon = ({\n children,\n className,\n position,\n size: _size,\n style,\n ...rest\n}: SwitchIconProps) => {\n return (\n <span {...styleProps([styles.icon, iconPositionStyles[position]], className, style)} {...rest}>\n {children}\n </span>\n );\n};\n\nSwitchIcon.displayName = 'SwitchIcon';\n\nconst switchClassNames = Object.fromEntries(\n Object.entries(styles).map(([key, value]) => [key, stylex.props(value).className ?? '']),\n) as Record<keyof typeof styles, string>;\n\nexport const switchStyles = {\n ...switchClassNames,\n iconLeftSmall: switchClassNames.iconLeft,\n iconRightSmall: switchClassNames.iconRight,\n};\n"],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { TableColumnType } from "./type.mjs";
2
+ import { ReactNode } from "react";
3
+ //#region src/Table/Column.d.ts
4
+ export type TableColumnProps<T> = TableColumnType<T>;
5
+ declare const Column: <T>(_props: TableColumnProps<T>) => ReactNode;
6
+ //#endregion
7
+ export { Column as default };
8
+ //# sourceMappingURL=Column.d.mts.map
@@ -0,0 +1,6 @@
1
+ //#region src/Table/Column.tsx
2
+ const Column = (_props) => null;
3
+ //#endregion
4
+ export { Column as default };
5
+
6
+ //# sourceMappingURL=Column.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Column.mjs","names":[],"sources":["../../src/Table/Column.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport type { TableColumnType } from './type';\n\nexport type TableColumnProps<T> = TableColumnType<T>;\n\nconst Column = <T,>(_props: TableColumnProps<T>): ReactNode => null;\n\nexport default Column;\n"],"mappings":";AAMA,MAAM,UAAc,WAA2C"}
@@ -0,0 +1,11 @@
1
+ import { TableColumnType } from "./type.mjs";
2
+ import { ReactNode } from "react";
3
+ //#region src/Table/ColumnGroup.d.ts
4
+ export interface TableColumnGroupProps<T> extends Omit<TableColumnType<T>, 'dataIndex'> {
5
+ /** `Table.Column` / `Table.ColumnGroup` elements rendered under this header. */
6
+ children: ReactNode;
7
+ }
8
+ declare const ColumnGroup: <T>(_props: TableColumnGroupProps<T>) => ReactNode;
9
+ //#endregion
10
+ export { ColumnGroup as default };
11
+ //# sourceMappingURL=ColumnGroup.d.mts.map
@@ -0,0 +1,6 @@
1
+ //#region src/Table/ColumnGroup.tsx
2
+ const ColumnGroup = (_props) => null;
3
+ //#endregion
4
+ export { ColumnGroup as default };
5
+
6
+ //# sourceMappingURL=ColumnGroup.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnGroup.mjs","names":[],"sources":["../../src/Table/ColumnGroup.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport type { TableColumnType } from './type';\n\nexport interface TableColumnGroupProps<T> extends Omit<TableColumnType<T>, 'dataIndex'> {\n /** `Table.Column` / `Table.ColumnGroup` elements rendered under this header. */\n children: ReactNode;\n}\n\nconst ColumnGroup = <T,>(_props: TableColumnGroupProps<T>): ReactNode => null;\n\nexport default ColumnGroup;\n"],"mappings":";AASA,MAAM,eAAmB,WAAgD"}
@@ -1,10 +1,24 @@
1
1
  import { TableProps } from "./type.mjs";
2
+ import Column from "./Column.mjs";
3
+ import ColumnGroup from "./ColumnGroup.mjs";
4
+ import "./internal.mjs";
5
+ import { EXPAND_COLUMN } from "./pipeline/columnUtils.mjs";
6
+ import { SELECTION_ALL, SELECTION_COLUMN, SELECTION_INVERT, SELECTION_NONE } from "./pipeline/selectionUtils.mjs";
7
+ import { TableSummary } from "./render/Summary.mjs";
2
8
  import { ReactNode } from "react";
3
- import { RowData } from "@tanstack/react-table";
4
9
  //#region src/Table/Table.d.ts
5
- declare const Table: (<T extends RowData>(props: TableProps<T>) => ReactNode) & {
10
+ type TableComponent = (<T>(props: TableProps<T>) => ReactNode) & {
11
+ Column: typeof Column;
12
+ ColumnGroup: typeof ColumnGroup;
6
13
  displayName?: string;
14
+ EXPAND_COLUMN: typeof EXPAND_COLUMN;
15
+ SELECTION_ALL: typeof SELECTION_ALL;
16
+ SELECTION_COLUMN: typeof SELECTION_COLUMN;
17
+ SELECTION_INVERT: typeof SELECTION_INVERT;
18
+ SELECTION_NONE: typeof SELECTION_NONE;
19
+ Summary: typeof TableSummary;
7
20
  };
21
+ declare const Table: TableComponent;
8
22
  //#endregion
9
23
  export { Table as default };
10
24
  //# sourceMappingURL=Table.d.mts.map
@@ -1,135 +1,166 @@
1
1
  "use client";
2
- import { styleProps } from "../styles/stylex/props.mjs";
3
- import { useEventCallback } from "../hooks/useEventCallback.mjs";
2
+ import { useTranslation } from "../i18n/useTranslation.mjs";
3
+ import Empty from "../Empty/Empty.mjs";
4
4
  import Spin from "../Spin/Spin.mjs";
5
- import Pagination from "../Pagination/Pagination.mjs";
6
- import { tableFeatureSet } from "./features.mjs";
5
+ import { PREFIX_CLS } from "./constants.mjs";
6
+ import table_default from "../i18n/resources/en/table.mjs";
7
+ import Column from "./Column.mjs";
8
+ import ColumnGroup from "./ColumnGroup.mjs";
9
+ import { getStickyOffsets } from "./engine/fixed.mjs";
10
+ import { SELECTION_ALL, SELECTION_COLUMN, SELECTION_INVERT, SELECTION_NONE } from "./pipeline/selectionUtils.mjs";
11
+ import { EXPAND_COLUMN } from "./pipeline/columnUtils.mjs";
12
+ import { HeaderContext, SelectionContext, TableViewContext } from "./render/context.mjs";
7
13
  import { styles } from "./style.mjs";
8
- import FilterMenu from "./FilterMenu.mjs";
9
- import { getFixedOffsets } from "./fixedOffsets.mjs";
10
- import { toColumnDefs } from "./toColumnDefs.mjs";
11
- import TableBody from "./TableBody.mjs";
12
- import TableHead from "./TableHead.mjs";
13
- import { useTableState } from "./useTableState.mjs";
14
- import { memo, useEffect, useMemo } from "react";
14
+ import FixedFrost from "./render/FixedFrost.mjs";
15
+ import TableLoadingSkeleton from "./render/LoadingSkeleton.mjs";
16
+ import { renderPaginationBars } from "./render/PaginationBar.mjs";
17
+ import { TableSummary } from "./render/Summary.mjs";
18
+ import { resolveSticky, toTableRef } from "./render/tableHelpers.mjs";
19
+ import { TableStoreProvider } from "./store/hooks.mjs";
20
+ import TableView from "./render/TableView.mjs";
21
+ import { useViewContexts } from "./render/useViewContexts.mjs";
22
+ import { useStableSemantic } from "./semantic.mjs";
23
+ import { useTableController } from "./useTableController.mjs";
24
+ import { isValidElement, memo, useCallback, useImperativeHandle, useMemo, useRef } from "react";
15
25
  import { jsx, jsxs } from "react/jsx-runtime";
26
+ import clsx$1 from "clsx";
16
27
  import * as stylex from "@stylexjs/stylex";
17
- import { useTable } from "@tanstack/react-table";
28
+ import { Inbox } from "lucide-react";
18
29
  //#region src/Table/Table.tsx
19
- const EMPTY_DATA = [];
20
30
  const TableInner = (props) => {
21
- const { bordered = false, className, classNames, columns, dataSource = EMPTY_DATA, emptyText, loading = false, onChange, onRow, pagination, ref, renderFilter, rowClassName, rowKey, scroll, size = "middle", style, styles: customStyles, tableLayout } = props;
22
- const state = useTableState({
23
- columns,
24
- onChange,
25
- pagination
31
+ const { className, classNames, footer, internalRef, loading = false, onScroll, pagination, ref, rootClassName, rowHoverable = true, rowSelection, scroll, showHeader = true, size = "middle", sticky, style, styles: customStyles, tableLayout, title, variant = "borderless", virtual } = props;
32
+ const controller = useTableController(props);
33
+ const { model, rows, state } = controller;
34
+ const { t } = useTranslation(table_default);
35
+ const { classNames: semanticClassNames, styles: semanticStyles } = useStableSemantic(classNames, customStyles, props);
36
+ const rootRef = useRef(null);
37
+ const { measureRef } = controller;
38
+ const setRootRef = useCallback((element) => {
39
+ rootRef.current = element;
40
+ return measureRef(element);
41
+ }, [measureRef]);
42
+ useImperativeHandle(ref, () => toTableRef(rootRef.current, controller.scrollTo), [controller.scrollTo]);
43
+ useImperativeHandle(internalRef, () => ({
44
+ clearSelection: controller.selection.actions.clear,
45
+ store: controller.store
46
+ }), [controller.selection.actions.clear, controller.store]);
47
+ const { headerValue, selectionValue, viewValue } = useViewContexts({
48
+ controller,
49
+ props,
50
+ semanticClassNames,
51
+ semanticStyles
26
52
  });
27
- const columnDefs = useMemo(() => toColumnDefs(columns), [columns]);
28
- const fixedOffsets = useMemo(() => getFixedOffsets(columns), [columns]);
29
- const table = useTable({
30
- columns: columnDefs,
31
- data: dataSource,
32
- enableMultiSort: false,
33
- enableSortingRemoval: true,
34
- features: tableFeatureSet,
35
- getRowId: (record) => String(typeof rowKey === "function" ? rowKey(record) : record[rowKey]),
36
- manualSorting: state.manualSorting,
37
- onColumnFiltersChange: state.onColumnFiltersChange,
38
- onSortingChange: state.onSortingChange,
39
- state: {
40
- columnFilters: state.columnFilters,
41
- sorting: state.sorting
42
- }
43
- });
44
- const allRows = table.getRowModel().rows;
45
- const { page } = state;
46
- const clientPaginated = pagination !== false && state.config?.total === void 0;
47
- const total = state.config?.total ?? allRows.length;
48
- const pageCount = Math.max(1, Math.ceil(total / page.pageSize));
49
- const pageIndex = Math.min(page.pageIndex, pageCount - 1);
50
- const rows = clientPaginated ? allRows.slice(pageIndex * page.pageSize, (pageIndex + 1) * page.pageSize) : allRows;
51
- const syncClampedPage = useEventCallback(() => state.clampPage(pageIndex));
52
- useEffect(() => {
53
- if (clientPaginated && pageIndex !== page.pageIndex) syncClampedPage();
54
- }, [
55
- clientPaginated,
56
- pageIndex,
57
- page.pageIndex,
58
- syncClampedPage
59
- ]);
60
- const minWidth = scroll?.x === "max-content" ? "100%" : scroll?.x;
61
- return /* @__PURE__ */ jsxs("div", {
62
- ref,
63
- ...styleProps(styles.root, className, style),
64
- children: [/* @__PURE__ */ jsxs("div", {
65
- "data-table-wrapper": "",
66
- ...styleProps([styles.wrapper, bordered && styles.bordered], classNames?.wrapper, {
67
- maxHeight: scroll?.y,
68
- ...customStyles?.wrapper
69
- }),
70
- children: [/* @__PURE__ */ jsxs("table", {
71
- ...styleProps(styles.table, void 0, {
72
- minWidth,
73
- tableLayout,
74
- width: scroll?.x === "max-content" ? "max-content" : "100%"
75
- }),
76
- children: [/* @__PURE__ */ jsx(TableHead, {
77
- bordered,
78
- classNames,
79
- columnIds: state.columnIds,
80
- columns,
81
- fixedOffsets,
82
- getColumn: (id) => table.getColumn(id),
83
- size,
84
- styles: customStyles,
85
- renderFilter: (column, id) => {
86
- if (renderFilter) return renderFilter(column, id, table);
87
- const tableColumn = table.getColumn(id);
88
- const value = tableColumn?.getFilterValue() ?? [];
89
- return /* @__PURE__ */ jsx(FilterMenu, {
90
- filters: column.filters ?? [],
91
- label: typeof column.title === "string" ? column.title : id,
92
- value,
93
- onChange: (next) => tableColumn?.setFilterValue(next.length > 0 ? next : void 0)
94
- });
95
- }
96
- }), /* @__PURE__ */ jsx(TableBody, {
97
- bordered,
98
- classNames,
99
- columnIds: state.columnIds,
100
- columns,
101
- emptyText,
102
- fixedOffsets,
103
- loading,
104
- rowClassName,
105
- rows,
106
- size,
107
- styles: customStyles,
108
- onRow
109
- })]
110
- }), loading && rows.length > 0 && /* @__PURE__ */ jsx("div", {
111
- "data-table-loading": "",
112
- ...stylex.props(styles.loading),
113
- children: /* @__PURE__ */ jsx(Spin, {})
114
- })]
115
- }), pagination !== false && total > 0 && /* @__PURE__ */ jsx("div", {
116
- ...stylex.props(styles.pagination),
117
- children: /* @__PURE__ */ jsx(Pagination, {
118
- current: pageIndex + 1,
119
- pageSize: page.pageSize,
120
- pageSizeOptions: state.config?.pageSizeOptions,
121
- showSizeChanger: state.config?.showSizeChanger,
122
- total,
123
- onChange: (next, pageSize) => state.onPaginationChange({
124
- pageIndex: next - 1,
125
- pageSize
53
+ const leafColumns = model.leafColumns;
54
+ const { spinning: isLoading = true, tip, variant: spinVariant = "network", ...spinRest } = typeof loading === "object" ? loading : { spinning: loading };
55
+ const customEmpty = props.locale?.emptyText;
56
+ const emptyNode = isLoading ? /* @__PURE__ */ jsx(TableLoadingSkeleton, {
57
+ columns: controller.columns,
58
+ expandColumn: Boolean(controller.expandType),
59
+ rows: pagination === false ? 5 : Math.min(5, state.page.pageSize),
60
+ screens: controller.screens,
61
+ selectionColumn: Boolean(rowSelection),
62
+ size
63
+ }) : customEmpty === void 0 ? /* @__PURE__ */ jsx(Empty, {
64
+ description: t("table.emptyText"),
65
+ icon: Inbox,
66
+ imageSize: 40
67
+ }) : typeof customEmpty === "function" ? customEmpty() : customEmpty;
68
+ const stickyConfig = resolveSticky(sticky);
69
+ const { summaryNode } = controller;
70
+ const summaryFixed = isValidElement(summaryNode) && summaryNode.type === TableSummary ? summaryNode.props.fixed : void 0;
71
+ const fixFooter = controller.fixHeader || stickyConfig.isSticky || virtual ? virtual && summaryNode ? summaryFixed ?? "bottom" : summaryFixed ?? false : false;
72
+ const hasFixedColumn = leafColumns.some((leaf) => leaf.fixed);
73
+ const mergedTableLayout = tableLayout ?? (hasFixedColumn ? scroll?.x === "max-content" ? "auto" : "fixed" : controller.fixHeader || stickyConfig.isSticky || leafColumns.some((leaf) => leaf.column.source.column.ellipsis) ? "fixed" : "auto");
74
+ const offsets = useMemo(() => getStickyOffsets(controller.columnWidths, leafColumns), [controller.columnWidths, leafColumns]);
75
+ const pager = state.config ? renderPaginationBars({
76
+ classNames: semanticClassNames.pagination,
77
+ config: state.config,
78
+ onChange: state.onPaginationChange,
79
+ page: state.page,
80
+ size: props.size,
81
+ styles: semanticStyles.pagination,
82
+ total: state.total
83
+ }) : {
84
+ bottom: null,
85
+ top: null
86
+ };
87
+ const rootStyle = {
88
+ ...semanticStyles.root,
89
+ ...style
90
+ };
91
+ return /* @__PURE__ */ jsx(TableStoreProvider, {
92
+ value: controller.store,
93
+ children: /* @__PURE__ */ jsx(TableViewContext, {
94
+ value: viewValue,
95
+ children: /* @__PURE__ */ jsx(SelectionContext, {
96
+ value: selectionValue,
97
+ children: /* @__PURE__ */ jsx(HeaderContext, {
98
+ value: headerValue,
99
+ children: /* @__PURE__ */ jsxs("div", {
100
+ ref: setRootRef,
101
+ style: rootStyle,
102
+ className: clsx$1(stylex.props(styles.root).className, `${PREFIX_CLS}-wrapper`, rootClassName, className, semanticClassNames.root),
103
+ children: [
104
+ pager.top,
105
+ /* @__PURE__ */ jsxs("div", {
106
+ className: stylex.props(styles.spinContainer).className,
107
+ "data-table-wrapper": "",
108
+ children: [
109
+ /* @__PURE__ */ jsx(TableView, {
110
+ bodyRef: controller.bodyRef,
111
+ colWidths: controller.columnWidths,
112
+ emptyNode,
113
+ fixFooter,
114
+ fixHeader: controller.fixHeader,
115
+ footer: footer ? footer(rows) : void 0,
116
+ grouped: controller.grouped,
117
+ headerRows: model.headerRows,
118
+ hoverable: rowHoverable,
119
+ offsets,
120
+ rows: model.rows,
121
+ scrollX: scroll?.x,
122
+ scrollY: scroll?.y,
123
+ showHeader,
124
+ size,
125
+ sticky: stickyConfig,
126
+ summaryNode,
127
+ tableLayout: mergedTableLayout,
128
+ title: title ? title(rows) : void 0,
129
+ variant,
130
+ virtual: controller.virtualInput,
131
+ virtualScrollRef: controller.virtualScrollRef,
132
+ onColumnResize: controller.onColumnResize,
133
+ onScroll
134
+ }),
135
+ isLoading && /* @__PURE__ */ jsxs("div", {
136
+ ...stylex.props(styles.loading),
137
+ "data-table-loading": "",
138
+ children: [/* @__PURE__ */ jsx(Spin, {
139
+ ...spinRest,
140
+ variant: spinVariant
141
+ }), tip]
142
+ }),
143
+ /* @__PURE__ */ jsx(FixedFrost, { rootRef })
144
+ ]
145
+ }),
146
+ pager.bottom
147
+ ]
148
+ })
126
149
  })
127
150
  })
128
- })]
151
+ })
129
152
  });
130
153
  };
131
154
  const Table = memo(TableInner);
132
155
  Table.displayName = "Table";
156
+ Table.Column = Column;
157
+ Table.ColumnGroup = ColumnGroup;
158
+ Table.EXPAND_COLUMN = EXPAND_COLUMN;
159
+ Table.SELECTION_COLUMN = SELECTION_COLUMN;
160
+ Table.SELECTION_ALL = SELECTION_ALL;
161
+ Table.SELECTION_INVERT = SELECTION_INVERT;
162
+ Table.SELECTION_NONE = SELECTION_NONE;
163
+ Table.Summary = TableSummary;
133
164
  //#endregion
134
165
  export { TableInner, Table as default };
135
166
 
@@ -1 +1 @@
1
- {"version":3,"file":"Table.mjs","names":[],"sources":["../../src/Table/Table.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { type RowData, useTable } from '@tanstack/react-table';\nimport { type Key, memo, type ReactNode, useEffect, useMemo } from 'react';\n\nimport { useEventCallback } from '@/hooks/useEventCallback';\nimport Pagination from '@/Pagination';\nimport Spin from '@/Spin';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { tableFeatureSet } from './features';\nimport FilterMenu from './FilterMenu';\nimport { getFixedOffsets } from './fixedOffsets';\nimport { styles } from './style';\nimport TableBody from './TableBody';\nimport TableHead from './TableHead';\nimport { toColumnDefs } from './toColumnDefs';\nimport type { FilterValue, TableColumn, TableProps } from './type';\nimport { useTableState } from './useTableState';\n\nconst EMPTY_DATA: any[] = [];\n\nexport interface TableInternalProps<T> extends TableProps<T> {\n renderFilter?: (column: TableColumn<T>, id: string, table: any) => ReactNode;\n}\n\nconst TableInner = <T extends RowData>(props: TableInternalProps<T>) => {\n const {\n bordered = false,\n className,\n classNames,\n columns,\n dataSource = EMPTY_DATA as T[],\n emptyText,\n loading = false,\n onChange,\n onRow,\n pagination,\n ref,\n renderFilter,\n rowClassName,\n rowKey,\n scroll,\n size = 'middle',\n style,\n styles: customStyles,\n tableLayout,\n } = props;\n\n const state = useTableState({ columns, onChange, pagination });\n const columnDefs = useMemo(() => toColumnDefs(columns), [columns]);\n const fixedOffsets = useMemo(() => getFixedOffsets(columns), [columns]);\n\n const table = useTable({\n columns: columnDefs,\n data: dataSource,\n enableMultiSort: false,\n enableSortingRemoval: true,\n features: tableFeatureSet,\n getRowId: (record: T) =>\n String(typeof rowKey === 'function' ? rowKey(record) : (record[rowKey] as Key)),\n manualSorting: state.manualSorting,\n onColumnFiltersChange: state.onColumnFiltersChange,\n onSortingChange: state.onSortingChange,\n state: {\n columnFilters: state.columnFilters,\n sorting: state.sorting,\n },\n } as any);\n\n const allRows = table.getRowModel().rows as unknown as { id: Key; original: T }[];\n const { page } = state;\n const clientPaginated = pagination !== false && state.config?.total === undefined;\n const total = state.config?.total ?? allRows.length;\n const pageCount = Math.max(1, Math.ceil(total / page.pageSize));\n const pageIndex = Math.min(page.pageIndex, pageCount - 1);\n const rows = clientPaginated\n ? allRows.slice(pageIndex * page.pageSize, (pageIndex + 1) * page.pageSize)\n : allRows;\n\n const syncClampedPage = useEventCallback(() => state.clampPage(pageIndex));\n\n useEffect(() => {\n if (clientPaginated && pageIndex !== page.pageIndex) syncClampedPage();\n }, [clientPaginated, pageIndex, page.pageIndex, syncClampedPage]);\n\n const minWidth = scroll?.x === 'max-content' ? '100%' : scroll?.x;\n\n return (\n <div ref={ref} {...styleProps(styles.root, className, style)}>\n <div\n data-table-wrapper=\"\"\n {...styleProps([styles.wrapper, bordered && styles.bordered], classNames?.wrapper, {\n maxHeight: scroll?.y,\n ...customStyles?.wrapper,\n })}\n >\n <table\n {...styleProps(styles.table, undefined, {\n minWidth,\n tableLayout,\n width: scroll?.x === 'max-content' ? 'max-content' : '100%',\n })}\n >\n <TableHead\n bordered={bordered}\n classNames={classNames}\n columnIds={state.columnIds}\n columns={columns}\n fixedOffsets={fixedOffsets}\n getColumn={(id) => table.getColumn(id) as any}\n size={size}\n styles={customStyles}\n renderFilter={(column, id) => {\n if (renderFilter) return renderFilter(column, id, table);\n const tableColumn = table.getColumn(id) as any;\n const value = (tableColumn?.getFilterValue() as FilterValue[] | undefined) ?? [];\n return (\n <FilterMenu\n filters={column.filters ?? []}\n label={typeof column.title === 'string' ? column.title : id}\n value={value}\n onChange={(next) =>\n tableColumn?.setFilterValue(next.length > 0 ? next : undefined)\n }\n />\n );\n }}\n />\n <TableBody\n bordered={bordered}\n classNames={classNames}\n columnIds={state.columnIds}\n columns={columns}\n emptyText={emptyText}\n fixedOffsets={fixedOffsets}\n loading={loading}\n rowClassName={rowClassName}\n rows={rows}\n size={size}\n styles={customStyles}\n onRow={onRow}\n />\n </table>\n {loading && rows.length > 0 && (\n <div data-table-loading=\"\" {...stylex.props(styles.loading)}>\n <Spin />\n </div>\n )}\n </div>\n {pagination !== false && total > 0 && (\n <div {...stylex.props(styles.pagination)}>\n <Pagination\n current={pageIndex + 1}\n pageSize={page.pageSize}\n pageSizeOptions={state.config?.pageSizeOptions}\n showSizeChanger={state.config?.showSizeChanger}\n total={total}\n onChange={(next, pageSize) =>\n state.onPaginationChange({ pageIndex: next - 1, pageSize })\n }\n />\n </div>\n )}\n </div>\n );\n};\n\nconst Table = memo(TableInner) as unknown as (<T extends RowData>(\n props: TableProps<T>,\n) => ReactNode) & {\n displayName?: string;\n};\n\nTable.displayName = 'Table';\n\nexport { TableInner };\n\nexport default Table;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Table.mjs","names":["tableMessages","clsx"],"sources":["../../src/Table/Table.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { Inbox } from 'lucide-react';\nimport {\n type CSSProperties,\n isValidElement,\n memo,\n type ReactNode,\n type Ref,\n useCallback,\n useImperativeHandle,\n useMemo,\n useRef,\n} from 'react';\n\nimport Empty from '@/Empty';\nimport tableMessages from '@/i18n/resources/en/table';\nimport { useTranslation } from '@/i18n/useTranslation';\nimport Spin from '@/Spin';\n\nimport Column from './Column';\nimport ColumnGroup from './ColumnGroup';\nimport { PREFIX_CLS } from './constants';\nimport { getStickyOffsets } from './engine/fixed';\nimport type { TableInternalProps } from './internal';\nimport { EXPAND_COLUMN } from './pipeline/columnUtils';\nimport {\n SELECTION_ALL,\n SELECTION_COLUMN,\n SELECTION_INVERT,\n SELECTION_NONE,\n} from './pipeline/selectionUtils';\nimport { HeaderContext, SelectionContext, TableViewContext } from './render/context';\nimport FixedFrost from './render/FixedFrost';\nimport TableLoadingSkeleton from './render/LoadingSkeleton';\nimport { renderPaginationBars } from './render/PaginationBar';\nimport { TableSummary } from './render/Summary';\nimport { resolveSticky, toTableRef } from './render/tableHelpers';\nimport TableView from './render/TableView';\nimport { useViewContexts } from './render/useViewContexts';\nimport { useStableSemantic } from './semantic';\nimport { TableStoreProvider } from './store/hooks';\nimport { styles } from './style';\nimport type { TableProps, TableRef } from './type';\nimport { useTableController } from './useTableController';\n\nconst TableInner = <T,>(props: TableInternalProps<T>) => {\n const {\n className,\n classNames,\n footer,\n internalRef,\n loading = false,\n onScroll,\n pagination,\n ref,\n rootClassName,\n rowHoverable = true,\n rowSelection,\n scroll,\n showHeader = true,\n size = 'middle',\n sticky,\n style,\n styles: customStyles,\n tableLayout,\n title,\n variant = 'borderless',\n virtual,\n } = props;\n\n const controller = useTableController(props);\n const { model, rows, state } = controller;\n const { t } = useTranslation(tableMessages);\n const { classNames: semanticClassNames, styles: semanticStyles } = useStableSemantic(\n classNames,\n customStyles,\n props,\n );\n\n const rootRef = useRef<HTMLDivElement>(null);\n const { measureRef } = controller;\n const setRootRef = useCallback(\n (element: HTMLDivElement | null) => {\n rootRef.current = element;\n return measureRef(element);\n },\n [measureRef],\n );\n useImperativeHandle(\n ref as Ref<TableRef>,\n () => toTableRef(rootRef.current!, controller.scrollTo),\n [controller.scrollTo],\n );\n useImperativeHandle(\n internalRef,\n () => ({ clearSelection: controller.selection.actions.clear, store: controller.store }),\n [controller.selection.actions.clear, controller.store],\n );\n\n const { headerValue, selectionValue, viewValue } = useViewContexts<T>({\n controller,\n props,\n semanticClassNames,\n semanticStyles,\n });\n const leafColumns = model.leafColumns;\n\n const {\n spinning: isLoading = true,\n tip,\n variant: spinVariant = 'network',\n ...spinRest\n } = typeof loading === 'object' ? loading : { spinning: loading };\n\n const customEmpty = props.locale?.emptyText;\n const emptyNode = isLoading ? (\n <TableLoadingSkeleton\n columns={controller.columns}\n expandColumn={Boolean(controller.expandType)}\n rows={pagination === false ? 5 : Math.min(5, state.page.pageSize)}\n screens={controller.screens}\n selectionColumn={Boolean(rowSelection)}\n size={size}\n />\n ) : customEmpty === undefined ? (\n <Empty description={t('table.emptyText')} icon={Inbox} imageSize={40} />\n ) : typeof customEmpty === 'function' ? (\n customEmpty()\n ) : (\n customEmpty\n );\n\n const stickyConfig = resolveSticky(sticky);\n const { summaryNode } = controller;\n const summaryFixed =\n isValidElement<{ fixed?: boolean | 'top' | 'bottom' }>(summaryNode) &&\n summaryNode.type === TableSummary\n ? summaryNode.props.fixed\n : undefined;\n const fixFooter =\n controller.fixHeader || stickyConfig.isSticky || virtual\n ? virtual && summaryNode\n ? (summaryFixed ?? 'bottom')\n : (summaryFixed ?? false)\n : false;\n\n const hasFixedColumn = leafColumns.some((leaf) => leaf.fixed);\n const mergedTableLayout =\n tableLayout ??\n (hasFixedColumn\n ? scroll?.x === 'max-content'\n ? 'auto'\n : 'fixed'\n : controller.fixHeader ||\n stickyConfig.isSticky ||\n leafColumns.some((leaf) => (leaf.column.source.column as { ellipsis?: unknown }).ellipsis)\n ? 'fixed'\n : 'auto');\n\n const offsets = useMemo(\n () => getStickyOffsets(controller.columnWidths, leafColumns),\n [controller.columnWidths, leafColumns],\n );\n\n const pager = state.config\n ? renderPaginationBars({\n classNames: semanticClassNames.pagination,\n config: state.config,\n onChange: state.onPaginationChange,\n page: state.page,\n size: props.size,\n styles: semanticStyles.pagination,\n total: state.total,\n })\n : { bottom: null, top: null };\n\n const rootStyle: CSSProperties = { ...semanticStyles.root, ...style };\n\n return (\n <TableStoreProvider value={controller.store}>\n <TableViewContext value={viewValue}>\n <SelectionContext value={selectionValue}>\n <HeaderContext value={headerValue}>\n <div\n ref={setRootRef}\n style={rootStyle}\n className={clsx(\n stylex.props(styles.root).className,\n `${PREFIX_CLS}-wrapper`,\n rootClassName,\n className,\n semanticClassNames.root,\n )}\n >\n {pager.top}\n <div className={stylex.props(styles.spinContainer).className} data-table-wrapper=\"\">\n <TableView<T>\n bodyRef={controller.bodyRef}\n colWidths={controller.columnWidths}\n emptyNode={emptyNode}\n fixFooter={fixFooter}\n fixHeader={controller.fixHeader}\n footer={footer ? footer(rows) : undefined}\n grouped={controller.grouped}\n headerRows={model.headerRows}\n hoverable={rowHoverable}\n offsets={offsets}\n rows={model.rows}\n scrollX={scroll?.x}\n scrollY={scroll?.y}\n showHeader={showHeader}\n size={size}\n sticky={stickyConfig}\n summaryNode={summaryNode}\n tableLayout={mergedTableLayout}\n title={title ? title(rows) : undefined}\n variant={variant}\n virtual={controller.virtualInput}\n virtualScrollRef={controller.virtualScrollRef}\n onColumnResize={controller.onColumnResize}\n onScroll={onScroll}\n />\n {isLoading && (\n <div {...stylex.props(styles.loading)} data-table-loading=\"\">\n <Spin {...spinRest} variant={spinVariant} />\n {tip as ReactNode}\n </div>\n )}\n <FixedFrost rootRef={rootRef} />\n </div>\n {pager.bottom}\n </div>\n </HeaderContext>\n </SelectionContext>\n </TableViewContext>\n </TableStoreProvider>\n );\n};\n\ntype TableComponent = (<T>(props: TableProps<T>) => ReactNode) & {\n Column: typeof Column;\n ColumnGroup: typeof ColumnGroup;\n displayName?: string;\n EXPAND_COLUMN: typeof EXPAND_COLUMN;\n SELECTION_ALL: typeof SELECTION_ALL;\n SELECTION_COLUMN: typeof SELECTION_COLUMN;\n SELECTION_INVERT: typeof SELECTION_INVERT;\n SELECTION_NONE: typeof SELECTION_NONE;\n Summary: typeof TableSummary;\n};\n\nconst Table = memo(TableInner) as unknown as TableComponent;\n\nTable.displayName = 'Table';\nTable.Column = Column;\nTable.ColumnGroup = ColumnGroup;\nTable.EXPAND_COLUMN = EXPAND_COLUMN;\nTable.SELECTION_COLUMN = SELECTION_COLUMN;\nTable.SELECTION_ALL = SELECTION_ALL;\nTable.SELECTION_INVERT = SELECTION_INVERT;\nTable.SELECTION_NONE = SELECTION_NONE;\nTable.Summary = TableSummary;\n\nexport { TableInner };\n\nexport default Table;\n"],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { TableColumnAlign, TableCustomizeComponent } from "../type.mjs";
2
+ import { HTMLAttributes, ReactNode, Ref, TdHTMLAttributes } from "react";
3
+ //#region src/Table/atoms/cells.d.ts
4
+ export interface TableCellProps extends Omit<TdHTMLAttributes<HTMLTableCellElement>, 'align'> {
5
+ align?: TableColumnAlign;
6
+ appendNode?: ReactNode;
7
+ component?: TableCustomizeComponent;
8
+ ellipsis?: boolean | {
9
+ showTitle?: boolean;
10
+ };
11
+ fixEnd?: number;
12
+ fixStart?: number;
13
+ hovered?: boolean;
14
+ ref?: Ref<HTMLTableCellElement>;
15
+ rowType?: 'body' | 'header';
16
+ shadowEnd?: boolean;
17
+ shadowStart?: boolean;
18
+ sticky?: boolean;
19
+ zIndex?: number;
20
+ zIndexReverse?: number;
21
+ }
22
+ export declare const TableCell: ({ align, appendNode, children, className, colSpan, component, ellipsis, fixEnd, fixStart, hovered, rowSpan, rowType, shadowEnd, shadowStart, sticky, style, title, zIndex, zIndexReverse, ...rest }: TableCellProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
23
+ export declare const TableHeaderCell: ({ component, ...props }: TableCellProps) => import("react").JSX.Element;
24
+ export interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {
25
+ component?: TableCustomizeComponent;
26
+ level?: number;
27
+ ref?: Ref<HTMLTableRowElement>;
28
+ selected?: boolean;
29
+ }
30
+ export declare const TableRow: ({ className, component, level, selected, ...rest }: TableRowProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
31
+ export interface TableExpandedRowProps {
32
+ cellComponent?: TableCustomizeComponent;
33
+ children?: ReactNode;
34
+ className?: string;
35
+ colSpan: number;
36
+ component?: TableCustomizeComponent;
37
+ expanded?: boolean;
38
+ fixed?: boolean;
39
+ }
40
+ export declare const TableExpandedRow: ({ cellComponent, children, className, colSpan, component, expanded, fixed }: TableExpandedRowProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
41
+ //#endregion
42
+ //# sourceMappingURL=cells.d.mts.map