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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1029) hide show
  1. package/README.md +3 -1
  2. package/es/Accordion/Accordion.mjs +3 -3
  3. package/es/Accordion/Accordion.mjs.map +1 -1
  4. package/es/Accordion/atoms.mjs +2 -2
  5. package/es/Accordion/atoms.mjs.map +1 -1
  6. package/es/Accordion/style.d.mts +1 -1
  7. package/es/ActionIcon/ActionIcon.mjs +2 -2
  8. package/es/ActionIcon/ActionIcon.mjs.map +1 -1
  9. package/es/ActionIcon/style.mjs +1 -1
  10. package/es/ActionIcon/style.mjs.map +1 -1
  11. package/es/ActionIcon/type.d.mts +1 -0
  12. package/es/Alert/Alert.mjs +5 -5
  13. package/es/Alert/Alert.mjs.map +1 -1
  14. package/es/Alert/type.d.mts +1 -0
  15. package/es/Anchor/Anchor.mjs +2 -2
  16. package/es/Anchor/Anchor.mjs.map +1 -1
  17. package/es/AutoComplete/AutoComplete.mjs +5 -5
  18. package/es/AutoComplete/AutoComplete.mjs.map +1 -1
  19. package/es/AutoComplete/style.d.mts +1 -0
  20. package/es/AutoComplete/style.mjs +2 -2
  21. package/es/AutoComplete/style.mjs.map +1 -1
  22. package/es/AutoComplete/type.d.mts +1 -0
  23. package/es/Avatar/Avatar.mjs +2 -2
  24. package/es/Avatar/Avatar.mjs.map +1 -1
  25. package/es/Avatar/AvatarGroup/index.mjs +2 -2
  26. package/es/Avatar/AvatarGroup/index.mjs.map +1 -1
  27. package/es/Breadcrumb/Breadcrumb.mjs +2 -2
  28. package/es/Breadcrumb/Breadcrumb.mjs.map +1 -1
  29. package/es/Button/Button.mjs +1 -1
  30. package/es/Button/Button.mjs.map +1 -1
  31. package/es/Button/style.d.mts +8 -1
  32. package/es/Button/style.mjs +41 -18
  33. package/es/Button/style.mjs.map +1 -1
  34. package/es/Button/type.d.mts +1 -0
  35. package/es/Carousel/Carousel.mjs +1 -1
  36. package/es/Carousel/Carousel.mjs.map +1 -1
  37. package/es/Checkbox/Checkbox.mjs +3 -3
  38. package/es/Checkbox/Checkbox.mjs.map +1 -1
  39. package/es/Checkbox/type.d.mts +1 -0
  40. package/es/CodeDiff/CodeDiff.mjs.map +1 -1
  41. package/es/CodeDiff/DiffPanel.mjs +4 -4
  42. package/es/CodeDiff/DiffPanel.mjs.map +1 -1
  43. package/es/CodeDiff/PatchDiff.mjs.map +1 -1
  44. package/es/CodeDiff/theme.mjs.map +1 -1
  45. package/es/CodeDiff/type.d.mts +2 -2
  46. package/es/CodeEditor/CodeEditor.mjs +5 -5
  47. package/es/CodeEditor/CodeEditor.mjs.map +1 -1
  48. package/es/ColorPicker/ColorInputs.mjs +136 -0
  49. package/es/ColorPicker/ColorInputs.mjs.map +1 -0
  50. package/es/ColorPicker/ColorPanel.mjs +145 -0
  51. package/es/ColorPicker/ColorPanel.mjs.map +1 -0
  52. package/es/ColorPicker/ColorPicker.mjs +63 -200
  53. package/es/ColorPicker/ColorPicker.mjs.map +1 -1
  54. package/es/ColorPicker/SaturationArea.mjs +2 -1
  55. package/es/ColorPicker/SaturationArea.mjs.map +1 -1
  56. package/es/ColorPicker/Swatch.mjs +24 -0
  57. package/es/ColorPicker/Swatch.mjs.map +1 -0
  58. package/es/ColorPicker/Swatches.mjs +66 -0
  59. package/es/ColorPicker/Swatches.mjs.map +1 -0
  60. package/es/ColorPicker/Trigger.mjs +112 -0
  61. package/es/ColorPicker/Trigger.mjs.map +1 -0
  62. package/es/ColorPicker/color.mjs +25 -1
  63. package/es/ColorPicker/color.mjs.map +1 -1
  64. package/es/ColorPicker/recent.mjs +25 -0
  65. package/es/ColorPicker/recent.mjs.map +1 -0
  66. package/es/ColorPicker/style.mjs +269 -70
  67. package/es/ColorPicker/style.mjs.map +1 -1
  68. package/es/ColorPicker/type.d.mts +15 -0
  69. package/es/ColorSwatches/ColorSwatches.mjs +18 -23
  70. package/es/ColorSwatches/ColorSwatches.mjs.map +1 -1
  71. package/es/ColorSwatches/CustomPicker.mjs +101 -0
  72. package/es/ColorSwatches/CustomPicker.mjs.map +1 -0
  73. package/es/ColorSwatches/index.d.mts +2 -2
  74. package/es/ColorSwatches/marker.stylex.mjs +9 -0
  75. package/es/ColorSwatches/marker.stylex.mjs.map +1 -0
  76. package/es/ColorSwatches/style.mjs +36 -0
  77. package/es/ColorSwatches/style.mjs.map +1 -1
  78. package/es/ColorSwatches/type.d.mts +12 -2
  79. package/es/ConfigProvider/cdnAssets.mjs +6 -0
  80. package/es/ConfigProvider/cdnAssets.mjs.map +1 -0
  81. package/es/ConfigProvider/index.mjs +2 -1
  82. package/es/ConfigProvider/index.mjs.map +1 -1
  83. package/es/ContextMenu/ContextMenuHost.mjs +2 -2
  84. package/es/ContextMenu/ContextMenuHost.mjs.map +1 -1
  85. package/es/ContextMenu/ContextMenuTrigger.mjs +2 -2
  86. package/es/ContextMenu/ContextMenuTrigger.mjs.map +1 -1
  87. package/es/ContextMenu/renderItems.mjs +3 -3
  88. package/es/ContextMenu/renderItems.mjs.map +1 -1
  89. package/es/ContextMenu/store.d.mts +0 -1
  90. package/es/ContextMenu/store.mjs.map +1 -1
  91. package/es/DatePicker/DatePicker.d.mts +9 -2
  92. package/es/DatePicker/DatePicker.mjs +15 -85
  93. package/es/DatePicker/DatePicker.mjs.map +1 -1
  94. package/es/DatePicker/DateRangePicker.d.mts +3 -2
  95. package/es/DatePicker/DateRangePicker.mjs +3 -125
  96. package/es/DatePicker/DateRangePicker.mjs.map +1 -1
  97. package/es/DatePicker/DayjsDatePicker.d.mts +12 -0
  98. package/es/DatePicker/DayjsDatePicker.mjs +19 -0
  99. package/es/DatePicker/DayjsDatePicker.mjs.map +1 -0
  100. package/es/DatePicker/DayjsDateRangePicker.d.mts +7 -0
  101. package/es/DatePicker/DayjsDateRangePicker.mjs +8 -0
  102. package/es/DatePicker/DayjsDateRangePicker.mjs.map +1 -0
  103. package/es/DatePicker/PurePanel.mjs +65 -0
  104. package/es/DatePicker/PurePanel.mjs.map +1 -0
  105. package/es/DatePicker/RangePicker.mjs +121 -0
  106. package/es/DatePicker/RangePicker.mjs.map +1 -0
  107. package/es/DatePicker/SinglePicker.mjs +134 -0
  108. package/es/DatePicker/SinglePicker.mjs.map +1 -0
  109. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs +57 -0
  110. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs.map +1 -0
  111. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs +57 -0
  112. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs.map +1 -0
  113. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs +29 -0
  114. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs.map +1 -0
  115. package/es/DatePicker/core/PickerInput/Popup/index.mjs +133 -0
  116. package/es/DatePicker/core/PickerInput/Popup/index.mjs.map +1 -0
  117. package/es/DatePicker/core/PickerInput/RangePicker.d.mts +51 -0
  118. package/es/DatePicker/core/PickerInput/RangePicker.mjs +343 -0
  119. package/es/DatePicker/core/PickerInput/RangePicker.mjs.map +1 -0
  120. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs +27 -0
  121. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs.map +1 -0
  122. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs +19 -0
  123. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs.map +1 -0
  124. package/es/DatePicker/core/PickerInput/Selector/Input.mjs +237 -0
  125. package/es/DatePicker/core/PickerInput/Selector/Input.mjs.map +1 -0
  126. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs +70 -0
  127. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs.map +1 -0
  128. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.d.mts +8 -0
  129. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs +136 -0
  130. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs.map +1 -0
  131. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs +28 -0
  132. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs.map +1 -0
  133. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs +69 -0
  134. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs.map +1 -0
  135. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs +111 -0
  136. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs.map +1 -0
  137. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs +18 -0
  138. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs.map +1 -0
  139. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs +108 -0
  140. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs.map +1 -0
  141. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs +11 -0
  142. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs.map +1 -0
  143. package/es/DatePicker/core/PickerInput/Selector/util.mjs +20 -0
  144. package/es/DatePicker/core/PickerInput/Selector/util.mjs.map +1 -0
  145. package/es/DatePicker/core/PickerInput/SinglePicker.d.mts +55 -0
  146. package/es/DatePicker/core/PickerInput/SinglePicker.mjs +318 -0
  147. package/es/DatePicker/core/PickerInput/SinglePicker.mjs.map +1 -0
  148. package/es/DatePicker/core/PickerInput/context.mjs +7 -0
  149. package/es/DatePicker/core/PickerInput/context.mjs.map +1 -0
  150. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs +30 -0
  151. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs.map +1 -0
  152. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs +37 -0
  153. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs.map +1 -0
  154. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs +18 -0
  155. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs.map +1 -0
  156. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs +20 -0
  157. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs.map +1 -0
  158. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs +31 -0
  159. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs.map +1 -0
  160. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs +98 -0
  161. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs.map +1 -0
  162. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs +41 -0
  163. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs.map +1 -0
  164. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs +34 -0
  165. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs.map +1 -0
  166. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs +35 -0
  167. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs.map +1 -0
  168. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs +9 -0
  169. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs.map +1 -0
  170. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs +36 -0
  171. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs.map +1 -0
  172. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs +27 -0
  173. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs.map +1 -0
  174. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs +18 -0
  175. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs.map +1 -0
  176. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs +19 -0
  177. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs.map +1 -0
  178. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs +20 -0
  179. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs.map +1 -0
  180. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs +24 -0
  181. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs.map +1 -0
  182. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs +107 -0
  183. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs.map +1 -0
  184. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs +144 -0
  185. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs.map +1 -0
  186. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs +219 -0
  187. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs.map +1 -0
  188. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs +11 -0
  189. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs.map +1 -0
  190. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs +131 -0
  191. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs.map +1 -0
  192. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs +35 -0
  193. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs.map +1 -0
  194. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs +84 -0
  195. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs.map +1 -0
  196. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs +73 -0
  197. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs.map +1 -0
  198. package/es/DatePicker/core/PickerPanel/PanelBody.mjs +95 -0
  199. package/es/DatePicker/core/PickerPanel/PanelBody.mjs.map +1 -0
  200. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs +130 -0
  201. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs.map +1 -0
  202. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs +64 -0
  203. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs.map +1 -0
  204. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs +108 -0
  205. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs.map +1 -0
  206. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs +44 -0
  207. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs.map +1 -0
  208. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs +157 -0
  209. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs.map +1 -0
  210. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs +100 -0
  211. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs.map +1 -0
  212. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs +71 -0
  213. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs.map +1 -0
  214. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs +62 -0
  215. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs.map +1 -0
  216. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs +200 -0
  217. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs.map +1 -0
  218. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs +25 -0
  219. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs.map +1 -0
  220. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs +31 -0
  221. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs.map +1 -0
  222. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs +34 -0
  223. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs.map +1 -0
  224. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs +92 -0
  225. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs.map +1 -0
  226. package/es/DatePicker/core/PickerPanel/context.mjs +48 -0
  227. package/es/DatePicker/core/PickerPanel/context.mjs.map +1 -0
  228. package/es/DatePicker/core/PickerPanel/index.d.mts +1 -0
  229. package/es/DatePicker/core/PickerPanel/index.mjs +175 -0
  230. package/es/DatePicker/core/PickerPanel/index.mjs.map +1 -0
  231. package/es/DatePicker/core/PickerPopup.mjs +118 -0
  232. package/es/DatePicker/core/PickerPopup.mjs.map +1 -0
  233. package/es/DatePicker/core/generate/dayjs.mjs +109 -0
  234. package/es/DatePicker/core/generate/dayjs.mjs.map +1 -0
  235. package/es/DatePicker/core/generate/index.d.mts +40 -0
  236. package/es/DatePicker/core/hooks/react.mjs +58 -0
  237. package/es/DatePicker/core/hooks/react.mjs.map +1 -0
  238. package/es/DatePicker/core/hooks/useLocale.mjs +51 -0
  239. package/es/DatePicker/core/hooks/useLocale.mjs.map +1 -0
  240. package/es/DatePicker/core/hooks/useSemantic.mjs +20 -0
  241. package/es/DatePicker/core/hooks/useSemantic.mjs.map +1 -0
  242. package/es/DatePicker/core/hooks/useSyncState.mjs +25 -0
  243. package/es/DatePicker/core/hooks/useSyncState.mjs.map +1 -0
  244. package/es/DatePicker/core/hooks/useTimeConfig.mjs +173 -0
  245. package/es/DatePicker/core/hooks/useTimeConfig.mjs.map +1 -0
  246. package/es/DatePicker/core/hooks/useTimeInfo.mjs +110 -0
  247. package/es/DatePicker/core/hooks/useTimeInfo.mjs.map +1 -0
  248. package/es/DatePicker/core/hooks/useToggleDates.mjs +21 -0
  249. package/es/DatePicker/core/hooks/useToggleDates.mjs.map +1 -0
  250. package/es/DatePicker/core/index.d.mts +5 -0
  251. package/es/DatePicker/core/index.mjs +9 -0
  252. package/es/DatePicker/core/index.mjs.map +1 -0
  253. package/es/DatePicker/core/interface.d.mts +325 -0
  254. package/es/DatePicker/core/locale/common.mjs +11 -0
  255. package/es/DatePicker/core/locale/common.mjs.map +1 -0
  256. package/es/DatePicker/core/locale/en_US.mjs +39 -0
  257. package/es/DatePicker/core/locale/en_US.mjs.map +1 -0
  258. package/es/DatePicker/core/utils/common.mjs +73 -0
  259. package/es/DatePicker/core/utils/common.mjs.map +1 -0
  260. package/es/DatePicker/core/utils/dateUtil.mjs +106 -0
  261. package/es/DatePicker/core/utils/dateUtil.mjs.map +1 -0
  262. package/es/DatePicker/core/utils/miscUtil.mjs +46 -0
  263. package/es/DatePicker/core/utils/miscUtil.mjs.map +1 -0
  264. package/es/DatePicker/core/utils/uiUtil.mjs +9 -0
  265. package/es/DatePicker/core/utils/uiUtil.mjs.map +1 -0
  266. package/es/DatePicker/dateGenerateConfig.mjs +52 -0
  267. package/es/DatePicker/dateGenerateConfig.mjs.map +1 -0
  268. package/es/DatePicker/generateConfig.mjs +12 -0
  269. package/es/DatePicker/generateConfig.mjs.map +1 -0
  270. package/es/DatePicker/generatePicker.d.mts +12 -0
  271. package/es/DatePicker/generatePicker.mjs +22 -0
  272. package/es/DatePicker/generatePicker.mjs.map +1 -0
  273. package/es/DatePicker/index.d.mts +8 -3
  274. package/es/DatePicker/index.mjs +5 -1
  275. package/es/DatePicker/legacyDate.mjs +58 -0
  276. package/es/DatePicker/legacyDate.mjs.map +1 -0
  277. package/es/DatePicker/locale.d.mts +15 -0
  278. package/es/DatePicker/locale.mjs +143 -0
  279. package/es/DatePicker/locale.mjs.map +1 -0
  280. package/es/DatePicker/semantic.mjs +29 -0
  281. package/es/DatePicker/semantic.mjs.map +1 -0
  282. package/es/DatePicker/style.mjs +3 -155
  283. package/es/DatePicker/style.mjs.map +1 -1
  284. package/es/DatePicker/type.d.mts +294 -27
  285. package/es/DatePicker/usePanelKeyboard.mjs +230 -0
  286. package/es/DatePicker/usePanelKeyboard.mjs.map +1 -0
  287. package/es/DatePicker/usePickerShared.mjs +106 -0
  288. package/es/DatePicker/usePickerShared.mjs.map +1 -0
  289. package/es/DatePicker/usePresetActive.mjs +49 -0
  290. package/es/DatePicker/usePresetActive.mjs.map +1 -0
  291. package/es/DraggablePanel/atoms.mjs +6 -6
  292. package/es/DraggablePanel/atoms.mjs.map +1 -1
  293. package/es/DraggableSideNav/DraggableSideNav.mjs +5 -5
  294. package/es/DraggableSideNav/DraggableSideNav.mjs.map +1 -1
  295. package/es/Drawer/Drawer.mjs +2 -2
  296. package/es/Drawer/Drawer.mjs.map +1 -1
  297. package/es/Drawer/atoms.d.mts +1 -0
  298. package/es/Drawer/atoms.mjs +7 -7
  299. package/es/Drawer/atoms.mjs.map +1 -1
  300. package/es/Drawer/constants.d.mts +1 -0
  301. package/es/Drawer/style.mjs.map +1 -1
  302. package/es/DropdownMenu/atoms.mjs +23 -23
  303. package/es/DropdownMenu/atoms.mjs.map +1 -1
  304. package/es/DropdownMenu/sharedStyle.mjs +2 -2
  305. package/es/DropdownMenu/sharedStyle.mjs.map +1 -1
  306. package/es/EditableText/ControlInput.mjs +42 -29
  307. package/es/EditableText/ControlInput.mjs.map +1 -1
  308. package/es/EditableText/EditableText.mjs +2 -2
  309. package/es/EditableText/EditableText.mjs.map +1 -1
  310. package/es/EditorSlashMenu/atoms.mjs +12 -12
  311. package/es/EditorSlashMenu/atoms.mjs.map +1 -1
  312. package/es/EmojiPicker/EmojiPicker.mjs +10 -16
  313. package/es/EmojiPicker/EmojiPicker.mjs.map +1 -1
  314. package/es/EmojiPicker/loadEmojiData.mjs +6 -0
  315. package/es/EmojiPicker/loadEmojiData.mjs.map +1 -0
  316. package/es/EmojiPicker/useEmojiMartI18n.mjs +37 -0
  317. package/es/EmojiPicker/useEmojiMartI18n.mjs.map +1 -0
  318. package/es/FileTypeIcon/type.d.mts +1 -0
  319. package/es/FloatingPanel/FloatingPanel.mjs +2 -2
  320. package/es/FloatingPanel/FloatingPanel.mjs.map +1 -1
  321. package/es/FloatingPanel/style.mjs +3 -2
  322. package/es/FloatingPanel/style.mjs.map +1 -1
  323. package/es/Form/type.d.mts +1 -0
  324. package/es/FormKit/List.mjs +2 -2
  325. package/es/FormKit/List.mjs.map +1 -1
  326. package/es/FormKit/engine/tanstack.mjs +1 -1
  327. package/es/FormKit/engine/tanstack.mjs.map +1 -1
  328. package/es/Grid/style.mjs +1 -1
  329. package/es/Grid/style.mjs.map +1 -1
  330. package/es/GroupAvatar/type.d.mts +1 -0
  331. package/es/Highlighter/FullFeatured.mjs +2 -2
  332. package/es/Highlighter/FullFeatured.mjs.map +1 -1
  333. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs +2 -2
  334. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
  335. package/es/Highlighter/SyntaxHighlighter/index.mjs +4 -4
  336. package/es/Highlighter/SyntaxHighlighter/index.mjs.map +1 -1
  337. package/es/Highlighter/const.d.mts +1 -0
  338. package/es/Highlighter/style.mjs +2 -2
  339. package/es/Highlighter/style.mjs.map +1 -1
  340. package/es/HotkeyInput/HotkeyInput.mjs +1 -1
  341. package/es/HotkeyInput/HotkeyInput.mjs.map +1 -1
  342. package/es/HtmlPreview/HtmlPreview.mjs +2 -2
  343. package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
  344. package/es/Icon/Icon.mjs +2 -2
  345. package/es/Icon/Icon.mjs.map +1 -1
  346. package/es/Image/type.d.mts +1 -0
  347. package/es/Image/viewer/ImageViewer.mjs +2 -1
  348. package/es/Image/viewer/ImageViewer.mjs.map +1 -1
  349. package/es/Image/viewer/Toolbar.mjs +19 -6
  350. package/es/Image/viewer/Toolbar.mjs.map +1 -1
  351. package/es/Image/viewer/ViewerChrome.mjs.map +1 -1
  352. package/es/ImageSelect/ImageSelect.mjs +1 -1
  353. package/es/ImageSelect/ImageSelect.mjs.map +1 -1
  354. package/es/Input/Input.mjs +7 -5
  355. package/es/Input/Input.mjs.map +1 -1
  356. package/es/Input/TextArea.mjs +1 -1
  357. package/es/Input/TextArea.mjs.map +1 -1
  358. package/es/Input/style.d.mts +1 -0
  359. package/es/Input/style.mjs +3 -3
  360. package/es/Input/style.mjs.map +1 -1
  361. package/es/Input/type.d.mts +1 -0
  362. package/es/List/ListRow.mjs +3 -3
  363. package/es/List/ListRow.mjs.map +1 -1
  364. package/es/Markdown/Markdown.mjs +2 -2
  365. package/es/Markdown/Markdown.mjs.map +1 -1
  366. package/es/Markdown/Typography.mjs +2 -2
  367. package/es/Markdown/Typography.mjs.map +1 -1
  368. package/es/Markdown/plugins/remarkColor.d.mts +1 -0
  369. package/es/Markdown/plugins/remarkGfmPlus.d.mts +1 -0
  370. package/es/Markdown/plugins/remarkVideo.d.mts +1 -0
  371. package/es/Mermaid/FullFeatured.mjs +2 -2
  372. package/es/Mermaid/FullFeatured.mjs.map +1 -1
  373. package/es/Mermaid/SyntaxMermaid/index.mjs +4 -4
  374. package/es/Mermaid/SyntaxMermaid/index.mjs.map +1 -1
  375. package/es/Mermaid/const.d.mts +1 -0
  376. package/es/Modal/atoms.d.mts +1 -0
  377. package/es/Modal/atoms.mjs +8 -8
  378. package/es/Modal/atoms.mjs.map +1 -1
  379. package/es/Modal/constants.d.mts +1 -0
  380. package/es/Modal/type.d.mts +1 -0
  381. package/es/Pagination/Pagination.mjs +182 -42
  382. package/es/Pagination/Pagination.mjs.map +1 -1
  383. package/es/Pagination/helpers.mjs +3 -3
  384. package/es/Pagination/helpers.mjs.map +1 -1
  385. package/es/Pagination/index.d.mts +2 -2
  386. package/es/Pagination/marker.stylex.mjs +9 -0
  387. package/es/Pagination/marker.stylex.mjs.map +1 -0
  388. package/es/Pagination/style.mjs +74 -4
  389. package/es/Pagination/style.mjs.map +1 -1
  390. package/es/Pagination/type.d.mts +41 -3
  391. package/es/Popover/PopoverInGroup.mjs +3 -3
  392. package/es/Popover/PopoverInGroup.mjs.map +1 -1
  393. package/es/Popover/atoms.mjs +7 -7
  394. package/es/Popover/atoms.mjs.map +1 -1
  395. package/es/Popover/style.mjs +1 -1
  396. package/es/Popover/style.mjs.map +1 -1
  397. package/es/ProTable/ProTable.d.mts +11 -0
  398. package/es/ProTable/ProTable.mjs +208 -0
  399. package/es/ProTable/ProTable.mjs.map +1 -0
  400. package/es/ProTable/hooks/useColumnRequest.mjs +55 -0
  401. package/es/ProTable/hooks/useColumnRequest.mjs.map +1 -0
  402. package/es/ProTable/hooks/useColumnsState.mjs +37 -0
  403. package/es/ProTable/hooks/useColumnsState.mjs.map +1 -0
  404. package/es/ProTable/hooks/useDelayedFlag.mjs +18 -0
  405. package/es/ProTable/hooks/useDelayedFlag.mjs.map +1 -0
  406. package/es/ProTable/hooks/useDensity.mjs +15 -0
  407. package/es/ProTable/hooks/useDensity.mjs.map +1 -0
  408. package/es/ProTable/hooks/useFetchData.mjs +97 -0
  409. package/es/ProTable/hooks/useFetchData.mjs.map +1 -0
  410. package/es/ProTable/hooks/useFullscreen.mjs +22 -0
  411. package/es/ProTable/hooks/useFullscreen.mjs.map +1 -0
  412. package/es/ProTable/hooks/usePageInfo.mjs +35 -0
  413. package/es/ProTable/hooks/usePageInfo.mjs.map +1 -0
  414. package/es/ProTable/hooks/useProColumns.mjs +123 -0
  415. package/es/ProTable/hooks/useProColumns.mjs.map +1 -0
  416. package/es/ProTable/hooks/useProLoading.mjs +19 -0
  417. package/es/ProTable/hooks/useProLoading.mjs.map +1 -0
  418. package/es/ProTable/hooks/useProLocale.mjs +22 -0
  419. package/es/ProTable/hooks/useProLocale.mjs.map +1 -0
  420. package/es/ProTable/hooks/useProRequest.mjs +137 -0
  421. package/es/ProTable/hooks/useProRequest.mjs.map +1 -0
  422. package/es/ProTable/hooks/useRowCache.mjs +11 -0
  423. package/es/ProTable/hooks/useRowCache.mjs.map +1 -0
  424. package/es/ProTable/hooks/useSearchForm.mjs +141 -0
  425. package/es/ProTable/hooks/useSearchForm.mjs.map +1 -0
  426. package/es/ProTable/hooks/useTableBindings.mjs +39 -0
  427. package/es/ProTable/hooks/useTableBindings.mjs.map +1 -0
  428. package/es/ProTable/hooks/useTableSelection.mjs +14 -0
  429. package/es/ProTable/hooks/useTableSelection.mjs.map +1 -0
  430. package/es/ProTable/index.d.mts +4 -0
  431. package/es/ProTable/index.d.ts +1 -0
  432. package/es/ProTable/index.js +1 -0
  433. package/es/ProTable/index.mjs +3 -0
  434. package/es/ProTable/locale.d.mts +15 -0
  435. package/es/ProTable/locale.mjs +66 -0
  436. package/es/ProTable/locale.mjs.map +1 -0
  437. package/es/ProTable/parts/ColumnSetting.mjs +155 -0
  438. package/es/ProTable/parts/ColumnSetting.mjs.map +1 -0
  439. package/es/ProTable/parts/FieldControl.mjs +117 -0
  440. package/es/ProTable/parts/FieldControl.mjs.map +1 -0
  441. package/es/ProTable/parts/KeywordInput.mjs +19 -0
  442. package/es/ProTable/parts/KeywordInput.mjs.map +1 -0
  443. package/es/ProTable/parts/LightFilter.mjs +70 -0
  444. package/es/ProTable/parts/LightFilter.mjs.map +1 -0
  445. package/es/ProTable/parts/OptionPopover.mjs +17 -0
  446. package/es/ProTable/parts/OptionPopover.mjs.map +1 -0
  447. package/es/ProTable/parts/SearchForm.mjs +180 -0
  448. package/es/ProTable/parts/SearchForm.mjs.map +1 -0
  449. package/es/ProTable/parts/SearchSection.mjs +33 -0
  450. package/es/ProTable/parts/SearchSection.mjs.map +1 -0
  451. package/es/ProTable/parts/TableAlert.mjs +38 -0
  452. package/es/ProTable/parts/TableAlert.mjs.map +1 -0
  453. package/es/ProTable/parts/Toolbar.mjs +50 -0
  454. package/es/ProTable/parts/Toolbar.mjs.map +1 -0
  455. package/es/ProTable/parts/ToolbarOptions.mjs +103 -0
  456. package/es/ProTable/parts/ToolbarOptions.mjs.map +1 -0
  457. package/es/ProTable/parts/renderValue.mjs +118 -0
  458. package/es/ProTable/parts/renderValue.mjs.map +1 -0
  459. package/es/ProTable/style.mjs +278 -0
  460. package/es/ProTable/style.mjs.map +1 -0
  461. package/es/ProTable/type.d.mts +397 -0
  462. package/es/ProTable/utils.mjs +152 -0
  463. package/es/ProTable/utils.mjs.map +1 -0
  464. package/es/Radio/Radio.mjs +3 -3
  465. package/es/Radio/Radio.mjs.map +1 -1
  466. package/es/Radio/type.d.mts +1 -0
  467. package/es/Rate/Rate.mjs +1 -1
  468. package/es/Rate/Rate.mjs.map +1 -1
  469. package/es/ScrollArea/atoms.mjs +4 -4
  470. package/es/ScrollArea/atoms.mjs.map +1 -1
  471. package/es/ScrollShadow/ScrollShadow.mjs +1 -1
  472. package/es/ScrollShadow/ScrollShadow.mjs.map +1 -1
  473. package/es/SearchBar/SearchBar.mjs +31 -25
  474. package/es/SearchBar/SearchBar.mjs.map +1 -1
  475. package/es/Segmented/Segmented.mjs +4 -4
  476. package/es/Segmented/Segmented.mjs.map +1 -1
  477. package/es/Segmented/atoms.d.mts +1 -0
  478. package/es/Segmented/atoms.mjs +2 -2
  479. package/es/Segmented/atoms.mjs.map +1 -1
  480. package/es/Select/Select.mjs +22 -13
  481. package/es/Select/Select.mjs.map +1 -1
  482. package/es/Select/atoms.mjs +5 -5
  483. package/es/Select/atoms.mjs.map +1 -1
  484. package/es/Select/helpers.mjs +8 -1
  485. package/es/Select/helpers.mjs.map +1 -1
  486. package/es/Select/hooks.mjs +8 -4
  487. package/es/Select/hooks.mjs.map +1 -1
  488. package/es/Select/renderOptions.mjs +2 -2
  489. package/es/Select/renderOptions.mjs.map +1 -1
  490. package/es/Select/type.d.mts +7 -0
  491. package/es/Slider/type.d.mts +1 -0
  492. package/es/Switch/Switch.mjs +2 -2
  493. package/es/Switch/Switch.mjs.map +1 -1
  494. package/es/Switch/atoms.d.mts +1 -0
  495. package/es/Switch/atoms.mjs +3 -3
  496. package/es/Switch/atoms.mjs.map +1 -1
  497. package/es/Table/Column.d.mts +8 -0
  498. package/es/Table/Column.mjs +6 -0
  499. package/es/Table/Column.mjs.map +1 -0
  500. package/es/Table/ColumnGroup.d.mts +11 -0
  501. package/es/Table/ColumnGroup.mjs +6 -0
  502. package/es/Table/ColumnGroup.mjs.map +1 -0
  503. package/es/Table/Table.d.mts +16 -2
  504. package/es/Table/Table.mjs +149 -118
  505. package/es/Table/Table.mjs.map +1 -1
  506. package/es/Table/atoms/cells.d.mts +42 -0
  507. package/es/Table/atoms/cells.mjs +72 -0
  508. package/es/Table/atoms/cells.mjs.map +1 -0
  509. package/es/Table/atoms/index.d.mts +3 -0
  510. package/es/Table/atoms/layout.d.mts +44 -0
  511. package/es/Table/atoms/layout.mjs +62 -0
  512. package/es/Table/atoms/layout.mjs.map +1 -0
  513. package/es/Table/constants.mjs +16 -0
  514. package/es/Table/constants.mjs.map +1 -0
  515. package/es/Table/engine/fixed.d.mts +1 -0
  516. package/es/Table/engine/fixed.mjs +53 -0
  517. package/es/Table/engine/fixed.mjs.map +1 -0
  518. package/es/Table/engine/types.d.mts +1 -0
  519. package/es/Table/engine/useTableEngine.mjs +180 -0
  520. package/es/Table/engine/useTableEngine.mjs.map +1 -0
  521. package/es/Table/index.d.mts +7 -2
  522. package/es/Table/index.mjs +4 -1
  523. package/es/Table/internal.d.mts +3 -0
  524. package/es/Table/pipeline/columnUtils.d.mts +5 -0
  525. package/es/Table/pipeline/columnUtils.mjs +58 -0
  526. package/es/Table/pipeline/columnUtils.mjs.map +1 -0
  527. package/es/Table/pipeline/convertChildrenToColumns.mjs +24 -0
  528. package/es/Table/pipeline/convertChildrenToColumns.mjs.map +1 -0
  529. package/es/Table/pipeline/normalizeColumns.mjs +140 -0
  530. package/es/Table/pipeline/normalizeColumns.mjs.map +1 -0
  531. package/es/Table/pipeline/selectionUtils.d.mts +9 -0
  532. package/es/Table/pipeline/selectionUtils.mjs +115 -0
  533. package/es/Table/pipeline/selectionUtils.mjs.map +1 -0
  534. package/es/Table/pipeline/useBreakpoint.mjs +36 -0
  535. package/es/Table/pipeline/useBreakpoint.mjs.map +1 -0
  536. package/es/Table/pipeline/useExpandable.mjs +45 -0
  537. package/es/Table/pipeline/useExpandable.mjs.map +1 -0
  538. package/es/Table/pipeline/useFilter.mjs +52 -0
  539. package/es/Table/pipeline/useFilter.mjs.map +1 -0
  540. package/es/Table/pipeline/useSelection.mjs +302 -0
  541. package/es/Table/pipeline/useSelection.mjs.map +1 -0
  542. package/es/Table/pipeline/useSorter.mjs +146 -0
  543. package/es/Table/pipeline/useSorter.mjs.map +1 -0
  544. package/es/Table/pipeline/useTableLocale.mjs +30 -0
  545. package/es/Table/pipeline/useTableLocale.mjs.map +1 -0
  546. package/es/Table/pipeline/useTableState.mjs +118 -0
  547. package/es/Table/pipeline/useTableState.mjs.map +1 -0
  548. package/es/Table/pipeline/useVirtualLayout.mjs +80 -0
  549. package/es/Table/pipeline/useVirtualLayout.mjs.map +1 -0
  550. package/es/Table/render/Body.mjs +150 -0
  551. package/es/Table/render/Body.mjs.map +1 -0
  552. package/es/Table/render/BodyCell.mjs +87 -0
  553. package/es/Table/render/BodyCell.mjs.map +1 -0
  554. package/es/Table/render/CellShell.mjs +84 -0
  555. package/es/Table/render/CellShell.mjs.map +1 -0
  556. package/es/Table/render/ExpandIcon.mjs +28 -0
  557. package/es/Table/render/ExpandIcon.mjs.map +1 -0
  558. package/es/Table/render/FilterDropdown.mjs +139 -0
  559. package/es/Table/render/FilterDropdown.mjs.map +1 -0
  560. package/es/Table/render/FilterPanel.mjs +152 -0
  561. package/es/Table/render/FilterPanel.mjs.map +1 -0
  562. package/es/Table/render/FixedFrost.mjs +113 -0
  563. package/es/Table/render/FixedFrost.mjs.map +1 -0
  564. package/es/Table/render/FixedHolder.mjs +51 -0
  565. package/es/Table/render/FixedHolder.mjs.map +1 -0
  566. package/es/Table/render/Header.mjs +184 -0
  567. package/es/Table/render/Header.mjs.map +1 -0
  568. package/es/Table/render/LoadingSkeleton.mjs +78 -0
  569. package/es/Table/render/LoadingSkeleton.mjs.map +1 -0
  570. package/es/Table/render/PaginationBar.mjs +71 -0
  571. package/es/Table/render/PaginationBar.mjs.map +1 -0
  572. package/es/Table/render/SelectionCells.mjs +111 -0
  573. package/es/Table/render/SelectionCells.mjs.map +1 -0
  574. package/es/Table/render/StickyScrollBar.mjs +99 -0
  575. package/es/Table/render/StickyScrollBar.mjs.map +1 -0
  576. package/es/Table/render/Summary.d.mts +16 -0
  577. package/es/Table/render/Summary.mjs +58 -0
  578. package/es/Table/render/Summary.mjs.map +1 -0
  579. package/es/Table/render/TableView.mjs +215 -0
  580. package/es/Table/render/TableView.mjs.map +1 -0
  581. package/es/Table/render/VirtualBody.mjs +101 -0
  582. package/es/Table/render/VirtualBody.mjs.map +1 -0
  583. package/es/Table/render/context.mjs +15 -0
  584. package/es/Table/render/context.mjs.map +1 -0
  585. package/es/Table/render/filterUtils.mjs +22 -0
  586. package/es/Table/render/filterUtils.mjs.map +1 -0
  587. package/es/Table/render/tableHelpers.mjs +27 -0
  588. package/es/Table/render/tableHelpers.mjs.map +1 -0
  589. package/es/Table/render/useColGroups.mjs +23 -0
  590. package/es/Table/render/useColGroups.mjs.map +1 -0
  591. package/es/Table/render/useScrollSync.mjs +104 -0
  592. package/es/Table/render/useScrollSync.mjs.map +1 -0
  593. package/es/Table/render/useViewContexts.mjs +134 -0
  594. package/es/Table/render/useViewContexts.mjs.map +1 -0
  595. package/es/Table/semantic.mjs +45 -0
  596. package/es/Table/semantic.mjs.map +1 -0
  597. package/es/Table/store/createTableStore.d.mts +1 -0
  598. package/es/Table/store/createTableStore.mjs +40 -0
  599. package/es/Table/store/createTableStore.mjs.map +1 -0
  600. package/es/Table/store/hooks.mjs +24 -0
  601. package/es/Table/store/hooks.mjs.map +1 -0
  602. package/es/Table/style.mjs +175 -90
  603. package/es/Table/style.mjs.map +1 -1
  604. package/es/Table/type.d.mts +467 -37
  605. package/es/Table/useTableController.mjs +293 -0
  606. package/es/Table/useTableController.mjs.map +1 -0
  607. package/es/Tabs/Tabs.mjs +37 -23
  608. package/es/Tabs/Tabs.mjs.map +1 -1
  609. package/es/Tabs/atoms.mjs +2 -2
  610. package/es/Tabs/atoms.mjs.map +1 -1
  611. package/es/Tag/Tag.mjs +2 -2
  612. package/es/Tag/Tag.mjs.map +1 -1
  613. package/es/Text/Text.mjs +2 -2
  614. package/es/Text/Text.mjs.map +1 -1
  615. package/es/Text/style.d.mts +4 -3
  616. package/es/Text/style.mjs +3 -3
  617. package/es/Text/style.mjs.map +1 -1
  618. package/es/Toast/dodge.mjs +0 -1
  619. package/es/Toast/dodge.mjs.map +1 -1
  620. package/es/Toast/dodge.stylex.mjs +1 -4
  621. package/es/Toast/dodge.stylex.mjs.map +1 -1
  622. package/es/Toast/style.mjs +1 -1
  623. package/es/Toast/style.mjs.map +1 -1
  624. package/es/ToggleGroup/ToggleGroup.mjs +4 -4
  625. package/es/ToggleGroup/ToggleGroup.mjs.map +1 -1
  626. package/es/ToggleGroup/atoms.d.mts +1 -0
  627. package/es/ToggleGroup/atoms.mjs +2 -2
  628. package/es/ToggleGroup/atoms.mjs.map +1 -1
  629. package/es/Tooltip/TooltipGroup.mjs +3 -3
  630. package/es/Tooltip/TooltipGroup.mjs.map +1 -1
  631. package/es/Tooltip/TooltipInGroup.mjs +1 -1
  632. package/es/Tooltip/TooltipInGroup.mjs.map +1 -1
  633. package/es/Tooltip/TooltipStandalone.mjs +4 -4
  634. package/es/Tooltip/TooltipStandalone.mjs.map +1 -1
  635. package/es/Tooltip/style.mjs +2 -2
  636. package/es/Tooltip/style.mjs.map +1 -1
  637. package/es/Tree/Tree.mjs +3 -3
  638. package/es/Tree/Tree.mjs.map +1 -1
  639. package/es/Tree/TreeNode.mjs +2 -2
  640. package/es/Tree/TreeNode.mjs.map +1 -1
  641. package/es/Video/Video.mjs +46 -0
  642. package/es/Video/Video.mjs.map +1 -0
  643. package/es/Video/context.mjs +14 -0
  644. package/es/Video/context.mjs.map +1 -0
  645. package/es/Video/index.d.mts +23 -39
  646. package/es/Video/index.mjs +21 -111
  647. package/es/Video/index.mjs.map +1 -1
  648. package/es/Video/parts/Caption.d.mts +9 -0
  649. package/es/Video/parts/Caption.mjs +37 -0
  650. package/es/Video/parts/Caption.mjs.map +1 -0
  651. package/es/Video/parts/CenterPlay.d.mts +8 -0
  652. package/es/Video/parts/CenterPlay.mjs +34 -0
  653. package/es/Video/parts/CenterPlay.mjs.map +1 -0
  654. package/es/Video/parts/Controls.d.mts +9 -0
  655. package/es/Video/parts/Controls.mjs +128 -0
  656. package/es/Video/parts/Controls.mjs.map +1 -0
  657. package/es/Video/parts/Frame.d.mts +9 -0
  658. package/es/Video/parts/Frame.mjs +101 -0
  659. package/es/Video/parts/Frame.mjs.map +1 -0
  660. package/es/Video/parts/HoverPreview.mjs +93 -0
  661. package/es/Video/parts/HoverPreview.mjs.map +1 -0
  662. package/es/Video/parts/LoadError.d.mts +8 -0
  663. package/es/Video/parts/LoadError.mjs +47 -0
  664. package/es/Video/parts/LoadError.mjs.map +1 -0
  665. package/es/Video/parts/PlayPauseIcon.mjs +48 -0
  666. package/es/Video/parts/PlayPauseIcon.mjs.map +1 -0
  667. package/es/Video/parts/RateMenu.mjs +48 -0
  668. package/es/Video/parts/RateMenu.mjs.map +1 -0
  669. package/es/Video/parts/Root.d.mts +9 -0
  670. package/es/Video/parts/Root.mjs +110 -0
  671. package/es/Video/parts/Root.mjs.map +1 -0
  672. package/es/Video/parts/SectionList.d.mts +9 -0
  673. package/es/Video/parts/SectionList.mjs +32 -0
  674. package/es/Video/parts/SectionList.mjs.map +1 -0
  675. package/es/Video/parts/SectionMenu.mjs +63 -0
  676. package/es/Video/parts/SectionMenu.mjs.map +1 -0
  677. package/es/Video/parts/Timeline.d.mts +9 -0
  678. package/es/Video/parts/Timeline.mjs +169 -0
  679. package/es/Video/parts/Timeline.mjs.map +1 -0
  680. package/es/Video/store.mjs +241 -0
  681. package/es/Video/store.mjs.map +1 -0
  682. package/es/Video/style.mjs +393 -23
  683. package/es/Video/style.mjs.map +1 -1
  684. package/es/Video/time.mjs +60 -0
  685. package/es/Video/time.mjs.map +1 -0
  686. package/es/Video/type.d.mts +125 -0
  687. package/es/Video/useControlsIdle.mjs +39 -0
  688. package/es/Video/useControlsIdle.mjs.map +1 -0
  689. package/es/Video/useFullscreen.mjs +17 -0
  690. package/es/Video/useFullscreen.mjs.map +1 -0
  691. package/es/Video/useKeyboard.mjs +60 -0
  692. package/es/Video/useKeyboard.mjs.map +1 -0
  693. package/es/Video/useVideo.d.mts +9 -0
  694. package/es/Video/useVideo.mjs +17 -0
  695. package/es/Video/useVideo.mjs.map +1 -0
  696. package/es/awesome/Features/FeatureItem.mjs +2 -2
  697. package/es/awesome/Features/FeatureItem.mjs.map +1 -1
  698. package/es/awesome/Giscus/style.mjs +9 -9
  699. package/es/awesome/Giscus/style.mjs.map +1 -1
  700. package/es/awesome/Grainient/Grainient.d.mts +11 -0
  701. package/es/awesome/Grainient/Grainient.mjs +314 -0
  702. package/es/awesome/Grainient/Grainient.mjs.map +1 -0
  703. package/es/awesome/Grainient/index.d.mts +3 -0
  704. package/es/awesome/Grainient/style.mjs +23 -0
  705. package/es/awesome/Grainient/style.mjs.map +1 -0
  706. package/es/awesome/Grainient/type.d.mts +121 -0
  707. package/es/awesome/GridBackground/GridBackground.mjs +1 -1
  708. package/es/awesome/GridBackground/GridBackground.mjs.map +1 -1
  709. package/es/awesome/GridBackground/GridShowcase.mjs +4 -4
  710. package/es/awesome/GridBackground/GridShowcase.mjs.map +1 -1
  711. package/es/awesome/Hero/Hero.mjs +3 -3
  712. package/es/awesome/Hero/Hero.mjs.map +1 -1
  713. package/es/awesome/InstallBanner/InstallBanner.mjs +2 -2
  714. package/es/awesome/InstallBanner/InstallBanner.mjs.map +1 -1
  715. package/es/awesome/LandingHero/LandingHero.mjs +3 -3
  716. package/es/awesome/LandingHero/LandingHero.mjs.map +1 -1
  717. package/es/awesome/LogoMarquee/LogoMarquee.mjs +2 -2
  718. package/es/awesome/LogoMarquee/LogoMarquee.mjs.map +1 -1
  719. package/es/awesome/Spline/ParentSize.mjs +1 -1
  720. package/es/awesome/Spline/ParentSize.mjs.map +1 -1
  721. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs +4 -4
  722. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
  723. package/es/awesome/index.d.mts +4 -1
  724. package/es/awesome/index.mjs +2 -1
  725. package/es/awesome/landingActions.mjs +2 -2
  726. package/es/awesome/landingActions.mjs.map +1 -1
  727. package/es/chat/BackBottom/BackBottom.mjs +1 -1
  728. package/es/chat/BackBottom/BackBottom.mjs.map +1 -1
  729. package/es/chat/BackBottom/type.d.mts +2 -2
  730. package/es/chat/ChatItem/ChatItem.mjs +2 -2
  731. package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
  732. package/es/chat/EditableMessage/EditableMessage.mjs +4 -4
  733. package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
  734. package/es/chat/EditableMessageList/EditableMessageList.mjs +2 -2
  735. package/es/chat/EditableMessageList/EditableMessageList.mjs.map +1 -1
  736. package/es/chat/EditableMessageList/messageReducer.mjs +30 -23
  737. package/es/chat/EditableMessageList/messageReducer.mjs.map +1 -1
  738. package/es/chat/MessageInput/MessageInput.mjs +3 -3
  739. package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
  740. package/es/chat/MessageModal/MessageModal.mjs +1 -1
  741. package/es/chat/MessageModal/MessageModal.mjs.map +1 -1
  742. package/es/chat/TokenTag/TokenTag.mjs +2 -3
  743. package/es/chat/TokenTag/TokenTag.mjs.map +1 -1
  744. package/es/color/status/error.mjs +67 -0
  745. package/es/color/status/error.mjs.map +1 -0
  746. package/es/color/status/index.mjs +15 -0
  747. package/es/color/status/index.mjs.map +1 -0
  748. package/es/color/status/info.mjs +67 -0
  749. package/es/color/status/info.mjs.map +1 -0
  750. package/es/color/status/success.mjs +67 -0
  751. package/es/color/status/success.mjs.map +1 -0
  752. package/es/color/status/warning.mjs +67 -0
  753. package/es/color/status/warning.mjs.map +1 -0
  754. package/es/color/types.d.mts +1 -0
  755. package/es/dashboard/AuthLayout/Aside.d.mts +10 -0
  756. package/es/dashboard/AuthLayout/Aside.mjs +31 -0
  757. package/es/dashboard/AuthLayout/Aside.mjs.map +1 -0
  758. package/es/dashboard/AuthLayout/AuthLayout.d.mts +3 -1
  759. package/es/dashboard/AuthLayout/AuthLayout.mjs +97 -37
  760. package/es/dashboard/AuthLayout/AuthLayout.mjs.map +1 -1
  761. package/es/dashboard/AuthLayout/index.d.mts +3 -2
  762. package/es/dashboard/AuthLayout/style.mjs +109 -1
  763. package/es/dashboard/AuthLayout/style.mjs.map +1 -1
  764. package/es/dashboard/AuthLayout/type.d.mts +38 -2
  765. package/es/dashboard/AuthTools/AuthLocaleSwitch.d.mts +10 -0
  766. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs +33 -0
  767. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs.map +1 -0
  768. package/es/dashboard/AuthTools/AuthThemeSwitch.d.mts +10 -0
  769. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs +59 -0
  770. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs.map +1 -0
  771. package/es/dashboard/AuthTools/index.d.mts +4 -0
  772. package/es/dashboard/AuthTools/style.mjs +27 -0
  773. package/es/dashboard/AuthTools/style.mjs.map +1 -0
  774. package/es/dashboard/AuthTools/type.d.mts +29 -0
  775. package/es/dashboard/ChartGrid/ChartGrid.d.mts +10 -0
  776. package/es/dashboard/ChartGrid/ChartGrid.mjs +19 -0
  777. package/es/dashboard/ChartGrid/ChartGrid.mjs.map +1 -0
  778. package/es/dashboard/ChartGrid/index.d.mts +3 -0
  779. package/es/dashboard/ChartGrid/style.mjs +18 -0
  780. package/es/dashboard/ChartGrid/style.mjs.map +1 -0
  781. package/es/dashboard/ChartGrid/type.d.mts +8 -0
  782. package/es/dashboard/ConsoleNav/ConsoleNav.mjs +3 -3
  783. package/es/dashboard/ConsoleNav/ConsoleNav.mjs.map +1 -1
  784. package/es/dashboard/ConsoleNav/Skeleton.d.mts +15 -0
  785. package/es/dashboard/ConsoleNav/Skeleton.mjs +82 -0
  786. package/es/dashboard/ConsoleNav/Skeleton.mjs.map +1 -0
  787. package/es/dashboard/ConsoleNav/index.d.mts +3 -2
  788. package/es/dashboard/ConsoleNav/style.mjs +20 -2
  789. package/es/dashboard/ConsoleNav/style.mjs.map +1 -1
  790. package/es/dashboard/ConsoleNav/type.d.mts +13 -0
  791. package/es/dashboard/ConsoleShell/ConsoleShell.d.mts +1 -1
  792. package/es/dashboard/ConsoleShell/ConsoleShell.mjs +26 -6
  793. package/es/dashboard/ConsoleShell/ConsoleShell.mjs.map +1 -1
  794. package/es/dashboard/ConsoleShell/style.mjs +11 -1
  795. package/es/dashboard/ConsoleShell/style.mjs.map +1 -1
  796. package/es/dashboard/ConsoleShell/type.d.mts +11 -0
  797. package/es/dashboard/FilterSidebar/FilterSidebar.mjs +18 -17
  798. package/es/dashboard/FilterSidebar/FilterSidebar.mjs.map +1 -1
  799. package/es/dashboard/FilterSidebar/style.mjs +2 -2
  800. package/es/dashboard/FilterSidebar/style.mjs.map +1 -1
  801. package/es/dashboard/FilterStrip/FilterStrip.d.mts +11 -0
  802. package/es/dashboard/FilterStrip/FilterStrip.mjs +55 -0
  803. package/es/dashboard/FilterStrip/FilterStrip.mjs.map +1 -0
  804. package/es/dashboard/FilterStrip/index.d.mts +3 -0
  805. package/es/dashboard/FilterStrip/style.mjs +78 -0
  806. package/es/dashboard/FilterStrip/style.mjs.map +1 -0
  807. package/es/dashboard/FilterStrip/type.d.mts +25 -0
  808. package/es/dashboard/LabelWithKey/LabelWithKey.d.mts +10 -0
  809. package/es/dashboard/LabelWithKey/LabelWithKey.mjs +18 -0
  810. package/es/dashboard/LabelWithKey/LabelWithKey.mjs.map +1 -0
  811. package/es/dashboard/LabelWithKey/index.d.mts +3 -0
  812. package/es/dashboard/LabelWithKey/type.d.mts +11 -0
  813. package/es/dashboard/MetricStrip/MetricCell.mjs +92 -0
  814. package/es/dashboard/MetricStrip/MetricCell.mjs.map +1 -0
  815. package/es/dashboard/MetricStrip/MetricStrip.d.mts +13 -0
  816. package/es/dashboard/MetricStrip/MetricStrip.mjs +47 -0
  817. package/es/dashboard/MetricStrip/MetricStrip.mjs.map +1 -0
  818. package/es/dashboard/MetricStrip/index.d.mts +3 -0
  819. package/es/dashboard/MetricStrip/style.mjs +169 -0
  820. package/es/dashboard/MetricStrip/style.mjs.map +1 -0
  821. package/es/dashboard/MetricStrip/type.d.mts +38 -0
  822. package/es/dashboard/PageSkeleton/PageSkeleton.mjs +20 -18
  823. package/es/dashboard/PageSkeleton/PageSkeleton.mjs.map +1 -1
  824. package/es/dashboard/PageSkeleton/style.mjs +2 -1
  825. package/es/dashboard/PageSkeleton/style.mjs.map +1 -1
  826. package/es/dashboard/PageToolbar/PageToolbar.d.mts +10 -0
  827. package/es/dashboard/PageToolbar/PageToolbar.mjs +22 -0
  828. package/es/dashboard/PageToolbar/PageToolbar.mjs.map +1 -0
  829. package/es/dashboard/PageToolbar/index.d.mts +3 -0
  830. package/es/dashboard/PageToolbar/style.mjs +36 -0
  831. package/es/dashboard/PageToolbar/style.mjs.map +1 -0
  832. package/es/dashboard/PageToolbar/type.d.mts +11 -0
  833. package/es/dashboard/PanelSurface/PanelSurface.d.mts +10 -0
  834. package/es/dashboard/PanelSurface/PanelSurface.mjs +40 -0
  835. package/es/dashboard/PanelSurface/PanelSurface.mjs.map +1 -0
  836. package/es/dashboard/PanelSurface/index.d.mts +3 -0
  837. package/es/dashboard/PanelSurface/style.mjs +25 -0
  838. package/es/dashboard/PanelSurface/style.mjs.map +1 -0
  839. package/es/dashboard/PanelSurface/type.d.mts +17 -0
  840. package/es/dashboard/Section/Section.d.mts +10 -0
  841. package/es/dashboard/Section/Section.mjs +81 -0
  842. package/es/dashboard/Section/Section.mjs.map +1 -0
  843. package/es/dashboard/Section/index.d.mts +3 -0
  844. package/es/dashboard/Section/style.mjs +31 -0
  845. package/es/dashboard/Section/style.mjs.map +1 -0
  846. package/es/dashboard/Section/type.d.mts +23 -0
  847. package/es/dashboard/StatCard/StatCard.d.mts +2 -1
  848. package/es/dashboard/StatCard/StatCard.mjs +29 -91
  849. package/es/dashboard/StatCard/StatCard.mjs.map +1 -1
  850. package/es/dashboard/StatCard/type.d.mts +18 -5
  851. package/es/dashboard/Surface/Surface.d.mts +4 -3
  852. package/es/dashboard/Surface/Surface.mjs +90 -8
  853. package/es/dashboard/Surface/Surface.mjs.map +1 -1
  854. package/es/dashboard/Surface/index.d.mts +3 -2
  855. package/es/dashboard/Surface/link.d.mts +16 -0
  856. package/es/dashboard/Surface/link.mjs +40 -0
  857. package/es/dashboard/Surface/link.mjs.map +1 -0
  858. package/es/dashboard/Surface/marker.stylex.mjs +9 -0
  859. package/es/dashboard/Surface/marker.stylex.mjs.map +1 -0
  860. package/es/dashboard/Surface/style.d.mts +2 -0
  861. package/es/dashboard/Surface/style.mjs +156 -14
  862. package/es/dashboard/Surface/style.mjs.map +1 -1
  863. package/es/dashboard/Surface/type.d.mts +29 -1
  864. package/es/dashboard/TableIconActions/TableIconActions.d.mts +17 -0
  865. package/es/dashboard/TableIconActions/TableIconActions.mjs +39 -0
  866. package/es/dashboard/TableIconActions/TableIconActions.mjs.map +1 -0
  867. package/es/dashboard/TableIconActions/index.d.mts +3 -0
  868. package/es/dashboard/TableIconActions/type.d.mts +17 -0
  869. package/es/dashboard/TitleWithTips/TitleWithTips.d.mts +10 -0
  870. package/es/dashboard/TitleWithTips/TitleWithTips.mjs +28 -0
  871. package/es/dashboard/TitleWithTips/TitleWithTips.mjs.map +1 -0
  872. package/es/dashboard/TitleWithTips/index.d.mts +3 -0
  873. package/es/dashboard/TitleWithTips/type.d.mts +10 -0
  874. package/es/dashboard/index.d.mts +38 -4
  875. package/es/dashboard/index.mjs +18 -4
  876. package/es/eslint/noBaseUiSubpath.mjs +2 -1
  877. package/es/eslint/noBaseUiSubpath.mjs.map +1 -1
  878. package/es/hooks/useControlledState.mjs +20 -0
  879. package/es/hooks/useControlledState.mjs.map +1 -0
  880. package/es/hooks/useHighlight.mjs +2 -2
  881. package/es/hooks/useHighlight.mjs.map +1 -1
  882. package/es/hooks/useHover.mjs +22 -0
  883. package/es/hooks/useHover.mjs.map +1 -0
  884. package/es/hooks/useMarkdown/utils.d.mts +1 -0
  885. package/es/hooks/useScroll.d.mts +8 -0
  886. package/es/hooks/useScroll.mjs +33 -0
  887. package/es/hooks/useScroll.mjs.map +1 -0
  888. package/es/hooks/useSize.mjs +26 -0
  889. package/es/hooks/useSize.mjs.map +1 -0
  890. package/es/i18n/resources/en/colorPicker.d.mts +5 -0
  891. package/es/i18n/resources/en/colorPicker.mjs +5 -0
  892. package/es/i18n/resources/en/colorPicker.mjs.map +1 -1
  893. package/es/i18n/resources/en/datePicker.d.mts +54 -0
  894. package/es/i18n/resources/en/datePicker.mjs +55 -1
  895. package/es/i18n/resources/en/datePicker.mjs.map +1 -1
  896. package/es/i18n/resources/en/index.d.mts +4 -2
  897. package/es/i18n/resources/en/index.mjs +6 -2
  898. package/es/i18n/resources/en/index.mjs.map +1 -1
  899. package/es/i18n/resources/en/table.d.mts +23 -0
  900. package/es/i18n/resources/en/table.mjs +24 -0
  901. package/es/i18n/resources/en/table.mjs.map +1 -0
  902. package/es/i18n/resources/en/video.d.mts +23 -0
  903. package/es/i18n/resources/en/video.mjs +24 -0
  904. package/es/i18n/resources/en/video.mjs.map +1 -0
  905. package/es/i18n/resources/zhCn/colorPicker.d.mts +5 -0
  906. package/es/i18n/resources/zhCn/colorPicker.mjs +5 -0
  907. package/es/i18n/resources/zhCn/colorPicker.mjs.map +1 -1
  908. package/es/i18n/resources/zhCn/datePicker.d.mts +54 -0
  909. package/es/i18n/resources/zhCn/datePicker.mjs +55 -1
  910. package/es/i18n/resources/zhCn/datePicker.mjs.map +1 -1
  911. package/es/i18n/resources/zhCn/index.d.mts +4 -2
  912. package/es/i18n/resources/zhCn/index.mjs +7 -3
  913. package/es/i18n/resources/zhCn/index.mjs.map +1 -1
  914. package/es/i18n/resources/zhCn/table.d.mts +23 -0
  915. package/es/i18n/resources/zhCn/table.mjs +24 -0
  916. package/es/i18n/resources/zhCn/table.mjs.map +1 -0
  917. package/es/i18n/resources/zhCn/video.d.mts +23 -0
  918. package/es/i18n/resources/zhCn/video.mjs +24 -0
  919. package/es/i18n/resources/zhCn/video.mjs.map +1 -0
  920. package/es/i18n/types.d.mts +4 -1
  921. package/es/index.d.mts +20 -8
  922. package/es/index.mjs +17 -9
  923. package/es/internal/menu/itemInterface.d.mts +1 -0
  924. package/es/internal/menu/renderUtils.d.mts +1 -0
  925. package/es/internal/overflow/OverflowList.mjs +71 -0
  926. package/es/internal/overflow/OverflowList.mjs.map +1 -0
  927. package/es/internal/virtual/VirtualScrollArea.mjs +1 -1
  928. package/es/internal/virtual/VirtualScrollArea.mjs.map +1 -1
  929. package/es/mdx/Callout/index.mjs +2 -2
  930. package/es/mdx/Callout/index.mjs.map +1 -1
  931. package/es/mdx/Cards/Card.mjs +2 -2
  932. package/es/mdx/Cards/Card.mjs.map +1 -1
  933. package/es/mdx/Cards/index.mjs +2 -2
  934. package/es/mdx/Cards/index.mjs.map +1 -1
  935. package/es/mdx/Mdx/index.mjs +2 -2
  936. package/es/mdx/Mdx/index.mjs.map +1 -1
  937. package/es/mdx/Steps/index.mjs +2 -2
  938. package/es/mdx/Steps/index.mjs.map +1 -1
  939. package/es/mdx/mdxComponents/Pre.mjs +5 -5
  940. package/es/mdx/mdxComponents/Pre.mjs.map +1 -1
  941. package/es/mdx/mdxComponents/Video.d.mts +2 -1
  942. package/es/mdx/mdxComponents/Video.mjs +5 -3
  943. package/es/mdx/mdxComponents/Video.mjs.map +1 -1
  944. package/es/mobile/ChatInputArea/ChatInputArea.mjs +1 -1
  945. package/es/mobile/ChatInputArea/ChatInputArea.mjs.map +1 -1
  946. package/es/mobile/TabBar/TabBar.mjs +1 -1
  947. package/es/mobile/TabBar/TabBar.mjs.map +1 -1
  948. package/es/node_modules/.pnpm/@eslint_core@1.2.1/node_modules/@eslint/core/dist/esm/types.d.mts +2 -46
  949. package/es/node_modules/.pnpm/@eslint_plugin-kit@0.7.3/node_modules/@eslint/plugin-kit/dist/cjs/index.d.mts +1 -1
  950. package/es/node_modules/.pnpm/@types_estree@1.0.9/node_modules/@types/estree/index.d.mts +1 -4
  951. package/es/node_modules/.pnpm/@types_mdx@2.0.14/node_modules/@types/mdx/types.d.mts +1 -0
  952. package/es/node_modules/.pnpm/eslint@10.12.0_jiti@2.6.1_supports-color@10.2.2/node_modules/eslint/lib/types/index.d.mts +2 -1
  953. package/es/storybook/StoryBook/style.mjs +2 -0
  954. package/es/storybook/StoryBook/style.mjs.map +1 -1
  955. package/es/style.css +3534 -978
  956. package/es/styles/createGlobalStyle.d.mts +1 -0
  957. package/es/styles/createGlobalStyle.mjs +1 -1
  958. package/es/styles/index.d.mts +3 -2
  959. package/es/styles/index.mjs +5 -4
  960. package/es/styles/stylex/cssVar.stylex.mjs +3 -0
  961. package/es/styles/stylex/cssVar.stylex.mjs.map +1 -1
  962. package/es/styles/stylex/props.mjs +2 -2
  963. package/es/styles/stylex/props.mjs.map +1 -1
  964. package/es/styles/theme/createLobeToken.d.mts +10 -6
  965. package/es/styles/theme/createLobeToken.mjs.map +1 -1
  966. package/es/styles/theme/customPrimary.d.mts +7 -0
  967. package/es/styles/theme/customPrimary.mjs +66 -0
  968. package/es/styles/theme/customPrimary.mjs.map +1 -0
  969. package/es/styles/theme/generateColorPalette.d.mts +1 -0
  970. package/es/styles/theme/scope.d.mts +5 -3
  971. package/es/styles/theme/scope.mjs +30 -8
  972. package/es/styles/theme/scope.mjs.map +1 -1
  973. package/es/styles/theme/themeCss.d.mts +2 -0
  974. package/es/styles/theme/themeCss.mjs +24 -2
  975. package/es/styles/theme/themeCss.mjs.map +1 -1
  976. package/es/styles/theme/token/legacy.mjs +12 -12
  977. package/es/styles/theme/token/legacy.mjs.map +1 -1
  978. package/es/styles/theme/token/neutral.mjs +17 -9
  979. package/es/styles/theme/token/neutral.mjs.map +1 -1
  980. package/es/styles/theme/token/neutralText.mjs +91 -0
  981. package/es/styles/theme/token/neutralText.mjs.map +1 -0
  982. package/es/styles/theme/token/palette.mjs +16 -41
  983. package/es/styles/theme/token/palette.mjs.map +1 -1
  984. package/es/styles/theme/token/primary.mjs +6 -2
  985. package/es/styles/theme/token/primary.mjs.map +1 -1
  986. package/es/styles/theme/token/static.mjs +3 -0
  987. package/es/styles/theme/token/static.mjs.map +1 -1
  988. package/es/theme.css +301 -290
  989. package/es/types/customToken.d.mts +1 -0
  990. package/es/utils/colorMath.mjs +52 -0
  991. package/es/utils/colorMath.mjs.map +1 -0
  992. package/es/utils/formatNumber.mjs +7 -0
  993. package/es/utils/formatNumber.mjs.map +1 -0
  994. package/es/utils/genCdnUrl.mjs +6 -3
  995. package/es/utils/genCdnUrl.mjs.map +1 -1
  996. package/es/utils/hashString.mjs +19 -0
  997. package/es/utils/hashString.mjs.map +1 -0
  998. package/es/utils/mergeRefs.mjs +20 -0
  999. package/es/utils/mergeRefs.mjs.map +1 -0
  1000. package/es/utils/placement.d.mts +5 -5
  1001. package/es/utils/placement.mjs.map +1 -1
  1002. package/package.json +25 -46
  1003. package/es/DatePicker/CalendarPanel.mjs +0 -189
  1004. package/es/DatePicker/CalendarPanel.mjs.map +0 -1
  1005. package/es/DatePicker/PickerShell.mjs +0 -43
  1006. package/es/DatePicker/PickerShell.mjs.map +0 -1
  1007. package/es/DatePicker/calendar.d.mts +0 -4
  1008. package/es/DatePicker/calendar.mjs +0 -46
  1009. package/es/DatePicker/calendar.mjs.map +0 -1
  1010. package/es/Table/FilterMenu.mjs +0 -45
  1011. package/es/Table/FilterMenu.mjs.map +0 -1
  1012. package/es/Table/TableBody.mjs +0 -67
  1013. package/es/Table/TableBody.mjs.map +0 -1
  1014. package/es/Table/TableHead.mjs +0 -58
  1015. package/es/Table/TableHead.mjs.map +0 -1
  1016. package/es/Table/features.mjs +0 -12
  1017. package/es/Table/features.mjs.map +0 -1
  1018. package/es/Table/fixedOffsets.mjs +0 -29
  1019. package/es/Table/fixedOffsets.mjs.map +0 -1
  1020. package/es/Table/marker.stylex.mjs +0 -9
  1021. package/es/Table/marker.stylex.mjs.map +0 -1
  1022. package/es/Table/toColumnDefs.mjs +0 -26
  1023. package/es/Table/toColumnDefs.mjs.map +0 -1
  1024. package/es/Table/useTableState.mjs +0 -99
  1025. package/es/Table/useTableState.mjs.map +0 -1
  1026. package/es/Video/marker.stylex.mjs +0 -9
  1027. package/es/Video/marker.stylex.mjs.map +0 -1
  1028. package/es/dashboard/StatCard/style.mjs +0 -105
  1029. package/es/dashboard/StatCard/style.mjs.map +0 -1
@@ -0,0 +1,87 @@
1
+ "use client";
2
+ import { getCellValue } from "../pipeline/columnUtils.mjs";
3
+ import { useTableView } from "./context.mjs";
4
+ import { useRowExpanded } from "../store/hooks.mjs";
5
+ import { CellShell, isRenderedCell } from "./CellShell.mjs";
6
+ import { SelectionBodyCell } from "./SelectionCells.mjs";
7
+ import { memo, useRef } from "react";
8
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
9
+ //#region src/Table/render/BodyCell.tsx
10
+ const useCellRender = (column, record, renderIndex) => {
11
+ const cache = useRef(null);
12
+ if (cache.current && column.shouldCellUpdate && !column.shouldCellUpdate(record, cache.current.record)) return cache.current.output;
13
+ const value = getCellValue(record, column);
14
+ let output;
15
+ if (column.render) {
16
+ const rendered = column.render(value, record, renderIndex);
17
+ output = isRenderedCell(rendered) ? [rendered.children, rendered.props] : [rendered, void 0];
18
+ } else output = [value, void 0];
19
+ cache.current = {
20
+ output,
21
+ record
22
+ };
23
+ return output;
24
+ };
25
+ const NestIcon = ({ depth, hasChildren, record, rowKey }) => {
26
+ const { expand, prefixCls } = useTableView();
27
+ const expanded = useRowExpanded(rowKey);
28
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx("span", {
29
+ className: `${prefixCls}-row-indent indent-level-${depth}`,
30
+ style: { paddingLeft: `${expand.indentSize * depth}px` }
31
+ }), expand.expandIcon({
32
+ expandable: hasChildren,
33
+ expanded,
34
+ onExpand: (target) => expand.toggle(target),
35
+ prefixCls,
36
+ record
37
+ })] });
38
+ };
39
+ const DataCell = ({ depth, hasChildren, index, leaf, record, renderIndex, rowKey, withNestIcon }) => {
40
+ const column = leaf.column.source.column;
41
+ const [childNode, legacyCellProps] = useCellRender(column, record, renderIndex);
42
+ return /* @__PURE__ */ jsx(CellShell, {
43
+ index,
44
+ leaf,
45
+ legacyCellProps,
46
+ record,
47
+ appendNode: withNestIcon ? /* @__PURE__ */ jsx(NestIcon, {
48
+ depth,
49
+ hasChildren,
50
+ record,
51
+ rowKey
52
+ }) : void 0,
53
+ children: childNode
54
+ });
55
+ };
56
+ const ExpandCell = ({ index, leaf, record, rowKey }) => {
57
+ const { expand, prefixCls } = useTableView();
58
+ const expanded = useRowExpanded(rowKey);
59
+ const icon = expand.expandIcon({
60
+ expandable: expand.rowExpandable ? expand.rowExpandable(record) : true,
61
+ expanded,
62
+ onExpand: (target) => expand.toggle(target),
63
+ prefixCls,
64
+ record
65
+ });
66
+ return /* @__PURE__ */ jsx(CellShell, {
67
+ index,
68
+ leaf,
69
+ record,
70
+ children: expand.expandRowByClick ? /* @__PURE__ */ jsx("span", {
71
+ onClick: (event) => event.stopPropagation(),
72
+ children: icon
73
+ }) : icon
74
+ });
75
+ };
76
+ const BodyCellInner = (props) => {
77
+ switch (props.leaf.column.source.kind) {
78
+ case "selection": return /* @__PURE__ */ jsx(SelectionBodyCell, { ...props });
79
+ case "expand": return /* @__PURE__ */ jsx(ExpandCell, { ...props });
80
+ default: return /* @__PURE__ */ jsx(DataCell, { ...props });
81
+ }
82
+ };
83
+ const BodyCell = memo(BodyCellInner);
84
+ //#endregion
85
+ export { BodyCell };
86
+
87
+ //# sourceMappingURL=BodyCell.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BodyCell.mjs","names":[],"sources":["../../../src/Table/render/BodyCell.tsx"],"sourcesContent":["'use client';\n\nimport { type Key, memo, type ReactNode, useRef } from 'react';\n\nimport { getCellValue } from '../pipeline/columnUtils';\nimport { useRowExpanded } from '../store/hooks';\nimport type { TableCellAttributes, TableColumnType } from '../type';\nimport { type BodyCellProps, CellShell, isRenderedCell } from './CellShell';\nimport { useTableView } from './context';\nimport { SelectionBodyCell } from './SelectionCells';\n\nconst useCellRender = <T,>(\n column: TableColumnType<T>,\n record: T,\n renderIndex: number,\n): [ReactNode, TableCellAttributes | undefined] => {\n const cache = useRef<{ output: [ReactNode, TableCellAttributes | undefined]; record: T } | null>(\n null,\n );\n if (\n cache.current &&\n column.shouldCellUpdate &&\n !column.shouldCellUpdate(record, cache.current.record)\n ) {\n return cache.current.output;\n }\n const value = getCellValue(record, column);\n let output: [ReactNode, TableCellAttributes | undefined];\n if (column.render) {\n const rendered = column.render(value, record, renderIndex);\n output = isRenderedCell(rendered)\n ? [rendered.children, rendered.props]\n : [rendered as ReactNode, undefined];\n } else {\n output = [value as ReactNode, undefined];\n }\n cache.current = { output, record };\n return output;\n};\n\nconst NestIcon = <T,>({\n depth,\n hasChildren,\n record,\n rowKey,\n}: {\n depth: number;\n hasChildren: boolean;\n record: T;\n rowKey: Key;\n}) => {\n const { expand, prefixCls } = useTableView<T>();\n const expanded = useRowExpanded(rowKey);\n return (\n <>\n <span\n className={`${prefixCls}-row-indent indent-level-${depth}`}\n style={{ paddingLeft: `${expand.indentSize * depth}px` }}\n />\n {expand.expandIcon({\n expandable: hasChildren,\n expanded,\n onExpand: (target) => expand.toggle(target),\n prefixCls,\n record,\n })}\n </>\n );\n};\n\nconst DataCell = <T,>({\n depth,\n hasChildren,\n index,\n leaf,\n record,\n renderIndex,\n rowKey,\n withNestIcon,\n}: BodyCellProps<T>) => {\n const column = leaf.column.source.column as TableColumnType<T>;\n const [childNode, legacyCellProps] = useCellRender(column, record, renderIndex);\n return (\n <CellShell\n index={index}\n leaf={leaf}\n legacyCellProps={legacyCellProps}\n record={record}\n appendNode={\n withNestIcon ? (\n <NestIcon depth={depth} hasChildren={hasChildren} record={record} rowKey={rowKey} />\n ) : undefined\n }\n >\n {childNode}\n </CellShell>\n );\n};\n\nconst ExpandCell = <T,>({ index, leaf, record, rowKey }: BodyCellProps<T>) => {\n const { expand, prefixCls } = useTableView<T>();\n const expanded = useRowExpanded(rowKey);\n const icon = expand.expandIcon({\n expandable: expand.rowExpandable ? expand.rowExpandable(record) : true,\n expanded,\n onExpand: (target) => expand.toggle(target),\n prefixCls,\n record,\n });\n return (\n <CellShell index={index} leaf={leaf} record={record}>\n {expand.expandRowByClick ? (\n <span onClick={(event) => event.stopPropagation()}>{icon}</span>\n ) : (\n icon\n )}\n </CellShell>\n );\n};\n\nconst BodyCellInner = <T,>(props: BodyCellProps<T>) => {\n switch (props.leaf.column.source.kind) {\n case 'selection': {\n return <SelectionBodyCell {...props} />;\n }\n case 'expand': {\n return <ExpandCell {...props} />;\n }\n default: {\n return <DataCell {...props} />;\n }\n }\n};\n\nexport const BodyCell = memo(BodyCellInner) as typeof BodyCellInner;\n"],"mappings":";;;;;;;;;AAWA,MAAM,iBACJ,QACA,QACA,gBACiD;CACjD,MAAM,QAAQ,OACZ,IACF;CACA,IACE,MAAM,WACN,OAAO,oBACP,CAAC,OAAO,iBAAiB,QAAQ,MAAM,QAAQ,MAAM,GAErD,OAAO,MAAM,QAAQ;CAEvB,MAAM,QAAQ,aAAa,QAAQ,MAAM;CACzC,IAAI;CACJ,IAAI,OAAO,QAAQ;EACjB,MAAM,WAAW,OAAO,OAAO,OAAO,QAAQ,WAAW;EACzD,SAAS,eAAe,QAAQ,IAC5B,CAAC,SAAS,UAAU,SAAS,KAAK,IAClC,CAAC,UAAuB,KAAA,CAAS;CACvC,OACE,SAAS,CAAC,OAAoB,KAAA,CAAS;CAEzC,MAAM,UAAU;EAAE;EAAQ;CAAO;CACjC,OAAO;AACT;AAEA,MAAM,YAAgB,EACpB,OACA,aACA,QACA,aAMI;CACJ,MAAM,EAAE,QAAQ,cAAc,aAAgB;CAC9C,MAAM,WAAW,eAAe,MAAM;CACtC,OACE,qBAAA,YAAA,EAAA,UAAA,CACE,oBAAC,QAAD;EACE,WAAW,GAAG,UAAU,2BAA2B;EACnD,OAAO,EAAE,aAAa,GAAG,OAAO,aAAa,MAAM,IAAI;CACxD,CAAA,GACA,OAAO,WAAW;EACjB,YAAY;EACZ;EACA,WAAW,WAAW,OAAO,OAAO,MAAM;EAC1C;EACA;CACF,CAAC,CACD,EAAA,CAAA;AAEN;AAEA,MAAM,YAAgB,EACpB,OACA,aACA,OACA,MACA,QACA,aACA,QACA,mBACsB;CACtB,MAAM,SAAS,KAAK,OAAO,OAAO;CAClC,MAAM,CAAC,WAAW,mBAAmB,cAAc,QAAQ,QAAQ,WAAW;CAC9E,OACE,oBAAC,WAAD;EACS;EACD;EACW;EACT;EACR,YACE,eACE,oBAAC,UAAD;GAAiB;GAAoB;GAAqB;GAAgB;EAAS,CAAA,IACjF,KAAA;EAGL,UAAA;CACQ,CAAA;AAEf;AAEA,MAAM,cAAkB,EAAE,OAAO,MAAM,QAAQ,aAA+B;CAC5E,MAAM,EAAE,QAAQ,cAAc,aAAgB;CAC9C,MAAM,WAAW,eAAe,MAAM;CACtC,MAAM,OAAO,OAAO,WAAW;EAC7B,YAAY,OAAO,gBAAgB,OAAO,cAAc,MAAM,IAAI;EAClE;EACA,WAAW,WAAW,OAAO,OAAO,MAAM;EAC1C;EACA;CACF,CAAC;CACD,OACE,oBAAC,WAAD;EAAkB;EAAa;EAAc;EAC1C,UAAA,OAAO,mBACN,oBAAC,QAAD;GAAM,UAAU,UAAU,MAAM,gBAAgB;GAAI,UAAA;EAAW,CAAA,IAE/D;CAEO,CAAA;AAEf;AAEA,MAAM,iBAAqB,UAA4B;CACrD,QAAQ,MAAM,KAAK,OAAO,OAAO,MAAjC;EACE,KAAK,aACH,OAAO,oBAAC,mBAAD,EAAmB,GAAI,MAAQ,CAAA;EAExC,KAAK,UACH,OAAO,oBAAC,YAAD,EAAY,GAAI,MAAQ,CAAA;EAEjC,SACE,OAAO,oBAAC,UAAD,EAAU,GAAI,MAAQ,CAAA;CAEjC;AACF;AAEA,MAAa,WAAW,KAAK,aAAa"}
@@ -0,0 +1,84 @@
1
+ "use client";
2
+ import { TableCell } from "../atoms/cells.mjs";
3
+ import { VirtualCellContext, useTableView } from "./context.mjs";
4
+ import { useCellHovered, useColumnSorted, useTableStoreInstance } from "../store/hooks.mjs";
5
+ import { isValidElement, use } from "react";
6
+ import { jsx } from "react/jsx-runtime";
7
+ import clsx$1 from "clsx";
8
+ //#region src/Table/render/CellShell.tsx
9
+ const NO_HOVER = [-1, -1];
10
+ const isRenderedCell = (value) => typeof value === "object" && value !== null && !Array.isArray(value) && !isValidElement(value);
11
+ const CellShell = ({ appendNode, children, className, index, leaf, legacyCellProps, record }) => {
12
+ const view = useTableView();
13
+ const store = useTableStoreInstance();
14
+ const column = leaf.column.source.column;
15
+ const sorted = useColumnSorted(leaf.column.source.id);
16
+ const additional = { ...column.onCell?.(record, index) };
17
+ const colSpan = legacyCellProps?.colSpan ?? additional.colSpan ?? 1;
18
+ const rowSpan = legacyCellProps?.rowSpan ?? additional.rowSpan ?? 1;
19
+ const hoverSpan = legacyCellProps?.rowSpan ?? rowSpan;
20
+ const hovered = useCellHovered(index, hoverSpan);
21
+ const { getHeight, inverse } = use(VirtualCellContext);
22
+ const { components, prefixCls, rowHoverable, semanticClassNames, semanticStyles, virtualWidths } = view;
23
+ const hidden = virtualWidths ? inverse ? rowSpan <= 1 : colSpan === 0 || rowSpan === 0 || rowSpan > 1 : false;
24
+ if (!virtualWidths && (colSpan === 0 || rowSpan === 0)) return null;
25
+ const { className: additionalClassName, style: additionalStyle, ...additionalRest } = additional;
26
+ const onMouseEnter = (event) => {
27
+ store.setState({ hover: [index, index + hoverSpan - 1] });
28
+ additional.onMouseEnter?.(event);
29
+ };
30
+ const onMouseLeave = (event) => {
31
+ store.setState({ hover: NO_HOVER });
32
+ additional.onMouseLeave?.(event);
33
+ };
34
+ let content = hidden ? null : children;
35
+ if (typeof content === "object" && content !== null && !Array.isArray(content) && !isValidElement(content)) content = null;
36
+ const { fixedInfo } = leaf;
37
+ let virtualStyle;
38
+ if (virtualWidths) {
39
+ let width = 0;
40
+ for (let offset = 0; offset < (colSpan || 1); offset += 1) width += virtualWidths[leaf.index + offset] ?? 0;
41
+ const ownWidth = virtualWidths[leaf.index] ?? 0;
42
+ virtualStyle = {
43
+ flex: `0 0 ${width}px`,
44
+ marginInlineEnd: colSpan > 1 ? ownWidth - width : void 0,
45
+ pointerEvents: "auto",
46
+ width: `${width}px`
47
+ };
48
+ if (hidden) virtualStyle.visibility = "hidden";
49
+ else if (inverse) virtualStyle.height = getHeight?.(rowSpan);
50
+ }
51
+ const style = {
52
+ ...legacyCellProps?.style,
53
+ ...additionalStyle,
54
+ ...semanticStyles.body.cell,
55
+ ...virtualStyle
56
+ };
57
+ return /* @__PURE__ */ jsx(TableCell, {
58
+ ...legacyCellProps,
59
+ ...additionalRest,
60
+ align: column.align,
61
+ appendNode,
62
+ colSpan: virtualWidths ? 1 : colSpan,
63
+ component: column.rowScope ? components.bodyCell ?? "th" : components.bodyCell,
64
+ ellipsis: column.ellipsis,
65
+ fixEnd: fixedInfo.fixEnd,
66
+ fixStart: fixedInfo.fixStart,
67
+ hovered: !legacyCellProps && rowHoverable && hovered,
68
+ rowSpan: virtualWidths && !inverse ? 1 : rowSpan,
69
+ scope: column.rowScope,
70
+ shadowEnd: fixedInfo.shadowEnd,
71
+ shadowStart: fixedInfo.shadowStart,
72
+ style,
73
+ zIndex: fixedInfo.zIndex,
74
+ zIndexReverse: fixedInfo.zIndexReverse,
75
+ className: clsx$1(column.className, semanticClassNames.body.cell, sorted && `${prefixCls}-column-sort`, className, additionalClassName, legacyCellProps?.className),
76
+ onMouseEnter: rowHoverable ? onMouseEnter : additional.onMouseEnter,
77
+ onMouseLeave: rowHoverable ? onMouseLeave : additional.onMouseLeave,
78
+ children: content
79
+ });
80
+ };
81
+ //#endregion
82
+ export { CellShell, isRenderedCell };
83
+
84
+ //# sourceMappingURL=CellShell.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellShell.mjs","names":["clsx"],"sources":["../../../src/Table/render/CellShell.tsx"],"sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport {\n type CSSProperties,\n isValidElement,\n type Key,\n type MouseEvent,\n type ReactNode,\n use,\n} from 'react';\n\nimport { TableCell } from '../atoms';\nimport type { LeafColumnModel } from '../engine/types';\nimport type { ColumnSource } from '../pipeline/normalizeColumns';\nimport { useCellHovered, useColumnSorted, useTableStoreInstance } from '../store/hooks';\nimport type { TableCellAttributes, TableColumnType, TableRenderedCell } from '../type';\nimport { useTableView, VirtualCellContext } from './context';\n\nexport interface BodyCellProps<T> {\n colIndex: number;\n depth: number;\n hasChildren: boolean;\n index: number;\n leaf: LeafColumnModel<ColumnSource<T>>;\n record: T;\n renderIndex: number;\n rowKey: Key;\n withNestIcon: boolean;\n}\n\nconst NO_HOVER = [-1, -1] as const;\n\nexport const isRenderedCell = (value: unknown): value is TableRenderedCell =>\n typeof value === 'object' && value !== null && !Array.isArray(value) && !isValidElement(value);\n\nexport interface CellShellProps<T> {\n appendNode?: ReactNode;\n children: ReactNode;\n className?: string;\n index: number;\n leaf: LeafColumnModel<ColumnSource<T>>;\n legacyCellProps?: TableCellAttributes;\n record: T;\n}\n\nexport const CellShell = <T,>({\n appendNode,\n children,\n className,\n index,\n leaf,\n legacyCellProps,\n record,\n}: CellShellProps<T>) => {\n const view = useTableView<T>();\n const store = useTableStoreInstance();\n const column = leaf.column.source.column as TableColumnType<T>;\n const sorted = useColumnSorted(leaf.column.source.id);\n const additional: TableCellAttributes = { ...column.onCell?.(record, index) };\n\n const colSpan = legacyCellProps?.colSpan ?? additional.colSpan ?? 1;\n const rowSpan = legacyCellProps?.rowSpan ?? additional.rowSpan ?? 1;\n const hoverSpan = legacyCellProps?.rowSpan ?? rowSpan;\n const hovered = useCellHovered(index, hoverSpan);\n const { getHeight, inverse } = use(VirtualCellContext);\n const { components, prefixCls, rowHoverable, semanticClassNames, semanticStyles, virtualWidths } =\n view;\n\n const hidden = virtualWidths\n ? inverse\n ? rowSpan <= 1\n : colSpan === 0 || rowSpan === 0 || rowSpan > 1\n : false;\n if (!virtualWidths && (colSpan === 0 || rowSpan === 0)) return null;\n\n const { className: additionalClassName, style: additionalStyle, ...additionalRest } = additional;\n const onMouseEnter = (event: MouseEvent<HTMLTableCellElement>) => {\n store.setState({ hover: [index, index + hoverSpan - 1] });\n additional.onMouseEnter?.(event);\n };\n const onMouseLeave = (event: MouseEvent<HTMLTableCellElement>) => {\n store.setState({ hover: NO_HOVER });\n additional.onMouseLeave?.(event);\n };\n\n let content = hidden ? null : children;\n if (\n typeof content === 'object' &&\n content !== null &&\n !Array.isArray(content) &&\n !isValidElement(content)\n ) {\n content = null;\n }\n\n const { fixedInfo } = leaf;\n let virtualStyle: CSSProperties | undefined;\n if (virtualWidths) {\n let width = 0;\n for (let offset = 0; offset < (colSpan || 1); offset += 1) {\n width += virtualWidths[leaf.index + offset] ?? 0;\n }\n const ownWidth = virtualWidths[leaf.index] ?? 0;\n virtualStyle = {\n flex: `0 0 ${width}px`,\n marginInlineEnd: colSpan > 1 ? ownWidth - width : undefined,\n pointerEvents: 'auto',\n width: `${width}px`,\n };\n if (hidden) virtualStyle.visibility = 'hidden';\n else if (inverse) virtualStyle.height = getHeight?.(rowSpan);\n }\n const style: CSSProperties = {\n ...legacyCellProps?.style,\n ...additionalStyle,\n ...semanticStyles.body.cell,\n ...virtualStyle,\n };\n\n return (\n <TableCell\n {...legacyCellProps}\n {...(additionalRest as object)}\n align={column.align}\n appendNode={appendNode}\n colSpan={virtualWidths ? 1 : colSpan}\n component={column.rowScope ? (components.bodyCell ?? 'th') : components.bodyCell}\n ellipsis={column.ellipsis}\n fixEnd={fixedInfo.fixEnd}\n fixStart={fixedInfo.fixStart}\n hovered={!legacyCellProps && rowHoverable && hovered}\n rowSpan={virtualWidths && !inverse ? 1 : rowSpan}\n scope={column.rowScope}\n shadowEnd={fixedInfo.shadowEnd}\n shadowStart={fixedInfo.shadowStart}\n style={style}\n zIndex={fixedInfo.zIndex}\n zIndexReverse={fixedInfo.zIndexReverse}\n className={clsx(\n column.className,\n semanticClassNames.body.cell,\n sorted && `${prefixCls}-column-sort`,\n className,\n additionalClassName,\n legacyCellProps?.className,\n )}\n onMouseEnter={rowHoverable ? onMouseEnter : additional.onMouseEnter}\n onMouseLeave={rowHoverable ? onMouseLeave : additional.onMouseLeave}\n >\n {content}\n </TableCell>\n );\n};\n"],"mappings":";;;;;;;;AA+BA,MAAM,WAAW,CAAC,IAAI,EAAE;AAExB,MAAa,kBAAkB,UAC7B,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,KAAK,KAAK,CAAC,eAAe,KAAK;AAY/F,MAAa,aAAiB,EAC5B,YACA,UACA,WACA,OACA,MACA,iBACA,aACuB;CACvB,MAAM,OAAO,aAAgB;CAC7B,MAAM,QAAQ,sBAAsB;CACpC,MAAM,SAAS,KAAK,OAAO,OAAO;CAClC,MAAM,SAAS,gBAAgB,KAAK,OAAO,OAAO,EAAE;CACpD,MAAM,aAAkC,EAAE,GAAG,OAAO,SAAS,QAAQ,KAAK,EAAE;CAE5E,MAAM,UAAU,iBAAiB,WAAW,WAAW,WAAW;CAClE,MAAM,UAAU,iBAAiB,WAAW,WAAW,WAAW;CAClE,MAAM,YAAY,iBAAiB,WAAW;CAC9C,MAAM,UAAU,eAAe,OAAO,SAAS;CAC/C,MAAM,EAAE,WAAW,YAAY,IAAI,kBAAkB;CACrD,MAAM,EAAE,YAAY,WAAW,cAAc,oBAAoB,gBAAgB,kBAC/E;CAEF,MAAM,SAAS,gBACX,UACE,WAAW,IACX,YAAY,KAAK,YAAY,KAAK,UAAU,IAC9C;CACJ,IAAI,CAAC,kBAAkB,YAAY,KAAK,YAAY,IAAI,OAAO;CAE/D,MAAM,EAAE,WAAW,qBAAqB,OAAO,iBAAiB,GAAG,mBAAmB;CACtF,MAAM,gBAAgB,UAA4C;EAChE,MAAM,SAAS,EAAE,OAAO,CAAC,OAAO,QAAQ,YAAY,CAAC,EAAE,CAAC;EACxD,WAAW,eAAe,KAAK;CACjC;CACA,MAAM,gBAAgB,UAA4C;EAChE,MAAM,SAAS,EAAE,OAAO,SAAS,CAAC;EAClC,WAAW,eAAe,KAAK;CACjC;CAEA,IAAI,UAAU,SAAS,OAAO;CAC9B,IACE,OAAO,YAAY,YACnB,YAAY,QACZ,CAAC,MAAM,QAAQ,OAAO,KACtB,CAAC,eAAe,OAAO,GAEvB,UAAU;CAGZ,MAAM,EAAE,cAAc;CACtB,IAAI;CACJ,IAAI,eAAe;EACjB,IAAI,QAAQ;EACZ,KAAK,IAAI,SAAS,GAAG,UAAU,WAAW,IAAI,UAAU,GACtD,SAAS,cAAc,KAAK,QAAQ,WAAW;EAEjD,MAAM,WAAW,cAAc,KAAK,UAAU;EAC9C,eAAe;GACb,MAAM,OAAO,MAAM;GACnB,iBAAiB,UAAU,IAAI,WAAW,QAAQ,KAAA;GAClD,eAAe;GACf,OAAO,GAAG,MAAM;EAClB;EACA,IAAI,QAAQ,aAAa,aAAa;OACjC,IAAI,SAAS,aAAa,SAAS,YAAY,OAAO;CAC7D;CACA,MAAM,QAAuB;EAC3B,GAAG,iBAAiB;EACpB,GAAG;EACH,GAAG,eAAe,KAAK;EACvB,GAAG;CACL;CAEA,OACE,oBAAC,WAAD;EACE,GAAI;EACJ,GAAK;EACL,OAAO,OAAO;EACF;EACZ,SAAS,gBAAgB,IAAI;EAC7B,WAAW,OAAO,WAAY,WAAW,YAAY,OAAQ,WAAW;EACxE,UAAU,OAAO;EACjB,QAAQ,UAAU;EAClB,UAAU,UAAU;EACpB,SAAS,CAAC,mBAAmB,gBAAgB;EAC7C,SAAS,iBAAiB,CAAC,UAAU,IAAI;EACzC,OAAO,OAAO;EACd,WAAW,UAAU;EACrB,aAAa,UAAU;EAChB;EACP,QAAQ,UAAU;EAClB,eAAe,UAAU;EACzB,WAAWA,OACT,OAAO,WACP,mBAAmB,KAAK,MACxB,UAAU,GAAG,UAAU,eACvB,WACA,qBACA,iBAAiB,SACnB;EACA,cAAc,eAAe,eAAe,WAAW;EACvD,cAAc,eAAe,eAAe,WAAW;EAEtD,UAAA;CACQ,CAAA;AAEf"}
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ import ActionIcon from "../../ActionIcon/ActionIcon.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ import clsx$1 from "clsx";
5
+ import { ChevronDown, ChevronRight } from "lucide-react";
6
+ //#region src/Table/render/ExpandIcon.tsx
7
+ const renderExpandIcon = ({ expandable, expanded, onExpand, prefixCls, record }, locale) => {
8
+ const iconCls = `${prefixCls}-row-expand-icon`;
9
+ if (!expandable) return /* @__PURE__ */ jsx("span", {
10
+ "aria-hidden": "true",
11
+ className: clsx$1(iconCls, `${iconCls}-spaced`)
12
+ });
13
+ return /* @__PURE__ */ jsx(ActionIcon, {
14
+ "aria-expanded": expanded,
15
+ "aria-label": expanded ? locale.collapse : locale.expand,
16
+ className: clsx$1(iconCls, expanded ? `${iconCls}-expanded` : `${iconCls}-collapsed`),
17
+ icon: expanded ? ChevronDown : ChevronRight,
18
+ size: "small",
19
+ onClick: (event) => {
20
+ onExpand(record, event);
21
+ event.stopPropagation();
22
+ }
23
+ });
24
+ };
25
+ //#endregion
26
+ export { renderExpandIcon as default };
27
+
28
+ //# sourceMappingURL=ExpandIcon.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpandIcon.mjs","names":["clsx"],"sources":["../../../src/Table/render/ExpandIcon.tsx"],"sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport { ChevronDown, ChevronRight } from 'lucide-react';\nimport type { MouseEvent, ReactNode } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\n\nimport type { TableExpandIconProps, TableLocale } from '../type';\n\nconst renderExpandIcon = <T,>(\n { expandable, expanded, onExpand, prefixCls, record }: TableExpandIconProps<T>,\n locale: Pick<TableLocale, 'collapse' | 'expand'>,\n): ReactNode => {\n const iconCls = `${prefixCls}-row-expand-icon`;\n if (!expandable) {\n return <span aria-hidden=\"true\" className={clsx(iconCls, `${iconCls}-spaced`)} />;\n }\n return (\n <ActionIcon\n aria-expanded={expanded}\n aria-label={expanded ? locale.collapse : locale.expand}\n className={clsx(iconCls, expanded ? `${iconCls}-expanded` : `${iconCls}-collapsed`)}\n icon={expanded ? ChevronDown : ChevronRight}\n size=\"small\"\n onClick={(event) => {\n onExpand(record, event as unknown as MouseEvent<HTMLElement>);\n event.stopPropagation();\n }}\n />\n );\n};\n\nexport default renderExpandIcon;\n"],"mappings":";;;;;;AAUA,MAAM,oBACJ,EAAE,YAAY,UAAU,UAAU,WAAW,UAC7C,WACc;CACd,MAAM,UAAU,GAAG,UAAU;CAC7B,IAAI,CAAC,YACH,OAAO,oBAAC,QAAD;EAAM,eAAY;EAAO,WAAWA,OAAK,SAAS,GAAG,QAAQ,QAAQ;CAAI,CAAA;CAElF,OACE,oBAAC,YAAD;EACE,iBAAe;EACf,cAAY,WAAW,OAAO,WAAW,OAAO;EAChD,WAAWA,OAAK,SAAS,WAAW,GAAG,QAAQ,aAAa,GAAG,QAAQ,WAAW;EAClF,MAAM,WAAW,cAAc;EAC/B,MAAK;EACL,UAAU,UAAU;GAClB,SAAS,QAAQ,KAA2C;GAC5D,MAAM,gBAAgB;EACxB;CACD,CAAA;AAEL"}
@@ -0,0 +1,139 @@
1
+ "use client";
2
+ import ActionIcon from "../../ActionIcon/ActionIcon.mjs";
3
+ import { PopoverPopup, PopoverPortal, PopoverPositioner, PopoverRoot, PopoverTriggerElement } from "../../Popover/atoms.mjs";
4
+ import { MeasureRowContext } from "./context.mjs";
5
+ import { styles } from "../style.mjs";
6
+ import { FILTER_CLS, sameKeys, sx } from "./filterUtils.mjs";
7
+ import FilterPanel from "./FilterPanel.mjs";
8
+ import { use, useEffect, useReducer, useRef, useState } from "react";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ import clsx$1 from "clsx";
11
+ import { ListFilter } from "lucide-react";
12
+ //#region src/Table/render/FilterDropdown.tsx
13
+ const DEPRECATED_PROPS = [["filterDropdownOpen", "filterDropdownProps.open"], ["onFilterDropdownOpenChange", "filterDropdownProps.onOpenChange"]];
14
+ const warnedProps = /* @__PURE__ */ new Set();
15
+ const warnDeprecated = (column) => {
16
+ if (process.env.NODE_ENV === "production") return;
17
+ for (const [name, replacement] of DEPRECATED_PROPS) if (name in column && !warnedProps.has(name)) {
18
+ warnedProps.add(name);
19
+ console.warn(`[Table] \`${name}\` is deprecated. Please use \`${replacement}\` instead.`);
20
+ }
21
+ };
22
+ const useSyncKeys = (initial) => {
23
+ const ref = useRef(initial);
24
+ const [, rerender] = useReducer((count) => count + 1, 0);
25
+ return [() => ref.current, (next) => {
26
+ ref.current = next;
27
+ rerender();
28
+ }];
29
+ };
30
+ const FilterDropdown = ({ column, columnKey, filterState, getPopupContainer, label, locale, triggerFilter }) => {
31
+ const { defaultFilteredValue, filterDropdown, filterDropdownOpen, filterDropdownProps = {}, filterIcon, filterOnClose = true, filterResetToDefaultFilteredValue, filters, onFilterDropdownOpenChange } = column;
32
+ const inMeasureRow = use(MeasureRowContext);
33
+ warnDeprecated(column);
34
+ const triggerRef = useRef(null);
35
+ const [visible, setVisible] = useState(false);
36
+ const [searchValue, setSearchValue] = useState("");
37
+ const mergedVisible = filterDropdownProps.open ?? filterDropdownOpen ?? visible;
38
+ const filtered = Boolean(filterState?.filteredKeys?.length || filterState?.forceFiltered);
39
+ const triggerOpen = (next) => {
40
+ setVisible(next);
41
+ setSearchValue("");
42
+ filterDropdownProps.onOpenChange?.(next);
43
+ onFilterDropdownOpenChange?.(next);
44
+ };
45
+ const propFilteredKeys = filterState?.filteredKeys;
46
+ const [getSelectedKeys, setSelectedKeys] = useSyncKeys(propFilteredKeys ?? []);
47
+ useEffect(() => {
48
+ if (mergedVisible) setSelectedKeys(propFilteredKeys ?? []);
49
+ }, [propFilteredKeys, mergedVisible]);
50
+ const internalTriggerFilter = (keys) => {
51
+ const mergedKeys = keys?.length ? keys : null;
52
+ if (mergedKeys === null && !propFilteredKeys) return;
53
+ if (sameKeys(mergedKeys, propFilteredKeys)) return;
54
+ triggerFilter(columnKey, mergedKeys);
55
+ };
56
+ const onConfirm = () => {
57
+ triggerOpen(false);
58
+ internalTriggerFilter(getSelectedKeys());
59
+ };
60
+ const onReset = ({ closeDropdown = false, confirm = false } = {}) => {
61
+ if (confirm) internalTriggerFilter([]);
62
+ if (closeDropdown) triggerOpen(false);
63
+ setSearchValue("");
64
+ setSelectedKeys(filterResetToDefaultFilteredValue ? (defaultFilteredValue ?? []).map(String) : []);
65
+ };
66
+ const doFilter = ({ closeDropdown = true } = {}) => {
67
+ if (closeDropdown) triggerOpen(false);
68
+ internalTriggerFilter(getSelectedKeys());
69
+ };
70
+ const onPopoverOpenChange = (next) => {
71
+ if (next && propFilteredKeys !== void 0) setSelectedKeys(propFilteredKeys ?? []);
72
+ if (!next && !filterDropdown && filterOnClose) onConfirm();
73
+ else triggerOpen(next);
74
+ };
75
+ let content;
76
+ if (typeof filterDropdown === "function") content = filterDropdown({
77
+ clearFilters: onReset,
78
+ close: () => triggerOpen(false),
79
+ confirm: doFilter,
80
+ filters,
81
+ prefixCls: `${FILTER_CLS}-dropdown-custom`,
82
+ selectedKeys: getSelectedKeys(),
83
+ setSelectedKeys,
84
+ visible: mergedVisible
85
+ });
86
+ else if (filterDropdown !== void 0) content = filterDropdown;
87
+ else content = /* @__PURE__ */ jsx(FilterPanel, {
88
+ column,
89
+ locale,
90
+ searchValue,
91
+ selectedKeys: getSelectedKeys(),
92
+ setSelectedKeys,
93
+ onConfirm,
94
+ onReset: () => onReset(),
95
+ onSearchChange: setSearchValue
96
+ });
97
+ const popupRender = filterDropdownProps.popupRender ?? filterDropdownProps.dropdownRender;
98
+ const panel = /* @__PURE__ */ jsx("div", {
99
+ className: clsx$1(sx(styles.filterDropdown), `${FILTER_CLS}-dropdown`),
100
+ children: popupRender ? popupRender(content) : content
101
+ });
102
+ const icon = typeof filterIcon === "function" ? filterIcon(filtered) : filterIcon ?? ListFilter;
103
+ const trigger = /* @__PURE__ */ jsx(ActionIcon, {
104
+ active: filtered,
105
+ "aria-description": locale.filterTitle,
106
+ "aria-label": `Filter ${label}`,
107
+ "data-active": filtered || void 0,
108
+ icon,
109
+ ref: triggerRef,
110
+ size: "small",
111
+ className: clsx$1(sx(styles.filterButton), `${FILTER_CLS}-trigger`, filtered && sx(styles.filterActive)),
112
+ onClick: (event) => event.stopPropagation()
113
+ });
114
+ if (inMeasureRow) return trigger;
115
+ const resolveContainer = filterDropdownProps.getPopupContainer ?? getPopupContainer;
116
+ const container = mergedVisible && resolveContainer && triggerRef.current ? resolveContainer(triggerRef.current) : void 0;
117
+ return /* @__PURE__ */ jsxs(PopoverRoot, {
118
+ open: mergedVisible,
119
+ onOpenChange: onPopoverOpenChange,
120
+ children: [/* @__PURE__ */ jsx(PopoverTriggerElement, { children: trigger }), /* @__PURE__ */ jsx(PopoverPortal, {
121
+ container,
122
+ children: /* @__PURE__ */ jsx(PopoverPositioner, {
123
+ className: filterDropdownProps.rootClassName,
124
+ placement: filterDropdownProps.placement ?? "bottomRight",
125
+ sideOffset: 4,
126
+ style: filterDropdownProps.zIndex === void 0 ? void 0 : { zIndex: filterDropdownProps.zIndex },
127
+ children: /* @__PURE__ */ jsx(PopoverPopup, {
128
+ className: clsx$1(sx(styles.filterPopup), filterDropdownProps.className),
129
+ style: filterDropdownProps.style,
130
+ children: panel
131
+ })
132
+ })
133
+ })]
134
+ });
135
+ };
136
+ //#endregion
137
+ export { FilterDropdown as default };
138
+
139
+ //# sourceMappingURL=FilterDropdown.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterDropdown.mjs","names":["clsx"],"sources":["../../../src/Table/render/FilterDropdown.tsx"],"sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport { ListFilter } from 'lucide-react';\nimport { type Key, type ReactNode, use, useEffect, useReducer, useRef, useState } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport {\n PopoverPopup,\n PopoverPortal,\n PopoverPositioner,\n PopoverRoot,\n PopoverTriggerElement,\n} from '@/Popover';\n\nimport { type FilterKeys, type FilterState } from '../pipeline/useFilter';\nimport { styles } from '../style';\nimport type { TableColumnType, TableFilterDropdownProps, TableLocale } from '../type';\nimport { MeasureRowContext } from './context';\nimport FilterPanel from './FilterPanel';\nimport { FILTER_CLS, sameKeys, sx } from './filterUtils';\n\nconst DEPRECATED_PROPS = [\n ['filterDropdownOpen', 'filterDropdownProps.open'],\n ['onFilterDropdownOpenChange', 'filterDropdownProps.onOpenChange'],\n] as const;\nconst warnedProps = new Set<string>();\n\nconst warnDeprecated = (column: object) => {\n if (process.env.NODE_ENV === 'production') return;\n for (const [name, replacement] of DEPRECATED_PROPS) {\n if (name in column && !warnedProps.has(name)) {\n warnedProps.add(name);\n console.warn(`[Table] \\`${name}\\` is deprecated. Please use \\`${replacement}\\` instead.`);\n }\n }\n};\n\nconst useSyncKeys = (initial: Key[]) => {\n const ref = useRef(initial);\n const [, rerender] = useReducer((count: number) => count + 1, 0);\n return [\n () => ref.current,\n (next: Key[]) => {\n ref.current = next;\n rerender();\n },\n ] as const;\n};\n\ninterface FilterDropdownProps<T> {\n column: TableColumnType<T>;\n columnKey: string;\n filterState?: FilterState<T>;\n getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;\n label: string;\n locale: Pick<\n TableLocale,\n | 'filterCheckAll'\n | 'filterConfirm'\n | 'filterEmptyText'\n | 'filterReset'\n | 'filterSearchPlaceholder'\n | 'filterTitle'\n >;\n triggerFilter: (columnKey: string, filteredKeys: FilterKeys) => void;\n}\n\nconst FilterDropdown = <T,>({\n column,\n columnKey,\n filterState,\n getPopupContainer,\n label,\n locale,\n triggerFilter,\n}: FilterDropdownProps<T>) => {\n const {\n defaultFilteredValue,\n filterDropdown,\n filterDropdownOpen,\n filterDropdownProps = {},\n filterIcon,\n filterOnClose = true,\n filterResetToDefaultFilteredValue,\n filters,\n onFilterDropdownOpenChange,\n } = column;\n\n const inMeasureRow = use(MeasureRowContext);\n warnDeprecated(column);\n const triggerRef = useRef<HTMLButtonElement>(null);\n const [visible, setVisible] = useState(false);\n const [searchValue, setSearchValue] = useState('');\n const mergedVisible = filterDropdownProps.open ?? filterDropdownOpen ?? visible;\n const filtered = Boolean(filterState?.filteredKeys?.length || filterState?.forceFiltered);\n\n const triggerOpen = (next: boolean) => {\n setVisible(next);\n // The search box starts empty every time the panel opens.\n setSearchValue('');\n filterDropdownProps.onOpenChange?.(next);\n onFilterDropdownOpenChange?.(next);\n };\n\n // Booleans only come from `filteredValue`; the panel works with keys, like antd.\n const propFilteredKeys = filterState?.filteredKeys as Key[] | null | undefined;\n const [getSelectedKeys, setSelectedKeys] = useSyncKeys(propFilteredKeys ?? []);\n\n useEffect(() => {\n if (mergedVisible) setSelectedKeys(propFilteredKeys ?? []);\n // `setSelectedKeys` is stable in behavior; re-sync only on open / applied-keys change.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [propFilteredKeys, mergedVisible]);\n\n const internalTriggerFilter = (keys: Key[] | null) => {\n const mergedKeys = keys?.length ? keys : null;\n if (mergedKeys === null && !propFilteredKeys) return;\n if (sameKeys(mergedKeys, propFilteredKeys)) return;\n triggerFilter(columnKey, mergedKeys);\n };\n\n const onConfirm = () => {\n triggerOpen(false);\n internalTriggerFilter(getSelectedKeys());\n };\n\n const onReset: NonNullable<TableFilterDropdownProps['clearFilters']> = ({\n closeDropdown = false,\n confirm = false,\n } = {}) => {\n if (confirm) internalTriggerFilter([]);\n if (closeDropdown) triggerOpen(false);\n setSearchValue('');\n setSelectedKeys(\n filterResetToDefaultFilteredValue ? (defaultFilteredValue ?? []).map(String) : [],\n );\n };\n\n const doFilter: TableFilterDropdownProps['confirm'] = ({ closeDropdown = true } = {}) => {\n if (closeDropdown) triggerOpen(false);\n internalTriggerFilter(getSelectedKeys());\n };\n\n const onPopoverOpenChange = (next: boolean) => {\n if (next && propFilteredKeys !== undefined) setSelectedKeys(propFilteredKeys ?? []);\n if (!next && !filterDropdown && filterOnClose) onConfirm();\n else triggerOpen(next);\n };\n\n let content: ReactNode;\n if (typeof filterDropdown === 'function') {\n content = filterDropdown({\n clearFilters: onReset,\n close: () => triggerOpen(false),\n confirm: doFilter,\n filters,\n prefixCls: `${FILTER_CLS}-dropdown-custom`,\n selectedKeys: getSelectedKeys(),\n setSelectedKeys,\n visible: mergedVisible,\n });\n } else if (filterDropdown !== undefined) {\n content = filterDropdown;\n } else {\n content = (\n <FilterPanel\n column={column}\n locale={locale}\n searchValue={searchValue}\n selectedKeys={getSelectedKeys()}\n setSelectedKeys={setSelectedKeys}\n onConfirm={onConfirm}\n onReset={() => onReset()}\n onSearchChange={setSearchValue}\n />\n );\n }\n\n const popupRender = filterDropdownProps.popupRender ?? filterDropdownProps.dropdownRender;\n const panel = (\n <div className={clsx(sx(styles.filterDropdown), `${FILTER_CLS}-dropdown`)}>\n {popupRender ? popupRender(content) : content}\n </div>\n );\n\n const icon = typeof filterIcon === 'function' ? filterIcon(filtered) : (filterIcon ?? ListFilter);\n\n // Native `title` would need ActionIcon's tooltip, which can't sit inside the popover trigger;\n // the localized hint rides on `aria-description` instead.\n const trigger = (\n <ActionIcon\n active={filtered}\n aria-description={locale.filterTitle}\n aria-label={`Filter ${label}`}\n data-active={filtered || undefined}\n icon={icon}\n ref={triggerRef}\n size=\"small\"\n className={clsx(\n sx(styles.filterButton),\n `${FILTER_CLS}-trigger`,\n filtered && sx(styles.filterActive),\n )}\n onClick={(event) => event.stopPropagation()}\n />\n );\n\n if (inMeasureRow) return trigger;\n\n const resolveContainer = filterDropdownProps.getPopupContainer ?? getPopupContainer;\n const container =\n mergedVisible && resolveContainer && triggerRef.current\n ? resolveContainer(triggerRef.current)\n : undefined;\n\n return (\n <PopoverRoot open={mergedVisible} onOpenChange={onPopoverOpenChange}>\n <PopoverTriggerElement>{trigger}</PopoverTriggerElement>\n <PopoverPortal container={container}>\n <PopoverPositioner\n className={filterDropdownProps.rootClassName}\n placement={filterDropdownProps.placement ?? 'bottomRight'}\n sideOffset={4}\n style={\n filterDropdownProps.zIndex === undefined\n ? undefined\n : { zIndex: filterDropdownProps.zIndex }\n }\n >\n <PopoverPopup\n className={clsx(sx(styles.filterPopup), filterDropdownProps.className)}\n style={filterDropdownProps.style}\n >\n {panel}\n </PopoverPopup>\n </PopoverPositioner>\n </PopoverPortal>\n </PopoverRoot>\n );\n};\n\nexport default FilterDropdown;\n"],"mappings":"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"}
@@ -0,0 +1,152 @@
1
+ "use client";
2
+ import Icon from "../../Icon/Icon.mjs";
3
+ import Button from "../../Button/Button.mjs";
4
+ import Input_default from "../../Input/Input.mjs";
5
+ import Checkbox_default from "../../Checkbox/Checkbox.mjs";
6
+ import Empty from "../../Empty/Empty.mjs";
7
+ import Radio from "../../Radio/Radio.mjs";
8
+ import { PREFIX_CLS } from "../constants.mjs";
9
+ import { styles } from "../style.mjs";
10
+ import { conductCheck } from "../../Tree/utils.mjs";
11
+ import Tree from "../../Tree/Tree.mjs";
12
+ import { flattenFilterKeys } from "../pipeline/useFilter.mjs";
13
+ import { FILTER_CLS, findLineage, sameKeys, sx, textMatches } from "./filterUtils.mjs";
14
+ import { useMemo } from "react";
15
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
16
+ import clsx$1 from "clsx";
17
+ import { Search } from "lucide-react";
18
+ import { RadioGroup } from "@base-ui/react/radio-group";
19
+ //#region src/Table/render/FilterPanel.tsx
20
+ const FilterPanel = ({ column, locale, onConfirm, onReset, onSearchChange, searchValue, selectedKeys, setSelectedKeys }) => {
21
+ const { defaultFilteredValue, filterMode = "menu", filterMultiple = true, filterResetToDefaultFilteredValue, filters, filterSearch = false } = column;
22
+ const normalizedSearch = searchValue.trim().toLowerCase();
23
+ const selectedSet = new Set(selectedKeys.map(String));
24
+ const allKeys = useMemo(() => flattenFilterKeys(filters).map(String), [filters]);
25
+ const matches = (item) => typeof filterSearch === "function" ? filterSearch(normalizedSearch, item) : textMatches(normalizedSearch, item.text);
26
+ const toggleKey = (key, checked) => {
27
+ if (!filterMultiple) return setSelectedKeys(checked ? [key] : []);
28
+ const rest = selectedKeys.filter((item) => String(item) !== key);
29
+ setSelectedKeys(checked ? [...rest, key] : rest);
30
+ };
31
+ const renderMenuItems = (items) => items.flatMap((item, index) => {
32
+ const key = String(item.value);
33
+ if (item.children) {
34
+ const children = renderMenuItems(item.children);
35
+ if (children.length === 0) return [];
36
+ return [/* @__PURE__ */ jsxs("div", {
37
+ className: sx(styles.filterGroup),
38
+ role: "group",
39
+ children: [/* @__PURE__ */ jsx("div", {
40
+ className: clsx$1(sx(styles.filterGroupTitle), `${FILTER_CLS}-dropdown-submenu-title`),
41
+ children: item.text
42
+ }), children]
43
+ }, key || index)];
44
+ }
45
+ if (normalizedSearch && !matches(item)) return [];
46
+ return [/* @__PURE__ */ jsx("div", {
47
+ className: clsx$1(sx(styles.filterItem), `${FILTER_CLS}-dropdown-item`),
48
+ children: filterMultiple ? /* @__PURE__ */ jsx(Checkbox_default, {
49
+ checked: selectedSet.has(key),
50
+ onChange: (checked) => toggleKey(key, checked),
51
+ children: item.text
52
+ }) : /* @__PURE__ */ jsx(Radio, {
53
+ value: key,
54
+ children: item.text
55
+ })
56
+ }, key)];
57
+ });
58
+ const toTreeData = (items, ancestorMatched = false) => (items ?? []).flatMap((item, index) => {
59
+ const selfMatched = ancestorMatched || !normalizedSearch || matches(item);
60
+ const children = item.children ? toTreeData(item.children, selfMatched) : void 0;
61
+ if (!selfMatched && !children?.length) return [];
62
+ return [{
63
+ children,
64
+ key: item.value !== void 0 ? String(item.value) : String(index),
65
+ title: item.text
66
+ }];
67
+ });
68
+ const renderSearch = () => filterSearch ? /* @__PURE__ */ jsx("div", {
69
+ className: clsx$1(sx(styles.filterSearch), `${PREFIX_CLS}-filter-dropdown-search`),
70
+ children: /* @__PURE__ */ jsx(Input_default, {
71
+ allowClear: true,
72
+ placeholder: locale.filterSearchPlaceholder,
73
+ prefix: /* @__PURE__ */ jsx(Icon, {
74
+ icon: Search,
75
+ size: 14
76
+ }),
77
+ size: "small",
78
+ value: searchValue,
79
+ onChange: (event) => onSearchChange(event.target.value)
80
+ })
81
+ }) : null;
82
+ const empty = /* @__PURE__ */ jsx(Empty, {
83
+ className: sx(styles.filterEmpty),
84
+ description: locale.filterEmptyText,
85
+ imageSize: 24
86
+ });
87
+ let body;
88
+ if (!filters?.length) body = empty;
89
+ else if (filterMode === "tree") {
90
+ const treeData = toTreeData(filters);
91
+ const fullTreeData = normalizedSearch ? toTreeData(filters, true) : treeData;
92
+ const onTreeCheck = (checked, node) => {
93
+ if (!filterMultiple) return setSelectedKeys(checked ? [node.key] : []);
94
+ const lineage = findLineage(fullTreeData, node.key);
95
+ const base = conductCheck(fullTreeData, selectedKeys.map(String)).checked;
96
+ if (checked) lineage?.subtree.forEach((key) => base.add(key));
97
+ else [...lineage?.subtree ?? [], ...lineage?.ancestors ?? []].forEach((key) => base.delete(key));
98
+ setSelectedKeys([...conductCheck(fullTreeData, base).checked]);
99
+ };
100
+ body = /* @__PURE__ */ jsxs(Fragment$1, { children: [renderSearch(), /* @__PURE__ */ jsxs("div", {
101
+ className: clsx$1(sx(styles.filterTree), `${PREFIX_CLS}-filter-dropdown-tree`),
102
+ children: [filterMultiple && /* @__PURE__ */ jsx(Checkbox_default, {
103
+ checked: selectedKeys.length > 0 && selectedKeys.length === allKeys.length,
104
+ className: clsx$1(sx(styles.filterCheckAll), `lobe-table-filter-dropdown-checkall`),
105
+ indeterminate: selectedKeys.length > 0 && selectedKeys.length < allKeys.length,
106
+ onChange: (checked) => setSelectedKeys(checked ? allKeys : []),
107
+ children: locale.filterCheckAll
108
+ }), treeData.length > 0 ? /* @__PURE__ */ jsx(Tree, {
109
+ checkable: true,
110
+ defaultExpandAll: true,
111
+ checkStrictly: !filterMultiple || Boolean(normalizedSearch),
112
+ checkedKeys: selectedKeys.map(String),
113
+ multiple: filterMultiple,
114
+ selectedKeys: [],
115
+ size: "small",
116
+ treeData,
117
+ onCheck: (_, { checked, node }) => onTreeCheck(checked, node)
118
+ }) : empty]
119
+ })] });
120
+ } else {
121
+ const items = renderMenuItems(filters);
122
+ const list = /* @__PURE__ */ jsx("div", {
123
+ className: clsx$1(sx(styles.filterMenu), `${FILTER_CLS}-dropdown-menu`),
124
+ children: items
125
+ });
126
+ body = /* @__PURE__ */ jsxs(Fragment$1, { children: [renderSearch(), items.length === 0 ? empty : filterMultiple ? list : /* @__PURE__ */ jsx(RadioGroup, {
127
+ value: selectedKeys.length ? String(selectedKeys[0]) : null,
128
+ onValueChange: (value) => setSelectedKeys(value == null ? [] : [String(value)]),
129
+ children: list
130
+ })] });
131
+ }
132
+ const resetDisabled = filterResetToDefaultFilteredValue ? sameKeys((defaultFilteredValue ?? []).map(String), selectedKeys.map(String)) : selectedKeys.length === 0;
133
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [body, /* @__PURE__ */ jsxs("div", {
134
+ className: clsx$1(sx(styles.filterButtons), `${FILTER_CLS}-dropdown-btns`),
135
+ children: [/* @__PURE__ */ jsx(Button, {
136
+ disabled: resetDisabled,
137
+ size: "small",
138
+ type: "link",
139
+ onClick: () => onReset(),
140
+ children: locale.filterReset
141
+ }), /* @__PURE__ */ jsx(Button, {
142
+ size: "small",
143
+ type: "primary",
144
+ onClick: onConfirm,
145
+ children: locale.filterConfirm
146
+ })]
147
+ })] });
148
+ };
149
+ //#endregion
150
+ export { FilterPanel as default };
151
+
152
+ //# sourceMappingURL=FilterPanel.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilterPanel.mjs","names":["clsx","Checkbox","Input","BaseRadioGroup"],"sources":["../../../src/Table/render/FilterPanel.tsx"],"sourcesContent":["'use client';\n\nimport { RadioGroup as BaseRadioGroup } from '@base-ui/react/radio-group';\nimport clsx from 'clsx';\nimport { Search } from 'lucide-react';\nimport { type Key, type ReactNode, useMemo } from 'react';\n\nimport Button from '@/Button';\nimport { Checkbox } from '@/Checkbox';\nimport Empty from '@/Empty';\nimport Icon from '@/Icon';\nimport { Input } from '@/Input';\nimport { Radio } from '@/Radio';\nimport Tree, { conductCheck, type TreeDataNode } from '@/Tree';\n\nimport { PREFIX_CLS } from '../constants';\nimport { flattenFilterKeys } from '../pipeline/useFilter';\nimport { styles } from '../style';\nimport type { TableColumnFilterItem, TableColumnType, TableLocale } from '../type';\nimport { FILTER_CLS, findLineage, sameKeys, sx, textMatches } from './filterUtils';\n\nexport interface FilterPanelProps<T> {\n column: TableColumnType<T>;\n locale: Pick<\n TableLocale,\n | 'filterCheckAll'\n | 'filterConfirm'\n | 'filterEmptyText'\n | 'filterReset'\n | 'filterSearchPlaceholder'\n >;\n onConfirm: () => void;\n onReset: () => void;\n onSearchChange: (value: string) => void;\n searchValue: string;\n selectedKeys: Key[];\n setSelectedKeys: (keys: Key[]) => void;\n}\n\nconst FilterPanel = <T,>({\n column,\n locale,\n onConfirm,\n onReset,\n onSearchChange,\n searchValue,\n selectedKeys,\n setSelectedKeys,\n}: FilterPanelProps<T>) => {\n const {\n defaultFilteredValue,\n filterMode = 'menu',\n filterMultiple = true,\n filterResetToDefaultFilteredValue,\n filters,\n filterSearch = false,\n } = column;\n const normalizedSearch = searchValue.trim().toLowerCase();\n const selectedSet = new Set(selectedKeys.map(String));\n const allKeys = useMemo(() => flattenFilterKeys(filters).map(String), [filters]);\n\n const matches = (item: TableColumnFilterItem) =>\n typeof filterSearch === 'function'\n ? filterSearch(normalizedSearch, item)\n : textMatches(normalizedSearch, item.text);\n\n const toggleKey = (key: string, checked: boolean) => {\n if (!filterMultiple) return setSelectedKeys(checked ? [key] : []);\n const rest = selectedKeys.filter((item) => String(item) !== key);\n setSelectedKeys(checked ? [...rest, key] : rest);\n };\n\n const renderMenuItems = (items: readonly TableColumnFilterItem[]): ReactNode[] =>\n items.flatMap((item, index) => {\n const key = String(item.value);\n if (item.children) {\n const children = renderMenuItems(item.children);\n if (children.length === 0) return [];\n return [\n <div className={sx(styles.filterGroup)} key={key || index} role=\"group\">\n <div\n className={clsx(sx(styles.filterGroupTitle), `${FILTER_CLS}-dropdown-submenu-title`)}\n >\n {item.text}\n </div>\n {children}\n </div>,\n ];\n }\n if (normalizedSearch && !matches(item)) return [];\n return [\n <div className={clsx(sx(styles.filterItem), `${FILTER_CLS}-dropdown-item`)} key={key}>\n {filterMultiple ? (\n <Checkbox\n checked={selectedSet.has(key)}\n onChange={(checked) => toggleKey(key, checked)}\n >\n {item.text}\n </Checkbox>\n ) : (\n <Radio value={key}>{item.text}</Radio>\n )}\n </div>,\n ];\n });\n\n const toTreeData = (\n items: readonly TableColumnFilterItem[] | undefined,\n ancestorMatched = false,\n ): TreeDataNode[] =>\n (items ?? []).flatMap((item, index) => {\n const selfMatched = ancestorMatched || !normalizedSearch || matches(item);\n const children = item.children ? toTreeData(item.children, selfMatched) : undefined;\n if (!selfMatched && !children?.length) return [];\n return [\n {\n children,\n key: item.value !== undefined ? String(item.value) : String(index),\n title: item.text,\n },\n ];\n });\n\n const renderSearch = () =>\n filterSearch ? (\n <div className={clsx(sx(styles.filterSearch), `${PREFIX_CLS}-filter-dropdown-search`)}>\n <Input\n allowClear\n placeholder={locale.filterSearchPlaceholder}\n prefix={<Icon icon={Search} size={14} />}\n size=\"small\"\n value={searchValue}\n onChange={(event) => onSearchChange(event.target.value)}\n />\n </div>\n ) : null;\n\n const empty = (\n <Empty className={sx(styles.filterEmpty)} description={locale.filterEmptyText} imageSize={24} />\n );\n\n let body: ReactNode;\n if (!filters?.length) {\n body = empty;\n } else if (filterMode === 'tree') {\n const treeData = toTreeData(filters);\n // Searching prunes the tree, so cascade checks on the full tree and show the keys as is.\n const fullTreeData = normalizedSearch ? toTreeData(filters, true) : treeData;\n const onTreeCheck = (checked: boolean, node: TreeDataNode) => {\n if (!filterMultiple) return setSelectedKeys(checked ? [node.key] : []);\n const lineage = findLineage(fullTreeData, node.key);\n const base = conductCheck(fullTreeData, selectedKeys.map(String)).checked;\n if (checked) lineage?.subtree.forEach((key) => base.add(key));\n else\n [...(lineage?.subtree ?? []), ...(lineage?.ancestors ?? [])].forEach((key) =>\n base.delete(key),\n );\n setSelectedKeys([...conductCheck(fullTreeData, base).checked]);\n };\n body = (\n <>\n {renderSearch()}\n <div className={clsx(sx(styles.filterTree), `${PREFIX_CLS}-filter-dropdown-tree`)}>\n {filterMultiple && (\n <Checkbox\n checked={selectedKeys.length > 0 && selectedKeys.length === allKeys.length}\n className={clsx(sx(styles.filterCheckAll), `${PREFIX_CLS}-filter-dropdown-checkall`)}\n indeterminate={selectedKeys.length > 0 && selectedKeys.length < allKeys.length}\n onChange={(checked) => setSelectedKeys(checked ? allKeys : [])}\n >\n {locale.filterCheckAll}\n </Checkbox>\n )}\n {treeData.length > 0 ? (\n <Tree\n checkable\n defaultExpandAll\n checkStrictly={!filterMultiple || Boolean(normalizedSearch)}\n checkedKeys={selectedKeys.map(String)}\n multiple={filterMultiple}\n selectedKeys={[]}\n size=\"small\"\n treeData={treeData}\n onCheck={(_, { checked, node }) => onTreeCheck(checked, node)}\n />\n ) : (\n empty\n )}\n </div>\n </>\n );\n } else {\n const items = renderMenuItems(filters);\n const list = (\n <div className={clsx(sx(styles.filterMenu), `${FILTER_CLS}-dropdown-menu`)}>{items}</div>\n );\n body = (\n <>\n {renderSearch()}\n {items.length === 0 ? (\n empty\n ) : filterMultiple ? (\n list\n ) : (\n <BaseRadioGroup\n value={selectedKeys.length ? String(selectedKeys[0]) : null}\n onValueChange={(value) => setSelectedKeys(value == null ? [] : [String(value)])}\n >\n {list}\n </BaseRadioGroup>\n )}\n </>\n );\n }\n\n const resetDisabled = filterResetToDefaultFilteredValue\n ? sameKeys((defaultFilteredValue ?? []).map(String), selectedKeys.map(String))\n : selectedKeys.length === 0;\n\n return (\n <>\n {body}\n <div className={clsx(sx(styles.filterButtons), `${FILTER_CLS}-dropdown-btns`)}>\n <Button disabled={resetDisabled} size=\"small\" type=\"link\" onClick={() => onReset()}>\n {locale.filterReset}\n </Button>\n <Button size=\"small\" type=\"primary\" onClick={onConfirm}>\n {locale.filterConfirm}\n </Button>\n </div>\n </>\n );\n};\n\nexport default FilterPanel;\n"],"mappings":"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"}