@cube-dev/ui-kit 0.0.0-canary-e76eb3e → 0.0.0-canary-01fea9d

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 (595) hide show
  1. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.js +1 -1
  16. package/dist/components/actions/Action/Action.js +1 -1
  17. package/dist/components/actions/Banner/Banner.js +1 -1
  18. package/dist/components/actions/Button/Button.js +1 -1
  19. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  21. package/dist/components/actions/ButtonSplit/context.js +1 -1
  22. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  23. package/dist/components/actions/CommandMenu/styled.js +1 -1
  24. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  25. package/dist/components/actions/ItemActionContext.js +1 -1
  26. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  27. package/dist/components/actions/Link/Link.js +1 -1
  28. package/dist/components/actions/Menu/Menu.js +1 -1
  29. package/dist/components/actions/Menu/MenuItem.js +1 -1
  30. package/dist/components/actions/Menu/MenuSection.js +1 -1
  31. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  32. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  34. package/dist/components/actions/Menu/context.js +1 -1
  35. package/dist/components/actions/Menu/styled.js +1 -1
  36. package/dist/components/actions/index.js +1 -1
  37. package/dist/components/actions/use-action.js +1 -1
  38. package/dist/components/actions/use-anchored-menu.js +1 -1
  39. package/dist/components/actions/use-context-menu.js +44 -42
  40. package/dist/components/actions/use-context-menu.js.map +1 -1
  41. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  42. package/dist/components/content/Alert/Alert.js +1 -1
  43. package/dist/components/content/Alert/use-alert.js +1 -1
  44. package/dist/components/content/Avatar/Avatar.js +1 -1
  45. package/dist/components/content/Badge/Badge.js +1 -1
  46. package/dist/components/content/Card/Card.js +1 -1
  47. package/dist/components/content/Content.js +1 -1
  48. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  49. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  50. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  51. package/dist/components/content/Divider.js +1 -1
  52. package/dist/components/content/Footer.js +1 -1
  53. package/dist/components/content/Header.js +1 -1
  54. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  55. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  56. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  57. package/dist/components/content/Item/Item.js +1 -1
  58. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  59. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  60. package/dist/components/content/Layout/GridLayout.js +1 -1
  61. package/dist/components/content/Layout/Layout.js +1 -1
  62. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  63. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  64. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  65. package/dist/components/content/Layout/LayoutContent.js +1 -1
  66. package/dist/components/content/Layout/LayoutContext.js +1 -1
  67. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  68. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  69. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  70. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  71. package/dist/components/content/Layout/LayoutPane.js +1 -1
  72. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  73. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  74. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  75. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  76. package/dist/components/content/Layout/index.js +1 -1
  77. package/dist/components/content/Layout/utils.js +1 -1
  78. package/dist/components/content/Paragraph.js +1 -1
  79. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  80. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  81. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  82. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  83. package/dist/components/content/Result/Result.js +1 -1
  84. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  85. package/dist/components/content/Tag/Tag.js +2 -2
  86. package/dist/components/content/Tag/Tag.js.map +1 -1
  87. package/dist/components/content/Text.d.ts +14 -14
  88. package/dist/components/content/Text.js +1 -1
  89. package/dist/components/content/TextItem/TextItem.js +1 -1
  90. package/dist/components/content/Title.js +1 -1
  91. package/dist/components/content/Tree/Tree.js +1 -1
  92. package/dist/components/content/Tree/TreeNode.js +1 -1
  93. package/dist/components/content/Tree/styled.js +1 -1
  94. package/dist/components/content/Tree/tree-index.js +1 -1
  95. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  96. package/dist/components/content/Tree/use-load-data.js +1 -1
  97. package/dist/components/content/highlightText.js +1 -1
  98. package/dist/components/content/use-auto-tooltip.js +1 -1
  99. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  100. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  101. package/dist/components/fields/Checkbox/context.js +1 -1
  102. package/dist/components/fields/ColorInput/ColorInput.d.ts +67 -0
  103. package/dist/components/fields/ColorInput/ColorInput.js +228 -0
  104. package/dist/components/fields/ColorInput/ColorInput.js.map +1 -0
  105. package/dist/components/fields/ColorInput/index.d.ts +2 -0
  106. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +34 -37
  107. package/dist/components/fields/ColorPicker/ColorPicker.js +112 -184
  108. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  109. package/dist/components/fields/ColorPicker/index.d.ts +1 -3
  110. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.d.ts +50 -0
  111. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +251 -0
  112. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -0
  113. package/dist/components/fields/ColorSwatchGroup/index.d.ts +2 -0
  114. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  115. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  116. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  117. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  118. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  119. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  120. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  121. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  122. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  123. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  124. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  125. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  126. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  127. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  128. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  129. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  130. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  131. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  132. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  133. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  134. package/dist/components/fields/DatePicker/period.js +1 -1
  135. package/dist/components/fields/DatePicker/props.js +1 -1
  136. package/dist/components/fields/DatePicker/utils.js +1 -1
  137. package/dist/components/fields/FileInput/FileInput.js +1 -1
  138. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  139. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  140. package/dist/components/fields/Input/Input.js +2 -2
  141. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  142. package/dist/components/fields/ListBox/ListBox.js +1 -1
  143. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  144. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  145. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  146. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  147. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  148. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  149. package/dist/components/fields/Picker/Picker.js +1 -1
  150. package/dist/components/fields/RadioGroup/Radio.d.ts +2 -2
  151. package/dist/components/fields/RadioGroup/Radio.js +4 -4
  152. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  153. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  154. package/dist/components/fields/RadioGroup/context.js +1 -1
  155. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  156. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  157. package/dist/components/fields/Select/Select.js +1 -1
  158. package/dist/components/fields/Slider/Gradation.js +1 -1
  159. package/dist/components/fields/Slider/HueSlider.js +1 -1
  160. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  161. package/dist/components/fields/Slider/Slider.js +1 -1
  162. package/dist/components/fields/Slider/SliderBase.js +1 -1
  163. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  164. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  165. package/dist/components/fields/Slider/elements.js +1 -1
  166. package/dist/components/fields/Slider/index.js +1 -1
  167. package/dist/components/fields/Switch/Switch.js +1 -1
  168. package/dist/components/fields/TextArea/TextArea.js +1 -1
  169. package/dist/components/fields/TextInput/TextInput.js +1 -1
  170. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  171. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  172. package/dist/components/fields/{ColorPicker/ColorPickerPanel.js → color/ColorPanel.js} +13 -11
  173. package/dist/components/fields/color/ColorPanel.js.map +1 -0
  174. package/dist/components/fields/color/ColorSwatch.d.ts +22 -0
  175. package/dist/components/fields/color/ColorSwatch.js +58 -0
  176. package/dist/components/fields/color/ColorSwatch.js.map +1 -0
  177. package/dist/components/fields/{ColorPicker → color}/channels.d.ts +1 -1
  178. package/dist/components/fields/{ColorPicker → color}/channels.js +2 -2
  179. package/dist/components/fields/color/channels.js.map +1 -0
  180. package/dist/components/fields/color/color.d.ts +21 -0
  181. package/dist/components/fields/{ColorPicker → color}/color.js +2 -2
  182. package/dist/components/fields/color/color.js.map +1 -0
  183. package/dist/components/fields/color/context.js +20 -0
  184. package/dist/components/fields/color/context.js.map +1 -0
  185. package/dist/components/fields/color/index.d.ts +4 -0
  186. package/dist/components/fields/index.d.ts +9 -3
  187. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  188. package/dist/components/form/Form/Field.js +1 -1
  189. package/dist/components/form/Form/Form.js +1 -1
  190. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  191. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  192. package/dist/components/form/Form/SubmitError.js +1 -1
  193. package/dist/components/form/Form/index.js +1 -1
  194. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  195. package/dist/components/form/Form/use-field/use-field.js +1 -1
  196. package/dist/components/form/Form/use-form.js +1 -1
  197. package/dist/components/form/Form/validation.js +1 -1
  198. package/dist/components/form/Label.js +1 -1
  199. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  200. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  201. package/dist/components/form/validation/use-validation-props.js +1 -1
  202. package/dist/components/form/wrapper.js +1 -1
  203. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  204. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  205. package/dist/components/layout/Board/Board.js +1 -1
  206. package/dist/components/layout/Board/BoardProvider.js +1 -1
  207. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  208. package/dist/components/layout/Board/Widget.js +1 -1
  209. package/dist/components/layout/Board/WidgetHost.js +1 -1
  210. package/dist/components/layout/Board/board-context.js +1 -1
  211. package/dist/components/layout/Board/board-store.js +1 -1
  212. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  213. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  214. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  215. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  216. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  217. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  218. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  219. package/dist/components/layout/Board/index.js +1 -1
  220. package/dist/components/layout/Board/responsive-utils.js +1 -1
  221. package/dist/components/layout/Board/use-board-layout.js +1 -1
  222. package/dist/components/layout/Board/use-board-registry.js +1 -1
  223. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  224. package/dist/components/layout/Board/use-board-selection.js +1 -1
  225. package/dist/components/layout/Flex.js +1 -1
  226. package/dist/components/layout/Flow.js +1 -1
  227. package/dist/components/layout/Grid.js +1 -1
  228. package/dist/components/layout/Panel.js +1 -1
  229. package/dist/components/layout/Prefix.js +1 -1
  230. package/dist/components/layout/ResizablePanel.js +1 -1
  231. package/dist/components/layout/Space.js +1 -1
  232. package/dist/components/layout/Suffix.js +1 -1
  233. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  234. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  235. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  236. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  237. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  238. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  239. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  240. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  241. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  242. package/dist/components/navigation/Tabs/styled.js +1 -1
  243. package/dist/components/navigation/Tabs/types.js +1 -1
  244. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  245. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  246. package/dist/components/navigation/index.d.ts +1 -5
  247. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  248. package/dist/components/other/Calendar/Calendar.js +1 -1
  249. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  250. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  251. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  252. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  253. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  254. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  255. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  256. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  257. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  258. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  259. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  260. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  261. package/dist/components/overlays/Dialog/context.js +1 -1
  262. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  263. package/dist/components/overlays/Modal/Modal.js +1 -1
  264. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  265. package/dist/components/overlays/Modal/Overlay.js +1 -1
  266. package/dist/components/overlays/Modal/Popover.js +1 -1
  267. package/dist/components/overlays/Modal/Tray.js +1 -1
  268. package/dist/components/overlays/Modal/Underlay.js +1 -1
  269. package/dist/components/overlays/Notifications/Notification.js +1 -1
  270. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  271. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  272. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  273. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  274. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  275. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  276. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  277. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  278. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  279. package/dist/components/overlays/Notifications/index.js +1 -1
  280. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  281. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  282. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  283. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  284. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  285. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  286. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  287. package/dist/components/overlays/Toast/index.js +1 -1
  288. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  289. package/dist/components/overlays/Toast/useToast.js +1 -1
  290. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  291. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  292. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  293. package/dist/components/overlays/Tooltip/context.js +1 -1
  294. package/dist/components/portal/Portal.js +1 -1
  295. package/dist/components/portal/PortalProvider.js +1 -1
  296. package/dist/components/portal/usePortal.js +1 -1
  297. package/dist/components/shared/DraggableCollection.js +8 -24
  298. package/dist/components/shared/DraggableCollection.js.map +1 -1
  299. package/dist/components/shared/InvalidIcon.js +1 -1
  300. package/dist/components/shared/ValidIcon.js +1 -1
  301. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  302. package/dist/components/status/Spin/Cube.js +1 -1
  303. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  304. package/dist/components/status/Spin/Spin.js +1 -1
  305. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  306. package/dist/data/item-themes.js +1 -1
  307. package/dist/data/themes.js +1 -1
  308. package/dist/eslint-plugin/defaults.generated.js +1 -199
  309. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  310. package/dist/eslint-plugin/index.js +1 -1
  311. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  312. package/dist/i18n/I18nProvider.js +1 -1
  313. package/dist/i18n/createFormatter.js +1 -1
  314. package/dist/i18n/index.js +1 -1
  315. package/dist/i18n/instance.js +1 -1
  316. package/dist/i18n/locales/de-DE/uikit.js +1 -35
  317. package/dist/i18n/locales/en-US/uikit.js +1 -35
  318. package/dist/i18n/locales/en-US/uikit.json.d.ts +1 -40
  319. package/dist/i18n/locales/es-ES/uikit.js +1 -35
  320. package/dist/i18n/locales/es-MX/uikit.js +1 -35
  321. package/dist/i18n/locales/fr-FR/uikit.js +1 -35
  322. package/dist/i18n/locales/it-IT/uikit.js +1 -35
  323. package/dist/i18n/locales/ja-JP/uikit.js +1 -35
  324. package/dist/i18n/locales/nb-NO/uikit.js +1 -35
  325. package/dist/i18n/locales/pt-BR/uikit.js +1 -35
  326. package/dist/i18n/locales/pt-PT/uikit.js +1 -35
  327. package/dist/i18n/locales/sv-SE/uikit.js +1 -35
  328. package/dist/i18n/locales/vi-VN/uikit.js +1 -35
  329. package/dist/i18n/locales.js +1 -1
  330. package/dist/i18n/useFormatter.js +1 -1
  331. package/dist/i18n/useI18n.js +1 -1
  332. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  333. package/dist/icons/AdjustmentsIcon.js +1 -1
  334. package/dist/icons/AiIcon.js +1 -1
  335. package/dist/icons/AreaChartIcon.js +1 -1
  336. package/dist/icons/BackwardIcon.js +1 -1
  337. package/dist/icons/BarChartIcon.js +1 -1
  338. package/dist/icons/BellFilledIcon.js +1 -1
  339. package/dist/icons/BellIcon.js +1 -1
  340. package/dist/icons/BooleanIcon.js +1 -1
  341. package/dist/icons/CalendarEditIcon.js +1 -1
  342. package/dist/icons/CalendarIcon.js +1 -1
  343. package/dist/icons/CaretDownIcon.js +1 -1
  344. package/dist/icons/CaretUpIcon.js +1 -1
  345. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  346. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  347. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  348. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  349. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  350. package/dist/icons/ChartBarLineIcon.js +1 -1
  351. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  352. package/dist/icons/ChartBarStackedIcon.js +1 -1
  353. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  354. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  355. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  356. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  357. package/dist/icons/ChartBubbleIcon.js +1 -1
  358. package/dist/icons/ChartDonut2Icon.js +1 -1
  359. package/dist/icons/ChartFunnelIcon.js +1 -1
  360. package/dist/icons/ChartHeatmapIcon.js +1 -1
  361. package/dist/icons/ChartKPIIcon.js +1 -1
  362. package/dist/icons/ChartPie2Icon.js +1 -1
  363. package/dist/icons/ChartScatterIcon.js +1 -1
  364. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  365. package/dist/icons/CheckCircleIcon.js +1 -1
  366. package/dist/icons/CheckIcon.js +1 -1
  367. package/dist/icons/CircleFilledIcon.js +1 -1
  368. package/dist/icons/ClearIcon.js +1 -1
  369. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  370. package/dist/icons/CloseCircleIcon.js +1 -1
  371. package/dist/icons/CloseIcon.js +1 -1
  372. package/dist/icons/CodeIcon.js +1 -1
  373. package/dist/icons/ColumnTotalIcon.js +1 -1
  374. package/dist/icons/CopyIcon.js +1 -1
  375. package/dist/icons/CountIcon.js +1 -1
  376. package/dist/icons/CubeIcon.js +1 -1
  377. package/dist/icons/CubePauseIcon.js +1 -1
  378. package/dist/icons/CubePlayIcon.js +1 -1
  379. package/dist/icons/CurrencyDollarIcon.js +1 -1
  380. package/dist/icons/DangerIcon.js +1 -1
  381. package/dist/icons/DashboardIcon.js +1 -1
  382. package/dist/icons/DatabaseIcon.js +1 -1
  383. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  384. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  385. package/dist/icons/DirectionIcon.js +1 -1
  386. package/dist/icons/DonutIcon.js +1 -1
  387. package/dist/icons/DownIcon.js +1 -1
  388. package/dist/icons/EditIcon.js +1 -1
  389. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  390. package/dist/icons/ExclamationCircleIcon.js +1 -1
  391. package/dist/icons/ExclamationIcon.js +1 -1
  392. package/dist/icons/EyeIcon.js +1 -1
  393. package/dist/icons/EyeInvisibleIcon.js +1 -1
  394. package/dist/icons/FilterIcon.js +1 -1
  395. package/dist/icons/FolderFilledIcon.js +1 -1
  396. package/dist/icons/FolderIcon.js +1 -1
  397. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  398. package/dist/icons/FolderOpenIcon.js +1 -1
  399. package/dist/icons/ForwardIcon.js +1 -1
  400. package/dist/icons/GripVerticalIcon.js +1 -1
  401. package/dist/icons/HierarchyIcon.js +1 -1
  402. package/dist/icons/HierarchyOpenIcon.js +1 -1
  403. package/dist/icons/Icon.js +1 -1
  404. package/dist/icons/InfoCircleIcon.js +1 -1
  405. package/dist/icons/InfoIcon.js +1 -1
  406. package/dist/icons/KeyIcon.js +1 -1
  407. package/dist/icons/LeftIcon.js +1 -1
  408. package/dist/icons/LineChartIcon.js +1 -1
  409. package/dist/icons/LoadingIcon.js +1 -1
  410. package/dist/icons/LockFilledIcon.js +1 -1
  411. package/dist/icons/LockIcon.js +1 -1
  412. package/dist/icons/MoreIcon.js +1 -1
  413. package/dist/icons/NotAllowedIcon.js +1 -1
  414. package/dist/icons/Number123Icon.js +1 -1
  415. package/dist/icons/NumberIcon.js +1 -1
  416. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  417. package/dist/icons/PauseCircleIcon.js +1 -1
  418. package/dist/icons/PauseIcon.js +1 -1
  419. package/dist/icons/PercentageIcon.js +1 -1
  420. package/dist/icons/PieChartIcon.js +1 -1
  421. package/dist/icons/PipetteIcon.js +1 -1
  422. package/dist/icons/PlayCircleIcon.js +1 -1
  423. package/dist/icons/PlayIcon.js +1 -1
  424. package/dist/icons/PlusIcon.js +1 -1
  425. package/dist/icons/ProgressBarIcon.js +1 -1
  426. package/dist/icons/ReloadIcon.js +1 -1
  427. package/dist/icons/ReportIcon.js +1 -1
  428. package/dist/icons/ReturnIcon.js +1 -1
  429. package/dist/icons/RightIcon.js +1 -1
  430. package/dist/icons/RowTotalsIcon.js +1 -1
  431. package/dist/icons/SchemeIcon.js +1 -1
  432. package/dist/icons/SearchIcon.js +1 -1
  433. package/dist/icons/SemanticQueryIcon.js +1 -1
  434. package/dist/icons/SettingsIcon.js +1 -1
  435. package/dist/icons/ShieldFilledIcon.js +1 -1
  436. package/dist/icons/ShieldIcon.js +1 -1
  437. package/dist/icons/SlashIcon.js +1 -1
  438. package/dist/icons/SparklesIcon.js +1 -1
  439. package/dist/icons/SqlIcon.js +1 -1
  440. package/dist/icons/StatsIcon.js +1 -1
  441. package/dist/icons/StopIcon.js +1 -1
  442. package/dist/icons/StringIcon.js +1 -1
  443. package/dist/icons/SubtotalsIcon.js +1 -1
  444. package/dist/icons/SwitchIcon.js +1 -1
  445. package/dist/icons/TableIcon.js +1 -1
  446. package/dist/icons/ThumbsDownIcon.js +1 -1
  447. package/dist/icons/ThumbsUpIcon.js +1 -1
  448. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  449. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  450. package/dist/icons/ThunderboltIcon.js +1 -1
  451. package/dist/icons/TimeIcon.js +1 -1
  452. package/dist/icons/TrashIcon.js +1 -1
  453. package/dist/icons/UnlockIcon.js +1 -1
  454. package/dist/icons/UpIcon.js +1 -1
  455. package/dist/icons/UserGroupIcon.js +1 -1
  456. package/dist/icons/UserIcon.js +1 -1
  457. package/dist/icons/UserLockIcon.js +1 -1
  458. package/dist/icons/ViewIcon.js +1 -1
  459. package/dist/icons/WarningFilledIcon.js +1 -1
  460. package/dist/icons/WarningIcon.js +1 -1
  461. package/dist/icons/wrap-icon.js +1 -1
  462. package/dist/index.d.ts +15 -22
  463. package/dist/index.js +9 -10
  464. package/dist/index.js.map +1 -1
  465. package/dist/provider.js +1 -1
  466. package/dist/providers/TrackingProvider.js +1 -1
  467. package/dist/providers/navigationAdapter.default.js +1 -1
  468. package/dist/tokens/base.js +1 -1
  469. package/dist/tokens/colors.js +1 -1
  470. package/dist/tokens/index.js +1 -1
  471. package/dist/tokens/layout.js +1 -1
  472. package/dist/tokens/lazy-styles.js +1 -1
  473. package/dist/tokens/palette-config.js +1 -1
  474. package/dist/tokens/palette.js +1 -1
  475. package/dist/tokens/shadows.js +1 -1
  476. package/dist/tokens/sizes.js +1 -1
  477. package/dist/tokens/spacing.js +1 -1
  478. package/dist/tokens/typography.d.ts +1 -1
  479. package/dist/tokens/typography.js +2 -11
  480. package/dist/tokens/typography.js.map +1 -1
  481. package/dist/utils/ResizeSensor.js +1 -1
  482. package/dist/utils/is-dev-env.js +1 -1
  483. package/dist/utils/modules.js +1 -1
  484. package/dist/utils/promise.js +1 -1
  485. package/dist/utils/raf.js +1 -1
  486. package/dist/utils/random.js +1 -1
  487. package/dist/utils/range.js +1 -1
  488. package/dist/utils/react/RenderCache.js +1 -1
  489. package/dist/utils/react/Slots.js +1 -1
  490. package/dist/utils/react/chain.js +1 -1
  491. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  492. package/dist/utils/react/index.js +1 -1
  493. package/dist/utils/react/interactions.js +1 -1
  494. package/dist/utils/react/isTextOnly.js +1 -1
  495. package/dist/utils/react/mapProps.js +1 -1
  496. package/dist/utils/react/mergeProps.js +1 -1
  497. package/dist/utils/react/nullableValue.js +1 -1
  498. package/dist/utils/react/resolveIcon.js +1 -1
  499. package/dist/utils/react/sharedStore.js +1 -1
  500. package/dist/utils/react/useCombinedRefs.js +1 -1
  501. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  502. package/dist/utils/react/useEventBus.js +1 -1
  503. package/dist/utils/react/useId.js +1 -1
  504. package/dist/utils/react/useIsDarwin.js +1 -1
  505. package/dist/utils/react/useKeySymbols.js +1 -1
  506. package/dist/utils/react/useLayoutEffect.js +1 -1
  507. package/dist/utils/react/useLocalStorage.js +1 -1
  508. package/dist/utils/react/useMergeStyles.js +1 -1
  509. package/dist/utils/react/usePopoverSync.js +1 -1
  510. package/dist/utils/react/useQaProps.js +1 -1
  511. package/dist/utils/react/useViewportSize.js +1 -1
  512. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  513. package/dist/utils/selection.js +1 -1
  514. package/dist/utils/styles.js +1 -1
  515. package/dist/utils/tree.js +1 -1
  516. package/dist/utils/warnings.js +1 -1
  517. package/dist/version.js +2 -2
  518. package/docs/components/fields/ColorInput.md +272 -0
  519. package/docs/components/fields/ColorPicker.md +80 -146
  520. package/docs/components/fields/ColorSwatchGroup.md +206 -0
  521. package/package.json +3 -8
  522. package/dist/components/data/DataTable/DataTable.d.ts +0 -13
  523. package/dist/components/data/DataTable/DataTable.js +0 -242
  524. package/dist/components/data/DataTable/DataTable.js.map +0 -1
  525. package/dist/components/data/DataTable/index.d.ts +0 -3
  526. package/dist/components/data/DataTable/types.d.ts +0 -140
  527. package/dist/components/data/ItemTable/ItemTable.d.ts +0 -19
  528. package/dist/components/data/ItemTable/ItemTable.js +0 -347
  529. package/dist/components/data/ItemTable/ItemTable.js.map +0 -1
  530. package/dist/components/data/ItemTable/ItemTableBulkBar.d.ts +0 -23
  531. package/dist/components/data/ItemTable/ItemTableBulkBar.js +0 -131
  532. package/dist/components/data/ItemTable/ItemTableBulkBar.js.map +0 -1
  533. package/dist/components/data/ItemTable/ItemTableDragPreview.js +0 -46
  534. package/dist/components/data/ItemTable/ItemTableDragPreview.js.map +0 -1
  535. package/dist/components/data/ItemTable/ItemTableFooter.js +0 -79
  536. package/dist/components/data/ItemTable/ItemTableFooter.js.map +0 -1
  537. package/dist/components/data/ItemTable/ItemTableToolbar.d.ts +0 -34
  538. package/dist/components/data/ItemTable/ItemTableToolbar.js +0 -91
  539. package/dist/components/data/ItemTable/ItemTableToolbar.js.map +0 -1
  540. package/dist/components/data/ItemTable/index.d.ts +0 -4
  541. package/dist/components/data/ItemTable/types.d.ts +0 -322
  542. package/dist/components/data/TableBase/ColumnResizer.js +0 -70
  543. package/dist/components/data/TableBase/ColumnResizer.js.map +0 -1
  544. package/dist/components/data/TableBase/RowCollection.js +0 -99
  545. package/dist/components/data/TableBase/RowCollection.js.map +0 -1
  546. package/dist/components/data/TableBase/TableRow.js +0 -89
  547. package/dist/components/data/TableBase/TableRow.js.map +0 -1
  548. package/dist/components/data/TableBase/TableView.d.ts +0 -22
  549. package/dist/components/data/TableBase/TableView.js +0 -857
  550. package/dist/components/data/TableBase/TableView.js.map +0 -1
  551. package/dist/components/data/TableBase/index.d.ts +0 -5
  552. package/dist/components/data/TableBase/row-menu.js +0 -40
  553. package/dist/components/data/TableBase/row-menu.js.map +0 -1
  554. package/dist/components/data/TableBase/styled.d.ts +0 -5
  555. package/dist/components/data/TableBase/styled.js +0 -504
  556. package/dist/components/data/TableBase/styled.js.map +0 -1
  557. package/dist/components/data/TableBase/types.d.ts +0 -161
  558. package/dist/components/data/TableBase/use-cell-selection.d.ts +0 -3
  559. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  560. package/dist/components/data/TableBase/use-cell-selection.js.map +0 -1
  561. package/dist/components/data/TableBase/use-container-width.js +0 -35
  562. package/dist/components/data/TableBase/use-container-width.js.map +0 -1
  563. package/dist/components/data/TableBase/use-scrollability.js +0 -49
  564. package/dist/components/data/TableBase/use-scrollability.js.map +0 -1
  565. package/dist/components/data/TableBase/use-table-columns.d.ts +0 -2
  566. package/dist/components/data/TableBase/use-table-columns.js +0 -166
  567. package/dist/components/data/TableBase/use-table-columns.js.map +0 -1
  568. package/dist/components/data/TableBase/use-table-search.js +0 -50
  569. package/dist/components/data/TableBase/use-table-search.js.map +0 -1
  570. package/dist/components/data/TableBase/use-table-selection.d.ts +0 -4
  571. package/dist/components/data/TableBase/use-table-selection.js +0 -233
  572. package/dist/components/data/TableBase/use-table-selection.js.map +0 -1
  573. package/dist/components/data/TableBase/use-table-sort.js +0 -91
  574. package/dist/components/data/TableBase/use-table-sort.js.map +0 -1
  575. package/dist/components/data/TableBase/use-table-sorts.js +0 -97
  576. package/dist/components/data/TableBase/use-table-sorts.js.map +0 -1
  577. package/dist/components/data/TableBase/use-table-storage.d.ts +0 -8
  578. package/dist/components/data/TableBase/use-table-storage.js +0 -58
  579. package/dist/components/data/TableBase/use-table-storage.js.map +0 -1
  580. package/dist/components/data/index.d.ts +0 -10
  581. package/dist/components/fields/ColorPicker/ColorPickerPanel.js.map +0 -1
  582. package/dist/components/fields/ColorPicker/channels.js.map +0 -1
  583. package/dist/components/fields/ColorPicker/color.d.ts +0 -15
  584. package/dist/components/fields/ColorPicker/color.js.map +0 -1
  585. package/dist/components/navigation/Pagination/Pagination.d.ts +0 -9
  586. package/dist/components/navigation/Pagination/Pagination.js +0 -258
  587. package/dist/components/navigation/Pagination/Pagination.js.map +0 -1
  588. package/dist/components/navigation/Pagination/index.d.ts +0 -4
  589. package/dist/components/navigation/Pagination/types.d.ts +0 -81
  590. package/dist/components/navigation/Pagination/use-pagination.d.ts +0 -52
  591. package/dist/components/navigation/Pagination/use-pagination.js +0 -83
  592. package/dist/components/navigation/Pagination/use-pagination.js.map +0 -1
  593. package/docs/components/data/DataTable.md +0 -286
  594. package/docs/components/data/ItemTable.md +0 -970
  595. package/docs/components/navigation/Pagination.md +0 -245
@@ -0,0 +1,228 @@
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-01fea9d | Cube Dev Team */
2
+ import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
+ import { useEvent } from "../../../_internal/hooks/use-event.js";
4
+ import { ItemAction } from "../../actions/ItemAction/ItemAction.js";
5
+ import { PipetteIcon } from "../../../icons/PipetteIcon.js";
6
+ import { useFieldProps } from "../../form/Form/use-field/use-field-props.js";
7
+ import { Dialog } from "../../overlays/Dialog/Dialog.js";
8
+ import { DialogTrigger } from "../../overlays/Dialog/DialogTrigger.js";
9
+ import { TextInputBase } from "../TextInput/TextInputBase.js";
10
+ import { detectFormat, formatColor, parseColor } from "../color/color.js";
11
+ import { ColorSwatch } from "../color/ColorSwatch.js";
12
+ import { ColorPanel } from "../color/ColorPanel.js";
13
+ import { tasty } from "@tenphi/tasty";
14
+ import { forwardRef, useEffect, useRef, useState } from "react";
15
+ import { jsx, jsxs } from "react/jsx-runtime";
16
+ import { useTextField } from "react-aria";
17
+
18
+ //#region src/components/fields/ColorInput/ColorInput.tsx
19
+ /**
20
+ * A popover caps its height at half the viewport. The panel can exceed that on
21
+ * a short screen, and would otherwise spill outside the popover's own border.
22
+ */
23
+ const POPOVER_STYLES = { overflow: "auto" };
24
+ /** What the popover starts from when there is no color to edit yet. */
25
+ const FALLBACK_COLOR = {
26
+ h: 264,
27
+ s: .8,
28
+ l: .6
29
+ };
30
+ const ColorInputTrigger = tasty(ItemAction, {
31
+ qa: "ColorInputTrigger",
32
+ icon: /* @__PURE__ */ jsx(PipetteIcon, {})
33
+ });
34
+ /**
35
+ * A color field: the color as text, a swatch of the current value, and a
36
+ * popover to dial it in across OKHST, OKLCH and RGB.
37
+ */
38
+ const ColorInput = forwardRef(function ColorInput(allProps, ref) {
39
+ const props = useFieldProps(allProps, {
40
+ defaultValidationTrigger: "onBlur",
41
+ valuePropsMapper: ({ value, onChange }) => ({
42
+ value,
43
+ onChange
44
+ })
45
+ });
46
+ const { qa, value, defaultValue, onChange, format = "hex", formatMode = "forced", defaultSpace = "hst", isOpen: controlledOpen, defaultOpen, onOpenChange, shouldFlip, placeholder = "Pick a color", size, isDisabled, isReadOnly, isInvalid, isValid, isLoading, autoFocus, inputStyles, triggerStyles, swatchStyles, labelProps: userLabelProps, onBlur: userOnBlur, onFocus, label, description, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledby, "aria-describedby": ariaDescribedby, id } = props;
47
+ const initialText = (value ?? defaultValue ?? "").toString();
48
+ const [text, setText] = useState(() => {
49
+ const parsed = parseColor(initialText);
50
+ return parsed && formatMode === "forced" ? formatColor(parsed, format) : initialText;
51
+ });
52
+ const [color, setColor] = useState(() => parseColor(initialText));
53
+ const [space, setSpace] = useState(defaultSpace);
54
+ const [isOpen, setOpen] = useState(defaultOpen ?? false);
55
+ const targetRef = useRef(null);
56
+ const inputRef = useRef(null);
57
+ /** The last text that parsed, so an invalid entry has something to fall back to. */
58
+ const validText = useRef(parseColor(initialText) ? text : "");
59
+ /** What was last handed to `onChange`, to tell our own updates from outside ones. */
60
+ const emitted = useRef(value);
61
+ const emit = useEvent((next) => {
62
+ emitted.current = next;
63
+ onChange?.(next);
64
+ });
65
+ /** The notation a value should be written in, given the current text. */
66
+ const outputFormat = (source) => formatMode === "forced" ? format : detectFormat(source) ?? format;
67
+ useEffect(() => {
68
+ if (value === void 0 || value === emitted.current) return;
69
+ emitted.current = value;
70
+ const raw = (value ?? "").toString();
71
+ const parsed = parseColor(raw);
72
+ const nextText = parsed && formatMode === "forced" ? formatColor(parsed, format) : raw;
73
+ setColor(parsed);
74
+ setText(nextText);
75
+ validText.current = parsed ? nextText : "";
76
+ }, [
77
+ value,
78
+ format,
79
+ formatMode
80
+ ]);
81
+ const handleTextChange = useEvent((nextText) => {
82
+ setText(nextText);
83
+ if (!nextText.trim()) {
84
+ setColor(null);
85
+ validText.current = "";
86
+ emit(null);
87
+ return;
88
+ }
89
+ const parsed = parseColor(nextText);
90
+ if (!parsed) return;
91
+ setColor(parsed);
92
+ validText.current = nextText;
93
+ emit(formatMode === "free" ? nextText.trim() : formatColor(parsed, outputFormat(nextText)));
94
+ });
95
+ /** Resolve whatever is in the input into a real color, or undo it. */
96
+ const settle = useEvent(() => {
97
+ if (!text.trim()) return;
98
+ const parsed = parseColor(text);
99
+ if (!parsed) {
100
+ setText(validText.current);
101
+ return;
102
+ }
103
+ if (formatMode === "forced") setText(formatColor(parsed, format));
104
+ });
105
+ /**
106
+ * Focusing offers the whole value up for replacement, the way a hex field
107
+ * does. The string is the unit of editing here: a single channel is tuned
108
+ * with the sliders, not by hand-editing one number inside `oklch(…)`.
109
+ *
110
+ * Read off the event rather than `inputRef`, which `TextInputBase` re-points
111
+ * through `useCombinedRefs`.
112
+ */
113
+ const handleFocus = useEvent((event) => {
114
+ event.currentTarget.select();
115
+ onFocus?.(event);
116
+ });
117
+ /**
118
+ * A click would otherwise drop a caret and undo that selection — the browser
119
+ * applies it after the focus handler has run. Suppressing the default action
120
+ * of the focusing press means no caret is ever placed; focus is then moved
121
+ * here instead, which selects.
122
+ *
123
+ * Only the press that *takes* focus is suppressed, so clicking a field that
124
+ * already has focus still positions the caret, and dragging still selects a
125
+ * range.
126
+ */
127
+ const handleMouseDown = useEvent((event) => {
128
+ if (document.activeElement === event.currentTarget) return;
129
+ event.preventDefault();
130
+ event.currentTarget.focus();
131
+ });
132
+ const handleBlur = useEvent((event) => {
133
+ settle();
134
+ userOnBlur?.(event);
135
+ });
136
+ const handleKeyDown = useEvent((event) => {
137
+ if (event.key === "Enter") settle();
138
+ });
139
+ const handleColorChange = useEvent((nextColor) => {
140
+ const nextText = formatColor(nextColor, outputFormat(text));
141
+ setColor(nextColor);
142
+ setText(nextText);
143
+ validText.current = nextText;
144
+ emit(nextText);
145
+ });
146
+ const handleOpenChange = useEvent((next) => {
147
+ setOpen(next);
148
+ onOpenChange?.(next);
149
+ });
150
+ const { labelProps, inputProps } = useTextField({
151
+ id,
152
+ label,
153
+ description,
154
+ "aria-label": ariaLabel,
155
+ "aria-labelledby": ariaLabelledby,
156
+ "aria-describedby": ariaDescribedby,
157
+ isDisabled,
158
+ isReadOnly,
159
+ isInvalid,
160
+ autoFocus,
161
+ placeholder,
162
+ value: text,
163
+ type: "text",
164
+ onChange: handleTextChange,
165
+ onFocus: handleFocus,
166
+ onBlur: handleBlur,
167
+ onKeyDown: handleKeyDown
168
+ }, inputRef);
169
+ return /* @__PURE__ */ jsx(TextInputBase, {
170
+ ...props,
171
+ ref,
172
+ qa: qa || "ColorInput",
173
+ size,
174
+ autocomplete: "off",
175
+ icon: /* @__PURE__ */ jsx(ColorSwatch, {
176
+ color,
177
+ styles: swatchStyles
178
+ }),
179
+ inputRef,
180
+ inputProps: {
181
+ ...inputProps,
182
+ spellCheck: false,
183
+ onMouseDown: handleMouseDown
184
+ },
185
+ inputStyles,
186
+ labelProps: mergeProps$1(labelProps, userLabelProps),
187
+ wrapperRef: targetRef,
188
+ isDisabled,
189
+ isReadOnly,
190
+ isInvalid,
191
+ isValid,
192
+ isLoading,
193
+ suffixPosition: "after",
194
+ suffix: /* @__PURE__ */ jsxs(DialogTrigger, {
195
+ hideArrow: true,
196
+ type: "popover",
197
+ mobileType: "tray",
198
+ placement: "bottom right",
199
+ targetRef,
200
+ isOpen: controlledOpen ?? isOpen,
201
+ shouldFlip,
202
+ onOpenChange: handleOpenChange,
203
+ children: [/* @__PURE__ */ jsx(ColorInputTrigger, {
204
+ size,
205
+ "aria-label": "Open the color picker",
206
+ isDisabled: isDisabled || isReadOnly,
207
+ styles: triggerStyles
208
+ }), /* @__PURE__ */ jsx(Dialog, {
209
+ "aria-label": "Color picker",
210
+ width: "max-content",
211
+ styles: POPOVER_STYLES,
212
+ children: /* @__PURE__ */ jsx(ColorPanel, {
213
+ color: color ?? FALLBACK_COLOR,
214
+ space,
215
+ isDisabled: isDisabled || isReadOnly,
216
+ previewFormat: outputFormat(text),
217
+ onChange: handleColorChange,
218
+ onSpaceChange: setSpace
219
+ })
220
+ })]
221
+ })
222
+ });
223
+ });
224
+ ColorInput.cubeInputType = "Text";
225
+
226
+ //#endregion
227
+ export { ColorInput };
228
+ //# sourceMappingURL=ColorInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorInput.js","names":["mergeProps"],"sources":["../../../../src/components/fields/ColorInput/ColorInput.tsx"],"sourcesContent":["import {\n BaseProps,\n BaseStyleProps,\n BlockStyleProps,\n ColorStyleProps,\n OuterStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport {\n FocusEvent,\n ForwardedRef,\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { useTextField } from 'react-aria';\n\nimport { useEvent } from '../../../_internal';\nimport { PipetteIcon } from '../../../icons';\nimport { FieldBaseProps } from '../../../shared';\nimport { mergeProps } from '../../../utils/react';\nimport { ItemAction } from '../../actions';\nimport { useFieldProps } from '../../form';\nimport { Dialog, DialogTrigger } from '../../overlays/Dialog';\nimport { ColorSpace } from '../color/channels';\nimport {\n ColorFormat,\n ColorValue,\n detectFormat,\n formatColor,\n parseColor,\n} from '../color/color';\nimport { ColorPanel } from '../color/ColorPanel';\nimport { ColorSwatch } from '../color/ColorSwatch';\nimport { TextInputBase } from '../TextInput/TextInputBase';\n\n/**\n * How the text in the input relates to the committed value.\n *\n * - `forced` — the text is rewritten in `format` whenever it is not mid-edit,\n * and the value is always written in `format`.\n * - `derive` — the user's own notation is left alone, and the value is\n * normalized in whichever notation the text is written in.\n * - `free` — the text *is* the value, verbatim. It is still verified, so an\n * unparsable entry falls back to the last valid one.\n */\nexport type ColorInputFormatMode = 'forced' | 'derive' | 'free';\n\n/**\n * A popover caps its height at half the viewport. The panel can exceed that on\n * a short screen, and would otherwise spill outside the popover's own border.\n */\nconst POPOVER_STYLES: Styles = { overflow: 'auto' };\n\n/** What the popover starts from when there is no color to edit yet. */\nconst FALLBACK_COLOR: ColorValue = { h: 264, s: 0.8, l: 0.6 };\n\nconst ColorInputTrigger = tasty(ItemAction, {\n qa: 'ColorInputTrigger',\n icon: <PipetteIcon />,\n});\n\nexport interface CubeColorInputProps\n extends BaseProps,\n BaseStyleProps,\n OuterStyleProps,\n BlockStyleProps,\n ColorStyleProps,\n FieldBaseProps {\n /** The selected color, as a color string. */\n value?: string | null;\n /** The initial color of an uncontrolled picker. */\n defaultValue?: string | null;\n /** Called with the normalized color string, or `null` when the field is cleared. */\n onChange?: (value: string | null) => void;\n /** Notation the value is written in, and the one `forced` mode displays. */\n format?: ColorFormat;\n /** How strictly the input text is tied to `format`. */\n formatMode?: ColorInputFormatMode;\n /** Color concept the popover opens with. */\n defaultSpace?: ColorSpace;\n /** Whether the popover is open. Makes the disclosure controlled. */\n isOpen?: boolean;\n /** Whether the popover is open initially. */\n defaultOpen?: boolean;\n /** Called when the popover opens or closes. */\n onOpenChange?: (isOpen: boolean) => void;\n /** Whether the popover may flip to the other side of the input. */\n shouldFlip?: boolean;\n /** Text shown while the field is empty. */\n placeholder?: string;\n /** The size of the input. */\n size?: 'small' | 'medium' | 'large' | (string & {});\n onFocus?: (event: FocusEvent<HTMLInputElement>) => void;\n onBlur?: (event: FocusEvent<HTMLInputElement>) => void;\n 'aria-label'?: string;\n 'aria-labelledby'?: string;\n 'aria-describedby'?: string;\n styles?: Styles;\n /** Styles of the text input element. */\n inputStyles?: Styles;\n /** Styles of the popover trigger button. */\n triggerStyles?: Styles;\n /** Styles of the color swatch shown inside the input. */\n swatchStyles?: Styles;\n}\n\n/**\n * A color field: the color as text, a swatch of the current value, and a\n * popover to dial it in across OKHST, OKLCH and RGB.\n */\nexport const ColorInput = forwardRef(function ColorInput(\n allProps: CubeColorInputProps,\n ref: ForwardedRef<HTMLElement>,\n) {\n const props = useFieldProps(allProps, {\n defaultValidationTrigger: 'onBlur',\n valuePropsMapper: ({ value, onChange }) => ({\n value: value as string | null | undefined,\n onChange,\n }),\n });\n\n const {\n qa,\n value,\n defaultValue,\n onChange,\n format = 'hex',\n formatMode = 'forced',\n defaultSpace = 'hst',\n isOpen: controlledOpen,\n defaultOpen,\n onOpenChange,\n shouldFlip,\n placeholder = 'Pick a color',\n size,\n isDisabled,\n isReadOnly,\n isInvalid,\n isValid,\n isLoading,\n autoFocus,\n inputStyles,\n triggerStyles,\n swatchStyles,\n labelProps: userLabelProps,\n onBlur: userOnBlur,\n onFocus,\n label,\n description,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n 'aria-describedby': ariaDescribedby,\n id,\n } = props;\n\n const initialText = (value ?? defaultValue ?? '').toString();\n const [text, setText] = useState(() => {\n const parsed = parseColor(initialText);\n\n return parsed && formatMode === 'forced'\n ? formatColor(parsed, format)\n : initialText;\n });\n const [color, setColor] = useState(() => parseColor(initialText));\n const [space, setSpace] = useState<ColorSpace>(defaultSpace);\n const [isOpen, setOpen] = useState(defaultOpen ?? false);\n\n const targetRef = useRef<HTMLDivElement>(null);\n const inputRef = useRef<HTMLInputElement>(null);\n /** The last text that parsed, so an invalid entry has something to fall back to. */\n const validText = useRef(parseColor(initialText) ? text : '');\n /** What was last handed to `onChange`, to tell our own updates from outside ones. */\n const emitted = useRef<string | null | undefined>(value);\n\n const emit = useEvent((next: string | null) => {\n emitted.current = next;\n onChange?.(next);\n });\n\n /** The notation a value should be written in, given the current text. */\n const outputFormat = (source: string): ColorFormat =>\n formatMode === 'forced' ? format : detectFormat(source) ?? format;\n\n // Adopt values that did not come from here — a form reset, or a parent that\n // overrides what the user picked.\n useEffect(() => {\n if (value === undefined || value === emitted.current) return;\n\n emitted.current = value;\n\n const raw = (value ?? '').toString();\n const parsed = parseColor(raw);\n const nextText =\n parsed && formatMode === 'forced' ? formatColor(parsed, format) : raw;\n\n setColor(parsed);\n setText(nextText);\n validText.current = parsed ? nextText : '';\n }, [value, format, formatMode]);\n\n const handleTextChange = useEvent((nextText: string) => {\n setText(nextText);\n\n if (!nextText.trim()) {\n setColor(null);\n validText.current = '';\n emit(null);\n\n return;\n }\n\n const parsed = parseColor(nextText);\n\n // Half-typed input keeps the last valid color, so the value stays a real\n // color at every keystroke.\n if (!parsed) return;\n\n setColor(parsed);\n validText.current = nextText;\n emit(\n formatMode === 'free'\n ? nextText.trim()\n : formatColor(parsed, outputFormat(nextText)),\n );\n });\n\n /** Resolve whatever is in the input into a real color, or undo it. */\n const settle = useEvent(() => {\n if (!text.trim()) return;\n\n const parsed = parseColor(text);\n\n if (!parsed) {\n setText(validText.current);\n\n return;\n }\n\n if (formatMode === 'forced') setText(formatColor(parsed, format));\n });\n\n /**\n * Focusing offers the whole value up for replacement, the way a hex field\n * does. The string is the unit of editing here: a single channel is tuned\n * with the sliders, not by hand-editing one number inside `oklch(…)`.\n *\n * Read off the event rather than `inputRef`, which `TextInputBase` re-points\n * through `useCombinedRefs`.\n */\n const handleFocus = useEvent((event: FocusEvent<HTMLInputElement>) => {\n event.currentTarget.select();\n onFocus?.(event);\n });\n\n /**\n * A click would otherwise drop a caret and undo that selection — the browser\n * applies it after the focus handler has run. Suppressing the default action\n * of the focusing press means no caret is ever placed; focus is then moved\n * here instead, which selects.\n *\n * Only the press that *takes* focus is suppressed, so clicking a field that\n * already has focus still positions the caret, and dragging still selects a\n * range.\n */\n const handleMouseDown = useEvent((event: MouseEvent<HTMLInputElement>) => {\n if (document.activeElement === event.currentTarget) return;\n\n event.preventDefault();\n event.currentTarget.focus();\n });\n\n const handleBlur = useEvent((event: FocusEvent<HTMLInputElement>) => {\n settle();\n userOnBlur?.(event);\n });\n\n const handleKeyDown = useEvent((event: KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') settle();\n });\n\n const handleColorChange = useEvent((nextColor: ColorValue) => {\n const nextText = formatColor(nextColor, outputFormat(text));\n\n setColor(nextColor);\n setText(nextText);\n validText.current = nextText;\n emit(nextText);\n });\n\n const handleOpenChange = useEvent((next: boolean) => {\n setOpen(next);\n onOpenChange?.(next);\n });\n\n const { labelProps, inputProps } = useTextField(\n {\n id,\n label,\n description,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n 'aria-describedby': ariaDescribedby,\n isDisabled,\n isReadOnly,\n isInvalid,\n autoFocus,\n placeholder,\n value: text,\n type: 'text',\n onChange: handleTextChange,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n },\n inputRef,\n );\n\n return (\n <TextInputBase\n {...props}\n ref={ref}\n qa={qa || 'ColorInput'}\n size={size}\n autocomplete=\"off\"\n icon={<ColorSwatch color={color} styles={swatchStyles} />}\n inputRef={inputRef}\n inputProps={{\n ...inputProps,\n spellCheck: false,\n onMouseDown: handleMouseDown,\n }}\n inputStyles={inputStyles}\n labelProps={mergeProps(labelProps, userLabelProps)}\n wrapperRef={targetRef}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isInvalid={isInvalid}\n isValid={isValid}\n isLoading={isLoading}\n // The validation state reads left of the trigger, the way `DateInputBase`\n // orders it for the date pickers.\n suffixPosition=\"after\"\n suffix={\n <DialogTrigger\n hideArrow\n type=\"popover\"\n mobileType=\"tray\"\n placement=\"bottom right\"\n targetRef={targetRef}\n isOpen={controlledOpen ?? isOpen}\n shouldFlip={shouldFlip}\n onOpenChange={handleOpenChange}\n >\n <ColorInputTrigger\n size={size}\n aria-label=\"Open the color picker\"\n isDisabled={isDisabled || isReadOnly}\n styles={triggerStyles}\n />\n <Dialog\n aria-label=\"Color picker\"\n width=\"max-content\"\n styles={POPOVER_STYLES}\n >\n <ColorPanel\n color={color ?? FALLBACK_COLOR}\n space={space}\n isDisabled={isDisabled || isReadOnly}\n previewFormat={outputFormat(text)}\n onChange={handleColorChange}\n onSpaceChange={setSpace}\n />\n </Dialog>\n </DialogTrigger>\n }\n />\n );\n});\n\n(ColorInput as any).cubeInputType = 'Text';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAwDA,MAAM,iBAAyB,EAAE,UAAU,QAAQ;;AAGnD,MAAM,iBAA6B;CAAE,GAAG;CAAK,GAAG;CAAK,GAAG;CAAK;AAE7D,MAAM,oBAAoB,MAAM,YAAY;CAC1C,IAAI;CACJ,MAAM,oBAAC,gBAAc;CACtB,CAAC;;;;;AAmDF,MAAa,aAAa,WAAW,SAAS,WAC5C,UACA,KACA;CACA,MAAM,QAAQ,cAAc,UAAU;EACpC,0BAA0B;EAC1B,mBAAmB,EAAE,OAAO,gBAAgB;GACnC;GACP;GACD;EACF,CAAC;CAEF,MAAM,EACJ,IACA,OACA,cACA,UACA,SAAS,OACT,aAAa,UACb,eAAe,OACf,QAAQ,gBACR,aACA,cACA,YACA,cAAc,gBACd,MACA,YACA,YACA,WACA,SACA,WACA,WACA,aACA,eACA,cACA,YAAY,gBACZ,QAAQ,YACR,SACA,OACA,aACA,cAAc,WACd,mBAAmB,gBACnB,oBAAoB,iBACpB,OACE;CAEJ,MAAM,eAAe,SAAS,gBAAgB,IAAI,UAAU;CAC5D,MAAM,CAAC,MAAM,WAAW,eAAe;EACrC,MAAM,SAAS,WAAW,YAAY;AAEtC,SAAO,UAAU,eAAe,WAC5B,YAAY,QAAQ,OAAO,GAC3B;GACJ;CACF,MAAM,CAAC,OAAO,YAAY,eAAe,WAAW,YAAY,CAAC;CACjE,MAAM,CAAC,OAAO,YAAY,SAAqB,aAAa;CAC5D,MAAM,CAAC,QAAQ,WAAW,SAAS,eAAe,MAAM;CAExD,MAAM,YAAY,OAAuB,KAAK;CAC9C,MAAM,WAAW,OAAyB,KAAK;;CAE/C,MAAM,YAAY,OAAO,WAAW,YAAY,GAAG,OAAO,GAAG;;CAE7D,MAAM,UAAU,OAAkC,MAAM;CAExD,MAAM,OAAO,UAAU,SAAwB;AAC7C,UAAQ,UAAU;AAClB,aAAW,KAAK;GAChB;;CAGF,MAAM,gBAAgB,WACpB,eAAe,WAAW,SAAS,aAAa,OAAO,IAAI;AAI7D,iBAAgB;AACd,MAAI,UAAU,UAAa,UAAU,QAAQ,QAAS;AAEtD,UAAQ,UAAU;EAElB,MAAM,OAAO,SAAS,IAAI,UAAU;EACpC,MAAM,SAAS,WAAW,IAAI;EAC9B,MAAM,WACJ,UAAU,eAAe,WAAW,YAAY,QAAQ,OAAO,GAAG;AAEpE,WAAS,OAAO;AAChB,UAAQ,SAAS;AACjB,YAAU,UAAU,SAAS,WAAW;IACvC;EAAC;EAAO;EAAQ;EAAW,CAAC;CAE/B,MAAM,mBAAmB,UAAU,aAAqB;AACtD,UAAQ,SAAS;AAEjB,MAAI,CAAC,SAAS,MAAM,EAAE;AACpB,YAAS,KAAK;AACd,aAAU,UAAU;AACpB,QAAK,KAAK;AAEV;;EAGF,MAAM,SAAS,WAAW,SAAS;AAInC,MAAI,CAAC,OAAQ;AAEb,WAAS,OAAO;AAChB,YAAU,UAAU;AACpB,OACE,eAAe,SACX,SAAS,MAAM,GACf,YAAY,QAAQ,aAAa,SAAS,CAAC,CAChD;GACD;;CAGF,MAAM,SAAS,eAAe;AAC5B,MAAI,CAAC,KAAK,MAAM,CAAE;EAElB,MAAM,SAAS,WAAW,KAAK;AAE/B,MAAI,CAAC,QAAQ;AACX,WAAQ,UAAU,QAAQ;AAE1B;;AAGF,MAAI,eAAe,SAAU,SAAQ,YAAY,QAAQ,OAAO,CAAC;GACjE;;;;;;;;;CAUF,MAAM,cAAc,UAAU,UAAwC;AACpE,QAAM,cAAc,QAAQ;AAC5B,YAAU,MAAM;GAChB;;;;;;;;;;;CAYF,MAAM,kBAAkB,UAAU,UAAwC;AACxE,MAAI,SAAS,kBAAkB,MAAM,cAAe;AAEpD,QAAM,gBAAgB;AACtB,QAAM,cAAc,OAAO;GAC3B;CAEF,MAAM,aAAa,UAAU,UAAwC;AACnE,UAAQ;AACR,eAAa,MAAM;GACnB;CAEF,MAAM,gBAAgB,UAAU,UAA2C;AACzE,MAAI,MAAM,QAAQ,QAAS,SAAQ;GACnC;CAEF,MAAM,oBAAoB,UAAU,cAA0B;EAC5D,MAAM,WAAW,YAAY,WAAW,aAAa,KAAK,CAAC;AAE3D,WAAS,UAAU;AACnB,UAAQ,SAAS;AACjB,YAAU,UAAU;AACpB,OAAK,SAAS;GACd;CAEF,MAAM,mBAAmB,UAAU,SAAkB;AACnD,UAAQ,KAAK;AACb,iBAAe,KAAK;GACpB;CAEF,MAAM,EAAE,YAAY,eAAe,aACjC;EACE;EACA;EACA;EACA,cAAc;EACd,mBAAmB;EACnB,oBAAoB;EACpB;EACA;EACA;EACA;EACA;EACA,OAAO;EACP,MAAM;EACN,UAAU;EACV,SAAS;EACT,QAAQ;EACR,WAAW;EACZ,EACD,SACD;AAED,QACE,oBAAC;EACC,GAAI;EACC;EACL,IAAI,MAAM;EACJ;EACN,cAAa;EACb,MAAM,oBAAC;GAAmB;GAAO,QAAQ;IAAgB;EAC/C;EACV,YAAY;GACV,GAAG;GACH,YAAY;GACZ,aAAa;GACd;EACY;EACb,YAAYA,aAAW,YAAY,eAAe;EAClD,YAAY;EACA;EACA;EACD;EACF;EACE;EAGX,gBAAe;EACf,QACE,qBAAC;GACC;GACA,MAAK;GACL,YAAW;GACX,WAAU;GACC;GACX,QAAQ,kBAAkB;GACd;GACZ,cAAc;cAEd,oBAAC;IACO;IACN,cAAW;IACX,YAAY,cAAc;IAC1B,QAAQ;KACR,EACF,oBAAC;IACC,cAAW;IACX,OAAM;IACN,QAAQ;cAER,oBAAC;KACC,OAAO,SAAS;KACT;KACP,YAAY,cAAc;KAC1B,eAAe,aAAa,KAAK;KACjC,UAAU;KACV,eAAe;MACf;KACK;IACK;GAElB;EAEJ;AAEF,AAAC,WAAmB,gBAAgB"}
@@ -0,0 +1,2 @@
1
+
2
+ import { ColorInput, ColorInputFormatMode, CubeColorInputProps } from "./ColorInput.js";
@@ -1,35 +1,26 @@
1
1
 
2
2
  import { FieldBaseProps } from "../../../shared/form.js";
3
3
  import "../../../shared/index.js";
4
- import { ColorFormat } from "./color.js";
5
- import { ColorSpace } from "./channels.js";
6
- import { BaseProps, BaseStyleProps, BlockStyleProps, ColorStyleProps, OuterStyleProps, Styles } from "@tenphi/tasty";
4
+ import "../../content/Item/index.js";
5
+ import { CubeItemProps } from "../../content/Item/Item.js";
6
+ import { ColorFormat } from "../color/color.js";
7
+ import { ColorSpace } from "../color/channels.js";
8
+ import { CubeColorSwatchItem } from "../ColorSwatchGroup/ColorSwatchGroup.js";
9
+ import "../ColorSwatchGroup/index.js";
10
+ import { BaseProps, BlockStyleProps, OuterStyleProps, Styles } from "@tenphi/tasty";
7
11
  import * as react from "react";
8
- import { FocusEvent } from "react";
12
+ import { ReactNode } from "react";
9
13
 
10
14
  //#region src/components/fields/ColorPicker/ColorPicker.d.ts
11
- /**
12
- * How the text in the input relates to the committed value.
13
- *
14
- * - `forced` — the text is rewritten in `format` whenever it is not mid-edit,
15
- * and the value is always written in `format`.
16
- * - `derive` — the user's own notation is left alone, and the value is
17
- * normalized in whichever notation the text is written in.
18
- * - `free` — the text *is* the value, verbatim. It is still verified, so an
19
- * unparsable entry falls back to the last valid one.
20
- */
21
- type ColorPickerFormatMode = 'forced' | 'derive' | 'free';
22
- interface CubeColorPickerProps extends BaseProps, BaseStyleProps, OuterStyleProps, BlockStyleProps, ColorStyleProps, FieldBaseProps {
15
+ interface CubeColorPickerProps extends BaseProps, OuterStyleProps, BlockStyleProps, FieldBaseProps {
23
16
  /** The selected color, as a color string. */
24
17
  value?: string | null;
25
18
  /** The initial color of an uncontrolled picker. */
26
19
  defaultValue?: string | null;
27
- /** Called with the normalized color string, or `null` when the field is cleared. */
20
+ /** Called with the color string, or `null` when there is no color. */
28
21
  onChange?: (value: string | null) => void;
29
- /** Notation the value is written in, and the one `forced` mode displays. */
22
+ /** Notation the value is written in. */
30
23
  format?: ColorFormat;
31
- /** How strictly the input text is tied to `format`. */
32
- formatMode?: ColorPickerFormatMode;
33
24
  /** Color concept the popover opens with. */
34
25
  defaultSpace?: ColorSpace;
35
26
  /** Whether the popover is open. Makes the disclosure controlled. */
@@ -38,30 +29,36 @@ interface CubeColorPickerProps extends BaseProps, BaseStyleProps, OuterStyleProp
38
29
  defaultOpen?: boolean;
39
30
  /** Called when the popover opens or closes. */
40
31
  onOpenChange?: (isOpen: boolean) => void;
41
- /** Whether the popover may flip to the other side of the input. */
32
+ /** Whether the popover may flip to the other side of the trigger. */
42
33
  shouldFlip?: boolean;
43
- /** Text shown while the field is empty. */
44
- placeholder?: string;
45
- /** The size of the input. */
46
- size?: 'small' | 'medium' | 'large' | (string & {});
47
- onFocus?: (event: FocusEvent<HTMLInputElement>) => void;
48
- onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
49
- 'aria-label'?: string;
50
- 'aria-labelledby'?: string;
51
- 'aria-describedby'?: string;
34
+ /** Replaces the color shown on the trigger. Pass `null` for a swatch on its own. */
35
+ children?: ReactNode;
36
+ /** Shown on the trigger while there is no color. */
37
+ placeholder?: ReactNode;
38
+ /** The size of the trigger. */
39
+ size?: CubeItemProps['size'];
40
+ /** The visual type of the trigger. */
41
+ type?: CubeItemProps['type'];
42
+ theme?: CubeItemProps['theme'];
43
+ /** Tooltip for the trigger, separate from the field tooltip. */
44
+ triggerTooltip?: CubeItemProps['tooltip'];
45
+ /** Colors to offer under the editor, for picking without dialing one in. */
46
+ swatches?: CubeColorSwatchItem[];
47
+ /** How many swatches per row. Defaults to a single row. */
48
+ swatchColumns?: number;
52
49
  styles?: Styles;
53
- /** Styles of the text input element. */
54
- inputStyles?: Styles;
55
- /** Styles of the popover trigger button. */
50
+ /** Styles of the trigger button. */
56
51
  triggerStyles?: Styles;
57
- /** Styles of the color swatch shown inside the input. */
52
+ /** Styles of the color swatch. */
58
53
  swatchStyles?: Styles;
54
+ 'aria-label'?: string;
59
55
  }
60
56
  /**
61
- * A color field: the color as text, a swatch of the current value, and a
62
- * popover to dial it in across OKHST, OKLCH and RGB.
57
+ * A color swatch that opens the color popover the same one `ColorInput`
58
+ * uses, without the text field. Reach for it when a color is chosen but never
59
+ * typed: a toolbar, a chart legend, a cell in a dense table.
63
60
  */
64
61
  declare const ColorPicker: react.ForwardRefExoticComponent<CubeColorPickerProps & react.RefAttributes<HTMLElement>>;
65
62
  //#endregion
66
- export { ColorPicker, ColorPickerFormatMode, CubeColorPickerProps };
63
+ export { ColorPicker, CubeColorPickerProps };
67
64
  //# sourceMappingURL=ColorPicker.d.ts.map