@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,232 +1,95 @@
1
1
  "use client";
2
- import { styleProps } from "../styles/stylex/props.mjs";
3
- import { focusRing } from "../styles/stylex/focusRing.mjs";
4
- import Icon from "../Icon/Icon.mjs";
5
- import { useThemeMode } from "../styles/theme/scope.mjs";
2
+ import { useControlledState } from "../hooks/useControlledState.mjs";
6
3
  import { useTranslation } from "../i18n/useTranslation.mjs";
7
- import { inputRootStyles } from "../Input/style.mjs";
8
- import Input_default from "../Input/Input.mjs";
9
- import InputNumber_default from "../Input/InputNumber.mjs";
10
4
  import colorPicker_default from "../i18n/resources/en/colorPicker.mjs";
11
5
  import { panelStyles } from "../internal/panelStyles.mjs";
12
6
  import { PopoverPopup, PopoverPortal, PopoverPositioner, PopoverRoot, PopoverTriggerElement } from "../Popover/atoms.mjs";
13
- import Slider from "../Slider/Slider.mjs";
14
- import { formatColor, normalizeHexInput, parseColor } from "./color.mjs";
15
- import { styles } from "./style.mjs";
16
- import SaturationArea from "./SaturationArea.mjs";
17
- import { createElement, memo, useEffect, useRef, useState } from "react";
7
+ import { formatColor, parseColor } from "./color.mjs";
8
+ import { pushRecentColor } from "./recent.mjs";
9
+ import ColorPanel from "./ColorPanel.mjs";
10
+ import ColorTrigger from "./Trigger.mjs";
11
+ import { memo, useEffect, useRef, useState } from "react";
18
12
  import { jsx, jsxs } from "react/jsx-runtime";
19
- import * as stylex from "@stylexjs/stylex";
20
- import { Pipette } from "lucide-react";
21
- import useControlledState from "use-merge-value";
22
13
  //#region src/ColorPicker/ColorPicker.tsx
23
14
  const DEFAULT_COLOR = "#000000";
24
- const hasEyeDropper = () => typeof window !== "undefined" && "EyeDropper" in window;
25
- const ColorPicker = memo(({ alpha = false, children, className, defaultValue = DEFAULT_COLOR, disabled, onChange, onChangeComplete, presets, showText, size = "middle", style, value }) => {
15
+ const ColorPicker = memo(({ alpha = false, children, className, defaultFormat = "hex", defaultValue = DEFAULT_COLOR, disabled, onChange, onChangeComplete, presets, recent = true, showText, size = "middle", style, trigger = showText ? "field" : "swatch", value }) => {
26
16
  const { t } = useTranslation(colorPicker_default);
27
- const { isDarkMode } = useThemeMode();
28
17
  const [hex, setHex] = useControlledState(defaultValue, {
29
18
  defaultValue,
30
19
  onChange,
31
20
  value
32
21
  });
33
22
  const [hsva, setHsva] = useState(() => parseColor(hex));
34
- const [draft, setDraft] = useState(hex.slice(1).toUpperCase());
23
+ const [format, setFormat] = useState(defaultFormat);
24
+ const [original, setOriginal] = useState(hex);
35
25
  const popupRef = useRef(null);
36
26
  useEffect(() => {
27
+ if (!hex) return;
37
28
  setHsva((current) => formatColor(current, alpha) === hex.toLowerCase() ? current : parseColor(hex, current.h));
38
- setDraft(hex.slice(1).toUpperCase());
39
29
  }, [hex, alpha]);
40
30
  const update = (next) => {
41
31
  setHsva(next);
42
32
  setHex(formatColor(next, alpha));
43
33
  };
44
- const commit = (next) => onChangeComplete?.(formatColor(next, alpha));
34
+ const commit = (next) => {
35
+ const nextHex = formatColor(next, alpha);
36
+ if (recent) pushRecentColor(nextHex);
37
+ onChangeComplete?.(nextHex);
38
+ };
45
39
  const apply = (next) => {
46
40
  update(next);
47
41
  commit(next);
48
42
  };
49
- const commitDraft = () => {
50
- const normalized = normalizeHexInput(draft);
51
- if (!normalized) return setDraft(hex.slice(1).toUpperCase());
52
- apply(parseColor(normalized, hsva.h));
53
- };
54
- const swatch = (dimension) => /* @__PURE__ */ jsx("span", {
55
- ...stylex.props(styles.swatch),
56
- style: {
57
- height: dimension,
58
- width: dimension
43
+ return /* @__PURE__ */ jsxs(PopoverRoot, {
44
+ onOpenChange: (open) => {
45
+ if (open) setOriginal(hex);
59
46
  },
60
- children: /* @__PURE__ */ jsx("span", {
61
- ...stylex.props(styles.swatchFill),
62
- style: { background: hex }
63
- })
64
- });
65
- const trigger = children ?? (showText ? /* @__PURE__ */ jsxs("button", {
66
- "aria-label": t("colorPicker.trigger"),
67
- disabled,
68
- type: "button",
69
- ...styleProps([...inputRootStyles({
70
- size,
71
- variant: isDarkMode ? "filled" : "outlined"
72
- }), styles.textTrigger], className, {
73
- cursor: "pointer",
74
- ...style
75
- }),
76
- children: [swatch(18), /* @__PURE__ */ jsx("span", {
77
- style: { fontFamily: "var(--lobe-font-family-code, monospace)" },
78
- children: hex.toUpperCase()
79
- })]
80
- }) : /* @__PURE__ */ jsx("button", {
81
- "aria-label": t("colorPicker.trigger"),
82
- disabled,
83
- type: "button",
84
- ...styleProps([focusRing.info, styles.swatchButton], className, style),
85
- children: swatch(24)
86
- }));
87
- return /* @__PURE__ */ jsxs(PopoverRoot, { children: [/* @__PURE__ */ jsx(PopoverTriggerElement, { children: trigger }), /* @__PURE__ */ jsx(PopoverPortal, { children: /* @__PURE__ */ jsx(PopoverPositioner, {
88
- placement: "bottomLeft",
89
- children: /* @__PURE__ */ jsx(PopoverPopup, {
90
- ref: popupRef,
91
- xstyle: panelStyles.popup,
92
- initialFocus: () => popupRef.current?.querySelector("[role=\"slider\"]") ?? true,
93
- children: /* @__PURE__ */ jsxs("div", {
94
- ...stylex.props(styles.panel),
95
- children: [
96
- /* @__PURE__ */ jsxs("div", {
97
- ...stylex.props(styles.summary),
98
- children: [
99
- swatch(40),
100
- /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
101
- ...stylex.props(styles.value),
102
- children: hex.toUpperCase()
103
- }), /* @__PURE__ */ jsx("div", {
104
- ...stylex.props(panelStyles.label),
105
- children: alpha ? `HEX · ${Math.round(hsva.a * 100)}%` : "HEX"
106
- })] }),
107
- hasEyeDropper() && /* @__PURE__ */ jsx("button", {
108
- "aria-label": t("colorPicker.eyeDropper"),
109
- ...stylex.props(panelStyles.nav, styles.eyeDropper),
110
- type: "button",
111
- onClick: async () => {
112
- const result = await new window.EyeDropper().open().catch(() => null);
113
- if (result) apply({
114
- ...parseColor(result.sRGBHex, hsva.h),
115
- a: hsva.a
116
- });
117
- },
118
- children: /* @__PURE__ */ jsx(Icon, {
119
- icon: Pipette,
120
- size: 14
121
- })
122
- })
123
- ]
124
- }),
125
- /* @__PURE__ */ jsx(SaturationArea, {
126
- hue: hsva.h,
127
- label: t("colorPicker.saturation"),
128
- saturation: hsva.s,
129
- value: hsva.v,
130
- onChange: (s, v) => update({
131
- ...hsva,
132
- s,
133
- v
134
- }),
135
- onChangeComplete: (s, v) => commit({
136
- ...hsva,
137
- s,
138
- v
139
- })
140
- }),
141
- /* @__PURE__ */ jsx(Slider, {
142
- "aria-label": t("colorPicker.hue"),
143
- max: 360,
144
- min: 0,
145
- value: hsva.h,
146
- classNames: {
147
- indicator: stylex.props(styles.hidden).className,
148
- thumb: stylex.props(styles.sliderThumb).className,
149
- track: stylex.props(styles.hueTrack).className
150
- },
151
- onChange: (h) => update({
152
- ...hsva,
153
- h
154
- }),
155
- onChangeComplete: (h) => commit({
156
- ...hsva,
157
- h
158
- })
159
- }),
160
- alpha && /* @__PURE__ */ jsx(Slider, {
161
- "aria-label": t("colorPicker.alpha"),
162
- max: 100,
163
- min: 0,
164
- value: Math.round(hsva.a * 100),
165
- classNames: {
166
- indicator: stylex.props(styles.hidden).className,
167
- thumb: stylex.props(styles.sliderThumb).className,
168
- track: stylex.props(styles.alphaTrack).className
169
- },
170
- styles: { track: { "--lobe-color-picker-alpha": formatColor(hsva, false) } },
171
- onChange: (a) => update({
172
- ...hsva,
173
- a: a / 100
174
- }),
175
- onChangeComplete: (a) => commit({
176
- ...hsva,
177
- a: a / 100
178
- })
179
- }),
180
- /* @__PURE__ */ jsxs("div", {
181
- ...stylex.props(styles.hexRow),
182
- children: [/* @__PURE__ */ jsx(Input_default, {
183
- "aria-label": "HEX",
184
- className: stylex.props(styles.hexField).className,
185
- prefix: /* @__PURE__ */ jsx("span", {
186
- ...stylex.props(panelStyles.label),
187
- children: "HEX"
188
- }),
189
- value: draft,
190
- variant: "filled",
191
- onBlur: commitDraft,
192
- onChange: (event) => setDraft(event.target.value),
193
- onPressEnter: commitDraft
194
- }), alpha && /* @__PURE__ */ jsx(InputNumber_default, {
195
- "aria-label": t("colorPicker.alpha"),
196
- className: stylex.props(styles.hexField, styles.alphaField).className,
197
- controls: false,
198
- max: 100,
199
- min: 0,
200
- suffix: "%",
201
- value: Math.round(hsva.a * 100),
202
- variant: "filled",
203
- onChange: (a) => a !== null && apply({
204
- ...hsva,
205
- a: a / 100
206
- })
207
- })]
208
- }),
209
- presets && presets.length > 0 && /* @__PURE__ */ jsx("div", {
210
- "aria-label": t("colorPicker.presets"),
211
- ...stylex.props(styles.presets),
212
- role: "group",
213
- children: presets.map((color) => /* @__PURE__ */ createElement("button", {
214
- "aria-label": color,
215
- "aria-pressed": color.toLowerCase() === hex.slice(0, 7).toLowerCase(),
216
- ...stylex.props(focusRing.info, styles.preset),
217
- key: color,
218
- style: { background: color },
219
- type: "button",
220
- onClick: () => apply({
221
- ...parseColor(color, hsva.h),
222
- a: parseColor(color).a
223
- })
224
- }))
225
- })
226
- ]
47
+ children: [/* @__PURE__ */ jsx(PopoverTriggerElement, {
48
+ nativeButton: true,
49
+ disabled,
50
+ children: children ?? /* @__PURE__ */ jsx(ColorTrigger, {
51
+ alpha: alpha && hex ? hsva.a : void 0,
52
+ className,
53
+ disabled,
54
+ emptyLabel: t("colorPicker.empty"),
55
+ hex,
56
+ label: t("colorPicker.trigger"),
57
+ size,
58
+ style,
59
+ variant: trigger
227
60
  })
228
- })
229
- }) })] });
61
+ }), /* @__PURE__ */ jsx(PopoverPortal, { children: /* @__PURE__ */ jsx(PopoverPositioner, {
62
+ placement: "bottomLeft",
63
+ children: /* @__PURE__ */ jsx(PopoverPopup, {
64
+ ref: popupRef,
65
+ xstyle: panelStyles.popup,
66
+ initialFocus: () => popupRef.current?.querySelector("[role=\"slider\"]") ?? true,
67
+ children: /* @__PURE__ */ jsx(ColorPanel, {
68
+ alpha,
69
+ format,
70
+ hsva,
71
+ original,
72
+ presets,
73
+ recent,
74
+ labels: {
75
+ alpha: t("colorPicker.alpha"),
76
+ eyeDropper: t("colorPicker.eyeDropper"),
77
+ format: t("colorPicker.format"),
78
+ hue: t("colorPicker.hue"),
79
+ original: t("colorPicker.original"),
80
+ presets: t("colorPicker.presets"),
81
+ recent: t("colorPicker.recent"),
82
+ saturation: t("colorPicker.saturation"),
83
+ swatches: t("colorPicker.swatches")
84
+ },
85
+ onApply: apply,
86
+ onCommit: commit,
87
+ onFormatChange: setFormat,
88
+ onUpdate: update
89
+ })
90
+ })
91
+ }) })]
92
+ });
230
93
  });
231
94
  ColorPicker.displayName = "ColorPicker";
232
95
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"ColorPicker.mjs","names":["colorPickerMessages","Input","InputNumber"],"sources":["../../src/ColorPicker/ColorPicker.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { Pipette } from 'lucide-react';\nimport { type CSSProperties, memo, useEffect, useRef, useState } from 'react';\nimport useControlledState from 'use-merge-value';\n\nimport colorPickerMessages from '@/i18n/resources/en/colorPicker';\nimport { useTranslation } from '@/i18n/useTranslation';\nimport Icon from '@/Icon';\nimport { Input, InputNumber } from '@/Input';\nimport { inputRootStyles } from '@/Input/style';\nimport { panelStyles } from '@/internal/panelStyles';\nimport {\n PopoverPopup,\n PopoverPortal,\n PopoverPositioner,\n PopoverRoot,\n PopoverTriggerElement,\n} from '@/Popover';\nimport { Slider } from '@/Slider';\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\nimport { useThemeMode } from '@/styles/theme/scope';\n\nimport { formatColor, type Hsva, normalizeHexInput, parseColor } from './color';\nimport SaturationArea from './SaturationArea';\nimport { styles } from './style';\nimport type { ColorPickerProps } from './type';\n\nconst DEFAULT_COLOR = '#000000';\n\nconst hasEyeDropper = () => typeof window !== 'undefined' && 'EyeDropper' in window;\n\nconst ColorPicker = memo<ColorPickerProps>(\n ({\n alpha = false,\n children,\n className,\n defaultValue = DEFAULT_COLOR,\n disabled,\n onChange,\n onChangeComplete,\n presets,\n showText,\n size = 'middle',\n style,\n value,\n }) => {\n const { t } = useTranslation(colorPickerMessages);\n const { isDarkMode } = useThemeMode();\n const [hex, setHex] = useControlledState<string>(defaultValue, {\n defaultValue,\n onChange,\n value,\n });\n const [hsva, setHsva] = useState<Hsva>(() => parseColor(hex));\n const [draft, setDraft] = useState(hex.slice(1).toUpperCase());\n const popupRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n setHsva((current) =>\n formatColor(current, alpha) === hex.toLowerCase() ? current : parseColor(hex, current.h),\n );\n setDraft(hex.slice(1).toUpperCase());\n }, [hex, alpha]);\n\n const update = (next: Hsva) => {\n setHsva(next);\n setHex(formatColor(next, alpha));\n };\n const commit = (next: Hsva) => onChangeComplete?.(formatColor(next, alpha));\n const apply = (next: Hsva) => {\n update(next);\n commit(next);\n };\n\n const commitDraft = () => {\n const normalized = normalizeHexInput(draft);\n if (!normalized) return setDraft(hex.slice(1).toUpperCase());\n apply(parseColor(normalized, hsva.h));\n };\n\n const swatch = (dimension: number) => (\n <span {...stylex.props(styles.swatch)} style={{ height: dimension, width: dimension }}>\n <span {...stylex.props(styles.swatchFill)} style={{ background: hex }} />\n </span>\n );\n\n const trigger =\n children ??\n (showText ? (\n <button\n aria-label={t('colorPicker.trigger')}\n disabled={disabled}\n type=\"button\"\n {...styleProps(\n [\n ...inputRootStyles({ size, variant: isDarkMode ? 'filled' : 'outlined' }),\n styles.textTrigger,\n ],\n className,\n { cursor: 'pointer', ...style },\n )}\n >\n {swatch(18)}\n <span style={{ fontFamily: 'var(--lobe-font-family-code, monospace)' }}>\n {hex.toUpperCase()}\n </span>\n </button>\n ) : (\n <button\n aria-label={t('colorPicker.trigger')}\n disabled={disabled}\n type=\"button\"\n {...styleProps([focusRing.info, styles.swatchButton], className, style)}\n >\n {swatch(24)}\n </button>\n ));\n\n return (\n <PopoverRoot>\n <PopoverTriggerElement>{trigger}</PopoverTriggerElement>\n <PopoverPortal>\n <PopoverPositioner placement=\"bottomLeft\">\n <PopoverPopup\n ref={popupRef}\n xstyle={panelStyles.popup}\n initialFocus={() =>\n popupRef.current?.querySelector<HTMLElement>('[role=\"slider\"]') ?? true\n }\n >\n <div {...stylex.props(styles.panel)}>\n <div {...stylex.props(styles.summary)}>\n {swatch(40)}\n <div>\n <div {...stylex.props(styles.value)}>{hex.toUpperCase()}</div>\n <div {...stylex.props(panelStyles.label)}>\n {alpha ? `HEX · ${Math.round(hsva.a * 100)}%` : 'HEX'}\n </div>\n </div>\n {hasEyeDropper() && (\n <button\n aria-label={t('colorPicker.eyeDropper')}\n {...stylex.props(panelStyles.nav, styles.eyeDropper)}\n type=\"button\"\n onClick={async () => {\n const dropper = new (\n window as unknown as {\n EyeDropper: new () => { open: () => Promise<{ sRGBHex: string }> };\n }\n ).EyeDropper();\n const result = await dropper.open().catch(() => null);\n if (result) apply({ ...parseColor(result.sRGBHex, hsva.h), a: hsva.a });\n }}\n >\n <Icon icon={Pipette} size={14} />\n </button>\n )}\n </div>\n <SaturationArea\n hue={hsva.h}\n label={t('colorPicker.saturation')}\n saturation={hsva.s}\n value={hsva.v}\n onChange={(s, v) => update({ ...hsva, s, v })}\n onChangeComplete={(s, v) => commit({ ...hsva, s, v })}\n />\n <Slider\n aria-label={t('colorPicker.hue')}\n max={360}\n min={0}\n value={hsva.h}\n classNames={{\n indicator: stylex.props(styles.hidden).className,\n thumb: stylex.props(styles.sliderThumb).className,\n track: stylex.props(styles.hueTrack).className,\n }}\n onChange={(h) => update({ ...hsva, h })}\n onChangeComplete={(h) => commit({ ...hsva, h })}\n />\n {alpha && (\n <Slider\n aria-label={t('colorPicker.alpha')}\n max={100}\n min={0}\n value={Math.round(hsva.a * 100)}\n classNames={{\n indicator: stylex.props(styles.hidden).className,\n thumb: stylex.props(styles.sliderThumb).className,\n track: stylex.props(styles.alphaTrack).className,\n }}\n styles={{\n track: {\n '--lobe-color-picker-alpha': formatColor(hsva, false),\n } as CSSProperties,\n }}\n onChange={(a) => update({ ...hsva, a: a / 100 })}\n onChangeComplete={(a) => commit({ ...hsva, a: a / 100 })}\n />\n )}\n <div {...stylex.props(styles.hexRow)}>\n <Input\n aria-label=\"HEX\"\n className={stylex.props(styles.hexField).className}\n prefix={<span {...stylex.props(panelStyles.label)}>HEX</span>}\n value={draft}\n variant=\"filled\"\n onBlur={commitDraft}\n onChange={(event) => setDraft(event.target.value)}\n onPressEnter={commitDraft}\n />\n {alpha && (\n <InputNumber\n aria-label={t('colorPicker.alpha')}\n className={stylex.props(styles.hexField, styles.alphaField).className}\n controls={false}\n max={100}\n min={0}\n suffix=\"%\"\n value={Math.round(hsva.a * 100)}\n variant=\"filled\"\n onChange={(a) => a !== null && apply({ ...hsva, a: a / 100 })}\n />\n )}\n </div>\n {presets && presets.length > 0 && (\n <div\n aria-label={t('colorPicker.presets')}\n {...stylex.props(styles.presets)}\n role=\"group\"\n >\n {presets.map((color) => (\n <button\n aria-label={color}\n aria-pressed={color.toLowerCase() === hex.slice(0, 7).toLowerCase()}\n {...stylex.props(focusRing.info, styles.preset)}\n key={color}\n style={{ background: color }}\n type=\"button\"\n onClick={() =>\n apply({ ...parseColor(color, hsva.h), a: parseColor(color).a })\n }\n />\n ))}\n </div>\n )}\n </div>\n </PopoverPopup>\n </PopoverPositioner>\n </PopoverPortal>\n </PopoverRoot>\n );\n },\n);\n\nColorPicker.displayName = 'ColorPicker';\n\nexport default ColorPicker;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAqBA,MAAM,gBAAgB;AACtB,MAAM,sBAAsB,OAAO,WAAW,eAAe,gBAAgB;AAC7E,MAAM,cAAc,MAAwB,EAC1C,QAAQ,OACR,UACA,WACA,eAAe,eACf,UACA,UACA,kBACA,SACA,UACA,OAAO,UACP,OACA,YACI;CACJ,MAAM,EACJ,MACE,eAAeA,mBAAmB;CACtC,MAAM,EACJ,eACE,aAAa;CACjB,MAAM,CAAC,KAAK,UAAU,mBAA2B,cAAc;EAC7D;EACA;EACA;CACF,CAAC;CACD,MAAM,CAAC,MAAM,WAAW,eAAqB,WAAW,GAAG,CAAC;CAC5D,MAAM,CAAC,OAAO,YAAY,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;CAC7D,MAAM,WAAW,OAAuB,IAAI;CAC5C,gBAAgB;EACd,SAAQ,YAAW,YAAY,SAAS,KAAK,MAAM,IAAI,YAAY,IAAI,UAAU,WAAW,KAAK,QAAQ,CAAC,CAAC;EAC3G,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;CACrC,GAAG,CAAC,KAAK,KAAK,CAAC;CACf,MAAM,UAAU,SAAe;EAC7B,QAAQ,IAAI;EACZ,OAAO,YAAY,MAAM,KAAK,CAAC;CACjC;CACA,MAAM,UAAU,SAAe,mBAAmB,YAAY,MAAM,KAAK,CAAC;CAC1E,MAAM,SAAS,SAAe;EAC5B,OAAO,IAAI;EACX,OAAO,IAAI;CACb;CACA,MAAM,oBAAoB;EACxB,MAAM,aAAa,kBAAkB,KAAK;EAC1C,IAAI,CAAC,YAAY,OAAO,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;EAC3D,MAAM,WAAW,YAAY,KAAK,CAAC,CAAC;CACtC;CACA,MAAM,UAAU,cAAsB,oBAAC,QAAD;EAAM,GAAI,OAAO,MAAM,OAAO,MAAM;EAAG,OAAO;GAClF,QAAQ;GACR,OAAO;EACT;EACM,UAAA,oBAAC,QAAD;GAAM,GAAI,OAAO,MAAM,OAAO,UAAU;GAAG,OAAO,EACpD,YAAY,IACd;EAAI,CAAA;CACI,CAAA;CACV,MAAM,UAAU,aAAa,WAAW,qBAAC,UAAD;EAAQ,cAAY,EAAE,qBAAqB;EAAa;EAAU,MAAK;EAAS,GAAI,WAAW,CAAC,GAAG,gBAAgB;GACzJ;GACA,SAAS,aAAa,WAAW;EACnC,CAAC,GAAG,OAAO,WAAW,GAAG,WAAW;GAClC,QAAQ;GACR,GAAG;EACL,CAAC;EANuC,UAAA,CAO/B,OAAO,EAAE,GACV,oBAAC,QAAD;GAAM,OAAO,EACjB,YAAY,0CACd;GACS,UAAA,IAAI,YAAY;EACb,CAAA,CACA;CAAI,CAAA,IAAA,oBAAC,UAAD;EAAQ,cAAY,EAAE,qBAAqB;EAAa;EAAU,MAAK;EAAS,GAAI,WAAW,CAAC,UAAU,MAAM,OAAO,YAAY,GAAG,WAAW,KAAK;EAC/J,UAAA,OAAO,EAAE;CACJ,CAAA;CACd,OAAO,qBAAC,aAAD,EAAA,UAAA,CACD,oBAAC,uBAAD,EAAA,UAAwB,QAA+B,CAAA,GACvD,oBAAC,eAAD,EAAA,UACE,oBAAC,mBAAD;EAAmB,WAAU;EAC3B,UAAA,oBAAC,cAAD;GAAc,KAAK;GAAU,QAAQ,YAAY;GAAO,oBAAoB,SAAS,SAAS,cAA2B,mBAAiB,KAAK;GAC7I,UAAA,qBAAC,OAAD;IAAK,GAAI,OAAO,MAAM,OAAO,KAAK;IAAlC,UAAA;KACE,qBAAC,OAAD;MAAK,GAAI,OAAO,MAAM,OAAO,OAAO;MAApC,UAAA;OACG,OAAO,EAAE;OACV,qBAAC,OAAD,EAAA,UAAA,CACE,oBAAC,OAAD;QAAK,GAAI,OAAO,MAAM,OAAO,KAAK;QAAI,UAAA,IAAI,YAAY;OAAO,CAAA,GAC7D,oBAAC,OAAD;QAAK,GAAI,OAAO,MAAM,YAAY,KAAK;QACpC,UAAA,QAAQ,SAAS,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE,KAAK;OAC7C,CAAA,CACF,EAAA,CAAA;OACJ,cAAc,KAAK,oBAAC,UAAD;QAAQ,cAAY,EAAE,wBAAwB;QAAG,GAAI,OAAO,MAAM,YAAY,KAAK,OAAO,UAAU;QAAG,MAAK;QAAS,SAAS,YAAY;SAQhK,MAAM,SAAS,MAAM,IAPA,OAMlB,WACwB,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,IAAI;SACpD,IAAI,QAAQ,MAAM;UAChB,GAAG,WAAW,OAAO,SAAS,KAAK,CAAC;UACpC,GAAG,KAAK;SACV,CAAC;QACH;QACQ,UAAA,oBAAC,MAAD;SAAM,MAAM;SAAS,MAAM;QAAK,CAAA;OAC1B,CAAA;MACP;;KACL,oBAAC,gBAAD;MAAgB,KAAK,KAAK;MAAG,OAAO,EAAE,wBAAwB;MAAG,YAAY,KAAK;MAAG,OAAO,KAAK;MAAG,WAAW,GAAG,MAAM,OAAO;OACjI,GAAG;OACH;OACA;MACF,CAAC;MAAG,mBAAmB,GAAG,MAAM,OAAO;OACrC,GAAG;OACH;OACA;MACF,CAAC;KAAI,CAAA;KACD,oBAAC,QAAD;MAAQ,cAAY,EAAE,iBAAiB;MAAG,KAAK;MAAK,KAAK;MAAG,OAAO,KAAK;MAAG,YAAY;OACzF,WAAW,OAAO,MAAM,OAAO,MAAM,CAAC,CAAC;OACvC,OAAO,OAAO,MAAM,OAAO,WAAW,CAAC,CAAC;OACxC,OAAO,OAAO,MAAM,OAAO,QAAQ,CAAC,CAAC;MACvC;MAAG,WAAU,MAAK,OAAO;OACvB,GAAG;OACH;MACF,CAAC;MAAG,mBAAkB,MAAK,OAAO;OAChC,GAAG;OACH;MACF,CAAC;KAAI,CAAA;KACA,SAAS,oBAAC,QAAD;MAAQ,cAAY,EAAE,mBAAmB;MAAG,KAAK;MAAK,KAAK;MAAG,OAAO,KAAK,MAAM,KAAK,IAAI,GAAG;MAAG,YAAY;OACvH,WAAW,OAAO,MAAM,OAAO,MAAM,CAAC,CAAC;OACvC,OAAO,OAAO,MAAM,OAAO,WAAW,CAAC,CAAC;OACxC,OAAO,OAAO,MAAM,OAAO,UAAU,CAAC,CAAC;MACzC;MAAG,QAAQ,EACT,OAAO,EACL,6BAA6B,YAAY,MAAM,KAAK,EACtD,EACF;MAAG,WAAU,MAAK,OAAO;OACvB,GAAG;OACH,GAAG,IAAI;MACT,CAAC;MAAG,mBAAkB,MAAK,OAAO;OAChC,GAAG;OACH,GAAG,IAAI;MACT,CAAC;KAAI,CAAA;KACD,qBAAC,OAAD;MAAK,GAAI,OAAO,MAAM,OAAO,MAAM;MAAnC,UAAA,CACE,oBAACC,eAAD;OAAO,cAAW;OAAM,WAAW,OAAO,MAAM,OAAO,QAAQ,CAAC,CAAC;OAAW,QAAQ,oBAAC,QAAD;QAAM,GAAI,OAAO,MAAM,YAAY,KAAK;QAAG,UAAA;OAAS,CAAA;OAAG,OAAO;OAAO,SAAQ;OAAS,QAAQ;OAAa,WAAU,UAAS,SAAS,MAAM,OAAO,KAAK;OAAG,cAAc;MAAc,CAAA,GAC3Q,SAAS,oBAACC,qBAAD;OAAa,cAAY,EAAE,mBAAmB;OAAG,WAAW,OAAO,MAAM,OAAO,UAAU,OAAO,UAAU,CAAC,CAAC;OAAW,UAAU;OAAO,KAAK;OAAK,KAAK;OAAG,QAAO;OAAI,OAAO,KAAK,MAAM,KAAK,IAAI,GAAG;OAAG,SAAQ;OAAS,WAAU,MAAK,MAAM,QAAQ,MAAM;QACvQ,GAAG;QACH,GAAG,IAAI;OACT,CAAC;MAAI,CAAA,CACE;;KACJ,WAAW,QAAQ,SAAS,KAAK,oBAAC,OAAD;MAAK,cAAY,EAAE,qBAAqB;MAAG,GAAI,OAAO,MAAM,OAAO,OAAO;MAAG,MAAK;MAC/G,UAAA,QAAQ,KAAI,UAAS,8BAAC,UAAD;OAAQ,cAAY;OAAO,gBAAc,MAAM,YAAY,MAAM,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,YAAY;OAAG,GAAI,OAAO,MAAM,UAAU,MAAM,OAAO,MAAM;OAAG,KAAK;OAAO,OAAO,EAC9L,YAAY,MACd;OAAG,MAAK;OAAS,eAAe,MAAM;QACpC,GAAG,WAAW,OAAO,KAAK,CAAC;QAC3B,GAAG,WAAW,KAAK,CAAC,CAAC;OACvB,CAAC;MAAI,CAAA,CAAC;KACG,CAAA;IACJ;;EACO,CAAA;CACG,CAAA,EACN,CAAA,CACJ,EAAA,CAAA;AACnB,CAAC;AACD,YAAY,cAAc"}
1
+ {"version":3,"file":"ColorPicker.mjs","names":["colorPickerMessages"],"sources":["../../src/ColorPicker/ColorPicker.tsx"],"sourcesContent":["'use client';\n\nimport { memo, useEffect, useRef, useState } from 'react';\n\nimport { useControlledState } from '@/hooks/useControlledState';\nimport colorPickerMessages from '@/i18n/resources/en/colorPicker';\nimport { useTranslation } from '@/i18n/useTranslation';\nimport { panelStyles } from '@/internal/panelStyles';\nimport {\n PopoverPopup,\n PopoverPortal,\n PopoverPositioner,\n PopoverRoot,\n PopoverTriggerElement,\n} from '@/Popover';\n\nimport { type ColorFormat, formatColor, type Hsva, parseColor } from './color';\nimport ColorPanel from './ColorPanel';\nimport { pushRecentColor } from './recent';\nimport ColorTrigger from './Trigger';\nimport type { ColorPickerProps } from './type';\n\nconst DEFAULT_COLOR = '#000000';\n\nconst ColorPicker = memo<ColorPickerProps>(\n ({\n alpha = false,\n children,\n className,\n defaultFormat = 'hex',\n defaultValue = DEFAULT_COLOR,\n disabled,\n onChange,\n onChangeComplete,\n presets,\n recent = true,\n showText,\n size = 'middle',\n style,\n trigger = showText ? 'field' : 'swatch',\n value,\n }) => {\n const { t } = useTranslation(colorPickerMessages);\n const [hex, setHex] = useControlledState<string>(defaultValue, {\n defaultValue,\n onChange,\n value,\n });\n const [hsva, setHsva] = useState<Hsva>(() => parseColor(hex));\n const [format, setFormat] = useState<ColorFormat>(defaultFormat);\n const [original, setOriginal] = useState(hex);\n const popupRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!hex) return;\n setHsva((current) =>\n formatColor(current, alpha) === hex.toLowerCase() ? current : parseColor(hex, current.h),\n );\n }, [hex, alpha]);\n\n const update = (next: Hsva) => {\n setHsva(next);\n setHex(formatColor(next, alpha));\n };\n const commit = (next: Hsva) => {\n const nextHex = formatColor(next, alpha);\n if (recent) pushRecentColor(nextHex);\n onChangeComplete?.(nextHex);\n };\n const apply = (next: Hsva) => {\n update(next);\n commit(next);\n };\n\n return (\n <PopoverRoot\n onOpenChange={(open) => {\n if (open) setOriginal(hex);\n }}\n >\n <PopoverTriggerElement nativeButton disabled={disabled}>\n {children ?? (\n <ColorTrigger\n alpha={alpha && hex ? hsva.a : undefined}\n className={className}\n disabled={disabled}\n emptyLabel={t('colorPicker.empty')}\n hex={hex}\n label={t('colorPicker.trigger')}\n size={size}\n style={style}\n variant={trigger}\n />\n )}\n </PopoverTriggerElement>\n <PopoverPortal>\n <PopoverPositioner placement=\"bottomLeft\">\n <PopoverPopup\n ref={popupRef}\n xstyle={panelStyles.popup}\n initialFocus={() =>\n popupRef.current?.querySelector<HTMLElement>('[role=\"slider\"]') ?? true\n }\n >\n <ColorPanel\n alpha={alpha}\n format={format}\n hsva={hsva}\n original={original}\n presets={presets}\n recent={recent}\n labels={{\n alpha: t('colorPicker.alpha'),\n eyeDropper: t('colorPicker.eyeDropper'),\n format: t('colorPicker.format'),\n hue: t('colorPicker.hue'),\n original: t('colorPicker.original'),\n presets: t('colorPicker.presets'),\n recent: t('colorPicker.recent'),\n saturation: t('colorPicker.saturation'),\n swatches: t('colorPicker.swatches'),\n }}\n onApply={apply}\n onCommit={commit}\n onFormatChange={setFormat}\n onUpdate={update}\n />\n </PopoverPopup>\n </PopoverPositioner>\n </PopoverPortal>\n </PopoverRoot>\n );\n },\n);\n\nColorPicker.displayName = 'ColorPicker';\n\nexport default ColorPicker;\n"],"mappings":";;;;;;;;;;;;;AAsBA,MAAM,gBAAgB;AAEtB,MAAM,cAAc,MACjB,EACC,QAAQ,OACR,UACA,WACA,gBAAgB,OAChB,eAAe,eACf,UACA,UACA,kBACA,SACA,SAAS,MACT,UACA,OAAO,UACP,OACA,UAAU,WAAW,UAAU,UAC/B,YACI;CACJ,MAAM,EAAE,MAAM,eAAeA,mBAAmB;CAChD,MAAM,CAAC,KAAK,UAAU,mBAA2B,cAAc;EAC7D;EACA;EACA;CACF,CAAC;CACD,MAAM,CAAC,MAAM,WAAW,eAAqB,WAAW,GAAG,CAAC;CAC5D,MAAM,CAAC,QAAQ,aAAa,SAAsB,aAAa;CAC/D,MAAM,CAAC,UAAU,eAAe,SAAS,GAAG;CAC5C,MAAM,WAAW,OAAuB,IAAI;CAE5C,gBAAgB;EACd,IAAI,CAAC,KAAK;EACV,SAAS,YACP,YAAY,SAAS,KAAK,MAAM,IAAI,YAAY,IAAI,UAAU,WAAW,KAAK,QAAQ,CAAC,CACzF;CACF,GAAG,CAAC,KAAK,KAAK,CAAC;CAEf,MAAM,UAAU,SAAe;EAC7B,QAAQ,IAAI;EACZ,OAAO,YAAY,MAAM,KAAK,CAAC;CACjC;CACA,MAAM,UAAU,SAAe;EAC7B,MAAM,UAAU,YAAY,MAAM,KAAK;EACvC,IAAI,QAAQ,gBAAgB,OAAO;EACnC,mBAAmB,OAAO;CAC5B;CACA,MAAM,SAAS,SAAe;EAC5B,OAAO,IAAI;EACX,OAAO,IAAI;CACb;CAEA,OACE,qBAAC,aAAD;EACE,eAAe,SAAS;GACtB,IAAI,MAAM,YAAY,GAAG;EAC3B;EAHF,UAAA,CAKE,oBAAC,uBAAD;GAAuB,cAAA;GAAuB;GAC3C,UAAA,YACC,oBAAC,cAAD;IACE,OAAO,SAAS,MAAM,KAAK,IAAI,KAAA;IACpB;IACD;IACV,YAAY,EAAE,mBAAmB;IAC5B;IACL,OAAO,EAAE,qBAAqB;IACxB;IACC;IACP,SAAS;GACV,CAAA;EAEkB,CAAA,GACvB,oBAAC,eAAD,EAAA,UACE,oBAAC,mBAAD;GAAmB,WAAU;GAC3B,UAAA,oBAAC,cAAD;IACE,KAAK;IACL,QAAQ,YAAY;IACpB,oBACE,SAAS,SAAS,cAA2B,mBAAiB,KAAK;IAGrE,UAAA,oBAAC,YAAD;KACS;KACC;KACF;KACI;KACD;KACD;KACR,QAAQ;MACN,OAAO,EAAE,mBAAmB;MAC5B,YAAY,EAAE,wBAAwB;MACtC,QAAQ,EAAE,oBAAoB;MAC9B,KAAK,EAAE,iBAAiB;MACxB,UAAU,EAAE,sBAAsB;MAClC,SAAS,EAAE,qBAAqB;MAChC,QAAQ,EAAE,oBAAoB;MAC9B,YAAY,EAAE,wBAAwB;MACtC,UAAU,EAAE,sBAAsB;KACpC;KACA,SAAS;KACT,UAAU;KACV,gBAAgB;KAChB,UAAU;IACX,CAAA;GACW,CAAA;EACG,CAAA,EACN,CAAA,CACJ;;AAEjB,CACF;AAEA,YAAY,cAAc"}
@@ -6,7 +6,7 @@ import { jsx } from "react/jsx-runtime";
6
6
  import * as stylex from "@stylexjs/stylex";
7
7
  //#region src/ColorPicker/SaturationArea.tsx
8
8
  const clamp = (n) => Math.min(1, Math.max(0, Math.round(n * 100) / 100));
9
- const SaturationArea = memo(({ hue, label, onChange, onChangeComplete, saturation, value }) => {
9
+ const SaturationArea = memo(({ color, hue, label, onChange, onChangeComplete, saturation, value }) => {
10
10
  const areaRef = useRef(null);
11
11
  const fromPointer = (event) => {
12
12
  const rect = areaRef.current.getBoundingClientRect();
@@ -53,6 +53,7 @@ const SaturationArea = memo(({ hue, label, onChange, onChangeComplete, saturatio
53
53
  children: /* @__PURE__ */ jsx("span", {
54
54
  ...stylex.props(styles.thumb),
55
55
  style: {
56
+ background: color,
56
57
  left: `${saturation * 100}%`,
57
58
  top: `${(1 - value) * 100}%`
58
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SaturationArea.mjs","names":[],"sources":["../../src/ColorPicker/SaturationArea.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { memo, type PointerEvent, useRef } from 'react';\n\nimport { focusRing } from '@/styles/stylex/focusRing';\n\nimport { styles } from './style';\n\nexport interface SaturationAreaProps {\n hue: number;\n label: string;\n onChange: (saturation: number, value: number) => void;\n onChangeComplete: (saturation: number, value: number) => void;\n saturation: number;\n value: number;\n}\n\nconst clamp = (n: number) => Math.min(1, Math.max(0, Math.round(n * 100) / 100));\n\nconst SaturationArea = memo<SaturationAreaProps>(\n ({ hue, label, onChange, onChangeComplete, saturation, value }) => {\n const areaRef = useRef<HTMLDivElement>(null);\n\n const fromPointer = (event: PointerEvent<HTMLDivElement>): [number, number] => {\n const rect = areaRef.current!.getBoundingClientRect();\n const next: [number, number] = [\n clamp((event.clientX - rect.left) / rect.width),\n clamp(1 - (event.clientY - rect.top) / rect.height),\n ];\n onChange(...next);\n return next;\n };\n\n return (\n <div\n aria-label={label}\n aria-valuemax={100}\n aria-valuemin={0}\n aria-valuenow={Math.round(saturation * 100)}\n aria-valuetext={`Saturation ${Math.round(saturation * 100)}%, brightness ${Math.round(value * 100)}%`}\n {...stylex.props(focusRing.info, styles.saturation)}\n ref={areaRef}\n role=\"slider\"\n tabIndex={0}\n style={{\n background: `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${hue} 100% 50%))`,\n }}\n onKeyDown={(event) => {\n const delta = event.shiftKey ? 0.1 : 0.01;\n const moves: Record<string, [number, number]> = {\n ArrowDown: [0, -delta],\n ArrowLeft: [-delta, 0],\n ArrowRight: [delta, 0],\n ArrowUp: [0, delta],\n };\n const move = moves[event.key];\n if (!move) return;\n event.preventDefault();\n const next: [number, number] = [clamp(saturation + move[0]), clamp(value + move[1])];\n onChange(...next);\n onChangeComplete(...next);\n }}\n onPointerDown={(event) => {\n event.currentTarget.setPointerCapture(event.pointerId);\n fromPointer(event);\n }}\n onPointerMove={(event) => {\n if (event.currentTarget.hasPointerCapture(event.pointerId)) fromPointer(event);\n }}\n onPointerUp={(event) => {\n event.currentTarget.releasePointerCapture(event.pointerId);\n onChangeComplete(...fromPointer(event));\n }}\n >\n <span\n {...stylex.props(styles.thumb)}\n style={{ left: `${saturation * 100}%`, top: `${(1 - value) * 100}%` }}\n />\n </div>\n );\n },\n);\n\nSaturationArea.displayName = 'ColorPickerSaturationArea';\n\nexport default SaturationArea;\n"],"mappings":";;;;;;;AAcA,MAAM,SAAS,MAAc,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC;AAC/E,MAAM,iBAAiB,MAA2B,EAChD,KACA,OACA,UACA,kBACA,YACA,YACI;CACJ,MAAM,UAAU,OAAuB,IAAI;CAC3C,MAAM,eAAe,UAA0D;EAC7E,MAAM,OAAO,QAAQ,QAAS,sBAAsB;EACpD,MAAM,OAAyB,CAAC,OAAO,MAAM,UAAU,KAAK,QAAQ,KAAK,KAAK,GAAG,MAAM,KAAK,MAAM,UAAU,KAAK,OAAO,KAAK,MAAM,CAAC;EACpI,SAAS,GAAG,IAAI;EAChB,OAAO;CACT;CACA,OAAO,oBAAC,OAAD;EAAK,cAAY;EAAO,iBAAe;EAAK,iBAAe;EAAG,iBAAe,KAAK,MAAM,aAAa,GAAG;EAAG,kBAAgB,cAAc,KAAK,MAAM,aAAa,GAAG,EAAE,gBAAgB,KAAK,MAAM,QAAQ,GAAG,EAAE;EAAI,GAAI,OAAO,MAAM,UAAU,MAAM,OAAO,UAAU;EAAG,KAAK;EAAS,MAAK;EAAS,UAAU;EAAG,OAAO,EAC5T,YAAY,mFAAmF,IAAI,aACrG;EAAG,YAAW,UAAS;GACrB,MAAM,QAAQ,MAAM,WAAW,KAAM;GAOrC,MAAM,OAAO;IALX,WAAW,CAAC,GAAG,CAAC,KAAK;IACrB,WAAW,CAAC,CAAC,OAAO,CAAC;IACrB,YAAY,CAAC,OAAO,CAAC;IACrB,SAAS,CAAC,GAAG,KAAK;GAEH,EAAE,MAAM;GACzB,IAAI,CAAC,MAAM;GACX,MAAM,eAAe;GACrB,MAAM,OAAyB,CAAC,MAAM,aAAa,KAAK,EAAE,GAAG,MAAM,QAAQ,KAAK,EAAE,CAAC;GACnF,SAAS,GAAG,IAAI;GAChB,iBAAiB,GAAG,IAAI;EAC1B;EAAG,gBAAe,UAAS;GACzB,MAAM,cAAc,kBAAkB,MAAM,SAAS;GACrD,YAAY,KAAK;EACnB;EAAG,gBAAe,UAAS;GACzB,IAAI,MAAM,cAAc,kBAAkB,MAAM,SAAS,GAAG,YAAY,KAAK;EAC/E;EAAG,cAAa,UAAS;GACvB,MAAM,cAAc,sBAAsB,MAAM,SAAS;GACzD,iBAAiB,GAAG,YAAY,KAAK,CAAC;EACxC;EACM,UAAA,oBAAC,QAAD;GAAM,GAAI,OAAO,MAAM,OAAO,KAAK;GAAG,OAAO;IAC/C,MAAM,GAAG,aAAa,IAAI;IAC1B,KAAK,IAAI,IAAI,SAAS,IAAI;GAC5B;EAAI,CAAA;CACG,CAAA;AACX,CAAC;AACD,eAAe,cAAc"}
1
+ {"version":3,"file":"SaturationArea.mjs","names":[],"sources":["../../src/ColorPicker/SaturationArea.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { memo, type PointerEvent, useRef } from 'react';\n\nimport { focusRing } from '@/styles/stylex/focusRing';\n\nimport { styles } from './style';\n\nexport interface SaturationAreaProps {\n color: string;\n hue: number;\n label: string;\n onChange: (saturation: number, value: number) => void;\n onChangeComplete: (saturation: number, value: number) => void;\n saturation: number;\n value: number;\n}\n\nconst clamp = (n: number) => Math.min(1, Math.max(0, Math.round(n * 100) / 100));\n\nconst SaturationArea = memo<SaturationAreaProps>(\n ({ color, hue, label, onChange, onChangeComplete, saturation, value }) => {\n const areaRef = useRef<HTMLDivElement>(null);\n\n const fromPointer = (event: PointerEvent<HTMLDivElement>): [number, number] => {\n const rect = areaRef.current!.getBoundingClientRect();\n const next: [number, number] = [\n clamp((event.clientX - rect.left) / rect.width),\n clamp(1 - (event.clientY - rect.top) / rect.height),\n ];\n onChange(...next);\n return next;\n };\n\n return (\n <div\n aria-label={label}\n aria-valuemax={100}\n aria-valuemin={0}\n aria-valuenow={Math.round(saturation * 100)}\n aria-valuetext={`Saturation ${Math.round(saturation * 100)}%, brightness ${Math.round(value * 100)}%`}\n {...stylex.props(focusRing.info, styles.saturation)}\n ref={areaRef}\n role=\"slider\"\n tabIndex={0}\n style={{\n background: `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${hue} 100% 50%))`,\n }}\n onKeyDown={(event) => {\n const delta = event.shiftKey ? 0.1 : 0.01;\n const moves: Record<string, [number, number]> = {\n ArrowDown: [0, -delta],\n ArrowLeft: [-delta, 0],\n ArrowRight: [delta, 0],\n ArrowUp: [0, delta],\n };\n const move = moves[event.key];\n if (!move) return;\n event.preventDefault();\n const next: [number, number] = [clamp(saturation + move[0]), clamp(value + move[1])];\n onChange(...next);\n onChangeComplete(...next);\n }}\n onPointerDown={(event) => {\n event.currentTarget.setPointerCapture(event.pointerId);\n fromPointer(event);\n }}\n onPointerMove={(event) => {\n if (event.currentTarget.hasPointerCapture(event.pointerId)) fromPointer(event);\n }}\n onPointerUp={(event) => {\n event.currentTarget.releasePointerCapture(event.pointerId);\n onChangeComplete(...fromPointer(event));\n }}\n >\n <span\n {...stylex.props(styles.thumb)}\n style={{ background: color, left: `${saturation * 100}%`, top: `${(1 - value) * 100}%` }}\n />\n </div>\n );\n },\n);\n\nSaturationArea.displayName = 'ColorPickerSaturationArea';\n\nexport default SaturationArea;\n"],"mappings":";;;;;;;AAeA,MAAM,SAAS,MAAc,KAAK,IAAI,GAAG,KAAK,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC;AAC/E,MAAM,iBAAiB,MAA2B,EAChD,OACA,KACA,OACA,UACA,kBACA,YACA,YACI;CACJ,MAAM,UAAU,OAAuB,IAAI;CAC3C,MAAM,eAAe,UAA0D;EAC7E,MAAM,OAAO,QAAQ,QAAS,sBAAsB;EACpD,MAAM,OAAyB,CAAC,OAAO,MAAM,UAAU,KAAK,QAAQ,KAAK,KAAK,GAAG,MAAM,KAAK,MAAM,UAAU,KAAK,OAAO,KAAK,MAAM,CAAC;EACpI,SAAS,GAAG,IAAI;EAChB,OAAO;CACT;CACA,OAAO,oBAAC,OAAD;EAAK,cAAY;EAAO,iBAAe;EAAK,iBAAe;EAAG,iBAAe,KAAK,MAAM,aAAa,GAAG;EAAG,kBAAgB,cAAc,KAAK,MAAM,aAAa,GAAG,EAAE,gBAAgB,KAAK,MAAM,QAAQ,GAAG,EAAE;EAAI,GAAI,OAAO,MAAM,UAAU,MAAM,OAAO,UAAU;EAAG,KAAK;EAAS,MAAK;EAAS,UAAU;EAAG,OAAO,EAC5T,YAAY,mFAAmF,IAAI,aACrG;EAAG,YAAW,UAAS;GACrB,MAAM,QAAQ,MAAM,WAAW,KAAM;GAOrC,MAAM,OAAO;IALX,WAAW,CAAC,GAAG,CAAC,KAAK;IACrB,WAAW,CAAC,CAAC,OAAO,CAAC;IACrB,YAAY,CAAC,OAAO,CAAC;IACrB,SAAS,CAAC,GAAG,KAAK;GAEH,EAAE,MAAM;GACzB,IAAI,CAAC,MAAM;GACX,MAAM,eAAe;GACrB,MAAM,OAAyB,CAAC,MAAM,aAAa,KAAK,EAAE,GAAG,MAAM,QAAQ,KAAK,EAAE,CAAC;GACnF,SAAS,GAAG,IAAI;GAChB,iBAAiB,GAAG,IAAI;EAC1B;EAAG,gBAAe,UAAS;GACzB,MAAM,cAAc,kBAAkB,MAAM,SAAS;GACrD,YAAY,KAAK;EACnB;EAAG,gBAAe,UAAS;GACzB,IAAI,MAAM,cAAc,kBAAkB,MAAM,SAAS,GAAG,YAAY,KAAK;EAC/E;EAAG,cAAa,UAAS;GACvB,MAAM,cAAc,sBAAsB,MAAM,SAAS;GACzD,iBAAiB,GAAG,YAAY,KAAK,CAAC;EACxC;EACM,UAAA,oBAAC,QAAD;GAAM,GAAI,OAAO,MAAM,OAAO,KAAK;GAAG,OAAO;IAC/C,YAAY;IACZ,MAAM,GAAG,aAAa,IAAI;IAC1B,KAAK,IAAI,IAAI,SAAS,IAAI;GAC5B;EAAI,CAAA;CACG,CAAA;AACX,CAAC;AACD,eAAe,cAAc"}
@@ -0,0 +1,24 @@
1
+ import { swatchStyles } from "./style.mjs";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import * as stylex from "@stylexjs/stylex";
4
+ //#region src/ColorPicker/Swatch.tsx
5
+ const Swatch = ({ color, radius, size }) => {
6
+ const boxStyle = {
7
+ borderRadius: radius,
8
+ height: size,
9
+ width: size
10
+ };
11
+ return /* @__PURE__ */ jsxs("span", {
12
+ "aria-hidden": true,
13
+ ...stylex.props(swatchStyles.box),
14
+ style: boxStyle,
15
+ children: [/* @__PURE__ */ jsx("span", {
16
+ ...stylex.props(swatchStyles.fill),
17
+ style: { background: color || "transparent" }
18
+ }), !color && /* @__PURE__ */ jsx("span", { ...stylex.props(swatchStyles.slash) })]
19
+ });
20
+ };
21
+ //#endregion
22
+ export { Swatch as default };
23
+
24
+ //# sourceMappingURL=Swatch.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Swatch.mjs","names":[],"sources":["../../src/ColorPicker/Swatch.tsx"],"sourcesContent":["import * as stylex from '@stylexjs/stylex';\nimport type { CSSProperties } from 'react';\n\nimport { swatchStyles } from './style';\n\nexport interface SwatchProps {\n color?: string;\n radius: number | string;\n size: number;\n}\n\nconst Swatch = ({ color, radius, size }: SwatchProps) => {\n const boxStyle: CSSProperties = { borderRadius: radius, height: size, width: size };\n return (\n <span aria-hidden {...stylex.props(swatchStyles.box)} style={boxStyle}>\n <span {...stylex.props(swatchStyles.fill)} style={{ background: color || 'transparent' }} />\n {!color && <span {...stylex.props(swatchStyles.slash)} />}\n </span>\n );\n};\n\nexport default Swatch;\n"],"mappings":";;;;AAQA,MAAM,UAAU,EACd,OACA,QACA,WACiB;CACjB,MAAM,WAA0B;EAC9B,cAAc;EACd,QAAQ;EACR,OAAO;CACT;CACA,OAAO,qBAAC,QAAD;EAAM,eAAA;EAAY,GAAI,OAAO,MAAM,aAAa,GAAG;EAAG,OAAO;EAA7D,UAAA,CACH,oBAAC,QAAD;GAAM,GAAI,OAAO,MAAM,aAAa,IAAI;GAAG,OAAO,EAClD,YAAY,SAAS,cACvB;EAAI,CAAA,GACD,CAAC,SAAS,oBAAC,QAAD,EAAM,GAAI,OAAO,MAAM,aAAa,KAAK,EAAI,CAAA,CACpD;;AACV"}
@@ -0,0 +1,66 @@
1
+ "use client";
2
+ import { focusRing } from "../styles/stylex/focusRing.mjs";
3
+ import { styles, swatchStyles } from "./style.mjs";
4
+ import { useRecentColors } from "./recent.mjs";
5
+ import { useState } from "react";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ import * as stylex from "@stylexjs/stylex";
8
+ //#region src/ColorPicker/Swatches.tsx
9
+ const Swatches = ({ current, labels, onPick, presets = [], recent }) => {
10
+ const recentColors = useRecentColors();
11
+ const [tab, setTab] = useState("presets");
12
+ const shownRecent = recent ? recentColors : [];
13
+ const hasPresets = presets.length > 0;
14
+ const hasRecent = shownRecent.length > 0;
15
+ if (!hasPresets && !hasRecent) return null;
16
+ const tabbed = hasPresets && hasRecent;
17
+ const active = tabbed ? tab : hasPresets ? "presets" : "recent";
18
+ const colors = active === "recent" ? shownRecent : presets;
19
+ const currentKey = current.toLowerCase();
20
+ return /* @__PURE__ */ jsxs("div", {
21
+ ...stylex.props(styles.swatchSection),
22
+ children: [tabbed ? /* @__PURE__ */ jsx("div", {
23
+ "aria-label": labels.swatches,
24
+ role: "tablist",
25
+ ...stylex.props(styles.swatchHeader),
26
+ children: ["presets", "recent"].map((item) => /* @__PURE__ */ jsx("button", {
27
+ "aria-selected": active === item,
28
+ role: "tab",
29
+ type: "button",
30
+ ...stylex.props(focusRing.info, styles.swatchTab),
31
+ onClick: () => setTab(item),
32
+ children: labels[item]
33
+ }, item))
34
+ }) : /* @__PURE__ */ jsx("div", {
35
+ ...stylex.props(styles.swatchHeader),
36
+ children: /* @__PURE__ */ jsx("span", {
37
+ ...stylex.props(styles.swatchLabel),
38
+ children: labels[active]
39
+ })
40
+ }), /* @__PURE__ */ jsx("div", {
41
+ "aria-label": labels[active],
42
+ role: "group",
43
+ ...stylex.props(styles.swatchGrid),
44
+ children: colors.map((color) => {
45
+ const key = color.toLowerCase();
46
+ const selected = key === currentKey || key === currentKey.slice(0, 7);
47
+ return /* @__PURE__ */ jsx("button", {
48
+ "aria-label": color,
49
+ "aria-pressed": selected,
50
+ type: "button",
51
+ ...stylex.props(focusRing.info, styles.swatchItem),
52
+ style: { color },
53
+ onClick: () => onPick(color),
54
+ children: /* @__PURE__ */ jsx("span", {
55
+ ...stylex.props(swatchStyles.fill),
56
+ style: { background: color }
57
+ })
58
+ }, color);
59
+ })
60
+ })]
61
+ });
62
+ };
63
+ //#endregion
64
+ export { Swatches as default };
65
+
66
+ //# sourceMappingURL=Swatches.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Swatches.mjs","names":[],"sources":["../../src/ColorPicker/Swatches.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { useState } from 'react';\n\nimport { focusRing } from '@/styles/stylex/focusRing';\n\nimport { useRecentColors } from './recent';\nimport { styles, swatchStyles } from './style';\n\ntype Tab = 'presets' | 'recent';\n\nexport interface SwatchesProps {\n current: string;\n labels: { presets: string; recent: string; swatches: string };\n onPick: (color: string) => void;\n presets?: string[];\n recent: boolean;\n}\n\nconst Swatches = ({ current, labels, onPick, presets = [], recent }: SwatchesProps) => {\n const recentColors = useRecentColors();\n const [tab, setTab] = useState<Tab>('presets');\n\n const shownRecent = recent ? recentColors : [];\n const hasPresets = presets.length > 0;\n const hasRecent = shownRecent.length > 0;\n if (!hasPresets && !hasRecent) return null;\n\n const tabbed = hasPresets && hasRecent;\n const active: Tab = tabbed ? tab : hasPresets ? 'presets' : 'recent';\n const colors = active === 'recent' ? shownRecent : presets;\n const currentKey = current.toLowerCase();\n\n return (\n <div {...stylex.props(styles.swatchSection)}>\n {tabbed ? (\n <div aria-label={labels.swatches} role=\"tablist\" {...stylex.props(styles.swatchHeader)}>\n {(['presets', 'recent'] as const).map((item) => (\n <button\n aria-selected={active === item}\n key={item}\n role=\"tab\"\n type=\"button\"\n {...stylex.props(focusRing.info, styles.swatchTab)}\n onClick={() => setTab(item)}\n >\n {labels[item]}\n </button>\n ))}\n </div>\n ) : (\n <div {...stylex.props(styles.swatchHeader)}>\n <span {...stylex.props(styles.swatchLabel)}>{labels[active]}</span>\n </div>\n )}\n <div aria-label={labels[active]} role=\"group\" {...stylex.props(styles.swatchGrid)}>\n {colors.map((color) => {\n const key = color.toLowerCase();\n const selected = key === currentKey || key === currentKey.slice(0, 7);\n return (\n <button\n aria-label={color}\n aria-pressed={selected}\n key={color}\n type=\"button\"\n {...stylex.props(focusRing.info, styles.swatchItem)}\n style={{ color }}\n onClick={() => onPick(color)}\n >\n <span {...stylex.props(swatchStyles.fill)} style={{ background: color }} />\n </button>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default Swatches;\n"],"mappings":";;;;;;;;AAmBA,MAAM,YAAY,EAChB,SACA,QACA,QACA,UAAU,CAAC,GACX,aACmB;CACnB,MAAM,eAAe,gBAAgB;CACrC,MAAM,CAAC,KAAK,UAAU,SAAc,SAAS;CAC7C,MAAM,cAAc,SAAS,eAAe,CAAC;CAC7C,MAAM,aAAa,QAAQ,SAAS;CACpC,MAAM,YAAY,YAAY,SAAS;CACvC,IAAI,CAAC,cAAc,CAAC,WAAW,OAAO;CACtC,MAAM,SAAS,cAAc;CAC7B,MAAM,SAAc,SAAS,MAAM,aAAa,YAAY;CAC5D,MAAM,SAAS,WAAW,WAAW,cAAc;CACnD,MAAM,aAAa,QAAQ,YAAY;CACvC,OAAO,qBAAC,OAAD;EAAK,GAAI,OAAO,MAAM,OAAO,aAAa;EAA1C,UAAA,CACF,SAAS,oBAAC,OAAD;GAAK,cAAY,OAAO;GAAU,MAAK;GAAU,GAAI,OAAO,MAAM,OAAO,YAAY;GACzF,UAAA,CAAC,WAAW,QAAQ,CAAC,CAAW,KAAI,SAAQ,oBAAC,UAAD;IAAQ,iBAAe,WAAW;IAAiB,MAAK;IAAM,MAAK;IAAS,GAAI,OAAO,MAAM,UAAU,MAAM,OAAO,SAAS;IAAG,eAAe,OAAO,IAAI;IACnM,UAAA,OAAO;GACF,GAFiF,IAEjF,CAAC;EACR,CAAA,IAAI,oBAAC,OAAD;GAAK,GAAI,OAAO,MAAM,OAAO,YAAY;GAChD,UAAA,oBAAC,QAAD;IAAM,GAAI,OAAO,MAAM,OAAO,WAAW;IAAI,UAAA,OAAO;GAAc,CAAA;EAC/D,CAAA,GACP,oBAAC,OAAD;GAAK,cAAY,OAAO;GAAS,MAAK;GAAQ,GAAI,OAAO,MAAM,OAAO,UAAU;GAC7E,UAAA,OAAO,KAAI,UAAS;IACrB,MAAM,MAAM,MAAM,YAAY;IAC9B,MAAM,WAAW,QAAQ,cAAc,QAAQ,WAAW,MAAM,GAAG,CAAC;IACpE,OAAO,oBAAC,UAAD;KAAQ,cAAY;KAAO,gBAAc;KAAsB,MAAK;KAAS,GAAI,OAAO,MAAM,UAAU,MAAM,OAAO,UAAU;KAAG,OAAO,EAC9I,MACF;KAAG,eAAe,OAAO,KAAK;KACxB,UAAA,oBAAC,QAAD;MAAM,GAAI,OAAO,MAAM,aAAa,IAAI;MAAG,OAAO,EACpD,YAAY,MACd;KAAI,CAAA;IACM,GANmD,KAMnD;GACd,CAAC;EACI,CAAA,CACF;;AACT"}
@@ -0,0 +1,112 @@
1
+ "use client";
2
+ import { styleProps } from "../styles/stylex/props.mjs";
3
+ import { focusRing } from "../styles/stylex/focusRing.mjs";
4
+ import { useThemeMode } from "../styles/theme/scope.mjs";
5
+ import { inputRootStyles } from "../Input/style.mjs";
6
+ import { triggerStyles } from "./style.mjs";
7
+ import Swatch from "./Swatch.mjs";
8
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
+ import * as stylex from "@stylexjs/stylex";
10
+ import { ChevronDown } from "lucide-react";
11
+ //#region src/ColorPicker/Trigger.tsx
12
+ const SWATCH_TILE = {
13
+ large: 32,
14
+ middle: 28,
15
+ small: 24
16
+ };
17
+ const SWATCH_FIELD = {
18
+ large: 20,
19
+ middle: 16,
20
+ small: 14
21
+ };
22
+ const SWATCH_CHIP = {
23
+ large: 26,
24
+ middle: 20,
25
+ small: 16
26
+ };
27
+ const fieldSize = {
28
+ large: triggerStyles.fieldLarge,
29
+ middle: triggerStyles.fieldMiddle,
30
+ small: triggerStyles.fieldSmall
31
+ };
32
+ const chipSize = {
33
+ large: triggerStyles.chipLarge,
34
+ middle: triggerStyles.chipMiddle,
35
+ small: triggerStyles.chipSmall
36
+ };
37
+ const ColorTrigger = ({ alpha, className, emptyLabel, hex, label, size, style, variant, ...rest }) => {
38
+ const { isDarkMode } = useThemeMode();
39
+ const empty = !hex;
40
+ const common = {
41
+ "aria-label": label,
42
+ "type": "button",
43
+ ...rest
44
+ };
45
+ if (variant === "swatch") {
46
+ const tile = SWATCH_TILE[size];
47
+ return /* @__PURE__ */ jsx("button", {
48
+ ...common,
49
+ ...styleProps([focusRing.info, triggerStyles.swatch], className, {
50
+ height: tile,
51
+ width: tile,
52
+ ...style
53
+ }),
54
+ children: /* @__PURE__ */ jsx(Swatch, {
55
+ color: hex,
56
+ radius: 8,
57
+ size: tile
58
+ })
59
+ });
60
+ }
61
+ const text = empty ? /* @__PURE__ */ jsx("span", {
62
+ ...stylex.props(triggerStyles.empty),
63
+ children: emptyLabel
64
+ }) : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("span", {
65
+ ...stylex.props(triggerStyles.text),
66
+ children: hex.slice(0, 7).toUpperCase()
67
+ }), alpha !== void 0 && /* @__PURE__ */ jsxs("span", {
68
+ ...stylex.props(triggerStyles.text, triggerStyles.alpha),
69
+ children: [Math.round(alpha * 100), "%"]
70
+ })] });
71
+ if (variant === "chip") return /* @__PURE__ */ jsxs("button", {
72
+ ...common,
73
+ ...styleProps([
74
+ focusRing.info,
75
+ triggerStyles.chip,
76
+ chipSize[size]
77
+ ], className, style),
78
+ children: [/* @__PURE__ */ jsx(Swatch, {
79
+ color: hex,
80
+ radius: "50%",
81
+ size: SWATCH_CHIP[size]
82
+ }), text]
83
+ });
84
+ const fieldSwatch = SWATCH_FIELD[size];
85
+ return /* @__PURE__ */ jsxs("button", {
86
+ ...common,
87
+ ...styleProps([
88
+ ...inputRootStyles({
89
+ size,
90
+ variant: isDarkMode ? "filled" : "outlined"
91
+ }),
92
+ triggerStyles.field,
93
+ fieldSize[size]
94
+ ], className, style),
95
+ children: [
96
+ /* @__PURE__ */ jsx(Swatch, {
97
+ color: hex,
98
+ radius: Math.round(fieldSwatch / 4),
99
+ size: fieldSwatch
100
+ }),
101
+ text,
102
+ /* @__PURE__ */ jsx(ChevronDown, {
103
+ ...stylex.props(triggerStyles.caret),
104
+ size: 14
105
+ })
106
+ ]
107
+ });
108
+ };
109
+ //#endregion
110
+ export { ColorTrigger as default };
111
+
112
+ //# sourceMappingURL=Trigger.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Trigger.mjs","names":[],"sources":["../../src/ColorPicker/Trigger.tsx"],"sourcesContent":["'use client';\n\nimport * as stylex from '@stylexjs/stylex';\nimport { ChevronDown } from 'lucide-react';\nimport type { ComponentPropsWithRef } from 'react';\n\nimport { inputRootStyles } from '@/Input/style';\nimport type { InputSize } from '@/Input/type';\nimport { focusRing } from '@/styles/stylex/focusRing';\nimport { styleProps } from '@/styles/stylex/props';\nimport { useThemeMode } from '@/styles/theme/scope';\n\nimport { triggerStyles } from './style';\nimport Swatch from './Swatch';\nimport type { ColorPickerTrigger } from './type';\n\nconst SWATCH_TILE: Record<InputSize, number> = { large: 32, middle: 28, small: 24 };\nconst SWATCH_FIELD: Record<InputSize, number> = { large: 20, middle: 16, small: 14 };\nconst SWATCH_CHIP: Record<InputSize, number> = { large: 26, middle: 20, small: 16 };\n\nconst fieldSize = {\n large: triggerStyles.fieldLarge,\n middle: triggerStyles.fieldMiddle,\n small: triggerStyles.fieldSmall,\n};\nconst chipSize = {\n large: triggerStyles.chipLarge,\n middle: triggerStyles.chipMiddle,\n small: triggerStyles.chipSmall,\n};\n\nexport interface ColorTriggerProps extends Omit<ComponentPropsWithRef<'button'>, 'children'> {\n alpha?: number;\n emptyLabel: string;\n hex: string;\n label: string;\n size: InputSize;\n variant: ColorPickerTrigger;\n}\n\nconst ColorTrigger = ({\n alpha,\n className,\n emptyLabel,\n hex,\n label,\n size,\n style,\n variant,\n ...rest\n}: ColorTriggerProps) => {\n const { isDarkMode } = useThemeMode();\n const empty = !hex;\n const common = { 'aria-label': label, 'type': 'button' as const, ...rest };\n\n if (variant === 'swatch') {\n const tile = SWATCH_TILE[size];\n return (\n <button\n {...common}\n {...styleProps([focusRing.info, triggerStyles.swatch], className, {\n height: tile,\n width: tile,\n ...style,\n })}\n >\n <Swatch color={hex} radius={8} size={tile} />\n </button>\n );\n }\n\n const text = empty ? (\n <span {...stylex.props(triggerStyles.empty)}>{emptyLabel}</span>\n ) : (\n <>\n <span {...stylex.props(triggerStyles.text)}>{hex.slice(0, 7).toUpperCase()}</span>\n {alpha !== undefined && (\n <span {...stylex.props(triggerStyles.text, triggerStyles.alpha)}>\n {Math.round(alpha * 100)}%\n </span>\n )}\n </>\n );\n\n if (variant === 'chip') {\n return (\n <button\n {...common}\n {...styleProps([focusRing.info, triggerStyles.chip, chipSize[size]], className, style)}\n >\n <Swatch color={hex} radius=\"50%\" size={SWATCH_CHIP[size]} />\n {text}\n </button>\n );\n }\n\n const fieldSwatch = SWATCH_FIELD[size];\n return (\n <button\n {...common}\n {...styleProps(\n [\n ...inputRootStyles({ size, variant: isDarkMode ? 'filled' : 'outlined' }),\n triggerStyles.field,\n fieldSize[size],\n ],\n className,\n style,\n )}\n >\n <Swatch color={hex} radius={Math.round(fieldSwatch / 4)} size={fieldSwatch} />\n {text}\n <ChevronDown {...stylex.props(triggerStyles.caret)} size={14} />\n </button>\n );\n};\n\nexport default ColorTrigger;\n"],"mappings":";;;;;;;;;;;AAaA,MAAM,cAAyC;CAC7C,OAAO;CACP,QAAQ;CACR,OAAO;AACT;AACA,MAAM,eAA0C;CAC9C,OAAO;CACP,QAAQ;CACR,OAAO;AACT;AACA,MAAM,cAAyC;CAC7C,OAAO;CACP,QAAQ;CACR,OAAO;AACT;AACA,MAAM,YAAY;CAChB,OAAO,cAAc;CACrB,QAAQ,cAAc;CACtB,OAAO,cAAc;AACvB;AACA,MAAM,WAAW;CACf,OAAO,cAAc;CACrB,QAAQ,cAAc;CACtB,OAAO,cAAc;AACvB;AASA,MAAM,gBAAgB,EACpB,OACA,WACA,YACA,KACA,OACA,MACA,OACA,SACA,GAAG,WACoB;CACvB,MAAM,EACJ,eACE,aAAa;CACjB,MAAM,QAAQ,CAAC;CACf,MAAM,SAAS;EACb,cAAc;EACd,QAAQ;EACR,GAAG;CACL;CACA,IAAI,YAAY,UAAU;EACxB,MAAM,OAAO,YAAY;EACzB,OAAO,oBAAC,UAAD;GAAQ,GAAI;GAAQ,GAAI,WAAW,CAAC,UAAU,MAAM,cAAc,MAAM,GAAG,WAAW;IAC3F,QAAQ;IACR,OAAO;IACP,GAAG;GACL,CAAC;GACG,UAAA,oBAAC,QAAD;IAAQ,OAAO;IAAK,QAAQ;IAAG,MAAM;GAAO,CAAA;EACtC,CAAA;CACZ;CACA,MAAM,OAAO,QAAQ,oBAAC,QAAD;EAAM,GAAI,OAAO,MAAM,cAAc,KAAK;EAAI,UAAA;CAAiB,CAAA,IAAI,qBAAA,UAAA,EAAA,UAAA,CACpF,oBAAC,QAAD;EAAM,GAAI,OAAO,MAAM,cAAc,IAAI;EAAI,UAAA,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,YAAY;CAAQ,CAAA,GAChF,UAAU,KAAA,KAAa,qBAAC,QAAD;EAAM,GAAI,OAAO,MAAM,cAAc,MAAM,cAAc,KAAK;EAA9D,UAAA,CACnB,KAAK,MAAM,QAAQ,GAAG,GAAE,GACrB;CACR,CAAA,CAAA,EAAA,CAAA;CACJ,IAAI,YAAY,QACd,OAAO,qBAAC,UAAD;EAAQ,GAAI;EAAQ,GAAI,WAAW;GAAC,UAAU;GAAM,cAAc;GAAM,SAAS;EAAK,GAAG,WAAW,KAAK;EAAzG,UAAA,CACH,oBAAC,QAAD;GAAQ,OAAO;GAAK,QAAO;GAAM,MAAM,YAAY;EAAQ,CAAA,GAC1D,IACK;;CAEZ,MAAM,cAAc,aAAa;CACjC,OAAO,qBAAC,UAAD;EAAQ,GAAI;EAAQ,GAAI,WAAW;GAAC,GAAG,gBAAgB;IAC5D;IACA,SAAS,aAAa,WAAW;GACnC,CAAC;GAAG,cAAc;GAAO,UAAU;EAAK,GAAG,WAAW,KAAK;EAHpD,UAAA;GAIH,oBAAC,QAAD;IAAQ,OAAO;IAAK,QAAQ,KAAK,MAAM,cAAc,CAAC;IAAG,MAAM;GAAc,CAAA;GAC5E;GACD,oBAAC,aAAD;IAAa,GAAI,OAAO,MAAM,cAAc,KAAK;IAAG,MAAM;GAAK,CAAA;EACzD;;AACZ"}
@@ -22,7 +22,31 @@ const normalizeHexInput = (input) => {
22
22
  if (!/^([\da-f]{3}|[\da-f]{6}|[\da-f]{8})$/i.test(raw)) return null;
23
23
  return `#${raw.toLowerCase()}`;
24
24
  };
25
+ const toRgb = ({ h, s, v }) => {
26
+ const [r, g, b] = chroma.hsv(h, s, v).rgb();
27
+ return [
28
+ r,
29
+ g,
30
+ b
31
+ ];
32
+ };
33
+ const toHsl = (hsva) => {
34
+ const [h, s, l] = chroma.hsv(hsva.h, hsva.s, hsva.v).hsl();
35
+ return [
36
+ Math.round(Number.isNaN(h) ? hsva.h : h),
37
+ Math.round(s * 100),
38
+ Math.round(l * 100)
39
+ ];
40
+ };
41
+ const fromRgb = ([r, g, b], current) => ({
42
+ ...parseColor(chroma.rgb(r, g, b).hex(), current.h),
43
+ a: current.a
44
+ });
45
+ const fromHsl = ([h, s, l], current) => ({
46
+ ...parseColor(chroma.hsl(h, s / 100, l / 100).hex(), h),
47
+ a: current.a
48
+ });
25
49
  //#endregion
26
- export { formatColor, normalizeHexInput, parseColor };
50
+ export { formatColor, fromHsl, fromRgb, normalizeHexInput, parseColor, toHsl, toRgb };
27
51
 
28
52
  //# sourceMappingURL=color.mjs.map