@cube-dev/ui-kit 0.183.0 → 0.185.0

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 (681) hide show
  1. package/README.md +1 -1
  2. package/dist/CHANGELOG.md +64 -0
  3. package/dist/README.md +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 +19 -18
  15. package/dist/components/GlobalStyles.js.map +1 -1
  16. package/dist/components/GridProvider.js +1 -1
  17. package/dist/components/HiddenInput.js +1 -1
  18. package/dist/components/Root.js +1 -1
  19. package/dist/components/actions/Action/Action.js +1 -1
  20. package/dist/components/actions/Banner/Banner.js +1 -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 +2 -1
  24. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  25. package/dist/components/actions/ButtonSplit/context.js +1 -1
  26. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -8
  27. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  28. package/dist/components/actions/CommandMenu/styled.js +1 -1
  29. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  30. package/dist/components/actions/ItemActionContext.js +1 -1
  31. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  32. package/dist/components/actions/ItemButton/ItemButton.js +3 -1
  33. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  34. package/dist/components/actions/Link/Link.js +1 -1
  35. package/dist/components/actions/Menu/Menu.js +1 -1
  36. package/dist/components/actions/Menu/Menu.js.map +1 -1
  37. package/dist/components/actions/Menu/MenuItem.js +19 -15
  38. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  39. package/dist/components/actions/Menu/MenuSection.js +1 -8
  40. package/dist/components/actions/Menu/MenuSection.js.map +1 -1
  41. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  42. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -7
  43. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  44. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  45. package/dist/components/actions/Menu/context.js +1 -1
  46. package/dist/components/actions/Menu/styled.js +1 -1
  47. package/dist/components/actions/actions-run.js +1 -1
  48. package/dist/components/actions/index.js +1 -1
  49. package/dist/components/actions/use-action.js +3 -5
  50. package/dist/components/actions/use-action.js.map +1 -1
  51. package/dist/components/actions/use-anchored-menu.js +1 -1
  52. package/dist/components/actions/use-context-menu.js +1 -1
  53. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  54. package/dist/components/content/Alert/Alert.js +1 -1
  55. package/dist/components/content/Alert/use-alert.js +1 -1
  56. package/dist/components/content/Avatar/Avatar.js +1 -1
  57. package/dist/components/content/Badge/Badge.js +1 -1
  58. package/dist/components/content/Card/Card.js +1 -1
  59. package/dist/components/content/Content.js +2 -1
  60. package/dist/components/content/Content.js.map +1 -1
  61. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  62. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  63. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  64. package/dist/components/content/Divider.js +1 -1
  65. package/dist/components/content/Footer.js +1 -1
  66. package/dist/components/content/Header.js +1 -1
  67. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  68. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  69. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  70. package/dist/components/content/Item/Item.d.ts +27 -2
  71. package/dist/components/content/Item/Item.js +242 -233
  72. package/dist/components/content/Item/Item.js.map +1 -1
  73. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  74. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  75. package/dist/components/content/Layout/GridLayout.js +1 -1
  76. package/dist/components/content/Layout/Layout.js +1 -1
  77. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  78. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  79. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  80. package/dist/components/content/Layout/LayoutContent.js +1 -1
  81. package/dist/components/content/Layout/LayoutContext.js +1 -1
  82. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  83. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  84. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  85. package/dist/components/content/Layout/LayoutHeader.js +123 -118
  86. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  87. package/dist/components/content/Layout/LayoutPane.js +1 -1
  88. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  89. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  90. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  91. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  92. package/dist/components/content/Layout/index.js +1 -1
  93. package/dist/components/content/Layout/utils.js +1 -1
  94. package/dist/components/content/Paragraph.js +1 -1
  95. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  96. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  97. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  98. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  99. package/dist/components/content/Result/Result.js +1 -1
  100. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  101. package/dist/components/content/Tag/Tag.d.ts +6 -1
  102. package/dist/components/content/Tag/Tag.js +1 -1
  103. package/dist/components/content/Tag/Tag.js.map +1 -1
  104. package/dist/components/content/Text.d.ts +14 -14
  105. package/dist/components/content/Text.js +1 -1
  106. package/dist/components/content/TextItem/TextItem.js +1 -1
  107. package/dist/components/content/Title.js +1 -1
  108. package/dist/components/content/Tree/Tree.js +1 -1
  109. package/dist/components/content/Tree/TreeNode.js +1 -1
  110. package/dist/components/content/Tree/styled.js +1 -1
  111. package/dist/components/content/Tree/tree-index.js +1 -1
  112. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  113. package/dist/components/content/Tree/use-load-data.js +1 -1
  114. package/dist/components/content/highlightText.js +1 -1
  115. package/dist/components/content/use-auto-tooltip.d.ts +1 -1
  116. package/dist/components/content/use-auto-tooltip.js +248 -128
  117. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  118. package/dist/components/data/DataTable/DataTable.js +1 -1
  119. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  120. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  121. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  122. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  123. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  124. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  125. package/dist/components/data/TableBase/RowCollection.js +1 -1
  126. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  127. package/dist/components/data/TableBase/TableRow.js +1 -1
  128. package/dist/components/data/TableBase/TableView.js +1 -1
  129. package/dist/components/data/TableBase/column-menu.js +1 -1
  130. package/dist/components/data/TableBase/column-tint.js +1 -1
  131. package/dist/components/data/TableBase/row-menu.js +1 -1
  132. package/dist/components/data/TableBase/styled.d.ts +1 -0
  133. package/dist/components/data/TableBase/styled.js +1 -1
  134. package/dist/components/data/TableBase/table-tree.js +1 -1
  135. package/dist/components/data/TableBase/types.js +1 -1
  136. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  137. package/dist/components/data/TableBase/use-column-order.js +1 -1
  138. package/dist/components/data/TableBase/use-container-width.js +1 -1
  139. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  140. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  141. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  142. package/dist/components/data/TableBase/use-table-search.js +1 -1
  143. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  144. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  145. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  146. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  147. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  148. package/dist/components/fields/Checkbox/Checkbox.d.ts +8 -0
  149. package/dist/components/fields/Checkbox/Checkbox.js +58 -39
  150. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  151. package/dist/components/fields/Checkbox/CheckboxGroup.js +2 -2
  152. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  153. package/dist/components/fields/Checkbox/context.js +1 -1
  154. package/dist/components/fields/ColorInput/ColorInput.d.ts +17 -1
  155. package/dist/components/fields/ColorInput/ColorInput.js +137 -134
  156. package/dist/components/fields/ColorInput/ColorInput.js.map +1 -1
  157. package/dist/components/fields/ColorPicker/ColorPicker.d.ts +18 -2
  158. package/dist/components/fields/ColorPicker/ColorPicker.js +4 -3
  159. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  160. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  161. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  162. package/dist/components/fields/ComboBox/ComboBox.js +90 -43
  163. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  164. package/dist/components/fields/CommandTextArea/CommandTextArea.js +3 -2
  165. package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +1 -1
  166. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  167. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  168. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  169. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  170. package/dist/components/fields/DatePicker/DatePicker.d.ts +17 -1
  171. package/dist/components/fields/DatePicker/DatePicker.js +81 -77
  172. package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
  173. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  174. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  175. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  176. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  177. package/dist/components/fields/DatePicker/DateRangePicker.d.ts +17 -2
  178. package/dist/components/fields/DatePicker/DateRangePicker.js +109 -105
  179. package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
  180. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.d.ts +17 -2
  181. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +228 -220
  182. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  183. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  184. package/dist/components/fields/DatePicker/PeriodPicker.d.ts +17 -1
  185. package/dist/components/fields/DatePicker/PeriodPicker.js +89 -85
  186. package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
  187. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  188. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  189. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  190. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  191. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  192. package/dist/components/fields/DatePicker/period.js +1 -1
  193. package/dist/components/fields/DatePicker/props.js +1 -1
  194. package/dist/components/fields/DatePicker/utils.js +1 -1
  195. package/dist/components/fields/FileInput/FileInput.js +1 -1
  196. package/dist/components/fields/FilterListBox/FilterListBox.js +28 -18
  197. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  198. package/dist/components/fields/FilterPicker/FilterPicker.d.ts +11 -2
  199. package/dist/components/fields/FilterPicker/FilterPicker.js +3 -2
  200. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  201. package/dist/components/fields/Input/Input.js +1 -1
  202. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  203. package/dist/components/fields/ListBox/ListBox.d.ts +2 -2
  204. package/dist/components/fields/ListBox/ListBox.js +1 -2
  205. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  206. package/dist/components/fields/ListBox/optionId.js +16 -0
  207. package/dist/components/fields/ListBox/optionId.js.map +1 -0
  208. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +120 -110
  209. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  210. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  211. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +44 -22
  212. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js.map +1 -1
  213. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  214. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  215. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  216. package/dist/components/fields/Picker/Picker.d.ts +20 -3
  217. package/dist/components/fields/Picker/Picker.js +4 -3
  218. package/dist/components/fields/Picker/Picker.js.map +1 -1
  219. package/dist/components/fields/RadioGroup/Radio.d.ts +10 -2
  220. package/dist/components/fields/RadioGroup/Radio.js +215 -213
  221. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  222. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  223. package/dist/components/fields/RadioGroup/context.js +1 -1
  224. package/dist/components/fields/SearchComboBox/SearchComboBox.js +3 -2
  225. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  226. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  227. package/dist/components/fields/Select/Select.d.ts +24 -3
  228. package/dist/components/fields/Select/Select.js +8 -5
  229. package/dist/components/fields/Select/Select.js.map +1 -1
  230. package/dist/components/fields/Slider/Gradation.js +1 -1
  231. package/dist/components/fields/Slider/HueSlider.js +1 -1
  232. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  233. package/dist/components/fields/Slider/Slider.js +1 -1
  234. package/dist/components/fields/Slider/SliderBase.js +1 -1
  235. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  236. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  237. package/dist/components/fields/Slider/elements.js +1 -1
  238. package/dist/components/fields/Slider/index.js +1 -1
  239. package/dist/components/fields/Switch/Switch.js +1 -1
  240. package/dist/components/fields/TagInput/TagInput.d.ts +182 -0
  241. package/dist/components/fields/TagInput/TagInput.js +1856 -0
  242. package/dist/components/fields/TagInput/TagInput.js.map +1 -0
  243. package/dist/components/fields/TagInput/TagList.js +355 -0
  244. package/dist/components/fields/TagInput/TagList.js.map +1 -0
  245. package/dist/components/fields/TagInput/index.d.ts +2 -0
  246. package/dist/components/fields/TextArea/TextArea.js +1 -1
  247. package/dist/components/fields/TextInput/TextInput.js +1 -1
  248. package/dist/components/fields/TextInput/TextInputBase.d.ts +6 -0
  249. package/dist/components/fields/TextInput/TextInputBase.js +8 -6
  250. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  251. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  252. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  253. package/dist/components/fields/TriggerActions.js +1 -1
  254. package/dist/components/fields/color/ColorPanel.js +1 -1
  255. package/dist/components/fields/color/channels.js +1 -1
  256. package/dist/components/fields/color/color.js +1 -1
  257. package/dist/components/fields/color/context.js +1 -1
  258. package/dist/components/fields/index.d.ts +2 -0
  259. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +1 -1
  260. package/dist/components/form/FieldWrapper/FieldWrapper.js +23 -10
  261. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  262. package/dist/components/form/FieldWrapper/types.d.ts +1 -1
  263. package/dist/components/form/Form/Field.js +6 -4
  264. package/dist/components/form/Form/Field.js.map +1 -1
  265. package/dist/components/form/Form/Form.js +20 -5
  266. package/dist/components/form/Form/Form.js.map +1 -1
  267. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  268. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  269. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  270. package/dist/components/form/Form/SubmitError.js +1 -1
  271. package/dist/components/form/Form/backend.js +1 -1
  272. package/dist/components/form/Form/index.js +1 -1
  273. package/dist/components/form/Form/modern/actions.js +1 -1
  274. package/dist/components/form/Form/modern/context.js +1 -1
  275. package/dist/components/form/Form/modern/controller.js +1 -1
  276. package/dist/components/form/Form/modern/field-binding.js +1 -1
  277. package/dist/components/form/Form/modern/field.js +1 -1
  278. package/dist/components/form/Form/modern/react.js +1 -1
  279. package/dist/components/form/Form/modern/store.js +1 -1
  280. package/dist/components/form/Form/modern/validation.js +1 -1
  281. package/dist/components/form/Form/modern/values.js +1 -1
  282. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  283. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  284. package/dist/components/form/Form/use-field/use-field.js +1 -1
  285. package/dist/components/form/Form/use-form.js +1 -1
  286. package/dist/components/form/Form/validation.js +1 -1
  287. package/dist/components/form/Label.js +1 -1
  288. package/dist/components/form/legacy-tooltip.js +28 -0
  289. package/dist/components/form/legacy-tooltip.js.map +1 -0
  290. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  291. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  292. package/dist/components/form/validation/use-validation-props.js +1 -1
  293. package/dist/components/form/wrapper.js +5 -3
  294. package/dist/components/form/wrapper.js.map +1 -1
  295. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  296. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  297. package/dist/components/layout/Board/Board.js +1 -1
  298. package/dist/components/layout/Board/BoardProvider.js +1 -1
  299. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  300. package/dist/components/layout/Board/Widget.js +1 -1
  301. package/dist/components/layout/Board/WidgetHost.js +1 -1
  302. package/dist/components/layout/Board/board-context.js +1 -1
  303. package/dist/components/layout/Board/board-store.js +1 -1
  304. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  305. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  306. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  307. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  308. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  309. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  310. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  311. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  312. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  313. package/dist/components/layout/Board/index.js +1 -1
  314. package/dist/components/layout/Board/responsive-utils.js +1 -1
  315. package/dist/components/layout/Board/use-board-layout.js +1 -1
  316. package/dist/components/layout/Board/use-board-registry.js +1 -1
  317. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  318. package/dist/components/layout/Board/use-board-selection.js +1 -1
  319. package/dist/components/layout/Flex.js +1 -1
  320. package/dist/components/layout/Flow.js +1 -1
  321. package/dist/components/layout/Grid.js +1 -1
  322. package/dist/components/layout/Panel.js +1 -1
  323. package/dist/components/layout/Prefix.js +1 -1
  324. package/dist/components/layout/ResizablePanel.js +1 -1
  325. package/dist/components/layout/Space.js +1 -1
  326. package/dist/components/layout/Suffix.js +1 -1
  327. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  328. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  329. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  330. package/dist/components/navigation/Tabs/TabButton.js +131 -110
  331. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  332. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  333. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  334. package/dist/components/navigation/Tabs/TabPicker.js +2 -1
  335. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  336. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  337. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  338. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  339. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  340. package/dist/components/navigation/Tabs/styled.js +2 -2
  341. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  342. package/dist/components/navigation/Tabs/types.js +1 -1
  343. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  344. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  345. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  346. package/dist/components/other/Calendar/Calendar.js +1 -1
  347. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  348. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  349. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  350. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  351. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  352. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  353. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  354. package/dist/components/other/Calendar/styled.js +1 -1
  355. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  356. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  357. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  358. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  359. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  360. package/dist/components/overlays/Dialog/Dialog.js +18 -9
  361. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  362. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  363. package/dist/components/overlays/Dialog/DialogForm.js +6 -5
  364. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  365. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  366. package/dist/components/overlays/Dialog/ModernDialogForm.js +71 -64
  367. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
  368. package/dist/components/overlays/Dialog/context.js +1 -1
  369. package/dist/components/overlays/Dialog/use-content-overflow.js +68 -0
  370. package/dist/components/overlays/Dialog/use-content-overflow.js.map +1 -0
  371. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  372. package/dist/components/overlays/Modal/Modal.js +1 -1
  373. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  374. package/dist/components/overlays/Modal/Overlay.js +1 -1
  375. package/dist/components/overlays/Modal/Popover.js +1 -1
  376. package/dist/components/overlays/Modal/Tray.js +1 -1
  377. package/dist/components/overlays/Modal/Underlay.js +1 -1
  378. package/dist/components/overlays/Notifications/Notification.js +1 -1
  379. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  380. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  381. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  382. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  383. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  384. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  385. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  386. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  387. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  388. package/dist/components/overlays/Notifications/index.js +1 -1
  389. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  390. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  391. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  392. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  393. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  394. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  395. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  396. package/dist/components/overlays/Toast/index.js +1 -1
  397. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  398. package/dist/components/overlays/Toast/useToast.js +1 -1
  399. package/dist/components/overlays/Tooltip/Tooltip.js +14 -12
  400. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  401. package/dist/components/overlays/Tooltip/TooltipProvider.d.ts +6 -0
  402. package/dist/components/overlays/Tooltip/TooltipProvider.js +43 -38
  403. package/dist/components/overlays/Tooltip/TooltipProvider.js.map +1 -1
  404. package/dist/components/overlays/Tooltip/TooltipTrigger.js +72 -69
  405. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  406. package/dist/components/overlays/Tooltip/context.js +1 -1
  407. package/dist/components/overlays/Tooltip/split-trigger-props.d.ts +16 -0
  408. package/dist/components/overlays/Tooltip/split-trigger-props.js +54 -0
  409. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -0
  410. package/dist/components/portal/Portal.js +1 -1
  411. package/dist/components/portal/PortalProvider.js +1 -1
  412. package/dist/components/portal/usePortal.js +1 -1
  413. package/dist/components/shared/DraggableCollection.js +1 -1
  414. package/dist/components/shared/InvalidIcon.js +1 -1
  415. package/dist/components/shared/ValidIcon.js +1 -1
  416. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  417. package/dist/components/status/Spin/Cube.js +1 -1
  418. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  419. package/dist/components/status/Spin/Spin.js +1 -1
  420. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  421. package/dist/data/item-themes.d.ts +1 -1
  422. package/dist/data/item-themes.js +7 -1
  423. package/dist/data/item-themes.js.map +1 -1
  424. package/dist/data/themes.js +1 -1
  425. package/dist/eslint-plugin/defaults.generated.js +47 -1
  426. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  427. package/dist/eslint-plugin/index.js +1 -1
  428. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  429. package/dist/i18n/I18nProvider.js +1 -1
  430. package/dist/i18n/createFormatter.js +1 -1
  431. package/dist/i18n/index.js +1 -1
  432. package/dist/i18n/instance.js +1 -1
  433. package/dist/i18n/locales/de-DE/uikit.js +18 -1
  434. package/dist/i18n/locales/en-US/uikit.js +18 -1
  435. package/dist/i18n/locales/en-US/uikit.json.d.ts +22 -2
  436. package/dist/i18n/locales/es-ES/uikit.js +18 -1
  437. package/dist/i18n/locales/es-MX/uikit.js +18 -1
  438. package/dist/i18n/locales/fr-FR/uikit.js +18 -1
  439. package/dist/i18n/locales/it-IT/uikit.js +18 -1
  440. package/dist/i18n/locales/ja-JP/uikit.js +18 -1
  441. package/dist/i18n/locales/nb-NO/uikit.js +18 -1
  442. package/dist/i18n/locales/pt-BR/uikit.js +18 -1
  443. package/dist/i18n/locales/pt-PT/uikit.js +18 -1
  444. package/dist/i18n/locales/sv-SE/uikit.js +18 -1
  445. package/dist/i18n/locales/vi-VN/uikit.js +18 -1
  446. package/dist/i18n/locales.js +1 -1
  447. package/dist/i18n/useFormatter.js +1 -1
  448. package/dist/i18n/useI18n.js +1 -1
  449. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  450. package/dist/icons/AdjustmentsIcon.js +1 -1
  451. package/dist/icons/AiIcon.js +1 -1
  452. package/dist/icons/AreaChartIcon.js +1 -1
  453. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  454. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  455. package/dist/icons/BackwardIcon.js +1 -1
  456. package/dist/icons/BarChartIcon.js +1 -1
  457. package/dist/icons/BellFilledIcon.js +1 -1
  458. package/dist/icons/BellIcon.js +1 -1
  459. package/dist/icons/BooleanIcon.js +1 -1
  460. package/dist/icons/CalendarEditIcon.js +1 -1
  461. package/dist/icons/CalendarIcon.js +1 -1
  462. package/dist/icons/CaretDownIcon.js +1 -1
  463. package/dist/icons/CaretUpIcon.js +1 -1
  464. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  465. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  466. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  467. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  468. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  469. package/dist/icons/ChartBarLineIcon.js +1 -1
  470. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  471. package/dist/icons/ChartBarStackedIcon.js +1 -1
  472. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  473. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  474. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  475. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  476. package/dist/icons/ChartBubbleIcon.js +1 -1
  477. package/dist/icons/ChartDonut2Icon.js +1 -1
  478. package/dist/icons/ChartFunnelIcon.js +1 -1
  479. package/dist/icons/ChartHeatmapIcon.js +1 -1
  480. package/dist/icons/ChartKPIIcon.js +1 -1
  481. package/dist/icons/ChartPie2Icon.js +1 -1
  482. package/dist/icons/ChartScatterIcon.js +1 -1
  483. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  484. package/dist/icons/CheckCircleIcon.js +1 -1
  485. package/dist/icons/CheckIcon.js +1 -1
  486. package/dist/icons/CircleFilledIcon.js +1 -1
  487. package/dist/icons/ClearIcon.js +1 -1
  488. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  489. package/dist/icons/CloseCircleIcon.js +1 -1
  490. package/dist/icons/CloseIcon.js +1 -1
  491. package/dist/icons/CodeIcon.js +1 -1
  492. package/dist/icons/ColumnTotalIcon.js +1 -1
  493. package/dist/icons/CopyIcon.js +1 -1
  494. package/dist/icons/CountIcon.js +1 -1
  495. package/dist/icons/CubeIcon.js +1 -1
  496. package/dist/icons/CubePauseIcon.js +1 -1
  497. package/dist/icons/CubePlayIcon.js +1 -1
  498. package/dist/icons/CurrencyDollarIcon.js +1 -1
  499. package/dist/icons/DangerIcon.js +1 -1
  500. package/dist/icons/DashboardIcon.js +1 -1
  501. package/dist/icons/DatabaseIcon.js +1 -1
  502. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  503. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  504. package/dist/icons/DirectionIcon.js +1 -1
  505. package/dist/icons/DonutIcon.js +1 -1
  506. package/dist/icons/DownIcon.js +1 -1
  507. package/dist/icons/EditIcon.js +1 -1
  508. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  509. package/dist/icons/ExclamationCircleIcon.js +1 -1
  510. package/dist/icons/ExclamationIcon.js +1 -1
  511. package/dist/icons/EyeIcon.js +1 -1
  512. package/dist/icons/EyeInvisibleIcon.js +1 -1
  513. package/dist/icons/FilterIcon.js +1 -1
  514. package/dist/icons/FolderFilledIcon.js +1 -1
  515. package/dist/icons/FolderIcon.js +1 -1
  516. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  517. package/dist/icons/FolderOpenIcon.js +1 -1
  518. package/dist/icons/ForwardIcon.js +1 -1
  519. package/dist/icons/GripVerticalIcon.js +1 -1
  520. package/dist/icons/HierarchyIcon.js +1 -1
  521. package/dist/icons/HierarchyOpenIcon.js +1 -1
  522. package/dist/icons/Icon.js +1 -1
  523. package/dist/icons/InfoCircleIcon.js +1 -1
  524. package/dist/icons/InfoIcon.js +1 -1
  525. package/dist/icons/KeyIcon.js +1 -1
  526. package/dist/icons/LeftIcon.js +1 -1
  527. package/dist/icons/LineChartIcon.js +1 -1
  528. package/dist/icons/LoadingIcon.js +1 -1
  529. package/dist/icons/LockFilledIcon.js +1 -1
  530. package/dist/icons/LockIcon.js +1 -1
  531. package/dist/icons/MoreIcon.js +1 -1
  532. package/dist/icons/NotAllowedIcon.js +1 -1
  533. package/dist/icons/Number123Icon.js +1 -1
  534. package/dist/icons/NumberIcon.js +1 -1
  535. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  536. package/dist/icons/PauseCircleIcon.js +1 -1
  537. package/dist/icons/PauseIcon.js +1 -1
  538. package/dist/icons/PercentageIcon.js +1 -1
  539. package/dist/icons/PieChartIcon.js +1 -1
  540. package/dist/icons/PipetteIcon.js +1 -1
  541. package/dist/icons/PlayCircleIcon.js +1 -1
  542. package/dist/icons/PlayIcon.js +1 -1
  543. package/dist/icons/PlusIcon.js +1 -1
  544. package/dist/icons/ProgressBarIcon.js +1 -1
  545. package/dist/icons/ReloadIcon.js +1 -1
  546. package/dist/icons/ReportIcon.js +1 -1
  547. package/dist/icons/ReturnIcon.js +1 -1
  548. package/dist/icons/RightIcon.js +1 -1
  549. package/dist/icons/RowTotalsIcon.js +1 -1
  550. package/dist/icons/SchemeIcon.js +1 -1
  551. package/dist/icons/SearchIcon.js +1 -1
  552. package/dist/icons/SemanticQueryIcon.js +1 -1
  553. package/dist/icons/SettingsIcon.js +1 -1
  554. package/dist/icons/ShieldFilledIcon.js +1 -1
  555. package/dist/icons/ShieldIcon.js +1 -1
  556. package/dist/icons/SlashIcon.js +1 -1
  557. package/dist/icons/SparklesIcon.js +1 -1
  558. package/dist/icons/SqlIcon.js +1 -1
  559. package/dist/icons/StatsIcon.js +1 -1
  560. package/dist/icons/StopIcon.js +1 -1
  561. package/dist/icons/StringIcon.js +1 -1
  562. package/dist/icons/SubtotalsIcon.js +1 -1
  563. package/dist/icons/SwitchIcon.js +1 -1
  564. package/dist/icons/TableIcon.js +1 -1
  565. package/dist/icons/ThumbsDownIcon.js +1 -1
  566. package/dist/icons/ThumbsUpIcon.js +1 -1
  567. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  568. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  569. package/dist/icons/ThunderboltIcon.js +1 -1
  570. package/dist/icons/TimeIcon.js +1 -1
  571. package/dist/icons/TrashIcon.js +1 -1
  572. package/dist/icons/UnlockIcon.js +1 -1
  573. package/dist/icons/UpIcon.js +1 -1
  574. package/dist/icons/UserGroupIcon.js +1 -1
  575. package/dist/icons/UserIcon.js +1 -1
  576. package/dist/icons/UserLockIcon.js +1 -1
  577. package/dist/icons/ViewIcon.js +1 -1
  578. package/dist/icons/WarningFilledIcon.js +1 -1
  579. package/dist/icons/WarningIcon.js +1 -1
  580. package/dist/icons/wrap-icon.js +1 -1
  581. package/dist/index.d.ts +2 -1
  582. package/dist/index.js +3 -2
  583. package/dist/index.js.map +1 -1
  584. package/dist/probe/canonicalize.js +1 -1
  585. package/dist/probe/css.js +1 -1
  586. package/dist/probe/index.js +1 -1
  587. package/dist/provider.js +1 -1
  588. package/dist/providers/TrackingProvider.js +1 -1
  589. package/dist/providers/navigationAdapter.default.js +1 -1
  590. package/dist/shared/form.d.ts +9 -2
  591. package/dist/tokens/all-tokens.js +1 -1
  592. package/dist/tokens/base.js +1 -1
  593. package/dist/tokens/color-seed.js +1 -1
  594. package/dist/tokens/color-theme.js +4 -5
  595. package/dist/tokens/color-theme.js.map +1 -1
  596. package/dist/tokens/colors.js +1 -1
  597. package/dist/tokens/layout.js +1 -1
  598. package/dist/tokens/lazy-styles.js +1 -1
  599. package/dist/tokens/legacy-color.js +1 -1
  600. package/dist/tokens/palette-config.d.ts +5 -0
  601. package/dist/tokens/palette-config.js +30 -7
  602. package/dist/tokens/palette-config.js.map +1 -1
  603. package/dist/tokens/palette.js +1 -1
  604. package/dist/tokens/resolve.js +1 -1
  605. package/dist/tokens/shadows.js +1 -1
  606. package/dist/tokens/sizes.js +1 -1
  607. package/dist/tokens/spacing.js +1 -1
  608. package/dist/tokens/typography.d.ts +1 -0
  609. package/dist/tokens/typography.js +10 -1
  610. package/dist/tokens/typography.js.map +1 -1
  611. package/dist/utils/ResizeSensor.js +1 -1
  612. package/dist/utils/colors.js +1 -1
  613. package/dist/utils/dotize.js +1 -1
  614. package/dist/utils/is-dev-env.js +1 -1
  615. package/dist/utils/modules.js +1 -1
  616. package/dist/utils/promise.js +1 -1
  617. package/dist/utils/raf.js +1 -1
  618. package/dist/utils/random.js +1 -1
  619. package/dist/utils/range.js +1 -1
  620. package/dist/utils/react/RenderCache.js +1 -1
  621. package/dist/utils/react/Slots.js +1 -1
  622. package/dist/utils/react/chain.js +1 -1
  623. package/dist/utils/react/disabledProps.js +1 -1
  624. package/dist/utils/react/escapePropagation.js +1 -1
  625. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  626. package/dist/utils/react/index.js +1 -1
  627. package/dist/utils/react/interactions.js +1 -1
  628. package/dist/utils/react/isTextOnly.js +1 -1
  629. package/dist/utils/react/mapProps.js +1 -1
  630. package/dist/utils/react/mergeProps.js +1 -1
  631. package/dist/utils/react/nullableValue.js +1 -1
  632. package/dist/utils/react/programmaticFocus.js +1 -1
  633. package/dist/utils/react/resolveIcon.js +1 -1
  634. package/dist/utils/react/sharedStore.js +1 -1
  635. package/dist/utils/react/useBufferedValue.js +1 -1
  636. package/dist/utils/react/useCombinedRefs.js +1 -1
  637. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  638. package/dist/utils/react/useEventBus.js +1 -1
  639. package/dist/utils/react/useId.js +1 -1
  640. package/dist/utils/react/useIsDarwin.js +1 -1
  641. package/dist/utils/react/useKeySymbols.js +1 -1
  642. package/dist/utils/react/useLayoutEffect.js +1 -1
  643. package/dist/utils/react/useLocalStorage.js +1 -1
  644. package/dist/utils/react/useMergeStyles.js +1 -1
  645. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  646. package/dist/utils/react/usePopoverSync.js +1 -1
  647. package/dist/utils/react/useQaProps.js +1 -1
  648. package/dist/utils/react/useScheme.js +1 -1
  649. package/dist/utils/react/useViewportSize.js +1 -1
  650. package/dist/utils/react/wrapNodeIfPlain.js +3 -4
  651. package/dist/utils/react/wrapNodeIfPlain.js.map +1 -1
  652. package/dist/utils/selection.js +1 -1
  653. package/dist/utils/styles.js +1 -1
  654. package/dist/utils/tree.js +1 -1
  655. package/dist/utils/warnings.js +1 -1
  656. package/dist/version.js +2 -2
  657. package/docs/FieldProperties.md +2 -2
  658. package/docs/Usage.md +10 -9
  659. package/docs/components/actions/ButtonSplit.md +2 -0
  660. package/docs/components/actions/ItemButton.md +2 -2
  661. package/docs/components/content/InfoBadge.md +1 -1
  662. package/docs/components/content/Layout.md +1 -1
  663. package/docs/components/content/Tag.md +10 -2
  664. package/docs/components/fields/Checkbox.md +11 -0
  665. package/docs/components/fields/ColorInput.md +2 -0
  666. package/docs/components/fields/ColorPicker.md +3 -1
  667. package/docs/components/fields/DatePicker.md +2 -0
  668. package/docs/components/fields/FilterPicker.md +3 -1
  669. package/docs/components/fields/PeriodPicker.md +2 -0
  670. package/docs/components/fields/Picker.md +3 -1
  671. package/docs/components/fields/RadioGroup.md +2 -2
  672. package/docs/components/fields/Select.md +5 -0
  673. package/docs/components/fields/TagInput.md +429 -0
  674. package/docs/components/form/Field.md +2 -2
  675. package/docs/components/form/Form.md +2 -0
  676. package/docs/components/navigation/Tabs.md +3 -3
  677. package/docs/components/overlays/Dialog.md +30 -3
  678. package/docs/components/overlays/DialogForm.md +1 -0
  679. package/docs/components/overlays/TooltipProvider.md +1 -0
  680. package/package.json +1 -1
  681. package/tasty.config.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ColorPicker.js","names":["BaseProps","BLOCK_STYLES","BlockStyleProps","OUTER_STYLES","OuterStyleProps","Styles","tasty","ForwardedRef","forwardRef","ReactNode","useEffect","useRef","useState","useEvent","FieldBaseProps","extractStyles","ItemButton","CubeItemProps","Text","getValidationIcon","getValidationTheme","useFieldProps","wrapWithField","Dialog","DialogTrigger","ColorSpace","ColorFormat","ColorValue","formatColor","parseColor","ColorPanel","ColorPopoverContext","ColorInput","ColorSwatch","ColorSwatchGroup","CubeColorSwatchItem","POPOVER_STYLES","overflow","PALETTE_STYLES","border","padding","width","FALLBACK_COLOR","h","s","l","ColorPickerWrapper","qa","styles","display","flow","gridRows","placeContent","placeItems","CubeColorPickerProps","value","defaultValue","onChange","format","defaultSpace","isOpen","defaultOpen","onOpenChange","shouldFlip","children","placeholder","size","type","theme","triggerTooltip","swatches","swatchColumns","triggerStyles","swatchStyles","ColorPicker","allProps","ref","HTMLElement","props","defaultValidationTrigger","valuePropsMapper","id","controlledOpen","isDisabled","isReadOnly","isLoading","isInvalid","isValid","autoFocus","ariaLabel","isEditingDisabled","color","setColor","toString","space","setSpace","setOpen","emitted","undefined","current","handleColorChange","next","text","colorText","handleValueChange","handleOpenChange","label","pickerField","length","cubeInputType"],"sources":["../../../../src/components/fields/ColorPicker/ColorPicker.tsx"],"sourcesContent":["import {\n BaseProps,\n BLOCK_STYLES,\n BlockStyleProps,\n OUTER_STYLES,\n OuterStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport {\n ForwardedRef,\n forwardRef,\n ReactNode,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { useEvent } from '../../../_internal';\nimport { FieldBaseProps } from '../../../shared';\nimport { extractStyles } from '../../../utils/styles';\nimport { ItemButton } from '../../actions';\nimport { CubeItemProps } from '../../content/Item';\nimport { Text } from '../../content/Text';\nimport {\n getValidationIcon,\n getValidationTheme,\n useFieldProps,\n wrapWithField,\n} from '../../form';\nimport { Dialog, DialogTrigger } from '../../overlays/Dialog';\nimport { ColorSpace } from '../color/channels';\nimport {\n ColorFormat,\n ColorValue,\n formatColor,\n parseColor,\n} from '../color/color';\nimport { ColorPanel } from '../color/ColorPanel';\nimport { ColorPopoverContext } from '../color/context';\nimport { ColorInput } from '../ColorInput';\nimport { ColorSwatch } from '../ColorSwatch';\nimport { ColorSwatchGroup, CubeColorSwatchItem } from '../ColorSwatchGroup';\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/**\n * The rule separating the palette from the editor. `Divider` is not used: it\n * places itself on named grid lines meant for menu layouts, which this panel\n * does not define, so it lands in the wrong row and spawns a stray column.\n */\nconst PALETTE_STYLES: Styles = {\n border: 'top',\n padding: '1x top',\n width: '100%',\n};\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 ColorPickerWrapper = tasty({\n qa: 'ColorPickerWrapper',\n styles: {\n display: 'inline-grid',\n flow: 'column',\n gridRows: '1sf',\n placeContent: 'stretch',\n placeItems: 'stretch',\n },\n});\n\nexport interface CubeColorPickerProps\n extends BaseProps,\n OuterStyleProps,\n BlockStyleProps,\n FieldBaseProps<string | null | undefined> {\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 color string, or `null` when there is no color. */\n onChange?: (value: string | null) => void;\n /** Notation the value is written in. */\n format?: ColorFormat;\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 trigger. */\n shouldFlip?: boolean;\n /** Replaces the color shown on the trigger. Pass `null` for a swatch on its own. */\n children?: ReactNode;\n /** Shown on the trigger while there is no color. */\n placeholder?: ReactNode;\n /** The size of the trigger. */\n size?: CubeItemProps['size'];\n /** The visual type of the trigger. */\n type?: CubeItemProps['type'];\n theme?: CubeItemProps['theme'];\n /** Tooltip for the trigger, separate from the field tooltip. */\n triggerTooltip?: CubeItemProps['tooltip'];\n /** Colors to offer under the editor, for picking without dialing one in. */\n swatches?: CubeColorSwatchItem[];\n /** How many swatches per row. Defaults to a single row. */\n swatchColumns?: number;\n styles?: Styles;\n /** Styles of the trigger button. */\n triggerStyles?: Styles;\n /** Styles of the color swatch. */\n swatchStyles?: Styles;\n 'aria-label'?: string;\n}\n\n/**\n * A color swatch that opens the color popover — the same one `ColorInput`\n * uses, without the text field. Reach for it when a color is chosen but never\n * typed: a toolbar, a chart legend, a cell in a dense table.\n */\nexport const ColorPicker = forwardRef(function ColorPicker(\n allProps: CubeColorPickerProps,\n ref: ForwardedRef<HTMLElement>,\n) {\n const props = useFieldProps(allProps, {\n defaultValidationTrigger: 'onChange',\n valuePropsMapper: ({ value, onChange }) => ({\n value: value as string | null | undefined,\n onChange,\n }),\n });\n\n const {\n qa,\n id,\n value,\n defaultValue,\n onChange,\n format = 'hex',\n defaultSpace = 'hst',\n isOpen: controlledOpen,\n defaultOpen,\n onOpenChange,\n shouldFlip,\n children,\n placeholder = 'Pick a color',\n size,\n type = 'outline',\n theme = 'default',\n triggerTooltip,\n swatches,\n swatchColumns,\n triggerStyles,\n swatchStyles,\n isDisabled,\n isReadOnly,\n isLoading,\n isInvalid,\n isValid,\n autoFocus,\n 'aria-label': ariaLabel,\n } = props;\n\n const styles = extractStyles(props, [...OUTER_STYLES, ...BLOCK_STYLES]);\n\n /**\n * Loading locks the trigger, but the popover can outlive that — it may be\n * controlled, or opened before the load began — so the editor inside has to\n * refuse edits on the same terms.\n */\n const isEditingDisabled = isDisabled || isLoading;\n\n const [color, setColor] = useState(() =>\n parseColor((value ?? defaultValue ?? '').toString()),\n );\n const [space, setSpace] = useState<ColorSpace>(defaultSpace);\n const [isOpen, setOpen] = useState(defaultOpen ?? false);\n\n /** What was last published, to tell our own updates from outside ones. */\n const emitted = useRef<string | null | undefined>(value);\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 setColor(parseColor((value ?? '').toString()));\n }, [value]);\n\n const handleColorChange = useEvent((next: ColorValue) => {\n const text = formatColor(next, format);\n\n emitted.current = text;\n setColor(next);\n onChange?.(text);\n });\n\n const colorText = color ? formatColor(color, format) : null;\n\n /**\n * The palette and the value field both speak in strings, and the field can\n * hand back `null` when it is cleared — which has to reach the picker, or the\n * text empties while the preview and trigger keep the old color.\n */\n const handleValueChange = useEvent((next: string | null) => {\n emitted.current = next;\n setColor(next ? parseColor(next) : null);\n onChange?.(next);\n });\n\n const handleOpenChange = useEvent((next: boolean) => {\n setOpen(next);\n onOpenChange?.(next);\n });\n\n // The swatch carries the color and the label spells it out. `children`\n // replaces that label, and `null` leaves the swatch on its own.\n const label =\n children !== undefined ? (\n children\n ) : color ? (\n formatColor(color, format)\n ) : (\n // Muted, so an unset picker never reads like one holding a value —\n // the same treatment `Picker` and `Select` give their placeholders.\n <Text.Placeholder>{placeholder}</Text.Placeholder>\n );\n\n const pickerField = (\n <ColorPickerWrapper styles={styles}>\n <DialogTrigger\n hideArrow\n type=\"popover\"\n mobileType=\"tray\"\n placement=\"bottom start\"\n isOpen={controlledOpen ?? isOpen}\n shouldFlip={shouldFlip}\n onOpenChange={handleOpenChange}\n >\n <ItemButton\n data-popover-trigger\n id={id}\n qa={qa || 'ColorPickerTrigger'}\n data-input-type=\"colorpicker\"\n type={type}\n theme={getValidationTheme(theme, { isInvalid, isValid })}\n size={size}\n // Fixed 20px rather than tracking the trigger, same as `ColorInput`\n // and same as this has always rendered.\n icon={\n <ColorSwatch size=\"small\" color={color} styles={swatchStyles} />\n }\n rightIcon={getValidationIcon({ isInvalid, isValid })}\n tooltip={triggerTooltip}\n isDisabled={isEditingDisabled || isReadOnly}\n autoFocus={autoFocus}\n aria-label={ariaLabel}\n mods={{ placeholder: !color }}\n styles={triggerStyles}\n >\n {label}\n </ItemButton>\n <Dialog\n aria-label=\"Color picker\"\n width=\"max-content\"\n styles={POPOVER_STYLES}\n >\n {/* Marks the subtree so a nested swatch group drops its custom-color\n escape hatch, which is a picker and would recurse forever. */}\n <ColorPopoverContext.Provider value={true}>\n <ColorPanel\n color={color ?? FALLBACK_COLOR}\n space={space}\n isDisabled={isEditingDisabled || isReadOnly}\n previewFormat={format}\n input={\n <ColorInput\n aria-label=\"Color value\"\n format={format}\n value={colorText}\n isDisabled={isEditingDisabled}\n isReadOnly={isReadOnly}\n onChange={handleValueChange}\n />\n }\n swatches={\n swatches?.length ? (\n <ColorSwatchGroup\n aria-label=\"Palette\"\n styles={PALETTE_STYLES}\n colors={swatches}\n columns={swatchColumns}\n format={format}\n value={colorText}\n isDisabled={isEditingDisabled || isReadOnly}\n onChange={handleValueChange}\n />\n ) : null\n }\n onChange={handleColorChange}\n onSpaceChange={setSpace}\n />\n </ColorPopoverContext.Provider>\n </Dialog>\n </DialogTrigger>\n </ColorPickerWrapper>\n );\n\n return wrapWithField(pickerField, ref as any, props);\n});\n\n/**\n * Drives the legacy `<Field>` wiring: `Picker` validates on change and passes\n * the value through untouched, where `Text` would default to `onBlur` and\n * coerce `null` into an empty string.\n */\n(ColorPicker as any).cubeInputType = 'Picker';\n"],"mappings":"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"}
1
+ {"version":3,"file":"ColorPicker.js","names":["BaseProps","BLOCK_STYLES","BlockStyleProps","OUTER_STYLES","OuterStyleProps","Styles","tasty","ForwardedRef","forwardRef","ReactNode","RefObject","useEffect","useRef","useState","Placement","useEvent","FieldBaseProps","extractStyles","ItemButton","CubeItemProps","Text","getValidationIcon","getValidationTheme","useFieldProps","wrapWithField","Dialog","DialogTrigger","ColorSpace","ColorFormat","ColorValue","formatColor","parseColor","ColorPanel","ColorPopoverContext","ColorInput","ColorSwatch","ColorSwatchGroup","CubeColorSwatchItem","POPOVER_STYLES","overflow","PALETTE_STYLES","border","padding","width","FALLBACK_COLOR","h","s","l","ColorPickerWrapper","qa","styles","display","flow","gridRows","placeContent","placeItems","CubeColorPickerProps","value","defaultValue","onChange","format","defaultSpace","isOpen","defaultOpen","onOpenChange","shouldFlip","targetRef","HTMLElement","placement","children","placeholder","size","type","theme","triggerTooltip","swatches","swatchColumns","triggerStyles","swatchStyles","ColorPicker","allProps","ref","props","defaultValidationTrigger","valuePropsMapper","id","controlledOpen","isDisabled","isReadOnly","isLoading","isInvalid","isValid","autoFocus","ariaLabel","isEditingDisabled","color","setColor","toString","space","setSpace","setOpen","emitted","undefined","current","handleColorChange","next","text","colorText","handleValueChange","handleOpenChange","label","pickerField","length","cubeInputType"],"sources":["../../../../src/components/fields/ColorPicker/ColorPicker.tsx"],"sourcesContent":["import {\n BaseProps,\n BLOCK_STYLES,\n BlockStyleProps,\n OUTER_STYLES,\n OuterStyleProps,\n Styles,\n tasty,\n} from '@tenphi/tasty';\nimport {\n ForwardedRef,\n forwardRef,\n ReactNode,\n RefObject,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { Placement } from 'react-aria';\n\nimport { useEvent } from '../../../_internal';\nimport { FieldBaseProps } from '../../../shared';\nimport { extractStyles } from '../../../utils/styles';\nimport { ItemButton } from '../../actions';\nimport { CubeItemProps } from '../../content/Item';\nimport { Text } from '../../content/Text';\nimport {\n getValidationIcon,\n getValidationTheme,\n useFieldProps,\n wrapWithField,\n} from '../../form';\nimport { Dialog, DialogTrigger } from '../../overlays/Dialog';\nimport { ColorSpace } from '../color/channels';\nimport {\n ColorFormat,\n ColorValue,\n formatColor,\n parseColor,\n} from '../color/color';\nimport { ColorPanel } from '../color/ColorPanel';\nimport { ColorPopoverContext } from '../color/context';\nimport { ColorInput } from '../ColorInput';\nimport { ColorSwatch } from '../ColorSwatch';\nimport { ColorSwatchGroup, CubeColorSwatchItem } from '../ColorSwatchGroup';\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/**\n * The rule separating the palette from the editor. `Divider` is not used: it\n * places itself on named grid lines meant for menu layouts, which this panel\n * does not define, so it lands in the wrong row and spawns a stray column.\n */\nconst PALETTE_STYLES: Styles = {\n border: 'top',\n padding: '1x top',\n width: '100%',\n};\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 ColorPickerWrapper = tasty({\n qa: 'ColorPickerWrapper',\n styles: {\n display: 'inline-grid',\n flow: 'column',\n gridRows: '1sf',\n placeContent: 'stretch',\n placeItems: 'stretch',\n },\n});\n\nexport interface CubeColorPickerProps\n extends BaseProps,\n OuterStyleProps,\n BlockStyleProps,\n FieldBaseProps<string | null | undefined> {\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 color string, or `null` when there is no color. */\n onChange?: (value: string | null) => void;\n /** Notation the value is written in. */\n format?: ColorFormat;\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 trigger. */\n shouldFlip?: boolean;\n /**\n * The ref of the element the popover should visually attach itself to.\n * Defaults to the trigger button.\n *\n * Forwarded to `DialogTrigger`, so the anchor also becomes what outside-click\n * dismissal treats as the trigger.\n */\n targetRef?: RefObject<HTMLElement | null>;\n /**\n * Placement of the popover relative to the anchor.\n * Accepts React Aria's `Placement` strings (e.g. `'bottom start'`,\n * `'top start'`, `'right top'`, `'left top'`).\n * @default 'bottom start'\n */\n placement?: Placement;\n /** Replaces the color shown on the trigger. Pass `null` for a swatch on its own. */\n children?: ReactNode;\n /** Shown on the trigger while there is no color. */\n placeholder?: ReactNode;\n /** The size of the trigger. */\n size?: CubeItemProps['size'];\n /** The visual type of the trigger. */\n type?: CubeItemProps['type'];\n theme?: CubeItemProps['theme'];\n /** Tooltip for the trigger, separate from `labelTooltip`. */\n triggerTooltip?: CubeItemProps['tooltip'];\n /** Colors to offer under the editor, for picking without dialing one in. */\n swatches?: CubeColorSwatchItem[];\n /** How many swatches per row. Defaults to a single row. */\n swatchColumns?: number;\n styles?: Styles;\n /** Styles of the trigger button. */\n triggerStyles?: Styles;\n /** Styles of the color swatch. */\n swatchStyles?: Styles;\n 'aria-label'?: string;\n}\n\n/**\n * A color swatch that opens the color popover — the same one `ColorInput`\n * uses, without the text field. Reach for it when a color is chosen but never\n * typed: a toolbar, a chart legend, a cell in a dense table.\n */\nexport const ColorPicker = forwardRef(function ColorPicker(\n allProps: CubeColorPickerProps,\n ref: ForwardedRef<HTMLElement>,\n) {\n const props = useFieldProps(allProps, {\n defaultValidationTrigger: 'onChange',\n valuePropsMapper: ({ value, onChange }) => ({\n value: value as string | null | undefined,\n onChange,\n }),\n });\n\n const {\n qa,\n id,\n value,\n defaultValue,\n onChange,\n format = 'hex',\n defaultSpace = 'hst',\n isOpen: controlledOpen,\n defaultOpen,\n onOpenChange,\n shouldFlip,\n targetRef,\n placement = 'bottom start',\n children,\n placeholder = 'Pick a color',\n size,\n type = 'outline',\n theme = 'default',\n triggerTooltip,\n swatches,\n swatchColumns,\n triggerStyles,\n swatchStyles,\n isDisabled,\n isReadOnly,\n isLoading,\n isInvalid,\n isValid,\n autoFocus,\n 'aria-label': ariaLabel,\n } = props;\n\n const styles = extractStyles(props, [...OUTER_STYLES, ...BLOCK_STYLES]);\n\n /**\n * Loading locks the trigger, but the popover can outlive that — it may be\n * controlled, or opened before the load began — so the editor inside has to\n * refuse edits on the same terms.\n */\n const isEditingDisabled = isDisabled || isLoading;\n\n const [color, setColor] = useState(() =>\n parseColor((value ?? defaultValue ?? '').toString()),\n );\n const [space, setSpace] = useState<ColorSpace>(defaultSpace);\n const [isOpen, setOpen] = useState(defaultOpen ?? false);\n\n /** What was last published, to tell our own updates from outside ones. */\n const emitted = useRef<string | null | undefined>(value);\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 setColor(parseColor((value ?? '').toString()));\n }, [value]);\n\n const handleColorChange = useEvent((next: ColorValue) => {\n const text = formatColor(next, format);\n\n emitted.current = text;\n setColor(next);\n onChange?.(text);\n });\n\n const colorText = color ? formatColor(color, format) : null;\n\n /**\n * The palette and the value field both speak in strings, and the field can\n * hand back `null` when it is cleared — which has to reach the picker, or the\n * text empties while the preview and trigger keep the old color.\n */\n const handleValueChange = useEvent((next: string | null) => {\n emitted.current = next;\n setColor(next ? parseColor(next) : null);\n onChange?.(next);\n });\n\n const handleOpenChange = useEvent((next: boolean) => {\n setOpen(next);\n onOpenChange?.(next);\n });\n\n // The swatch carries the color and the label spells it out. `children`\n // replaces that label, and `null` leaves the swatch on its own.\n const label =\n children !== undefined ? (\n children\n ) : color ? (\n formatColor(color, format)\n ) : (\n // Muted, so an unset picker never reads like one holding a value —\n // the same treatment `Picker` and `Select` give their placeholders.\n <Text.Placeholder>{placeholder}</Text.Placeholder>\n );\n\n const pickerField = (\n <ColorPickerWrapper styles={styles}>\n <DialogTrigger\n hideArrow\n type=\"popover\"\n mobileType=\"tray\"\n placement={placement}\n targetRef={targetRef}\n isOpen={controlledOpen ?? isOpen}\n shouldFlip={shouldFlip}\n onOpenChange={handleOpenChange}\n >\n <ItemButton\n data-popover-trigger\n id={id}\n qa={qa || 'ColorPickerTrigger'}\n data-input-type=\"colorpicker\"\n type={type}\n theme={getValidationTheme(theme, { isInvalid, isValid })}\n size={size}\n // Fixed 20px rather than tracking the trigger, same as `ColorInput`\n // and same as this has always rendered.\n icon={\n <ColorSwatch size=\"small\" color={color} styles={swatchStyles} />\n }\n rightIcon={getValidationIcon({ isInvalid, isValid })}\n tooltip={triggerTooltip}\n isDisabled={isEditingDisabled || isReadOnly}\n autoFocus={autoFocus}\n aria-label={ariaLabel}\n mods={{ placeholder: !color }}\n styles={triggerStyles}\n >\n {label}\n </ItemButton>\n <Dialog\n aria-label=\"Color picker\"\n width=\"max-content\"\n styles={POPOVER_STYLES}\n >\n {/* Marks the subtree so a nested swatch group drops its custom-color\n escape hatch, which is a picker and would recurse forever. */}\n <ColorPopoverContext.Provider value={true}>\n <ColorPanel\n color={color ?? FALLBACK_COLOR}\n space={space}\n isDisabled={isEditingDisabled || isReadOnly}\n previewFormat={format}\n input={\n <ColorInput\n aria-label=\"Color value\"\n format={format}\n value={colorText}\n isDisabled={isEditingDisabled}\n isReadOnly={isReadOnly}\n onChange={handleValueChange}\n />\n }\n swatches={\n swatches?.length ? (\n <ColorSwatchGroup\n aria-label=\"Palette\"\n styles={PALETTE_STYLES}\n colors={swatches}\n columns={swatchColumns}\n format={format}\n value={colorText}\n isDisabled={isEditingDisabled || isReadOnly}\n onChange={handleValueChange}\n />\n ) : null\n }\n onChange={handleColorChange}\n onSpaceChange={setSpace}\n />\n </ColorPopoverContext.Provider>\n </Dialog>\n </DialogTrigger>\n </ColorPickerWrapper>\n );\n\n return wrapWithField(pickerField, ref as any, props);\n});\n\n/**\n * Drives the legacy `<Field>` wiring: `Picker` validates on change and passes\n * the value through untouched, where `Text` would default to `onBlur` and\n * coerce `null` into an empty string.\n */\n(ColorPicker as any).cubeInputType = 'Picker';\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.183.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.185.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { parseColor, toHex } from "../color/color.js";
4
4
  import { c } from "react-compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.183.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.185.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.183.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.185.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
4
4
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
@@ -15,6 +15,7 @@ import { getValidationMods } from "../../form/validation/resolve-validation-prop
15
15
  import { getValidationIcon } from "../../form/validation/ValidationIndicator.js";
16
16
  import { useFieldProps } from "../../form/Form/use-field/use-field-props.js";
17
17
  import { wrapWithField } from "../../form/wrapper.js";
18
+ import { getListBoxOptionId } from "../ListBox/optionId.js";
18
19
  import { DEFAULT_INPUT_STYLES, INPUT_WRAPPER_STYLES } from "../TextInput/TextInputBase.js";
19
20
  import { ListBoxPopover } from "../ListBoxPopover/ListBoxPopover.js";
20
21
  import { useCompositeFocus } from "../ListBoxPopover/useCompositeFocus.js";
@@ -140,10 +141,10 @@ function _temp() {
140
141
  return true;
141
142
  }
142
143
  function useComboBoxKeyboard(t0) {
143
- const $ = c(16);
144
- const { isPopoverOpen, listStateRef, hasResults, allowsCustomValue, effectiveInputValue, isClearable, onSelectionChange, onClearValue, onOpenPopover, onClosePopover, inputRef, setIsFilterActive, onKeyDown } = t0;
144
+ const $ = c(17);
145
+ const { isPopoverOpen, listStateRef, hasResults, allowsCustomValue, effectiveInputValue, isClearable, onSelectionChange, onClearValue, onOpenPopover, onClosePopover, inputRef, setIsFilterActive, onVirtualFocus, onKeyDown } = t0;
145
146
  let t1;
146
- if ($[0] !== allowsCustomValue || $[1] !== effectiveInputValue || $[2] !== hasResults || $[3] !== inputRef || $[4] !== isClearable || $[5] !== isPopoverOpen || $[6] !== listStateRef || $[7] !== onClearValue || $[8] !== onClosePopover || $[9] !== onKeyDown || $[10] !== onOpenPopover || $[11] !== onSelectionChange || $[12] !== setIsFilterActive) {
147
+ if ($[0] !== allowsCustomValue || $[1] !== effectiveInputValue || $[2] !== hasResults || $[3] !== inputRef || $[4] !== isClearable || $[5] !== isPopoverOpen || $[6] !== listStateRef || $[7] !== onClearValue || $[8] !== onClosePopover || $[9] !== onKeyDown || $[10] !== onOpenPopover || $[11] !== onSelectionChange || $[12] !== onVirtualFocus || $[13] !== setIsFilterActive) {
147
148
  t1 = { onKeyDown: (e) => {
148
149
  onKeyDown?.(e);
149
150
  if (e.key === "ArrowDown" || e.key === "ArrowUp") {
@@ -159,6 +160,7 @@ function useComboBoxKeyboard(t0) {
159
160
  if (nextKey != null) {
160
161
  markKeyboardFocus(listState);
161
162
  listState.selectionManager.setFocusedKey(nextKey);
163
+ onVirtualFocus(nextKey);
162
164
  }
163
165
  } else if (e.key === "Enter") {
164
166
  if (isPopoverOpen) {
@@ -208,6 +210,7 @@ function useComboBoxKeyboard(t0) {
208
210
  if (targetKey != null) {
209
211
  markKeyboardFocus(listState_1);
210
212
  listState_1.selectionManager.setFocusedKey(targetKey);
213
+ onVirtualFocus(targetKey);
211
214
  }
212
215
  }
213
216
  }
@@ -224,46 +227,80 @@ function useComboBoxKeyboard(t0) {
224
227
  $[9] = onKeyDown;
225
228
  $[10] = onOpenPopover;
226
229
  $[11] = onSelectionChange;
227
- $[12] = setIsFilterActive;
228
- $[13] = t1;
229
- } else t1 = $[13];
230
+ $[12] = onVirtualFocus;
231
+ $[13] = setIsFilterActive;
232
+ $[14] = t1;
233
+ } else t1 = $[14];
230
234
  const { keyboardProps } = useKeyboard(t1);
231
235
  let t2;
232
- if ($[14] !== keyboardProps) {
236
+ if ($[15] !== keyboardProps) {
233
237
  t2 = { keyboardProps };
234
- $[14] = keyboardProps;
235
- $[15] = t2;
236
- } else t2 = $[15];
238
+ $[15] = keyboardProps;
239
+ $[16] = t2;
240
+ } else t2 = $[16];
237
241
  return t2;
238
242
  }
239
- const ComboBoxInput = forwardRef(function ComboBoxInput({ qa, inputRef, id, value, placeholder, isDisabled, isReadOnly, isRequired, autoFocus, autoComplete, size, mods, inputStyles, keyboardProps, focusProps, onChange, onFocus, isPopoverOpen, hasResults, comboBoxId, listStateRef }, ref) {
240
- return /* @__PURE__ */ jsx(InputElement, {
241
- ref: useCombinedRefs(ref, inputRef),
242
- qa,
243
- id,
244
- type: "text",
245
- value,
246
- placeholder,
247
- isDisabled,
248
- readOnly: isReadOnly,
249
- autoFocus,
250
- autoComplete,
251
- "data-autofocus": autoFocus ? "" : void 0,
252
- onChange,
253
- onFocus,
254
- onBlur: focusProps.onBlur,
255
- ...keyboardProps,
256
- styles: inputStyles,
257
- mods,
258
- "data-size": size,
259
- "data-input-type": "combobox",
260
- role: "combobox",
261
- "aria-required": isRequired || void 0,
262
- "aria-expanded": isPopoverOpen && hasResults,
263
- "aria-haspopup": "listbox",
264
- "aria-controls": isPopoverOpen && hasResults ? `ComboBoxListBox-${comboBoxId}` : void 0,
265
- "aria-activedescendant": isPopoverOpen && hasResults && listStateRef.current?.selectionManager.focusedKey != null ? `ListBoxItem-${listStateRef.current?.selectionManager.focusedKey}` : void 0
266
- });
243
+ const ComboBoxInput = forwardRef(function ComboBoxInput(t0, ref) {
244
+ const $ = c(22);
245
+ const { qa, inputRef, id, value, placeholder, isDisabled, isReadOnly, isRequired, autoFocus, autoComplete, size, mods, inputStyles, keyboardProps, focusProps, onChange, onFocus, isPopoverOpen, hasResults, comboBoxId, activeDescendant } = t0;
246
+ const combinedRef = useCombinedRefs(ref, inputRef);
247
+ const t1 = autoFocus ? "" : void 0;
248
+ const t2 = isRequired || void 0;
249
+ const t3 = isPopoverOpen && hasResults;
250
+ const t4 = isPopoverOpen && hasResults ? `ComboBoxListBox-${comboBoxId}` : void 0;
251
+ let t5;
252
+ if ($[0] !== activeDescendant || $[1] !== autoComplete || $[2] !== autoFocus || $[3] !== combinedRef || $[4] !== focusProps.onBlur || $[5] !== id || $[6] !== inputStyles || $[7] !== isDisabled || $[8] !== isReadOnly || $[9] !== keyboardProps || $[10] !== mods || $[11] !== onChange || $[12] !== onFocus || $[13] !== placeholder || $[14] !== qa || $[15] !== size || $[16] !== t1 || $[17] !== t2 || $[18] !== t3 || $[19] !== t4 || $[20] !== value) {
253
+ t5 = /* @__PURE__ */ jsx(InputElement, {
254
+ ref: combinedRef,
255
+ qa,
256
+ id,
257
+ type: "text",
258
+ value,
259
+ placeholder,
260
+ isDisabled,
261
+ readOnly: isReadOnly,
262
+ autoFocus,
263
+ autoComplete,
264
+ "data-autofocus": t1,
265
+ onChange,
266
+ onFocus,
267
+ onBlur: focusProps.onBlur,
268
+ ...keyboardProps,
269
+ styles: inputStyles,
270
+ mods,
271
+ "data-size": size,
272
+ "data-input-type": "combobox",
273
+ role: "combobox",
274
+ "aria-required": t2,
275
+ "aria-expanded": t3,
276
+ "aria-haspopup": "listbox",
277
+ "aria-controls": t4,
278
+ "aria-activedescendant": activeDescendant
279
+ });
280
+ $[0] = activeDescendant;
281
+ $[1] = autoComplete;
282
+ $[2] = autoFocus;
283
+ $[3] = combinedRef;
284
+ $[4] = focusProps.onBlur;
285
+ $[5] = id;
286
+ $[6] = inputStyles;
287
+ $[7] = isDisabled;
288
+ $[8] = isReadOnly;
289
+ $[9] = keyboardProps;
290
+ $[10] = mods;
291
+ $[11] = onChange;
292
+ $[12] = onFocus;
293
+ $[13] = placeholder;
294
+ $[14] = qa;
295
+ $[15] = size;
296
+ $[16] = t1;
297
+ $[17] = t2;
298
+ $[18] = t3;
299
+ $[19] = t4;
300
+ $[20] = value;
301
+ $[21] = t5;
302
+ } else t5 = $[21];
303
+ return t5;
267
304
  });
268
305
  const ComboBox = forwardRef(function ComboBox(props, ref) {
269
306
  props = useFieldProps(props, { valuePropsMapper: ({ value, onChange }) => {
@@ -465,6 +502,7 @@ const ComboBox = forwardRef(function ComboBox(props, ref) {
465
502
  });
466
503
  const listStateRef = useRef(null);
467
504
  const focusInitAttemptsRef = useRef(0);
505
+ const [activeOptionKey, setActiveOptionKey] = useState(null);
468
506
  const getItemLabel = useCallback((key_1) => {
469
507
  return (localCollectionState?.collection?.getItem(key_1))?.textValue || String(key_1);
470
508
  }, [localCollectionState?.collection]);
@@ -582,6 +620,7 @@ const ComboBox = forwardRef(function ComboBox(props, ref) {
582
620
  onClosePopover: () => setIsPopoverOpen(false),
583
621
  inputRef,
584
622
  setIsFilterActive,
623
+ onVirtualFocus: setActiveOptionKey,
585
624
  onKeyDown
586
625
  });
587
626
  if (icon) {
@@ -637,13 +676,21 @@ const ComboBox = forwardRef(function ComboBox(props, ref) {
637
676
  let needsRefocus = false;
638
677
  if (currentFocusedKey == null) needsRefocus = true;
639
678
  else if (!(collection.getItem(currentFocusedKey) != null)) needsRefocus = true;
640
- if (needsRefocus) {
679
+ if (!needsRefocus) setActiveOptionKey(currentFocusedKey);
680
+ else {
641
681
  let keyToFocus = null;
642
682
  if (effectiveSelectedKey != null && collection.getItem(effectiveSelectedKey) != null) keyToFocus = effectiveSelectedKey;
643
683
  else keyToFocus = collectFirstKey();
644
- if (keyToFocus != null) selectionManager.setFocusedKey(keyToFocus);
684
+ if (keyToFocus != null) {
685
+ selectionManager.setFocusedKey(keyToFocus);
686
+ setActiveOptionKey(keyToFocus);
687
+ }
645
688
  }
646
- }, [shouldShowPopover, effectiveSelectedKey]);
689
+ }, [
690
+ shouldShowPopover,
691
+ effectiveSelectedKey,
692
+ setActiveOptionKey
693
+ ]);
647
694
  useLayoutEffect$1(() => {
648
695
  if (!shouldShowPopover) return;
649
696
  focusInitAttemptsRef.current = 0;
@@ -689,7 +736,7 @@ const ComboBox = forwardRef(function ComboBox(props, ref) {
689
736
  isPopoverOpen,
690
737
  hasResults,
691
738
  comboBoxId,
692
- listStateRef,
739
+ activeDescendant: shouldShowPopover && activeOptionKey != null ? getListBoxOptionId(`ComboBoxListBox-${comboBoxId}`, activeOptionKey) : void 0,
693
740
  onChange: handleInputChange,
694
741
  onFocus: handleInputFocus
695
742
  }),