@cube-dev/ui-kit 0.0.0-canary-1f0dd2c → 0.0.0-canary-1d27aa0

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 (625) hide show
  1. package/README.md +7 -4
  2. package/dist/README.md +7 -4
  3. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  4. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  5. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  6. package/dist/_internal/hooks/use-event.js +1 -1
  7. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  8. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  9. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  10. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  11. package/dist/_internal/hooks/use-warn.js +1 -1
  12. package/dist/components/Block.js +1 -1
  13. package/dist/components/CollectionItem.js +1 -1
  14. package/dist/components/GlobalStyles.js +1 -1
  15. package/dist/components/GridProvider.js +1 -1
  16. package/dist/components/HiddenInput.js +1 -1
  17. package/dist/components/Root.js +1 -1
  18. package/dist/components/actions/Action/Action.js +1 -1
  19. package/dist/components/actions/Banner/Banner.js +1 -1
  20. package/dist/components/actions/Button/Button.d.ts +0 -1
  21. package/dist/components/actions/Button/Button.js +1 -1
  22. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  23. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  24. package/dist/components/actions/ButtonSplit/context.js +1 -1
  25. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  26. package/dist/components/actions/CommandMenu/styled.js +1 -1
  27. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  28. package/dist/components/actions/ItemActionContext.js +1 -1
  29. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  30. package/dist/components/actions/Link/Link.js +1 -1
  31. package/dist/components/actions/Menu/Menu.js +1 -1
  32. package/dist/components/actions/Menu/MenuItem.js +1 -1
  33. package/dist/components/actions/Menu/MenuSection.js +1 -1
  34. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  35. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  36. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  37. package/dist/components/actions/Menu/context.js +1 -1
  38. package/dist/components/actions/Menu/styled.js +1 -1
  39. package/dist/components/actions/index.js +1 -1
  40. package/dist/components/actions/use-action.js +1 -1
  41. package/dist/components/actions/use-anchored-menu.js +1 -1
  42. package/dist/components/actions/use-context-menu.js +1 -1
  43. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  44. package/dist/components/content/Alert/Alert.js +1 -1
  45. package/dist/components/content/Alert/use-alert.js +1 -1
  46. package/dist/components/content/Avatar/Avatar.js +1 -1
  47. package/dist/components/content/Badge/Badge.js +1 -1
  48. package/dist/components/content/Card/Card.js +1 -1
  49. package/dist/components/content/Content.js +1 -1
  50. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  51. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  52. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  53. package/dist/components/content/Divider.js +1 -1
  54. package/dist/components/content/Footer.js +1 -1
  55. package/dist/components/content/Header.js +1 -1
  56. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  57. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  58. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  59. package/dist/components/content/Item/Item.js +1 -1
  60. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  61. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  62. package/dist/components/content/Layout/GridLayout.js +1 -1
  63. package/dist/components/content/Layout/Layout.js +1 -1
  64. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  65. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  66. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  67. package/dist/components/content/Layout/LayoutContent.js +1 -1
  68. package/dist/components/content/Layout/LayoutContext.js +1 -1
  69. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  70. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  71. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  72. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  73. package/dist/components/content/Layout/LayoutPane.js +1 -1
  74. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  75. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  76. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  77. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  78. package/dist/components/content/Layout/index.js +1 -1
  79. package/dist/components/content/Layout/utils.js +1 -1
  80. package/dist/components/content/Paragraph.js +1 -1
  81. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  82. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  83. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  84. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  85. package/dist/components/content/Result/Result.js +1 -1
  86. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  87. package/dist/components/content/Tag/Tag.js +1 -1
  88. package/dist/components/content/Text.d.ts +14 -14
  89. package/dist/components/content/Text.js +1 -1
  90. package/dist/components/content/TextItem/TextItem.js +1 -1
  91. package/dist/components/content/Title.js +1 -1
  92. package/dist/components/content/Tree/Tree.js +1 -1
  93. package/dist/components/content/Tree/TreeNode.js +1 -1
  94. package/dist/components/content/Tree/styled.js +1 -1
  95. package/dist/components/content/Tree/tree-index.js +1 -1
  96. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  97. package/dist/components/content/Tree/use-load-data.js +1 -1
  98. package/dist/components/content/highlightText.js +1 -1
  99. package/dist/components/content/use-auto-tooltip.js +1 -1
  100. package/dist/components/data/DataTable/DataTable.js +1 -1
  101. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  102. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  103. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  104. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  105. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  106. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  107. package/dist/components/data/TableBase/RowCollection.js +1 -1
  108. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  109. package/dist/components/data/TableBase/TableRow.js +1 -1
  110. package/dist/components/data/TableBase/TableView.js +1 -1
  111. package/dist/components/data/TableBase/column-menu.js +1 -1
  112. package/dist/components/data/TableBase/column-tint.js +1 -1
  113. package/dist/components/data/TableBase/row-menu.js +1 -1
  114. package/dist/components/data/TableBase/styled.d.ts +1 -2
  115. package/dist/components/data/TableBase/styled.js +1 -1
  116. package/dist/components/data/TableBase/table-tree.js +1 -1
  117. package/dist/components/data/TableBase/types.js +1 -1
  118. package/dist/components/data/TableBase/use-cell-selection.d.ts +0 -1
  119. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  120. package/dist/components/data/TableBase/use-column-order.js +1 -1
  121. package/dist/components/data/TableBase/use-container-width.js +1 -1
  122. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  123. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  124. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  125. package/dist/components/data/TableBase/use-table-search.js +1 -1
  126. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  127. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  128. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  129. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  130. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  131. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  132. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  133. package/dist/components/fields/Checkbox/context.js +1 -1
  134. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  135. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  136. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  137. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  138. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  139. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  140. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  141. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  142. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  143. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  144. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  145. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  146. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  147. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  148. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  149. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  150. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  151. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  152. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  153. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  154. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  155. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  156. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  157. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  158. package/dist/components/fields/DatePicker/period.js +1 -1
  159. package/dist/components/fields/DatePicker/props.js +1 -1
  160. package/dist/components/fields/DatePicker/utils.js +1 -1
  161. package/dist/components/fields/FileInput/FileInput.js +1 -1
  162. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  163. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  164. package/dist/components/fields/Input/Input.js +1 -1
  165. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  166. package/dist/components/fields/ListBox/ListBox.js +1 -1
  167. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  168. package/dist/components/fields/ListBoxPopover/index.d.ts +0 -1
  169. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  170. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  171. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  172. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  173. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  174. package/dist/components/fields/Picker/Picker.js +1 -1
  175. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  176. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  177. package/dist/components/fields/RadioGroup/context.js +1 -1
  178. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  179. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  180. package/dist/components/fields/Select/Select.js +1 -1
  181. package/dist/components/fields/Slider/Gradation.js +1 -1
  182. package/dist/components/fields/Slider/HueSlider.js +1 -1
  183. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  184. package/dist/components/fields/Slider/Slider.js +1 -1
  185. package/dist/components/fields/Slider/SliderBase.js +1 -1
  186. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  187. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  188. package/dist/components/fields/Slider/elements.js +1 -1
  189. package/dist/components/fields/Slider/index.js +1 -1
  190. package/dist/components/fields/Switch/Switch.js +1 -1
  191. package/dist/components/fields/TextArea/TextArea.js +1 -1
  192. package/dist/components/fields/TextInput/TextInput.js +1 -1
  193. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  194. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  195. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  196. package/dist/components/fields/color/ColorPanel.js +1 -1
  197. package/dist/components/fields/color/channels.js +1 -1
  198. package/dist/components/fields/color/color.js +1 -1
  199. package/dist/components/fields/color/context.js +1 -1
  200. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  201. package/dist/components/form/Form/Field.js +1 -1
  202. package/dist/components/form/Form/Form.js +1 -1
  203. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  204. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  205. package/dist/components/form/Form/SubmitError.js +1 -1
  206. package/dist/components/form/Form/index.js +1 -1
  207. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  208. package/dist/components/form/Form/use-field/use-field.js +1 -1
  209. package/dist/components/form/Form/use-form.js +1 -1
  210. package/dist/components/form/Form/validation.js +1 -1
  211. package/dist/components/form/Label.js +1 -1
  212. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  213. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  214. package/dist/components/form/validation/use-validation-props.js +1 -1
  215. package/dist/components/form/wrapper.js +1 -1
  216. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  217. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  218. package/dist/components/layout/Board/Board.js +1 -1
  219. package/dist/components/layout/Board/BoardProvider.js +1 -1
  220. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  221. package/dist/components/layout/Board/Widget.js +1 -1
  222. package/dist/components/layout/Board/WidgetHost.js +1 -1
  223. package/dist/components/layout/Board/board-context.js +1 -1
  224. package/dist/components/layout/Board/board-store.js +1 -1
  225. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  226. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  227. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  228. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  229. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  230. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  231. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  232. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  233. package/dist/components/layout/Board/index.js +1 -1
  234. package/dist/components/layout/Board/responsive-utils.js +1 -1
  235. package/dist/components/layout/Board/use-board-layout.js +1 -1
  236. package/dist/components/layout/Board/use-board-registry.js +1 -1
  237. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  238. package/dist/components/layout/Board/use-board-selection.js +1 -1
  239. package/dist/components/layout/Flex.js +1 -1
  240. package/dist/components/layout/Flow.js +1 -1
  241. package/dist/components/layout/Grid.js +1 -1
  242. package/dist/components/layout/Panel.js +1 -1
  243. package/dist/components/layout/Prefix.js +1 -1
  244. package/dist/components/layout/ResizablePanel.js +1 -1
  245. package/dist/components/layout/Space.js +1 -1
  246. package/dist/components/layout/Suffix.js +1 -1
  247. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  248. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  249. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  250. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  251. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  252. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  253. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  254. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  255. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  256. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  257. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  258. package/dist/components/navigation/Tabs/styled.js +1 -1
  259. package/dist/components/navigation/Tabs/types.js +1 -1
  260. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  261. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  262. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  263. package/dist/components/other/Calendar/Calendar.js +1 -1
  264. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  265. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  266. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  267. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  268. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  269. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  270. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  271. package/dist/components/other/Calendar/styled.js +1 -1
  272. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  273. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  274. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  275. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  276. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  277. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  278. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  279. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  280. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  281. package/dist/components/overlays/Dialog/context.js +1 -1
  282. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  283. package/dist/components/overlays/Modal/Modal.d.ts +1 -2
  284. package/dist/components/overlays/Modal/Modal.js +1 -1
  285. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  286. package/dist/components/overlays/Modal/Overlay.d.ts +0 -1
  287. package/dist/components/overlays/Modal/Overlay.js +1 -1
  288. package/dist/components/overlays/Modal/Popover.js +1 -1
  289. package/dist/components/overlays/Modal/Tray.js +1 -1
  290. package/dist/components/overlays/Modal/Underlay.js +1 -1
  291. package/dist/components/overlays/Modal/types.d.ts +0 -1
  292. package/dist/components/overlays/Notifications/Notification.js +1 -1
  293. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  294. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  295. package/dist/components/overlays/Notifications/NotificationContext.d.ts +0 -2
  296. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  297. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  298. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  299. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  300. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  301. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  302. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  303. package/dist/components/overlays/Notifications/index.js +1 -1
  304. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  305. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  306. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  307. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  308. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  309. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  310. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  311. package/dist/components/overlays/Toast/index.js +1 -1
  312. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  313. package/dist/components/overlays/Toast/useToast.js +1 -1
  314. package/dist/components/overlays/Tooltip/Tooltip.js +2 -1
  315. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  316. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  317. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  318. package/dist/components/overlays/Tooltip/context.js +1 -1
  319. package/dist/components/portal/Portal.js +1 -1
  320. package/dist/components/portal/PortalProvider.js +1 -1
  321. package/dist/components/portal/index.d.ts +0 -1
  322. package/dist/components/portal/usePortal.js +1 -1
  323. package/dist/components/shared/DraggableCollection.js +1 -1
  324. package/dist/components/shared/InvalidIcon.js +1 -1
  325. package/dist/components/shared/ValidIcon.js +1 -1
  326. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  327. package/dist/components/status/Spin/Cube.js +1 -1
  328. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  329. package/dist/components/status/Spin/Spin.js +1 -1
  330. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  331. package/dist/data/item-themes.js +1 -1
  332. package/dist/data/themes.js +1 -1
  333. package/dist/eslint-plugin/defaults.generated.js +1 -13
  334. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  335. package/dist/eslint-plugin/index.js +1 -1
  336. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  337. package/dist/i18n/I18nProvider.js +1 -1
  338. package/dist/i18n/createFormatter.js +1 -1
  339. package/dist/i18n/index.js +1 -1
  340. package/dist/i18n/instance.js +1 -1
  341. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  342. package/dist/i18n/locales/en-US/uikit.js +1 -1
  343. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  344. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  345. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  346. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  347. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  348. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  349. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  350. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  351. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  352. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  353. package/dist/i18n/locales.js +1 -1
  354. package/dist/i18n/useFormatter.js +1 -1
  355. package/dist/i18n/useI18n.js +1 -1
  356. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  357. package/dist/icons/AdjustmentsIcon.js +1 -1
  358. package/dist/icons/AiIcon.js +1 -1
  359. package/dist/icons/AreaChartIcon.js +1 -1
  360. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  361. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  362. package/dist/icons/BackwardIcon.js +1 -1
  363. package/dist/icons/BarChartIcon.js +1 -1
  364. package/dist/icons/BellFilledIcon.js +1 -1
  365. package/dist/icons/BellIcon.js +1 -1
  366. package/dist/icons/BooleanIcon.js +1 -1
  367. package/dist/icons/CalendarEditIcon.js +1 -1
  368. package/dist/icons/CalendarIcon.js +1 -1
  369. package/dist/icons/CaretDownIcon.js +1 -1
  370. package/dist/icons/CaretUpIcon.js +1 -1
  371. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  372. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  373. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  374. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  375. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  376. package/dist/icons/ChartBarLineIcon.js +1 -1
  377. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  378. package/dist/icons/ChartBarStackedIcon.js +1 -1
  379. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  380. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  381. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  382. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  383. package/dist/icons/ChartBubbleIcon.js +1 -1
  384. package/dist/icons/ChartDonut2Icon.js +1 -1
  385. package/dist/icons/ChartFunnelIcon.js +1 -1
  386. package/dist/icons/ChartHeatmapIcon.js +1 -1
  387. package/dist/icons/ChartKPIIcon.js +1 -1
  388. package/dist/icons/ChartPie2Icon.js +1 -1
  389. package/dist/icons/ChartScatterIcon.js +1 -1
  390. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  391. package/dist/icons/CheckCircleIcon.js +1 -1
  392. package/dist/icons/CheckIcon.js +1 -1
  393. package/dist/icons/CircleFilledIcon.js +1 -1
  394. package/dist/icons/ClearIcon.js +1 -1
  395. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  396. package/dist/icons/CloseCircleIcon.js +1 -1
  397. package/dist/icons/CloseIcon.js +1 -1
  398. package/dist/icons/CodeIcon.js +1 -1
  399. package/dist/icons/ColumnTotalIcon.js +1 -1
  400. package/dist/icons/CopyIcon.js +1 -1
  401. package/dist/icons/CountIcon.js +1 -1
  402. package/dist/icons/CubeIcon.js +1 -1
  403. package/dist/icons/CubePauseIcon.js +1 -1
  404. package/dist/icons/CubePlayIcon.js +1 -1
  405. package/dist/icons/CurrencyDollarIcon.js +1 -1
  406. package/dist/icons/DangerIcon.js +1 -1
  407. package/dist/icons/DashboardIcon.js +1 -1
  408. package/dist/icons/DatabaseIcon.js +1 -1
  409. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  410. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  411. package/dist/icons/DirectionIcon.js +1 -1
  412. package/dist/icons/DonutIcon.js +1 -1
  413. package/dist/icons/DownIcon.js +1 -1
  414. package/dist/icons/EditIcon.js +1 -1
  415. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  416. package/dist/icons/ExclamationCircleIcon.js +1 -1
  417. package/dist/icons/ExclamationIcon.js +1 -1
  418. package/dist/icons/EyeIcon.js +1 -1
  419. package/dist/icons/EyeInvisibleIcon.js +1 -1
  420. package/dist/icons/FilterIcon.js +1 -1
  421. package/dist/icons/FolderFilledIcon.js +1 -1
  422. package/dist/icons/FolderIcon.js +1 -1
  423. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  424. package/dist/icons/FolderOpenIcon.js +1 -1
  425. package/dist/icons/ForwardIcon.js +1 -1
  426. package/dist/icons/GripVerticalIcon.js +1 -1
  427. package/dist/icons/HierarchyIcon.js +1 -1
  428. package/dist/icons/HierarchyOpenIcon.js +1 -1
  429. package/dist/icons/Icon.js +1 -1
  430. package/dist/icons/InfoCircleIcon.js +1 -1
  431. package/dist/icons/InfoIcon.js +1 -1
  432. package/dist/icons/KeyIcon.js +1 -1
  433. package/dist/icons/LeftIcon.js +1 -1
  434. package/dist/icons/LineChartIcon.js +1 -1
  435. package/dist/icons/LoadingIcon.js +1 -1
  436. package/dist/icons/LockFilledIcon.js +1 -1
  437. package/dist/icons/LockIcon.js +1 -1
  438. package/dist/icons/MoreIcon.js +1 -1
  439. package/dist/icons/NotAllowedIcon.js +1 -1
  440. package/dist/icons/Number123Icon.js +1 -1
  441. package/dist/icons/NumberIcon.js +1 -1
  442. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  443. package/dist/icons/PauseCircleIcon.js +1 -1
  444. package/dist/icons/PauseIcon.js +1 -1
  445. package/dist/icons/PercentageIcon.js +1 -1
  446. package/dist/icons/PieChartIcon.js +1 -1
  447. package/dist/icons/PipetteIcon.js +1 -1
  448. package/dist/icons/PlayCircleIcon.js +1 -1
  449. package/dist/icons/PlayIcon.js +1 -1
  450. package/dist/icons/PlusIcon.js +1 -1
  451. package/dist/icons/ProgressBarIcon.js +1 -1
  452. package/dist/icons/ReloadIcon.js +1 -1
  453. package/dist/icons/ReportIcon.js +1 -1
  454. package/dist/icons/ReturnIcon.js +1 -1
  455. package/dist/icons/RightIcon.js +1 -1
  456. package/dist/icons/RowTotalsIcon.js +1 -1
  457. package/dist/icons/SchemeIcon.js +1 -1
  458. package/dist/icons/SearchIcon.js +1 -1
  459. package/dist/icons/SemanticQueryIcon.js +1 -1
  460. package/dist/icons/SettingsIcon.js +1 -1
  461. package/dist/icons/ShieldFilledIcon.js +1 -1
  462. package/dist/icons/ShieldIcon.js +1 -1
  463. package/dist/icons/SlashIcon.js +1 -1
  464. package/dist/icons/SparklesIcon.js +1 -1
  465. package/dist/icons/SqlIcon.js +1 -1
  466. package/dist/icons/StatsIcon.js +1 -1
  467. package/dist/icons/StopIcon.js +1 -1
  468. package/dist/icons/StringIcon.js +1 -1
  469. package/dist/icons/SubtotalsIcon.js +1 -1
  470. package/dist/icons/SwitchIcon.js +1 -1
  471. package/dist/icons/TableIcon.js +1 -1
  472. package/dist/icons/ThumbsDownIcon.js +1 -1
  473. package/dist/icons/ThumbsUpIcon.js +1 -1
  474. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  475. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  476. package/dist/icons/ThunderboltIcon.js +1 -1
  477. package/dist/icons/TimeIcon.js +1 -1
  478. package/dist/icons/TrashIcon.js +1 -1
  479. package/dist/icons/UnlockIcon.js +1 -1
  480. package/dist/icons/UpIcon.js +1 -1
  481. package/dist/icons/UserGroupIcon.js +1 -1
  482. package/dist/icons/UserIcon.js +1 -1
  483. package/dist/icons/UserLockIcon.js +1 -1
  484. package/dist/icons/ViewIcon.js +1 -1
  485. package/dist/icons/WarningFilledIcon.js +1 -1
  486. package/dist/icons/WarningIcon.js +1 -1
  487. package/dist/icons/wrap-icon.js +1 -1
  488. package/dist/index.js +1 -1
  489. package/dist/probe/canonicalize.js +1 -1
  490. package/dist/probe/css.js +1 -1
  491. package/dist/probe/index.js +1 -1
  492. package/dist/provider.js +1 -1
  493. package/dist/providers/TrackingProvider.js +1 -1
  494. package/dist/providers/navigationAdapter.default.js +1 -1
  495. package/dist/tokens/base.js +1 -1
  496. package/dist/tokens/color-seed.js +1 -1
  497. package/dist/tokens/color-theme.js +1 -1
  498. package/dist/tokens/colors.js +1 -1
  499. package/dist/tokens/index.js +1 -1
  500. package/dist/tokens/layout.js +1 -1
  501. package/dist/tokens/lazy-styles.js +1 -1
  502. package/dist/tokens/palette-config.js +1 -1
  503. package/dist/tokens/palette.js +1 -1
  504. package/dist/tokens/shadows.js +1 -1
  505. package/dist/tokens/sizes.js +1 -1
  506. package/dist/tokens/spacing.js +1 -1
  507. package/dist/tokens/typography.js +1 -1
  508. package/dist/utils/ResizeSensor.js +1 -1
  509. package/dist/utils/is-dev-env.js +1 -1
  510. package/dist/utils/modules.js +1 -1
  511. package/dist/utils/promise.js +1 -1
  512. package/dist/utils/raf.js +1 -1
  513. package/dist/utils/random.js +1 -1
  514. package/dist/utils/range.js +1 -1
  515. package/dist/utils/react/RenderCache.js +1 -1
  516. package/dist/utils/react/Slots.js +1 -1
  517. package/dist/utils/react/chain.js +1 -1
  518. package/dist/utils/react/disabledProps.js +1 -1
  519. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  520. package/dist/utils/react/index.js +1 -1
  521. package/dist/utils/react/interactions.js +1 -1
  522. package/dist/utils/react/isTextOnly.js +1 -1
  523. package/dist/utils/react/mapProps.js +1 -1
  524. package/dist/utils/react/mergeProps.js +1 -1
  525. package/dist/utils/react/nullableValue.js +1 -1
  526. package/dist/utils/react/resolveIcon.js +1 -1
  527. package/dist/utils/react/sharedStore.js +1 -1
  528. package/dist/utils/react/useBufferedValue.js +1 -1
  529. package/dist/utils/react/useCombinedRefs.js +1 -1
  530. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  531. package/dist/utils/react/useEventBus.js +1 -1
  532. package/dist/utils/react/useId.js +1 -1
  533. package/dist/utils/react/useIsDarwin.js +1 -1
  534. package/dist/utils/react/useKeySymbols.js +1 -1
  535. package/dist/utils/react/useLayoutEffect.js +1 -1
  536. package/dist/utils/react/useLocalStorage.js +1 -1
  537. package/dist/utils/react/useMergeStyles.js +1 -1
  538. package/dist/utils/react/usePopoverSync.js +1 -1
  539. package/dist/utils/react/useQaProps.js +1 -1
  540. package/dist/utils/react/useViewportSize.js +1 -1
  541. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  542. package/dist/utils/selection.js +1 -1
  543. package/dist/utils/styles.js +1 -1
  544. package/dist/utils/tree.js +1 -1
  545. package/dist/utils/warnings.js +1 -1
  546. package/dist/version.js +3 -3
  547. package/docs/Colors.md +40 -16
  548. package/docs/ComplexLayout.md +0 -8
  549. package/docs/CreateComponent.md +8 -15
  550. package/docs/Introduction.md +36 -15
  551. package/docs/RenderCache.md +6 -8
  552. package/docs/Theming.md +497 -164
  553. package/docs/Usage.md +138 -108
  554. package/docs/Utilities.md +2 -2
  555. package/docs/components/CollectionItem.md +0 -1
  556. package/docs/components/actions/Banner.md +0 -1
  557. package/docs/components/actions/Button.md +36 -8
  558. package/docs/components/actions/ButtonSplit.md +0 -2
  559. package/docs/components/actions/CommandMenu.md +8 -8
  560. package/docs/components/actions/ItemButton.md +20 -6
  561. package/docs/components/actions/Link.md +5 -10
  562. package/docs/components/actions/Menu.md +11 -24
  563. package/docs/components/actions/MenuTrigger.md +12 -3
  564. package/docs/components/actions/use-anchored-menu.md +2 -2
  565. package/docs/components/actions/use-context-menu.md +2 -5
  566. package/docs/components/content/Badge.md +0 -3
  567. package/docs/components/content/HotKeys.md +14 -21
  568. package/docs/components/content/InlineInput.md +14 -14
  569. package/docs/components/content/Item.md +17 -25
  570. package/docs/components/content/ItemCard.md +0 -1
  571. package/docs/components/content/Layout.md +1 -12
  572. package/docs/components/content/PrismCode.md +18 -13
  573. package/docs/components/content/Tag.md +1 -1
  574. package/docs/components/content/TextItem.md +3 -5
  575. package/docs/components/content/Tree.md +154 -69
  576. package/docs/components/data/DataTable.md +168 -56
  577. package/docs/components/data/ItemTable.md +485 -182
  578. package/docs/components/fields/Checkbox.md +0 -2
  579. package/docs/components/fields/ColorInput.md +79 -38
  580. package/docs/components/fields/ColorPicker.md +39 -17
  581. package/docs/components/fields/ColorSwatch.md +30 -11
  582. package/docs/components/fields/ColorSwatchGroup.md +42 -18
  583. package/docs/components/fields/ComboBox.md +1 -13
  584. package/docs/components/fields/CommandTextArea.md +37 -10
  585. package/docs/components/fields/DatePicker.md +0 -3
  586. package/docs/components/fields/FileInput.md +0 -3
  587. package/docs/components/fields/FilterListBox.md +14 -34
  588. package/docs/components/fields/FilterPicker.md +16 -33
  589. package/docs/components/fields/HueSlider.md +5 -5
  590. package/docs/components/fields/ListBox.md +9 -35
  591. package/docs/components/fields/NumberInput.md +0 -3
  592. package/docs/components/fields/PasswordInput.md +0 -3
  593. package/docs/components/fields/PeriodPicker.md +17 -7
  594. package/docs/components/fields/Picker.md +29 -54
  595. package/docs/components/fields/RadioGroup.md +5 -13
  596. package/docs/components/fields/SearchComboBox.md +0 -3
  597. package/docs/components/fields/SearchInput.md +2 -4
  598. package/docs/components/fields/Select.md +13 -23
  599. package/docs/components/fields/Switch.md +0 -3
  600. package/docs/components/fields/TextInput.md +0 -3
  601. package/docs/components/fields/TextInputMapper.md +2 -1
  602. package/docs/components/form/Field.md +2 -5
  603. package/docs/components/form/Form.md +0 -5
  604. package/docs/components/form/FormInstance.md +1 -1
  605. package/docs/components/helpers/DisplayTransition.md +6 -10
  606. package/docs/components/helpers/IconSwitch.md +0 -1
  607. package/docs/components/layout/Board.md +190 -50
  608. package/docs/components/navigation/Pagination.md +75 -36
  609. package/docs/components/navigation/Tabs.md +15 -3
  610. package/docs/components/other/Calendar.md +39 -22
  611. package/docs/components/other/CubeLogo.md +1 -1
  612. package/docs/components/overlays/Dialog.md +0 -3
  613. package/docs/components/overlays/DialogContainer.md +0 -2
  614. package/docs/components/overlays/DialogForm.md +2 -6
  615. package/docs/components/overlays/DialogTrigger.md +2 -4
  616. package/docs/components/overlays/Notifications.md +0 -7
  617. package/docs/components/overlays/Toast.md +8 -12
  618. package/docs/components/overlays/Tooltip.md +12 -6
  619. package/docs/components/overlays/UseDialogContainer.md +10 -16
  620. package/docs/components/status/LoadingAnimation.md +9 -3
  621. package/docs/tasty/configuration.md +0 -127
  622. package/docs/tasty/injector.md +0 -11
  623. package/package.json +4 -4
  624. package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +0 -2
  625. package/dist/components/portal/PortalProvider.d.ts +0 -2
@@ -149,13 +149,11 @@ The `mods` property accepts the following modifiers you can override:
149
149
  ## Best Practices
150
150
 
151
151
  1. **Do**: Provide clear, descriptive labels
152
-
153
152
  ```jsx
154
153
  <Checkbox>Enable two-factor authentication</Checkbox>
155
154
  ```
156
155
 
157
156
  2. **Don't**: Use unclear or ambiguous text
158
-
159
157
  ```jsx
160
158
  <Checkbox>Enable</Checkbox> {/* What gets enabled? */}
161
159
  ```
@@ -1,16 +1,26 @@
1
1
  # ColorInput
2
2
 
3
- An input for a single color. It reads and writes color **text** — hex, `rgb()`, `hsl()`, `okhsl()`, `okhst()` and `oklch()` — shows the current color as a swatch, and opens a popover where the color can be dialed in on three perceptual axes.
3
+ An input for a single color. It reads and writes color **text** — hex, `rgb()`,
4
+ `hsl()`, `okhsl()`, `okhst()` and `oklch()` — shows the current color as a
5
+ swatch, and opens a popover where the color can be dialed in on three
6
+ perceptual axes.
4
7
 
5
- Every conversion goes through [Glaze](https://github.com/tenphi/glaze), so the canonical value the picker holds is OKHSL: bounded on every channel, and always inside the sRGB gamut. That is what makes an out-of-gamut state impossible and lets the same value be re-serialized into any of the supported notations without drift.
8
+ Every conversion goes through [Glaze](https://github.com/tenphi/glaze), so the
9
+ canonical value the picker holds is OKHSL: bounded on every channel, and always
10
+ inside the sRGB gamut. That is what makes an out-of-gamut state impossible and
11
+ lets the same value be re-serialized into any of the supported notations without
12
+ drift.
6
13
 
7
14
  ## When to Use
8
15
 
9
16
  - Theme and branding forms — a seed color, an accent, a chart series color
10
- - Anywhere a color has to be typed _or_ explored, rather than chosen from a fixed palette
11
- - When the stored format matters (a design token file wants `oklch()`, a legacy API wants hex) and the input has to guarantee it
17
+ - Anywhere a color has to be typed *or* explored, rather than chosen from a
18
+ fixed palette
19
+ - When the stored format matters (a design token file wants `oklch()`, a legacy
20
+ API wants hex) and the input has to guarantee it
12
21
 
13
- Reach for a `RadioGroup` or `Picker` of swatches instead when the choice is limited to a handful of approved colors.
22
+ Reach for a `RadioGroup` or `Picker` of swatches instead when the choice is
23
+ limited to a handful of approved colors.
14
24
 
15
25
  ## Component
16
26
 
@@ -33,11 +43,19 @@ Reach for a `RadioGroup` or `Picker` of swatches instead when the choice is limi
33
43
  - **`onFocus`** `(event: FocusEvent) => void` — Fired when the text input receives focus
34
44
  - **`onBlur`** `(event: FocusEvent) => void` — Fired when the text input loses focus
35
45
 
36
- Named CSS colors (`red`, `rebeccapurple`) are **not** accepted — they are not a color space, and Glaze does not resolve them either. Alpha is parsed but dropped: the value is always opaque.
46
+ Named CSS colors (`red`, `rebeccapurple`) are **not** accepted — they are not a
47
+ color space, and Glaze does not resolve them either. Alpha is parsed but
48
+ dropped: the value is always opaque.
37
49
 
38
- Focusing the field selects the whole value, so a pasted color replaces it outright. The string is the unit of editing here: a single channel is tuned with the sliders rather than by hand-editing one number inside `oklch(…)`. Clicking a field that already has focus positions the caret as usual, so the text stays editable by hand.
50
+ Focusing the field selects the whole value, so a pasted color replaces it
51
+ outright. The string is the unit of editing here: a single channel is tuned with
52
+ the sliders rather than by hand-editing one number inside `oklch(…)`. Clicking a
53
+ field that already has focus positions the caret as usual, so the text stays
54
+ editable by hand.
39
55
 
40
- Rendered inside a color popover — as `ColorPicker` does at the top of its panel — the trigger is dropped automatically, since the popover it would open is the one already showing.
56
+ Rendered inside a color popover — as `ColorPicker` does at the top of its panel
57
+ — the trigger is dropped automatically, since the popover it would open is the
58
+ one already showing.
41
59
 
42
60
  ### Base Properties
43
61
 
@@ -86,31 +104,40 @@ These properties allow direct style application without using the `styles` prop:
86
104
 
87
105
  The `mods` property accepts the following modifiers you can override:
88
106
 
89
- | Modifier | Type | Description |
90
- | ---------- | --------- | ---------------------------------- |
91
- | `focused` | `boolean` | The text input has focus |
92
- | `hovered` | `boolean` | The pointer is over the input |
93
- | `disabled` | `boolean` | The picker is disabled |
94
- | `valid` | `boolean` | The field is in the valid state |
95
- | `invalid` | `boolean` | The field is in the invalid state |
96
- | `prefix` | `boolean` | A prefix (the swatch) is rendered |
97
- | `suffix` | `boolean` | A suffix (the trigger) is rendered |
107
+ | Modifier | Type | Description |
108
+ | ---------- | --------- | ------------------------------------------------- |
109
+ | `focused` | `boolean` | The text input has focus |
110
+ | `hovered` | `boolean` | The pointer is over the input |
111
+ | `disabled` | `boolean` | The picker is disabled |
112
+ | `valid` | `boolean` | The field is in the valid state |
113
+ | `invalid` | `boolean` | The field is in the invalid state |
114
+ | `prefix` | `boolean` | A prefix (the swatch) is rendered |
115
+ | `suffix` | `boolean` | A suffix (the trigger) is rendered |
98
116
 
99
117
  The swatch carries its own `empty` modifier while there is no color to show.
100
118
 
101
119
  ## Format modes
102
120
 
103
- The three modes differ in how much freedom the _text_ gets. The value is always a real color in every one of them.
121
+ The three modes differ in how much freedom the *text* gets. The value is always
122
+ a real color in every one of them.
104
123
 
105
- | Mode | Text | Value |
106
- | --- | --- | --- |
107
- | `forced` | Rewritten in `format` on blur/Enter | Written in `format` from the first change on |
108
- | `derive` | Left exactly as typed | Normalized in the notation the text is written in |
109
- | `free` | Left exactly as typed | The text itself, verbatim |
124
+ | Mode | Text | Value |
125
+ | -------- | ----------------------------------- | ---------------------------------------------------- |
126
+ | `forced` | Rewritten in `format` on blur/Enter | Written in `format` from the first change on |
127
+ | `derive` | Left exactly as typed | Normalized in the notation the text is written in |
128
+ | `free` | Left exactly as typed | The text itself, verbatim |
110
129
 
111
- In every mode an entry that is not a color is rejected: the previous valid color stays the value while it is being typed, and the text snaps back to it on blur. Emptying the field is not an error — it commits `null`.
130
+ In every mode an entry that is not a color is rejected: the previous valid color
131
+ stays the value while it is being typed, and the text snaps back to it on blur.
132
+ Emptying the field is not an error — it commits `null`.
112
133
 
113
- **The value you pass in is left as you wrote it.** No mode reformats it on mount, including `forced` — doing so would mean calling `onChange` before the user has touched anything, which marks a form dirty for no reason. `forced` normalizes the text for display straight away, so the field can show `#7a4dbf` while the value is still the `rgb(122 77 191)` you supplied; from the first change onward the value is written in `format` too. Normalize before storing if the notation matters to you from the outset.
134
+ **The value you pass in is left as you wrote it.** No mode reformats it on mount,
135
+ including `forced` — doing so would mean calling `onChange` before the user has
136
+ touched anything, which marks a form dirty for no reason. `forced` normalizes the
137
+ text for display straight away, so the field can show `#7a4dbf` while the value
138
+ is still the `rgb(122 77 191)` you supplied; from the first change onward the
139
+ value is written in `format` too. Normalize before storing if the notation
140
+ matters to you from the outset.
114
141
 
115
142
  ```jsx
116
143
  // A design-token form that must store OKLCH
@@ -124,15 +151,18 @@ In every mode an entry that is not a color is rejected: the previous valid color
124
151
 
125
152
  The popover edits one canonical color through three sets of axes:
126
153
 
127
- | Space | Axes | Good for |
128
- | --- | --- | --- |
154
+ | Space | Axes | Good for |
155
+ | ----- | ----------------------------- | ----------------------------------------------------- |
129
156
  | `hst` | Hue, Saturation, Tone (OKHST) | Building ramps — equal tone steps read as equal steps |
130
- | `lch` | Lightness, Chroma, Hue (OKLCH) | Matching a value from a design-token file |
131
- | `rgb` | Red, Green, Blue | Matching a value from a legacy palette or a screenshot |
157
+ | `lch` | Lightness, Chroma, Hue (OKLCH)| Matching a value from a design-token file |
158
+ | `rgb` | Red, Green, Blue | Matching a value from a legacy palette or a screenshot|
132
159
 
133
- Each of these opens on its own space; the switcher inside the popover moves between them at any time.
160
+ Each of these opens on its own space; the switcher inside the popover moves
161
+ between them at any time.
134
162
 
135
- `H` means the same angle in HST and LCH, so the hue strip is identical in both. The chroma slider is bounded by the sRGB gamut at the current lightness and hue, which is why its range changes as `L` moves.
163
+ `H` means the same angle in HST and LCH, so the hue strip is identical in both.
164
+ The chroma slider is bounded by the sRGB gamut at the current lightness and hue,
165
+ which is why its range changes as `L` moves.
136
166
 
137
167
  ## Examples
138
168
 
@@ -171,7 +201,9 @@ const [color, setColor] = useState('#7a4dbf');
171
201
 
172
202
  ### Using the value as a style
173
203
 
174
- Because the emitted value is a plain color string, it can go straight into a tasty style — including the `okhsl()` and `okhst()` notations, which tasty parses natively.
204
+ Because the emitted value is a plain color string, it can go straight into a
205
+ tasty style — including the `okhsl()` and `okhst()` notations, which tasty
206
+ parses natively.
175
207
 
176
208
  ```jsx
177
209
  const [color, setColor] = useState('okhst(264 80% 60%)');
@@ -198,7 +230,8 @@ const [color, setColor] = useState('okhst(264 80% 60%)');
198
230
  - The text input announces as a textbox with the field's label
199
231
  - The trigger announces as "Open the color picker"
200
232
  - The popover announces as a dialog named "Color picker"
201
- - Each channel slider sits in a group named after its axis (`Hue`, `Saturation`, `Tone`, `Lightness`, `Chroma`, `Red`, `Green`, `Blue`)
233
+ - Each channel slider sits in a group named after its axis (`Hue`,
234
+ `Saturation`, `Tone`, `Lightness`, `Chroma`, `Red`, `Green`, `Blue`)
202
235
  - The swatch is decorative and is not announced — the text carries the value
203
236
 
204
237
  ### ARIA Properties
@@ -220,20 +253,28 @@ const [color, setColor] = useState('okhst(264 80% 60%)');
220
253
  <ColorInput aria-label="" />
221
254
  ```
222
255
 
223
- 3. **Do**: pick the `format` your backend stores, and leave `formatMode` at `forced` so the two can never disagree.
256
+ 3. **Do**: pick the `format` your backend stores, and leave `formatMode` at
257
+ `forced` so the two can never disagree.
224
258
 
225
- 4. **Don't**: use `free` mode when the value is later parsed by something stricter than a browser — the text is passed through as written.
259
+ 4. **Don't**: use `free` mode when the value is later parsed by something
260
+ stricter than a browser — the text is passed through as written.
226
261
 
227
262
  ## Integration with Forms
228
263
 
229
- This component supports all [Field properties](../../FieldProperties.md) when used within a Form. The field value is the color string, and clearing the input stores `null`, which makes `required` rules behave as expected.
264
+ This component supports all
265
+ [Field properties](../../FieldProperties.md) when used
266
+ within a Form. The field value is the color string, and clearing the input
267
+ stores `null`, which makes `required` rules behave as expected.
230
268
 
231
269
  ## Suggested Improvements
232
270
 
233
- - An eyedropper that samples a pixel from the page, where [`EyeDropper`](https://developer.mozilla.org/en-US/docs/Web/API/EyeDropper) is available
271
+ - An eyedropper that samples a pixel from the page, where
272
+ [`EyeDropper`](https://developer.mozilla.org/en-US/docs/Web/API/EyeDropper) is
273
+ available
234
274
  - Optional alpha support, which the canonical value currently drops
235
275
  - A row of recent or preset swatches inside the popover
236
- - Editable numeric inputs next to each channel slider, for exact entry without going through the text field
276
+ - Editable numeric inputs next to each channel slider, for exact entry without
277
+ going through the text field
237
278
 
238
279
  ## Related Components
239
280
 
@@ -1,8 +1,12 @@
1
1
  # ColorPicker
2
2
 
3
- A swatch button that opens the color popover. It is the same popover [ColorInput](./ColorInput.md) uses — three perceptual axes backed by [Glaze](https://github.com/tenphi/glaze) — without the text field in front of it.
3
+ A swatch button that opens the color popover. It is the same popover
4
+ [ColorInput](./ColorInput.md) uses — three perceptual axes backed
5
+ by [Glaze](https://github.com/tenphi/glaze) — without the text field in front of
6
+ it.
4
7
 
5
- Reach for it when a color is **chosen but never typed**. Reach for `ColorInput` when someone needs to paste `#7a4dbf` from a brand guide.
8
+ Reach for it when a color is **chosen but never typed**. Reach for `ColorInput`
9
+ when someone needs to paste `#7a4dbf` from a brand guide.
6
10
 
7
11
  ## When to Use
8
12
 
@@ -10,7 +14,8 @@ Reach for it when a color is **chosen but never typed**. Reach for `ColorInput`
10
14
  - A chart legend, a tag color, a cell in a dense table
11
15
  - Anywhere the exact notation is an implementation detail the user never sees
12
16
 
13
- Use [ColorInput](./ColorInput.md) instead when the color has to be readable and pasteable as text.
17
+ Use [ColorInput](./ColorInput.md) instead when the color has to be
18
+ readable and pasteable as text.
14
19
 
15
20
  ## Component
16
21
 
@@ -36,7 +41,10 @@ Use [ColorInput](./ColorInput.md) instead when the color has to be readable and
36
41
  - **`onOpenChange`** `(isOpen: boolean) => void` — Fired when the popover opens or closes
37
42
  - **`shouldFlip`** `boolean` (default: `true`) — Whether the popover may flip to the other side of the trigger
38
43
 
39
- There is no `formatMode`: with no text to reconcile, `format` alone decides how the value is written. Everything else about the color model — the notations it reads, the gamut handling, the three spaces — is identical to `ColorInput` and documented there.
44
+ There is no `formatMode`: with no text to reconcile, `format` alone decides how
45
+ the value is written. Everything else about the color model — the notations it
46
+ reads, the gamut handling, the three spaces — is identical to `ColorInput` and
47
+ documented there.
40
48
 
41
49
  ### Base Properties
42
50
 
@@ -72,25 +80,30 @@ These properties allow direct style application without using the `styles` prop:
72
80
 
73
81
  The `mods` property accepts the following modifiers you can override:
74
82
 
75
- | Modifier | Type | Description |
76
- | ------------- | --------- | ------------------------ |
77
- | `placeholder` | `boolean` | No color is selected yet |
83
+ | Modifier | Type | Description |
84
+ | ------------- | --------- | ------------------------------------ |
85
+ | `placeholder` | `boolean` | No color is selected yet |
78
86
 
79
87
  The swatch carries its own `empty` modifier while there is no color to show.
80
88
 
81
89
  ### The value as text
82
90
 
83
- The popover carries a `ColorInput` above the preview, so the exact color can be read, copied, pasted and normalized in place rather than only dialed in. It has no trigger of its own — a disclosure inside the thing it discloses would be meaningless — and clearing it clears the picker.
91
+ The popover carries a `ColorInput` above the preview, so the exact color can be
92
+ read, copied, pasted and normalized in place rather than only dialed in. It has
93
+ no trigger of its own — a disclosure inside the thing it discloses would be
94
+ meaningless — and clearing it clears the picker.
84
95
 
85
96
  ### A palette under the editor
86
97
 
87
- Pass `swatches` and a [ColorSwatchGroup](./ColorSwatchGroup.md) appears below the channels, so a common color is one press away.
98
+ Pass `swatches` and a [ColorSwatchGroup](./ColorSwatchGroup.md)
99
+ appears below the channels, so a common color is one press away.
88
100
 
89
101
  ```jsx
90
102
  <ColorPicker label="Brand color" swatches={palette} swatchColumns={4} />
91
103
  ```
92
104
 
93
- That group never offers its own custom-color escape hatch, since the escape hatch is a `ColorPicker` and would nest popovers without end.
105
+ That group never offers its own custom-color escape hatch, since the escape
106
+ hatch is a `ColorPicker` and would nest popovers without end.
94
107
 
95
108
  ## Examples
96
109
 
@@ -110,7 +123,8 @@ Drop the label for a compact button — a toolbar, or a cell in a table.
110
123
  </ColorPicker>
111
124
  ```
112
125
 
113
- Give it an `aria-label` when you do: with no visible text, that is the only thing naming the control.
126
+ Give it an `aria-label` when you do: with no visible text, that is the only
127
+ thing naming the control.
114
128
 
115
129
  ### A label of your own
116
130
 
@@ -147,10 +161,12 @@ Give it an `aria-label` when you do: with no visible text, that is the only thin
147
161
 
148
162
  ### Screen Reader Support
149
163
 
150
- - The trigger announces as a button, named by the field label, `aria-label`, or its own text
164
+ - The trigger announces as a button, named by the field label, `aria-label`, or
165
+ its own text
151
166
  - The popover announces as a dialog named "Color picker"
152
167
  - Each channel slider sits in a group named after its axis
153
- - The swatch is decorative; the color is announced as the trigger's text unless you replace it
168
+ - The swatch is decorative; the color is announced as the trigger's text unless
169
+ you replace it
154
170
 
155
171
  ### ARIA Properties
156
172
 
@@ -165,22 +181,28 @@ Give it an `aria-label` when you do: with no visible text, that is the only thin
165
181
  <ColorPicker aria-label="Series color">{null}</ColorPicker>
166
182
  ```
167
183
 
168
- 2. **Don't**: leave a swatch-only picker unnamed — the swatch says nothing to a screen reader
184
+ 2. **Don't**: leave a swatch-only picker unnamed — the swatch says nothing to a
185
+ screen reader
169
186
 
170
187
  ```jsx
171
188
  <ColorPicker>{null}</ColorPicker>
172
189
  ```
173
190
 
174
- 3. **Do**: reach for `ColorInput` the moment someone might want to paste a hex value; a picker alone makes that impossible.
191
+ 3. **Do**: reach for `ColorInput` the moment someone might want to paste a hex
192
+ value; a picker alone makes that impossible.
175
193
 
176
194
  ## Integration with Forms
177
195
 
178
- This component supports all [Field properties](../../FieldProperties.md) when used within a Form. The field value is the color string.
196
+ This component supports all
197
+ [Field properties](../../FieldProperties.md) when used
198
+ within a Form. The field value is the color string.
179
199
 
180
200
  ## Suggested Improvements
181
201
 
182
202
  - A row of recent or preset swatches inside the popover
183
- - An eyedropper that samples a pixel from the page, where [`EyeDropper`](https://developer.mozilla.org/en-US/docs/Web/API/EyeDropper) is available
203
+ - An eyedropper that samples a pixel from the page, where
204
+ [`EyeDropper`](https://developer.mozilla.org/en-US/docs/Web/API/EyeDropper) is
205
+ available
184
206
  - Clearing the color back to `null` from the trigger
185
207
 
186
208
  ## Related Components
@@ -1,8 +1,13 @@
1
1
  # ColorSwatch
2
2
 
3
- A square of color. It is the smallest piece of the color family — [ColorPicker](./ColorPicker.md), [ColorInput](./ColorInput.md) and [ColorSwatchGroup](./ColorSwatchGroup.md) all draw one, and it is exported so a legend, a list row or a table cell can draw the same one.
3
+ A square of color. It is the smallest piece of the color family —
4
+ [ColorPicker](./ColorPicker.md),
5
+ [ColorInput](./ColorInput.md) and
6
+ [ColorSwatchGroup](./ColorSwatchGroup.md) all draw one, and it is
7
+ exported so a legend, a list row or a table cell can draw the same one.
4
8
 
5
- It is decorative on its own: it carries no text and no accessible name. Pair it with the value written out, or put it in a control that names it.
9
+ It is decorative on its own: it carries no text and no accessible name. Pair it
10
+ with the value written out, or put it in a control that names it.
6
11
 
7
12
  ## When to Use
8
13
 
@@ -27,7 +32,8 @@ Supports [Base properties](../../BaseProperties.md)
27
32
 
28
33
  #### styles
29
34
 
30
- Customizes the swatch itself. `width` and `height` set here win over both the `size` prop and the automatic sizing.
35
+ Customizes the swatch itself. `width` and `height` set here win over both the
36
+ `size` prop and the automatic sizing.
31
37
 
32
38
  ### Style Properties
33
39
 
@@ -42,9 +48,9 @@ These properties allow direct style application without using the `styles` prop:
42
48
 
43
49
  The `mods` property accepts the following modifiers you can override:
44
50
 
45
- | Modifier | Type | Description |
46
- | --- | --- | --- |
47
- | `empty` | `boolean` | No color to show — drawn as the conventional diagonal stroke |
51
+ | Modifier | Type | Description |
52
+ | -------- | --------- | -------------------------------------------------------------- |
53
+ | `empty` | `boolean` | No color to show — drawn as the conventional diagonal stroke |
48
54
 
49
55
  ## Sizes
50
56
 
@@ -54,11 +60,21 @@ The `mods` property accepts the following modifiers you can override:
54
60
 
55
61
  ### Sizing inside a control
56
62
 
57
- Leave `size` off and the swatch sizes itself to whatever it sits in. `Item`, `Button` and the text inputs publish their own height as the `$size` custom property, and the swatch reads it and lands `8px` inside — `20px` in a `small` control, `24px` in a `medium` one, `28px` in a `large` one. Nothing has to be passed between the two, so a control that changes size takes its swatch with it.
63
+ Leave `size` off and the swatch sizes itself to whatever it sits in. `Item`,
64
+ `Button` and the text inputs publish their own height as the `$size` custom
65
+ property, and the swatch reads it and lands `8px` inside — `20px` in a `small`
66
+ control, `24px` in a `medium` one, `28px` in a `large` one. Nothing has to be
67
+ passed between the two, so a control that changes size takes its swatch with it.
58
68
 
59
- Outside a control there is nothing to read, and the swatch falls back to `medium`.
69
+ Outside a control there is nothing to read, and the swatch falls back to
70
+ `medium`.
60
71
 
61
- `ColorInput` and `ColorPicker` deliberately do **not** use this. Their swatch is a fixed `20px` badge at every field size — it reads as a value the field is showing rather than as part of the control, and a text input hangs its prefix off the border with no padding of its own, so a tracking swatch in a large field would sit against the edge. Automatic fitting is for a swatch you place yourself, in a `Button` or an `Item`, where the host has the padding that makes it work.
72
+ `ColorInput` and `ColorPicker` deliberately do **not** use this. Their swatch is a
73
+ fixed `20px` badge at every field size — it reads as a value the field is showing
74
+ rather than as part of the control, and a text input hangs its prefix off the border
75
+ with no padding of its own, so a tracking swatch in a large field would sit against
76
+ the edge. Automatic fitting is for a swatch you place yourself, in a `Button` or an
77
+ `Item`, where the host has the padding that makes it work.
62
78
 
63
79
  ## Examples
64
80
 
@@ -80,7 +96,8 @@ Outside a control there is nothing to read, and the swatch falls back to `medium
80
96
 
81
97
  ### With the value spelled out
82
98
 
83
- The swatch has no accessible name of its own, so the text beside it is what a screen reader announces.
99
+ The swatch has no accessible name of its own, so the text beside it is what a
100
+ screen reader announces.
84
101
 
85
102
  ```jsx
86
103
  <Space gap="1x" placeItems="center start">
@@ -103,7 +120,9 @@ The swatch has no accessible name of its own, so the text beside it is what a sc
103
120
 
104
121
  ## Accessibility
105
122
 
106
- `ColorSwatch` renders a plain `div` with no role and no name — a color on its own is not information a screen reader can use, and an announced hex is rarely what the user wants to hear.
123
+ `ColorSwatch` renders a plain `div` with no role and no name — a color on its
124
+ own is not information a screen reader can use, and an announced hex is rarely
125
+ what the user wants to hear.
107
126
 
108
127
  - **Do** put the value, or the name of the thing the color belongs to, next to it
109
128
  - **Do** rely on the surrounding control's `aria-label` when the swatch is its icon
@@ -1,8 +1,13 @@
1
1
  # ColorSwatchGroup
2
2
 
3
- A grid of color swatches, one of which can be selected. It is the palette half of choosing a color, where [ColorPicker](./ColorPicker.md) is the freeform half — and the two compose: pass `swatches` to a `ColorPicker` and the palette appears under the editor.
3
+ A grid of color swatches, one of which can be selected. It is the palette half
4
+ of choosing a color, where [ColorPicker](./ColorPicker.md) is the
5
+ freeform half — and the two compose: pass `swatches` to a `ColorPicker` and the
6
+ palette appears under the editor.
4
7
 
5
- Under the hood it is a radio group, so one tab stop and arrow keys move between swatches. The API is shaped after `Picker` rather than `RadioGroup`: colors go in as data, not as children.
8
+ Under the hood it is a radio group, so one tab stop and arrow keys move between
9
+ swatches. The API is shaped after `Picker` rather than `RadioGroup`: colors go in
10
+ as data, not as children.
6
11
 
7
12
  ## When to Use
8
13
 
@@ -53,33 +58,41 @@ These properties allow direct style application without using the `styles` prop:
53
58
 
54
59
  ### Style Props on the group
55
60
 
56
- `ColorSwatchGroup` and `ColorPicker` both take the outer and block style props, so `radius`, `border`, `padding` and `shadow` work directly on them.
61
+ `ColorSwatchGroup` and `ColorPicker` both take the outer and block style props,
62
+ so `radius`, `border`, `padding` and `shadow` work directly on them.
57
63
 
58
64
  ### Modifiers
59
65
 
60
66
  The `mods` property accepts the following modifiers you can override:
61
67
 
62
- | Modifier | Type | Description |
63
- | ---------- | --------- | -------------------------------- |
64
- | `selected` | `boolean` | The swatch is the selected color |
65
- | `empty` | `boolean` | The swatch has no color to show |
66
- | `disabled` | `boolean` | The group is disabled |
68
+ | Modifier | Type | Description |
69
+ | ---------- | --------- | ---------------------------------- |
70
+ | `selected` | `boolean` | The swatch is the selected color |
71
+ | `empty` | `boolean` | The swatch has no color to show |
72
+ | `disabled` | `boolean` | The group is disabled |
67
73
 
68
74
  ## ColorSwatch
69
75
 
70
- The square itself is exported, for the times you need to show a color without a control around it — a legend, a table cell, a summary line. It takes direct style props, so its shape and size are yours:
76
+ The square itself is exported, for the times you need to show a color without a
77
+ control around it — a legend, a table cell, a summary line. It takes direct
78
+ style props, so its shape and size are yours:
71
79
 
72
80
  ```jsx
73
81
  <ColorSwatch color="#7a4dbf" radius="round" width="4x" height="4x" />
74
82
  ```
75
83
 
76
- It is decorative on its own: pair it with the value as text, or with something that names it.
84
+ It is decorative on its own: pair it with the value as text, or with something
85
+ that names it.
77
86
 
78
87
  ## Swatches must be unique
79
88
 
80
- Equivalent colors are collapsed into one swatch, because two entries for the same color make selection ambiguous — there would be no way to say which one is selected. Matching is done on the canonical hex, so `#ff0000`, `rgb(255 0 0)` and `hsl(0 100% 50%)` are one swatch, not three.
89
+ Equivalent colors are collapsed into one swatch, because two entries for the
90
+ same color make selection ambiguous — there would be no way to say which one is
91
+ selected. Matching is done on the canonical hex, so `#ff0000`, `rgb(255 0 0)`
92
+ and `hsl(0 100% 50%)` are one swatch, not three.
81
93
 
82
- The same matching decides which swatch a value selects, so `value` need not be written in the same notation as the swatch it refers to.
94
+ The same matching decides which swatch a value selects, so `value` need not be
95
+ written in the same notation as the swatch it refers to.
83
96
 
84
97
  ## Examples
85
98
 
@@ -96,7 +109,10 @@ The same matching decides which swatch a value selects, so `value` need not be w
96
109
 
97
110
  ### Wrapping onto rows
98
111
 
99
- By default the swatches wrap to fill whatever width they are given: a single row where there is room, more rows where there is not. `columns` pins them to a fixed grid instead, sized to the swatches rather than stretched across the container.
112
+ By default the swatches wrap to fill whatever width they are given: a single row
113
+ where there is room, more rows where there is not. `columns` pins them to a
114
+ fixed grid instead, sized to the swatches rather than stretched across the
115
+ container.
100
116
 
101
117
  ```jsx
102
118
  <ColorSwatchGroup colors={palette} columns={4} />
@@ -104,7 +120,8 @@ By default the swatches wrap to fill whatever width they are given: a single row
104
120
 
105
121
  ### Naming the swatches
106
122
 
107
- A swatch announces its color by default, which is rarely the most useful thing to hear. Give the colors names when they have them.
123
+ A swatch announces its color by default, which is rarely the most useful thing
124
+ to hear. Give the colors names when they have them.
108
125
 
109
126
  ```jsx
110
127
  <ColorSwatchGroup
@@ -121,7 +138,8 @@ A swatch announces its color by default, which is rarely the most useful thing t
121
138
  <ColorSwatchGroup colors={palette} allowCustom />
122
139
  ```
123
140
 
124
- The trailing picker shows the current color whenever that color is not one of the swatches, so a custom choice stays visible.
141
+ The trailing picker shows the current color whenever that color is not one of
142
+ the swatches, so a custom choice stays visible.
125
143
 
126
144
  ### Inside a ColorPicker
127
145
 
@@ -129,7 +147,10 @@ The trailing picker shows the current color whenever that color is not one of th
129
147
  <ColorPicker label="Brand color" swatches={palette} swatchColumns={4} />
130
148
  ```
131
149
 
132
- `allowCustom` is ignored there, and deliberately so: the escape hatch is itself a `ColorPicker`, so offering it inside one would nest popovers without end. The group reads a context the popover provides, which means the recursion cannot be written even by hand.
150
+ `allowCustom` is ignored there, and deliberately so: the escape hatch is itself
151
+ a `ColorPicker`, so offering it inside one would nest popovers without end. The
152
+ group reads a context the popover provides, which means the recursion cannot be
153
+ written even by hand.
133
154
 
134
155
  ## Accessibility
135
156
 
@@ -163,11 +184,14 @@ The trailing picker shows the current color whenever that color is not one of th
163
184
  <ColorSwatchGroup colors={['#ff0000', 'rgb(255 0 0)']} />
164
185
  ```
165
186
 
166
- 3. **Do**: reach for `allowCustom` only where a color outside the palette is genuinely acceptable. A fixed set is the point of this component.
187
+ 3. **Do**: reach for `allowCustom` only where a color outside the palette is
188
+ genuinely acceptable. A fixed set is the point of this component.
167
189
 
168
190
  ## Integration with Forms
169
191
 
170
- This component supports all [Field properties](../../FieldProperties.md) when used within a Form. The field value is the color string.
192
+ This component supports all
193
+ [Field properties](../../FieldProperties.md) when used
194
+ within a Form. The field value is the color string.
171
195
 
172
196
  ## Suggested Improvements
173
197
 
@@ -66,7 +66,6 @@ A combobox component that combines a text input with a dropdown list, allowing u
66
66
  **clearOnBlur** - When `true`, clears both the selection and input when the input loses focus. When `false` (default), the input reverts to showing the current selection. Only applies to non-custom-value mode. Useful for search-like scenarios where you want to reset after each interaction.
67
67
 
68
68
  **popoverTrigger** - Controls how the popover opens:
69
-
70
69
  - `manual` - Only opens via trigger button or arrow keys
71
70
  - `input` (default) - Opens when user types + manual triggers
72
71
  - `focus` - Opens on input focus + typing + manual triggers
@@ -88,7 +87,6 @@ Supports all [Field properties](../../FieldProperties.md)
88
87
  Customizes the root wrapper element of the ComboBox (the input container).
89
88
 
90
89
  **Sub-elements:**
91
-
92
90
  - `Prefix` - Container for prefix content and icons
93
91
  - `Suffix` - Container for suffix content, validation icons, and action buttons
94
92
  - `InputIcon` - Container for the left icon
@@ -547,7 +545,6 @@ const [selectedKey, setSelectedKey] = useState(null);
547
545
  ## Best Practices
548
546
 
549
547
  1. **Do**: Provide clear labels and placeholders
550
-
551
548
  ```jsx
552
549
  <ComboBox
553
550
  label="Country"
@@ -558,7 +555,6 @@ const [selectedKey, setSelectedKey] = useState(null);
558
555
  ```
559
556
 
560
557
  2. **Do**: Use sections to group related options
561
-
562
558
  ```jsx
563
559
  <ComboBox label="Contact">
564
560
  <ComboBox.Section title="Recent">
@@ -571,7 +567,6 @@ const [selectedKey, setSelectedKey] = useState(null);
571
567
  ```
572
568
 
573
569
  3. **Do**: Enable `allowsCustomValue` when user input flexibility is needed
574
-
575
570
  ```jsx
576
571
  <ComboBox
577
572
  allowsCustomValue
@@ -583,7 +578,6 @@ const [selectedKey, setSelectedKey] = useState(null);
583
578
  ```
584
579
 
585
580
  4. **Don't**: Use ComboBox for a small fixed set of options
586
-
587
581
  ```jsx
588
582
  {/* Use Select instead for simple dropdowns */}
589
583
  <ComboBox label="Yes or No">
@@ -593,7 +587,6 @@ const [selectedKey, setSelectedKey] = useState(null);
593
587
  ```
594
588
 
595
589
  5. **Don't**: Disable filtering on large lists
596
-
597
590
  ```jsx
598
591
  {/* Defeats the purpose of ComboBox's search capability */}
599
592
  <ComboBox filter={false} label="Countries">
@@ -602,7 +595,6 @@ const [selectedKey, setSelectedKey] = useState(null);
602
595
  ```
603
596
 
604
597
  6. **Accessibility**: Always provide meaningful labels and descriptions
605
-
606
598
  ```jsx
607
599
  <ComboBox
608
600
  label="Product Category"
@@ -614,7 +606,6 @@ const [selectedKey, setSelectedKey] = useState(null);
614
606
  ```
615
607
 
616
608
  7. **Performance**: Use `items` prop with render function for dynamic lists
617
-
618
609
  ```jsx
619
610
  <ComboBox items={largeDataset}>
620
611
  {(item) => <ComboBox.Item key={item.id}>{item.name}</ComboBox.Item>}
@@ -622,7 +613,6 @@ const [selectedKey, setSelectedKey] = useState(null);
622
613
  ```
623
614
 
624
615
  8. **Smart Behavior**: The ComboBox automatically shows all items when opening the popover after filtering yields no results
625
-
626
616
  ```jsx
627
617
  {/* User types "xyz" (no match), then clicks trigger - shows all items */}
628
618
  <ComboBox label="Search">
@@ -632,7 +622,6 @@ const [selectedKey, setSelectedKey] = useState(null);
632
622
  ```
633
623
 
634
624
  9. **Selected Item Sorting**: Use `items` prop for automatic selected-item-first sorting
635
-
636
625
  ```jsx
637
626
  {/* With items prop, selected item appears first by default */}
638
627
  <ComboBox items={options} defaultSelectedKey="option5">
@@ -641,11 +630,10 @@ const [selectedKey, setSelectedKey] = useState(null);
641
630
  ```
642
631
 
643
632
  10. **Independent Control**: Control input and selection separately when needed
644
-
645
633
  ```jsx
646
634
  const [inputValue, setInputValue] = useState('');
647
635
  const [selectedKey, setSelectedKey] = useState(null);
648
-
636
+
649
637
  <ComboBox
650
638
  inputValue={inputValue}
651
639
  selectedKey={selectedKey}