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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1043) hide show
  1. package/README.md +6 -4
  2. package/es/Accordion/Accordion.mjs +3 -3
  3. package/es/Accordion/Accordion.mjs.map +1 -1
  4. package/es/Accordion/atoms.mjs +2 -2
  5. package/es/Accordion/atoms.mjs.map +1 -1
  6. package/es/Accordion/style.d.mts +1 -1
  7. package/es/ActionIcon/ActionIcon.mjs +2 -2
  8. package/es/ActionIcon/ActionIcon.mjs.map +1 -1
  9. package/es/ActionIcon/style.mjs +1 -1
  10. package/es/ActionIcon/style.mjs.map +1 -1
  11. package/es/ActionIcon/type.d.mts +1 -0
  12. package/es/Alert/Alert.mjs +5 -5
  13. package/es/Alert/Alert.mjs.map +1 -1
  14. package/es/Alert/type.d.mts +1 -0
  15. package/es/Anchor/Anchor.mjs +2 -2
  16. package/es/Anchor/Anchor.mjs.map +1 -1
  17. package/es/AutoComplete/AutoComplete.mjs +5 -5
  18. package/es/AutoComplete/AutoComplete.mjs.map +1 -1
  19. package/es/AutoComplete/style.d.mts +1 -0
  20. package/es/AutoComplete/style.mjs +2 -2
  21. package/es/AutoComplete/style.mjs.map +1 -1
  22. package/es/AutoComplete/type.d.mts +1 -0
  23. package/es/Avatar/Avatar.mjs +2 -2
  24. package/es/Avatar/Avatar.mjs.map +1 -1
  25. package/es/Avatar/AvatarGroup/index.mjs +2 -2
  26. package/es/Avatar/AvatarGroup/index.mjs.map +1 -1
  27. package/es/Breadcrumb/Breadcrumb.mjs +2 -2
  28. package/es/Breadcrumb/Breadcrumb.mjs.map +1 -1
  29. package/es/Button/Button.mjs +1 -1
  30. package/es/Button/Button.mjs.map +1 -1
  31. package/es/Button/style.d.mts +8 -1
  32. package/es/Button/style.mjs +41 -18
  33. package/es/Button/style.mjs.map +1 -1
  34. package/es/Button/type.d.mts +1 -0
  35. package/es/Carousel/Carousel.mjs +1 -1
  36. package/es/Carousel/Carousel.mjs.map +1 -1
  37. package/es/Checkbox/Checkbox.mjs +3 -3
  38. package/es/Checkbox/Checkbox.mjs.map +1 -1
  39. package/es/Checkbox/type.d.mts +1 -0
  40. package/es/CodeDiff/CodeDiff.mjs.map +1 -1
  41. package/es/CodeDiff/DiffPanel.mjs +6 -6
  42. package/es/CodeDiff/DiffPanel.mjs.map +1 -1
  43. package/es/CodeDiff/PatchDiff.mjs.map +1 -1
  44. package/es/CodeDiff/theme.mjs.map +1 -1
  45. package/es/CodeDiff/type.d.mts +2 -2
  46. package/es/CodeEditor/CodeEditor.mjs +5 -5
  47. package/es/CodeEditor/CodeEditor.mjs.map +1 -1
  48. package/es/ColorPicker/ColorInputs.mjs +136 -0
  49. package/es/ColorPicker/ColorInputs.mjs.map +1 -0
  50. package/es/ColorPicker/ColorPanel.mjs +145 -0
  51. package/es/ColorPicker/ColorPanel.mjs.map +1 -0
  52. package/es/ColorPicker/ColorPicker.mjs +63 -200
  53. package/es/ColorPicker/ColorPicker.mjs.map +1 -1
  54. package/es/ColorPicker/SaturationArea.mjs +2 -1
  55. package/es/ColorPicker/SaturationArea.mjs.map +1 -1
  56. package/es/ColorPicker/Swatch.mjs +24 -0
  57. package/es/ColorPicker/Swatch.mjs.map +1 -0
  58. package/es/ColorPicker/Swatches.mjs +66 -0
  59. package/es/ColorPicker/Swatches.mjs.map +1 -0
  60. package/es/ColorPicker/Trigger.mjs +112 -0
  61. package/es/ColorPicker/Trigger.mjs.map +1 -0
  62. package/es/ColorPicker/color.mjs +25 -1
  63. package/es/ColorPicker/color.mjs.map +1 -1
  64. package/es/ColorPicker/recent.mjs +25 -0
  65. package/es/ColorPicker/recent.mjs.map +1 -0
  66. package/es/ColorPicker/style.mjs +269 -70
  67. package/es/ColorPicker/style.mjs.map +1 -1
  68. package/es/ColorPicker/type.d.mts +15 -0
  69. package/es/ColorSwatches/ColorSwatches.mjs +18 -23
  70. package/es/ColorSwatches/ColorSwatches.mjs.map +1 -1
  71. package/es/ColorSwatches/CustomPicker.mjs +101 -0
  72. package/es/ColorSwatches/CustomPicker.mjs.map +1 -0
  73. package/es/ColorSwatches/index.d.mts +2 -2
  74. package/es/ColorSwatches/marker.stylex.mjs +9 -0
  75. package/es/ColorSwatches/marker.stylex.mjs.map +1 -0
  76. package/es/ColorSwatches/style.mjs +36 -0
  77. package/es/ColorSwatches/style.mjs.map +1 -1
  78. package/es/ColorSwatches/type.d.mts +12 -2
  79. package/es/ConfigProvider/cdnAssets.mjs +6 -0
  80. package/es/ConfigProvider/cdnAssets.mjs.map +1 -0
  81. package/es/ConfigProvider/index.mjs +2 -1
  82. package/es/ConfigProvider/index.mjs.map +1 -1
  83. package/es/ContextMenu/ContextMenuHost.mjs +2 -2
  84. package/es/ContextMenu/ContextMenuHost.mjs.map +1 -1
  85. package/es/ContextMenu/ContextMenuTrigger.mjs +2 -2
  86. package/es/ContextMenu/ContextMenuTrigger.mjs.map +1 -1
  87. package/es/ContextMenu/renderItems.mjs +3 -3
  88. package/es/ContextMenu/renderItems.mjs.map +1 -1
  89. package/es/ContextMenu/store.d.mts +0 -1
  90. package/es/ContextMenu/store.mjs.map +1 -1
  91. package/es/DatePicker/DatePicker.d.mts +9 -2
  92. package/es/DatePicker/DatePicker.mjs +15 -85
  93. package/es/DatePicker/DatePicker.mjs.map +1 -1
  94. package/es/DatePicker/DateRangePicker.d.mts +3 -2
  95. package/es/DatePicker/DateRangePicker.mjs +3 -125
  96. package/es/DatePicker/DateRangePicker.mjs.map +1 -1
  97. package/es/DatePicker/DayjsDatePicker.d.mts +12 -0
  98. package/es/DatePicker/DayjsDatePicker.mjs +19 -0
  99. package/es/DatePicker/DayjsDatePicker.mjs.map +1 -0
  100. package/es/DatePicker/DayjsDateRangePicker.d.mts +7 -0
  101. package/es/DatePicker/DayjsDateRangePicker.mjs +8 -0
  102. package/es/DatePicker/DayjsDateRangePicker.mjs.map +1 -0
  103. package/es/DatePicker/PurePanel.mjs +65 -0
  104. package/es/DatePicker/PurePanel.mjs.map +1 -0
  105. package/es/DatePicker/RangePicker.mjs +121 -0
  106. package/es/DatePicker/RangePicker.mjs.map +1 -0
  107. package/es/DatePicker/SinglePicker.mjs +134 -0
  108. package/es/DatePicker/SinglePicker.mjs.map +1 -0
  109. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs +57 -0
  110. package/es/DatePicker/core/PickerInput/Popup/Footer.mjs.map +1 -0
  111. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs +57 -0
  112. package/es/DatePicker/core/PickerInput/Popup/PopupPanel.mjs.map +1 -0
  113. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs +29 -0
  114. package/es/DatePicker/core/PickerInput/Popup/PresetPanel.mjs.map +1 -0
  115. package/es/DatePicker/core/PickerInput/Popup/index.mjs +133 -0
  116. package/es/DatePicker/core/PickerInput/Popup/index.mjs.map +1 -0
  117. package/es/DatePicker/core/PickerInput/RangePicker.d.mts +51 -0
  118. package/es/DatePicker/core/PickerInput/RangePicker.mjs +343 -0
  119. package/es/DatePicker/core/PickerInput/RangePicker.mjs.map +1 -0
  120. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs +27 -0
  121. package/es/DatePicker/core/PickerInput/Selector/ClearIcon.mjs.map +1 -0
  122. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs +19 -0
  123. package/es/DatePicker/core/PickerInput/Selector/Icon.mjs.map +1 -0
  124. package/es/DatePicker/core/PickerInput/Selector/Input.mjs +237 -0
  125. package/es/DatePicker/core/PickerInput/Selector/Input.mjs.map +1 -0
  126. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs +70 -0
  127. package/es/DatePicker/core/PickerInput/Selector/MaskFormat.mjs.map +1 -0
  128. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.d.mts +8 -0
  129. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs +136 -0
  130. package/es/DatePicker/core/PickerInput/Selector/RangeSelector.mjs.map +1 -0
  131. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs +28 -0
  132. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/HoverSelector.mjs.map +1 -0
  133. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs +69 -0
  134. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/MultipleDates.mjs.map +1 -0
  135. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs +111 -0
  136. package/es/DatePicker/core/PickerInput/Selector/SingleSelector/index.mjs.map +1 -0
  137. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs +18 -0
  138. package/es/DatePicker/core/PickerInput/Selector/hooks/useClearIcon.mjs.map +1 -0
  139. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs +108 -0
  140. package/es/DatePicker/core/PickerInput/Selector/hooks/useInputProps.mjs.map +1 -0
  141. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs +11 -0
  142. package/es/DatePicker/core/PickerInput/Selector/hooks/useRootProps.mjs.map +1 -0
  143. package/es/DatePicker/core/PickerInput/Selector/util.mjs +20 -0
  144. package/es/DatePicker/core/PickerInput/Selector/util.mjs.map +1 -0
  145. package/es/DatePicker/core/PickerInput/SinglePicker.d.mts +55 -0
  146. package/es/DatePicker/core/PickerInput/SinglePicker.mjs +318 -0
  147. package/es/DatePicker/core/PickerInput/SinglePicker.mjs.map +1 -0
  148. package/es/DatePicker/core/PickerInput/context.mjs +7 -0
  149. package/es/DatePicker/core/PickerInput/context.mjs.map +1 -0
  150. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs +30 -0
  151. package/es/DatePicker/core/PickerInput/hooks/useCellRender.mjs.map +1 -0
  152. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs +37 -0
  153. package/es/DatePicker/core/PickerInput/hooks/useDelayState.mjs.map +1 -0
  154. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs +18 -0
  155. package/es/DatePicker/core/PickerInput/hooks/useDisabledBoundary.mjs.map +1 -0
  156. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs +20 -0
  157. package/es/DatePicker/core/PickerInput/hooks/useFieldFormat.mjs.map +1 -0
  158. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs +31 -0
  159. package/es/DatePicker/core/PickerInput/hooks/useFieldsInvalidate.mjs.map +1 -0
  160. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs +98 -0
  161. package/es/DatePicker/core/PickerInput/hooks/useFilledProps.mjs.map +1 -0
  162. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs +41 -0
  163. package/es/DatePicker/core/PickerInput/hooks/useFocusEvents.mjs.map +1 -0
  164. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs +34 -0
  165. package/es/DatePicker/core/PickerInput/hooks/useFocusLock.mjs.map +1 -0
  166. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs +35 -0
  167. package/es/DatePicker/core/PickerInput/hooks/useHoverStore.mjs.map +1 -0
  168. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs +9 -0
  169. package/es/DatePicker/core/PickerInput/hooks/useInputReadOnly.mjs.map +1 -0
  170. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs +36 -0
  171. package/es/DatePicker/core/PickerInput/hooks/useInvalidate.mjs.map +1 -0
  172. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs +27 -0
  173. package/es/DatePicker/core/PickerInput/hooks/useLockEffect.mjs.map +1 -0
  174. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs +18 -0
  175. package/es/DatePicker/core/PickerInput/hooks/useOpen.mjs.map +1 -0
  176. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs +19 -0
  177. package/es/DatePicker/core/PickerInput/hooks/usePickerRef.mjs.map +1 -0
  178. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs +20 -0
  179. package/es/DatePicker/core/PickerInput/hooks/usePresets.mjs.map +1 -0
  180. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs +24 -0
  181. package/es/DatePicker/core/PickerInput/hooks/useRangeDisabledDate.mjs.map +1 -0
  182. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs +107 -0
  183. package/es/DatePicker/core/PickerInput/hooks/useRangePickerValue.mjs.map +1 -0
  184. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs +144 -0
  185. package/es/DatePicker/core/PickerInput/hooks/useRangeValue.mjs.map +1 -0
  186. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs +219 -0
  187. package/es/DatePicker/core/PickerInput/hooks/useRangeValueChange.mjs.map +1 -0
  188. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs +11 -0
  189. package/es/DatePicker/core/PickerInput/hooks/useShowNow.mjs.map +1 -0
  190. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs +131 -0
  191. package/es/DatePicker/core/PickerPanel/DatePanel/index.mjs.map +1 -0
  192. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs +35 -0
  193. package/es/DatePicker/core/PickerPanel/DateTimePanel/index.mjs.map +1 -0
  194. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs +84 -0
  195. package/es/DatePicker/core/PickerPanel/DecadePanel/index.mjs.map +1 -0
  196. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs +73 -0
  197. package/es/DatePicker/core/PickerPanel/MonthPanel/index.mjs.map +1 -0
  198. package/es/DatePicker/core/PickerPanel/PanelBody.mjs +95 -0
  199. package/es/DatePicker/core/PickerPanel/PanelBody.mjs.map +1 -0
  200. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs +130 -0
  201. package/es/DatePicker/core/PickerPanel/PanelHeader.mjs.map +1 -0
  202. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs +64 -0
  203. package/es/DatePicker/core/PickerPanel/QuarterPanel/index.mjs.map +1 -0
  204. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs +108 -0
  205. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/ClockDial.mjs.map +1 -0
  206. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs +44 -0
  207. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/geometry.mjs.map +1 -0
  208. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs +157 -0
  209. package/es/DatePicker/core/PickerPanel/TimePanel/TimeClock/index.mjs.map +1 -0
  210. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs +100 -0
  211. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/TimeColumn.mjs.map +1 -0
  212. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs +71 -0
  213. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/index.mjs.map +1 -0
  214. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs +62 -0
  215. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useScrollTo.mjs.map +1 -0
  216. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs +200 -0
  217. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/useTimeState.mjs.map +1 -0
  218. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs +25 -0
  219. package/es/DatePicker/core/PickerPanel/TimePanel/TimePanelBody/util.mjs.map +1 -0
  220. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs +31 -0
  221. package/es/DatePicker/core/PickerPanel/TimePanel/index.mjs.map +1 -0
  222. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs +34 -0
  223. package/es/DatePicker/core/PickerPanel/WeekPanel/index.mjs.map +1 -0
  224. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs +92 -0
  225. package/es/DatePicker/core/PickerPanel/YearPanel/index.mjs.map +1 -0
  226. package/es/DatePicker/core/PickerPanel/context.mjs +48 -0
  227. package/es/DatePicker/core/PickerPanel/context.mjs.map +1 -0
  228. package/es/DatePicker/core/PickerPanel/index.d.mts +1 -0
  229. package/es/DatePicker/core/PickerPanel/index.mjs +175 -0
  230. package/es/DatePicker/core/PickerPanel/index.mjs.map +1 -0
  231. package/es/DatePicker/core/PickerPopup.mjs +118 -0
  232. package/es/DatePicker/core/PickerPopup.mjs.map +1 -0
  233. package/es/DatePicker/core/generate/dayjs.mjs +109 -0
  234. package/es/DatePicker/core/generate/dayjs.mjs.map +1 -0
  235. package/es/DatePicker/core/generate/index.d.mts +40 -0
  236. package/es/DatePicker/core/hooks/react.mjs +58 -0
  237. package/es/DatePicker/core/hooks/react.mjs.map +1 -0
  238. package/es/DatePicker/core/hooks/useLocale.mjs +51 -0
  239. package/es/DatePicker/core/hooks/useLocale.mjs.map +1 -0
  240. package/es/DatePicker/core/hooks/useSemantic.mjs +20 -0
  241. package/es/DatePicker/core/hooks/useSemantic.mjs.map +1 -0
  242. package/es/DatePicker/core/hooks/useSyncState.mjs +25 -0
  243. package/es/DatePicker/core/hooks/useSyncState.mjs.map +1 -0
  244. package/es/DatePicker/core/hooks/useTimeConfig.mjs +173 -0
  245. package/es/DatePicker/core/hooks/useTimeConfig.mjs.map +1 -0
  246. package/es/DatePicker/core/hooks/useTimeInfo.mjs +110 -0
  247. package/es/DatePicker/core/hooks/useTimeInfo.mjs.map +1 -0
  248. package/es/DatePicker/core/hooks/useToggleDates.mjs +21 -0
  249. package/es/DatePicker/core/hooks/useToggleDates.mjs.map +1 -0
  250. package/es/DatePicker/core/index.d.mts +5 -0
  251. package/es/DatePicker/core/index.mjs +9 -0
  252. package/es/DatePicker/core/index.mjs.map +1 -0
  253. package/es/DatePicker/core/interface.d.mts +325 -0
  254. package/es/DatePicker/core/locale/common.mjs +11 -0
  255. package/es/DatePicker/core/locale/common.mjs.map +1 -0
  256. package/es/DatePicker/core/locale/en_US.mjs +39 -0
  257. package/es/DatePicker/core/locale/en_US.mjs.map +1 -0
  258. package/es/DatePicker/core/utils/common.mjs +73 -0
  259. package/es/DatePicker/core/utils/common.mjs.map +1 -0
  260. package/es/DatePicker/core/utils/dateUtil.mjs +106 -0
  261. package/es/DatePicker/core/utils/dateUtil.mjs.map +1 -0
  262. package/es/DatePicker/core/utils/miscUtil.mjs +46 -0
  263. package/es/DatePicker/core/utils/miscUtil.mjs.map +1 -0
  264. package/es/DatePicker/core/utils/uiUtil.mjs +9 -0
  265. package/es/DatePicker/core/utils/uiUtil.mjs.map +1 -0
  266. package/es/DatePicker/dateGenerateConfig.mjs +52 -0
  267. package/es/DatePicker/dateGenerateConfig.mjs.map +1 -0
  268. package/es/DatePicker/generateConfig.mjs +12 -0
  269. package/es/DatePicker/generateConfig.mjs.map +1 -0
  270. package/es/DatePicker/generatePicker.d.mts +12 -0
  271. package/es/DatePicker/generatePicker.mjs +22 -0
  272. package/es/DatePicker/generatePicker.mjs.map +1 -0
  273. package/es/DatePicker/index.d.mts +8 -3
  274. package/es/DatePicker/index.mjs +5 -1
  275. package/es/DatePicker/legacyDate.mjs +58 -0
  276. package/es/DatePicker/legacyDate.mjs.map +1 -0
  277. package/es/DatePicker/locale.d.mts +15 -0
  278. package/es/DatePicker/locale.mjs +143 -0
  279. package/es/DatePicker/locale.mjs.map +1 -0
  280. package/es/DatePicker/semantic.mjs +29 -0
  281. package/es/DatePicker/semantic.mjs.map +1 -0
  282. package/es/DatePicker/style.mjs +3 -155
  283. package/es/DatePicker/style.mjs.map +1 -1
  284. package/es/DatePicker/type.d.mts +294 -27
  285. package/es/DatePicker/usePanelKeyboard.mjs +230 -0
  286. package/es/DatePicker/usePanelKeyboard.mjs.map +1 -0
  287. package/es/DatePicker/usePickerShared.mjs +106 -0
  288. package/es/DatePicker/usePickerShared.mjs.map +1 -0
  289. package/es/DatePicker/usePresetActive.mjs +49 -0
  290. package/es/DatePicker/usePresetActive.mjs.map +1 -0
  291. package/es/DraggablePanel/atoms.mjs +6 -6
  292. package/es/DraggablePanel/atoms.mjs.map +1 -1
  293. package/es/DraggableSideNav/DraggableSideNav.mjs +5 -5
  294. package/es/DraggableSideNav/DraggableSideNav.mjs.map +1 -1
  295. package/es/Drawer/Drawer.mjs +2 -2
  296. package/es/Drawer/Drawer.mjs.map +1 -1
  297. package/es/Drawer/atoms.d.mts +1 -0
  298. package/es/Drawer/atoms.mjs +7 -7
  299. package/es/Drawer/atoms.mjs.map +1 -1
  300. package/es/Drawer/constants.d.mts +1 -0
  301. package/es/Drawer/style.mjs.map +1 -1
  302. package/es/DropdownMenu/atoms.mjs +23 -23
  303. package/es/DropdownMenu/atoms.mjs.map +1 -1
  304. package/es/DropdownMenu/sharedStyle.mjs +2 -2
  305. package/es/DropdownMenu/sharedStyle.mjs.map +1 -1
  306. package/es/EditableText/ControlInput.mjs +42 -29
  307. package/es/EditableText/ControlInput.mjs.map +1 -1
  308. package/es/EditableText/EditableText.mjs +2 -2
  309. package/es/EditableText/EditableText.mjs.map +1 -1
  310. package/es/EditorSlashMenu/atoms.mjs +12 -12
  311. package/es/EditorSlashMenu/atoms.mjs.map +1 -1
  312. package/es/EmojiPicker/EmojiPicker.mjs +10 -16
  313. package/es/EmojiPicker/EmojiPicker.mjs.map +1 -1
  314. package/es/EmojiPicker/loadEmojiData.mjs +6 -0
  315. package/es/EmojiPicker/loadEmojiData.mjs.map +1 -0
  316. package/es/EmojiPicker/useEmojiMartI18n.mjs +37 -0
  317. package/es/EmojiPicker/useEmojiMartI18n.mjs.map +1 -0
  318. package/es/FileTypeIcon/type.d.mts +1 -0
  319. package/es/FloatingPanel/FloatingPanel.mjs +2 -2
  320. package/es/FloatingPanel/FloatingPanel.mjs.map +1 -1
  321. package/es/FloatingPanel/style.mjs +3 -2
  322. package/es/FloatingPanel/style.mjs.map +1 -1
  323. package/es/Form/Form.mjs +6 -2
  324. package/es/Form/Form.mjs.map +1 -1
  325. package/es/Form/style.mjs +3 -3
  326. package/es/Form/style.mjs.map +1 -1
  327. package/es/Form/type.d.mts +8 -0
  328. package/es/FormKit/List.mjs +2 -2
  329. package/es/FormKit/List.mjs.map +1 -1
  330. package/es/FormKit/engine/tanstack.mjs +1 -1
  331. package/es/FormKit/engine/tanstack.mjs.map +1 -1
  332. package/es/Grid/style.mjs +1 -1
  333. package/es/Grid/style.mjs.map +1 -1
  334. package/es/GroupAvatar/type.d.mts +1 -0
  335. package/es/Highlighter/FullFeatured.mjs +2 -2
  336. package/es/Highlighter/FullFeatured.mjs.map +1 -1
  337. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs +2 -2
  338. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
  339. package/es/Highlighter/SyntaxHighlighter/index.mjs +4 -4
  340. package/es/Highlighter/SyntaxHighlighter/index.mjs.map +1 -1
  341. package/es/Highlighter/const.d.mts +1 -0
  342. package/es/Highlighter/style.mjs +2 -2
  343. package/es/Highlighter/style.mjs.map +1 -1
  344. package/es/HotkeyInput/HotkeyInput.mjs +1 -1
  345. package/es/HotkeyInput/HotkeyInput.mjs.map +1 -1
  346. package/es/HtmlPreview/HtmlPreview.mjs +2 -2
  347. package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
  348. package/es/Icon/Icon.mjs +2 -2
  349. package/es/Icon/Icon.mjs.map +1 -1
  350. package/es/Image/type.d.mts +1 -0
  351. package/es/Image/viewer/ImageViewer.mjs +2 -1
  352. package/es/Image/viewer/ImageViewer.mjs.map +1 -1
  353. package/es/Image/viewer/Toolbar.mjs +19 -6
  354. package/es/Image/viewer/Toolbar.mjs.map +1 -1
  355. package/es/Image/viewer/ViewerChrome.mjs.map +1 -1
  356. package/es/ImageSelect/ImageSelect.mjs +1 -1
  357. package/es/ImageSelect/ImageSelect.mjs.map +1 -1
  358. package/es/Input/Input.mjs +7 -5
  359. package/es/Input/Input.mjs.map +1 -1
  360. package/es/Input/TextArea.mjs +1 -1
  361. package/es/Input/TextArea.mjs.map +1 -1
  362. package/es/Input/style.d.mts +1 -0
  363. package/es/Input/style.mjs +3 -3
  364. package/es/Input/style.mjs.map +1 -1
  365. package/es/Input/type.d.mts +1 -0
  366. package/es/List/ListRow.mjs +3 -3
  367. package/es/List/ListRow.mjs.map +1 -1
  368. package/es/Markdown/Markdown.mjs +2 -2
  369. package/es/Markdown/Markdown.mjs.map +1 -1
  370. package/es/Markdown/Typography.mjs +2 -2
  371. package/es/Markdown/Typography.mjs.map +1 -1
  372. package/es/Markdown/plugins/remarkColor.d.mts +1 -0
  373. package/es/Markdown/plugins/remarkGfmPlus.d.mts +1 -0
  374. package/es/Markdown/plugins/remarkVideo.d.mts +1 -0
  375. package/es/Mermaid/FullFeatured.mjs +2 -2
  376. package/es/Mermaid/FullFeatured.mjs.map +1 -1
  377. package/es/Mermaid/SyntaxMermaid/index.mjs +4 -4
  378. package/es/Mermaid/SyntaxMermaid/index.mjs.map +1 -1
  379. package/es/Mermaid/const.d.mts +1 -0
  380. package/es/Modal/atoms.d.mts +1 -0
  381. package/es/Modal/atoms.mjs +8 -8
  382. package/es/Modal/atoms.mjs.map +1 -1
  383. package/es/Modal/constants.d.mts +1 -0
  384. package/es/Modal/type.d.mts +1 -0
  385. package/es/Pagination/Pagination.mjs +182 -42
  386. package/es/Pagination/Pagination.mjs.map +1 -1
  387. package/es/Pagination/helpers.mjs +3 -3
  388. package/es/Pagination/helpers.mjs.map +1 -1
  389. package/es/Pagination/index.d.mts +2 -2
  390. package/es/Pagination/marker.stylex.mjs +9 -0
  391. package/es/Pagination/marker.stylex.mjs.map +1 -0
  392. package/es/Pagination/style.mjs +74 -4
  393. package/es/Pagination/style.mjs.map +1 -1
  394. package/es/Pagination/type.d.mts +41 -3
  395. package/es/Popover/PopoverInGroup.mjs +3 -3
  396. package/es/Popover/PopoverInGroup.mjs.map +1 -1
  397. package/es/Popover/atoms.mjs +7 -7
  398. package/es/Popover/atoms.mjs.map +1 -1
  399. package/es/Popover/style.mjs +1 -1
  400. package/es/Popover/style.mjs.map +1 -1
  401. package/es/ProTable/ProTable.d.mts +11 -0
  402. package/es/ProTable/ProTable.mjs +208 -0
  403. package/es/ProTable/ProTable.mjs.map +1 -0
  404. package/es/ProTable/hooks/useColumnRequest.mjs +55 -0
  405. package/es/ProTable/hooks/useColumnRequest.mjs.map +1 -0
  406. package/es/ProTable/hooks/useColumnsState.mjs +37 -0
  407. package/es/ProTable/hooks/useColumnsState.mjs.map +1 -0
  408. package/es/ProTable/hooks/useDelayedFlag.mjs +18 -0
  409. package/es/ProTable/hooks/useDelayedFlag.mjs.map +1 -0
  410. package/es/ProTable/hooks/useDensity.mjs +15 -0
  411. package/es/ProTable/hooks/useDensity.mjs.map +1 -0
  412. package/es/ProTable/hooks/useFetchData.mjs +97 -0
  413. package/es/ProTable/hooks/useFetchData.mjs.map +1 -0
  414. package/es/ProTable/hooks/useFullscreen.mjs +22 -0
  415. package/es/ProTable/hooks/useFullscreen.mjs.map +1 -0
  416. package/es/ProTable/hooks/usePageInfo.mjs +35 -0
  417. package/es/ProTable/hooks/usePageInfo.mjs.map +1 -0
  418. package/es/ProTable/hooks/useProColumns.mjs +123 -0
  419. package/es/ProTable/hooks/useProColumns.mjs.map +1 -0
  420. package/es/ProTable/hooks/useProLoading.mjs +19 -0
  421. package/es/ProTable/hooks/useProLoading.mjs.map +1 -0
  422. package/es/ProTable/hooks/useProLocale.mjs +22 -0
  423. package/es/ProTable/hooks/useProLocale.mjs.map +1 -0
  424. package/es/ProTable/hooks/useProRequest.mjs +137 -0
  425. package/es/ProTable/hooks/useProRequest.mjs.map +1 -0
  426. package/es/ProTable/hooks/useRowCache.mjs +11 -0
  427. package/es/ProTable/hooks/useRowCache.mjs.map +1 -0
  428. package/es/ProTable/hooks/useSearchForm.mjs +141 -0
  429. package/es/ProTable/hooks/useSearchForm.mjs.map +1 -0
  430. package/es/ProTable/hooks/useTableBindings.mjs +39 -0
  431. package/es/ProTable/hooks/useTableBindings.mjs.map +1 -0
  432. package/es/ProTable/hooks/useTableSelection.mjs +14 -0
  433. package/es/ProTable/hooks/useTableSelection.mjs.map +1 -0
  434. package/es/ProTable/index.d.mts +4 -0
  435. package/es/ProTable/index.d.ts +1 -0
  436. package/es/ProTable/index.js +1 -0
  437. package/es/ProTable/index.mjs +3 -0
  438. package/es/ProTable/locale.d.mts +15 -0
  439. package/es/ProTable/locale.mjs +66 -0
  440. package/es/ProTable/locale.mjs.map +1 -0
  441. package/es/ProTable/parts/ColumnSetting.mjs +155 -0
  442. package/es/ProTable/parts/ColumnSetting.mjs.map +1 -0
  443. package/es/ProTable/parts/FieldControl.mjs +134 -0
  444. package/es/ProTable/parts/FieldControl.mjs.map +1 -0
  445. package/es/ProTable/parts/KeywordInput.mjs +19 -0
  446. package/es/ProTable/parts/KeywordInput.mjs.map +1 -0
  447. package/es/ProTable/parts/LightFilter.mjs +70 -0
  448. package/es/ProTable/parts/LightFilter.mjs.map +1 -0
  449. package/es/ProTable/parts/OptionPopover.mjs +17 -0
  450. package/es/ProTable/parts/OptionPopover.mjs.map +1 -0
  451. package/es/ProTable/parts/SearchForm.mjs +180 -0
  452. package/es/ProTable/parts/SearchForm.mjs.map +1 -0
  453. package/es/ProTable/parts/SearchSection.mjs +33 -0
  454. package/es/ProTable/parts/SearchSection.mjs.map +1 -0
  455. package/es/ProTable/parts/TableAlert.mjs +38 -0
  456. package/es/ProTable/parts/TableAlert.mjs.map +1 -0
  457. package/es/ProTable/parts/Toolbar.mjs +50 -0
  458. package/es/ProTable/parts/Toolbar.mjs.map +1 -0
  459. package/es/ProTable/parts/ToolbarOptions.mjs +103 -0
  460. package/es/ProTable/parts/ToolbarOptions.mjs.map +1 -0
  461. package/es/ProTable/parts/renderValue.mjs +118 -0
  462. package/es/ProTable/parts/renderValue.mjs.map +1 -0
  463. package/es/ProTable/style.mjs +287 -0
  464. package/es/ProTable/style.mjs.map +1 -0
  465. package/es/ProTable/type.d.mts +400 -0
  466. package/es/ProTable/utils.mjs +152 -0
  467. package/es/ProTable/utils.mjs.map +1 -0
  468. package/es/Radio/Radio.mjs +3 -3
  469. package/es/Radio/Radio.mjs.map +1 -1
  470. package/es/Radio/type.d.mts +1 -0
  471. package/es/Rate/Rate.mjs +1 -1
  472. package/es/Rate/Rate.mjs.map +1 -1
  473. package/es/ScrollArea/atoms.mjs +4 -4
  474. package/es/ScrollArea/atoms.mjs.map +1 -1
  475. package/es/ScrollShadow/ScrollShadow.mjs +1 -1
  476. package/es/ScrollShadow/ScrollShadow.mjs.map +1 -1
  477. package/es/SearchBar/SearchBar.mjs +31 -25
  478. package/es/SearchBar/SearchBar.mjs.map +1 -1
  479. package/es/Segmented/Segmented.mjs +4 -4
  480. package/es/Segmented/Segmented.mjs.map +1 -1
  481. package/es/Segmented/atoms.d.mts +1 -0
  482. package/es/Segmented/atoms.mjs +2 -2
  483. package/es/Segmented/atoms.mjs.map +1 -1
  484. package/es/Select/Select.mjs +22 -13
  485. package/es/Select/Select.mjs.map +1 -1
  486. package/es/Select/atoms.mjs +5 -5
  487. package/es/Select/atoms.mjs.map +1 -1
  488. package/es/Select/helpers.mjs +8 -1
  489. package/es/Select/helpers.mjs.map +1 -1
  490. package/es/Select/hooks.mjs +8 -4
  491. package/es/Select/hooks.mjs.map +1 -1
  492. package/es/Select/renderOptions.mjs +2 -2
  493. package/es/Select/renderOptions.mjs.map +1 -1
  494. package/es/Select/type.d.mts +7 -0
  495. package/es/Slider/type.d.mts +1 -0
  496. package/es/Switch/Switch.mjs +9 -2
  497. package/es/Switch/Switch.mjs.map +1 -1
  498. package/es/Switch/atoms.d.mts +8 -1
  499. package/es/Switch/atoms.mjs +23 -7
  500. package/es/Switch/atoms.mjs.map +1 -1
  501. package/es/Switch/style.mjs +33 -2
  502. package/es/Switch/style.mjs.map +1 -1
  503. package/es/Table/Column.d.mts +8 -0
  504. package/es/Table/Column.mjs +6 -0
  505. package/es/Table/Column.mjs.map +1 -0
  506. package/es/Table/ColumnGroup.d.mts +11 -0
  507. package/es/Table/ColumnGroup.mjs +6 -0
  508. package/es/Table/ColumnGroup.mjs.map +1 -0
  509. package/es/Table/Table.d.mts +16 -2
  510. package/es/Table/Table.mjs +158 -118
  511. package/es/Table/Table.mjs.map +1 -1
  512. package/es/Table/atoms/cells.d.mts +42 -0
  513. package/es/Table/atoms/cells.mjs +72 -0
  514. package/es/Table/atoms/cells.mjs.map +1 -0
  515. package/es/Table/atoms/index.d.mts +3 -0
  516. package/es/Table/atoms/layout.d.mts +44 -0
  517. package/es/Table/atoms/layout.mjs +62 -0
  518. package/es/Table/atoms/layout.mjs.map +1 -0
  519. package/es/Table/constants.mjs +16 -0
  520. package/es/Table/constants.mjs.map +1 -0
  521. package/es/Table/engine/fixed.d.mts +1 -0
  522. package/es/Table/engine/fixed.mjs +53 -0
  523. package/es/Table/engine/fixed.mjs.map +1 -0
  524. package/es/Table/engine/types.d.mts +1 -0
  525. package/es/Table/engine/useTableEngine.mjs +180 -0
  526. package/es/Table/engine/useTableEngine.mjs.map +1 -0
  527. package/es/Table/index.d.mts +7 -2
  528. package/es/Table/index.mjs +4 -1
  529. package/es/Table/internal.d.mts +3 -0
  530. package/es/Table/pipeline/columnUtils.d.mts +5 -0
  531. package/es/Table/pipeline/columnUtils.mjs +58 -0
  532. package/es/Table/pipeline/columnUtils.mjs.map +1 -0
  533. package/es/Table/pipeline/convertChildrenToColumns.mjs +24 -0
  534. package/es/Table/pipeline/convertChildrenToColumns.mjs.map +1 -0
  535. package/es/Table/pipeline/normalizeColumns.mjs +140 -0
  536. package/es/Table/pipeline/normalizeColumns.mjs.map +1 -0
  537. package/es/Table/pipeline/selectionUtils.d.mts +9 -0
  538. package/es/Table/pipeline/selectionUtils.mjs +115 -0
  539. package/es/Table/pipeline/selectionUtils.mjs.map +1 -0
  540. package/es/Table/pipeline/useBreakpoint.mjs +36 -0
  541. package/es/Table/pipeline/useBreakpoint.mjs.map +1 -0
  542. package/es/Table/pipeline/useExpandable.mjs +45 -0
  543. package/es/Table/pipeline/useExpandable.mjs.map +1 -0
  544. package/es/Table/pipeline/useFilter.mjs +52 -0
  545. package/es/Table/pipeline/useFilter.mjs.map +1 -0
  546. package/es/Table/pipeline/useSelection.mjs +302 -0
  547. package/es/Table/pipeline/useSelection.mjs.map +1 -0
  548. package/es/Table/pipeline/useSorter.mjs +146 -0
  549. package/es/Table/pipeline/useSorter.mjs.map +1 -0
  550. package/es/Table/pipeline/useTableLocale.mjs +30 -0
  551. package/es/Table/pipeline/useTableLocale.mjs.map +1 -0
  552. package/es/Table/pipeline/useTableState.mjs +118 -0
  553. package/es/Table/pipeline/useTableState.mjs.map +1 -0
  554. package/es/Table/pipeline/useVirtualLayout.mjs +80 -0
  555. package/es/Table/pipeline/useVirtualLayout.mjs.map +1 -0
  556. package/es/Table/render/Body.mjs +150 -0
  557. package/es/Table/render/Body.mjs.map +1 -0
  558. package/es/Table/render/BodyCell.mjs +87 -0
  559. package/es/Table/render/BodyCell.mjs.map +1 -0
  560. package/es/Table/render/CellShell.mjs +84 -0
  561. package/es/Table/render/CellShell.mjs.map +1 -0
  562. package/es/Table/render/ExpandIcon.mjs +28 -0
  563. package/es/Table/render/ExpandIcon.mjs.map +1 -0
  564. package/es/Table/render/FilterDropdown.mjs +139 -0
  565. package/es/Table/render/FilterDropdown.mjs.map +1 -0
  566. package/es/Table/render/FilterPanel.mjs +152 -0
  567. package/es/Table/render/FilterPanel.mjs.map +1 -0
  568. package/es/Table/render/FixedFrost.mjs +122 -0
  569. package/es/Table/render/FixedFrost.mjs.map +1 -0
  570. package/es/Table/render/FixedHolder.mjs +51 -0
  571. package/es/Table/render/FixedHolder.mjs.map +1 -0
  572. package/es/Table/render/Header.mjs +184 -0
  573. package/es/Table/render/Header.mjs.map +1 -0
  574. package/es/Table/render/LoadingSkeleton.mjs +78 -0
  575. package/es/Table/render/LoadingSkeleton.mjs.map +1 -0
  576. package/es/Table/render/PaginationBar.mjs +71 -0
  577. package/es/Table/render/PaginationBar.mjs.map +1 -0
  578. package/es/Table/render/SelectionCells.mjs +111 -0
  579. package/es/Table/render/SelectionCells.mjs.map +1 -0
  580. package/es/Table/render/StickyScrollBar.mjs +99 -0
  581. package/es/Table/render/StickyScrollBar.mjs.map +1 -0
  582. package/es/Table/render/Summary.d.mts +16 -0
  583. package/es/Table/render/Summary.mjs +58 -0
  584. package/es/Table/render/Summary.mjs.map +1 -0
  585. package/es/Table/render/TableView.mjs +215 -0
  586. package/es/Table/render/TableView.mjs.map +1 -0
  587. package/es/Table/render/VirtualBody.mjs +101 -0
  588. package/es/Table/render/VirtualBody.mjs.map +1 -0
  589. package/es/Table/render/context.mjs +15 -0
  590. package/es/Table/render/context.mjs.map +1 -0
  591. package/es/Table/render/filterUtils.mjs +22 -0
  592. package/es/Table/render/filterUtils.mjs.map +1 -0
  593. package/es/Table/render/tableHelpers.mjs +27 -0
  594. package/es/Table/render/tableHelpers.mjs.map +1 -0
  595. package/es/Table/render/useColGroups.mjs +23 -0
  596. package/es/Table/render/useColGroups.mjs.map +1 -0
  597. package/es/Table/render/useScrollSync.mjs +104 -0
  598. package/es/Table/render/useScrollSync.mjs.map +1 -0
  599. package/es/Table/render/useViewContexts.mjs +134 -0
  600. package/es/Table/render/useViewContexts.mjs.map +1 -0
  601. package/es/Table/semantic.mjs +45 -0
  602. package/es/Table/semantic.mjs.map +1 -0
  603. package/es/Table/store/createTableStore.d.mts +1 -0
  604. package/es/Table/store/createTableStore.mjs +40 -0
  605. package/es/Table/store/createTableStore.mjs.map +1 -0
  606. package/es/Table/store/hooks.mjs +24 -0
  607. package/es/Table/store/hooks.mjs.map +1 -0
  608. package/es/Table/style.mjs +179 -90
  609. package/es/Table/style.mjs.map +1 -1
  610. package/es/Table/type.d.mts +467 -37
  611. package/es/Table/useTableController.mjs +293 -0
  612. package/es/Table/useTableController.mjs.map +1 -0
  613. package/es/Tabs/Tabs.mjs +37 -23
  614. package/es/Tabs/Tabs.mjs.map +1 -1
  615. package/es/Tabs/atoms.mjs +2 -2
  616. package/es/Tabs/atoms.mjs.map +1 -1
  617. package/es/Tabs/style.d.mts +1 -1
  618. package/es/Tag/Tag.mjs +2 -2
  619. package/es/Tag/Tag.mjs.map +1 -1
  620. package/es/Text/Text.mjs +2 -2
  621. package/es/Text/Text.mjs.map +1 -1
  622. package/es/Text/style.d.mts +1 -0
  623. package/es/Text/style.mjs +3 -3
  624. package/es/Text/style.mjs.map +1 -1
  625. package/es/Toast/dodge.mjs +0 -1
  626. package/es/Toast/dodge.mjs.map +1 -1
  627. package/es/Toast/dodge.stylex.mjs +1 -4
  628. package/es/Toast/dodge.stylex.mjs.map +1 -1
  629. package/es/Toast/style.mjs +1 -1
  630. package/es/Toast/style.mjs.map +1 -1
  631. package/es/ToggleGroup/ToggleGroup.mjs +4 -4
  632. package/es/ToggleGroup/ToggleGroup.mjs.map +1 -1
  633. package/es/ToggleGroup/atoms.d.mts +1 -0
  634. package/es/ToggleGroup/atoms.mjs +2 -2
  635. package/es/ToggleGroup/atoms.mjs.map +1 -1
  636. package/es/Tooltip/TooltipGroup.mjs +3 -3
  637. package/es/Tooltip/TooltipGroup.mjs.map +1 -1
  638. package/es/Tooltip/TooltipInGroup.mjs +1 -1
  639. package/es/Tooltip/TooltipInGroup.mjs.map +1 -1
  640. package/es/Tooltip/TooltipStandalone.mjs +4 -4
  641. package/es/Tooltip/TooltipStandalone.mjs.map +1 -1
  642. package/es/Tooltip/style.mjs +2 -2
  643. package/es/Tooltip/style.mjs.map +1 -1
  644. package/es/Tree/Tree.mjs +3 -3
  645. package/es/Tree/Tree.mjs.map +1 -1
  646. package/es/Tree/TreeNode.mjs +2 -2
  647. package/es/Tree/TreeNode.mjs.map +1 -1
  648. package/es/Video/Video.mjs +46 -0
  649. package/es/Video/Video.mjs.map +1 -0
  650. package/es/Video/context.mjs +14 -0
  651. package/es/Video/context.mjs.map +1 -0
  652. package/es/Video/index.d.mts +23 -39
  653. package/es/Video/index.mjs +21 -111
  654. package/es/Video/index.mjs.map +1 -1
  655. package/es/Video/parts/Caption.d.mts +9 -0
  656. package/es/Video/parts/Caption.mjs +37 -0
  657. package/es/Video/parts/Caption.mjs.map +1 -0
  658. package/es/Video/parts/CenterPlay.d.mts +8 -0
  659. package/es/Video/parts/CenterPlay.mjs +34 -0
  660. package/es/Video/parts/CenterPlay.mjs.map +1 -0
  661. package/es/Video/parts/Controls.d.mts +9 -0
  662. package/es/Video/parts/Controls.mjs +128 -0
  663. package/es/Video/parts/Controls.mjs.map +1 -0
  664. package/es/Video/parts/Frame.d.mts +9 -0
  665. package/es/Video/parts/Frame.mjs +101 -0
  666. package/es/Video/parts/Frame.mjs.map +1 -0
  667. package/es/Video/parts/HoverPreview.mjs +93 -0
  668. package/es/Video/parts/HoverPreview.mjs.map +1 -0
  669. package/es/Video/parts/LoadError.d.mts +8 -0
  670. package/es/Video/parts/LoadError.mjs +47 -0
  671. package/es/Video/parts/LoadError.mjs.map +1 -0
  672. package/es/Video/parts/PlayPauseIcon.mjs +48 -0
  673. package/es/Video/parts/PlayPauseIcon.mjs.map +1 -0
  674. package/es/Video/parts/RateMenu.mjs +48 -0
  675. package/es/Video/parts/RateMenu.mjs.map +1 -0
  676. package/es/Video/parts/Root.d.mts +9 -0
  677. package/es/Video/parts/Root.mjs +110 -0
  678. package/es/Video/parts/Root.mjs.map +1 -0
  679. package/es/Video/parts/SectionList.d.mts +9 -0
  680. package/es/Video/parts/SectionList.mjs +32 -0
  681. package/es/Video/parts/SectionList.mjs.map +1 -0
  682. package/es/Video/parts/SectionMenu.mjs +63 -0
  683. package/es/Video/parts/SectionMenu.mjs.map +1 -0
  684. package/es/Video/parts/Timeline.d.mts +9 -0
  685. package/es/Video/parts/Timeline.mjs +169 -0
  686. package/es/Video/parts/Timeline.mjs.map +1 -0
  687. package/es/Video/store.mjs +241 -0
  688. package/es/Video/store.mjs.map +1 -0
  689. package/es/Video/style.mjs +393 -23
  690. package/es/Video/style.mjs.map +1 -1
  691. package/es/Video/time.mjs +60 -0
  692. package/es/Video/time.mjs.map +1 -0
  693. package/es/Video/type.d.mts +125 -0
  694. package/es/Video/useControlsIdle.mjs +39 -0
  695. package/es/Video/useControlsIdle.mjs.map +1 -0
  696. package/es/Video/useFullscreen.mjs +17 -0
  697. package/es/Video/useFullscreen.mjs.map +1 -0
  698. package/es/Video/useKeyboard.mjs +60 -0
  699. package/es/Video/useKeyboard.mjs.map +1 -0
  700. package/es/Video/useVideo.d.mts +9 -0
  701. package/es/Video/useVideo.mjs +17 -0
  702. package/es/Video/useVideo.mjs.map +1 -0
  703. package/es/awesome/Features/FeatureItem.mjs +2 -2
  704. package/es/awesome/Features/FeatureItem.mjs.map +1 -1
  705. package/es/awesome/Giscus/style.mjs +9 -9
  706. package/es/awesome/Giscus/style.mjs.map +1 -1
  707. package/es/awesome/Grainient/Grainient.d.mts +11 -0
  708. package/es/awesome/Grainient/Grainient.mjs +314 -0
  709. package/es/awesome/Grainient/Grainient.mjs.map +1 -0
  710. package/es/awesome/Grainient/index.d.mts +3 -0
  711. package/es/awesome/Grainient/style.mjs +23 -0
  712. package/es/awesome/Grainient/style.mjs.map +1 -0
  713. package/es/awesome/Grainient/type.d.mts +121 -0
  714. package/es/awesome/GridBackground/GridBackground.mjs +1 -1
  715. package/es/awesome/GridBackground/GridBackground.mjs.map +1 -1
  716. package/es/awesome/GridBackground/GridShowcase.mjs +4 -4
  717. package/es/awesome/GridBackground/GridShowcase.mjs.map +1 -1
  718. package/es/awesome/Hero/Hero.mjs +3 -3
  719. package/es/awesome/Hero/Hero.mjs.map +1 -1
  720. package/es/awesome/InstallBanner/InstallBanner.mjs +2 -2
  721. package/es/awesome/InstallBanner/InstallBanner.mjs.map +1 -1
  722. package/es/awesome/LandingHero/LandingHero.mjs +3 -3
  723. package/es/awesome/LandingHero/LandingHero.mjs.map +1 -1
  724. package/es/awesome/LogoMarquee/LogoMarquee.mjs +2 -2
  725. package/es/awesome/LogoMarquee/LogoMarquee.mjs.map +1 -1
  726. package/es/awesome/Spline/ParentSize.mjs +1 -1
  727. package/es/awesome/Spline/ParentSize.mjs.map +1 -1
  728. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs +4 -4
  729. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
  730. package/es/awesome/index.d.mts +4 -1
  731. package/es/awesome/index.mjs +2 -1
  732. package/es/awesome/landingActions.mjs +2 -2
  733. package/es/awesome/landingActions.mjs.map +1 -1
  734. package/es/chat/BackBottom/BackBottom.mjs +1 -1
  735. package/es/chat/BackBottom/BackBottom.mjs.map +1 -1
  736. package/es/chat/BackBottom/type.d.mts +2 -2
  737. package/es/chat/ChatItem/ChatItem.mjs +2 -2
  738. package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
  739. package/es/chat/EditableMessage/EditableMessage.mjs +4 -4
  740. package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
  741. package/es/chat/EditableMessageList/EditableMessageList.mjs +2 -2
  742. package/es/chat/EditableMessageList/EditableMessageList.mjs.map +1 -1
  743. package/es/chat/EditableMessageList/messageReducer.mjs +30 -23
  744. package/es/chat/EditableMessageList/messageReducer.mjs.map +1 -1
  745. package/es/chat/MessageInput/MessageInput.mjs +3 -3
  746. package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
  747. package/es/chat/MessageModal/MessageModal.mjs +1 -1
  748. package/es/chat/MessageModal/MessageModal.mjs.map +1 -1
  749. package/es/chat/TokenTag/TokenTag.mjs +2 -3
  750. package/es/chat/TokenTag/TokenTag.mjs.map +1 -1
  751. package/es/color/index.d.mts +2 -1
  752. package/es/color/index.mjs +2 -1
  753. package/es/color/status/error.mjs +67 -0
  754. package/es/color/status/error.mjs.map +1 -0
  755. package/es/color/status/index.d.mts +11 -0
  756. package/es/color/status/index.mjs +15 -0
  757. package/es/color/status/index.mjs.map +1 -0
  758. package/es/color/status/info.mjs +67 -0
  759. package/es/color/status/info.mjs.map +1 -0
  760. package/es/color/status/success.mjs +67 -0
  761. package/es/color/status/success.mjs.map +1 -0
  762. package/es/color/status/warning.mjs +67 -0
  763. package/es/color/status/warning.mjs.map +1 -0
  764. package/es/color/types.d.mts +1 -0
  765. package/es/dashboard/AuthLayout/Aside.d.mts +10 -0
  766. package/es/dashboard/AuthLayout/Aside.mjs +31 -0
  767. package/es/dashboard/AuthLayout/Aside.mjs.map +1 -0
  768. package/es/dashboard/AuthLayout/AuthLayout.d.mts +3 -1
  769. package/es/dashboard/AuthLayout/AuthLayout.mjs +97 -37
  770. package/es/dashboard/AuthLayout/AuthLayout.mjs.map +1 -1
  771. package/es/dashboard/AuthLayout/index.d.mts +3 -2
  772. package/es/dashboard/AuthLayout/style.mjs +109 -1
  773. package/es/dashboard/AuthLayout/style.mjs.map +1 -1
  774. package/es/dashboard/AuthLayout/type.d.mts +38 -2
  775. package/es/dashboard/AuthTools/AuthLocaleSwitch.d.mts +10 -0
  776. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs +33 -0
  777. package/es/dashboard/AuthTools/AuthLocaleSwitch.mjs.map +1 -0
  778. package/es/dashboard/AuthTools/AuthThemeSwitch.d.mts +10 -0
  779. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs +59 -0
  780. package/es/dashboard/AuthTools/AuthThemeSwitch.mjs.map +1 -0
  781. package/es/dashboard/AuthTools/index.d.mts +4 -0
  782. package/es/dashboard/AuthTools/style.mjs +27 -0
  783. package/es/dashboard/AuthTools/style.mjs.map +1 -0
  784. package/es/dashboard/AuthTools/type.d.mts +29 -0
  785. package/es/dashboard/ChartGrid/ChartGrid.d.mts +10 -0
  786. package/es/dashboard/ChartGrid/ChartGrid.mjs +19 -0
  787. package/es/dashboard/ChartGrid/ChartGrid.mjs.map +1 -0
  788. package/es/dashboard/ChartGrid/index.d.mts +3 -0
  789. package/es/dashboard/ChartGrid/style.mjs +18 -0
  790. package/es/dashboard/ChartGrid/style.mjs.map +1 -0
  791. package/es/dashboard/ChartGrid/type.d.mts +8 -0
  792. package/es/dashboard/ConsoleNav/ConsoleNav.mjs +3 -3
  793. package/es/dashboard/ConsoleNav/ConsoleNav.mjs.map +1 -1
  794. package/es/dashboard/ConsoleNav/Skeleton.d.mts +15 -0
  795. package/es/dashboard/ConsoleNav/Skeleton.mjs +82 -0
  796. package/es/dashboard/ConsoleNav/Skeleton.mjs.map +1 -0
  797. package/es/dashboard/ConsoleNav/index.d.mts +3 -2
  798. package/es/dashboard/ConsoleNav/style.mjs +20 -2
  799. package/es/dashboard/ConsoleNav/style.mjs.map +1 -1
  800. package/es/dashboard/ConsoleNav/type.d.mts +13 -0
  801. package/es/dashboard/ConsoleShell/ConsoleShell.d.mts +1 -1
  802. package/es/dashboard/ConsoleShell/ConsoleShell.mjs +26 -6
  803. package/es/dashboard/ConsoleShell/ConsoleShell.mjs.map +1 -1
  804. package/es/dashboard/ConsoleShell/style.mjs +11 -1
  805. package/es/dashboard/ConsoleShell/style.mjs.map +1 -1
  806. package/es/dashboard/ConsoleShell/type.d.mts +11 -0
  807. package/es/dashboard/FilterSidebar/FilterSidebar.mjs +18 -17
  808. package/es/dashboard/FilterSidebar/FilterSidebar.mjs.map +1 -1
  809. package/es/dashboard/FilterSidebar/style.mjs +2 -2
  810. package/es/dashboard/FilterSidebar/style.mjs.map +1 -1
  811. package/es/dashboard/FilterStrip/FilterStrip.d.mts +11 -0
  812. package/es/dashboard/FilterStrip/FilterStrip.mjs +55 -0
  813. package/es/dashboard/FilterStrip/FilterStrip.mjs.map +1 -0
  814. package/es/dashboard/FilterStrip/index.d.mts +3 -0
  815. package/es/dashboard/FilterStrip/style.mjs +78 -0
  816. package/es/dashboard/FilterStrip/style.mjs.map +1 -0
  817. package/es/dashboard/FilterStrip/type.d.mts +25 -0
  818. package/es/dashboard/LabelWithKey/LabelWithKey.d.mts +10 -0
  819. package/es/dashboard/LabelWithKey/LabelWithKey.mjs +18 -0
  820. package/es/dashboard/LabelWithKey/LabelWithKey.mjs.map +1 -0
  821. package/es/dashboard/LabelWithKey/index.d.mts +3 -0
  822. package/es/dashboard/LabelWithKey/type.d.mts +11 -0
  823. package/es/dashboard/MetricStrip/MetricCell.mjs +92 -0
  824. package/es/dashboard/MetricStrip/MetricCell.mjs.map +1 -0
  825. package/es/dashboard/MetricStrip/MetricStrip.d.mts +13 -0
  826. package/es/dashboard/MetricStrip/MetricStrip.mjs +47 -0
  827. package/es/dashboard/MetricStrip/MetricStrip.mjs.map +1 -0
  828. package/es/dashboard/MetricStrip/index.d.mts +3 -0
  829. package/es/dashboard/MetricStrip/style.mjs +169 -0
  830. package/es/dashboard/MetricStrip/style.mjs.map +1 -0
  831. package/es/dashboard/MetricStrip/type.d.mts +38 -0
  832. package/es/dashboard/PageSkeleton/PageSkeleton.mjs +20 -18
  833. package/es/dashboard/PageSkeleton/PageSkeleton.mjs.map +1 -1
  834. package/es/dashboard/PageSkeleton/style.mjs +2 -1
  835. package/es/dashboard/PageSkeleton/style.mjs.map +1 -1
  836. package/es/dashboard/PageToolbar/PageToolbar.d.mts +10 -0
  837. package/es/dashboard/PageToolbar/PageToolbar.mjs +22 -0
  838. package/es/dashboard/PageToolbar/PageToolbar.mjs.map +1 -0
  839. package/es/dashboard/PageToolbar/index.d.mts +3 -0
  840. package/es/dashboard/PageToolbar/style.mjs +36 -0
  841. package/es/dashboard/PageToolbar/style.mjs.map +1 -0
  842. package/es/dashboard/PageToolbar/type.d.mts +11 -0
  843. package/es/dashboard/PanelSurface/PanelSurface.d.mts +10 -0
  844. package/es/dashboard/PanelSurface/PanelSurface.mjs +40 -0
  845. package/es/dashboard/PanelSurface/PanelSurface.mjs.map +1 -0
  846. package/es/dashboard/PanelSurface/index.d.mts +3 -0
  847. package/es/dashboard/PanelSurface/style.mjs +25 -0
  848. package/es/dashboard/PanelSurface/style.mjs.map +1 -0
  849. package/es/dashboard/PanelSurface/type.d.mts +17 -0
  850. package/es/dashboard/Section/Section.d.mts +10 -0
  851. package/es/dashboard/Section/Section.mjs +81 -0
  852. package/es/dashboard/Section/Section.mjs.map +1 -0
  853. package/es/dashboard/Section/index.d.mts +3 -0
  854. package/es/dashboard/Section/style.mjs +31 -0
  855. package/es/dashboard/Section/style.mjs.map +1 -0
  856. package/es/dashboard/Section/type.d.mts +23 -0
  857. package/es/dashboard/StatCard/StatCard.d.mts +2 -1
  858. package/es/dashboard/StatCard/StatCard.mjs +29 -91
  859. package/es/dashboard/StatCard/StatCard.mjs.map +1 -1
  860. package/es/dashboard/StatCard/type.d.mts +18 -5
  861. package/es/dashboard/Surface/Surface.d.mts +4 -3
  862. package/es/dashboard/Surface/Surface.mjs +90 -8
  863. package/es/dashboard/Surface/Surface.mjs.map +1 -1
  864. package/es/dashboard/Surface/index.d.mts +3 -2
  865. package/es/dashboard/Surface/link.d.mts +16 -0
  866. package/es/dashboard/Surface/link.mjs +40 -0
  867. package/es/dashboard/Surface/link.mjs.map +1 -0
  868. package/es/dashboard/Surface/marker.stylex.mjs +9 -0
  869. package/es/dashboard/Surface/marker.stylex.mjs.map +1 -0
  870. package/es/dashboard/Surface/style.d.mts +2 -0
  871. package/es/dashboard/Surface/style.mjs +156 -14
  872. package/es/dashboard/Surface/style.mjs.map +1 -1
  873. package/es/dashboard/Surface/type.d.mts +29 -1
  874. package/es/dashboard/TableIconActions/TableIconActions.d.mts +17 -0
  875. package/es/dashboard/TableIconActions/TableIconActions.mjs +39 -0
  876. package/es/dashboard/TableIconActions/TableIconActions.mjs.map +1 -0
  877. package/es/dashboard/TableIconActions/index.d.mts +3 -0
  878. package/es/dashboard/TableIconActions/type.d.mts +17 -0
  879. package/es/dashboard/TitleWithTips/TitleWithTips.d.mts +10 -0
  880. package/es/dashboard/TitleWithTips/TitleWithTips.mjs +28 -0
  881. package/es/dashboard/TitleWithTips/TitleWithTips.mjs.map +1 -0
  882. package/es/dashboard/TitleWithTips/index.d.mts +3 -0
  883. package/es/dashboard/TitleWithTips/type.d.mts +10 -0
  884. package/es/dashboard/index.d.mts +38 -4
  885. package/es/dashboard/index.mjs +18 -4
  886. package/es/eslint/noBaseUiSubpath.mjs +2 -1
  887. package/es/eslint/noBaseUiSubpath.mjs.map +1 -1
  888. package/es/hooks/useControlledState.mjs +20 -0
  889. package/es/hooks/useControlledState.mjs.map +1 -0
  890. package/es/hooks/useHighlight.mjs +2 -2
  891. package/es/hooks/useHighlight.mjs.map +1 -1
  892. package/es/hooks/useHover.mjs +22 -0
  893. package/es/hooks/useHover.mjs.map +1 -0
  894. package/es/hooks/useMarkdown/utils.d.mts +1 -0
  895. package/es/hooks/useScroll.d.mts +8 -0
  896. package/es/hooks/useScroll.mjs +33 -0
  897. package/es/hooks/useScroll.mjs.map +1 -0
  898. package/es/hooks/useSize.mjs +26 -0
  899. package/es/hooks/useSize.mjs.map +1 -0
  900. package/es/i18n/resources/en/colorPicker.d.mts +5 -0
  901. package/es/i18n/resources/en/colorPicker.mjs +5 -0
  902. package/es/i18n/resources/en/colorPicker.mjs.map +1 -1
  903. package/es/i18n/resources/en/datePicker.d.mts +54 -0
  904. package/es/i18n/resources/en/datePicker.mjs +55 -1
  905. package/es/i18n/resources/en/datePicker.mjs.map +1 -1
  906. package/es/i18n/resources/en/index.d.mts +4 -2
  907. package/es/i18n/resources/en/index.mjs +6 -2
  908. package/es/i18n/resources/en/index.mjs.map +1 -1
  909. package/es/i18n/resources/en/table.d.mts +23 -0
  910. package/es/i18n/resources/en/table.mjs +24 -0
  911. package/es/i18n/resources/en/table.mjs.map +1 -0
  912. package/es/i18n/resources/en/video.d.mts +23 -0
  913. package/es/i18n/resources/en/video.mjs +24 -0
  914. package/es/i18n/resources/en/video.mjs.map +1 -0
  915. package/es/i18n/resources/zhCn/colorPicker.d.mts +5 -0
  916. package/es/i18n/resources/zhCn/colorPicker.mjs +5 -0
  917. package/es/i18n/resources/zhCn/colorPicker.mjs.map +1 -1
  918. package/es/i18n/resources/zhCn/datePicker.d.mts +54 -0
  919. package/es/i18n/resources/zhCn/datePicker.mjs +55 -1
  920. package/es/i18n/resources/zhCn/datePicker.mjs.map +1 -1
  921. package/es/i18n/resources/zhCn/index.d.mts +4 -2
  922. package/es/i18n/resources/zhCn/index.mjs +7 -3
  923. package/es/i18n/resources/zhCn/index.mjs.map +1 -1
  924. package/es/i18n/resources/zhCn/table.d.mts +23 -0
  925. package/es/i18n/resources/zhCn/table.mjs +24 -0
  926. package/es/i18n/resources/zhCn/table.mjs.map +1 -0
  927. package/es/i18n/resources/zhCn/video.d.mts +23 -0
  928. package/es/i18n/resources/zhCn/video.mjs +24 -0
  929. package/es/i18n/resources/zhCn/video.mjs.map +1 -0
  930. package/es/i18n/types.d.mts +4 -1
  931. package/es/index.d.mts +21 -8
  932. package/es/index.mjs +18 -9
  933. package/es/internal/menu/itemInterface.d.mts +1 -0
  934. package/es/internal/menu/renderUtils.d.mts +1 -0
  935. package/es/internal/overflow/OverflowList.mjs +71 -0
  936. package/es/internal/overflow/OverflowList.mjs.map +1 -0
  937. package/es/internal/virtual/VirtualScrollArea.mjs +1 -1
  938. package/es/internal/virtual/VirtualScrollArea.mjs.map +1 -1
  939. package/es/mdx/Callout/index.mjs +2 -2
  940. package/es/mdx/Callout/index.mjs.map +1 -1
  941. package/es/mdx/Cards/Card.mjs +2 -2
  942. package/es/mdx/Cards/Card.mjs.map +1 -1
  943. package/es/mdx/Cards/index.mjs +2 -2
  944. package/es/mdx/Cards/index.mjs.map +1 -1
  945. package/es/mdx/Mdx/index.mjs +2 -2
  946. package/es/mdx/Mdx/index.mjs.map +1 -1
  947. package/es/mdx/Steps/index.mjs +2 -2
  948. package/es/mdx/Steps/index.mjs.map +1 -1
  949. package/es/mdx/mdxComponents/Pre.mjs +5 -5
  950. package/es/mdx/mdxComponents/Pre.mjs.map +1 -1
  951. package/es/mdx/mdxComponents/Video.d.mts +2 -1
  952. package/es/mdx/mdxComponents/Video.mjs +5 -3
  953. package/es/mdx/mdxComponents/Video.mjs.map +1 -1
  954. package/es/mobile/ChatInputArea/ChatInputArea.mjs +1 -1
  955. package/es/mobile/ChatInputArea/ChatInputArea.mjs.map +1 -1
  956. package/es/mobile/TabBar/TabBar.mjs +1 -1
  957. package/es/mobile/TabBar/TabBar.mjs.map +1 -1
  958. package/es/node_modules/.pnpm/@eslint_core@1.2.1/node_modules/@eslint/core/dist/esm/types.d.mts +2 -46
  959. package/es/node_modules/.pnpm/@eslint_plugin-kit@0.7.3/node_modules/@eslint/plugin-kit/dist/cjs/index.d.mts +1 -1
  960. package/es/node_modules/.pnpm/@types_estree@1.0.9/node_modules/@types/estree/index.d.mts +1 -4
  961. package/es/node_modules/.pnpm/@types_mdx@2.0.14/node_modules/@types/mdx/types.d.mts +1 -0
  962. package/es/node_modules/.pnpm/eslint@10.12.0_jiti@2.6.1_supports-color@10.2.2/node_modules/eslint/lib/types/index.d.mts +2 -1
  963. package/es/storybook/StoryBook/style.mjs +2 -0
  964. package/es/storybook/StoryBook/style.mjs.map +1 -1
  965. package/es/style.css +3643 -996
  966. package/es/styles/createGlobalStyle.d.mts +1 -0
  967. package/es/styles/createGlobalStyle.mjs +1 -1
  968. package/es/styles/index.d.mts +4 -2
  969. package/es/styles/index.mjs +6 -4
  970. package/es/styles/stylex/cssVar.stylex.mjs +3 -0
  971. package/es/styles/stylex/cssVar.stylex.mjs.map +1 -1
  972. package/es/styles/stylex/props.mjs +2 -2
  973. package/es/styles/stylex/props.mjs.map +1 -1
  974. package/es/styles/theme/createLobeToken.d.mts +12 -7
  975. package/es/styles/theme/createLobeToken.mjs +3 -2
  976. package/es/styles/theme/createLobeToken.mjs.map +1 -1
  977. package/es/styles/theme/customPalette.d.mts +6 -0
  978. package/es/styles/theme/customPalette.mjs +28 -0
  979. package/es/styles/theme/customPalette.mjs.map +1 -0
  980. package/es/styles/theme/customPrimary.d.mts +7 -0
  981. package/es/styles/theme/customPrimary.mjs +101 -0
  982. package/es/styles/theme/customPrimary.mjs.map +1 -0
  983. package/es/styles/theme/generateColorPalette.d.mts +1 -0
  984. package/es/styles/theme/scope.d.mts +9 -5
  985. package/es/styles/theme/scope.mjs +73 -18
  986. package/es/styles/theme/scope.mjs.map +1 -1
  987. package/es/styles/theme/themeCss.d.mts +3 -0
  988. package/es/styles/theme/themeCss.mjs +39 -2
  989. package/es/styles/theme/themeCss.mjs.map +1 -1
  990. package/es/styles/theme/token/legacy.mjs +12 -12
  991. package/es/styles/theme/token/legacy.mjs.map +1 -1
  992. package/es/styles/theme/token/neutral.mjs +17 -9
  993. package/es/styles/theme/token/neutral.mjs.map +1 -1
  994. package/es/styles/theme/token/neutralText.mjs +91 -0
  995. package/es/styles/theme/token/neutralText.mjs.map +1 -0
  996. package/es/styles/theme/token/palette.mjs +16 -41
  997. package/es/styles/theme/token/palette.mjs.map +1 -1
  998. package/es/styles/theme/token/primary.mjs +6 -2
  999. package/es/styles/theme/token/primary.mjs.map +1 -1
  1000. package/es/styles/theme/token/static.mjs +3 -0
  1001. package/es/styles/theme/token/static.mjs.map +1 -1
  1002. package/es/theme.css +301 -290
  1003. package/es/types/customToken.d.mts +1 -0
  1004. package/es/utils/colorMath.mjs +52 -0
  1005. package/es/utils/colorMath.mjs.map +1 -0
  1006. package/es/utils/formatNumber.mjs +7 -0
  1007. package/es/utils/formatNumber.mjs.map +1 -0
  1008. package/es/utils/genCdnUrl.mjs +6 -3
  1009. package/es/utils/genCdnUrl.mjs.map +1 -1
  1010. package/es/utils/hashString.mjs +19 -0
  1011. package/es/utils/hashString.mjs.map +1 -0
  1012. package/es/utils/mergeRefs.mjs +20 -0
  1013. package/es/utils/mergeRefs.mjs.map +1 -0
  1014. package/es/utils/placement.d.mts +5 -5
  1015. package/es/utils/placement.mjs.map +1 -1
  1016. package/package.json +25 -46
  1017. package/es/DatePicker/CalendarPanel.mjs +0 -189
  1018. package/es/DatePicker/CalendarPanel.mjs.map +0 -1
  1019. package/es/DatePicker/PickerShell.mjs +0 -43
  1020. package/es/DatePicker/PickerShell.mjs.map +0 -1
  1021. package/es/DatePicker/calendar.d.mts +0 -4
  1022. package/es/DatePicker/calendar.mjs +0 -46
  1023. package/es/DatePicker/calendar.mjs.map +0 -1
  1024. package/es/Table/FilterMenu.mjs +0 -45
  1025. package/es/Table/FilterMenu.mjs.map +0 -1
  1026. package/es/Table/TableBody.mjs +0 -67
  1027. package/es/Table/TableBody.mjs.map +0 -1
  1028. package/es/Table/TableHead.mjs +0 -58
  1029. package/es/Table/TableHead.mjs.map +0 -1
  1030. package/es/Table/features.mjs +0 -12
  1031. package/es/Table/features.mjs.map +0 -1
  1032. package/es/Table/fixedOffsets.mjs +0 -29
  1033. package/es/Table/fixedOffsets.mjs.map +0 -1
  1034. package/es/Table/marker.stylex.mjs +0 -9
  1035. package/es/Table/marker.stylex.mjs.map +0 -1
  1036. package/es/Table/toColumnDefs.mjs +0 -26
  1037. package/es/Table/toColumnDefs.mjs.map +0 -1
  1038. package/es/Table/useTableState.mjs +0 -99
  1039. package/es/Table/useTableState.mjs.map +0 -1
  1040. package/es/Video/marker.stylex.mjs +0 -9
  1041. package/es/Video/marker.stylex.mjs.map +0 -1
  1042. package/es/dashboard/StatCard/style.mjs +0 -105
  1043. package/es/dashboard/StatCard/style.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.mjs","names":[],"sources":["../../src/Avatar/Avatar.tsx"],"sourcesContent":["'use client';\n\nimport { getEmoji } from '@lobehub/fluent-emoji';\nimport clsx from 'clsx';\nimport { Loader2 } from 'lucide-react';\nimport { memo, type ReactNode, useMemo, useState } from 'react';\n\nimport { Center } from '@/Flex';\nimport FluentEmoji from '@/FluentEmoji';\nimport Icon from '@/Icon';\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\nimport { styleProps } from '@/styles/stylex/props';\nimport { stylish } from '@/styles/stylex/stylish';\nimport { safeReadableColor } from '@/utils/safeReadableColor';\n\nimport { styles } from './style';\nimport { type AvatarProps } from './type';\nimport {\n calculateEmojiSize,\n formatAvatarText,\n hasValidBackground,\n isDefaultAntAvatar,\n} from './utils';\n\nconst variantStyles = {\n borderless: stylish.variantBorderlessWithoutHover,\n filled: stylish.variantFilledWithoutHover,\n outlined: stylish.variantOutlinedWithoutHover,\n};\n\ntype AvatarImplProps = AvatarProps & {\n contentXstyle?: Parameters<typeof styleProps>[0];\n xstyle?: Parameters<typeof styleProps>[0];\n};\n\nexport const AvatarImpl = memo<AvatarImplProps>(\n ({\n alt,\n animation,\n avatar,\n background,\n bordered,\n borderedColor,\n className,\n classNames,\n crossOrigin,\n draggable = false,\n emojiScaleWithBackground = true,\n loading,\n ref,\n shadow,\n shape = 'square',\n size = 48,\n sliceText = true,\n style,\n styles: customStyles,\n title,\n tooltipProps,\n unoptimized,\n variant = 'borderless',\n xstyle,\n contentXstyle,\n ...rest\n }) => {\n const isStringAvatar = typeof avatar === 'string';\n\n const [isImgError, setIsImgError] = useState(false);\n\n const isUrlOrElement = useMemo(() => isDefaultAntAvatar(avatar), [avatar]);\n\n const emoji = useMemo(\n () => (avatar && isStringAvatar && !isUrlOrElement ? getEmoji(avatar) : undefined),\n [avatar, isStringAvatar, isUrlOrElement],\n );\n\n const text = isUrlOrElement ? title : typeof avatar === 'string' ? avatar : undefined;\n\n const imgAlt = alt || title || 'avatar';\n\n const hasBackground = hasValidBackground(background);\n const showImage = isUrlOrElement && isStringAvatar && !isImgError;\n const showElement = isUrlOrElement && !isStringAvatar && !isImgError;\n\n const customAvatar = useMemo(\n () =>\n emoji ? (\n <FluentEmoji\n emoji={emoji}\n size={calculateEmojiSize(size, hasBackground, emojiScaleWithBackground)}\n type={animation ? 'anim' : '3d'}\n unoptimized={unoptimized}\n />\n ) : (\n formatAvatarText(text || title, sliceText)\n ),\n [\n animation,\n emoji,\n hasBackground,\n size,\n sliceText,\n text,\n title,\n unoptimized,\n emojiScaleWithBackground,\n ],\n );\n\n return (\n <div\n {...rest}\n ref={ref}\n className={\n styleProps(\n [styles.root, variantStyles[variant], shadow && styles.shadow, xstyle],\n clsx(className, classNames?.root),\n ).className\n }\n style={{\n backgroundColor:\n (isUrlOrElement && !isImgError) || emoji\n ? background\n : background || cssVar.colorBorder,\n borderRadius: shape === 'circle' ? '50%' : size < 24 ? '33%' : Math.max(size / 6, 2),\n boxShadow: bordered\n ? `${cssVar.colorBgLayout} 0 0 0 2px, ${borderedColor || cssVar.colorTextTertiary} 0 0 0 4px`\n : undefined,\n color: safeReadableColor(background || cssVar.colorBorder),\n cursor: rest?.onClick ? 'pointer' : undefined,\n fontSize: size * (emoji ? 0.7 : 0.5),\n height: size,\n width: size,\n ...style,\n ...customStyles?.root,\n }}\n >\n {loading && (\n <Center\n flex={'none'}\n height={'100%'}\n width={'100%'}\n {...styleProps(styles.loading, classNames?.loading, customStyles?.loading)}\n >\n <Icon spin icon={Loader2} />\n </Center>\n )}\n {typeof avatar === 'string' && showImage && (\n <img\n alt={imgAlt}\n crossOrigin={crossOrigin}\n draggable={draggable}\n height={size}\n loading={'lazy'}\n src={avatar}\n width={size}\n {...styleProps(styles.img, classNames?.img, customStyles?.img)}\n onError={() => setIsImgError(true)}\n />\n )}\n {!showImage && (\n <span\n {...styleProps(\n [styles.content, contentXstyle],\n classNames?.content,\n customStyles?.content,\n )}\n >\n {showElement ? avatar : customAvatar}\n </span>\n )}\n </div>\n );\n },\n);\n\nAvatarImpl.displayName = 'Avatar';\n\nconst Avatar = AvatarImpl as (props: AvatarProps) => ReactNode;\n\nexport default Avatar;\n"],"mappings":";;;;;;;;;;;;;;;;AAwBA,MAAM,gBAAgB;CACpB,YAAY,QAAQ;CACpB,QAAQ,QAAQ;CAChB,UAAU,QAAQ;AACpB;AAOA,MAAa,aAAa,MACvB,EACC,KACA,WACA,QACA,YACA,UACA,eACA,WACA,YACA,aACA,YAAY,OACZ,2BAA2B,MAC3B,SACA,KACA,QACA,QAAQ,UACR,OAAO,IACP,YAAY,MACZ,OACA,QAAQ,cACR,OACA,cACA,aACA,UAAU,cACV,QACA,eACA,GAAG,WACC;CACJ,MAAM,iBAAiB,OAAO,WAAW;CAEzC,MAAM,CAAC,YAAY,iBAAiB,SAAS,KAAK;CAElD,MAAM,iBAAiB,cAAc,mBAAmB,MAAM,GAAG,CAAC,MAAM,CAAC;CAEzE,MAAM,QAAQ,cACL,UAAU,kBAAkB,CAAC,iBAAiB,SAAS,MAAM,IAAI,KAAA,GACxE;EAAC;EAAQ;EAAgB;CAAc,CACzC;CAEA,MAAM,OAAO,iBAAiB,QAAQ,OAAO,WAAW,WAAW,SAAS,KAAA;CAE5E,MAAM,SAAS,OAAO,SAAS;CAE/B,MAAM,gBAAgB,mBAAmB,UAAU;CACnD,MAAM,YAAY,kBAAkB,kBAAkB,CAAC;CACvD,MAAM,cAAc,kBAAkB,CAAC,kBAAkB,CAAC;CAE1D,MAAM,eAAe,cAEjB,QACE,oBAAC,aAAD;EACS;EACP,MAAM,mBAAmB,MAAM,eAAe,wBAAwB;EACtE,MAAM,YAAY,SAAS;EACd;CACd,CAAA,IAED,iBAAiB,QAAQ,OAAO,SAAS,GAE7C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CACF;CAEA,OACE,qBAAC,OAAD;EACE,GAAI;EACC;EACL,WACE,WACE;GAAC,OAAO;GAAM,cAAc;GAAU,UAAU,OAAO;GAAQ;EAAM,GACrE,KAAK,WAAW,YAAY,IAAI,CAClC,CAAC,CAAC;EAEJ,OAAO;GACL,iBACG,kBAAkB,CAAC,cAAe,QAC/B,aACA,cAAc,OAAO;GAC3B,cAAc,UAAU,WAAW,QAAQ,OAAO,KAAK,QAAQ,KAAK,IAAI,OAAO,GAAG,CAAC;GACnF,WAAW,WACP,GAAG,OAAO,cAAc,cAAc,iBAAiB,OAAO,kBAAkB,cAChF,KAAA;GACJ,OAAO,kBAAkB,cAAc,OAAO,WAAW;GACzD,QAAQ,MAAM,UAAU,YAAY,KAAA;GACpC,UAAU,QAAQ,QAAQ,KAAM;GAChC,QAAQ;GACR,OAAO;GACP,GAAG;GACH,GAAG,cAAc;EACnB;EAzBF,UAAA;GA2BG,WACC,oBAAC,QAAD;IACE,MAAM;IACN,QAAQ;IACR,OAAO;IACP,GAAI,WAAW,OAAO,SAAS,YAAY,SAAS,cAAc,OAAO;IAEzE,UAAA,oBAAC,MAAD;KAAM,MAAA;KAAK,MAAM;IAAU,CAAA;GACrB,CAAA;GAET,OAAO,WAAW,YAAY,aAC7B,oBAAC,OAAD;IACE,KAAK;IACQ;IACF;IACX,QAAQ;IACR,SAAS;IACT,KAAK;IACL,OAAO;IACP,GAAI,WAAW,OAAO,KAAK,YAAY,KAAK,cAAc,GAAG;IAC7D,eAAe,cAAc,IAAI;GAClC,CAAA;GAEF,CAAC,aACA,oBAAC,QAAD;IACE,GAAI,WACF,CAAC,OAAO,SAAS,aAAa,GAC9B,YAAY,SACZ,cAAc,OAChB;IAEC,UAAA,cAAc,SAAS;GACpB,CAAA;EAEL;;AAET,CACF;AAEA,WAAW,cAAc;AAEzB,MAAM,SAAS"}
1
+ {"version":3,"file":"Avatar.mjs","names":["clsx"],"sources":["../../src/Avatar/Avatar.tsx"],"sourcesContent":["'use client';\n\nimport { getEmoji } from '@lobehub/fluent-emoji';\nimport clsx from 'clsx';\nimport { Loader2 } from 'lucide-react';\nimport { memo, type ReactNode, useMemo, useState } from 'react';\n\nimport { Center } from '@/Flex';\nimport FluentEmoji from '@/FluentEmoji';\nimport Icon from '@/Icon';\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\nimport { styleProps } from '@/styles/stylex/props';\nimport { stylish } from '@/styles/stylex/stylish';\nimport { safeReadableColor } from '@/utils/safeReadableColor';\n\nimport { styles } from './style';\nimport { type AvatarProps } from './type';\nimport {\n calculateEmojiSize,\n formatAvatarText,\n hasValidBackground,\n isDefaultAntAvatar,\n} from './utils';\n\nconst variantStyles = {\n borderless: stylish.variantBorderlessWithoutHover,\n filled: stylish.variantFilledWithoutHover,\n outlined: stylish.variantOutlinedWithoutHover,\n};\n\ntype AvatarImplProps = AvatarProps & {\n contentXstyle?: Parameters<typeof styleProps>[0];\n xstyle?: Parameters<typeof styleProps>[0];\n};\n\nexport const AvatarImpl = memo<AvatarImplProps>(\n ({\n alt,\n animation,\n avatar,\n background,\n bordered,\n borderedColor,\n className,\n classNames,\n crossOrigin,\n draggable = false,\n emojiScaleWithBackground = true,\n loading,\n ref,\n shadow,\n shape = 'square',\n size = 48,\n sliceText = true,\n style,\n styles: customStyles,\n title,\n tooltipProps,\n unoptimized,\n variant = 'borderless',\n xstyle,\n contentXstyle,\n ...rest\n }) => {\n const isStringAvatar = typeof avatar === 'string';\n\n const [isImgError, setIsImgError] = useState(false);\n\n const isUrlOrElement = useMemo(() => isDefaultAntAvatar(avatar), [avatar]);\n\n const emoji = useMemo(\n () => (avatar && isStringAvatar && !isUrlOrElement ? getEmoji(avatar) : undefined),\n [avatar, isStringAvatar, isUrlOrElement],\n );\n\n const text = isUrlOrElement ? title : typeof avatar === 'string' ? avatar : undefined;\n\n const imgAlt = alt || title || 'avatar';\n\n const hasBackground = hasValidBackground(background);\n const showImage = isUrlOrElement && isStringAvatar && !isImgError;\n const showElement = isUrlOrElement && !isStringAvatar && !isImgError;\n\n const customAvatar = useMemo(\n () =>\n emoji ? (\n <FluentEmoji\n emoji={emoji}\n size={calculateEmojiSize(size, hasBackground, emojiScaleWithBackground)}\n type={animation ? 'anim' : '3d'}\n unoptimized={unoptimized}\n />\n ) : (\n formatAvatarText(text || title, sliceText)\n ),\n [\n animation,\n emoji,\n hasBackground,\n size,\n sliceText,\n text,\n title,\n unoptimized,\n emojiScaleWithBackground,\n ],\n );\n\n return (\n <div\n {...rest}\n ref={ref}\n className={\n styleProps(\n [styles.root, variantStyles[variant], shadow && styles.shadow, xstyle],\n clsx(className, classNames?.root),\n ).className\n }\n style={{\n backgroundColor:\n (isUrlOrElement && !isImgError) || emoji\n ? background\n : background || cssVar.colorBorder,\n borderRadius: shape === 'circle' ? '50%' : size < 24 ? '33%' : Math.max(size / 6, 2),\n boxShadow: bordered\n ? `${cssVar.colorBgLayout} 0 0 0 2px, ${borderedColor || cssVar.colorTextTertiary} 0 0 0 4px`\n : undefined,\n color: safeReadableColor(background || cssVar.colorBorder),\n cursor: rest?.onClick ? 'pointer' : undefined,\n fontSize: size * (emoji ? 0.7 : 0.5),\n height: size,\n width: size,\n ...style,\n ...customStyles?.root,\n }}\n >\n {loading && (\n <Center\n flex={'none'}\n height={'100%'}\n width={'100%'}\n {...styleProps(styles.loading, classNames?.loading, customStyles?.loading)}\n >\n <Icon spin icon={Loader2} />\n </Center>\n )}\n {typeof avatar === 'string' && showImage && (\n <img\n alt={imgAlt}\n crossOrigin={crossOrigin}\n draggable={draggable}\n height={size}\n loading={'lazy'}\n src={avatar}\n width={size}\n {...styleProps(styles.img, classNames?.img, customStyles?.img)}\n onError={() => setIsImgError(true)}\n />\n )}\n {!showImage && (\n <span\n {...styleProps(\n [styles.content, contentXstyle],\n classNames?.content,\n customStyles?.content,\n )}\n >\n {showElement ? avatar : customAvatar}\n </span>\n )}\n </div>\n );\n },\n);\n\nAvatarImpl.displayName = 'Avatar';\n\nconst Avatar = AvatarImpl as (props: AvatarProps) => ReactNode;\n\nexport default Avatar;\n"],"mappings":";;;;;;;;;;;;;;;;AAwBA,MAAM,gBAAgB;CACpB,YAAY,QAAQ;CACpB,QAAQ,QAAQ;CAChB,UAAU,QAAQ;AACpB;AAOA,MAAa,aAAa,MACvB,EACC,KACA,WACA,QACA,YACA,UACA,eACA,WACA,YACA,aACA,YAAY,OACZ,2BAA2B,MAC3B,SACA,KACA,QACA,QAAQ,UACR,OAAO,IACP,YAAY,MACZ,OACA,QAAQ,cACR,OACA,cACA,aACA,UAAU,cACV,QACA,eACA,GAAG,WACC;CACJ,MAAM,iBAAiB,OAAO,WAAW;CAEzC,MAAM,CAAC,YAAY,iBAAiB,SAAS,KAAK;CAElD,MAAM,iBAAiB,cAAc,mBAAmB,MAAM,GAAG,CAAC,MAAM,CAAC;CAEzE,MAAM,QAAQ,cACL,UAAU,kBAAkB,CAAC,iBAAiB,SAAS,MAAM,IAAI,KAAA,GACxE;EAAC;EAAQ;EAAgB;CAAc,CACzC;CAEA,MAAM,OAAO,iBAAiB,QAAQ,OAAO,WAAW,WAAW,SAAS,KAAA;CAE5E,MAAM,SAAS,OAAO,SAAS;CAE/B,MAAM,gBAAgB,mBAAmB,UAAU;CACnD,MAAM,YAAY,kBAAkB,kBAAkB,CAAC;CACvD,MAAM,cAAc,kBAAkB,CAAC,kBAAkB,CAAC;CAE1D,MAAM,eAAe,cAEjB,QACE,oBAAC,aAAD;EACS;EACP,MAAM,mBAAmB,MAAM,eAAe,wBAAwB;EACtE,MAAM,YAAY,SAAS;EACd;CACd,CAAA,IAED,iBAAiB,QAAQ,OAAO,SAAS,GAE7C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CACF;CAEA,OACE,qBAAC,OAAD;EACE,GAAI;EACC;EACL,WACE,WACE;GAAC,OAAO;GAAM,cAAc;GAAU,UAAU,OAAO;GAAQ;EAAM,GACrEA,OAAK,WAAW,YAAY,IAAI,CAClC,CAAC,CAAC;EAEJ,OAAO;GACL,iBACG,kBAAkB,CAAC,cAAe,QAC/B,aACA,cAAc,OAAO;GAC3B,cAAc,UAAU,WAAW,QAAQ,OAAO,KAAK,QAAQ,KAAK,IAAI,OAAO,GAAG,CAAC;GACnF,WAAW,WACP,GAAG,OAAO,cAAc,cAAc,iBAAiB,OAAO,kBAAkB,cAChF,KAAA;GACJ,OAAO,kBAAkB,cAAc,OAAO,WAAW;GACzD,QAAQ,MAAM,UAAU,YAAY,KAAA;GACpC,UAAU,QAAQ,QAAQ,KAAM;GAChC,QAAQ;GACR,OAAO;GACP,GAAG;GACH,GAAG,cAAc;EACnB;EAzBF,UAAA;GA2BG,WACC,oBAAC,QAAD;IACE,MAAM;IACN,QAAQ;IACR,OAAO;IACP,GAAI,WAAW,OAAO,SAAS,YAAY,SAAS,cAAc,OAAO;IAEzE,UAAA,oBAAC,MAAD;KAAM,MAAA;KAAK,MAAM;IAAU,CAAA;GACrB,CAAA;GAET,OAAO,WAAW,YAAY,aAC7B,oBAAC,OAAD;IACE,KAAK;IACQ;IACF;IACX,QAAQ;IACR,SAAS;IACT,KAAK;IACL,OAAO;IACP,GAAI,WAAW,OAAO,KAAK,YAAY,KAAK,cAAc,GAAG;IAC7D,eAAe,cAAc,IAAI;GAClC,CAAA;GAEF,CAAC,aACA,oBAAC,QAAD;IACE,GAAI,WACF,CAAC,OAAO,SAAS,aAAa,GAC9B,YAAY,SACZ,cAAc,OAChB;IAEC,UAAA,cAAc,SAAS;GACpB,CAAA;EAEL;;AAET,CACF;AAEA,WAAW,cAAc;AAEzB,MAAM,SAAS"}
@@ -5,7 +5,7 @@ import { AvatarImpl } from "../Avatar.mjs";
5
5
  import { styles } from "./style.mjs";
6
6
  import { memo } from "react";
7
7
  import { jsx, jsxs } from "react/jsx-runtime";
8
- import clsx from "clsx";
8
+ import clsx$1 from "clsx";
9
9
  //#region src/Avatar/AvatarGroup/index.tsx
10
10
  const AvatarGroup = memo(({ items, max, gap, variant = "borderless", bordered, shadow, size = 48, background, animation, draggable, classNames, shape, styles: customStyles, onClick, ref, zIndexReverse, ...rest }) => {
11
11
  const avatars = max ? items.slice(0, max) : items;
@@ -30,7 +30,7 @@ const AvatarGroup = memo(({ items, max, gap, variant = "borderless", bordered, s
30
30
  children: [avatars.map((avatar, index) => {
31
31
  const { key, style: avatarStyle, className: avatarClassName, ...restAvatarProps } = avatar;
32
32
  return /* @__PURE__ */ jsx(AvatarImpl, {
33
- className: clsx(classNames?.avatar, avatarClassName),
33
+ className: clsx$1(classNames?.avatar, avatarClassName),
34
34
  xstyle: styles.avatar,
35
35
  style: {
36
36
  marginLeft: index === 0 ? 0 : gapValue,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["Flexbox","Avatar"],"sources":["../../../src/Avatar/AvatarGroup/index.tsx"],"sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport { memo } from 'react';\n\nimport { Flexbox } from '@/Flex';\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\n\nimport { AvatarImpl as Avatar } from '../Avatar';\nimport type { AvatarGroupProps } from '../type';\nimport { styles } from './style';\n\nconst AvatarGroup = memo<AvatarGroupProps>(\n ({\n items,\n max,\n gap,\n variant = 'borderless',\n bordered,\n shadow,\n size = 48,\n background,\n animation,\n draggable,\n classNames,\n shape,\n styles: customStyles,\n onClick,\n ref,\n zIndexReverse,\n ...rest\n }) => {\n const avatars = max ? items.slice(0, max) : items;\n const restAvatars = items.slice(max, items.length);\n const gapValue = gap ?? Math.floor(-size / 4);\n\n const avatarProps = {\n animation,\n background,\n bordered,\n draggable,\n shadow,\n shape,\n size,\n variant,\n };\n\n return (\n <Flexbox\n horizontal\n gap={gap}\n ref={ref}\n style={{\n position: 'relative',\n }}\n {...rest}\n >\n {avatars.map((avatar, index) => {\n const {\n key,\n style: avatarStyle,\n className: avatarClassName,\n ...restAvatarProps\n } = avatar;\n return (\n <Avatar\n className={clsx(classNames?.avatar, avatarClassName)}\n key={key}\n xstyle={styles.avatar}\n style={{\n marginLeft: index === 0 ? 0 : gapValue,\n zIndex: zIndexReverse ? items.length - index : index,\n ...customStyles?.avatar,\n ...avatarStyle,\n }}\n onClick={() => onClick?.({ item: avatar, key })}\n {...avatarProps}\n {...restAvatarProps}\n />\n );\n })}\n {max && restAvatars.length > 0 && (\n <Avatar\n {...avatarProps}\n avatar={`+${restAvatars.length}`}\n background={cssVar.colorText}\n className={classNames?.count}\n contentXstyle={styles.count}\n sliceText={false}\n xstyle={styles.avatar}\n style={{\n marginLeft: gapValue,\n zIndex: zIndexReverse ? 0 : avatars.length,\n ...customStyles?.count,\n }}\n />\n )}\n </Flexbox>\n );\n },\n);\n\nAvatarGroup.displayName = 'AvatarGroup';\n\nexport default AvatarGroup;\n"],"mappings":";;;;;;;;;AAYA,MAAM,cAAc,MACjB,EACC,OACA,KACA,KACA,UAAU,cACV,UACA,QACA,OAAO,IACP,YACA,WACA,WACA,YACA,OACA,QAAQ,cACR,SACA,KACA,eACA,GAAG,WACC;CACJ,MAAM,UAAU,MAAM,MAAM,MAAM,GAAG,GAAG,IAAI;CAC5C,MAAM,cAAc,MAAM,MAAM,KAAK,MAAM,MAAM;CACjD,MAAM,WAAW,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC;CAE5C,MAAM,cAAc;EAClB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CAEA,OACE,qBAACA,mBAAD;EACE,YAAA;EACK;EACA;EACL,OAAO,EACL,UAAU,WACZ;EACA,GAAI;EAPN,UAAA,CASG,QAAQ,KAAK,QAAQ,UAAU;GAC9B,MAAM,EACJ,KACA,OAAO,aACP,WAAW,iBACX,GAAG,oBACD;GACJ,OACE,oBAACC,YAAD;IACE,WAAW,KAAK,YAAY,QAAQ,eAAe;IAEnD,QAAQ,OAAO;IACf,OAAO;KACL,YAAY,UAAU,IAAI,IAAI;KAC9B,QAAQ,gBAAgB,MAAM,SAAS,QAAQ;KAC/C,GAAG,cAAc;KACjB,GAAG;IACL;IACA,eAAe,UAAU;KAAE,MAAM;KAAQ;IAAI,CAAC;IAC9C,GAAI;IACJ,GAAI;GACL,GAXM,GAWN;EAEL,CAAC,GACA,OAAO,YAAY,SAAS,KAC3B,oBAACA,YAAD;GACE,GAAI;GACJ,QAAQ,IAAI,YAAY;GACxB,YAAY,OAAO;GACnB,WAAW,YAAY;GACvB,eAAe,OAAO;GACtB,WAAW;GACX,QAAQ,OAAO;GACf,OAAO;IACL,YAAY;IACZ,QAAQ,gBAAgB,IAAI,QAAQ;IACpC,GAAG,cAAc;GACnB;EACD,CAAA,CAEI;;AAEb,CACF;AAEA,YAAY,cAAc"}
1
+ {"version":3,"file":"index.mjs","names":["Flexbox","Avatar","clsx"],"sources":["../../../src/Avatar/AvatarGroup/index.tsx"],"sourcesContent":["'use client';\n\nimport clsx from 'clsx';\nimport { memo } from 'react';\n\nimport { Flexbox } from '@/Flex';\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\n\nimport { AvatarImpl as Avatar } from '../Avatar';\nimport type { AvatarGroupProps } from '../type';\nimport { styles } from './style';\n\nconst AvatarGroup = memo<AvatarGroupProps>(\n ({\n items,\n max,\n gap,\n variant = 'borderless',\n bordered,\n shadow,\n size = 48,\n background,\n animation,\n draggable,\n classNames,\n shape,\n styles: customStyles,\n onClick,\n ref,\n zIndexReverse,\n ...rest\n }) => {\n const avatars = max ? items.slice(0, max) : items;\n const restAvatars = items.slice(max, items.length);\n const gapValue = gap ?? Math.floor(-size / 4);\n\n const avatarProps = {\n animation,\n background,\n bordered,\n draggable,\n shadow,\n shape,\n size,\n variant,\n };\n\n return (\n <Flexbox\n horizontal\n gap={gap}\n ref={ref}\n style={{\n position: 'relative',\n }}\n {...rest}\n >\n {avatars.map((avatar, index) => {\n const {\n key,\n style: avatarStyle,\n className: avatarClassName,\n ...restAvatarProps\n } = avatar;\n return (\n <Avatar\n className={clsx(classNames?.avatar, avatarClassName)}\n key={key}\n xstyle={styles.avatar}\n style={{\n marginLeft: index === 0 ? 0 : gapValue,\n zIndex: zIndexReverse ? items.length - index : index,\n ...customStyles?.avatar,\n ...avatarStyle,\n }}\n onClick={() => onClick?.({ item: avatar, key })}\n {...avatarProps}\n {...restAvatarProps}\n />\n );\n })}\n {max && restAvatars.length > 0 && (\n <Avatar\n {...avatarProps}\n avatar={`+${restAvatars.length}`}\n background={cssVar.colorText}\n className={classNames?.count}\n contentXstyle={styles.count}\n sliceText={false}\n xstyle={styles.avatar}\n style={{\n marginLeft: gapValue,\n zIndex: zIndexReverse ? 0 : avatars.length,\n ...customStyles?.count,\n }}\n />\n )}\n </Flexbox>\n );\n },\n);\n\nAvatarGroup.displayName = 'AvatarGroup';\n\nexport default AvatarGroup;\n"],"mappings":";;;;;;;;;AAYA,MAAM,cAAc,MACjB,EACC,OACA,KACA,KACA,UAAU,cACV,UACA,QACA,OAAO,IACP,YACA,WACA,WACA,YACA,OACA,QAAQ,cACR,SACA,KACA,eACA,GAAG,WACC;CACJ,MAAM,UAAU,MAAM,MAAM,MAAM,GAAG,GAAG,IAAI;CAC5C,MAAM,cAAc,MAAM,MAAM,KAAK,MAAM,MAAM;CACjD,MAAM,WAAW,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC;CAE5C,MAAM,cAAc;EAClB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CAEA,OACE,qBAACA,mBAAD;EACE,YAAA;EACK;EACA;EACL,OAAO,EACL,UAAU,WACZ;EACA,GAAI;EAPN,UAAA,CASG,QAAQ,KAAK,QAAQ,UAAU;GAC9B,MAAM,EACJ,KACA,OAAO,aACP,WAAW,iBACX,GAAG,oBACD;GACJ,OACE,oBAACC,YAAD;IACE,WAAWC,OAAK,YAAY,QAAQ,eAAe;IAEnD,QAAQ,OAAO;IACf,OAAO;KACL,YAAY,UAAU,IAAI,IAAI;KAC9B,QAAQ,gBAAgB,MAAM,SAAS,QAAQ;KAC/C,GAAG,cAAc;KACjB,GAAG;IACL;IACA,eAAe,UAAU;KAAE,MAAM;KAAQ;IAAI,CAAC;IAC9C,GAAI;IACJ,GAAI;GACL,GAXM,GAWN;EAEL,CAAC,GACA,OAAO,YAAY,SAAS,KAC3B,oBAACD,YAAD;GACE,GAAI;GACJ,QAAQ,IAAI,YAAY;GACxB,YAAY,OAAO;GACnB,WAAW,YAAY;GACvB,eAAe,OAAO;GACtB,WAAW;GACX,QAAQ,OAAO;GACf,OAAO;IACL,YAAY;IACZ,QAAQ,gBAAgB,IAAI,QAAQ;IACpC,GAAG,cAAc;GACnB;EACD,CAAA,CAEI;;AAEb,CACF;AAEA,YAAY,cAAc"}
@@ -5,7 +5,7 @@ import Icon from "../Icon/Icon.mjs";
5
5
  import { styles } from "./style.mjs";
6
6
  import { memo } from "react";
7
7
  import { jsx, jsxs } from "react/jsx-runtime";
8
- import clsx from "clsx";
8
+ import clsx$1 from "clsx";
9
9
  import * as stylex from "@stylexjs/stylex";
10
10
  import { ChevronRight } from "lucide-react";
11
11
  //#region src/Breadcrumb/Breadcrumb.tsx
@@ -33,7 +33,7 @@ const Breadcrumb = memo(({ className, classNames, items, ref, separator, style,
33
33
  "aria-label": "breadcrumb",
34
34
  ref,
35
35
  ...rest,
36
- ...styleProps(styles.root, clsx("lobe-breadcrumb", className), style),
36
+ ...styleProps(styles.root, clsx$1("lobe-breadcrumb", className), style),
37
37
  children: /* @__PURE__ */ jsx("ol", {
38
38
  ...stylex.props(styles.list),
39
39
  children: items.map((item, index) => {
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumb.mjs","names":[],"sources":["../../src/Breadcrumb/Breadcrumb.tsx"],"sourcesContent":["'use client';\n\nimport './style.css';\n\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { ChevronRight } from 'lucide-react';\nimport { memo, type ReactNode } from 'react';\n\nimport A from '@/A';\nimport Icon from '@/Icon';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { styles } from './style';\nimport type { BreadcrumbItem, BreadcrumbProps } from './type';\n\nconst renderTitle = (item: BreadcrumbItem): ReactNode => {\n if (item.href) {\n return (\n <A {...stylex.props(styles.link)} href={item.href} onClick={item.onClick}>\n {item.title}\n </A>\n );\n }\n\n if (item.onClick) {\n return (\n <button {...stylex.props(styles.button)} type=\"button\" onClick={item.onClick}>\n {item.title}\n </button>\n );\n }\n\n return item.title;\n};\n\nconst Breadcrumb = memo<BreadcrumbProps>(\n ({ className, classNames, items, ref, separator, style, styles: customStyles, ...rest }) => {\n const separatorNode = separator ?? <Icon icon={ChevronRight} size={14} />;\n\n return (\n <nav\n aria-label=\"breadcrumb\"\n ref={ref}\n {...rest}\n {...styleProps(styles.root, clsx('lobe-breadcrumb', className), style)}\n >\n <ol {...stylex.props(styles.list)}>\n {items.map((item, index) => {\n const isLast = index === items.length - 1;\n\n return (\n <li\n aria-current={isLast ? 'page' : undefined}\n key={item.key ?? index}\n {...styleProps(styles.item, classNames?.item, customStyles?.item)}\n >\n {renderTitle(item)}\n {!isLast && (\n <span\n aria-hidden=\"true\"\n {...styleProps(\n styles.separator,\n classNames?.separator,\n customStyles?.separator,\n )}\n >\n {separatorNode}\n </span>\n )}\n </li>\n );\n })}\n </ol>\n </nav>\n );\n },\n);\n\nBreadcrumb.displayName = 'Breadcrumb';\n\nexport default Breadcrumb;\n"],"mappings":";;;;;;;;;;;AAYA,MAAM,eAAe,SAAoC;CACvD,IAAI,KAAK,MACP,OAAO,oBAAC,GAAD;EAAG,GAAI,OAAO,MAAM,OAAO,IAAI;EAAG,MAAM,KAAK;EAAM,SAAS,KAAK;EACnE,UAAA,KAAK;CACL,CAAA;CAEP,IAAI,KAAK,SACP,OAAO,oBAAC,UAAD;EAAQ,GAAI,OAAO,MAAM,OAAO,MAAM;EAAG,MAAK;EAAS,SAAS,KAAK;EACvE,UAAA,KAAK;CACA,CAAA;CAEZ,OAAO,KAAK;AACd;AACA,MAAM,aAAa,MAAuB,EACxC,WACA,YACA,OACA,KACA,WACA,OACA,QAAQ,cACR,GAAG,WACC;CACJ,MAAM,gBAAgB,aAAa,oBAAC,MAAD;EAAM,MAAM;EAAc,MAAM;CAAK,CAAA;CACxE,OAAO,oBAAC,OAAD;EAAK,cAAW;EAAkB;EAAK,GAAI;EAAM,GAAI,WAAW,OAAO,MAAM,KAAK,mBAAmB,SAAS,GAAG,KAAK;EACvH,UAAA,oBAAC,MAAD;GAAI,GAAI,OAAO,MAAM,OAAO,IAAI;GAC7B,UAAA,MAAM,KAAK,MAAM,UAAU;IAC9B,MAAM,SAAS,UAAU,MAAM,SAAS;IACxC,OAAO,qBAAC,MAAD;KAAI,gBAAc,SAAS,SAAS,KAAA;KAAmC,GAAI,WAAW,OAAO,MAAM,YAAY,MAAM,cAAc,IAAI;KAAvI,UAAA,CACE,YAAY,IAAI,GAChB,CAAC,UAAU,oBAAC,QAAD;MAAM,eAAY;MAAO,GAAI,WAAW,OAAO,WAAW,YAAY,WAAW,cAAc,SAAS;MAC/G,UAAA;KACG,CAAA,CACN;IALiD,GAAA,KAAK,OAAO,KAK7D;GACZ,CAAC;EACK,CAAA;CACD,CAAA;AACX,CAAC;AACD,WAAW,cAAc"}
1
+ {"version":3,"file":"Breadcrumb.mjs","names":["clsx"],"sources":["../../src/Breadcrumb/Breadcrumb.tsx"],"sourcesContent":["'use client';\n\nimport './style.css';\n\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { ChevronRight } from 'lucide-react';\nimport { memo, type ReactNode } from 'react';\n\nimport A from '@/A';\nimport Icon from '@/Icon';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { styles } from './style';\nimport type { BreadcrumbItem, BreadcrumbProps } from './type';\n\nconst renderTitle = (item: BreadcrumbItem): ReactNode => {\n if (item.href) {\n return (\n <A {...stylex.props(styles.link)} href={item.href} onClick={item.onClick}>\n {item.title}\n </A>\n );\n }\n\n if (item.onClick) {\n return (\n <button {...stylex.props(styles.button)} type=\"button\" onClick={item.onClick}>\n {item.title}\n </button>\n );\n }\n\n return item.title;\n};\n\nconst Breadcrumb = memo<BreadcrumbProps>(\n ({ className, classNames, items, ref, separator, style, styles: customStyles, ...rest }) => {\n const separatorNode = separator ?? <Icon icon={ChevronRight} size={14} />;\n\n return (\n <nav\n aria-label=\"breadcrumb\"\n ref={ref}\n {...rest}\n {...styleProps(styles.root, clsx('lobe-breadcrumb', className), style)}\n >\n <ol {...stylex.props(styles.list)}>\n {items.map((item, index) => {\n const isLast = index === items.length - 1;\n\n return (\n <li\n aria-current={isLast ? 'page' : undefined}\n key={item.key ?? index}\n {...styleProps(styles.item, classNames?.item, customStyles?.item)}\n >\n {renderTitle(item)}\n {!isLast && (\n <span\n aria-hidden=\"true\"\n {...styleProps(\n styles.separator,\n classNames?.separator,\n customStyles?.separator,\n )}\n >\n {separatorNode}\n </span>\n )}\n </li>\n );\n })}\n </ol>\n </nav>\n );\n },\n);\n\nBreadcrumb.displayName = 'Breadcrumb';\n\nexport default Breadcrumb;\n"],"mappings":";;;;;;;;;;;AAYA,MAAM,eAAe,SAAoC;CACvD,IAAI,KAAK,MACP,OAAO,oBAAC,GAAD;EAAG,GAAI,OAAO,MAAM,OAAO,IAAI;EAAG,MAAM,KAAK;EAAM,SAAS,KAAK;EACnE,UAAA,KAAK;CACL,CAAA;CAEP,IAAI,KAAK,SACP,OAAO,oBAAC,UAAD;EAAQ,GAAI,OAAO,MAAM,OAAO,MAAM;EAAG,MAAK;EAAS,SAAS,KAAK;EACvE,UAAA,KAAK;CACA,CAAA;CAEZ,OAAO,KAAK;AACd;AACA,MAAM,aAAa,MAAuB,EACxC,WACA,YACA,OACA,KACA,WACA,OACA,QAAQ,cACR,GAAG,WACC;CACJ,MAAM,gBAAgB,aAAa,oBAAC,MAAD;EAAM,MAAM;EAAc,MAAM;CAAK,CAAA;CACxE,OAAO,oBAAC,OAAD;EAAK,cAAW;EAAkB;EAAK,GAAI;EAAM,GAAI,WAAW,OAAO,MAAMA,OAAK,mBAAmB,SAAS,GAAG,KAAK;EACvH,UAAA,oBAAC,MAAD;GAAI,GAAI,OAAO,MAAM,OAAO,IAAI;GAC7B,UAAA,MAAM,KAAK,MAAM,UAAU;IAC9B,MAAM,SAAS,UAAU,MAAM,SAAS;IACxC,OAAO,qBAAC,MAAD;KAAI,gBAAc,SAAS,SAAS,KAAA;KAAmC,GAAI,WAAW,OAAO,MAAM,YAAY,MAAM,cAAc,IAAI;KAAvI,UAAA,CACE,YAAY,IAAI,GAChB,CAAC,UAAU,oBAAC,QAAD;MAAM,eAAY;MAAO,GAAI,WAAW,OAAO,WAAW,YAAY,WAAW,cAAc,SAAS;MAC/G,UAAA;KACG,CAAA,CACN;IALiD,GAAA,KAAK,OAAO,KAK7D;GACZ,CAAC;EACK,CAAA;CACD,CAAA;AACX,CAAC;AACD,WAAW,cAAc"}
@@ -36,7 +36,7 @@ const resolveVariantCls = ({ danger, ghost, type }) => {
36
36
  case "primary": return danger ? styles.dangerSolid : styles.variantPrimary;
37
37
  case "dashed": return danger ? [styles.variantDashed, styles.dangerOutlined] : styles.variantDashed;
38
38
  case "fill": return danger ? styles.dangerFill : styles.variantFill;
39
- case "text": return danger ? [styles.variantText, styles.dangerInline] : styles.variantText;
39
+ case "text": return danger ? [styles.variantText, styles.dangerText] : styles.variantText;
40
40
  case "link": return danger ? [styles.variantLink, styles.dangerInline] : styles.variantLink;
41
41
  default: return danger ? [styles.variantDefault, styles.dangerOutlined] : styles.variantDefault;
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Button.mjs","names":[],"sources":["../../src/Button/Button.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport {\n isValidElement,\n type MouseEvent,\n type ReactElement,\n type ReactNode,\n type Ref,\n} from 'react';\n\nimport Icon, { type IconProps } from '@/Icon';\nimport { useMotionComponent } from '@/MotionProvider';\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { styles } from './style';\nimport type { ButtonOutdent, ButtonProps, ButtonType } from './type';\n\nconst resolveIconNode = (node: ReactNode | IconProps['icon'] | undefined | null) => {\n if (node === undefined || node === null) return null;\n if (isValidElement(node) || typeof node === 'string' || typeof node === 'number') {\n return node;\n }\n return <Icon icon={node as any} size={'small'} />;\n};\n\nconst resolveSizeCls = (size: ButtonProps['size']) => {\n if (size === 'small') return styles.sizeSmall;\n if (size === 'large') return styles.sizeLarge;\n return styles.sizeMiddle;\n};\n\nconst resolveIconOnlySizeCls = (size: ButtonProps['size']) => {\n if (size === 'small') return styles.iconOnlySmall;\n if (size === 'large') return styles.iconOnlyLarge;\n return styles.iconOnlyMiddle;\n};\n\nconst resolveVariantCls = ({\n danger,\n ghost,\n type,\n}: {\n danger: boolean;\n ghost: boolean;\n type: NonNullable<ButtonProps['type']>;\n}) => {\n // `text` and `link` already drop the surface, so `ghost` there would only cost them\n // their own traits (link's zero inline padding).\n if (ghost && type !== 'text' && type !== 'link') {\n if (danger) return styles.ghostDanger;\n if (type === 'primary') return styles.ghostPrimary;\n return styles.ghostDefault;\n }\n\n switch (type) {\n case 'primary': {\n return danger ? styles.dangerSolid : styles.variantPrimary;\n }\n case 'dashed': {\n return danger ? [styles.variantDashed, styles.dangerOutlined] : styles.variantDashed;\n }\n case 'fill': {\n return danger ? styles.dangerFill : styles.variantFill;\n }\n case 'text': {\n return danger ? [styles.variantText, styles.dangerInline] : styles.variantText;\n }\n case 'link': {\n return danger ? [styles.variantLink, styles.dangerInline] : styles.variantLink;\n }\n default: {\n return danger ? [styles.variantDefault, styles.dangerOutlined] : styles.variantDefault;\n }\n }\n};\n\nconst tapAnim = { scale: 0.98 };\nconst motionTransition = {\n damping: 26,\n mass: 0.6,\n stiffness: 600,\n type: 'spring' as const,\n};\n\ntype ButtonImplProps = Omit<ButtonProps, 'outdent' | 'type'> & {\n outdent?: ButtonOutdent;\n type?: ButtonType;\n xstyle?: Parameters<typeof styleProps>[0];\n};\n\nconst ButtonImpl = ({\n block,\n children,\n className,\n classNames,\n danger = false,\n disabled,\n outdent,\n ghost = false,\n href,\n htmlType = 'button',\n icon,\n iconPosition = 'start',\n loading,\n onClick,\n ref,\n shape = 'default',\n size = 'middle',\n styles: userStyles,\n target,\n type = 'default',\n xstyle,\n ...rest\n}: ButtonImplProps) => {\n const Motion = useMotionComponent();\n const isInteractionDisabled = disabled || loading;\n const sizeCls = resolveSizeCls(size);\n const variantCls = resolveVariantCls({ danger, ghost, type });\n const shapeCls =\n shape === 'circle' ? styles.shapeCircle : shape === 'round' ? styles.shapeRound : undefined;\n\n const hasChildren =\n children !== undefined && children !== null && children !== false && children !== '';\n const renderIcon = loading || icon;\n const iconOnly = !hasChildren && !!renderIcon;\n const iconOnlySizeCls = iconOnly ? resolveIconOnlySizeCls(size) : undefined;\n\n const outdentCls =\n type === 'text' && outdent\n ? outdent === 'end'\n ? styles.outdentEnd\n : styles.outdentStart\n : undefined;\n\n const composedClassName = styleProps(\n [\n styles.base,\n focusRing.info,\n sizeCls,\n variantCls,\n shapeCls,\n block && styles.block,\n iconPosition === 'end' && styles.iconEnd,\n iconOnlySizeCls,\n outdentCls,\n xstyle,\n ],\n className,\n ).className;\n\n const spinnerNode = (\n <span\n aria-hidden={!loading}\n {...styleProps(\n [\n styles.iconBox,\n styles.spinnerSlot,\n iconPosition === 'end' && styles.spinnerSlotEnd,\n loading && styles.spinnerSlotShow,\n ],\n classNames?.icon,\n userStyles?.icon,\n )}\n >\n <span {...stylex.props(styles.spinner)} />\n </span>\n );\n\n const iconNode =\n icon && !loading ? (\n <span {...styleProps(styles.iconBox, classNames?.icon, userStyles?.icon)}>\n {resolveIconNode(icon)}\n </span>\n ) : null;\n\n const inner = (\n <>\n {spinnerNode}\n {iconNode}\n {children}\n </>\n );\n\n const motionGestures = isInteractionDisabled\n ? {}\n : { transition: motionTransition, whileTap: tapAnim };\n\n if (href !== undefined) {\n const handleAnchorClick = (e: MouseEvent<HTMLAnchorElement>) => {\n if (isInteractionDisabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e as unknown as MouseEvent<HTMLButtonElement>);\n };\n\n return (\n <Motion.a\n aria-busy={loading || undefined}\n aria-disabled={isInteractionDisabled || undefined}\n href={disabled ? undefined : href}\n target={target}\n {...(rest as any)}\n className={composedClassName}\n ref={ref as Ref<HTMLAnchorElement>}\n onClick={handleAnchorClick}\n {...motionGestures}\n >\n {inner}\n </Motion.a>\n );\n }\n\n const handleButtonClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (isInteractionDisabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e);\n };\n\n return (\n <Motion.button\n type={htmlType}\n {...(rest as any)}\n aria-busy={loading || undefined}\n aria-disabled={isInteractionDisabled || undefined}\n className={composedClassName}\n disabled={disabled}\n ref={ref as Ref<HTMLButtonElement>}\n onClick={handleButtonClick}\n {...motionGestures}\n >\n {inner}\n </Motion.button>\n );\n};\n\nButtonImpl.displayName = 'BaseButton';\n\nexport { ButtonImpl };\n\nconst Button = ButtonImpl as <T extends ButtonType = 'default'>(\n props: ButtonProps<T>,\n) => ReactElement;\n\nexport default Button;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Button.mjs","names":[],"sources":["../../src/Button/Button.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport {\n isValidElement,\n type MouseEvent,\n type ReactElement,\n type ReactNode,\n type Ref,\n} from 'react';\n\nimport Icon, { type IconProps } from '@/Icon';\nimport { useMotionComponent } from '@/MotionProvider';\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { styles } from './style';\nimport type { ButtonOutdent, ButtonProps, ButtonType } from './type';\n\nconst resolveIconNode = (node: ReactNode | IconProps['icon'] | undefined | null) => {\n if (node === undefined || node === null) return null;\n if (isValidElement(node) || typeof node === 'string' || typeof node === 'number') {\n return node;\n }\n return <Icon icon={node as any} size={'small'} />;\n};\n\nconst resolveSizeCls = (size: ButtonProps['size']) => {\n if (size === 'small') return styles.sizeSmall;\n if (size === 'large') return styles.sizeLarge;\n return styles.sizeMiddle;\n};\n\nconst resolveIconOnlySizeCls = (size: ButtonProps['size']) => {\n if (size === 'small') return styles.iconOnlySmall;\n if (size === 'large') return styles.iconOnlyLarge;\n return styles.iconOnlyMiddle;\n};\n\nconst resolveVariantCls = ({\n danger,\n ghost,\n type,\n}: {\n danger: boolean;\n ghost: boolean;\n type: NonNullable<ButtonProps['type']>;\n}) => {\n // `text` and `link` already drop the surface, so `ghost` there would only cost them\n // their own traits (link's zero inline padding).\n if (ghost && type !== 'text' && type !== 'link') {\n if (danger) return styles.ghostDanger;\n if (type === 'primary') return styles.ghostPrimary;\n return styles.ghostDefault;\n }\n\n switch (type) {\n case 'primary': {\n return danger ? styles.dangerSolid : styles.variantPrimary;\n }\n case 'dashed': {\n return danger ? [styles.variantDashed, styles.dangerOutlined] : styles.variantDashed;\n }\n case 'fill': {\n return danger ? styles.dangerFill : styles.variantFill;\n }\n case 'text': {\n return danger ? [styles.variantText, styles.dangerText] : styles.variantText;\n }\n case 'link': {\n return danger ? [styles.variantLink, styles.dangerInline] : styles.variantLink;\n }\n default: {\n return danger ? [styles.variantDefault, styles.dangerOutlined] : styles.variantDefault;\n }\n }\n};\n\nconst tapAnim = { scale: 0.98 };\nconst motionTransition = {\n damping: 26,\n mass: 0.6,\n stiffness: 600,\n type: 'spring' as const,\n};\n\ntype ButtonImplProps = Omit<ButtonProps, 'outdent' | 'type'> & {\n outdent?: ButtonOutdent;\n type?: ButtonType;\n xstyle?: Parameters<typeof styleProps>[0];\n};\n\nconst ButtonImpl = ({\n block,\n children,\n className,\n classNames,\n danger = false,\n disabled,\n outdent,\n ghost = false,\n href,\n htmlType = 'button',\n icon,\n iconPosition = 'start',\n loading,\n onClick,\n ref,\n shape = 'default',\n size = 'middle',\n styles: userStyles,\n target,\n type = 'default',\n xstyle,\n ...rest\n}: ButtonImplProps) => {\n const Motion = useMotionComponent();\n const isInteractionDisabled = disabled || loading;\n const sizeCls = resolveSizeCls(size);\n const variantCls = resolveVariantCls({ danger, ghost, type });\n const shapeCls =\n shape === 'circle' ? styles.shapeCircle : shape === 'round' ? styles.shapeRound : undefined;\n\n const hasChildren =\n children !== undefined && children !== null && children !== false && children !== '';\n const renderIcon = loading || icon;\n const iconOnly = !hasChildren && !!renderIcon;\n const iconOnlySizeCls = iconOnly ? resolveIconOnlySizeCls(size) : undefined;\n\n const outdentCls =\n type === 'text' && outdent\n ? outdent === 'end'\n ? styles.outdentEnd\n : styles.outdentStart\n : undefined;\n\n const composedClassName = styleProps(\n [\n styles.base,\n focusRing.info,\n sizeCls,\n variantCls,\n shapeCls,\n block && styles.block,\n iconPosition === 'end' && styles.iconEnd,\n iconOnlySizeCls,\n outdentCls,\n xstyle,\n ],\n className,\n ).className;\n\n const spinnerNode = (\n <span\n aria-hidden={!loading}\n {...styleProps(\n [\n styles.iconBox,\n styles.spinnerSlot,\n iconPosition === 'end' && styles.spinnerSlotEnd,\n loading && styles.spinnerSlotShow,\n ],\n classNames?.icon,\n userStyles?.icon,\n )}\n >\n <span {...stylex.props(styles.spinner)} />\n </span>\n );\n\n const iconNode =\n icon && !loading ? (\n <span {...styleProps(styles.iconBox, classNames?.icon, userStyles?.icon)}>\n {resolveIconNode(icon)}\n </span>\n ) : null;\n\n const inner = (\n <>\n {spinnerNode}\n {iconNode}\n {children}\n </>\n );\n\n const motionGestures = isInteractionDisabled\n ? {}\n : { transition: motionTransition, whileTap: tapAnim };\n\n if (href !== undefined) {\n const handleAnchorClick = (e: MouseEvent<HTMLAnchorElement>) => {\n if (isInteractionDisabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e as unknown as MouseEvent<HTMLButtonElement>);\n };\n\n return (\n <Motion.a\n aria-busy={loading || undefined}\n aria-disabled={isInteractionDisabled || undefined}\n href={disabled ? undefined : href}\n target={target}\n {...(rest as any)}\n className={composedClassName}\n ref={ref as Ref<HTMLAnchorElement>}\n onClick={handleAnchorClick}\n {...motionGestures}\n >\n {inner}\n </Motion.a>\n );\n }\n\n const handleButtonClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (isInteractionDisabled) {\n e.preventDefault();\n return;\n }\n onClick?.(e);\n };\n\n return (\n <Motion.button\n type={htmlType}\n {...(rest as any)}\n aria-busy={loading || undefined}\n aria-disabled={isInteractionDisabled || undefined}\n className={composedClassName}\n disabled={disabled}\n ref={ref as Ref<HTMLButtonElement>}\n onClick={handleButtonClick}\n {...motionGestures}\n >\n {inner}\n </Motion.button>\n );\n};\n\nButtonImpl.displayName = 'BaseButton';\n\nexport { ButtonImpl };\n\nconst Button = ButtonImpl as <T extends ButtonType = 'default'>(\n props: ButtonProps<T>,\n) => ReactElement;\n\nexport default Button;\n"],"mappings":"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"}
@@ -12,7 +12,7 @@ export declare const styles: Readonly<{
12
12
  readonly borderWidth: stylex.StyleXClassNameFor<"borderWidth", 1>;
13
13
  readonly gap: stylex.StyleXClassNameFor<"gap", 6>;
14
14
  readonly textDecoration: stylex.StyleXClassNameFor<"textDecoration", "none">;
15
- readonly transition: stylex.StyleXClassNameFor<"transition", "color 160ms cubic-bezier(0.32, 0.72, 0, 1), background 160ms cubic-bezier(0.32, 0.72, 0, 1), border-color 160ms cubic-bezier(0.32, 0.72, 0, 1), box-shadow 160ms cubic-bezier(0.32, 0.72, 0, 1)">;
15
+ readonly transition: stylex.StyleXClassNameFor<"transition", "color 160ms cubic-bezier(0.32, 0.72, 0, 1), background-color 160ms cubic-bezier(0.32, 0.72, 0, 1), background-image 160ms cubic-bezier(0.32, 0.72, 0, 1), border-color 160ms cubic-bezier(0.32, 0.72, 0, 1), box-shadow 160ms cubic-bezier(0.32, 0.72, 0, 1)">;
16
16
  readonly alignItems: stylex.StyleXClassNameFor<"alignItems", "center">;
17
17
  readonly boxSizing: stylex.StyleXClassNameFor<"boxSizing", "border-box">;
18
18
  readonly cursor: stylex.StyleXClassNameFor<"cursor", "pointer" | "not-allowed">;
@@ -105,6 +105,7 @@ export declare const styles: Readonly<{
105
105
  readonly variantDefault: Readonly<{
106
106
  readonly borderColor: stylex.StyleXClassNameFor<"borderColor", string>;
107
107
  readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
108
+ readonly backgroundImage: stylex.StyleXClassNameFor<"backgroundImage", string | null>;
108
109
  readonly color: stylex.StyleXClassNameFor<"color", string>;
109
110
  }>;
110
111
  readonly variantPrimary: Readonly<{
@@ -116,6 +117,7 @@ export declare const styles: Readonly<{
116
117
  readonly borderColor: stylex.StyleXClassNameFor<"borderColor", string>;
117
118
  readonly borderStyle: stylex.StyleXClassNameFor<"borderStyle", "dashed">;
118
119
  readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
120
+ readonly backgroundImage: stylex.StyleXClassNameFor<"backgroundImage", string | null>;
119
121
  readonly color: stylex.StyleXClassNameFor<"color", string>;
120
122
  }>;
121
123
  readonly variantFill: Readonly<{
@@ -137,6 +139,7 @@ export declare const styles: Readonly<{
137
139
  readonly dangerOutlined: Readonly<{
138
140
  readonly borderColor: stylex.StyleXClassNameFor<"borderColor", string>;
139
141
  readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
142
+ readonly backgroundImage: stylex.StyleXClassNameFor<"backgroundImage", null>;
140
143
  readonly color: stylex.StyleXClassNameFor<"color", string>;
141
144
  }>;
142
145
  readonly dangerSolid: Readonly<{
@@ -149,6 +152,10 @@ export declare const styles: Readonly<{
149
152
  readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
150
153
  readonly color: stylex.StyleXClassNameFor<"color", string>;
151
154
  }>;
155
+ readonly dangerText: Readonly<{
156
+ readonly backgroundColor: stylex.StyleXClassNameFor<"backgroundColor", string>;
157
+ readonly color: stylex.StyleXClassNameFor<"color", string>;
158
+ }>;
152
159
  readonly dangerInline: Readonly<{
153
160
  readonly color: stylex.StyleXClassNameFor<"color", string>;
154
161
  }>;
@@ -1,3 +1,4 @@
1
+ import { cssVar } from "../styles/stylex/cssVar.stylex.mjs";
1
2
  import * as stylex from "@stylexjs/stylex";
2
3
  //#region src/Button/style.ts
3
4
  const buttonPaddingInline = {
@@ -5,6 +6,20 @@ const buttonPaddingInline = {
5
6
  middle: 14,
6
7
  small: 8
7
8
  };
9
+ `${cssVar.colorError}`;
10
+ `${cssVar.colorError}`;
11
+ `${cssVar.colorText}${cssVar.colorBorder}`;
12
+ `${cssVar.colorFillTertiary}${cssVar.colorFillTertiary}`;
13
+ `${cssVar.colorFillSecondary}${cssVar.colorFillSecondary}`;
14
+ `${cssVar.colorError}`;
15
+ `${cssVar.colorError}`;
16
+ `${cssVar.colorError}`;
17
+ `${cssVar.colorError}`;
18
+ `${cssVar.colorError}`;
19
+ `${cssVar.colorError}`;
20
+ `${cssVar.colorError}`;
21
+ `${cssVar.colorError}${cssVar.colorBgContainer}`;
22
+ `${cssVar.colorError}${cssVar.colorBgContainer}`;
8
23
  const styles = {
9
24
  base: {
10
25
  kVAM5u: "lbqnr5ac",
@@ -12,7 +27,7 @@ const styles = {
12
27
  kMzoRj: "lbmkeg23",
13
28
  kOIVth: "lb17d4w8g",
14
29
  kybGjl: "lb1hl2dhg",
15
- kmkexE: "lbz4dce",
30
+ kmkexE: "lb15xd0no",
16
31
  kGNEyG: "lb6s0dn4",
17
32
  kB7OPa: "lb9f619",
18
33
  kkrTdU: "lb1ypdohk lb126qsmr",
@@ -120,9 +135,10 @@ const styles = {
120
135
  $$css: true
121
136
  },
122
137
  variantDefault: {
123
- kVAM5u: "lbqnr5ac lbnudtlt",
138
+ kVAM5u: "lbqnr5ac lbv4eugq",
124
139
  kWkggS: "lb6yijhg",
125
- kMwMTN: "lb66ogz0 lb10e6xak",
140
+ kKwaWg: "lb1hdlj1n lbx7ggy6",
141
+ kMwMTN: "lb66ogz0",
126
142
  $$css: true
127
143
  },
128
144
  variantPrimary: {
@@ -132,10 +148,11 @@ const styles = {
132
148
  $$css: true
133
149
  },
134
150
  variantDashed: {
135
- kVAM5u: "lbqnr5ac lbnudtlt",
151
+ kVAM5u: "lbqnr5ac lbv4eugq",
136
152
  ksu8eU: "lbbsl7fq",
137
153
  kWkggS: "lb6yijhg",
138
- kMwMTN: "lb66ogz0 lb10e6xak",
154
+ kKwaWg: "lb1hdlj1n lbx7ggy6",
155
+ kMwMTN: "lb66ogz0",
139
156
  $$css: true
140
157
  },
141
158
  variantFill: {
@@ -158,25 +175,31 @@ const styles = {
158
175
  $$css: true
159
176
  },
160
177
  dangerOutlined: {
161
- kVAM5u: "lb11fhi00 lbh2h5hx",
162
- kWkggS: "lb6yijhg",
163
- kMwMTN: "lb12ap7uz lb158did2",
178
+ kVAM5u: "lb1mpi7gh lbs8cwth",
179
+ kWkggS: "lb1saschm lb6yijhg lbzxaxr6",
180
+ kKwaWg: null,
181
+ kMwMTN: "lb12ap7uz",
164
182
  $$css: true
165
183
  },
166
184
  dangerSolid: {
167
- kVAM5u: "lblxergw lb11fhi00 lb12cazn7 lb13cas3i",
168
- kWkggS: "lb1v7zx8w lbixdnzb lb6w9gdg lb1qwfrtx",
185
+ kVAM5u: "lb1dvy257 lb11fhi00 lb2949mz lb1e5ynfq",
186
+ kWkggS: "lb15l4kc2 lbixdnzb lb1mog8ep lb1gj3nph",
169
187
  kMwMTN: "lb15g0kca",
170
188
  $$css: true
171
189
  },
172
190
  dangerFill: {
173
191
  kVAM5u: "lb9r1u3d",
174
- kWkggS: "lb1dm0l71 lb29nf4p lbt8c1aj",
175
- kMwMTN: "lb1mergwt lb12ap7uz lb1iasuq3",
192
+ kWkggS: "lbrq8w1b lb1f2tfg0 lb1lf6bdk",
193
+ kMwMTN: "lb12ap7uz",
194
+ $$css: true
195
+ },
196
+ dangerText: {
197
+ kWkggS: "lb14kxky9 lbjbqb8w lb3lzv3l",
198
+ kMwMTN: "lb12ap7uz",
176
199
  $$css: true
177
200
  },
178
201
  dangerInline: {
179
- kMwMTN: "lb12ap7uz lb158did2",
202
+ kMwMTN: "lb12ap7uz lbcu7z5f",
180
203
  $$css: true
181
204
  },
182
205
  ghostDefault: {
@@ -193,8 +216,8 @@ const styles = {
193
216
  },
194
217
  ghostDanger: {
195
218
  kVAM5u: "lb9r1u3d",
196
- kWkggS: "lb1qlulce lbjbqb8w lb5d67gy",
197
- kMwMTN: "lb1mergwt lb12ap7uz lb1iasuq3",
219
+ kWkggS: "lb14kxky9 lbjbqb8w lb3lzv3l",
220
+ kMwMTN: "lb12ap7uz",
198
221
  $$css: true
199
222
  },
200
223
  spinner: {
@@ -228,7 +251,7 @@ const splitStyles = {
228
251
  $$css: true
229
252
  },
230
253
  solidDanger: {
231
- "--lobe-split-button-fill": "lb18ie2v8 lb1ay50n1",
254
+ "--lobe-split-button-fill": "lb1g6lid4 lb14ldvf4",
232
255
  $$css: true
233
256
  },
234
257
  item: {
@@ -256,8 +279,8 @@ const splitStyles = {
256
279
  $$css: true
257
280
  },
258
281
  itemFillDanger: {
259
- kVAM5u: "lb1n1lchj lb13cas3i",
260
- kWkggS: "lb171v8l7 lb1qwfrtx",
282
+ kVAM5u: "lb1n1lchj lb1e5ynfq",
283
+ kWkggS: "lb171v8l7 lb1gj3nph",
261
284
  $$css: true
262
285
  },
263
286
  itemFillGhost: {
@@ -1 +1 @@
1
- {"version":3,"file":"style.mjs","names":[],"sources":["../../src/Button/style.ts"],"sourcesContent":["import * as stylex from '@stylexjs/stylex';\n\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\n\nexport const buttonPaddingInline = {\n large: 16,\n middle: 14,\n small: 8,\n} as const;\n\nconst disabled = ':is(:disabled, [aria-disabled=\"true\"])';\nconst hover = ':hover:not(:disabled, [aria-disabled=\"true\"])';\nconst active = ':active:not(:disabled, [aria-disabled=\"true\"])';\nconst hoverIdle = ':hover:not(:active, :disabled, [aria-disabled=\"true\"])';\nconst hoverIdleClosed = ':hover:not(:active, :disabled, [aria-disabled=\"true\"], [data-popup-open])';\nconst popupOpen = ':is([data-popup-open])';\n\nconst spin = stylex.keyframes({\n to: { transform: 'rotate(360deg)' },\n});\n\nconst ease = 'cubic-bezier(0.32, 0.72, 0, 1)';\nconst slotEase = 'cubic-bezier(0.22, 1, 0.36, 1)';\n\nexport const styles = stylex.create({\n base: {\n borderColor: cssVar.colorBorder,\n borderStyle: 'solid',\n borderWidth: 1,\n gap: 6,\n textDecoration: 'none',\n transition: `color 160ms ${ease}, background 160ms ${ease}, border-color 160ms ${ease}, box-shadow 160ms ${ease}`,\n alignItems: 'center',\n boxSizing: 'border-box',\n cursor: { default: 'pointer', [disabled]: 'not-allowed' },\n display: 'inline-flex',\n fontWeight: 500,\n justifyContent: 'center',\n lineHeight: 1,\n opacity: { default: null, [disabled]: 0.5 },\n pointerEvents: { default: null, [disabled]: 'none' },\n position: 'relative',\n whiteSpace: 'nowrap',\n },\n\n sizeSmall: {\n '--button-padding-inline': `${buttonPaddingInline.small}px`,\n 'borderRadius': cssVar.borderRadiusSM,\n 'paddingInline': 'var(--button-padding-inline)',\n 'fontSize': 12,\n 'height': 24,\n },\n\n sizeMiddle: {\n '--button-padding-inline': `${buttonPaddingInline.middle}px`,\n 'borderRadius': cssVar.borderRadiusSM,\n 'paddingInline': 'var(--button-padding-inline)',\n 'fontSize': 13,\n 'height': 32,\n },\n\n sizeLarge: {\n '--button-padding-inline': `${buttonPaddingInline.large}px`,\n 'borderRadius': cssVar.borderRadius,\n 'paddingInline': 'var(--button-padding-inline)',\n 'fontSize': 14,\n 'height': 40,\n },\n\n outdentStart: {\n marginInlineStart: 'calc(var(--button-padding-inline) * -1)',\n },\n\n outdentEnd: {\n marginInlineEnd: 'calc(var(--button-padding-inline) * -1)',\n },\n\n shapeCircle: {\n borderRadius: '50%',\n paddingInline: 0,\n },\n\n shapeRound: {\n borderRadius: 999,\n },\n\n block: {\n width: '100%',\n },\n\n iconEnd: {\n flexDirection: 'row-reverse',\n },\n\n iconOnlySmall: {\n '--button-padding-inline': '0px',\n 'paddingInline': 0,\n 'width': 24,\n },\n\n iconOnlyMiddle: {\n '--button-padding-inline': '0px',\n 'paddingInline': 0,\n 'width': 32,\n },\n\n iconOnlyLarge: {\n '--button-padding-inline': '0px',\n 'paddingInline': 0,\n 'width': 40,\n },\n\n iconBox: {\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n },\n\n spinnerSlot: {\n overflow: 'hidden',\n transition: `width 380ms ${slotEase}, margin 380ms ${slotEase}, opacity 260ms ${slotEase}`,\n marginInlineEnd: -6,\n opacity: 0,\n width: 0,\n },\n\n spinnerSlotEnd: {\n marginInlineEnd: 0,\n marginInlineStart: -6,\n },\n\n spinnerSlotShow: {\n marginInlineEnd: 0,\n marginInlineStart: 0,\n opacity: 1,\n width: 12,\n },\n\n variantDefault: {\n borderColor: { default: cssVar.colorBorder, [hover]: cssVar.colorPrimaryBorder },\n backgroundColor: cssVar.colorBgContainer,\n color: { default: cssVar.colorText, [hover]: cssVar.colorPrimaryText },\n },\n\n variantPrimary: {\n borderColor: {\n [active]: cssVar.colorPrimaryActive,\n default: cssVar.colorPrimary,\n [hoverIdleClosed]: cssVar.colorPrimaryHover,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n backgroundColor: {\n [active]: cssVar.colorPrimaryActive,\n default: cssVar.colorPrimary,\n [hoverIdleClosed]: cssVar.colorPrimaryHover,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n color: cssVar.colorBgLayout,\n },\n\n variantDashed: {\n borderColor: { default: cssVar.colorBorder, [hover]: cssVar.colorPrimaryBorder },\n borderStyle: 'dashed',\n backgroundColor: cssVar.colorBgContainer,\n color: { default: cssVar.colorText, [hover]: cssVar.colorPrimaryText },\n },\n\n variantFill: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorFill,\n default: cssVar.colorFillTertiary,\n [hoverIdle]: cssVar.colorFillSecondary,\n },\n color: cssVar.colorText,\n },\n\n variantText: {\n borderColor: 'transparent',\n backgroundColor: { default: 'transparent', [hover]: cssVar.colorFillSecondary },\n color: cssVar.colorText,\n },\n\n variantLink: {\n borderColor: 'transparent',\n paddingInline: 0,\n backgroundColor: 'transparent',\n color: { default: cssVar.colorPrimary, [hover]: cssVar.colorPrimaryHover },\n },\n\n dangerOutlined: {\n borderColor: { default: cssVar.colorError, [hover]: cssVar.colorErrorHover },\n backgroundColor: cssVar.colorBgContainer,\n color: { default: cssVar.colorError, [hover]: cssVar.colorErrorHover },\n },\n\n dangerSolid: {\n borderColor: {\n [active]: cssVar.colorErrorActive,\n default: cssVar.colorError,\n [hoverIdleClosed]: cssVar.colorErrorHover,\n [popupOpen]: cssVar.colorErrorActive,\n },\n backgroundColor: {\n [active]: cssVar.colorErrorActive,\n default: cssVar.colorError,\n [hoverIdleClosed]: cssVar.colorErrorHover,\n [popupOpen]: cssVar.colorErrorActive,\n },\n color: cssVar.colorBgLayout,\n },\n\n dangerFill: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorErrorBgHover,\n default: cssVar.colorErrorBg,\n [hover]: cssVar.colorErrorBgHover,\n },\n color: {\n [active]: cssVar.colorErrorActive,\n default: cssVar.colorError,\n [hoverIdle]: cssVar.colorErrorHover,\n },\n },\n\n dangerInline: {\n color: { default: cssVar.colorError, [hover]: cssVar.colorErrorHover },\n },\n\n ghostDefault: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorFill,\n default: 'transparent',\n [hoverIdle]: cssVar.colorFillSecondary,\n },\n color: cssVar.colorText,\n },\n\n ghostPrimary: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorFill,\n default: 'transparent',\n [hoverIdle]: cssVar.colorFillSecondary,\n },\n color: {\n [active]: cssVar.colorPrimaryActive,\n default: cssVar.colorPrimary,\n [hoverIdle]: cssVar.colorPrimaryHover,\n },\n },\n\n ghostDanger: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorFill,\n default: 'transparent',\n [hoverIdle]: cssVar.colorFillSecondary,\n },\n color: {\n [active]: cssVar.colorErrorActive,\n default: cssVar.colorError,\n [hoverIdle]: cssVar.colorErrorHover,\n },\n },\n\n spinner: {\n borderColor: 'currentcolor',\n borderRadius: '50%',\n borderStyle: 'solid',\n borderWidth: 1.5,\n animationDuration: '0.6s',\n animationIterationCount: 'infinite',\n animationName: spin,\n animationTimingFunction: 'linear',\n borderBlockStartColor: 'transparent',\n display: 'inline-block',\n height: 12,\n width: 12,\n },\n});\n\nconst hasHover = ':has(> :where(button, a):hover:not(:disabled, [aria-disabled=\"true\"]))';\nconst hasActive = ':has(> :where(button, a):active:not(:disabled, [aria-disabled=\"true\"]))';\nconst hasHoverOnly = `${hasHover}:not(${hasActive})`;\nconst first = ':first-of-type';\nconst last = ':last-of-type';\n\nexport const splitStyles = stylex.create({\n root: {\n display: 'inline-flex',\n flexDirection: 'row',\n },\n interactionDisabled: {\n opacity: 0.5,\n },\n solidPrimary: {\n '--lobe-split-button-fill': {\n default: null,\n [hasActive]: cssVar.colorPrimaryActive,\n [hasHoverOnly]: cssVar.colorPrimaryHover,\n },\n },\n solidDanger: {\n '--lobe-split-button-fill': {\n default: null,\n [hasActive]: cssVar.colorErrorActive,\n [hasHoverOnly]: cssVar.colorErrorHover,\n },\n },\n item: {\n borderEndEndRadius: { default: null, [first]: 0 },\n borderEndStartRadius: { default: null, [last]: 0 },\n borderStartEndRadius: { default: null, [first]: 0 },\n borderStartStartRadius: { default: null, [last]: 0 },\n marginInlineStart: { default: null, [last]: -1 },\n },\n itemInteractionDisabled: {\n opacity: { default: null, [disabled]: 1 },\n },\n itemSolid: {\n // solid halves share one color, so the outline-merging overlap only adds a dark seam once each half is translucent (disabled)\n 'marginInlineStart': { default: null, [last]: 0 },\n '::before': {\n insetBlock: { default: null, [last]: 0 },\n backgroundColor: { default: null, [last]: 'currentcolor' },\n content: { default: null, [last]: \"''\" },\n insetInlineStart: { default: null, [last]: 0 },\n opacity: { default: null, [last]: 0.2 },\n pointerEvents: { default: null, [last]: 'none' },\n position: { default: null, [last]: 'absolute' },\n width: { default: null, [last]: 1 },\n },\n },\n itemFillDanger: {\n borderColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorError})`,\n [popupOpen]: cssVar.colorErrorActive,\n },\n backgroundColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorError})`,\n [popupOpen]: cssVar.colorErrorActive,\n },\n },\n itemFillGhost: {\n borderColor: 'var(--lobe-split-button-fill, transparent)',\n backgroundColor: 'var(--lobe-split-button-fill, transparent)',\n },\n itemFillPrimary: {\n borderColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorPrimary})`,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n backgroundColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorPrimary})`,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n },\n});\n\nexport const buttonStyles = Object.fromEntries(\n Object.entries(styles).map(([key, value]) => [key, stylex.props(value).className ?? '']),\n) as Record<keyof typeof styles, string>;\n"],"mappings":"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"}
1
+ {"version":3,"file":"style.mjs","names":[],"sources":["../../src/Button/style.ts"],"sourcesContent":["import * as stylex from '@stylexjs/stylex';\n\nimport { cssVar } from '@/styles/stylex/cssVar.stylex';\n\nexport const buttonPaddingInline = {\n large: 16,\n middle: 14,\n small: 8,\n} as const;\n\nconst disabled = ':is(:disabled, [aria-disabled=\"true\"])';\nconst hover = ':hover:not(:disabled, [aria-disabled=\"true\"])';\nconst active = ':active:not(:disabled, [aria-disabled=\"true\"])';\nconst hoverIdle = ':hover:not(:active, :disabled, [aria-disabled=\"true\"])';\nconst hoverIdleClosed = ':hover:not(:active, :disabled, [aria-disabled=\"true\"], [data-popup-open])';\nconst popupOpen = ':is([data-popup-open])';\n\nconst spin = stylex.keyframes({\n to: { transform: 'rotate(360deg)' },\n});\n\nconst ease = 'cubic-bezier(0.32, 0.72, 0, 1)';\n\nconst errorHover = `color-mix(in srgb, ${cssVar.colorError} 88%, white)`;\nconst errorActive = `color-mix(in srgb, ${cssVar.colorError} 88%, black)`;\nconst borderHover = `color-mix(in srgb, ${cssVar.colorText} 8%, ${cssVar.colorBorder})`;\nconst neutralWash = `linear-gradient(${cssVar.colorFillTertiary}, ${cssVar.colorFillTertiary})`;\nconst neutralWashActive = `linear-gradient(${cssVar.colorFillSecondary}, ${cssVar.colorFillSecondary})`;\nconst error10 = `color-mix(in srgb, ${cssVar.colorError} 10%, transparent)`;\nconst error12 = `color-mix(in srgb, ${cssVar.colorError} 12%, transparent)`;\nconst error16 = `color-mix(in srgb, ${cssVar.colorError} 16%, transparent)`;\nconst error18 = `color-mix(in srgb, ${cssVar.colorError} 18%, transparent)`;\nconst error22 = `color-mix(in srgb, ${cssVar.colorError} 22%, transparent)`;\nconst error40 = `color-mix(in srgb, ${cssVar.colorError} 40%, transparent)`;\nconst error65 = `color-mix(in srgb, ${cssVar.colorError} 65%, transparent)`;\nconst errorOnContainer8 = `color-mix(in srgb, ${cssVar.colorError} 8%, ${cssVar.colorBgContainer})`;\nconst errorOnContainer14 = `color-mix(in srgb, ${cssVar.colorError} 14%, ${cssVar.colorBgContainer})`;\nconst slotEase = 'cubic-bezier(0.22, 1, 0.36, 1)';\n\nexport const styles = stylex.create({\n base: {\n borderColor: cssVar.colorBorder,\n borderStyle: 'solid',\n borderWidth: 1,\n gap: 6,\n textDecoration: 'none',\n transition: `color 160ms ${ease}, background-color 160ms ${ease}, background-image 160ms ${ease}, border-color 160ms ${ease}, box-shadow 160ms ${ease}`,\n alignItems: 'center',\n boxSizing: 'border-box',\n cursor: { default: 'pointer', [disabled]: 'not-allowed' },\n display: 'inline-flex',\n fontWeight: 500,\n justifyContent: 'center',\n lineHeight: 1,\n opacity: { default: null, [disabled]: 0.5 },\n pointerEvents: { default: null, [disabled]: 'none' },\n position: 'relative',\n whiteSpace: 'nowrap',\n },\n\n sizeSmall: {\n '--button-padding-inline': `${buttonPaddingInline.small}px`,\n 'borderRadius': cssVar.borderRadiusSM,\n 'paddingInline': 'var(--button-padding-inline)',\n 'fontSize': 12,\n 'height': 24,\n },\n\n sizeMiddle: {\n '--button-padding-inline': `${buttonPaddingInline.middle}px`,\n 'borderRadius': cssVar.borderRadiusSM,\n 'paddingInline': 'var(--button-padding-inline)',\n 'fontSize': 13,\n 'height': 32,\n },\n\n sizeLarge: {\n '--button-padding-inline': `${buttonPaddingInline.large}px`,\n 'borderRadius': cssVar.borderRadius,\n 'paddingInline': 'var(--button-padding-inline)',\n 'fontSize': 14,\n 'height': 40,\n },\n\n outdentStart: {\n marginInlineStart: 'calc(var(--button-padding-inline) * -1)',\n },\n\n outdentEnd: {\n marginInlineEnd: 'calc(var(--button-padding-inline) * -1)',\n },\n\n shapeCircle: {\n borderRadius: '50%',\n paddingInline: 0,\n },\n\n shapeRound: {\n borderRadius: 999,\n },\n\n block: {\n width: '100%',\n },\n\n iconEnd: {\n flexDirection: 'row-reverse',\n },\n\n iconOnlySmall: {\n '--button-padding-inline': '0px',\n 'paddingInline': 0,\n 'width': 24,\n },\n\n iconOnlyMiddle: {\n '--button-padding-inline': '0px',\n 'paddingInline': 0,\n 'width': 32,\n },\n\n iconOnlyLarge: {\n '--button-padding-inline': '0px',\n 'paddingInline': 0,\n 'width': 40,\n },\n\n iconBox: {\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n },\n\n spinnerSlot: {\n overflow: 'hidden',\n transition: `width 380ms ${slotEase}, margin 380ms ${slotEase}, opacity 260ms ${slotEase}`,\n marginInlineEnd: -6,\n opacity: 0,\n width: 0,\n },\n\n spinnerSlotEnd: {\n marginInlineEnd: 0,\n marginInlineStart: -6,\n },\n\n spinnerSlotShow: {\n marginInlineEnd: 0,\n marginInlineStart: 0,\n opacity: 1,\n width: 12,\n },\n\n variantDefault: {\n borderColor: { default: cssVar.colorBorder, [hover]: borderHover },\n backgroundColor: cssVar.colorBgContainer,\n backgroundImage: {\n [active]: neutralWashActive,\n default: null,\n [hoverIdle]: neutralWash,\n },\n color: cssVar.colorText,\n },\n\n variantPrimary: {\n borderColor: {\n [active]: cssVar.colorPrimaryActive,\n default: cssVar.colorPrimary,\n [hoverIdleClosed]: cssVar.colorPrimaryHover,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n backgroundColor: {\n [active]: cssVar.colorPrimaryActive,\n default: cssVar.colorPrimary,\n [hoverIdleClosed]: cssVar.colorPrimaryHover,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n color: cssVar.colorBgLayout,\n },\n\n variantDashed: {\n borderColor: { default: cssVar.colorBorder, [hover]: borderHover },\n borderStyle: 'dashed',\n backgroundColor: cssVar.colorBgContainer,\n backgroundImage: {\n [active]: neutralWashActive,\n default: null,\n [hoverIdle]: neutralWash,\n },\n color: cssVar.colorText,\n },\n\n variantFill: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorFill,\n default: cssVar.colorFillTertiary,\n [hoverIdle]: cssVar.colorFillSecondary,\n },\n color: cssVar.colorText,\n },\n\n variantText: {\n borderColor: 'transparent',\n backgroundColor: { default: 'transparent', [hover]: cssVar.colorFillSecondary },\n color: cssVar.colorText,\n },\n\n variantLink: {\n borderColor: 'transparent',\n paddingInline: 0,\n backgroundColor: 'transparent',\n color: { default: cssVar.colorPrimary, [hover]: cssVar.colorPrimaryHover },\n },\n\n dangerOutlined: {\n borderColor: { default: error40, [hover]: error65 },\n backgroundColor: {\n [active]: errorOnContainer14,\n default: cssVar.colorBgContainer,\n [hoverIdle]: errorOnContainer8,\n },\n backgroundImage: null,\n color: cssVar.colorError,\n },\n\n dangerSolid: {\n borderColor: {\n [active]: errorActive,\n default: cssVar.colorError,\n [hoverIdleClosed]: errorHover,\n [popupOpen]: errorActive,\n },\n backgroundColor: {\n [active]: errorActive,\n default: cssVar.colorError,\n [hoverIdleClosed]: errorHover,\n [popupOpen]: errorActive,\n },\n color: cssVar.colorBgLayout,\n },\n\n dangerFill: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: error22,\n default: error12,\n [hoverIdle]: error18,\n },\n color: cssVar.colorError,\n },\n\n dangerText: {\n backgroundColor: {\n [active]: error16,\n default: 'transparent',\n [hoverIdle]: error10,\n },\n color: cssVar.colorError,\n },\n\n dangerInline: {\n color: { default: cssVar.colorError, [hover]: errorHover },\n },\n\n ghostDefault: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorFill,\n default: 'transparent',\n [hoverIdle]: cssVar.colorFillSecondary,\n },\n color: cssVar.colorText,\n },\n\n ghostPrimary: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: cssVar.colorFill,\n default: 'transparent',\n [hoverIdle]: cssVar.colorFillSecondary,\n },\n color: {\n [active]: cssVar.colorPrimaryActive,\n default: cssVar.colorPrimary,\n [hoverIdle]: cssVar.colorPrimaryHover,\n },\n },\n\n ghostDanger: {\n borderColor: 'transparent',\n backgroundColor: {\n [active]: error16,\n default: 'transparent',\n [hoverIdle]: error10,\n },\n color: cssVar.colorError,\n },\n\n spinner: {\n borderColor: 'currentcolor',\n borderRadius: '50%',\n borderStyle: 'solid',\n borderWidth: 1.5,\n animationDuration: '0.6s',\n animationIterationCount: 'infinite',\n animationName: spin,\n animationTimingFunction: 'linear',\n borderBlockStartColor: 'transparent',\n display: 'inline-block',\n height: 12,\n width: 12,\n },\n});\n\nconst hasHover = ':has(> :where(button, a):hover:not(:disabled, [aria-disabled=\"true\"]))';\nconst hasActive = ':has(> :where(button, a):active:not(:disabled, [aria-disabled=\"true\"]))';\nconst hasHoverOnly = `${hasHover}:not(${hasActive})`;\nconst first = ':first-of-type';\nconst last = ':last-of-type';\n\nexport const splitStyles = stylex.create({\n root: {\n display: 'inline-flex',\n flexDirection: 'row',\n },\n interactionDisabled: {\n opacity: 0.5,\n },\n solidPrimary: {\n '--lobe-split-button-fill': {\n default: null,\n [hasActive]: cssVar.colorPrimaryActive,\n [hasHoverOnly]: cssVar.colorPrimaryHover,\n },\n },\n solidDanger: {\n '--lobe-split-button-fill': {\n default: null,\n [hasActive]: errorActive,\n [hasHoverOnly]: errorHover,\n },\n },\n item: {\n borderEndEndRadius: { default: null, [first]: 0 },\n borderEndStartRadius: { default: null, [last]: 0 },\n borderStartEndRadius: { default: null, [first]: 0 },\n borderStartStartRadius: { default: null, [last]: 0 },\n marginInlineStart: { default: null, [last]: -1 },\n },\n itemInteractionDisabled: {\n opacity: { default: null, [disabled]: 1 },\n },\n itemSolid: {\n // solid halves share one color, so the outline-merging overlap only adds a dark seam once each half is translucent (disabled)\n 'marginInlineStart': { default: null, [last]: 0 },\n '::before': {\n insetBlock: { default: null, [last]: 0 },\n backgroundColor: { default: null, [last]: 'currentcolor' },\n content: { default: null, [last]: \"''\" },\n insetInlineStart: { default: null, [last]: 0 },\n opacity: { default: null, [last]: 0.2 },\n pointerEvents: { default: null, [last]: 'none' },\n position: { default: null, [last]: 'absolute' },\n width: { default: null, [last]: 1 },\n },\n },\n itemFillDanger: {\n borderColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorError})`,\n [popupOpen]: errorActive,\n },\n backgroundColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorError})`,\n [popupOpen]: errorActive,\n },\n },\n itemFillGhost: {\n borderColor: 'var(--lobe-split-button-fill, transparent)',\n backgroundColor: 'var(--lobe-split-button-fill, transparent)',\n },\n itemFillPrimary: {\n borderColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorPrimary})`,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n backgroundColor: {\n default: `var(--lobe-split-button-fill, ${cssVar.colorPrimary})`,\n [popupOpen]: cssVar.colorPrimaryActive,\n },\n },\n});\n\nexport const buttonStyles = Object.fromEntries(\n Object.entries(styles).map(([key, value]) => [key, stylex.props(value).className ?? '']),\n) as Record<keyof typeof styles, string>;\n"],"mappings":"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"}
@@ -50,4 +50,5 @@ type NativeButtonProps = Omit<ButtonHTMLAttributes<HTMLButtonElement>, keyof Bas
50
50
  type NativeAnchorProps = Omit<AnchorHTMLAttributes<HTMLAnchorElement>, keyof BaseButtonOwnProps | 'type' | 'outdent'>;
51
51
  export type ButtonProps<T extends ButtonType = ButtonType> = BaseButtonOwnProps & NativeButtonProps & Partial<NativeAnchorProps> & TextOutdentProps<T>;
52
52
  //#endregion
53
+ export {};
53
54
  //# sourceMappingURL=type.d.mts.map
@@ -2,12 +2,12 @@
2
2
  import { styleProps } from "../styles/stylex/props.mjs";
3
3
  import { ActionIconImpl } from "../ActionIcon/ActionIcon.mjs";
4
4
  import { useEventCallback } from "../hooks/useEventCallback.mjs";
5
+ import { useControlledState } from "../hooks/useControlledState.mjs";
5
6
  import { styles } from "./style.mjs";
6
7
  import { Children, createElement, isValidElement, memo, useEffect, useImperativeHandle, useLayoutEffect, useRef, useState } from "react";
7
8
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
8
9
  import * as stylex from "@stylexjs/stylex";
9
10
  import { ChevronLeft, ChevronRight } from "lucide-react";
10
- import useControlledState from "use-merge-value";
11
11
  //#region src/Carousel/Carousel.tsx
12
12
  const DEFAULT_INTERVAL = 5e3;
13
13
  const SWIPE_THRESHOLD = 40;
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.mjs","names":["ActionIcon"],"sources":["../../src/Carousel/Carousel.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport {\n Children,\n isValidElement,\n memo,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport useControlledState from 'use-merge-value';\n\nimport { ActionIconImpl as ActionIcon } from '@/ActionIcon/ActionIcon';\nimport { useEventCallback } from '@/hooks/useEventCallback';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { styles } from './style';\nimport type { CarouselProps } from './type';\n\nconst DEFAULT_INTERVAL = 5000;\nconst SWIPE_THRESHOLD = 40;\nconst ARROW_SIZE = { blockSize: 28, borderRadius: '50%', size: 16 };\n\nconst Carousel = memo<CarouselProps>(\n ({\n adaptiveHeight = false,\n arrows = false,\n autoplay = false,\n children,\n className,\n defaultIndex = 0,\n dots = true,\n index,\n loop = true,\n onIndexChange,\n onPointerEnter,\n onPointerLeave,\n pauseOnHover = true,\n ref,\n ...rest\n }) => {\n const slides = Children.toArray(children);\n const count = slides.length;\n const keys = slides.map((slide, slideIndex) =>\n isValidElement(slide) && slide.key !== null ? slide.key : slideIndex,\n );\n const [mergedIndex, setMergedIndex] = useControlledState(defaultIndex, {\n onChange: onIndexChange,\n value: index,\n });\n const current = Math.min(Math.max(mergedIndex, 0), Math.max(count - 1, 0));\n\n const [hovered, setHovered] = useState(false);\n const [height, setHeight] = useState<number>();\n const slidesRef = useRef<(HTMLDivElement | null)[]>([]);\n const swipeStartXRef = useRef<number | null>(null);\n\n const goTo = useEventCallback((target: number) => {\n if (count === 0) return;\n const next = loop\n ? ((target % count) + count) % count\n : Math.min(Math.max(target, 0), count - 1);\n if (next !== current) setMergedIndex(next);\n });\n const next = useEventCallback(() => goTo(current + 1));\n const prev = useEventCallback(() => goTo(current - 1));\n\n useImperativeHandle(ref, () => ({ goTo, next, prev }), [goTo, next, prev]);\n\n const interval = autoplay === true ? DEFAULT_INTERVAL : autoplay || 0;\n const paused = pauseOnHover && hovered;\n const atEnd = !loop && current >= count - 1;\n\n useEffect(() => {\n if (!interval || paused || count < 2 || atEnd) return;\n const timer = setTimeout(next, interval);\n return () => clearTimeout(timer);\n }, [interval, paused, count, atEnd, current, next]);\n\n useLayoutEffect(() => {\n const slide = slidesRef.current[current];\n if (!adaptiveHeight || !slide) return;\n setHeight(slide.offsetHeight);\n if (typeof ResizeObserver === 'undefined') return;\n const observer = new ResizeObserver(() => setHeight(slide.offsetHeight));\n observer.observe(slide);\n return () => observer.disconnect();\n }, [adaptiveHeight, current, count]);\n\n return (\n <div\n aria-roledescription=\"carousel\"\n className={styleProps(styles.root, className).className}\n role=\"region\"\n onPointerEnter={(event) => {\n onPointerEnter?.(event);\n setHovered(true);\n }}\n onPointerLeave={(event) => {\n onPointerLeave?.(event);\n setHovered(false);\n }}\n {...rest}\n >\n <div\n {...stylex.props(styles.viewport)}\n style={adaptiveHeight && height !== undefined ? { height } : undefined}\n onPointerCancel={() => {\n swipeStartXRef.current = null;\n }}\n onPointerDown={(event) => {\n if (event.pointerType !== 'mouse') swipeStartXRef.current = event.clientX;\n }}\n onPointerUp={(event) => {\n if (swipeStartXRef.current === null) return;\n const delta = event.clientX - swipeStartXRef.current;\n swipeStartXRef.current = null;\n if (Math.abs(delta) < SWIPE_THRESHOLD) return;\n if (delta < 0) next();\n else prev();\n }}\n >\n <div\n aria-live={interval && !paused ? 'off' : 'polite'}\n {...stylex.props(styles.track, adaptiveHeight && styles.trackAdaptive)}\n style={{ transform: `translateX(-${current * 100}%)` }}\n >\n {slides.map((slide, slideIndex) => {\n const active = slideIndex === current;\n return (\n <div\n aria-hidden={!active || undefined}\n aria-label={`${slideIndex + 1} of ${count}`}\n aria-roledescription=\"slide\"\n {...stylex.props(styles.slide)}\n inert={!active}\n key={keys[slideIndex]}\n role=\"group\"\n ref={(node) => {\n slidesRef.current[slideIndex] = node;\n }}\n >\n {slide}\n </div>\n );\n })}\n </div>\n {arrows && count > 1 && (\n <>\n <ActionIcon\n aria-label=\"Previous slide\"\n disabled={!loop && current === 0}\n icon={ChevronLeft}\n size={ARROW_SIZE}\n style={{ insetInlineStart: 8 }}\n xstyle={styles.arrow}\n onClick={prev}\n />\n <ActionIcon\n aria-label=\"Next slide\"\n disabled={atEnd}\n icon={ChevronRight}\n size={ARROW_SIZE}\n style={{ insetInlineEnd: 8 }}\n xstyle={styles.arrow}\n onClick={next}\n />\n </>\n )}\n </div>\n {dots && count > 1 && (\n <div {...stylex.props(styles.dots)}>\n {slides.map((_, dotIndex) => (\n <button\n aria-current={dotIndex === current || undefined}\n aria-label={`Go to slide ${dotIndex + 1}`}\n {...stylex.props(styles.dot)}\n key={keys[dotIndex]}\n type=\"button\"\n onClick={() => goTo(dotIndex)}\n />\n ))}\n </div>\n )}\n </div>\n );\n },\n);\n\nCarousel.displayName = 'Carousel';\n\nexport default Carousel;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Carousel.mjs","names":["ActionIcon"],"sources":["../../src/Carousel/Carousel.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport {\n Children,\n isValidElement,\n memo,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { ActionIconImpl as ActionIcon } from '@/ActionIcon/ActionIcon';\nimport { useControlledState } from '@/hooks/useControlledState';\nimport { useEventCallback } from '@/hooks/useEventCallback';\nimport { styleProps } from '@/styles/stylex/props';\n\nimport { styles } from './style';\nimport type { CarouselProps } from './type';\n\nconst DEFAULT_INTERVAL = 5000;\nconst SWIPE_THRESHOLD = 40;\nconst ARROW_SIZE = { blockSize: 28, borderRadius: '50%', size: 16 };\n\nconst Carousel = memo<CarouselProps>(\n ({\n adaptiveHeight = false,\n arrows = false,\n autoplay = false,\n children,\n className,\n defaultIndex = 0,\n dots = true,\n index,\n loop = true,\n onIndexChange,\n onPointerEnter,\n onPointerLeave,\n pauseOnHover = true,\n ref,\n ...rest\n }) => {\n const slides = Children.toArray(children);\n const count = slides.length;\n const keys = slides.map((slide, slideIndex) =>\n isValidElement(slide) && slide.key !== null ? slide.key : slideIndex,\n );\n const [mergedIndex, setMergedIndex] = useControlledState(defaultIndex, {\n onChange: onIndexChange,\n value: index,\n });\n const current = Math.min(Math.max(mergedIndex, 0), Math.max(count - 1, 0));\n\n const [hovered, setHovered] = useState(false);\n const [height, setHeight] = useState<number>();\n const slidesRef = useRef<(HTMLDivElement | null)[]>([]);\n const swipeStartXRef = useRef<number | null>(null);\n\n const goTo = useEventCallback((target: number) => {\n if (count === 0) return;\n const next = loop\n ? ((target % count) + count) % count\n : Math.min(Math.max(target, 0), count - 1);\n if (next !== current) setMergedIndex(next);\n });\n const next = useEventCallback(() => goTo(current + 1));\n const prev = useEventCallback(() => goTo(current - 1));\n\n useImperativeHandle(ref, () => ({ goTo, next, prev }), [goTo, next, prev]);\n\n const interval = autoplay === true ? DEFAULT_INTERVAL : autoplay || 0;\n const paused = pauseOnHover && hovered;\n const atEnd = !loop && current >= count - 1;\n\n useEffect(() => {\n if (!interval || paused || count < 2 || atEnd) return;\n const timer = setTimeout(next, interval);\n return () => clearTimeout(timer);\n }, [interval, paused, count, atEnd, current, next]);\n\n useLayoutEffect(() => {\n const slide = slidesRef.current[current];\n if (!adaptiveHeight || !slide) return;\n setHeight(slide.offsetHeight);\n if (typeof ResizeObserver === 'undefined') return;\n const observer = new ResizeObserver(() => setHeight(slide.offsetHeight));\n observer.observe(slide);\n return () => observer.disconnect();\n }, [adaptiveHeight, current, count]);\n\n return (\n <div\n aria-roledescription=\"carousel\"\n className={styleProps(styles.root, className).className}\n role=\"region\"\n onPointerEnter={(event) => {\n onPointerEnter?.(event);\n setHovered(true);\n }}\n onPointerLeave={(event) => {\n onPointerLeave?.(event);\n setHovered(false);\n }}\n {...rest}\n >\n <div\n {...stylex.props(styles.viewport)}\n style={adaptiveHeight && height !== undefined ? { height } : undefined}\n onPointerCancel={() => {\n swipeStartXRef.current = null;\n }}\n onPointerDown={(event) => {\n if (event.pointerType !== 'mouse') swipeStartXRef.current = event.clientX;\n }}\n onPointerUp={(event) => {\n if (swipeStartXRef.current === null) return;\n const delta = event.clientX - swipeStartXRef.current;\n swipeStartXRef.current = null;\n if (Math.abs(delta) < SWIPE_THRESHOLD) return;\n if (delta < 0) next();\n else prev();\n }}\n >\n <div\n aria-live={interval && !paused ? 'off' : 'polite'}\n {...stylex.props(styles.track, adaptiveHeight && styles.trackAdaptive)}\n style={{ transform: `translateX(-${current * 100}%)` }}\n >\n {slides.map((slide, slideIndex) => {\n const active = slideIndex === current;\n return (\n <div\n aria-hidden={!active || undefined}\n aria-label={`${slideIndex + 1} of ${count}`}\n aria-roledescription=\"slide\"\n {...stylex.props(styles.slide)}\n inert={!active}\n key={keys[slideIndex]}\n role=\"group\"\n ref={(node) => {\n slidesRef.current[slideIndex] = node;\n }}\n >\n {slide}\n </div>\n );\n })}\n </div>\n {arrows && count > 1 && (\n <>\n <ActionIcon\n aria-label=\"Previous slide\"\n disabled={!loop && current === 0}\n icon={ChevronLeft}\n size={ARROW_SIZE}\n style={{ insetInlineStart: 8 }}\n xstyle={styles.arrow}\n onClick={prev}\n />\n <ActionIcon\n aria-label=\"Next slide\"\n disabled={atEnd}\n icon={ChevronRight}\n size={ARROW_SIZE}\n style={{ insetInlineEnd: 8 }}\n xstyle={styles.arrow}\n onClick={next}\n />\n </>\n )}\n </div>\n {dots && count > 1 && (\n <div {...stylex.props(styles.dots)}>\n {slides.map((_, dotIndex) => (\n <button\n aria-current={dotIndex === current || undefined}\n aria-label={`Go to slide ${dotIndex + 1}`}\n {...stylex.props(styles.dot)}\n key={keys[dotIndex]}\n type=\"button\"\n onClick={() => goTo(dotIndex)}\n />\n ))}\n </div>\n )}\n </div>\n );\n },\n);\n\nCarousel.displayName = 'Carousel';\n\nexport default Carousel;\n"],"mappings":"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"}
@@ -5,7 +5,7 @@ import Text from "../Text/Text.mjs";
5
5
  import { styles } from "./style.mjs";
6
6
  import { memo } from "react";
7
7
  import { jsx, jsxs } from "react/jsx-runtime";
8
- import clsx from "clsx";
8
+ import clsx$1 from "clsx";
9
9
  import * as stylex from "@stylexjs/stylex";
10
10
  import { CheckIcon, Minus } from "lucide-react";
11
11
  import { Checkbox } from "@base-ui/react/checkbox";
@@ -24,7 +24,7 @@ const Checkbox$1 = memo(({ size = 16, shape = "square", backgroundColor, childre
24
24
  indeterminate,
25
25
  onCheckedChange: onChange,
26
26
  ...rest,
27
- ...styleProps([styles.root, focusRing.info], clsx(children ? classNames?.checkbox : className, classNames?.checkbox), boxStyle),
27
+ ...styleProps([styles.root, focusRing.info], clsx$1(children ? classNames?.checkbox : className, classNames?.checkbox), boxStyle),
28
28
  children: /* @__PURE__ */ jsx(Checkbox.Indicator, {
29
29
  ...stylex.props(styles.indicator),
30
30
  children: indeterminate ? /* @__PURE__ */ jsx(Minus, {
@@ -40,7 +40,7 @@ const Checkbox$1 = memo(({ size = 16, shape = "square", backgroundColor, childre
40
40
  });
41
41
  if (!children) return box;
42
42
  return /* @__PURE__ */ jsxs("label", {
43
- ...styleProps(styles.label, clsx(className, classNames?.wrapper), {
43
+ ...styleProps(styles.label, clsx$1(className, classNames?.wrapper), {
44
44
  gap: Math.floor(size / 2),
45
45
  ...style,
46
46
  ...customStyles?.wrapper
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.mjs","names":["Checkbox","BaseCheckbox"],"sources":["../../src/Checkbox/Checkbox.tsx"],"sourcesContent":["'use client';\n\nimport { Checkbox as BaseCheckbox } from '@base-ui/react/checkbox';\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { CheckIcon, Minus } from 'lucide-react';\nimport { type CSSProperties, memo } from 'react';\n\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\nimport Text from '@/Text';\n\nimport { styles } from './style';\nimport type { CheckboxProps } from './type';\n\nconst Checkbox = memo<CheckboxProps>(\n ({\n size = 16,\n shape = 'square',\n backgroundColor,\n children,\n className,\n classNames,\n styles: customStyles,\n style,\n textProps,\n onChange,\n disabled,\n indeterminate,\n ...rest\n }) => {\n const boxStyle: CSSProperties = {\n borderRadius: shape === 'square' ? `max(4px, ${Math.round(size / 4)}px)` : '50%',\n height: size,\n width: size,\n ...(backgroundColor ? { '--lobe-checkbox-bg': backgroundColor } : {}),\n ...(children ? {} : style),\n ...customStyles?.checkbox,\n };\n\n const box = (\n <BaseCheckbox.Root\n disabled={disabled}\n indeterminate={indeterminate}\n onCheckedChange={onChange}\n {...rest}\n {...styleProps(\n [styles.root, focusRing.info],\n clsx(children ? classNames?.checkbox : className, classNames?.checkbox),\n boxStyle,\n )}\n >\n <BaseCheckbox.Indicator {...stylex.props(styles.indicator)}>\n {indeterminate ? (\n <Minus\n size={size}\n strokeWidth={3}\n style={{ transform: `scale(${shape === 'square' ? 0.75 : 0.66})` }}\n />\n ) : (\n <CheckIcon\n size={size}\n strokeWidth={3}\n style={{ transform: `scale(${shape === 'square' ? 0.75 : 0.66})` }}\n />\n )}\n </BaseCheckbox.Indicator>\n </BaseCheckbox.Root>\n );\n\n if (!children) return box;\n\n return (\n <label\n {...styleProps(styles.label, clsx(className, classNames?.wrapper), {\n gap: Math.floor(size / 2),\n ...style,\n ...customStyles?.wrapper,\n })}\n >\n {box}\n <Text\n as={'span'}\n className={classNames?.text}\n style={customStyles?.text}\n {...textProps}\n type={disabled ? 'secondary' : textProps?.type}\n >\n {children}\n </Text>\n </label>\n );\n },\n);\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Object.assign(Checkbox, { formBinding: { valueProp: 'checked' } as const });\n"],"mappings":";;;;;;;;;;;;AAYA,MAAMA,aAAW,MAAqB,EACpC,OAAO,IACP,QAAQ,UACR,iBACA,UACA,WACA,YACA,QAAQ,cACR,OACA,WACA,UACA,UACA,eACA,GAAG,WACC;CACJ,MAAM,WAA0B;EAC9B,cAAc,UAAU,WAAW,YAAY,KAAK,MAAM,OAAO,CAAC,EAAE,OAAO;EAC3E,QAAQ;EACR,OAAO;EACP,GAAI,kBAAkB,EACpB,sBAAsB,gBACxB,IAAI,CAAC;EACL,GAAI,WAAW,CAAC,IAAI;EACpB,GAAG,cAAc;CACnB;CACA,MAAM,MAAM,oBAACC,SAAa,MAAd;EAA6B;EAAyB;EAAe,iBAAiB;EAAU,GAAI;EAAM,GAAI,WAAW,CAAC,OAAO,MAAM,UAAU,IAAI,GAAG,KAAK,WAAW,YAAY,WAAW,WAAW,YAAY,QAAQ,GAAG,QAAQ;EAC/O,UAAA,oBAACA,SAAa,WAAd;GAAwB,GAAI,OAAO,MAAM,OAAO,SAAS;GACtD,UAAA,gBAAgB,oBAAC,OAAD;IAAa;IAAM,aAAa;IAAG,OAAO,EAC7D,WAAW,SAAS,UAAU,WAAW,MAAO,IAAK,GACvD;GAAI,CAAA,IAAI,oBAAC,WAAD;IAAiB;IAAM,aAAa;IAAG,OAAO,EACpD,WAAW,SAAS,UAAU,WAAW,MAAO,IAAK,GACvD;GAAI,CAAA;EACsB,CAAA;CACP,CAAA;CACvB,IAAI,CAAC,UAAU,OAAO;CACtB,OAAO,qBAAC,SAAD;EAAO,GAAI,WAAW,OAAO,OAAO,KAAK,WAAW,YAAY,OAAO,GAAG;GAC/E,KAAK,KAAK,MAAM,OAAO,CAAC;GACxB,GAAG;GACH,GAAG,cAAc;EACnB,CAAC;EAJM,UAAA,CAKA,KACD,oBAAC,MAAD;GAAM,IAAI;GAAQ,WAAW,YAAY;GAAM,OAAO,cAAc;GAAM,GAAI;GAAW,MAAM,WAAW,cAAc,WAAW;GAChI;EACG,CAAA,CACD;;AACb,CAAC;AACD,WAAS,cAAc;AACvB,IAAA,mBAAe,OAAO,OAAOD,YAAU,EACrC,aAAa,EACX,WAAW,UACb,EACF,CAAC"}
1
+ {"version":3,"file":"Checkbox.mjs","names":["Checkbox","BaseCheckbox","clsx"],"sources":["../../src/Checkbox/Checkbox.tsx"],"sourcesContent":["'use client';\n\nimport { Checkbox as BaseCheckbox } from '@base-ui/react/checkbox';\nimport * as stylex from '@stylexjs/stylex';\nimport clsx from 'clsx';\nimport { CheckIcon, Minus } from 'lucide-react';\nimport { type CSSProperties, memo } from 'react';\n\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\nimport Text from '@/Text';\n\nimport { styles } from './style';\nimport type { CheckboxProps } from './type';\n\nconst Checkbox = memo<CheckboxProps>(\n ({\n size = 16,\n shape = 'square',\n backgroundColor,\n children,\n className,\n classNames,\n styles: customStyles,\n style,\n textProps,\n onChange,\n disabled,\n indeterminate,\n ...rest\n }) => {\n const boxStyle: CSSProperties = {\n borderRadius: shape === 'square' ? `max(4px, ${Math.round(size / 4)}px)` : '50%',\n height: size,\n width: size,\n ...(backgroundColor ? { '--lobe-checkbox-bg': backgroundColor } : {}),\n ...(children ? {} : style),\n ...customStyles?.checkbox,\n };\n\n const box = (\n <BaseCheckbox.Root\n disabled={disabled}\n indeterminate={indeterminate}\n onCheckedChange={onChange}\n {...rest}\n {...styleProps(\n [styles.root, focusRing.info],\n clsx(children ? classNames?.checkbox : className, classNames?.checkbox),\n boxStyle,\n )}\n >\n <BaseCheckbox.Indicator {...stylex.props(styles.indicator)}>\n {indeterminate ? (\n <Minus\n size={size}\n strokeWidth={3}\n style={{ transform: `scale(${shape === 'square' ? 0.75 : 0.66})` }}\n />\n ) : (\n <CheckIcon\n size={size}\n strokeWidth={3}\n style={{ transform: `scale(${shape === 'square' ? 0.75 : 0.66})` }}\n />\n )}\n </BaseCheckbox.Indicator>\n </BaseCheckbox.Root>\n );\n\n if (!children) return box;\n\n return (\n <label\n {...styleProps(styles.label, clsx(className, classNames?.wrapper), {\n gap: Math.floor(size / 2),\n ...style,\n ...customStyles?.wrapper,\n })}\n >\n {box}\n <Text\n as={'span'}\n className={classNames?.text}\n style={customStyles?.text}\n {...textProps}\n type={disabled ? 'secondary' : textProps?.type}\n >\n {children}\n </Text>\n </label>\n );\n },\n);\n\nCheckbox.displayName = 'Checkbox';\n\nexport default Object.assign(Checkbox, { formBinding: { valueProp: 'checked' } as const });\n"],"mappings":";;;;;;;;;;;;AAYA,MAAMA,aAAW,MAAqB,EACpC,OAAO,IACP,QAAQ,UACR,iBACA,UACA,WACA,YACA,QAAQ,cACR,OACA,WACA,UACA,UACA,eACA,GAAG,WACC;CACJ,MAAM,WAA0B;EAC9B,cAAc,UAAU,WAAW,YAAY,KAAK,MAAM,OAAO,CAAC,EAAE,OAAO;EAC3E,QAAQ;EACR,OAAO;EACP,GAAI,kBAAkB,EACpB,sBAAsB,gBACxB,IAAI,CAAC;EACL,GAAI,WAAW,CAAC,IAAI;EACpB,GAAG,cAAc;CACnB;CACA,MAAM,MAAM,oBAACC,SAAa,MAAd;EAA6B;EAAyB;EAAe,iBAAiB;EAAU,GAAI;EAAM,GAAI,WAAW,CAAC,OAAO,MAAM,UAAU,IAAI,GAAGC,OAAK,WAAW,YAAY,WAAW,WAAW,YAAY,QAAQ,GAAG,QAAQ;EAC/O,UAAA,oBAACD,SAAa,WAAd;GAAwB,GAAI,OAAO,MAAM,OAAO,SAAS;GACtD,UAAA,gBAAgB,oBAAC,OAAD;IAAa;IAAM,aAAa;IAAG,OAAO,EAC7D,WAAW,SAAS,UAAU,WAAW,MAAO,IAAK,GACvD;GAAI,CAAA,IAAI,oBAAC,WAAD;IAAiB;IAAM,aAAa;IAAG,OAAO,EACpD,WAAW,SAAS,UAAU,WAAW,MAAO,IAAK,GACvD;GAAI,CAAA;EACsB,CAAA;CACP,CAAA;CACvB,IAAI,CAAC,UAAU,OAAO;CACtB,OAAO,qBAAC,SAAD;EAAO,GAAI,WAAW,OAAO,OAAOC,OAAK,WAAW,YAAY,OAAO,GAAG;GAC/E,KAAK,KAAK,MAAM,OAAO,CAAC;GACxB,GAAG;GACH,GAAG,cAAc;EACnB,CAAC;EAJM,UAAA,CAKA,KACD,oBAAC,MAAD;GAAM,IAAI;GAAQ,WAAW,YAAY;GAAM,OAAO,cAAc;GAAM,GAAI;GAAW,MAAM,WAAW,cAAc,WAAW;GAChI;EACG,CAAA,CACD;;AACb,CAAC;AACD,WAAS,cAAc;AACvB,IAAA,mBAAe,OAAO,OAAOF,YAAU,EACrC,aAAa,EACX,WAAW,UACb,EACF,CAAC"}
@@ -49,4 +49,5 @@ export interface CheckboxGroupProps extends BaseCheckboxGroupProps, Pick<Flexbox
49
49
  textProps?: CheckboxProps['textProps'];
50
50
  }
51
51
  //#endregion
52
+ export {};
52
53
  //# sourceMappingURL=type.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodeDiff.mjs","names":[],"sources":["../../src/CodeDiff/CodeDiff.tsx"],"sourcesContent":["'use client';\n\nimport type { FileDiffOptions } from '@pierre/diffs';\nimport { MultiFileDiff } from '@pierre/diffs/react';\nimport { memo, useMemo } from 'react';\n\nimport { useThemeMode } from '@/styles/theme/scope';\n\nimport { DiffPanel } from './DiffPanel';\nimport { getLobeDiffOptions, registerLobeDiffThemes } from './theme';\nimport type { CodeDiffProps } from './type';\n\nregisterLobeDiffThemes();\n\nconst countContentChanges = (\n oldContent: string,\n newContent: string,\n): { additions: number; deletions: number } => {\n const oldLines = oldContent.split('\\n');\n const newLines = newContent.split('\\n');\n\n const oldSet = new Set(oldLines);\n const newSet = new Set(newLines);\n\n let deletions = 0;\n let additions = 0;\n\n for (const line of oldLines) {\n if (!newSet.has(line)) {\n deletions++;\n }\n }\n\n for (const line of newLines) {\n if (!oldSet.has(line)) {\n additions++;\n }\n }\n\n return { additions, deletions };\n};\n\nexport const CodeDiff = memo<CodeDiffProps>(\n ({\n oldContent,\n newContent,\n language,\n fileName,\n viewMode = 'split',\n showHeader = true,\n defaultExpand = true,\n fullFeatured = true,\n variant = 'filled',\n className,\n classNames,\n styles: customStyles,\n actionsRender,\n diffOptions,\n ...rest\n }) => {\n const { isDarkMode } = useThemeMode();\n\n const displayName = useMemo(() => {\n if (fileName) return fileName;\n if (language) return language;\n return 'diff';\n }, [fileName, language]);\n\n const { additions, deletions } = useMemo(\n () => countContentChanges(oldContent, newContent),\n [oldContent, newContent],\n );\n\n const actions = useMemo(() => {\n if (!actionsRender) return null;\n return actionsRender({\n newContent,\n oldContent,\n originalNode: null,\n });\n }, [actionsRender, oldContent, newContent]);\n\n const oldFile = useMemo(\n () => ({\n contents: oldContent,\n lang: language as any,\n name: fileName || 'file',\n }),\n [oldContent, language, fileName],\n );\n\n const newFile = useMemo(\n () => ({\n contents: newContent,\n lang: language as any,\n name: fileName || 'file',\n }),\n [newContent, language, fileName],\n );\n\n const options = useMemo<FileDiffOptions<string>>(\n () => getLobeDiffOptions({ diffOptions, isDarkMode, viewMode }),\n [isDarkMode, viewMode, diffOptions],\n );\n\n return (\n <DiffPanel\n actions={actions}\n additions={additions}\n body={<MultiFileDiff newFile={newFile} oldFile={oldFile} options={options} />}\n className={className}\n classNames={classNames}\n dataCodeType=\"code-diff\"\n defaultExpand={defaultExpand}\n deletions={deletions}\n displayName={displayName}\n fileName={fileName}\n fullFeatured={fullFeatured}\n showHeader={showHeader}\n styles={customStyles}\n variant={variant}\n {...rest}\n />\n );\n },\n);\n\nCodeDiff.displayName = 'CodeDiff';\n\nexport default CodeDiff;\n"],"mappings":";;;;;;;;AAYA,uBAAuB;AAEvB,MAAM,uBACJ,YACA,eAC6C;CAC7C,MAAM,WAAW,WAAW,MAAM,IAAI;CACtC,MAAM,WAAW,WAAW,MAAM,IAAI;CAEtC,MAAM,SAAS,IAAI,IAAI,QAAQ;CAC/B,MAAM,SAAS,IAAI,IAAI,QAAQ;CAE/B,IAAI,YAAY;CAChB,IAAI,YAAY;CAEhB,KAAK,MAAM,QAAQ,UACjB,IAAI,CAAC,OAAO,IAAI,IAAI,GAClB;CAIJ,KAAK,MAAM,QAAQ,UACjB,IAAI,CAAC,OAAO,IAAI,IAAI,GAClB;CAIJ,OAAO;EAAE;EAAW;CAAU;AAChC;AAEA,MAAa,WAAW,MACrB,EACC,YACA,YACA,UACA,UACA,WAAW,SACX,aAAa,MACb,gBAAgB,MAChB,eAAe,MACf,UAAU,UACV,WACA,YACA,QAAQ,cACR,eACA,aACA,GAAG,WACC;CACJ,MAAM,EAAE,eAAe,aAAa;CAEpC,MAAM,cAAc,cAAc;EAChC,IAAI,UAAU,OAAO;EACrB,IAAI,UAAU,OAAO;EACrB,OAAO;CACT,GAAG,CAAC,UAAU,QAAQ,CAAC;CAEvB,MAAM,EAAE,WAAW,cAAc,cACzB,oBAAoB,YAAY,UAAU,GAChD,CAAC,YAAY,UAAU,CACzB;CAEA,MAAM,UAAU,cAAc;EAC5B,IAAI,CAAC,eAAe,OAAO;EAC3B,OAAO,cAAc;GACnB;GACA;GACA,cAAc;EAChB,CAAC;CACH,GAAG;EAAC;EAAe;EAAY;CAAU,CAAC;CAE1C,MAAM,UAAU,eACP;EACL,UAAU;EACV,MAAM;EACN,MAAM,YAAY;CACpB,IACA;EAAC;EAAY;EAAU;CAAQ,CACjC;CAEA,MAAM,UAAU,eACP;EACL,UAAU;EACV,MAAM;EACN,MAAM,YAAY;CACpB,IACA;EAAC;EAAY;EAAU;CAAQ,CACjC;CAEA,MAAM,UAAU,cACR,mBAAmB;EAAE;EAAa;EAAY;CAAS,CAAC,GAC9D;EAAC;EAAY;EAAU;CAAW,CACpC;CAEA,OACE,oBAAC,WAAD;EACW;EACE;EACX,MAAM,oBAAC,eAAD;GAAwB;GAAkB;GAAkB;EAAU,CAAA;EACjE;EACC;EACZ,cAAa;EACE;EACJ;EACE;EACH;EACI;EACF;EACZ,QAAQ;EACC;EACT,GAAI;CACL,CAAA;AAEL,CACF;AAEA,SAAS,cAAc"}
1
+ {"version":3,"file":"CodeDiff.mjs","names":[],"sources":["../../src/CodeDiff/CodeDiff.tsx"],"sourcesContent":["'use client';\n\nimport type { FileDiffOptions } from '@pierre/diffs';\nimport { MultiFileDiff } from '@pierre/diffs/react';\nimport { memo, useMemo } from 'react';\n\nimport { useThemeMode } from '@/styles/theme/scope';\n\nimport { DiffPanel } from './DiffPanel';\nimport { getLobeDiffOptions, registerLobeDiffThemes } from './theme';\nimport type { CodeDiffProps } from './type';\n\nregisterLobeDiffThemes();\n\nconst countContentChanges = (\n oldContent: string,\n newContent: string,\n): { additions: number; deletions: number } => {\n const oldLines = oldContent.split('\\n');\n const newLines = newContent.split('\\n');\n\n const oldSet = new Set(oldLines);\n const newSet = new Set(newLines);\n\n let deletions = 0;\n let additions = 0;\n\n for (const line of oldLines) {\n if (!newSet.has(line)) {\n deletions++;\n }\n }\n\n for (const line of newLines) {\n if (!oldSet.has(line)) {\n additions++;\n }\n }\n\n return { additions, deletions };\n};\n\nexport const CodeDiff = memo<CodeDiffProps>(\n ({\n oldContent,\n newContent,\n language,\n fileName,\n viewMode = 'split',\n showHeader = true,\n defaultExpand = true,\n fullFeatured = true,\n variant = 'filled',\n className,\n classNames,\n styles: customStyles,\n actionsRender,\n diffOptions,\n ...rest\n }) => {\n const { isDarkMode } = useThemeMode();\n\n const displayName = useMemo(() => {\n if (fileName) return fileName;\n if (language) return language;\n return 'diff';\n }, [fileName, language]);\n\n const { additions, deletions } = useMemo(\n () => countContentChanges(oldContent, newContent),\n [oldContent, newContent],\n );\n\n const actions = useMemo(() => {\n if (!actionsRender) return null;\n return actionsRender({\n newContent,\n oldContent,\n originalNode: null,\n });\n }, [actionsRender, oldContent, newContent]);\n\n const oldFile = useMemo(\n () => ({\n contents: oldContent,\n lang: language as any,\n name: fileName || 'file',\n }),\n [oldContent, language, fileName],\n );\n\n const newFile = useMemo(\n () => ({\n contents: newContent,\n lang: language as any,\n name: fileName || 'file',\n }),\n [newContent, language, fileName],\n );\n\n const options = useMemo<FileDiffOptions<string, undefined>>(\n () => getLobeDiffOptions({ diffOptions, isDarkMode, viewMode }),\n [isDarkMode, viewMode, diffOptions],\n );\n\n return (\n <DiffPanel\n actions={actions}\n additions={additions}\n body={<MultiFileDiff newFile={newFile} oldFile={oldFile} options={options} />}\n className={className}\n classNames={classNames}\n dataCodeType=\"code-diff\"\n defaultExpand={defaultExpand}\n deletions={deletions}\n displayName={displayName}\n fileName={fileName}\n fullFeatured={fullFeatured}\n showHeader={showHeader}\n styles={customStyles}\n variant={variant}\n {...rest}\n />\n );\n },\n);\n\nCodeDiff.displayName = 'CodeDiff';\n\nexport default CodeDiff;\n"],"mappings":";;;;;;;;AAYA,uBAAuB;AAEvB,MAAM,uBACJ,YACA,eAC6C;CAC7C,MAAM,WAAW,WAAW,MAAM,IAAI;CACtC,MAAM,WAAW,WAAW,MAAM,IAAI;CAEtC,MAAM,SAAS,IAAI,IAAI,QAAQ;CAC/B,MAAM,SAAS,IAAI,IAAI,QAAQ;CAE/B,IAAI,YAAY;CAChB,IAAI,YAAY;CAEhB,KAAK,MAAM,QAAQ,UACjB,IAAI,CAAC,OAAO,IAAI,IAAI,GAClB;CAIJ,KAAK,MAAM,QAAQ,UACjB,IAAI,CAAC,OAAO,IAAI,IAAI,GAClB;CAIJ,OAAO;EAAE;EAAW;CAAU;AAChC;AAEA,MAAa,WAAW,MACrB,EACC,YACA,YACA,UACA,UACA,WAAW,SACX,aAAa,MACb,gBAAgB,MAChB,eAAe,MACf,UAAU,UACV,WACA,YACA,QAAQ,cACR,eACA,aACA,GAAG,WACC;CACJ,MAAM,EAAE,eAAe,aAAa;CAEpC,MAAM,cAAc,cAAc;EAChC,IAAI,UAAU,OAAO;EACrB,IAAI,UAAU,OAAO;EACrB,OAAO;CACT,GAAG,CAAC,UAAU,QAAQ,CAAC;CAEvB,MAAM,EAAE,WAAW,cAAc,cACzB,oBAAoB,YAAY,UAAU,GAChD,CAAC,YAAY,UAAU,CACzB;CAEA,MAAM,UAAU,cAAc;EAC5B,IAAI,CAAC,eAAe,OAAO;EAC3B,OAAO,cAAc;GACnB;GACA;GACA,cAAc;EAChB,CAAC;CACH,GAAG;EAAC;EAAe;EAAY;CAAU,CAAC;CAE1C,MAAM,UAAU,eACP;EACL,UAAU;EACV,MAAM;EACN,MAAM,YAAY;CACpB,IACA;EAAC;EAAY;EAAU;CAAQ,CACjC;CAEA,MAAM,UAAU,eACP;EACL,UAAU;EACV,MAAM;EACN,MAAM,YAAY;CACpB,IACA;EAAC;EAAY;EAAU;CAAQ,CACjC;CAEA,MAAM,UAAU,cACR,mBAAmB;EAAE;EAAa;EAAY;CAAS,CAAC,GAC9D;EAAC;EAAY;EAAU;CAAW,CACpC;CAEA,OACE,oBAAC,WAAD;EACW;EACE;EACX,MAAM,oBAAC,eAAD;GAAwB;GAAkB;GAAkB;EAAU,CAAA;EACjE;EACC;EACZ,cAAa;EACE;EACJ;EACE;EACH;EACI;EACF;EACZ,QAAQ;EACC;EACT,GAAI;CACL,CAAA;AAEL,CACF;AAEA,SAAS,cAAc"}