@cube-dev/ui-kit 0.0.0-canary-ccca45d → 0.0.0-canary-2256c47

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 (418) 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.js +1 -1
  84. package/dist/components/content/TextItem/TextItem.js +1 -1
  85. package/dist/components/content/Title.js +1 -1
  86. package/dist/components/content/Tree/Tree.js +78 -148
  87. package/dist/components/content/Tree/Tree.js.map +1 -1
  88. package/dist/components/content/Tree/TreeNode.js +17 -64
  89. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  90. package/dist/components/content/Tree/styled.js +1 -3
  91. package/dist/components/content/Tree/styled.js.map +1 -1
  92. package/dist/components/content/Tree/tree-index.js +1 -1
  93. package/dist/components/content/Tree/types.d.ts +2 -2
  94. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  95. package/dist/components/content/Tree/use-load-data.js +22 -15
  96. package/dist/components/content/Tree/use-load-data.js.map +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 +1 -1
  119. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  120. package/dist/components/fields/Input/Input.js +1 -1
  121. package/dist/components/fields/ListBox/ListBox.js +1 -1
  122. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  123. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  124. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  125. package/dist/components/fields/Picker/Picker.js +1 -1
  126. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  127. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  128. package/dist/components/fields/RadioGroup/context.js +1 -1
  129. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  130. package/dist/components/fields/Select/Select.js +1 -1
  131. package/dist/components/fields/Slider/Gradation.js +1 -1
  132. package/dist/components/fields/Slider/HueSlider.js +1 -1
  133. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  134. package/dist/components/fields/Slider/Slider.js +1 -1
  135. package/dist/components/fields/Slider/SliderBase.js +1 -1
  136. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  137. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  138. package/dist/components/fields/Slider/elements.js +1 -1
  139. package/dist/components/fields/Slider/index.js +1 -1
  140. package/dist/components/fields/Switch/Switch.js +1 -1
  141. package/dist/components/fields/TextArea/TextArea.js +1 -1
  142. package/dist/components/fields/TextInput/TextInput.js +1 -1
  143. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  144. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  145. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  146. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  147. package/dist/components/form/Form/Field.js +1 -1
  148. package/dist/components/form/Form/Form.js +1 -1
  149. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  150. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  151. package/dist/components/form/Form/SubmitError.js +1 -1
  152. package/dist/components/form/Form/index.js +1 -1
  153. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  154. package/dist/components/form/Form/use-field/use-field.js +1 -1
  155. package/dist/components/form/Form/use-form.js +1 -1
  156. package/dist/components/form/Form/validation.js +1 -1
  157. package/dist/components/form/Label.js +1 -1
  158. package/dist/components/form/wrapper.js +1 -1
  159. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  160. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  161. package/dist/components/layout/Flex.js +1 -1
  162. package/dist/components/layout/Flow.js +1 -1
  163. package/dist/components/layout/Grid.js +1 -1
  164. package/dist/components/layout/Panel.js +1 -1
  165. package/dist/components/layout/Prefix.js +1 -1
  166. package/dist/components/layout/ResizablePanel.js +1 -1
  167. package/dist/components/layout/Space.js +1 -1
  168. package/dist/components/layout/Suffix.js +1 -1
  169. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  170. package/dist/components/navigation/Tabs/EditableTitle.js +1 -1
  171. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  172. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  173. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  174. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  175. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  176. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  177. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  178. package/dist/components/navigation/Tabs/styled.js +1 -1
  179. package/dist/components/navigation/Tabs/types.js +1 -1
  180. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  181. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  182. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  183. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  184. package/dist/components/other/Calendar/Calendar.js +1 -1
  185. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  186. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  187. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  188. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  189. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  190. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  191. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  192. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  193. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  194. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  195. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  196. package/dist/components/overlays/Dialog/context.js +1 -1
  197. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  198. package/dist/components/overlays/Modal/Modal.js +1 -1
  199. package/dist/components/overlays/Modal/OpenTransition.js +1 -1
  200. package/dist/components/overlays/Modal/Overlay.js +1 -1
  201. package/dist/components/overlays/Modal/Popover.js +1 -1
  202. package/dist/components/overlays/Modal/Tray.js +1 -1
  203. package/dist/components/overlays/Modal/Underlay.js +1 -1
  204. package/dist/components/overlays/Notifications/Notification.js +1 -1
  205. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  206. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  207. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  208. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  209. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  210. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  211. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  212. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  213. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  214. package/dist/components/overlays/Notifications/index.js +1 -1
  215. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  216. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  217. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  218. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  219. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  220. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  221. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  222. package/dist/components/overlays/Toast/index.js +1 -1
  223. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  224. package/dist/components/overlays/Toast/useToast.js +1 -1
  225. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  226. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  227. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  228. package/dist/components/overlays/Tooltip/context.js +1 -1
  229. package/dist/components/portal/Portal.js +1 -1
  230. package/dist/components/portal/PortalProvider.js +1 -1
  231. package/dist/components/portal/usePortal.js +1 -1
  232. package/dist/components/shared/InvalidIcon.js +1 -1
  233. package/dist/components/shared/ValidIcon.js +1 -1
  234. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  235. package/dist/components/status/Spin/Cube.js +1 -1
  236. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  237. package/dist/components/status/Spin/Spin.js +1 -1
  238. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  239. package/dist/data/item-themes.js +1 -1
  240. package/dist/data/themes.js +1 -1
  241. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  242. package/dist/icons/AdjustmentsIcon.js +1 -1
  243. package/dist/icons/AiIcon.js +1 -1
  244. package/dist/icons/AreaChartIcon.js +1 -1
  245. package/dist/icons/BackwardIcon.js +1 -1
  246. package/dist/icons/BarChartIcon.js +1 -1
  247. package/dist/icons/BellFilledIcon.js +1 -1
  248. package/dist/icons/BellIcon.js +1 -1
  249. package/dist/icons/BooleanIcon.js +1 -1
  250. package/dist/icons/CalendarEditIcon.js +1 -1
  251. package/dist/icons/CalendarIcon.js +1 -1
  252. package/dist/icons/CaretDownIcon.js +1 -1
  253. package/dist/icons/CaretUpIcon.js +1 -1
  254. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  255. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  256. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  257. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  258. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  259. package/dist/icons/ChartBarLineIcon.js +1 -1
  260. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  261. package/dist/icons/ChartBarStackedIcon.js +1 -1
  262. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  263. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  264. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  265. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  266. package/dist/icons/ChartBubbleIcon.js +1 -1
  267. package/dist/icons/ChartDonut2Icon.js +1 -1
  268. package/dist/icons/ChartFunnelIcon.js +1 -1
  269. package/dist/icons/ChartHeatmapIcon.js +1 -1
  270. package/dist/icons/ChartKPIIcon.js +1 -1
  271. package/dist/icons/ChartPie2Icon.js +1 -1
  272. package/dist/icons/ChartScatterIcon.js +1 -1
  273. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  274. package/dist/icons/CheckCircleIcon.js +1 -1
  275. package/dist/icons/CheckIcon.js +1 -1
  276. package/dist/icons/CircleFilledIcon.js +1 -1
  277. package/dist/icons/ClearIcon.js +1 -1
  278. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  279. package/dist/icons/CloseCircleIcon.js +1 -1
  280. package/dist/icons/CloseIcon.js +1 -1
  281. package/dist/icons/CodeIcon.js +1 -1
  282. package/dist/icons/ColumnTotalIcon.js +1 -1
  283. package/dist/icons/CopyIcon.js +1 -1
  284. package/dist/icons/CountIcon.js +1 -1
  285. package/dist/icons/CubeIcon.js +1 -1
  286. package/dist/icons/CubePauseIcon.js +1 -1
  287. package/dist/icons/CubePlayIcon.js +1 -1
  288. package/dist/icons/CurrencyDollarIcon.js +1 -1
  289. package/dist/icons/DangerIcon.js +1 -1
  290. package/dist/icons/DashboardIcon.js +1 -1
  291. package/dist/icons/DatabaseIcon.js +1 -1
  292. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  293. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  294. package/dist/icons/DirectionIcon.js +1 -1
  295. package/dist/icons/DonutIcon.js +1 -1
  296. package/dist/icons/DownIcon.js +1 -1
  297. package/dist/icons/EditIcon.js +1 -1
  298. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  299. package/dist/icons/ExclamationCircleIcon.js +1 -1
  300. package/dist/icons/ExclamationIcon.js +1 -1
  301. package/dist/icons/EyeIcon.js +1 -1
  302. package/dist/icons/EyeInvisibleIcon.js +1 -1
  303. package/dist/icons/FilterIcon.js +1 -1
  304. package/dist/icons/FolderFilledIcon.js +1 -1
  305. package/dist/icons/FolderIcon.js +1 -1
  306. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  307. package/dist/icons/FolderOpenIcon.js +1 -1
  308. package/dist/icons/ForwardIcon.js +1 -1
  309. package/dist/icons/HierarchyIcon.js +1 -1
  310. package/dist/icons/HierarchyOpenIcon.js +1 -1
  311. package/dist/icons/Icon.js +1 -1
  312. package/dist/icons/InfoCircleIcon.js +1 -1
  313. package/dist/icons/InfoIcon.js +1 -1
  314. package/dist/icons/KeyIcon.js +1 -1
  315. package/dist/icons/LeftIcon.js +1 -1
  316. package/dist/icons/LineChartIcon.js +1 -1
  317. package/dist/icons/LoadingIcon.js +1 -1
  318. package/dist/icons/LockFilledIcon.js +1 -1
  319. package/dist/icons/LockIcon.js +1 -1
  320. package/dist/icons/MoreIcon.js +1 -1
  321. package/dist/icons/NotAllowedIcon.js +1 -1
  322. package/dist/icons/Number123Icon.js +1 -1
  323. package/dist/icons/NumberIcon.js +1 -1
  324. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  325. package/dist/icons/PauseCircleIcon.js +1 -1
  326. package/dist/icons/PauseIcon.js +1 -1
  327. package/dist/icons/PercentageIcon.js +1 -1
  328. package/dist/icons/PieChartIcon.js +1 -1
  329. package/dist/icons/PlayCircleIcon.js +1 -1
  330. package/dist/icons/PlayIcon.js +1 -1
  331. package/dist/icons/PlusIcon.js +1 -1
  332. package/dist/icons/ProgressBarIcon.js +1 -1
  333. package/dist/icons/ReloadIcon.js +1 -1
  334. package/dist/icons/ReportIcon.js +1 -1
  335. package/dist/icons/ReturnIcon.js +1 -1
  336. package/dist/icons/RightIcon.js +1 -1
  337. package/dist/icons/RowTotalsIcon.js +1 -1
  338. package/dist/icons/SchemeIcon.js +1 -1
  339. package/dist/icons/SearchIcon.js +1 -1
  340. package/dist/icons/SemanticQueryIcon.js +1 -1
  341. package/dist/icons/SettingsIcon.js +1 -1
  342. package/dist/icons/ShieldFilledIcon.js +1 -1
  343. package/dist/icons/ShieldIcon.js +1 -1
  344. package/dist/icons/SlashIcon.js +1 -1
  345. package/dist/icons/SparklesIcon.js +1 -1
  346. package/dist/icons/SqlIcon.js +1 -1
  347. package/dist/icons/StatsIcon.js +1 -1
  348. package/dist/icons/StopIcon.js +1 -1
  349. package/dist/icons/StringIcon.js +1 -1
  350. package/dist/icons/SubtotalsIcon.js +1 -1
  351. package/dist/icons/SwitchIcon.js +1 -1
  352. package/dist/icons/TableIcon.js +1 -1
  353. package/dist/icons/ThumbsDownIcon.js +1 -1
  354. package/dist/icons/ThumbsUpIcon.js +1 -1
  355. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  356. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  357. package/dist/icons/ThunderboltIcon.js +1 -1
  358. package/dist/icons/TimeIcon.js +1 -1
  359. package/dist/icons/TrashIcon.js +1 -1
  360. package/dist/icons/UnlockIcon.js +1 -1
  361. package/dist/icons/UpIcon.js +1 -1
  362. package/dist/icons/UserGroupIcon.js +1 -1
  363. package/dist/icons/UserIcon.js +1 -1
  364. package/dist/icons/UserLockIcon.js +1 -1
  365. package/dist/icons/ViewIcon.js +1 -1
  366. package/dist/icons/WarningFilledIcon.js +1 -1
  367. package/dist/icons/WarningIcon.js +1 -1
  368. package/dist/icons/wrap-icon.js +1 -1
  369. package/dist/index.js +1 -1
  370. package/dist/provider.js +1 -1
  371. package/dist/providers/TrackingProvider.js +1 -1
  372. package/dist/providers/navigationAdapter.default.js +1 -1
  373. package/dist/tokens/base.js +1 -1
  374. package/dist/tokens/colors.js +1 -1
  375. package/dist/tokens/index.js +1 -1
  376. package/dist/tokens/layout.js +1 -1
  377. package/dist/tokens/shadows.js +1 -1
  378. package/dist/tokens/sizes.js +1 -1
  379. package/dist/tokens/spacing.js +1 -1
  380. package/dist/tokens/typography.js +1 -1
  381. package/dist/utils/ResizeSensor.js +1 -1
  382. package/dist/utils/is-dev-env.js +1 -1
  383. package/dist/utils/modules.js +1 -1
  384. package/dist/utils/promise.js +1 -1
  385. package/dist/utils/raf.js +1 -1
  386. package/dist/utils/random.js +1 -1
  387. package/dist/utils/range.js +1 -1
  388. package/dist/utils/react/RenderCache.js +1 -1
  389. package/dist/utils/react/Slots.js +1 -1
  390. package/dist/utils/react/chain.js +1 -1
  391. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  392. package/dist/utils/react/index.js +1 -1
  393. package/dist/utils/react/interactions.js +1 -1
  394. package/dist/utils/react/isTextOnly.js +1 -1
  395. package/dist/utils/react/mapProps.js +1 -1
  396. package/dist/utils/react/mergeProps.js +1 -1
  397. package/dist/utils/react/nullableValue.js +1 -1
  398. package/dist/utils/react/resolveIcon.js +1 -1
  399. package/dist/utils/react/sharedStore.js +1 -1
  400. package/dist/utils/react/useCombinedRefs.js +1 -1
  401. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  402. package/dist/utils/react/useEventBus.js +1 -1
  403. package/dist/utils/react/useId.js +1 -1
  404. package/dist/utils/react/useIsDarwin.js +1 -1
  405. package/dist/utils/react/useKeySymbols.js +1 -1
  406. package/dist/utils/react/useLayoutEffect.js +1 -1
  407. package/dist/utils/react/useLocalStorage.js +1 -1
  408. package/dist/utils/react/useMergeStyles.js +1 -1
  409. package/dist/utils/react/useQaProps.js +1 -1
  410. package/dist/utils/react/useViewportSize.js +1 -1
  411. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  412. package/dist/utils/selection.js +1 -1
  413. package/dist/utils/styles.js +1 -1
  414. package/dist/utils/tree.js +1 -1
  415. package/dist/utils/warnings.js +1 -1
  416. package/dist/version.js +2 -2
  417. package/docs/components/content/Tree.md +0 -9
  418. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TreeNode.js","names":["mergeProps","Checkbox"],"sources":["../../../../src/components/content/Tree/TreeNode.tsx"],"sourcesContent":["import { memo, useMemo, useRef } from 'react';\nimport { useHover, useTreeItem } from 'react-aria';\n\nimport { useEvent } from '../../../_internal/hooks';\nimport { DirectionIcon, LoadingIcon } from '../../../icons';\nimport { mergeProps } from '../../../utils/react';\nimport { Checkbox } from '../../fields/Checkbox/Checkbox';\n\nimport {\n TreeNodeCheckboxWrapper,\n TreeNodeRow,\n TreeNodeToggle,\n TreeNodeTogglePlaceholder,\n TreeRowItem,\n} from './styled';\n\nimport type { Node } from '@react-types/shared';\nimport type { Styles } from '@tenphi/tasty';\nimport type {\n CSSProperties,\n KeyboardEvent as ReactKeyboardEvent,\n MouseEvent as ReactMouseEvent,\n ReactNode,\n} from 'react';\nimport type { TreeState } from 'react-stately';\nimport type { CubeTreeNodeData } from './types';\n\nexport interface TreeNodeProps {\n node: Node<CubeTreeNodeData>;\n /** The original `CubeTreeNodeData` for this row, looked up by key. */\n data: CubeTreeNodeData;\n state: TreeState<CubeTreeNodeData>;\n\n /** Whether the tree as a whole renders checkboxes. */\n isCheckable: boolean;\n /** Whether this row is currently expanded. */\n isExpanded: boolean;\n /** Whether the row is in an indeterminate (half-checked) state. */\n isIndeterminate: boolean;\n /** Whether the row is fully checked. */\n isChecked: boolean;\n /** Whether `loadData` is currently fetching this row's children. */\n isLoading: boolean;\n /** Whether the entire tree is `blockNode`. */\n isBlockNode: boolean;\n\n /** Toggle this row's checkbox (cascades). */\n onToggleChecked: (key: string) => void;\n\n /** Styles applied to the visible row (`TreeRowItem`). */\n rowStyles?: Styles;\n}\n\nconst ROW_LEVEL_OFFSET = 0; // root nodes start at level 0\n\nfunction TreeNodeInner(props: TreeNodeProps) {\n const {\n node,\n data,\n state,\n isCheckable,\n isExpanded,\n isIndeterminate,\n isChecked,\n isLoading,\n isBlockNode,\n onToggleChecked,\n rowStyles,\n } = props;\n\n const rowRef = useRef<HTMLDivElement>(null);\n\n const { rowProps, gridCellProps, expandButtonProps, isPressed } = useTreeItem(\n { node },\n state,\n rowRef,\n );\n\n const isDisabled = state.disabledKeys.has(node.key);\n const isSelected = state.selectionManager.isSelected(node.key);\n\n /**\n * `useTreeItem` doesn't track hover. The `Item` variant we extend\n * (`default.item`) uses the `hovered` mod (compiled to\n * `[data-hovered]`), so we run `useHover` ourselves and wire its\n * `hoverProps` into the row.\n */\n const { hoverProps, isHovered } = useHover({ isDisabled });\n /**\n * React Aria uses a roving-tabindex \"virtual focus\" model for treegrid:\n * only the row matching `selectionManager.focusedKey` is tabbable, and\n * arrow-key navigation updates that key instead of moving DOM focus\n * between every row. No `data-focused` / `:focus-visible` lands on the\n * row, so we mirror the focused key as a `focused` mod on the item\n * to make it stylable.\n */\n const isFocused =\n state.selectionManager.isFocused &&\n state.selectionManager.focusedKey === node.key;\n /**\n * `useTreeItem` reports `aria-expanded` only on rows that *can* expand\n * (i.e. have child nodes in the collection). For lazy rows with no\n * children loaded yet but `isLeaf !== true`, we still want to render\n * a toggle so the consumer can fire `loadData`.\n */\n const isLeaf =\n data.isLeaf === true || (data.isLeaf !== false && !node.hasChildNodes);\n const isRowCheckable = isCheckable && data.isCheckable !== false;\n\n const handleCheckboxClick = useEvent(\n (e: ReactMouseEvent | ReactKeyboardEvent) => {\n e.stopPropagation();\n },\n );\n\n const handleCheckboxChange = useEvent(() => {\n onToggleChecked(String(node.key));\n });\n\n const rowMods = useMemo(\n () => ({\n checked: isChecked,\n indeterminate: isIndeterminate,\n expanded: isExpanded,\n disabled: isDisabled,\n loading: isLoading,\n leaf: isLeaf,\n 'block-node': isBlockNode,\n 'has-checkbox': isRowCheckable,\n }),\n [\n isChecked,\n isIndeterminate,\n isExpanded,\n isDisabled,\n isLoading,\n isLeaf,\n isBlockNode,\n isRowCheckable,\n ],\n );\n\n const itemMods = useMemo(\n () => ({\n checked: isChecked,\n indeterminate: isIndeterminate,\n expanded: isExpanded,\n loading: isLoading,\n leaf: isLeaf,\n focused: isFocused,\n hovered: isHovered,\n pressed: isPressed,\n 'has-checkbox': isRowCheckable,\n }),\n [\n isChecked,\n isIndeterminate,\n isExpanded,\n isLoading,\n isLeaf,\n isFocused,\n isHovered,\n isPressed,\n isRowCheckable,\n ],\n );\n\n /**\n * Indent each row by its depth. `node.level` is 0-based at the root.\n * Pushed down via a CSS custom property so the styled element can\n * compute padding without re-extracting styles per row.\n */\n const levelStyle = useMemo<CSSProperties>(\n () => ({\n ['--tree-level' as keyof CSSProperties]: String(\n (node.level ?? ROW_LEVEL_OFFSET) - ROW_LEVEL_OFFSET,\n ),\n }),\n [node.level],\n );\n\n /**\n * `aria-checked` for treegrid rows that act as multi-state checkboxes.\n * Only set when the tree is checkable, so we don't pollute the row\n * with checkbox semantics in select-only mode.\n */\n const ariaChecked: ReactNode = isRowCheckable\n ? isIndeterminate\n ? 'mixed'\n : isChecked\n ? 'true'\n : 'false'\n : undefined;\n\n const finalRowProps = mergeProps(rowProps, hoverProps, {\n 'aria-checked': ariaChecked as string | boolean | undefined,\n });\n\n /**\n * Always render a toggle slot — even for leaf rows — so siblings\n * at the same indent level visually align. Leaves get a\n * non-interactive placeholder (a plain div) so user clicks can't\n * trigger anything.\n */\n const toggleNode = isLeaf ? (\n <TreeNodeTogglePlaceholder aria-hidden data-element=\"Toggle\" />\n ) : (\n <TreeNodeToggle {...expandButtonProps} tabIndex={-1} data-element=\"Toggle\">\n {isLoading ? (\n <LoadingIcon />\n ) : (\n <DirectionIcon to={isExpanded ? 'bottom' : 'right'} />\n )}\n </TreeNodeToggle>\n );\n\n const checkboxNode = isRowCheckable ? (\n <TreeNodeCheckboxWrapper\n data-element=\"Checkbox\"\n role=\"presentation\"\n onClick={handleCheckboxClick}\n onKeyDown={handleCheckboxClick}\n >\n <Checkbox\n isSelected={isChecked}\n isIndeterminate={isIndeterminate}\n isDisabled={isDisabled || data.isCheckboxDisabled}\n aria-label={\n typeof data.title === 'string' ? data.title : String(node.key)\n }\n // @ts-expect-error AriaCheckboxProps loses `onChange` where InputDOMProps overlaps (react-types).\n onChange={handleCheckboxChange}\n />\n </TreeNodeCheckboxWrapper>\n ) : null;\n\n return (\n <TreeNodeRow\n {...finalRowProps}\n ref={rowRef}\n mods={rowMods}\n style={levelStyle}\n data-element=\"Row\"\n data-qa-key={String(node.key)}\n >\n <TreeRowItem\n {...gridCellProps}\n isSelected={isSelected}\n isDisabled={isDisabled}\n mods={itemMods}\n icon={toggleNode}\n prefix={checkboxNode}\n styles={rowStyles}\n >\n {data.title}\n </TreeRowItem>\n </TreeNodeRow>\n );\n}\n\nexport const TreeNode = memo(TreeNodeInner);\n"],"mappings":";;;;;;;;;;;;AAqDA,MAAM,mBAAmB;AAEzB,SAAS,cAAc,OAAsB;CAC3C,MAAM,EACJ,MACA,MACA,OACA,aACA,YACA,iBACA,WACA,WACA,aACA,iBACA,cACE;CAEJ,MAAM,SAAS,OAAuB,KAAK;CAE3C,MAAM,EAAE,UAAU,eAAe,mBAAmB,cAAc,YAChE,EAAE,MAAM,EACR,OACA,OACD;CAED,MAAM,aAAa,MAAM,aAAa,IAAI,KAAK,IAAI;CACnD,MAAM,aAAa,MAAM,iBAAiB,WAAW,KAAK,IAAI;;;;;;;CAQ9D,MAAM,EAAE,YAAY,cAAc,SAAS,EAAE,YAAY,CAAC;;;;;;;;;CAS1D,MAAM,YACJ,MAAM,iBAAiB,aACvB,MAAM,iBAAiB,eAAe,KAAK;;;;;;;CAO7C,MAAM,SACJ,KAAK,WAAW,QAAS,KAAK,WAAW,SAAS,CAAC,KAAK;CAC1D,MAAM,iBAAiB,eAAe,KAAK,gBAAgB;CAE3D,MAAM,sBAAsB,UACzB,MAA4C;AAC3C,IAAE,iBAAiB;GAEtB;CAED,MAAM,uBAAuB,eAAe;AAC1C,kBAAgB,OAAO,KAAK,IAAI,CAAC;GACjC;CAEF,MAAM,UAAU,eACP;EACL,SAAS;EACT,eAAe;EACf,UAAU;EACV,UAAU;EACV,SAAS;EACT,MAAM;EACN,cAAc;EACd,gBAAgB;EACjB,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;CAED,MAAM,WAAW,eACR;EACL,SAAS;EACT,eAAe;EACf,UAAU;EACV,SAAS;EACT,MAAM;EACN,SAAS;EACT,SAAS;EACT,SAAS;EACT,gBAAgB;EACjB,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;;;;;;CAOD,MAAM,aAAa,eACV,GACJ,iBAAwC,QACtC,KAAK,SAAS,oBAAoB,iBACpC,EACF,GACD,CAAC,KAAK,MAAM,CACb;;;;;;CAOD,MAAM,cAAyB,iBAC3B,kBACE,UACA,YACE,SACA,UACJ;CAEJ,MAAM,gBAAgBA,aAAW,UAAU,YAAY,EACrD,gBAAgB,aACjB,CAAC;;;;;;;CAQF,MAAM,aAAa,SACjB,oBAAC;EAA0B;EAAY,gBAAa;GAAW,GAE/D,oBAAC;EAAe,GAAI;EAAmB,UAAU;EAAI,gBAAa;YAC/D,YACC,oBAAC,gBAAc,GAEf,oBAAC,iBAAc,IAAI,aAAa,WAAW,UAAW;GAEzC;CAGnB,MAAM,eAAe,iBACnB,oBAAC;EACC,gBAAa;EACb,MAAK;EACL,SAAS;EACT,WAAW;YAEX,oBAACC;GACC,YAAY;GACK;GACjB,YAAY,cAAc,KAAK;GAC/B,cACE,OAAO,KAAK,UAAU,WAAW,KAAK,QAAQ,OAAO,KAAK,IAAI;GAGhE,UAAU;IACV;GACsB,GACxB;AAEJ,QACE,oBAAC;EACC,GAAI;EACJ,KAAK;EACL,MAAM;EACN,OAAO;EACP,gBAAa;EACb,eAAa,OAAO,KAAK,IAAI;YAE7B,oBAAC;GACC,GAAI;GACQ;GACA;GACZ,MAAM;GACN,MAAM;GACN,QAAQ;GACR,QAAQ;aAEP,KAAK;IACM;GACF;;AAIlB,MAAa,WAAW,KAAK,cAAc"}
1
+ {"version":3,"file":"TreeNode.js","names":["mergeProps","Checkbox"],"sources":["../../../../src/components/content/Tree/TreeNode.tsx"],"sourcesContent":["import { memo, useMemo, useRef } from 'react';\nimport { useHover, useTreeItem } from 'react-aria';\n\nimport { useEvent } from '../../../_internal/hooks';\nimport { DirectionIcon, LoadingIcon } from '../../../icons';\nimport { mergeProps } from '../../../utils/react';\nimport { Checkbox } from '../../fields/Checkbox/Checkbox';\n\nimport {\n TreeNodeCheckboxWrapper,\n TreeNodeRow,\n TreeNodeToggle,\n TreeNodeTogglePlaceholder,\n TreeRowItem,\n} from './styled';\n\nimport type { Node } from '@react-types/shared';\nimport type { Styles } from '@tenphi/tasty';\nimport type { CSSProperties, SyntheticEvent } from 'react';\nimport type { TreeState } from 'react-stately';\nimport type { CubeTreeNodeData } from './types';\n\nconst stopPropagation = (e: SyntheticEvent) => {\n e.stopPropagation();\n};\n\nexport interface TreeNodeProps {\n node: Node<CubeTreeNodeData>;\n /** The original `CubeTreeNodeData` for this row, looked up by key. */\n data: CubeTreeNodeData;\n state: TreeState<CubeTreeNodeData>;\n\n /** Whether the tree as a whole renders checkboxes. */\n isCheckable: boolean;\n /** Whether this row is currently expanded. */\n isExpanded: boolean;\n /** Whether the row is in an indeterminate (half-checked) state. */\n isIndeterminate: boolean;\n /** Whether the row is fully checked. */\n isChecked: boolean;\n /** Whether `loadData` is currently fetching this row's children. */\n isLoading: boolean;\n\n /** Toggle this row's checkbox (cascades). */\n onToggleChecked: (key: string) => void;\n\n /** Styles applied to the visible row (`TreeRowItem`). */\n rowStyles?: Styles;\n}\n\nfunction TreeNodeInner(props: TreeNodeProps) {\n const {\n node,\n data,\n state,\n isCheckable,\n isExpanded,\n isIndeterminate,\n isChecked,\n isLoading,\n onToggleChecked,\n rowStyles,\n } = props;\n\n const rowRef = useRef<HTMLDivElement>(null);\n\n const { rowProps, gridCellProps, expandButtonProps, isPressed } = useTreeItem(\n { node },\n state,\n rowRef,\n );\n\n const isDisabled = state.disabledKeys.has(node.key);\n const isSelected = state.selectionManager.isSelected(node.key);\n\n // `useTreeItem` doesn't track hover; we need it for the `hovered` mod.\n const { hoverProps, isHovered } = useHover({ isDisabled });\n // React Aria's treegrid uses roving tabindex, so no `data-focused`\n // attribute lands on the row mirror it as a mod manually.\n const isFocused =\n state.selectionManager.isFocused &&\n state.selectionManager.focusedKey === node.key;\n // For lazy rows with no children yet, still render a toggle unless\n // explicitly marked as leaf.\n const isLeaf =\n data.isLeaf === true || (data.isLeaf !== false && !node.hasChildNodes);\n const isRowCheckable = isCheckable && data.isCheckable !== false;\n\n const handleCheckboxChange = useEvent(() => {\n onToggleChecked(String(node.key));\n });\n\n const sharedMods = useMemo(\n () => ({\n checked: isChecked,\n indeterminate: isIndeterminate,\n expanded: isExpanded,\n loading: isLoading,\n leaf: isLeaf,\n 'has-checkbox': isRowCheckable,\n }),\n [isChecked, isIndeterminate, isExpanded, isLoading, isLeaf, isRowCheckable],\n );\n\n const rowMods = useMemo(\n () => ({ ...sharedMods, disabled: isDisabled }),\n [sharedMods, isDisabled],\n );\n\n const itemMods = useMemo(\n () => ({\n ...sharedMods,\n focused: isFocused,\n hovered: isHovered,\n pressed: isPressed,\n }),\n [sharedMods, isFocused, isHovered, isPressed],\n );\n\n const levelStyle = useMemo<CSSProperties>(\n () => ({\n ['--tree-level' as keyof CSSProperties]: String(node.level ?? 0),\n }),\n [node.level],\n );\n\n // Only emit `aria-checked` when the tree is in checkable mode.\n const ariaChecked: 'mixed' | 'true' | 'false' | undefined = isRowCheckable\n ? isIndeterminate\n ? 'mixed'\n : isChecked\n ? 'true'\n : 'false'\n : undefined;\n\n const finalRowProps = mergeProps(rowProps, hoverProps, {\n 'aria-checked': ariaChecked,\n });\n\n // Leaf rows get a placeholder so sibling indents align.\n const toggleNode = isLeaf ? (\n <TreeNodeTogglePlaceholder aria-hidden data-element=\"Toggle\" />\n ) : (\n <TreeNodeToggle {...expandButtonProps} tabIndex={-1} data-element=\"Toggle\">\n {isLoading ? (\n <LoadingIcon />\n ) : (\n <DirectionIcon to={isExpanded ? 'bottom' : 'right'} />\n )}\n </TreeNodeToggle>\n );\n\n const checkboxNode = isRowCheckable ? (\n <TreeNodeCheckboxWrapper\n data-element=\"Checkbox\"\n role=\"presentation\"\n onClick={stopPropagation}\n onKeyDown={stopPropagation}\n >\n <Checkbox\n isSelected={isChecked}\n isIndeterminate={isIndeterminate}\n isDisabled={isDisabled || data.isCheckboxDisabled}\n aria-label={\n typeof data.title === 'string' ? data.title : String(node.key)\n }\n // @ts-expect-error AriaCheckboxProps loses `onChange` where InputDOMProps overlaps (react-types).\n onChange={handleCheckboxChange}\n />\n </TreeNodeCheckboxWrapper>\n ) : null;\n\n return (\n <TreeNodeRow\n {...finalRowProps}\n ref={rowRef}\n mods={rowMods}\n style={levelStyle}\n data-element=\"Row\"\n data-qa-key={String(node.key)}\n >\n <TreeRowItem\n {...gridCellProps}\n isSelected={isSelected}\n isDisabled={isDisabled}\n mods={itemMods}\n icon={toggleNode}\n prefix={checkboxNode}\n styles={rowStyles}\n >\n {data.title}\n </TreeRowItem>\n </TreeNodeRow>\n );\n}\n\nexport const TreeNode = memo(TreeNodeInner);\n"],"mappings":";;;;;;;;;;;;AAsBA,MAAM,mBAAmB,MAAsB;AAC7C,GAAE,iBAAiB;;AA2BrB,SAAS,cAAc,OAAsB;CAC3C,MAAM,EACJ,MACA,MACA,OACA,aACA,YACA,iBACA,WACA,WACA,iBACA,cACE;CAEJ,MAAM,SAAS,OAAuB,KAAK;CAE3C,MAAM,EAAE,UAAU,eAAe,mBAAmB,cAAc,YAChE,EAAE,MAAM,EACR,OACA,OACD;CAED,MAAM,aAAa,MAAM,aAAa,IAAI,KAAK,IAAI;CACnD,MAAM,aAAa,MAAM,iBAAiB,WAAW,KAAK,IAAI;CAG9D,MAAM,EAAE,YAAY,cAAc,SAAS,EAAE,YAAY,CAAC;CAG1D,MAAM,YACJ,MAAM,iBAAiB,aACvB,MAAM,iBAAiB,eAAe,KAAK;CAG7C,MAAM,SACJ,KAAK,WAAW,QAAS,KAAK,WAAW,SAAS,CAAC,KAAK;CAC1D,MAAM,iBAAiB,eAAe,KAAK,gBAAgB;CAE3D,MAAM,uBAAuB,eAAe;AAC1C,kBAAgB,OAAO,KAAK,IAAI,CAAC;GACjC;CAEF,MAAM,aAAa,eACV;EACL,SAAS;EACT,eAAe;EACf,UAAU;EACV,SAAS;EACT,MAAM;EACN,gBAAgB;EACjB,GACD;EAAC;EAAW;EAAiB;EAAY;EAAW;EAAQ;EAAe,CAC5E;CAED,MAAM,UAAU,eACP;EAAE,GAAG;EAAY,UAAU;EAAY,GAC9C,CAAC,YAAY,WAAW,CACzB;CAED,MAAM,WAAW,eACR;EACL,GAAG;EACH,SAAS;EACT,SAAS;EACT,SAAS;EACV,GACD;EAAC;EAAY;EAAW;EAAW;EAAU,CAC9C;CAED,MAAM,aAAa,eACV,GACJ,iBAAwC,OAAO,KAAK,SAAS,EAAE,EACjE,GACD,CAAC,KAAK,MAAM,CACb;CAGD,MAAM,cAAsD,iBACxD,kBACE,UACA,YACE,SACA,UACJ;CAEJ,MAAM,gBAAgBA,aAAW,UAAU,YAAY,EACrD,gBAAgB,aACjB,CAAC;CAGF,MAAM,aAAa,SACjB,oBAAC;EAA0B;EAAY,gBAAa;GAAW,GAE/D,oBAAC;EAAe,GAAI;EAAmB,UAAU;EAAI,gBAAa;YAC/D,YACC,oBAAC,gBAAc,GAEf,oBAAC,iBAAc,IAAI,aAAa,WAAW,UAAW;GAEzC;CAGnB,MAAM,eAAe,iBACnB,oBAAC;EACC,gBAAa;EACb,MAAK;EACL,SAAS;EACT,WAAW;YAEX,oBAACC;GACC,YAAY;GACK;GACjB,YAAY,cAAc,KAAK;GAC/B,cACE,OAAO,KAAK,UAAU,WAAW,KAAK,QAAQ,OAAO,KAAK,IAAI;GAGhE,UAAU;IACV;GACsB,GACxB;AAEJ,QACE,oBAAC;EACC,GAAI;EACJ,KAAK;EACL,MAAM;EACN,OAAO;EACP,gBAAa;EACb,eAAa,OAAO,KAAK,IAAI;YAE7B,oBAAC;GACC,GAAI;GACQ;GACA;GACZ,MAAM;GACN,MAAM;GACN,QAAQ;GACR,QAAQ;aAEP,KAAK;IACM;GACF;;AAIlB,MAAa,WAAW,KAAK,cAAc"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { _Item } from "../Item/Item.js";
3
3
  import { Action } from "../../actions/Action/Action.js";
4
4
  import { tasty } from "@tenphi/tasty";
@@ -12,8 +12,6 @@ import { tasty } from "@tenphi/tasty";
12
12
  * Tree-wide modifiers (set on `TreeElement` itself):
13
13
  * - `has-height` — paired with `--tree-height` on inline `style`
14
14
  * when the consumer passes a numeric `height` prop.
15
- * - `block-node` — propagated from the Tree-level `blockNode` prop
16
- * to every row through the root state context.
17
15
  */
18
16
  const TreeElement = tasty({
19
17
  qa: "Tree",
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","names":["Item"],"sources":["../../../../src/components/content/Tree/styled.ts"],"sourcesContent":["import { Styles, tasty } from '@tenphi/tasty';\n\nimport { Action } from '../../actions/Action/Action';\nimport { Item } from '../Item';\n\n/**\n * Tree root.\n *\n * Renders as `role=\"treegrid\"` (set on `gridProps` from `useTree`).\n *\n * Tree-wide modifiers (set on `TreeElement` itself):\n * - `has-height` — paired with `--tree-height` on inline `style`\n * when the consumer passes a numeric `height` prop.\n * - `block-node` — propagated from the Tree-level `blockNode` prop\n * to every row through the root state context.\n */\nexport const TreeElement = tasty({\n qa: 'Tree',\n styles: {\n display: 'flex',\n flow: 'column',\n width: '100%',\n height: { '': 'auto', 'has-height': 'fixed $tree-height' },\n flexGrow: { '': 1, 'has-height': 0 },\n flexShrink: { '': 1, 'has-height': 0 },\n flexBasis: { '': 0, 'has-height': 'auto' },\n minHeight: 0,\n overflow: 'auto',\n scrollbar: 'thin',\n fill: '#clear',\n color: '#dark',\n transition: 'theme',\n outline: 0,\n gap: '1bw',\n padding: '.5x',\n },\n});\n\n/**\n * Per-row wrapper carrying `role=\"row\"`, `rowProps` from\n * `useTreeItem`, and the `--tree-level` CSS custom property used by\n * `TreeRowItem` to compute its left padding.\n *\n * Has no visual styles of its own — the row's appearance lives on\n * the inner `TreeRowItem` (which extends `Item`).\n */\nexport const TreeNodeRow = tasty({\n qa: 'TreeRow',\n styles: {\n display: 'block',\n width: '100%',\n outline: 0,\n },\n});\n\n/**\n * The visible row: an `Item` extension that owns layout (full-width,\n * tree indent) only. Color treatment is delegated to the\n * `default.item` variant (see `DEFAULT_ITEM_STYLES` in\n * `data/item-themes.ts`) so the Tree row matches the canonical Item\n * look out of the box. `hovered` / `focused` / `pressed` mods are\n * propagated from `TreeNode` because react-aria's treegrid uses a\n * roving-tabindex \"virtual focus\" model and never sets those data\n * attributes itself.\n */\nexport const TreeRowItem = tasty(Item, {\n qa: 'TreeItem',\n type: 'item',\n size: 'small',\n as: 'div',\n styles: {\n /**\n * `Item` is `inline-grid` by default, which leaves baseline\n * descender space below the row inside the block-level\n * `TreeNodeRow` and visually inflates the gap between rows\n * past the intended `1bw`. Force block-level grid here.\n */\n display: 'grid',\n width: '100%',\n /**\n * Per-level indent. `$tree-indent` is a local token that reads\n * `--tree-level` (set inline on the parent `TreeNodeRow`) with a\n * `0` fallback. Using `padding` shorthand (instead of\n * `paddingInlineStart`) so it overrides `Item`'s default\n * `padding: 0` reliably — a longhand override on a shorthand\n * loses to it in the cascade when both are emitted from the same\n * declaration block.\n */\n padding: 'left ($tree-indent * 1x)',\n '$tree-indent': '($tree-level, 0)',\n cursor: {\n '': 'pointer',\n disabled: 'not-allowed',\n },\n },\n});\n\n/**\n * Wraps the checkbox sitting in `Item`'s `prefix` slot. `Item`'s\n * built-in Prefix padding collapses to `0` whenever there's an icon\n * (which is always true for tree rows because the toggle/placeholder\n * occupies the icon slot). We re-introduce a small inline gap on\n * both sides so the checkbox isn't flush against the chevron and the\n * title.\n */\nexport const TreeNodeCheckboxWrapper = tasty({\n qa: 'TreeNodeCheckboxWrapper',\n styles: {\n display: 'grid',\n placeItems: 'center',\n placeContent: 'center',\n padding: '0 1x',\n },\n});\n\nconst TOGGLE_BASE_STYLES: Styles = {\n display: 'grid',\n placeItems: 'center',\n placeContent: 'center',\n width: '3x',\n height: '3x',\n radius: true,\n transition: 'theme',\n};\n\n/**\n * Chevron toggle button placed in `Item`'s `icon` slot. Spreads\n * `expandButtonProps` from `useTreeItem` (an AriaButtonProps) and\n * stops the press from bubbling to the row's selection handler via\n * React Aria's PressResponder.\n */\nexport const TreeNodeToggle = tasty(Action, {\n qa: 'TreeNodeToggle',\n styles: {\n ...TOGGLE_BASE_STYLES,\n color: { '': '#dark-02', ':hover': '#dark' },\n fill: { '': '#clear', ':hover': '#dark.04' },\n },\n});\n\n/**\n * Non-interactive placeholder that occupies the same footprint as\n * `TreeNodeToggle` so leaf rows visually align with siblings that\n * have a chevron.\n */\nexport const TreeNodeTogglePlaceholder = tasty({\n styles: TOGGLE_BASE_STYLES,\n});\n"],"mappings":";;;;;;;;;;;;;;;;;AAgBA,MAAa,cAAc,MAAM;CAC/B,IAAI;CACJ,QAAQ;EACN,SAAS;EACT,MAAM;EACN,OAAO;EACP,QAAQ;GAAE,IAAI;GAAQ,cAAc;GAAsB;EAC1D,UAAU;GAAE,IAAI;GAAG,cAAc;GAAG;EACpC,YAAY;GAAE,IAAI;GAAG,cAAc;GAAG;EACtC,WAAW;GAAE,IAAI;GAAG,cAAc;GAAQ;EAC1C,WAAW;EACX,UAAU;EACV,WAAW;EACX,MAAM;EACN,OAAO;EACP,YAAY;EACZ,SAAS;EACT,KAAK;EACL,SAAS;EACV;CACF,CAAC;;;;;;;;;AAUF,MAAa,cAAc,MAAM;CAC/B,IAAI;CACJ,QAAQ;EACN,SAAS;EACT,OAAO;EACP,SAAS;EACV;CACF,CAAC;;;;;;;;;;;AAYF,MAAa,cAAc,MAAMA,OAAM;CACrC,IAAI;CACJ,MAAM;CACN,MAAM;CACN,IAAI;CACJ,QAAQ;EAON,SAAS;EACT,OAAO;EAUP,SAAS;EACT,gBAAgB;EAChB,QAAQ;GACN,IAAI;GACJ,UAAU;GACX;EACF;CACF,CAAC;;;;;;;;;AAUF,MAAa,0BAA0B,MAAM;CAC3C,IAAI;CACJ,QAAQ;EACN,SAAS;EACT,YAAY;EACZ,cAAc;EACd,SAAS;EACV;CACF,CAAC;AAEF,MAAM,qBAA6B;CACjC,SAAS;CACT,YAAY;CACZ,cAAc;CACd,OAAO;CACP,QAAQ;CACR,QAAQ;CACR,YAAY;CACb;;;;;;;AAQD,MAAa,iBAAiB,MAAM,QAAQ;CAC1C,IAAI;CACJ,QAAQ;EACN,GAAG;EACH,OAAO;GAAE,IAAI;GAAY,UAAU;GAAS;EAC5C,MAAM;GAAE,IAAI;GAAU,UAAU;GAAY;EAC7C;CACF,CAAC;;;;;;AAOF,MAAa,4BAA4B,MAAM,EAC7C,QAAQ,oBACT,CAAC"}
1
+ {"version":3,"file":"styled.js","names":["Item"],"sources":["../../../../src/components/content/Tree/styled.ts"],"sourcesContent":["import { Styles, tasty } from '@tenphi/tasty';\n\nimport { Action } from '../../actions/Action/Action';\nimport { Item } from '../Item';\n\n/**\n * Tree root.\n *\n * Renders as `role=\"treegrid\"` (set on `gridProps` from `useTree`).\n *\n * Tree-wide modifiers (set on `TreeElement` itself):\n * - `has-height` — paired with `--tree-height` on inline `style`\n * when the consumer passes a numeric `height` prop.\n */\nexport const TreeElement = tasty({\n qa: 'Tree',\n styles: {\n display: 'flex',\n flow: 'column',\n width: '100%',\n height: { '': 'auto', 'has-height': 'fixed $tree-height' },\n flexGrow: { '': 1, 'has-height': 0 },\n flexShrink: { '': 1, 'has-height': 0 },\n flexBasis: { '': 0, 'has-height': 'auto' },\n minHeight: 0,\n overflow: 'auto',\n scrollbar: 'thin',\n fill: '#clear',\n color: '#dark',\n transition: 'theme',\n outline: 0,\n gap: '1bw',\n padding: '.5x',\n },\n});\n\n/**\n * Per-row wrapper carrying `role=\"row\"`, `rowProps` from\n * `useTreeItem`, and the `--tree-level` CSS custom property used by\n * `TreeRowItem` to compute its left padding.\n *\n * Has no visual styles of its own — the row's appearance lives on\n * the inner `TreeRowItem` (which extends `Item`).\n */\nexport const TreeNodeRow = tasty({\n qa: 'TreeRow',\n styles: {\n display: 'block',\n width: '100%',\n outline: 0,\n },\n});\n\n/**\n * The visible row: an `Item` extension that owns layout (full-width,\n * tree indent) only. Color treatment is delegated to the\n * `default.item` variant (see `DEFAULT_ITEM_STYLES` in\n * `data/item-themes.ts`) so the Tree row matches the canonical Item\n * look out of the box. `hovered` / `focused` / `pressed` mods are\n * propagated from `TreeNode` because react-aria's treegrid uses a\n * roving-tabindex \"virtual focus\" model and never sets those data\n * attributes itself.\n */\nexport const TreeRowItem = tasty(Item, {\n qa: 'TreeItem',\n type: 'item',\n size: 'small',\n as: 'div',\n styles: {\n /**\n * `Item` is `inline-grid` by default, which leaves baseline\n * descender space below the row inside the block-level\n * `TreeNodeRow` and visually inflates the gap between rows\n * past the intended `1bw`. Force block-level grid here.\n */\n display: 'grid',\n width: '100%',\n /**\n * Per-level indent. `$tree-indent` is a local token that reads\n * `--tree-level` (set inline on the parent `TreeNodeRow`) with a\n * `0` fallback. Using `padding` shorthand (instead of\n * `paddingInlineStart`) so it overrides `Item`'s default\n * `padding: 0` reliably — a longhand override on a shorthand\n * loses to it in the cascade when both are emitted from the same\n * declaration block.\n */\n padding: 'left ($tree-indent * 1x)',\n '$tree-indent': '($tree-level, 0)',\n cursor: {\n '': 'pointer',\n disabled: 'not-allowed',\n },\n },\n});\n\n/**\n * Wraps the checkbox sitting in `Item`'s `prefix` slot. `Item`'s\n * built-in Prefix padding collapses to `0` whenever there's an icon\n * (which is always true for tree rows because the toggle/placeholder\n * occupies the icon slot). We re-introduce a small inline gap on\n * both sides so the checkbox isn't flush against the chevron and the\n * title.\n */\nexport const TreeNodeCheckboxWrapper = tasty({\n qa: 'TreeNodeCheckboxWrapper',\n styles: {\n display: 'grid',\n placeItems: 'center',\n placeContent: 'center',\n padding: '0 1x',\n },\n});\n\nconst TOGGLE_BASE_STYLES: Styles = {\n display: 'grid',\n placeItems: 'center',\n placeContent: 'center',\n width: '3x',\n height: '3x',\n radius: true,\n transition: 'theme',\n};\n\n/**\n * Chevron toggle button placed in `Item`'s `icon` slot. Spreads\n * `expandButtonProps` from `useTreeItem` (an AriaButtonProps) and\n * stops the press from bubbling to the row's selection handler via\n * React Aria's PressResponder.\n */\nexport const TreeNodeToggle = tasty(Action, {\n qa: 'TreeNodeToggle',\n styles: {\n ...TOGGLE_BASE_STYLES,\n color: { '': '#dark-02', ':hover': '#dark' },\n fill: { '': '#clear', ':hover': '#dark.04' },\n },\n});\n\n/**\n * Non-interactive placeholder that occupies the same footprint as\n * `TreeNodeToggle` so leaf rows visually align with siblings that\n * have a chevron.\n */\nexport const TreeNodeTogglePlaceholder = tasty({\n styles: TOGGLE_BASE_STYLES,\n});\n"],"mappings":";;;;;;;;;;;;;;;AAcA,MAAa,cAAc,MAAM;CAC/B,IAAI;CACJ,QAAQ;EACN,SAAS;EACT,MAAM;EACN,OAAO;EACP,QAAQ;GAAE,IAAI;GAAQ,cAAc;GAAsB;EAC1D,UAAU;GAAE,IAAI;GAAG,cAAc;GAAG;EACpC,YAAY;GAAE,IAAI;GAAG,cAAc;GAAG;EACtC,WAAW;GAAE,IAAI;GAAG,cAAc;GAAQ;EAC1C,WAAW;EACX,UAAU;EACV,WAAW;EACX,MAAM;EACN,OAAO;EACP,YAAY;EACZ,SAAS;EACT,KAAK;EACL,SAAS;EACV;CACF,CAAC;;;;;;;;;AAUF,MAAa,cAAc,MAAM;CAC/B,IAAI;CACJ,QAAQ;EACN,SAAS;EACT,OAAO;EACP,SAAS;EACV;CACF,CAAC;;;;;;;;;;;AAYF,MAAa,cAAc,MAAMA,OAAM;CACrC,IAAI;CACJ,MAAM;CACN,MAAM;CACN,IAAI;CACJ,QAAQ;EAON,SAAS;EACT,OAAO;EAUP,SAAS;EACT,gBAAgB;EAChB,QAAQ;GACN,IAAI;GACJ,UAAU;GACX;EACF;CACF,CAAC;;;;;;;;;AAUF,MAAa,0BAA0B,MAAM;CAC3C,IAAI;CACJ,QAAQ;EACN,SAAS;EACT,YAAY;EACZ,cAAc;EACd,SAAS;EACV;CACF,CAAC;AAEF,MAAM,qBAA6B;CACjC,SAAS;CACT,YAAY;CACZ,cAAc;CACd,OAAO;CACP,QAAQ;CACR,QAAQ;CACR,YAAY;CACb;;;;;;;AAQD,MAAa,iBAAiB,MAAM,QAAQ;CAC1C,IAAI;CACJ,QAAQ;EACN,GAAG;EACH,OAAO;GAAE,IAAI;GAAY,UAAU;GAAS;EAC5C,MAAM;GAAE,IAAI;GAAU,UAAU;GAAY;EAC7C;CACF,CAAC;;;;;;AAOF,MAAa,4BAA4B,MAAM,EAC7C,QAAQ,oBACT,CAAC"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  //#region src/components/content/Tree/tree-index.ts
3
3
  function buildTreeIndex(treeData) {
4
4
  const byKey = /* @__PURE__ */ new Map();
@@ -80,8 +80,6 @@ interface CubeTreeProps extends BaseProps, OuterStyleProps {
80
80
  isSelectable?: boolean;
81
81
  /** Selection cardinality. Defaults to `'single'`. */
82
82
  selectionMode?: TreeSelectionMode;
83
- /** Stretch each row to the full width of the container. */
84
- blockNode?: boolean;
85
83
  /** Disable the entire tree. */
86
84
  isDisabled?: boolean;
87
85
  /** Default expanded keys (uncontrolled). */
@@ -137,6 +135,8 @@ interface CubeTreeProps extends BaseProps, OuterStyleProps {
137
135
  onSelect?: (selectedKeys: Key$1[], info: TreeOnSelectInfo) => void;
138
136
  /** Override styles for `[data-element="Row"]` (per-row root). */
139
137
  rowStyles?: Styles;
138
+ /** Accessible label for the tree. Defaults to `"Tree"`. */
139
+ ariaLabel?: string;
140
140
  /** QA selector. */
141
141
  qa?: string;
142
142
  }
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { useMemo, useState } from "react";
4
4
 
@@ -1,5 +1,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
2
- import { useCallback, useRef, useState } from "react";
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
+ import { useEvent } from "../../../_internal/hooks/use-event.js";
3
+ import { useRef, useState } from "react";
3
4
 
4
5
  //#region src/components/content/Tree/use-load-data.ts
5
6
  /**
@@ -24,7 +25,7 @@ function useLoadData(opts) {
24
25
  const inFlightRef = useRef(/* @__PURE__ */ new Set());
25
26
  return {
26
27
  loadingKeys,
27
- onExpandedChanged: useCallback((expandedKeys) => {
28
+ onExpandedChanged: useEvent((expandedKeys) => {
28
29
  const next = /* @__PURE__ */ new Set();
29
30
  for (const k of expandedKeys) next.add(String(k));
30
31
  const prev = previousExpandedRef.current;
@@ -32,7 +33,6 @@ function useLoadData(opts) {
32
33
  for (const k of next) if (!prev.has(k)) newlyExpanded.push(k);
33
34
  previousExpandedRef.current = next;
34
35
  if (!loadData || newlyExpanded.length === 0) return;
35
- let added = false;
36
36
  const toLoad = [];
37
37
  for (const key of newlyExpanded) {
38
38
  const node = nodesByKey.get(key);
@@ -42,24 +42,31 @@ function useLoadData(opts) {
42
42
  if (inFlightRef.current.has(key)) continue;
43
43
  inFlightRef.current.add(key);
44
44
  toLoad.push(key);
45
- added = true;
46
45
  }
47
- if (!added) return;
46
+ if (toLoad.length === 0) return;
48
47
  setLoadingKeys((current) => {
49
48
  const updated = new Set(current);
50
49
  for (const k of toLoad) updated.add(k);
51
50
  return updated;
52
51
  });
53
- for (const key of toLoad) Promise.resolve(loadData({ key })).catch(() => {}).finally(() => {
54
- inFlightRef.current.delete(key);
55
- setLoadingKeys((current) => {
56
- if (!current.has(key)) return current;
57
- const updated = new Set(current);
58
- updated.delete(key);
59
- return updated;
52
+ for (const key of toLoad) {
53
+ const loadNode = nodesByKey.get(key);
54
+ Promise.resolve(loadData({
55
+ key,
56
+ children: loadNode?.children
57
+ })).catch((err) => {
58
+ console.error(`[Tree] loadData failed for key "${key}":`, err);
59
+ }).finally(() => {
60
+ inFlightRef.current.delete(key);
61
+ setLoadingKeys((current) => {
62
+ if (!current.has(key)) return current;
63
+ const updated = new Set(current);
64
+ updated.delete(key);
65
+ return updated;
66
+ });
60
67
  });
61
- });
62
- }, [loadData, nodesByKey])
68
+ }
69
+ })
63
70
  };
64
71
  }
65
72
 
@@ -1 +1 @@
1
- {"version":3,"file":"use-load-data.js","names":[],"sources":["../../../../src/components/content/Tree/use-load-data.ts"],"sourcesContent":["import { useCallback, useRef, useState } from 'react';\n\nimport type { Key } from '@react-types/shared';\nimport type { CubeTreeNodeData, TreeLoadDataNode } from './types';\n\nexport interface UseLoadDataOptions {\n /**\n * Map of `key -> node` built from the consumer's `treeData`. Used to\n * find the node being expanded when `loadData` fires.\n */\n nodesByKey: Map<string, CubeTreeNodeData>;\n loadData?: (node: TreeLoadDataNode) => Promise<void>;\n /**\n * Keys that are expanded at mount time (controlled or default).\n * Seeds `previousExpandedRef` so the first `onExpandedChanged` call\n * doesn't misidentify them as user-triggered expansions.\n */\n initialExpandedKeys?: Iterable<string>;\n}\n\nexport interface LoadDataController {\n /** Set of keys that are currently waiting on `loadData`. */\n loadingKeys: Set<string>;\n /**\n * Called by `Tree.tsx` whenever the underlying React Stately state's\n * `expandedKeys` change. We diff against the previous set, and for\n * each newly-expanded key we trigger `loadData` if appropriate.\n */\n onExpandedChanged: (expandedKeys: Iterable<Key>) => void;\n}\n\n/**\n * Tracks which rows are currently fetching their children via `loadData`\n * and exposes a setter for the Tree to call after every expand change.\n *\n * `loadData` is fired exactly once per key per \"first expand\" event:\n *\n * - Skipped if there is no `loadData` callback.\n * - Skipped for leaf nodes (`isLeaf === true`).\n * - Skipped if the node already has `children` (already loaded).\n * - Skipped if a previous fetch for the same key is still in flight.\n *\n * The promise's resolution is awaited only to clear the `loading` mod;\n * the consumer is expected to commit the new children to the controlled\n * `treeData` themselves (matching AntD's pattern).\n */\nexport function useLoadData(opts: UseLoadDataOptions): LoadDataController {\n const { nodesByKey, loadData, initialExpandedKeys } = opts;\n const [loadingKeys, setLoadingKeys] = useState<Set<string>>(() => new Set());\n const previousExpandedRef = useRef<Set<string>>(new Set(initialExpandedKeys));\n const inFlightRef = useRef<Set<string>>(new Set());\n\n const onExpandedChanged = useCallback(\n (expandedKeys: Iterable<Key>) => {\n const next = new Set<string>();\n for (const k of expandedKeys) next.add(String(k));\n\n const prev = previousExpandedRef.current;\n const newlyExpanded: string[] = [];\n for (const k of next) {\n if (!prev.has(k)) newlyExpanded.push(k);\n }\n previousExpandedRef.current = next;\n\n if (!loadData || newlyExpanded.length === 0) return;\n\n let added = false;\n const toLoad: string[] = [];\n for (const key of newlyExpanded) {\n const node = nodesByKey.get(key);\n if (!node) continue;\n if (node.isLeaf) continue;\n if (node.children && node.children.length > 0) continue;\n if (inFlightRef.current.has(key)) continue;\n inFlightRef.current.add(key);\n toLoad.push(key);\n added = true;\n }\n\n if (!added) return;\n\n setLoadingKeys((current) => {\n const updated = new Set(current);\n for (const k of toLoad) updated.add(k);\n return updated;\n });\n\n for (const key of toLoad) {\n Promise.resolve(loadData({ key }))\n .catch(() => {\n // Allow consumers to re-trigger after a rejected load by\n // letting the next expand event re-enter this branch.\n })\n .finally(() => {\n inFlightRef.current.delete(key);\n setLoadingKeys((current) => {\n if (!current.has(key)) return current;\n const updated = new Set(current);\n updated.delete(key);\n return updated;\n });\n });\n }\n },\n [loadData, nodesByKey],\n );\n\n return { loadingKeys, onExpandedChanged };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AA8CA,SAAgB,YAAY,MAA8C;CACxE,MAAM,EAAE,YAAY,UAAU,wBAAwB;CACtD,MAAM,CAAC,aAAa,kBAAkB,+BAA4B,IAAI,KAAK,CAAC;CAC5E,MAAM,sBAAsB,OAAoB,IAAI,IAAI,oBAAoB,CAAC;CAC7E,MAAM,cAAc,uBAAoB,IAAI,KAAK,CAAC;AAyDlD,QAAO;EAAE;EAAa,mBAvDI,aACvB,iBAAgC;GAC/B,MAAM,uBAAO,IAAI,KAAa;AAC9B,QAAK,MAAM,KAAK,aAAc,MAAK,IAAI,OAAO,EAAE,CAAC;GAEjD,MAAM,OAAO,oBAAoB;GACjC,MAAM,gBAA0B,EAAE;AAClC,QAAK,MAAM,KAAK,KACd,KAAI,CAAC,KAAK,IAAI,EAAE,CAAE,eAAc,KAAK,EAAE;AAEzC,uBAAoB,UAAU;AAE9B,OAAI,CAAC,YAAY,cAAc,WAAW,EAAG;GAE7C,IAAI,QAAQ;GACZ,MAAM,SAAmB,EAAE;AAC3B,QAAK,MAAM,OAAO,eAAe;IAC/B,MAAM,OAAO,WAAW,IAAI,IAAI;AAChC,QAAI,CAAC,KAAM;AACX,QAAI,KAAK,OAAQ;AACjB,QAAI,KAAK,YAAY,KAAK,SAAS,SAAS,EAAG;AAC/C,QAAI,YAAY,QAAQ,IAAI,IAAI,CAAE;AAClC,gBAAY,QAAQ,IAAI,IAAI;AAC5B,WAAO,KAAK,IAAI;AAChB,YAAQ;;AAGV,OAAI,CAAC,MAAO;AAEZ,mBAAgB,YAAY;IAC1B,MAAM,UAAU,IAAI,IAAI,QAAQ;AAChC,SAAK,MAAM,KAAK,OAAQ,SAAQ,IAAI,EAAE;AACtC,WAAO;KACP;AAEF,QAAK,MAAM,OAAO,OAChB,SAAQ,QAAQ,SAAS,EAAE,KAAK,CAAC,CAAC,CAC/B,YAAY,GAGX,CACD,cAAc;AACb,gBAAY,QAAQ,OAAO,IAAI;AAC/B,oBAAgB,YAAY;AAC1B,SAAI,CAAC,QAAQ,IAAI,IAAI,CAAE,QAAO;KAC9B,MAAM,UAAU,IAAI,IAAI,QAAQ;AAChC,aAAQ,OAAO,IAAI;AACnB,YAAO;MACP;KACF;KAGR,CAAC,UAAU,WAAW,CACvB;EAEwC"}
1
+ {"version":3,"file":"use-load-data.js","names":[],"sources":["../../../../src/components/content/Tree/use-load-data.ts"],"sourcesContent":["import { useRef, useState } from 'react';\n\nimport { useEvent } from '../../../_internal/hooks';\n\nimport type { Key } from '@react-types/shared';\nimport type { CubeTreeNodeData, TreeLoadDataNode } from './types';\n\nexport interface UseLoadDataOptions {\n /**\n * Map of `key -> node` built from the consumer's `treeData`. Used to\n * find the node being expanded when `loadData` fires.\n */\n nodesByKey: Map<string, CubeTreeNodeData>;\n loadData?: (node: TreeLoadDataNode) => Promise<void>;\n /**\n * Keys that are expanded at mount time (controlled or default).\n * Seeds `previousExpandedRef` so the first `onExpandedChanged` call\n * doesn't misidentify them as user-triggered expansions.\n */\n initialExpandedKeys?: Iterable<string>;\n}\n\nexport interface LoadDataController {\n /** Set of keys that are currently waiting on `loadData`. */\n loadingKeys: Set<string>;\n /**\n * Called by `Tree.tsx` whenever the underlying React Stately state's\n * `expandedKeys` change. We diff against the previous set, and for\n * each newly-expanded key we trigger `loadData` if appropriate.\n */\n onExpandedChanged: (expandedKeys: Iterable<Key>) => void;\n}\n\n/**\n * Tracks which rows are currently fetching their children via `loadData`\n * and exposes a setter for the Tree to call after every expand change.\n *\n * `loadData` is fired exactly once per key per \"first expand\" event:\n *\n * - Skipped if there is no `loadData` callback.\n * - Skipped for leaf nodes (`isLeaf === true`).\n * - Skipped if the node already has `children` (already loaded).\n * - Skipped if a previous fetch for the same key is still in flight.\n *\n * The promise's resolution is awaited only to clear the `loading` mod;\n * the consumer is expected to commit the new children to the controlled\n * `treeData` themselves (matching AntD's pattern).\n */\nexport function useLoadData(opts: UseLoadDataOptions): LoadDataController {\n const { nodesByKey, loadData, initialExpandedKeys } = opts;\n const [loadingKeys, setLoadingKeys] = useState<Set<string>>(() => new Set());\n const previousExpandedRef = useRef<Set<string>>(new Set(initialExpandedKeys));\n const inFlightRef = useRef<Set<string>>(new Set());\n\n const onExpandedChanged = useEvent((expandedKeys: Iterable<Key>) => {\n const next = new Set<string>();\n for (const k of expandedKeys) next.add(String(k));\n\n const prev = previousExpandedRef.current;\n const newlyExpanded: string[] = [];\n for (const k of next) {\n if (!prev.has(k)) newlyExpanded.push(k);\n }\n previousExpandedRef.current = next;\n\n if (!loadData || newlyExpanded.length === 0) return;\n\n const toLoad: string[] = [];\n for (const key of newlyExpanded) {\n const node = nodesByKey.get(key);\n if (!node) continue;\n if (node.isLeaf) continue;\n if (node.children && node.children.length > 0) continue;\n if (inFlightRef.current.has(key)) continue;\n inFlightRef.current.add(key);\n toLoad.push(key);\n }\n\n if (toLoad.length === 0) return;\n\n setLoadingKeys((current) => {\n const updated = new Set(current);\n for (const k of toLoad) updated.add(k);\n return updated;\n });\n\n for (const key of toLoad) {\n const loadNode = nodesByKey.get(key);\n Promise.resolve(loadData({ key, children: loadNode?.children }))\n .catch((err) => {\n if (process.env.NODE_ENV !== 'production') {\n console.error(`[Tree] loadData failed for key \"${key}\":`, err);\n }\n })\n .finally(() => {\n inFlightRef.current.delete(key);\n setLoadingKeys((current) => {\n if (!current.has(key)) return current;\n const updated = new Set(current);\n updated.delete(key);\n return updated;\n });\n });\n }\n });\n\n return { loadingKeys, onExpandedChanged };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAgDA,SAAgB,YAAY,MAA8C;CACxE,MAAM,EAAE,YAAY,UAAU,wBAAwB;CACtD,MAAM,CAAC,aAAa,kBAAkB,+BAA4B,IAAI,KAAK,CAAC;CAC5E,MAAM,sBAAsB,OAAoB,IAAI,IAAI,oBAAoB,CAAC;CAC7E,MAAM,cAAc,uBAAoB,IAAI,KAAK,CAAC;AAsDlD,QAAO;EAAE;EAAa,mBApDI,UAAU,iBAAgC;GAClE,MAAM,uBAAO,IAAI,KAAa;AAC9B,QAAK,MAAM,KAAK,aAAc,MAAK,IAAI,OAAO,EAAE,CAAC;GAEjD,MAAM,OAAO,oBAAoB;GACjC,MAAM,gBAA0B,EAAE;AAClC,QAAK,MAAM,KAAK,KACd,KAAI,CAAC,KAAK,IAAI,EAAE,CAAE,eAAc,KAAK,EAAE;AAEzC,uBAAoB,UAAU;AAE9B,OAAI,CAAC,YAAY,cAAc,WAAW,EAAG;GAE7C,MAAM,SAAmB,EAAE;AAC3B,QAAK,MAAM,OAAO,eAAe;IAC/B,MAAM,OAAO,WAAW,IAAI,IAAI;AAChC,QAAI,CAAC,KAAM;AACX,QAAI,KAAK,OAAQ;AACjB,QAAI,KAAK,YAAY,KAAK,SAAS,SAAS,EAAG;AAC/C,QAAI,YAAY,QAAQ,IAAI,IAAI,CAAE;AAClC,gBAAY,QAAQ,IAAI,IAAI;AAC5B,WAAO,KAAK,IAAI;;AAGlB,OAAI,OAAO,WAAW,EAAG;AAEzB,mBAAgB,YAAY;IAC1B,MAAM,UAAU,IAAI,IAAI,QAAQ;AAChC,SAAK,MAAM,KAAK,OAAQ,SAAQ,IAAI,EAAE;AACtC,WAAO;KACP;AAEF,QAAK,MAAM,OAAO,QAAQ;IACxB,MAAM,WAAW,WAAW,IAAI,IAAI;AACpC,YAAQ,QAAQ,SAAS;KAAE;KAAK,UAAU,UAAU;KAAU,CAAC,CAAC,CAC7D,OAAO,QAAQ;AAEZ,aAAQ,MAAM,mCAAmC,IAAI,KAAK,IAAI;MAEhE,CACD,cAAc;AACb,iBAAY,QAAQ,OAAO,IAAI;AAC/B,qBAAgB,YAAY;AAC1B,UAAI,CAAC,QAAQ,IAAI,IAAI,CAAE,QAAO;MAC9B,MAAM,UAAU,IAAI,IAAI,QAAQ;AAChC,cAAQ,OAAO,IAAI;AACnB,aAAO;OACP;MACF;;IAEN;EAEuC"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { _Text } from "./Text.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { TooltipProvider } from "../overlays/Tooltip/TooltipProvider.js";
3
3
  import { useCallback, useEffect, useMemo, useRef, useState } 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-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { _Text } from "../../content/Text.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { createContext } from "react";
3
3
 
4
4
  //#region src/components/fields/Checkbox/context.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { InvalidIcon } from "../../shared/InvalidIcon.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { ItemAction } from "../../actions/ItemAction/ItemAction.js";
3
3
  import { CalendarIcon } from "../../../icons/CalendarIcon.js";
4
4
  import { tasty } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { Space } from "../../layout/Space.js";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { DatePickerSegment } from "./DatePickerSegment.js";
4
4
  import { formatSegments } from "./utils.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { tasty } from "@tenphi/tasty";
3
3
  import { useRef } 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-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  //#region src/components/fields/DatePicker/intl.ts
3
3
  const dateMessages = {
4
4
  time: "Time",
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { parseAbsolute } from "@internationalized/date";
3
3
 
4
4
  //#region src/components/fields/DatePicker/parseDate.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  //#region src/components/fields/DatePicker/props.ts
3
3
  const DEFAULT_DATE_PROPS = {
4
4
  granularity: "day",
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { useImperativeHandle, useRef } from "react";
3
3
  import { createDOMRef } from "@react-spectrum/utils";
4
4
  import { createFocusManager } from "@react-aria/focus";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useEventBus } from "../../../utils/react/useEventBus.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { _FileInput } from "../FileInput/FileInput.js";
3
3
  import { TextInput } from "../TextInput/TextInput.js";
4
4
  import { _NumberInput } from "../NumberInput/NumberInput.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { useProviderProps } from "../../../provider.js";
4
4
  import { useFieldProps } from "../../form/Form/use-field/use-field-props.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { DirectionIcon } from "../../../icons/DirectionIcon.js";
3
3
  import { Button } from "../../actions/index.js";
4
4
  import { tasty } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { useProviderProps } from "../../../provider.js";
4
4
  import { ItemAction } from "../../actions/ItemAction/ItemAction.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useEventBus } from "../../../utils/react/useEventBus.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useFocus as useFocus$1 } from "../../../utils/react/interactions.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useProviderProps } from "../../../provider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/fields/RadioGroup/context.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { useProviderProps } from "../../../provider.js";
4
4
  import { ItemAction } from "../../actions/ItemAction/ItemAction.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { forwardRefWithGenerics } from "../../../utils/react/forwardRefWithGenerics.js";
4
4
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { SliderGradationElement, SliderGradeElement } from "./elements.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { __Slider } from "./Slider.js";
3
3
  import { forwardRef, useCallback, useMemo, useState } 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-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { Gradation } from "./Gradation.js";
3
3
  import { _SliderBase } from "./SliderBase.js";
4
4
  import { SliderThumb } from "./SliderThumb.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps } from "../../../utils/react/mergeProps.js";
4
4
  import { Gradation } from "./Gradation.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { forwardRefWithGenerics } from "../../../utils/react/forwardRefWithGenerics.js";
4
4
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { SliderThumbElement } from "./elements.js";
4
4
  import { useMemo, useRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { SliderTrackContainerElement } from "./elements.js";
3
3
  import { 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-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { tasty } from "@tenphi/tasty";
3
3
 
4
4
  //#region src/components/fields/Slider/elements.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { __RangeSlider } from "./RangeSlider.js";
3
3
  import { __Slider } from "./Slider.js";
4
4
  import { __HueSlider } from "./HueSlider.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useId as useId$2 } from "../../../utils/react/useId.js";
4
4
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { chain } from "../../../utils/react/chain.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.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { useProviderProps } from "../../../provider.js";
4
4
  import { useFieldProps } from "../../form/Form/use-field/use-field-props.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | 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 { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-ccca45d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-2256c47 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";