@cube-dev/ui-kit 0.0.0-canary-4ba0ca0 → 0.0.0-canary-c22ced9

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 (441) hide show
  1. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.js +1 -1
  16. package/dist/components/actions/Action/Action.js +1 -1
  17. package/dist/components/actions/Banner/Banner.js +1 -1
  18. package/dist/components/actions/Button/Button.js +1 -1
  19. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  21. package/dist/components/actions/ButtonSplit/context.js +1 -1
  22. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  23. package/dist/components/actions/CommandMenu/styled.js +1 -1
  24. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  25. package/dist/components/actions/ItemActionContext.js +1 -1
  26. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  27. package/dist/components/actions/Link/Link.js +1 -1
  28. package/dist/components/actions/Menu/Menu.js +1 -1
  29. package/dist/components/actions/Menu/MenuItem.js +1 -1
  30. package/dist/components/actions/Menu/MenuSection.js +1 -1
  31. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  32. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  34. package/dist/components/actions/Menu/context.js +1 -1
  35. package/dist/components/actions/Menu/styled.js +1 -1
  36. package/dist/components/actions/index.js +1 -1
  37. package/dist/components/actions/use-action.js +1 -1
  38. package/dist/components/actions/use-anchored-menu.js +1 -1
  39. package/dist/components/actions/use-context-menu.js +1 -1
  40. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  41. package/dist/components/content/Alert/Alert.js +1 -1
  42. package/dist/components/content/Alert/use-alert.js +1 -1
  43. package/dist/components/content/Avatar/Avatar.js +1 -1
  44. package/dist/components/content/Badge/Badge.js +1 -1
  45. package/dist/components/content/Card/Card.js +1 -1
  46. package/dist/components/content/Content.js +1 -1
  47. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  48. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  49. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  50. package/dist/components/content/Divider.js +1 -1
  51. package/dist/components/content/Footer.js +1 -1
  52. package/dist/components/content/Header.js +1 -1
  53. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  54. package/dist/components/content/Item/Item.js +1 -1
  55. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  56. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  57. package/dist/components/content/Layout/GridLayout.js +1 -1
  58. package/dist/components/content/Layout/Layout.js +1 -1
  59. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  60. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  61. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  62. package/dist/components/content/Layout/LayoutContent.js +1 -1
  63. package/dist/components/content/Layout/LayoutContext.js +1 -1
  64. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  65. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  66. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  67. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  68. package/dist/components/content/Layout/LayoutPane.js +1 -1
  69. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  70. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  71. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  72. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  73. package/dist/components/content/Layout/index.js +1 -1
  74. package/dist/components/content/Layout/utils.js +1 -1
  75. package/dist/components/content/Paragraph.js +1 -1
  76. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  77. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  78. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  79. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  80. package/dist/components/content/Result/Result.js +1 -1
  81. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  82. package/dist/components/content/Tag/Tag.js +1 -1
  83. package/dist/components/content/Text.d.ts +7 -7
  84. package/dist/components/content/Text.js +1 -1
  85. package/dist/components/content/TextItem/TextItem.js +1 -1
  86. package/dist/components/content/Title.js +1 -1
  87. package/dist/components/content/Tree/Tree.js +9 -3
  88. package/dist/components/content/Tree/Tree.js.map +1 -1
  89. package/dist/components/content/Tree/TreeNode.js +120 -20
  90. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  91. package/dist/components/content/Tree/index.d.ts +1 -1
  92. package/dist/components/content/Tree/styled.js +1 -1
  93. package/dist/components/content/Tree/tree-index.js +1 -1
  94. package/dist/components/content/Tree/types.d.ts +75 -1
  95. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  96. package/dist/components/content/Tree/use-load-data.js +1 -1
  97. package/dist/components/content/highlightText.js +1 -1
  98. package/dist/components/content/use-auto-tooltip.js +1 -1
  99. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  100. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  101. package/dist/components/fields/Checkbox/context.js +1 -1
  102. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  103. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  104. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  105. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  106. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  107. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  108. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  109. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  110. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  111. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  112. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  113. package/dist/components/fields/DatePicker/intl.js +1 -1
  114. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  115. package/dist/components/fields/DatePicker/props.js +1 -1
  116. package/dist/components/fields/DatePicker/utils.js +1 -1
  117. package/dist/components/fields/FileInput/FileInput.js +1 -1
  118. package/dist/components/fields/FilterListBox/FilterListBox.js +3 -5
  119. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  120. package/dist/components/fields/FilterPicker/FilterPicker.js +2 -4
  121. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  122. package/dist/components/fields/Input/Input.js +1 -1
  123. package/dist/components/fields/ListBox/ListBox.d.ts +0 -11
  124. package/dist/components/fields/ListBox/ListBox.js +38 -153
  125. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  126. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  127. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  128. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  129. package/dist/components/fields/Picker/Picker.js +1 -1
  130. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  131. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  132. package/dist/components/fields/RadioGroup/context.js +1 -1
  133. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  134. package/dist/components/fields/Select/Select.js +1 -1
  135. package/dist/components/fields/Slider/Gradation.js +1 -1
  136. package/dist/components/fields/Slider/HueSlider.js +1 -1
  137. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  138. package/dist/components/fields/Slider/Slider.js +1 -1
  139. package/dist/components/fields/Slider/SliderBase.js +1 -1
  140. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  141. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  142. package/dist/components/fields/Slider/elements.js +1 -1
  143. package/dist/components/fields/Slider/index.js +1 -1
  144. package/dist/components/fields/Switch/Switch.js +1 -1
  145. package/dist/components/fields/TextArea/TextArea.js +1 -1
  146. package/dist/components/fields/TextInput/TextInput.js +1 -1
  147. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  148. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  149. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  150. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  151. package/dist/components/form/Form/Field.js +1 -1
  152. package/dist/components/form/Form/Form.js +1 -1
  153. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  154. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  155. package/dist/components/form/Form/SubmitError.js +1 -1
  156. package/dist/components/form/Form/index.js +1 -1
  157. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  158. package/dist/components/form/Form/use-field/use-field.js +1 -1
  159. package/dist/components/form/Form/use-form.js +1 -1
  160. package/dist/components/form/Form/validation.js +1 -1
  161. package/dist/components/form/Label.js +1 -1
  162. package/dist/components/form/wrapper.js +1 -1
  163. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  164. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  165. package/dist/components/layout/Flex.js +1 -1
  166. package/dist/components/layout/Flow.js +1 -1
  167. package/dist/components/layout/Grid.js +1 -1
  168. package/dist/components/layout/Panel.js +1 -1
  169. package/dist/components/layout/Prefix.js +1 -1
  170. package/dist/components/layout/ResizablePanel.js +1 -1
  171. package/dist/components/layout/Space.js +1 -1
  172. package/dist/components/layout/Suffix.js +1 -1
  173. package/dist/components/navigation/Tabs/DraggableTabList.js +60 -11
  174. package/dist/components/navigation/Tabs/DraggableTabList.js.map +1 -1
  175. package/dist/components/navigation/Tabs/EditableTitle.js +1 -1
  176. package/dist/components/navigation/Tabs/TabButton.js +10 -3
  177. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  178. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  179. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  180. package/dist/components/navigation/Tabs/TabPicker.js +2 -4
  181. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  182. package/dist/components/navigation/Tabs/Tabs.js +3 -5
  183. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  184. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  185. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  186. package/dist/components/navigation/Tabs/styled.js +1 -1
  187. package/dist/components/navigation/Tabs/types.d.ts +0 -5
  188. package/dist/components/navigation/Tabs/types.js +1 -1
  189. package/dist/components/navigation/Tabs/types.js.map +1 -1
  190. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  191. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  192. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  193. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  194. package/dist/components/other/Calendar/Calendar.js +1 -1
  195. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  196. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  197. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  198. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  199. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  200. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  201. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  202. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  203. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  204. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  205. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  206. package/dist/components/overlays/Dialog/context.js +1 -1
  207. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  208. package/dist/components/overlays/Modal/Modal.js +1 -1
  209. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  210. package/dist/components/overlays/Modal/Overlay.js +1 -1
  211. package/dist/components/overlays/Modal/Popover.js +1 -1
  212. package/dist/components/overlays/Modal/Tray.js +1 -1
  213. package/dist/components/overlays/Modal/Underlay.js +1 -1
  214. package/dist/components/overlays/Notifications/Notification.js +1 -1
  215. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  216. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  217. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  218. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  219. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  220. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  221. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  222. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  223. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  224. package/dist/components/overlays/Notifications/index.js +1 -1
  225. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  226. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  227. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  228. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  229. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  230. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  231. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  232. package/dist/components/overlays/Toast/index.js +1 -1
  233. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  234. package/dist/components/overlays/Toast/useToast.js +1 -1
  235. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  236. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  237. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  238. package/dist/components/overlays/Tooltip/context.js +1 -1
  239. package/dist/components/portal/Portal.js +1 -1
  240. package/dist/components/portal/PortalProvider.js +1 -1
  241. package/dist/components/portal/usePortal.js +1 -1
  242. package/dist/components/shared/InvalidIcon.js +1 -1
  243. package/dist/components/shared/ValidIcon.js +1 -1
  244. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  245. package/dist/components/status/Spin/Cube.js +1 -1
  246. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  247. package/dist/components/status/Spin/Spin.js +1 -1
  248. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  249. package/dist/data/item-themes.js +1 -1
  250. package/dist/data/themes.js +1 -1
  251. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  252. package/dist/icons/AdjustmentsIcon.js +1 -1
  253. package/dist/icons/AiIcon.js +1 -1
  254. package/dist/icons/AreaChartIcon.js +1 -1
  255. package/dist/icons/BackwardIcon.js +1 -1
  256. package/dist/icons/BarChartIcon.js +1 -1
  257. package/dist/icons/BellFilledIcon.js +1 -1
  258. package/dist/icons/BellIcon.js +1 -1
  259. package/dist/icons/BooleanIcon.js +1 -1
  260. package/dist/icons/CalendarEditIcon.js +1 -1
  261. package/dist/icons/CalendarIcon.js +1 -1
  262. package/dist/icons/CaretDownIcon.js +1 -1
  263. package/dist/icons/CaretUpIcon.js +1 -1
  264. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  265. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  266. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  267. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  268. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  269. package/dist/icons/ChartBarLineIcon.js +1 -1
  270. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  271. package/dist/icons/ChartBarStackedIcon.js +1 -1
  272. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  273. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  274. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  275. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  276. package/dist/icons/ChartBubbleIcon.js +1 -1
  277. package/dist/icons/ChartDonut2Icon.js +1 -1
  278. package/dist/icons/ChartFunnelIcon.js +1 -1
  279. package/dist/icons/ChartHeatmapIcon.js +1 -1
  280. package/dist/icons/ChartKPIIcon.js +1 -1
  281. package/dist/icons/ChartPie2Icon.js +1 -1
  282. package/dist/icons/ChartScatterIcon.js +1 -1
  283. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  284. package/dist/icons/CheckCircleIcon.js +1 -1
  285. package/dist/icons/CheckIcon.js +1 -1
  286. package/dist/icons/CircleFilledIcon.js +1 -1
  287. package/dist/icons/ClearIcon.js +1 -1
  288. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  289. package/dist/icons/CloseCircleIcon.js +1 -1
  290. package/dist/icons/CloseIcon.js +1 -1
  291. package/dist/icons/CodeIcon.js +1 -1
  292. package/dist/icons/ColumnTotalIcon.js +1 -1
  293. package/dist/icons/CopyIcon.js +1 -1
  294. package/dist/icons/CountIcon.js +1 -1
  295. package/dist/icons/CubeIcon.js +1 -1
  296. package/dist/icons/CubePauseIcon.js +1 -1
  297. package/dist/icons/CubePlayIcon.js +1 -1
  298. package/dist/icons/CurrencyDollarIcon.js +1 -1
  299. package/dist/icons/DangerIcon.js +1 -1
  300. package/dist/icons/DashboardIcon.js +1 -1
  301. package/dist/icons/DatabaseIcon.js +1 -1
  302. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  303. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  304. package/dist/icons/DirectionIcon.js +1 -1
  305. package/dist/icons/DonutIcon.js +1 -1
  306. package/dist/icons/DownIcon.js +1 -1
  307. package/dist/icons/EditIcon.js +1 -1
  308. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  309. package/dist/icons/ExclamationCircleIcon.js +1 -1
  310. package/dist/icons/ExclamationIcon.js +1 -1
  311. package/dist/icons/EyeIcon.js +1 -1
  312. package/dist/icons/EyeInvisibleIcon.js +1 -1
  313. package/dist/icons/FilterIcon.js +1 -1
  314. package/dist/icons/FolderFilledIcon.js +1 -1
  315. package/dist/icons/FolderIcon.js +1 -1
  316. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  317. package/dist/icons/FolderOpenIcon.js +1 -1
  318. package/dist/icons/ForwardIcon.js +1 -1
  319. package/dist/icons/HierarchyIcon.js +1 -1
  320. package/dist/icons/HierarchyOpenIcon.js +1 -1
  321. package/dist/icons/Icon.js +1 -1
  322. package/dist/icons/InfoCircleIcon.js +1 -1
  323. package/dist/icons/InfoIcon.js +1 -1
  324. package/dist/icons/KeyIcon.js +1 -1
  325. package/dist/icons/LeftIcon.js +1 -1
  326. package/dist/icons/LineChartIcon.js +1 -1
  327. package/dist/icons/LoadingIcon.js +1 -1
  328. package/dist/icons/LockFilledIcon.js +1 -1
  329. package/dist/icons/LockIcon.js +1 -1
  330. package/dist/icons/MoreIcon.js +1 -1
  331. package/dist/icons/NotAllowedIcon.js +1 -1
  332. package/dist/icons/Number123Icon.js +1 -1
  333. package/dist/icons/NumberIcon.js +1 -1
  334. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  335. package/dist/icons/PauseCircleIcon.js +1 -1
  336. package/dist/icons/PauseIcon.js +1 -1
  337. package/dist/icons/PercentageIcon.js +1 -1
  338. package/dist/icons/PieChartIcon.js +1 -1
  339. package/dist/icons/PlayCircleIcon.js +1 -1
  340. package/dist/icons/PlayIcon.js +1 -1
  341. package/dist/icons/PlusIcon.js +1 -1
  342. package/dist/icons/ProgressBarIcon.js +1 -1
  343. package/dist/icons/ReloadIcon.js +1 -1
  344. package/dist/icons/ReportIcon.js +1 -1
  345. package/dist/icons/ReturnIcon.js +1 -1
  346. package/dist/icons/RightIcon.js +1 -1
  347. package/dist/icons/RowTotalsIcon.js +1 -1
  348. package/dist/icons/SchemeIcon.js +1 -1
  349. package/dist/icons/SearchIcon.js +1 -1
  350. package/dist/icons/SemanticQueryIcon.js +1 -1
  351. package/dist/icons/SettingsIcon.js +1 -1
  352. package/dist/icons/ShieldFilledIcon.js +1 -1
  353. package/dist/icons/ShieldIcon.js +1 -1
  354. package/dist/icons/SlashIcon.js +1 -1
  355. package/dist/icons/SparklesIcon.js +1 -1
  356. package/dist/icons/SqlIcon.js +1 -1
  357. package/dist/icons/StatsIcon.js +1 -1
  358. package/dist/icons/StopIcon.js +1 -1
  359. package/dist/icons/StringIcon.js +1 -1
  360. package/dist/icons/SubtotalsIcon.js +1 -1
  361. package/dist/icons/SwitchIcon.js +1 -1
  362. package/dist/icons/TableIcon.js +1 -1
  363. package/dist/icons/ThumbsDownIcon.js +1 -1
  364. package/dist/icons/ThumbsUpIcon.js +1 -1
  365. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  366. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  367. package/dist/icons/ThunderboltIcon.js +1 -1
  368. package/dist/icons/TimeIcon.js +1 -1
  369. package/dist/icons/TrashIcon.js +1 -1
  370. package/dist/icons/UnlockIcon.js +1 -1
  371. package/dist/icons/UpIcon.js +1 -1
  372. package/dist/icons/UserGroupIcon.js +1 -1
  373. package/dist/icons/UserIcon.js +1 -1
  374. package/dist/icons/UserLockIcon.js +1 -1
  375. package/dist/icons/ViewIcon.js +1 -1
  376. package/dist/icons/WarningFilledIcon.js +1 -1
  377. package/dist/icons/WarningIcon.js +1 -1
  378. package/dist/icons/index.d.ts +0 -1
  379. package/dist/icons/wrap-icon.js +1 -1
  380. package/dist/index.d.ts +2 -3
  381. package/dist/index.js +2 -3
  382. package/dist/index.js.map +1 -1
  383. package/dist/provider.js +1 -1
  384. package/dist/providers/TrackingProvider.js +1 -1
  385. package/dist/providers/navigationAdapter.default.js +1 -1
  386. package/dist/tokens/base.js +1 -1
  387. package/dist/tokens/colors.js +1 -1
  388. package/dist/tokens/index.js +1 -1
  389. package/dist/tokens/layout.js +1 -1
  390. package/dist/tokens/shadows.js +1 -1
  391. package/dist/tokens/sizes.js +1 -1
  392. package/dist/tokens/spacing.js +1 -1
  393. package/dist/tokens/typography.js +1 -1
  394. package/dist/utils/ResizeSensor.js +1 -1
  395. package/dist/utils/is-dev-env.js +1 -1
  396. package/dist/utils/modules.js +1 -1
  397. package/dist/utils/promise.js +1 -1
  398. package/dist/utils/raf.js +1 -1
  399. package/dist/utils/random.js +1 -1
  400. package/dist/utils/range.js +1 -1
  401. package/dist/utils/react/RenderCache.js +1 -1
  402. package/dist/utils/react/Slots.js +1 -1
  403. package/dist/utils/react/chain.js +1 -1
  404. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  405. package/dist/utils/react/index.js +1 -1
  406. package/dist/utils/react/interactions.js +1 -1
  407. package/dist/utils/react/isTextOnly.js +1 -1
  408. package/dist/utils/react/mapProps.js +1 -1
  409. package/dist/utils/react/mergeProps.js +1 -1
  410. package/dist/utils/react/nullableValue.js +1 -1
  411. package/dist/utils/react/resolveIcon.js +1 -1
  412. package/dist/utils/react/sharedStore.js +1 -1
  413. package/dist/utils/react/useCombinedRefs.js +1 -1
  414. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  415. package/dist/utils/react/useEventBus.js +1 -1
  416. package/dist/utils/react/useId.js +1 -1
  417. package/dist/utils/react/useIsDarwin.js +1 -1
  418. package/dist/utils/react/useKeySymbols.js +1 -1
  419. package/dist/utils/react/useLayoutEffect.js +1 -1
  420. package/dist/utils/react/useLocalStorage.js +1 -1
  421. package/dist/utils/react/useMergeStyles.js +1 -1
  422. package/dist/utils/react/useQaProps.js +1 -1
  423. package/dist/utils/react/useViewportSize.js +1 -1
  424. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  425. package/dist/utils/selection.js +1 -1
  426. package/dist/utils/styles.js +1 -1
  427. package/dist/utils/tree.js +1 -1
  428. package/dist/utils/warnings.js +1 -1
  429. package/dist/version.js +2 -2
  430. package/docs/components/content/Tree.md +131 -32
  431. package/docs/components/fields/FilterPicker.md +0 -27
  432. package/docs/components/fields/ListBox.md +0 -33
  433. package/docs/components/navigation/Tabs.md +50 -128
  434. package/package.json +1 -1
  435. package/dist/components/fields/ListBox/DraggableListBox.js +0 -24
  436. package/dist/components/fields/ListBox/DraggableListBox.js.map +0 -1
  437. package/dist/components/shared/DraggableCollection.js +0 -134
  438. package/dist/components/shared/DraggableCollection.js.map +0 -1
  439. package/dist/icons/GripVerticalIcon.d.ts +0 -12
  440. package/dist/icons/GripVerticalIcon.js +0 -11
  441. package/dist/icons/GripVerticalIcon.js.map +0 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/promise.ts
3
3
  function timeout(ms = 30) {
4
4
  return new Promise((resolve) => {
package/dist/utils/raf.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/raf.ts
3
3
  /**
4
4
  * Chains N requestAnimationFrame calls and returns a cancel function.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/random.ts
3
3
  function random(min, max) {
4
4
  const realMin = min < max ? min : max;
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/range.ts
3
3
  function range(count) {
4
4
  return Array.from({ length: count }, (_, i) => i);
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useRef } from "react";
3
3
  import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { mergeProps } from "./mergeProps.js";
3
3
  import { Children, cloneElement, createContext, useContext, useMemo } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/react/chain.ts
3
3
  /**
4
4
  * Calls all functions in the order they were chained with the same arguments.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/react/forwardRefWithGenerics.tsx
3
3
  /**
4
4
  * A helper for creating forwardRef components with generic types.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { chain } from "./chain.js";
3
3
  import { forwardRefWithGenerics } from "./forwardRefWithGenerics.js";
4
4
  import { isTextOnly } from "./isTextOnly.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useState } from "react";
3
3
  import { useFocus, useFocusVisible } from "react-aria";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { Children, isValidElement } from "react";
3
3
 
4
4
  //#region src/utils/react/isTextOnly.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/react/mapProps.ts
3
3
  /** Converts AriaButtonProps to CubeButtonProps */
4
4
  function ariaToCubeButtonProps(props) {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { chain } from "./chain.js";
3
3
  import { mergeIds } from "./useId.js";
4
4
  import { mergeStyles } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/react/nullableValue.ts
3
3
  function castNullableStringValue(props) {
4
4
  return castNullableField(props, ["value", "defaultValue"], "string", (v) => String(v));
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/react/resolveIcon.ts
3
3
  /**
4
4
  * Resolves a dynamic icon prop to its content and slot state.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { useSyncExternalStore } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useEffect, useRef } from "react";
3
3
 
4
4
  //#region src/utils/react/useCombinedRefs.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { createSharedStore } from "./sharedStore.js";
3
3
  import { useEffect } from "react";
4
4
  import { useFocusVisible } from "react-aria";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import React, { createContext, useCallback, useContext, useEffect, useRef } from "react";
3
3
 
4
4
  //#region src/utils/react/useEventBus.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "./useLayoutEffect.js";
3
3
  import { useEffect, useRef, useState } from "react";
4
4
  import { useSSRSafeId } from "@react-aria/ssr";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useEffect, useState } from "react";
3
3
 
4
4
  //#region src/utils/react/useIsDarwin.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useIsDarwin } from "./useIsDarwin.js";
3
3
  import { useMemo } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import * as React$1 from "react";
3
3
 
4
4
  //#region src/utils/react/useLayoutEffect.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { useCallback, useSyncExternalStore } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { mergeStyles } from "@tenphi/tasty";
3
3
  import { useMemo } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/react/useQaProps.ts
3
3
  /**
4
4
  * Processes QA props.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { useEffect, useState } from "react";
3
3
 
4
4
  //#region src/utils/react/useViewportSize.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  import { isValidElement } from "react";
3
3
  import { isFragment } from "react-is";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/selection.ts
3
3
  /**
4
4
  * Deduplicate/toggle keys in a selection: if a key appears twice it is
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/styles.ts
3
3
  /**
4
4
  * Split properties into style and non-style properties.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/tree.ts
3
3
  function toFlatTree(tree, includingFolders) {
4
4
  return tree.reduce((result, node) => {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/utils/warnings.ts
3
3
  const SUGGESTED_PROP_MAP = {
4
4
  disabled: "isDisabled",
package/dist/version.js CHANGED
@@ -1,6 +1,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-4ba0ca0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c22ced9 | Cube Dev Team */
2
2
  //#region src/version.ts
3
- const VERSION = "0.0.0-canary-4ba0ca0";
3
+ const VERSION = "0.0.0-canary-c22ced9";
4
4
  if (typeof window !== "undefined") {
5
5
  const version = VERSION;
6
6
  window.CubeUIKit = window.CubeUIKit || { version };
@@ -58,6 +58,36 @@ consumers can be migrated with minimal churn.
58
58
  — Called when a node is checked or unchecked.
59
59
  - **`onSelect`** `(selectedKeys: Key[], info: TreeOnSelectInfo) => void` —
60
60
  Called when row selection changes.
61
+ - **`expandOnFolderClick`** `boolean` (default: `false`) — When `true`,
62
+ pressing a non-leaf row toggles its expansion instead of selecting
63
+ it. The chevron and keyboard navigation continue to work
64
+ independently. Useful for file-tree UX where only leaves are
65
+ meaningful selection targets.
66
+ - **`menu`** `ReactNode | ((data, state) => ReactNode | null)` — Default
67
+ `Menu.Item` children rendered on every row that doesn't override via
68
+ `data.menu`. Returning `null` from the callback hides the menu for
69
+ that specific row.
70
+ - **`contextMenu`** `boolean | 'context-only'` (default: `false`) — How
71
+ the row menu is exposed.
72
+
73
+ - `false` — no menu at all.
74
+ - `true` — render an overflow `⋮` trigger inside `actions` AND open
75
+ the same menu on right-click / Shift+F10.
76
+ - `'context-only'` — right-click / Shift+F10 only; no `⋮` trigger.
77
+
78
+ Per-node `data.contextMenu` wins when provided.
79
+
80
+ - **`onAction`** `(action: string, key: Key) => void` — Called when a
81
+ menu action is triggered on any row. Receives the action key (with
82
+ React's `.$` prefix stripped) and the row key. Per-node
83
+ `data.onAction` is called first.
84
+ - **`menuTriggerProps`** `Partial<CubeMenuTriggerProps>` — Forwarded to
85
+ every per-row `MenuTrigger`.
86
+ - **`menuProps`** `Partial<CubeMenuProps<object>>` — Forwarded to every
87
+ per-row `Menu` (both the overflow `⋮` menu and the right-click context
88
+ menu). If you pass `onAction` here, it is **chained with** the
89
+ tree-level `onAction`/per-node `data.onAction` callbacks (it does not
90
+ override them) and receives the same normalized action key.
61
91
  - **`rowStyles`** `Styles` — Override styles for `[data-element="Row"]`.
62
92
 
63
93
  #### `CubeTreeNodeData`
@@ -74,6 +104,13 @@ consumers can be migrated with minimal churn.
74
104
  row.
75
105
  - **`isCheckable`** `boolean` — Per-node override; `false` hides the
76
106
  checkbox for this row even when the tree is `isCheckable`.
107
+ - **`menu`** `ReactNode | null` — Per-node menu override. Wins over
108
+ the tree-level `menu`. Pass `null` to hide the menu for this row
109
+ when the tree provides a default.
110
+ - **`contextMenu`** `boolean | 'context-only'` — Per-node override of
111
+ the tree-level `contextMenu`.
112
+ - **`onAction`** `(action: string) => void` — Per-node action callback.
113
+ Called before the tree-level `onAction`.
77
114
 
78
115
  ### Base Properties
79
116
 
@@ -102,21 +139,30 @@ spacing, hover/selected colors, or cell layout without re-targeting via
102
139
  - `Checkbox` — The checkbox slot (visible only when `isCheckable`).
103
140
  - `Title` — The title label.
104
141
 
142
+ ### Style Properties
143
+
144
+ These properties allow direct style application without using the `styles` prop:
145
+
146
+ - **Position:** `gridArea`, `order`, `gridColumn`, `gridRow`, `placeSelf`, `alignSelf`, `justifySelf`, `zIndex`, `margin`, `inset`, `position`, `scrollMargin`
147
+ - **Dimension:** `width`, `height`, `flexBasis`, `flexGrow`, `flexShrink`, `flex`
148
+ - **Block:** `border`, `radius`, `shadow`, `outline`
149
+
105
150
  ### Modifiers
106
151
 
107
152
  The following row-level modifiers are emitted automatically. They are
108
153
  useful when overriding `rowStyles`:
109
154
 
110
- | Modifier | Type | Description |
111
- | --------------- | --------- | ------------------------------------------------------ |
112
- | `selected` | `boolean` | Row is selected. |
113
- | `checked` | `boolean` | Row is fully checked. |
114
- | `indeterminate` | `boolean` | Row is in the half-checked state. |
115
- | `expanded` | `boolean` | Row is expanded. |
116
- | `disabled` | `boolean` | Row is disabled. |
117
- | `loading` | `boolean` | The row's children are being fetched via `loadData`. |
118
- | `leaf` | `boolean` | Row has no children. |
119
- | `has-checkbox` | `boolean` | Row renders a checkbox. |
155
+ | Modifier | Type | Description |
156
+ | --------------- | --------- | ---------------------------------------------------- |
157
+ | `selected` | `boolean` | Row is selected. |
158
+ | `checked` | `boolean` | Row is fully checked. |
159
+ | `indeterminate` | `boolean` | Row is in the half-checked state. |
160
+ | `expanded` | `boolean` | Row is expanded. |
161
+ | `disabled` | `boolean` | Row is disabled. |
162
+ | `loading` | `boolean` | The row's children are being fetched via `loadData`. |
163
+ | `leaf` | `boolean` | Row has no children. |
164
+ | `has-checkbox` | `boolean` | Row renders a checkbox. |
165
+ | `has-menu` | `boolean` | Row resolves a non-empty menu. |
120
166
 
121
167
  ## Variants
122
168
 
@@ -133,13 +179,19 @@ useful when overriding `rowStyles`:
133
179
 
134
180
  ```jsx
135
181
  const data = [
136
- { key: 'fruits', title: 'Fruits', children: [
137
- { key: 'apple', title: 'Apple' },
138
- { key: 'banana', title: 'Banana' },
139
- ]},
140
- { key: 'vegetables', title: 'Vegetables', children: [
141
- { key: 'carrot', title: 'Carrot' },
142
- ]},
182
+ {
183
+ key: 'fruits',
184
+ title: 'Fruits',
185
+ children: [
186
+ { key: 'apple', title: 'Apple' },
187
+ { key: 'banana', title: 'Banana' },
188
+ ],
189
+ },
190
+ {
191
+ key: 'vegetables',
192
+ title: 'Vegetables',
193
+ children: [{ key: 'carrot', title: 'Carrot' }],
194
+ },
143
195
  ];
144
196
 
145
197
  <Tree treeData={data} defaultExpandedKeys={['fruits']} />;
@@ -171,14 +223,17 @@ To match AntD's object-shape API, pass `checkedKeys` as
171
223
  `{ checked, halfChecked }`. `onCheck` returns the same shape.
172
224
 
173
225
  ```jsx
174
- const [checkedKeys, setCheckedKeys] = useState({ checked: [], halfChecked: [] });
226
+ const [checkedKeys, setCheckedKeys] = useState({
227
+ checked: [],
228
+ halfChecked: [],
229
+ });
175
230
 
176
231
  <Tree
177
232
  treeData={data}
178
233
  isCheckable
179
234
  checkedKeys={checkedKeys}
180
235
  onCheck={(next) => setCheckedKeys(next)}
181
- />
236
+ />;
182
237
  ```
183
238
 
184
239
  ### Lazy Loading
@@ -194,7 +249,7 @@ const handleLoadData = (node) =>
194
249
  .then((r) => r.json())
195
250
  .then((children) => mergeIntoTreeData(node.key, children));
196
251
 
197
- <Tree treeData={data} loadData={handleLoadData} />
252
+ <Tree treeData={data} loadData={handleLoadData} />;
198
253
  ```
199
254
 
200
255
  ### Auto-expand Parent (Filtering)
@@ -203,11 +258,7 @@ Pass the matching keys via `expandedKeys` and set `autoExpandParent` to
203
258
  keep their ancestors expanded.
204
259
 
205
260
  ```jsx
206
- <Tree
207
- treeData={data}
208
- expandedKeys={matchedKeys}
209
- autoExpandParent
210
- />
261
+ <Tree treeData={data} expandedKeys={matchedKeys} autoExpandParent />
211
262
  ```
212
263
 
213
264
  ### Per-node Disabling
@@ -217,14 +268,18 @@ node-level flags.
217
268
 
218
269
  ```jsx
219
270
  const data = [
220
- { key: 'a', title: 'A', children: [
221
- { key: 'a-1', title: 'A-1', isDisabled: true },
222
- { key: 'a-2', title: 'A-2', isCheckboxDisabled: true },
223
- { key: 'a-3', title: 'A-3', isCheckable: false },
224
- ]},
271
+ {
272
+ key: 'a',
273
+ title: 'A',
274
+ children: [
275
+ { key: 'a-1', title: 'A-1', isDisabled: true },
276
+ { key: 'a-2', title: 'A-2', isCheckboxDisabled: true },
277
+ { key: 'a-3', title: 'A-3', isCheckable: false },
278
+ ],
279
+ },
225
280
  ];
226
281
 
227
- <Tree treeData={data} isCheckable defaultExpandedKeys={['a']} />
282
+ <Tree treeData={data} isCheckable defaultExpandedKeys={['a']} />;
228
283
  ```
229
284
 
230
285
  ### Fixed Height
@@ -233,6 +288,51 @@ const data = [
233
288
  <Tree treeData={data} height={300} />
234
289
  ```
235
290
 
291
+ ### Per-row Menu (Overflow + Right-Click)
292
+
293
+ Pass `menu` (a `ReactNode` of `Menu.Item`s, or a callback) plus
294
+ `contextMenu={true}` to render a built-in `⋮` overflow trigger AND
295
+ open the same menu on right-click / `Shift+F10`. Use
296
+ `onAction(action, key)` at the tree level to handle actions, or
297
+ `data.onAction` for per-node behavior.
298
+
299
+ ```jsx
300
+ <Tree
301
+ treeData={data}
302
+ contextMenu
303
+ menu={
304
+ <>
305
+ <Menu.Item key="rename">Rename</Menu.Item>
306
+ <Menu.Item key="duplicate">Duplicate</Menu.Item>
307
+ <Menu.Item key="delete">Delete</Menu.Item>
308
+ </>
309
+ }
310
+ onAction={(action, key) => console.log(action, 'on', key)}
311
+ />
312
+ ```
313
+
314
+ ### Right-Click Only
315
+
316
+ `contextMenu="context-only"` keeps the right-click / `Shift+F10`
317
+ behavior but hides the `⋮` trigger — handy for clean file-tree UIs.
318
+
319
+ ### Per-Node Menu Overrides
320
+
321
+ Set `data.menu` to override the tree-level menu for a specific row,
322
+ or `null` to hide it entirely. `data.contextMenu` and
323
+ `data.onAction` follow the same per-row override pattern.
324
+
325
+ ### Expand on Folder Click
326
+
327
+ `expandOnFolderClick` makes folder rows toggle their expansion when
328
+ pressed instead of triggering selection. Leaves still select normally,
329
+ which mirrors typical file-tree UX. Folder rows remain focusable for
330
+ keyboard navigation, and the chevron toggle keeps working.
331
+
332
+ ```jsx
333
+ <Tree treeData={data} expandOnFolderClick />
334
+ ```
335
+
236
336
  ## Accessibility
237
337
 
238
338
  Tree implements the
@@ -287,7 +387,6 @@ via `useTree` from React Aria.
287
387
 
288
388
  - Built-in virtualization for very large trees (10k+ rows).
289
389
  - Drag-and-drop reordering, mirroring AntD's `draggable` API.
290
- - An `onRightClick`/context menu hook.
291
390
  - Reveal-on-mount: scroll the focused row into view when expanded
292
391
  programmatically.
293
392
  - Optional inline title editing.
@@ -66,8 +66,6 @@ A versatile selection component that combines a trigger button with a searchable
66
66
  - **`onOptionClick`** `(key: Key) => void` — Callback when an option is clicked (non-checkbox area)
67
67
  - **`onClear`** `() => void` — Callback called when the clear button is pressed
68
68
  - **`onOpenChange`** `(isOpen: boolean) => void` — Callback called when the popover open state changes
69
- - **`isReorderable`** `boolean` (default: `false`) — Enable drag-and-drop item reordering in the dropdown list
70
- - **`onReorder`** `(newOrder: string[]) => void` — Callback when items are reordered via drag-and-drop or keyboard (Alt+Arrow)
71
69
 
72
70
  ### Base Properties
73
71
 
@@ -505,30 +503,6 @@ Use `isLoadingItems` to indicate that items are currently being fetched. Unlike
505
503
  </FilterPicker>
506
504
  ```
507
505
 
508
- ### Reorderable
509
-
510
- Enable drag-and-drop reordering inside the dropdown with `isReorderable`. Items display a grip handle and can be dragged to new positions. Use `Alt+Arrow` keys to reorder via keyboard.
511
-
512
- ```jsx
513
- const [keyOrder, setKeyOrder] = useState([
514
- 'revenue', 'orders', 'customers', 'sessions',
515
- 'page-views', 'bounce-rate', 'conversion', 'aov',
516
- 'retention', 'churn', 'ltv', 'arpu',
517
- ]);
518
-
519
- <FilterPicker
520
- isReorderable
521
- selectionMode="multiple"
522
- defaultSelectedKeys={['revenue', 'orders', 'customers']}
523
- label="Metrics"
524
- onReorder={(newOrder) => setKeyOrder(newOrder)}
525
- >
526
- {keyOrder.map((key) => (
527
- <FilterPicker.Item key={key}>{key}</FilterPicker.Item>
528
- ))}
529
- </FilterPicker>
530
- ```
531
-
532
506
  ## Accessibility
533
507
 
534
508
  ### Keyboard Navigation
@@ -538,7 +512,6 @@ const [keyOrder, setKeyOrder] = useState([
538
512
  - `Arrow Up/Down` - Opens the popover (when closed) or navigates through options (when open)
539
513
  - `Escape` - Closes the popover or clears search
540
514
  - `Home/End` - Navigate to first/last option
541
- - `Alt+ArrowUp` / `Alt+ArrowDown` - Reorder the focused item (when `isReorderable`)
542
515
 
543
516
  ### Screen Reader Support
544
517
 
@@ -46,8 +46,6 @@ A versatile list selection component that allows users to select one or more ite
46
46
  - **`onOptionClick`** `(key: Key) => void` — Callback when an option is clicked (non-checkbox area)
47
47
  - **`items`** `Iterable<T>` — Array of items for dynamic content with render function pattern
48
48
  - **`disableSelectionToggle`** `boolean` (default: `false`) — When true, clicking an already-selected item keeps it selected instead of toggling it off
49
- - **`isReorderable`** `boolean` (default: `false`) — Enable drag-and-drop item reordering. Disables virtualization when active
50
- - **`onReorder`** `(newOrder: string[]) => void` — Callback when items are reordered via drag-and-drop or keyboard (Alt+Arrow)
51
49
 
52
50
  ### Base Properties
53
51
 
@@ -118,8 +116,6 @@ The `mods` property accepts the following modifiers you can override:
118
116
  - **`header`** `boolean` — Applied when header prop is provided or `showSelectAll={true}`
119
117
  - **`footer`** `boolean` — Applied when footer prop is provided
120
118
  - **`selectAll`** `boolean` — Applied when `showSelectAll={true}` in multiple selection mode
121
- - **`draggable`** `boolean` — Applied to options when `isReorderable={true}`
122
- - **`dragging`** `boolean` — Applied to the option currently being dragged
123
119
 
124
120
  ## Key Properties
125
121
 
@@ -608,34 +604,6 @@ const [selectedKey, setSelectedKey] = useState('apple');
608
604
  </Form>
609
605
  ```
610
606
 
611
- ### Reorderable
612
-
613
- Enable drag-and-drop reordering with `isReorderable`. Items display a grip handle and can be dragged to new positions. Use `Alt+Arrow` keys to reorder via keyboard.
614
-
615
- ```jsx
616
- const [keyOrder, setKeyOrder] = useState([
617
- 'revenue', 'orders', 'customers', 'sessions',
618
- ]);
619
-
620
- <ListBox
621
- isReorderable
622
- selectionMode="multiple"
623
- label="Metrics"
624
- onReorder={(newOrder) => setKeyOrder(newOrder)}
625
- >
626
- {keyOrder.map((key) => (
627
- <ListBox.Item key={key}>{key}</ListBox.Item>
628
- ))}
629
- </ListBox>
630
- ```
631
-
632
- **Key features:**
633
-
634
- - **Drag-and-drop**: Reorder items by dragging the grip handle
635
- - **Keyboard reordering**: Use `Alt+ArrowUp` / `Alt+ArrowDown` to move the focused item
636
- - **Callback**: `onReorder` is called with the new key order after a drop or keyboard move
637
- - **Virtualization**: Automatically disabled when reordering is active
638
-
639
607
  ## Accessibility
640
608
 
641
609
  ### Keyboard Navigation
@@ -646,7 +614,6 @@ const [keyOrder, setKeyOrder] = useState([
646
614
  - `Home/End` - Move to first/last option
647
615
  - `Page Up/Page Down` - Move up/down by multiple items
648
616
  - `Escape` - Deselect all items (if onEscape not provided)
649
- - `Alt+ArrowUp` / `Alt+ArrowDown` - Reorder the focused item (when `isReorderable`)
650
617
 
651
618
  ### Screen Reader Support
652
619