@cube-dev/ui-kit 0.72.3 → 0.73.1

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 (513) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/es/_internal/hooks/index.js +1 -1
  3. package/es/_internal/hooks/use-chained-callback.js +1 -1
  4. package/es/_internal/hooks/use-debounced-value.js +1 -1
  5. package/es/_internal/hooks/use-deprecation-warning.js +1 -1
  6. package/es/_internal/hooks/use-effect-once.js +1 -1
  7. package/es/_internal/hooks/use-event.js +1 -1
  8. package/es/_internal/hooks/use-is-first-render.js +1 -1
  9. package/es/_internal/hooks/use-sync-ref.js +1 -1
  10. package/es/_internal/hooks/use-timer/index.js +1 -1
  11. package/es/_internal/hooks/use-timer/timer.js +1 -1
  12. package/es/_internal/hooks/use-timer/use-timer.js +1 -1
  13. package/es/_internal/hooks/use-update-effect.js +1 -1
  14. package/es/_internal/hooks/use-warn.js +1 -1
  15. package/es/_internal/index.js +1 -1
  16. package/es/components/Block.js +1 -1
  17. package/es/components/GlobalStyles.js +1 -1
  18. package/es/components/GridProvider.js +1 -1
  19. package/es/components/HiddenInput.js +1 -1
  20. package/es/components/Item.js +12 -0
  21. package/es/components/OpenTrasition.js +1 -1
  22. package/es/components/Root.js +1 -1
  23. package/es/components/actions/Action/Action.js +1 -1
  24. package/es/components/actions/Button/Button.js +21 -435
  25. package/es/components/actions/Button/index.js +1 -1
  26. package/es/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  27. package/es/components/actions/CommandMenu/CommandMenu.js +3 -4
  28. package/es/components/actions/CommandMenu/index.js +1 -1
  29. package/es/components/actions/CommandMenu/styled.js +14 -8
  30. package/es/components/actions/ItemButton/ItemButton.js +29 -0
  31. package/es/components/actions/ItemButton/index.js +10 -0
  32. package/es/components/actions/Menu/Menu.js +19 -24
  33. package/es/components/actions/Menu/MenuItem.js +19 -60
  34. package/es/components/actions/Menu/MenuSection.js +2 -2
  35. package/es/components/actions/Menu/MenuTrigger.js +3 -3
  36. package/es/components/actions/Menu/SubMenuTrigger.js +1 -1
  37. package/es/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  38. package/es/components/actions/Menu/context.js +1 -1
  39. package/es/components/actions/Menu/index.js +1 -1
  40. package/es/components/actions/Menu/styled.js +27 -8
  41. package/es/components/actions/index.js +2 -1
  42. package/es/components/actions/use-action.js +1 -1
  43. package/es/components/actions/use-anchored-menu.js +14 -5
  44. package/es/components/actions/use-context-menu.js +2 -2
  45. package/es/components/content/ActiveZone/ActiveZone.js +1 -1
  46. package/es/components/content/Alert/Alert.js +1 -1
  47. package/es/components/content/Alert/index.js +1 -1
  48. package/es/components/content/Alert/types.js +1 -1
  49. package/es/components/content/Alert/use-alert.js +1 -1
  50. package/es/components/content/Avatar/Avatar.js +1 -1
  51. package/es/components/content/Badge/Badge.js +1 -1
  52. package/es/components/content/Card/Card.js +1 -1
  53. package/es/components/content/Content.js +1 -1
  54. package/es/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  55. package/es/components/content/CopyPasteBlock/index.js +1 -1
  56. package/es/components/content/CopySnippet/CopySnippet.js +1 -1
  57. package/es/components/content/CopySnippet/index.js +1 -1
  58. package/es/components/content/Divider.js +1 -1
  59. package/es/components/content/Footer.js +1 -1
  60. package/es/components/content/Header.js +1 -1
  61. package/es/components/content/HotKeys/HotKeys.js +33 -4
  62. package/es/components/content/HotKeys/index.js +1 -1
  63. package/es/components/content/ItemBase/ItemBase.js +342 -0
  64. package/es/components/content/ItemBase/index.js +10 -0
  65. package/es/components/content/List/SectionHeading.js +23 -0
  66. package/es/components/content/List/index.js +10 -0
  67. package/es/components/content/Paragraph.js +1 -1
  68. package/es/components/content/Placeholder/Placeholder.js +1 -1
  69. package/es/components/content/PrismCode/PrismCode.js +1 -1
  70. package/es/components/content/PrismCode/prismSetup.js +1 -1
  71. package/es/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  72. package/es/components/content/Result/Result.js +1 -1
  73. package/es/components/content/Skeleton/Skeleton.js +1 -1
  74. package/es/components/content/Tag/Tag.js +1 -1
  75. package/es/components/content/Text.js +1 -1
  76. package/es/components/content/Title.js +1 -1
  77. package/es/components/fields/Checkbox/Checkbox.js +1 -1
  78. package/es/components/fields/Checkbox/CheckboxGroup.js +1 -1
  79. package/es/components/fields/Checkbox/context.js +1 -1
  80. package/es/components/fields/Checkbox/index.js +1 -1
  81. package/es/components/fields/ComboBox/ComboBox.js +4 -3
  82. package/es/components/fields/ComboBox/index.js +1 -1
  83. package/es/components/fields/DatePicker/DateInput.js +1 -1
  84. package/es/components/fields/DatePicker/DateInputBase.js +1 -1
  85. package/es/components/fields/DatePicker/DatePicker.js +1 -1
  86. package/es/components/fields/DatePicker/DatePickerButton.js +1 -1
  87. package/es/components/fields/DatePicker/DatePickerElement.js +1 -1
  88. package/es/components/fields/DatePicker/DatePickerInput.js +1 -1
  89. package/es/components/fields/DatePicker/DatePickerSegment.js +1 -1
  90. package/es/components/fields/DatePicker/DateRangePicker.js +1 -1
  91. package/es/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  92. package/es/components/fields/DatePicker/TimeInput.js +1 -1
  93. package/es/components/fields/DatePicker/index.js +1 -1
  94. package/es/components/fields/DatePicker/intl.js +1 -1
  95. package/es/components/fields/DatePicker/parseDate.js +1 -1
  96. package/es/components/fields/DatePicker/props.js +1 -1
  97. package/es/components/fields/DatePicker/types.js +1 -1
  98. package/es/components/fields/DatePicker/utils.js +1 -1
  99. package/es/components/fields/FileInput/FileInput.js +1 -1
  100. package/es/components/fields/FilterListBox/FilterListBox.js +18 -8
  101. package/es/components/fields/FilterListBox/index.js +1 -1
  102. package/es/components/fields/FilterPicker/FilterPicker.js +39 -7
  103. package/es/components/fields/FilterPicker/index.js +1 -1
  104. package/es/components/fields/Input/Input.js +1 -1
  105. package/es/components/fields/Input/index.js +1 -1
  106. package/es/components/fields/ListBox/ListBox.js +130 -116
  107. package/es/components/fields/ListBox/index.js +1 -1
  108. package/es/components/fields/NumberInput/NumberInput.js +1 -1
  109. package/es/components/fields/NumberInput/StepButton.js +1 -1
  110. package/es/components/fields/PasswordInput/PasswordInput.js +1 -1
  111. package/es/components/fields/RadioGroup/Radio.js +1 -1
  112. package/es/components/fields/RadioGroup/RadioGroup.js +1 -1
  113. package/es/components/fields/RadioGroup/context.js +1 -1
  114. package/es/components/fields/RadioGroup/index.js +1 -1
  115. package/es/components/fields/SearchInput/SearchInput.js +1 -1
  116. package/es/components/fields/SearchInput/index.js +1 -1
  117. package/es/components/fields/Select/Select.js +36 -154
  118. package/es/components/fields/Select/index.js +1 -1
  119. package/es/components/fields/Slider/Gradation.js +1 -1
  120. package/es/components/fields/Slider/Header.js +1 -1
  121. package/es/components/fields/Slider/RangeSlider.js +1 -1
  122. package/es/components/fields/Slider/Slider.js +1 -1
  123. package/es/components/fields/Slider/SliderBase.js +1 -1
  124. package/es/components/fields/Slider/SliderInput.js +1 -1
  125. package/es/components/fields/Slider/SliderThumb.js +1 -1
  126. package/es/components/fields/Slider/SliderTrack.js +1 -1
  127. package/es/components/fields/Slider/elements.js +1 -1
  128. package/es/components/fields/Slider/index.js +1 -1
  129. package/es/components/fields/Slider/types.js +1 -1
  130. package/es/components/fields/Switch/Switch.js +1 -1
  131. package/es/components/fields/Switch/index.js +1 -1
  132. package/es/components/fields/TextArea/TextArea.js +1 -1
  133. package/es/components/fields/TextArea/index.js +1 -1
  134. package/es/components/fields/TextInput/TextInput.js +1 -1
  135. package/es/components/fields/TextInput/TextInputBase.js +1 -1
  136. package/es/components/fields/TextInput/index.js +1 -1
  137. package/es/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  138. package/es/components/fields/TextInputMapper/index.js +1 -1
  139. package/es/components/fields/index.js +1 -1
  140. package/es/components/form/FieldWrapper/FieldWrapper.js +1 -1
  141. package/es/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  142. package/es/components/form/FieldWrapper/index.js +1 -1
  143. package/es/components/form/FieldWrapper/types.js +1 -1
  144. package/es/components/form/Form/Field.js +1 -1
  145. package/es/components/form/Form/Form.js +1 -1
  146. package/es/components/form/Form/ResetButton/ResetButton.js +1 -1
  147. package/es/components/form/Form/ResetButton/index.js +1 -1
  148. package/es/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  149. package/es/components/form/Form/SubmitButton/index.js +1 -1
  150. package/es/components/form/Form/SubmitError.js +1 -1
  151. package/es/components/form/Form/index.js +1 -1
  152. package/es/components/form/Form/types.js +1 -1
  153. package/es/components/form/Form/use-field/index.js +1 -1
  154. package/es/components/form/Form/use-field/types.js +1 -1
  155. package/es/components/form/Form/use-field/use-field-props.js +1 -1
  156. package/es/components/form/Form/use-field/use-field.js +1 -1
  157. package/es/components/form/Form/use-form.js +1 -1
  158. package/es/components/form/Form/validation.js +1 -1
  159. package/es/components/form/Label.js +1 -1
  160. package/es/components/form/index.js +1 -1
  161. package/es/components/form/wrapper.js +1 -1
  162. package/es/components/layout/Flex.js +1 -1
  163. package/es/components/layout/Flow.js +1 -1
  164. package/es/components/layout/Grid.js +1 -1
  165. package/es/components/layout/Panel.js +1 -1
  166. package/es/components/layout/Prefix.js +1 -1
  167. package/es/components/layout/ResizablePanel.js +1 -1
  168. package/es/components/layout/Space.js +1 -1
  169. package/es/components/layout/Suffix.js +1 -1
  170. package/es/components/navigation/LegacyTabs/LegacyTabs.js +1 -1
  171. package/es/components/navigation/Link/Link.js +1 -1
  172. package/es/components/organisms/FileTabs/FileTabs.js +1 -1
  173. package/es/components/organisms/Modal/Modal.js +1 -1
  174. package/es/components/organisms/StatsCard/StatsCard.js +1 -1
  175. package/es/components/other/Base64Upload/Base64Upload.js +1 -1
  176. package/es/components/other/Calendar/Calendar.js +1 -1
  177. package/es/components/other/Calendar/CalendarCell.js +1 -1
  178. package/es/components/other/Calendar/CalendarGrid.js +1 -1
  179. package/es/components/other/Calendar/RangeCalendar.js +1 -1
  180. package/es/components/other/CloudLogo/CloudLogo.js +1 -1
  181. package/es/components/overlays/AlertDialog/AlertDialog.js +1 -1
  182. package/es/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  183. package/es/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  184. package/es/components/overlays/AlertDialog/index.js +1 -1
  185. package/es/components/overlays/AlertDialog/types.js +1 -1
  186. package/es/components/overlays/Dialog/Dialog.js +1 -1
  187. package/es/components/overlays/Dialog/DialogContainer.js +1 -1
  188. package/es/components/overlays/Dialog/DialogForm.js +1 -1
  189. package/es/components/overlays/Dialog/DialogTrigger.js +1 -1
  190. package/es/components/overlays/Dialog/context.js +1 -1
  191. package/es/components/overlays/Dialog/index.js +1 -1
  192. package/es/components/overlays/Dialog/use-dialog-container.js +1 -1
  193. package/es/components/overlays/Modal/Modal.js +1 -1
  194. package/es/components/overlays/Modal/OpenTransition.js +1 -1
  195. package/es/components/overlays/Modal/Overlay.js +1 -1
  196. package/es/components/overlays/Modal/Popover.js +1 -1
  197. package/es/components/overlays/Modal/Tray.js +1 -1
  198. package/es/components/overlays/Modal/Underlay.js +1 -1
  199. package/es/components/overlays/Modal/index.js +1 -1
  200. package/es/components/overlays/Modal/types.js +1 -1
  201. package/es/components/overlays/NewNotifications/Bar/FloatingNotification.js +1 -1
  202. package/es/components/overlays/NewNotifications/Bar/NotificationsBar.js +1 -1
  203. package/es/components/overlays/NewNotifications/Bar/TransitionComponent.js +1 -1
  204. package/es/components/overlays/NewNotifications/Bar/index.js +1 -1
  205. package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogTrigger.js +1 -1
  206. package/es/components/overlays/NewNotifications/Dialog/index.js +1 -1
  207. package/es/components/overlays/NewNotifications/Notification.js +1 -1
  208. package/es/components/overlays/NewNotifications/NotificationView/NotificationAction.js +1 -1
  209. package/es/components/overlays/NewNotifications/NotificationView/NotificationCloseButton.js +1 -1
  210. package/es/components/overlays/NewNotifications/NotificationView/NotificationDescription.js +1 -1
  211. package/es/components/overlays/NewNotifications/NotificationView/NotificationFooter.js +1 -1
  212. package/es/components/overlays/NewNotifications/NotificationView/NotificationHeader.js +1 -1
  213. package/es/components/overlays/NewNotifications/NotificationView/NotificationIcon.js +1 -1
  214. package/es/components/overlays/NewNotifications/NotificationView/NotificationProvider.js +1 -1
  215. package/es/components/overlays/NewNotifications/NotificationView/NotificationView.js +1 -1
  216. package/es/components/overlays/NewNotifications/NotificationView/index.js +1 -1
  217. package/es/components/overlays/NewNotifications/NotificationView/types.js +1 -1
  218. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsContext.js +1 -1
  219. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.js +1 -1
  220. package/es/components/overlays/NewNotifications/NotificationsContext/index.js +1 -1
  221. package/es/components/overlays/NewNotifications/NotificationsContext/use-notifications.js +1 -1
  222. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsList.js +1 -1
  223. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsListItem.js +1 -1
  224. package/es/components/overlays/NewNotifications/NotificationsList/index.js +1 -1
  225. package/es/components/overlays/NewNotifications/NotificationsList/types.js +1 -1
  226. package/es/components/overlays/NewNotifications/hooks/index.js +1 -1
  227. package/es/components/overlays/NewNotifications/hooks/types.js +1 -1
  228. package/es/components/overlays/NewNotifications/hooks/use-notification-list-item.js +1 -1
  229. package/es/components/overlays/NewNotifications/hooks/use-notifications-api.js +1 -1
  230. package/es/components/overlays/NewNotifications/hooks/use-notifications-list.js +1 -1
  231. package/es/components/overlays/NewNotifications/hooks/use-notifications-observer.js +1 -1
  232. package/es/components/overlays/NewNotifications/index.js +1 -1
  233. package/es/components/overlays/NewNotifications/types.js +1 -1
  234. package/es/components/overlays/Notification/Notification.js +1 -1
  235. package/es/components/overlays/OverlayWrapper.js +1 -1
  236. package/es/components/overlays/Toasts/Toast.js +1 -1
  237. package/es/components/overlays/Toasts/index.js +1 -1
  238. package/es/components/overlays/Toasts/types.js +1 -1
  239. package/es/components/overlays/Toasts/use-toasts-api.js +1 -1
  240. package/es/components/overlays/Tooltip/Tooltip.js +1 -1
  241. package/es/components/overlays/Tooltip/TooltipProvider.js +1 -1
  242. package/es/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  243. package/es/components/overlays/Tooltip/context.js +1 -1
  244. package/es/components/overlays/Tooltip/index.js +1 -1
  245. package/es/components/portal/Portal.js +1 -1
  246. package/es/components/portal/PortalProvider.js +1 -1
  247. package/es/components/portal/index.js +1 -1
  248. package/es/components/portal/types.js +1 -1
  249. package/es/components/portal/usePortal.js +1 -1
  250. package/es/components/shared/InvalidIcon.js +1 -1
  251. package/es/components/shared/ValidIcon.js +1 -1
  252. package/es/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  253. package/es/components/status/LoadingAnimation/index.js +1 -1
  254. package/es/components/status/Spin/Cube.js +1 -1
  255. package/es/components/status/Spin/InternalSpinner.js +1 -1
  256. package/es/components/status/Spin/Spin.js +1 -1
  257. package/es/components/status/Spin/SpinsContainer.js +1 -1
  258. package/es/components/status/Spin/index.js +1 -1
  259. package/es/components/status/Spin/types.js +1 -1
  260. package/es/components/status/index.js +1 -1
  261. package/es/data/item-themes.js +516 -0
  262. package/es/data/themes.js +2 -2
  263. package/es/icons/AdjustmentsHorizontalIcon.js +1 -1
  264. package/es/icons/AdjustmentsIcon.js +1 -1
  265. package/es/icons/AiIcon.js +1 -1
  266. package/es/icons/AreaChartIcon.js +1 -1
  267. package/es/icons/BackwardIcon.js +1 -1
  268. package/es/icons/BarChartIcon.js +1 -1
  269. package/es/icons/BellFilledIcon.js +1 -1
  270. package/es/icons/BellIcon.js +1 -1
  271. package/es/icons/BooleanIcon.js +1 -1
  272. package/es/icons/CalendarEditIcon.js +1 -1
  273. package/es/icons/CalendarIcon.js +1 -1
  274. package/es/icons/CaretDownIcon.js +1 -1
  275. package/es/icons/CaretUpIcon.js +1 -1
  276. package/es/icons/ChartAreaStackedIcon.js +1 -1
  277. package/es/icons/ChartAreaStackedPercentageIcon.js +1 -1
  278. package/es/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  279. package/es/icons/ChartBarGroupedIcon.js +1 -1
  280. package/es/icons/ChartBarHorizontalIcon.js +1 -1
  281. package/es/icons/ChartBarLineIcon.js +1 -1
  282. package/es/icons/ChartBarStackedHorizontalIcon.js +1 -1
  283. package/es/icons/ChartBarStackedIcon.js +1 -1
  284. package/es/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  285. package/es/icons/ChartBarStackedPercentageIcon.js +1 -1
  286. package/es/icons/ChartBoxPlot2Icon.js +1 -1
  287. package/es/icons/ChartBoxPlotIcon.js +1 -1
  288. package/es/icons/ChartBubbleIcon.js +1 -1
  289. package/es/icons/ChartDonut2Icon.js +1 -1
  290. package/es/icons/ChartFunnelIcon.js +1 -1
  291. package/es/icons/ChartKPIIcon.js +1 -1
  292. package/es/icons/ChartPie2Icon.js +1 -1
  293. package/es/icons/ChartScatterIcon.js +1 -1
  294. package/es/icons/CheckCircleFilledIcon.js +1 -1
  295. package/es/icons/CheckCircleIcon.js +1 -1
  296. package/es/icons/CheckIcon.js +1 -1
  297. package/es/icons/CircleFilledIcon.js +1 -1
  298. package/es/icons/ClearIcon.js +1 -1
  299. package/es/icons/CloseCircleFilledIcon.js +1 -1
  300. package/es/icons/CloseCircleIcon.js +1 -1
  301. package/es/icons/CloseIcon.js +1 -1
  302. package/es/icons/CodeIcon.js +1 -1
  303. package/es/icons/CopyIcon.js +1 -1
  304. package/es/icons/CountIcon.js +1 -1
  305. package/es/icons/CubeIcon.js +1 -1
  306. package/es/icons/DangerIcon.js +1 -1
  307. package/es/icons/DashboardIcon.js +1 -1
  308. package/es/icons/DatabaseIcon.js +1 -1
  309. package/es/icons/DirectionIcon.js +1 -1
  310. package/es/icons/DonutIcon.js +1 -1
  311. package/es/icons/DownIcon.js +1 -1
  312. package/es/icons/EditIcon.js +1 -1
  313. package/es/icons/ExclamationCircleFilledIcon.js +1 -1
  314. package/es/icons/ExclamationCircleIcon.js +1 -1
  315. package/es/icons/ExclamationIcon.js +1 -1
  316. package/es/icons/EyeIcon.js +1 -1
  317. package/es/icons/EyeInvisibleIcon.js +1 -1
  318. package/es/icons/FilterIcon.js +1 -1
  319. package/es/icons/FolderFilledIcon.js +1 -1
  320. package/es/icons/FolderIcon.js +1 -1
  321. package/es/icons/FolderOpenFilledIcon.js +1 -1
  322. package/es/icons/FolderOpenIcon.js +1 -1
  323. package/es/icons/ForwardIcon.js +1 -1
  324. package/es/icons/HierarchyIcon.js +1 -1
  325. package/es/icons/Icon.js +1 -1
  326. package/es/icons/InfoCircleIcon.js +1 -1
  327. package/es/icons/InfoIcon.js +1 -1
  328. package/es/icons/KeyIcon.js +1 -1
  329. package/es/icons/LeftIcon.js +1 -1
  330. package/es/icons/LineChartIcon.js +1 -1
  331. package/es/icons/LoadingIcon.js +1 -1
  332. package/es/icons/LockFilledIcon.js +1 -1
  333. package/es/icons/LockIcon.js +1 -1
  334. package/es/icons/MoreIcon.js +1 -1
  335. package/es/icons/NotAllowedIcon.js +1 -1
  336. package/es/icons/NumberIcon.js +1 -1
  337. package/es/icons/PauseCircleFilledIcon.js +1 -1
  338. package/es/icons/PauseCircleIcon.js +1 -1
  339. package/es/icons/PauseIcon.js +1 -1
  340. package/es/icons/PieChartIcon.js +1 -1
  341. package/es/icons/PlayCircleIcon.js +1 -1
  342. package/es/icons/PlayIcon.js +1 -1
  343. package/es/icons/PlusIcon.js +1 -1
  344. package/es/icons/ReloadIcon.js +1 -1
  345. package/es/icons/ReportIcon.js +1 -1
  346. package/es/icons/ReturnIcon.js +1 -1
  347. package/es/icons/RightIcon.js +1 -1
  348. package/es/icons/SchemeIcon.js +1 -1
  349. package/es/icons/SearchIcon.js +1 -1
  350. package/es/icons/SettingsIcon.js +1 -1
  351. package/es/icons/ShieldFilledIcon.js +1 -1
  352. package/es/icons/ShieldIcon.js +1 -1
  353. package/es/icons/SlashIcon.js +1 -1
  354. package/es/icons/SparklesIcon.js +1 -1
  355. package/es/icons/SqlIcon.js +1 -1
  356. package/es/icons/StatsIcon.js +1 -1
  357. package/es/icons/StopIcon.js +1 -1
  358. package/es/icons/StringIcon.js +1 -1
  359. package/es/icons/SwitchIcon.js +1 -1
  360. package/es/icons/TableIcon.js +1 -1
  361. package/es/icons/ThumbsDownIcon.js +1 -1
  362. package/es/icons/ThumbsUpIcon.js +1 -1
  363. package/es/icons/ThunderboltCrossedIcon.js +1 -1
  364. package/es/icons/ThunderboltFilledIcon.js +1 -1
  365. package/es/icons/ThunderboltIcon.js +1 -1
  366. package/es/icons/TimeIcon.js +1 -1
  367. package/es/icons/UnlockIcon.js +1 -1
  368. package/es/icons/UpIcon.js +1 -1
  369. package/es/icons/UserGroupIcon.js +1 -1
  370. package/es/icons/UserIcon.js +1 -1
  371. package/es/icons/UserLockIcon.js +1 -1
  372. package/es/icons/ViewIcon.js +1 -1
  373. package/es/icons/WarningFilledIcon.js +1 -1
  374. package/es/icons/WarningIcon.js +1 -1
  375. package/es/icons/add-new-icon.js +1 -1
  376. package/es/icons/index.js +1 -1
  377. package/es/icons/wrap-icon.js +1 -1
  378. package/es/index.js +4 -2
  379. package/es/provider.js +1 -1
  380. package/es/providers/TrackingProvider.js +1 -1
  381. package/es/services/notification.js +1 -1
  382. package/es/shared/form.js +1 -1
  383. package/es/shared/index.js +1 -1
  384. package/es/stories/Form.legacy-stories.js +1 -1
  385. package/es/stories/FormFieldArgs.js +1 -1
  386. package/es/stories/Layout.stories.js +1 -1
  387. package/es/stories/Tasty.stories.js +1 -1
  388. package/es/stories/components/ConfirmDeletionDialogForm.js +1 -1
  389. package/es/stories/components/DialogFormApp.js +1 -1
  390. package/es/stories/components/StyledButton.js +1 -1
  391. package/es/stories/lists/baseProps.js +1 -1
  392. package/es/tasty/index.js +1 -1
  393. package/es/tasty/parser/classify.js +1 -1
  394. package/es/tasty/parser/const.js +1 -1
  395. package/es/tasty/parser/lru.js +1 -1
  396. package/es/tasty/parser/parser.js +1 -1
  397. package/es/tasty/parser/tokenizer.js +1 -1
  398. package/es/tasty/parser/types.js +1 -1
  399. package/es/tasty/providers/BreakpointsProvider.js +1 -1
  400. package/es/tasty/styles/align.js +1 -1
  401. package/es/tasty/styles/border.js +1 -1
  402. package/es/tasty/styles/boxShadow.combinator.js +1 -1
  403. package/es/tasty/styles/color.js +1 -1
  404. package/es/tasty/styles/createStyle.js +1 -1
  405. package/es/tasty/styles/dimension.js +1 -1
  406. package/es/tasty/styles/display.js +1 -1
  407. package/es/tasty/styles/fade.js +1 -1
  408. package/es/tasty/styles/fill.js +1 -1
  409. package/es/tasty/styles/flow.js +1 -1
  410. package/es/tasty/styles/font.js +1 -1
  411. package/es/tasty/styles/fontStyle.js +1 -1
  412. package/es/tasty/styles/gap.js +1 -1
  413. package/es/tasty/styles/groupRadius.js +1 -1
  414. package/es/tasty/styles/height.js +1 -1
  415. package/es/tasty/styles/index.js +1 -1
  416. package/es/tasty/styles/inset.js +1 -1
  417. package/es/tasty/styles/justify.js +1 -1
  418. package/es/tasty/styles/list.js +1 -1
  419. package/es/tasty/styles/margin.js +1 -1
  420. package/es/tasty/styles/marginBlock.js +1 -1
  421. package/es/tasty/styles/marginInline.js +1 -1
  422. package/es/tasty/styles/outline.js +1 -1
  423. package/es/tasty/styles/padding.js +1 -1
  424. package/es/tasty/styles/paddingBlock.js +1 -1
  425. package/es/tasty/styles/paddingInline.js +1 -1
  426. package/es/tasty/styles/place.js +1 -1
  427. package/es/tasty/styles/predefined.js +1 -1
  428. package/es/tasty/styles/preset.js +1 -1
  429. package/es/tasty/styles/radius.js +1 -1
  430. package/es/tasty/styles/reset.js +1 -1
  431. package/es/tasty/styles/scrollbar.js +1 -1
  432. package/es/tasty/styles/shadow.js +1 -1
  433. package/es/tasty/styles/styledScrollbar.js +1 -1
  434. package/es/tasty/styles/transition.js +1 -1
  435. package/es/tasty/styles/types.js +1 -1
  436. package/es/tasty/styles/width.js +1 -1
  437. package/es/tasty/tasty.js +1 -1
  438. package/es/tasty/types.js +1 -1
  439. package/es/tasty/utils/cache-wrapper.js +1 -1
  440. package/es/tasty/utils/case-converter.js +1 -1
  441. package/es/tasty/utils/colors.js +1 -1
  442. package/es/tasty/utils/dotize.js +1 -1
  443. package/es/tasty/utils/filterBaseProps.js +1 -1
  444. package/es/tasty/utils/getDisplayName.js +1 -1
  445. package/es/tasty/utils/getModCombinations.js +1 -1
  446. package/es/tasty/utils/mergeStyles.js +1 -1
  447. package/es/tasty/utils/modAttrs.js +1 -1
  448. package/es/tasty/utils/renderStyles.js +1 -1
  449. package/es/tasty/utils/responsive.js +1 -1
  450. package/es/tasty/utils/string.js +1 -1
  451. package/es/tasty/utils/styles.js +1 -1
  452. package/es/tasty/utils/warnings.js +1 -1
  453. package/es/tokens.js +1 -1
  454. package/es/type-checks.js +1 -1
  455. package/es/utils/ResizeSensor.js +1 -1
  456. package/es/utils/modules.js +1 -1
  457. package/es/utils/promise.js +1 -1
  458. package/es/utils/random.js +1 -1
  459. package/es/utils/range.js +1 -1
  460. package/es/utils/react/Slots.js +1 -1
  461. package/es/utils/react/chain.js +1 -1
  462. package/es/utils/react/index.js +1 -1
  463. package/es/utils/react/interactions.js +1 -1
  464. package/es/utils/react/isTextOnly.js +1 -1
  465. package/es/utils/react/mapProps.js +1 -1
  466. package/es/utils/react/mergeProps.js +1 -1
  467. package/es/utils/react/nullableValue.js +1 -1
  468. package/es/utils/react/sharedStore.js +1 -1
  469. package/es/utils/react/useCombinedRefs.js +1 -1
  470. package/es/utils/react/useControlledFocusVisible.js +1 -1
  471. package/es/utils/react/useEventBus.js +1 -1
  472. package/es/utils/react/useId.js +1 -1
  473. package/es/utils/react/useIsDarwin.js +1 -1
  474. package/es/utils/react/useKeySymbols.js +1 -1
  475. package/es/utils/react/useLayoutEffect.js +1 -1
  476. package/es/utils/react/useQaProps.js +1 -1
  477. package/es/utils/react/useViewportSize.js +1 -1
  478. package/es/utils/react/wrapNodeIfPlain.js +1 -1
  479. package/es/utils/transitions.js +1 -1
  480. package/es/utils/tree.js +1 -1
  481. package/es/utils/warnings.js +1 -6
  482. package/es/version.js +2 -2
  483. package/package.json +1 -1
  484. package/types/components/Item.d.ts +18 -0
  485. package/types/components/actions/Button/Button.d.ts +0 -25
  486. package/types/components/actions/ItemButton/ItemButton.d.ts +6 -0
  487. package/types/components/actions/ItemButton/index.d.ts +1 -0
  488. package/types/components/actions/Menu/Menu.d.ts +3 -24
  489. package/types/components/actions/Menu/MenuItem.d.ts +0 -1
  490. package/types/components/actions/index.d.ts +1 -0
  491. package/types/components/actions/use-anchored-menu.d.ts +3 -2
  492. package/types/components/content/HotKeys/HotKeys.d.ts +1 -0
  493. package/types/components/content/ItemBase/ItemBase.d.ts +45 -0
  494. package/types/components/content/ItemBase/index.d.ts +1 -0
  495. package/types/components/content/List/SectionHeading.d.ts +432 -0
  496. package/types/components/content/List/index.d.ts +1 -0
  497. package/types/components/fields/ComboBox/ComboBox.d.ts +2 -1
  498. package/types/components/fields/FilterListBox/FilterListBox.d.ts +10 -0
  499. package/types/components/fields/FilterPicker/FilterPicker.d.ts +8 -8
  500. package/types/components/fields/ListBox/ListBox.d.ts +7 -2
  501. package/types/components/fields/Select/Select.d.ts +20 -6
  502. package/types/data/item-themes.d.ts +31 -0
  503. package/types/data/themes.d.ts +1 -1
  504. package/types/index.d.ts +4 -1
  505. package/types/utils/warnings.d.ts +0 -1
  506. package/es/components/portal/storybook/templates/CustomRoot.js +0 -16
  507. package/es/components/portal/storybook/templates/PortalOrder.js +0 -13
  508. package/es/components/portal/storybook/templates/basic.js +0 -13
  509. package/es/components/portal/storybook/templates/index.js +0 -12
  510. package/types/components/portal/storybook/templates/CustomRoot.d.ts +0 -3
  511. package/types/components/portal/storybook/templates/PortalOrder.d.ts +0 -3
  512. package/types/components/portal/storybook/templates/basic.d.ts +0 -3
  513. package/types/components/portal/storybook/templates/index.d.ts +0 -3
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -10,10 +10,10 @@ import { useSyncRef } from '@react-aria/utils';
10
10
  import { useDOMRef } from '@react-spectrum/utils';
11
11
  import React, { useMemo } from 'react';
12
12
  import { useMenu } from 'react-aria';
13
- import { Item as BaseItem, Section as BaseSection, useTreeState, } from 'react-stately';
13
+ import { Section as BaseSection, useTreeState } from 'react-stately';
14
14
  import { CONTAINER_STYLES, extractStyles, filterBaseProps, } from '../../../tasty';
15
15
  import { mergeProps } from '../../../utils/react';
16
- import { TooltipProvider, } from '../../overlays/Tooltip/TooltipProvider';
16
+ import { Item } from '../../Item';
17
17
  import { useMenuContext } from './context';
18
18
  import { MenuItem } from './MenuItem';
19
19
  import { MenuSection } from './MenuSection';
@@ -21,7 +21,7 @@ import { MenuTrigger } from './MenuTrigger';
21
21
  import { StyledDivider, StyledFooter, StyledHeader, StyledMenu, StyledMenuWrapper, } from './styled';
22
22
  import { SubMenuTrigger } from './SubMenuTrigger';
23
23
  function Menu(props, ref) {
24
- const { header, footer, menuStyles, headerStyles, footerStyles, itemStyles, sectionStyles, sectionHeadingStyles, selectionIcon, size = 'medium', focusOnHover = false, qa, selectedKeys, defaultSelectedKeys, onSelectionChange, ...rest } = props;
24
+ const { header, footer, menuStyles, headerStyles, footerStyles, itemStyles, sectionStyles, sectionHeadingStyles, size = 'medium', focusOnHover = false, qa, selectedKeys, defaultSelectedKeys, onSelectionChange, ...rest } = props;
25
25
  const domRef = useDOMRef(ref);
26
26
  const contextProps = useMenuContext();
27
27
  // Convert string[] to Set<Key> for React Aria compatibility
@@ -81,18 +81,23 @@ function Menu(props, ref) {
81
81
  if (!isFirstSection) {
82
82
  items.push(_jsx(StyledDivider, { role: "separator", "aria-orientation": "horizontal" }, `divider-${String(item.key)}`));
83
83
  }
84
- items.push(_jsx(MenuSection, { item: item, state: state, styles: sectionStyles, itemStyles: itemStyles, headingStyles: sectionHeadingStyles, selectionIcon: selectionIcon, size: size }, item.key));
84
+ items.push(_jsx(MenuSection, { item: item, state: state, styles: sectionStyles, itemStyles: itemStyles, headingStyles: sectionHeadingStyles, size: size }, item.key));
85
85
  isFirstSection = false;
86
86
  return;
87
87
  }
88
- let menuItem = (_jsx(MenuItem, { item: item, state: state, styles: itemStyles, selectionIcon: selectionIcon, size: size, onAction: item.onAction }, item.key));
88
+ let menuItem = (_jsx(MenuItem, { item: item, state: state, styles: itemStyles, size: size, onAction: item.onAction }, item.key));
89
89
  // Apply tooltip wrapper if tooltip property is provided
90
- if (item.props.tooltip) {
91
- const tooltipProps = typeof item.props.tooltip === 'string'
92
- ? { title: item.props.tooltip }
93
- : item.props.tooltip;
94
- menuItem = (_jsx(TooltipProvider, { activeWrap: true, placement: "right", ...tooltipProps, children: menuItem }, item.key));
95
- }
90
+ // if (item.props.tooltip) {
91
+ // const tooltipProps =
92
+ // typeof item.props.tooltip === 'string'
93
+ // ? { title: item.props.tooltip }
94
+ // : item.props.tooltip;
95
+ // menuItem = (
96
+ // <TooltipProvider key={item.key} placement="right" {...tooltipProps}>
97
+ // {menuItem}
98
+ // </TooltipProvider>
99
+ // );
100
+ // }
96
101
  // Apply custom wrapper if provided
97
102
  if (item.props?.wrapper) {
98
103
  menuItem = item.props.wrapper(menuItem);
@@ -105,14 +110,7 @@ function Menu(props, ref) {
105
110
  items.push(React.cloneElement(menuItem, { key: item.key }));
106
111
  });
107
112
  return items;
108
- }, [
109
- collectionItems,
110
- state,
111
- sectionStyles,
112
- itemStyles,
113
- selectionIcon,
114
- sectionHeadingStyles,
115
- ]);
113
+ }, [collectionItems, state, sectionStyles, itemStyles, sectionHeadingStyles]);
116
114
  return (_jsxs(StyledMenuWrapper, { qa: qa, styles: styles, mods: wrapperMods, ...filterBaseProps(completeProps), children: [header ? (_jsx(StyledHeader, { "data-size": size, styles: headerStyles, children: header })) : (_jsx("div", { role: "presentation" })), _jsx(StyledMenu, { ...mergeProps({
117
115
  styles: menuStyles,
118
116
  'data-size': size,
@@ -122,14 +120,11 @@ function Menu(props, ref) {
122
120
  // forwardRef doesn't support generic parameters, so cast the result to the correct type
123
121
  // https://stackoverflow.com/questions/58469229/react-with-typescript-generics-while-using-react-forwardref
124
122
  const _Menu = React.forwardRef(Menu);
125
- const Item = Object.assign(BaseItem, {
126
- displayName: 'Item',
127
- });
128
123
  const Section = Object.assign(BaseSection, {
129
124
  displayName: 'Section',
130
125
  });
131
126
  const __Menu = Object.assign(_Menu, {
132
- Item: Item,
127
+ Item,
133
128
  Section,
134
129
  SubMenuTrigger,
135
130
  Trigger: MenuTrigger,
@@ -1,40 +1,22 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
8
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
- import { IconPointFilled } from '@tabler/icons-react';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
10
9
  import { useContext, useRef } from 'react';
11
10
  import { FocusRing, useMenuItem } from 'react-aria';
12
- import { useHotkeys } from 'react-hotkeys-hook';
13
- import { CheckIcon, RightIcon } from '../../../icons';
14
- import { ClearSlots, mergeProps, SlotProvider } from '../../../utils/react';
11
+ import { RightIcon } from '../../../icons';
12
+ import { mergeProps } from '../../../utils/react';
15
13
  import { HotKeys } from '../../content/HotKeys';
16
- import { Text } from '../../content/Text';
17
- import { Space } from '../../layout/Space';
14
+ import { ItemBase } from '../../content/ItemBase/ItemBase';
18
15
  import { useMenuContext } from './context';
19
- import { StyledItem } from './styled';
20
16
  import { SubmenuTriggerContext } from './SubmenuTriggerContext';
21
- // Returns icon corresponding to selection type
22
- const getSelectionTypeIcon = (selectionIcon) => {
23
- switch (selectionIcon) {
24
- case 'checkmark':
25
- case 'checkbox':
26
- return _jsx(CheckIcon, {});
27
- case 'radio':
28
- return _jsx(IconPointFilled, {});
29
- default:
30
- return undefined;
31
- }
32
- };
33
- // Normalise postfix rendering (string -> Text component)
34
- const getPostfix = (postfix) => typeof postfix === 'string' ? (_jsx(Text, { nowrap: true, color: "inherit", "data-element": "Postfix", children: postfix })) : (postfix);
35
17
  /** @private */
36
18
  export function MenuItem(props) {
37
- const { item, state, styles, selectionIcon, isVirtualized, onAction, size } = props;
19
+ const { item, state, styles, isVirtualized, onAction, size } = props;
38
20
  const { onClose, closeOnSelect } = useMenuContext();
39
21
  const { rendered, key, props: itemProps } = item;
40
22
  // Check if this item is wrapped in a SubmenuTriggerContext
@@ -57,48 +39,31 @@ export function MenuItem(props) {
57
39
  onAction: submenuContext?.onAction || onAction,
58
40
  }, state, elementRef);
59
41
  // Destructure presentation-related props from cleanItemProps so they are not spread onto DOM element
60
- const { postfix, description, icon, mods: itemMods, qa: itemQa, textValue, ...restCleanProps } = cleanItemProps;
61
- // Build final postfix: submenu icon, custom postfix or HotKeys hint
62
- const finalPostfix = submenuContext
63
- ? postfix ?? _jsx(RightIcon, {})
64
- : postfix ?? (hotkeys ? _jsx(HotKeys, { children: hotkeys }) : undefined);
65
- const checkIcon = isSelectable && isSelected
66
- ? getSelectionTypeIcon(selectionIcon)
67
- : undefined;
42
+ const { suffix, description, icon, tooltip, mods: itemMods, qa: itemQa, textValue, ...restCleanProps } = cleanItemProps;
43
+ // Build final suffix: submenu icon, custom suffix or HotKeys hint
44
+ const finalSuffix = submenuContext
45
+ ? suffix ?? _jsx(RightIcon, {})
46
+ : suffix ?? (hotkeys ? _jsx(HotKeys, { children: hotkeys }) : undefined);
47
+ // Selection indicator will be handled by ItemBase component
68
48
  const isVirtualFocused = state.selectionManager.focusedKey === key;
69
49
  const mods = {
70
50
  ...itemMods,
71
51
  focused: isFocused || isVirtualFocused,
72
52
  pressed: isPressed,
73
- selectionIcon: !!selectionIcon,
74
- selectable: isSelectable,
75
53
  selected: isSelected,
76
54
  disabled: isDisabled,
77
55
  submenu: !!submenuContext,
78
56
  };
79
- // Register global hotkey if provided
80
- useHotkeys(typeof hotkeys === 'string' ? hotkeys.toLowerCase() : '', () => {
81
- if (!hotkeys)
82
- return;
83
- if (isDisabledKey || isDisabled)
84
- return;
85
- // Simulate a click on the menu item so all existing handlers run
86
- if (elementRef.current) {
87
- elementRef.current.click();
88
- }
89
- }, {
90
- enableOnContentEditable: true,
91
- enabled: !!hotkeys,
92
- preventDefault: true,
93
- enableOnFormTags: true,
94
- }, [hotkeys, isDisabledKey, isDisabled]);
95
- return (_jsx(FocusRing, { children: _jsx(StyledItem, { ...mergeProps(menuItemProps, restCleanProps, {
96
- 'data-menu-trigger': true,
57
+ return (_jsx(FocusRing, { children: _jsx(ItemBase, { ...mergeProps(menuItemProps, restCleanProps, {
58
+ 'data-popover-trigger': true,
97
59
  qa: itemQa ? itemQa : `MenuItem-${key}`,
98
60
  mods,
99
61
  styles,
100
- 'aria-disabled': isDisabled || undefined,
101
62
  'data-size': size,
63
+ as: 'li',
64
+ labelProps,
65
+ descriptionProps,
66
+ keyboardShortcutProps,
102
67
  'aria-haspopup': submenuContext ? 'menu' : undefined,
103
68
  'aria-expanded': submenuContext?.isOpen,
104
69
  'data-has-submenu': submenuContext ? true : undefined,
@@ -113,13 +78,7 @@ export function MenuItem(props) {
113
78
  : menuItemProps.onKeyDown,
114
79
  onMouseEnter: submenuContext?.onMouseEnter || menuItemProps.onMouseEnter,
115
80
  onMouseLeave: submenuContext?.onMouseLeave || menuItemProps.onMouseLeave,
116
- }), ref: elementRef, children: _jsx(ClearSlots, { children: _jsxs(SlotProvider, { slots: {
117
- text: { className: 'itemLabel', ...labelProps },
118
- end: { className: 'end', ...descriptionProps },
119
- icon: { className: 'icon' },
120
- description: { className: 'description', ...descriptionProps },
121
- keyboard: { className: 'keyboard', ...keyboardShortcutProps },
122
- }, children: [checkIcon ? (_jsx("div", { "data-element": "ButtonIcon", children: checkIcon })) : null, icon ? _jsx("div", { "data-element": "ButtonIcon", children: icon }) : null, _jsxs(Space, { gap: "1x", placeContent: "space-between", overflow: "clip", width: "100%", children: [_jsxs(Space, { flow: "column", gap: "0", width: "100%", children: [_jsx(Text, { ellipsis: true, color: "inherit", children: rendered }), description ? (_jsx(Text, { nowrap: true, ellipsis: true, "data-element": "Description", preset: "t4", color: "#dark-03", children: description })) : null] }), finalPostfix && getPostfix(finalPostfix)] })] }) }) }) }));
81
+ }), ref: elementRef, icon: icon, suffix: finalSuffix, description: description, hotkeys: hotkeys, tooltip: tooltip, defaultTooltipPlacement: "right", isSelected: isSelectable ? isSelected : undefined, isDisabled: isDisabled, size: size === 'small' ? 'small' : 'medium', children: rendered }) }));
123
82
  }
124
83
 
125
84
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -18,7 +18,7 @@ export function MenuSection(props) {
18
18
  heading,
19
19
  'aria-label': item['aria-label'],
20
20
  });
21
- return (_jsx(_Fragment, { children: _jsxs(StyledSection, { ...itemProps, styles: styles, children: [heading && (_jsx(StyledSectionHeading, { ...headingProps, styles: headingStyles, children: heading })), _jsx(StyledMenu, { ...groupProps, mods: { section: true }, children: [...item.childNodes].map((node) => {
21
+ return (_jsx(_Fragment, { children: _jsxs(StyledSection, { ...itemProps, styles: styles, children: [heading && (_jsx(StyledSectionHeading, { ...headingProps, size: size, styles: headingStyles, children: heading })), _jsx(StyledMenu, { ...groupProps, mods: { section: true }, children: [...item.childNodes].map((node) => {
22
22
  let menuItem = (_jsx(MenuItem, { item: node, styles: itemStyles, state: state, size: size, onAction: node.onAction }, node.key));
23
23
  // Apply tooltip wrapper if tooltip property is provided
24
24
  if (node.props.tooltip) {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -106,7 +106,7 @@ function MenuTrigger(props, ref) {
106
106
  }
107
107
  else {
108
108
  overlay = (_jsx(Popover, { ref: menuPopoverRef, hideArrow: true, isNonModal: true, isOpen: state.isOpen, style: positionProps.style, placement: placement, shouldCloseOnInteractOutside: (el) => {
109
- const menuTriggerEl = el.closest('[data-menu-trigger]');
109
+ const menuTriggerEl = el.closest('[data-popover-trigger]');
110
110
  // If no menu trigger was clicked, allow closing
111
111
  if (!menuTriggerEl)
112
112
  return true;
@@ -124,7 +124,7 @@ function MenuTrigger(props, ref) {
124
124
  return false;
125
125
  }, onClose: state.close, children: contents }));
126
126
  }
127
- return (_jsxs(Fragment, { children: [_jsx(SlotProvider, { slots: { actionButton: { holdAffordance: trigger === 'longPress' } }, children: !isDummy ? (_jsx(PressResponder, { ...menuTriggerProps, ref: menuTriggerRef, "data-menu-trigger": true, isPressed: state.isOpen, children: menuTrigger })) : null }), _jsx(MenuContext.Provider, { value: menuContext, children: overlay })] }));
127
+ return (_jsxs(Fragment, { children: [_jsx(SlotProvider, { slots: { actionButton: { holdAffordance: trigger === 'longPress' } }, children: !isDummy ? (_jsx(PressResponder, { ...menuTriggerProps, ref: menuTriggerRef, "data-popover-trigger": true, isPressed: state.isOpen, children: menuTrigger })) : null }), _jsx(MenuContext.Provider, { value: menuContext, children: overlay })] }));
128
128
  }
129
129
  /**
130
130
  * The MenuTrigger serves as a wrapper around a Menu and its associated trigger,
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
8
- import { DEFAULT_BUTTON_STYLES, DEFAULT_NEUTRAL_STYLES } from '..';
8
+ import { DEFAULT_NEUTRAL_STYLES } from '../../../data/item-themes';
9
9
  import { tasty } from '../../../tasty';
10
10
  import { Space } from '../../layout/Space';
11
+ import { DEFAULT_BUTTON_STYLES } from '../Button/Button';
11
12
  export const StyledMenuWrapper = tasty({
12
13
  qa: 'Menu',
13
14
  styles: {
@@ -77,13 +78,19 @@ export const StyledHeader = tasty(Space, {
77
78
  placeContent: 'space-between',
78
79
  placeItems: 'center',
79
80
  whiteSpace: 'nowrap',
80
- padding: '.5x 1.5x',
81
- height: {
82
- '': 'min $size-md',
83
- '[data-size="large"]': 'min $size-lg',
84
- },
81
+ padding: '.5x $inline-padding',
82
+ height: 'min $size',
85
83
  boxSizing: 'border-box',
86
84
  border: 'bottom',
85
+ $size: {
86
+ '': '$size-md',
87
+ '[data-size="small"]': '$size-sm',
88
+ '[data-size="medium"]': '$size-md',
89
+ '[data-size="large"]': '$size-lg',
90
+ },
91
+ '$inline-padding': 'max($min-inline-padding, (($size - 1lh) / 2 + $inline-compensation))',
92
+ '$inline-compensation': '1x',
93
+ '$min-inline-padding': '1x',
87
94
  },
88
95
  });
89
96
  export const StyledFooter = tasty(Space, {
@@ -194,10 +201,22 @@ export const StyledSectionHeading = tasty(Space, {
194
201
  styles: {
195
202
  color: '#dark-04',
196
203
  preset: 'c2',
197
- padding: '.5x 1x',
198
204
  height: '3x',
199
205
  placeContent: 'center space-between',
200
206
  align: 'start',
207
+ padding: {
208
+ '': '.5x $inline-padding',
209
+ prefix: '0 $inline-padding 0 .5x',
210
+ },
211
+ $size: {
212
+ '': '$size-md',
213
+ '[data-size="small"]': '$size-sm',
214
+ '[data-size="medium"]': '$size-md',
215
+ '[data-size="large"]': '$size-lg',
216
+ },
217
+ '$inline-padding': 'max($min-inline-padding, (($size - 1lh) / 2 + $inline-compensation - 1bw))',
218
+ '$inline-compensation': '.5x',
219
+ '$min-inline-padding': '1x',
201
220
  },
202
221
  });
203
222
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -10,6 +10,7 @@ import { ButtonGroup } from './ButtonGroup/ButtonGroup';
10
10
  const Button = Object.assign(__Button, { Group: ButtonGroup });
11
11
  export * from './Button';
12
12
  export * from './Action/Action';
13
+ export * from './ItemButton';
13
14
  export * from './Menu';
14
15
  export * from './CommandMenu';
15
16
  export * from './use-action';
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -19,9 +19,10 @@ import { MenuTrigger } from './Menu';
19
19
  *
20
20
  * @param Component - A React component that represents the menu content (Menu or CommandMenu).
21
21
  * @param defaultTriggerProps - Default props to pass to the MenuTrigger.
22
+ * @param defaultMenuProps - Default props to pass to the Menu component.
22
23
  * @returns An object with `anchorRef` to position the menu, `open` function to open the menu with provided props, `close` function to close the menu, and `rendered` JSX element to include in your component tree.
23
24
  */
24
- export function useAnchoredMenu(Component, defaultTriggerProps) {
25
+ export function useAnchoredMenu(Component, defaultTriggerProps, defaultMenuProps) {
25
26
  const [isOpen, setIsOpen] = useState(false);
26
27
  const [componentProps, setComponentProps] = useState(null);
27
28
  const [triggerProps, setTriggerProps] = useState(null);
@@ -62,15 +63,23 @@ export function useAnchoredMenu(Component, defaultTriggerProps) {
62
63
  }
63
64
  }
64
65
  // 'open' accepts props required by the Component and opens the menu
65
- const open = useEvent((props, triggerProps) => {
66
+ const open = useEvent((props = {}, triggerProps) => {
66
67
  setupCheck();
67
- setComponentProps(props);
68
+ // Merge defaultMenuProps with provided props
69
+ const finalProps = defaultMenuProps
70
+ ? { ...defaultMenuProps, ...props }
71
+ : props;
72
+ setComponentProps(finalProps);
68
73
  setTriggerProps(triggerProps ?? null);
69
74
  setIsOpen(true);
70
75
  });
71
76
  const update = useEvent((props, triggerProps) => {
72
77
  setupCheck();
73
- setComponentProps(props);
78
+ // Merge defaultMenuProps with provided props
79
+ const finalProps = defaultMenuProps
80
+ ? { ...defaultMenuProps, ...props }
81
+ : props;
82
+ setComponentProps(finalProps);
74
83
  setTriggerProps(triggerProps ?? null);
75
84
  });
76
85
  const close = useEvent(() => {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -105,7 +105,7 @@ export function useContextMenu(Component, defaultTriggerProps, defaultMenuProps)
105
105
  return { x: clampedX, y: clampedY };
106
106
  };
107
107
  // 'open' accepts props, trigger props, and optional event for positioning, then opens the menu
108
- const open = useEvent((props, triggerProps, event) => {
108
+ const open = useEvent((props = {}, triggerProps, event) => {
109
109
  setupCheck();
110
110
  // Ensure the target element can serve as a positioning context for the
111
111
  // invisible target element. If the consumer hasn't explicitly set
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.72.3
4
+ * @cube-dev/ui-kit v0.73.1
5
5
  * Released under the MIT license.
6
6
  */
7
7