@cube-dev/ui-kit 0.64.1 → 0.65.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 (474) hide show
  1. package/CHANGELOG.md +20 -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/OpenTrasition.js +1 -1
  21. package/es/components/Root.js +1 -1
  22. package/es/components/actions/Action/Action.js +1 -1
  23. package/es/components/actions/Button/Button.js +1 -1
  24. package/es/components/actions/Button/index.js +1 -1
  25. package/es/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  26. package/es/components/actions/index.js +1 -1
  27. package/es/components/actions/use-action.js +1 -1
  28. package/es/components/content/ActiveZone/ActiveZone.js +1 -1
  29. package/es/components/content/Alert/Alert.js +1 -1
  30. package/es/components/content/Alert/index.js +1 -1
  31. package/es/components/content/Alert/types.js +1 -1
  32. package/es/components/content/Alert/use-alert.js +1 -1
  33. package/es/components/content/Avatar/Avatar.js +1 -1
  34. package/es/components/content/Badge/Badge.js +1 -1
  35. package/es/components/content/Card/Card.js +1 -1
  36. package/es/components/content/Content.js +1 -1
  37. package/es/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  38. package/es/components/content/CopyPasteBlock/index.js +1 -1
  39. package/es/components/content/CopySnippet/CopySnippet.js +1 -1
  40. package/es/components/content/CopySnippet/index.js +1 -1
  41. package/es/components/content/Divider.js +1 -1
  42. package/es/components/content/Footer.js +1 -1
  43. package/es/components/content/Header.js +1 -1
  44. package/es/components/content/HotKeys/HotKeys.js +25 -0
  45. package/es/components/content/HotKeys/index.js +10 -0
  46. package/es/components/content/Paragraph.js +1 -1
  47. package/es/components/content/Placeholder/Placeholder.js +1 -1
  48. package/es/components/content/PrismCode/PrismCode.js +1 -1
  49. package/es/components/content/PrismCode/prismSetup.js +1 -1
  50. package/es/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  51. package/es/components/content/Result/Result.js +1 -1
  52. package/es/components/content/Skeleton/Skeleton.js +1 -1
  53. package/es/components/content/Tag/Tag.js +5 -4
  54. package/es/components/content/Text.js +1 -1
  55. package/es/components/content/Title.js +1 -1
  56. package/es/components/fields/Checkbox/Checkbox.js +1 -1
  57. package/es/components/fields/Checkbox/CheckboxGroup.js +1 -1
  58. package/es/components/fields/Checkbox/context.js +1 -1
  59. package/es/components/fields/Checkbox/index.js +1 -1
  60. package/es/components/fields/ComboBox/ComboBox.js +1 -1
  61. package/es/components/fields/ComboBox/index.js +1 -1
  62. package/es/components/fields/DatePicker/DateInput.js +1 -1
  63. package/es/components/fields/DatePicker/DateInputBase.js +1 -1
  64. package/es/components/fields/DatePicker/DatePicker.js +1 -1
  65. package/es/components/fields/DatePicker/DatePickerButton.js +1 -1
  66. package/es/components/fields/DatePicker/DatePickerElement.js +1 -1
  67. package/es/components/fields/DatePicker/DatePickerInput.js +1 -1
  68. package/es/components/fields/DatePicker/DatePickerSegment.js +1 -1
  69. package/es/components/fields/DatePicker/DateRangePicker.js +1 -1
  70. package/es/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  71. package/es/components/fields/DatePicker/TimeInput.js +1 -1
  72. package/es/components/fields/DatePicker/index.js +1 -1
  73. package/es/components/fields/DatePicker/intl.js +1 -1
  74. package/es/components/fields/DatePicker/parseDate.js +1 -1
  75. package/es/components/fields/DatePicker/props.js +1 -1
  76. package/es/components/fields/DatePicker/types.js +1 -1
  77. package/es/components/fields/DatePicker/utils.js +1 -1
  78. package/es/components/fields/FileInput/FileInput.js +1 -1
  79. package/es/components/fields/Input/Input.js +1 -1
  80. package/es/components/fields/Input/index.js +1 -1
  81. package/es/components/fields/ListBox/ListBox.js +138 -158
  82. package/es/components/fields/ListBox/index.js +1 -1
  83. package/es/components/fields/NumberInput/NumberInput.js +1 -1
  84. package/es/components/fields/NumberInput/StepButton.js +1 -1
  85. package/es/components/fields/PasswordInput/PasswordInput.js +1 -1
  86. package/es/components/fields/RadioGroup/Radio.js +1 -1
  87. package/es/components/fields/RadioGroup/RadioGroup.js +1 -1
  88. package/es/components/fields/RadioGroup/context.js +1 -1
  89. package/es/components/fields/RadioGroup/index.js +1 -1
  90. package/es/components/fields/SearchInput/SearchInput.js +1 -1
  91. package/es/components/fields/SearchInput/index.js +1 -1
  92. package/es/components/fields/Select/Select.js +2 -2
  93. package/es/components/fields/Select/index.js +1 -1
  94. package/es/components/fields/Slider/Gradation.js +1 -1
  95. package/es/components/fields/Slider/Header.js +1 -1
  96. package/es/components/fields/Slider/RangeSlider.js +1 -1
  97. package/es/components/fields/Slider/Slider.js +1 -1
  98. package/es/components/fields/Slider/SliderBase.js +1 -1
  99. package/es/components/fields/Slider/SliderInput.js +1 -1
  100. package/es/components/fields/Slider/SliderThumb.js +1 -1
  101. package/es/components/fields/Slider/SliderTrack.js +1 -1
  102. package/es/components/fields/Slider/elements.js +1 -1
  103. package/es/components/fields/Slider/index.js +1 -1
  104. package/es/components/fields/Slider/types.js +1 -1
  105. package/es/components/fields/Switch/Switch.js +1 -1
  106. package/es/components/fields/Switch/index.js +1 -1
  107. package/es/components/fields/TextArea/TextArea.js +1 -1
  108. package/es/components/fields/TextArea/index.js +1 -1
  109. package/es/components/fields/TextInput/TextInput.js +1 -1
  110. package/es/components/fields/TextInput/TextInputBase.js +1 -1
  111. package/es/components/fields/TextInput/index.js +1 -1
  112. package/es/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  113. package/es/components/fields/TextInputMapper/index.js +1 -1
  114. package/es/components/fields/index.js +1 -1
  115. package/es/components/form/FieldWrapper/FieldWrapper.js +1 -1
  116. package/es/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  117. package/es/components/form/FieldWrapper/index.js +1 -1
  118. package/es/components/form/FieldWrapper/types.js +1 -1
  119. package/es/components/form/Form/Field.js +1 -1
  120. package/es/components/form/Form/Form.js +1 -1
  121. package/es/components/form/Form/ResetButton/ResetButton.js +1 -1
  122. package/es/components/form/Form/ResetButton/index.js +1 -1
  123. package/es/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  124. package/es/components/form/Form/SubmitButton/index.js +1 -1
  125. package/es/components/form/Form/SubmitError.js +1 -1
  126. package/es/components/form/Form/index.js +1 -1
  127. package/es/components/form/Form/types.js +1 -1
  128. package/es/components/form/Form/use-field/index.js +1 -1
  129. package/es/components/form/Form/use-field/types.js +1 -1
  130. package/es/components/form/Form/use-field/use-field-props.js +1 -1
  131. package/es/components/form/Form/use-field/use-field.js +1 -1
  132. package/es/components/form/Form/use-form.js +1 -1
  133. package/es/components/form/Form/validation.js +1 -1
  134. package/es/components/form/Label.js +1 -1
  135. package/es/components/form/index.js +1 -1
  136. package/es/components/form/wrapper.js +1 -1
  137. package/es/components/layout/Flex.js +1 -1
  138. package/es/components/layout/Flow.js +1 -1
  139. package/es/components/layout/Grid.js +1 -1
  140. package/es/components/layout/Panel.js +1 -1
  141. package/es/components/layout/Prefix.js +1 -1
  142. package/es/components/layout/ResizablePanel.js +1 -1
  143. package/es/components/layout/Space.js +1 -1
  144. package/es/components/layout/Suffix.js +1 -1
  145. package/es/components/navigation/LegacyTabs/LegacyTabs.js +1 -1
  146. package/es/components/navigation/Link/Link.js +1 -1
  147. package/es/components/organisms/FileTabs/FileTabs.js +1 -1
  148. package/es/components/organisms/Modal/Modal.js +1 -1
  149. package/es/components/organisms/StatsCard/StatsCard.js +1 -1
  150. package/es/components/other/Base64Upload/Base64Upload.js +1 -1
  151. package/es/components/other/Calendar/Calendar.js +1 -1
  152. package/es/components/other/Calendar/CalendarCell.js +1 -1
  153. package/es/components/other/Calendar/CalendarGrid.js +1 -1
  154. package/es/components/other/Calendar/RangeCalendar.js +1 -1
  155. package/es/components/other/CloudLogo/CloudLogo.js +1 -1
  156. package/es/components/overlays/AlertDialog/AlertDialog.js +1 -1
  157. package/es/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  158. package/es/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  159. package/es/components/overlays/AlertDialog/index.js +1 -1
  160. package/es/components/overlays/AlertDialog/types.js +1 -1
  161. package/es/components/overlays/Dialog/Dialog.js +1 -1
  162. package/es/components/overlays/Dialog/DialogContainer.js +1 -1
  163. package/es/components/overlays/Dialog/DialogForm.js +1 -1
  164. package/es/components/overlays/Dialog/DialogTrigger.js +1 -1
  165. package/es/components/overlays/Dialog/context.js +1 -1
  166. package/es/components/overlays/Dialog/dialog-container.js +1 -1
  167. package/es/components/overlays/Dialog/index.js +1 -1
  168. package/es/components/overlays/Modal/Modal.js +1 -1
  169. package/es/components/overlays/Modal/OpenTransition.js +1 -1
  170. package/es/components/overlays/Modal/Overlay.js +1 -1
  171. package/es/components/overlays/Modal/Popover.js +1 -1
  172. package/es/components/overlays/Modal/Tray.js +1 -1
  173. package/es/components/overlays/Modal/Underlay.js +1 -1
  174. package/es/components/overlays/Modal/index.js +1 -1
  175. package/es/components/overlays/Modal/types.js +1 -1
  176. package/es/components/overlays/NewNotifications/Bar/FloatingNotification.js +1 -1
  177. package/es/components/overlays/NewNotifications/Bar/NotificationsBar.js +1 -1
  178. package/es/components/overlays/NewNotifications/Bar/TransitionComponent.js +1 -1
  179. package/es/components/overlays/NewNotifications/Bar/index.js +1 -1
  180. package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogTrigger.js +1 -1
  181. package/es/components/overlays/NewNotifications/Dialog/index.js +1 -1
  182. package/es/components/overlays/NewNotifications/Notification.js +1 -1
  183. package/es/components/overlays/NewNotifications/NotificationView/NotificationAction.js +1 -1
  184. package/es/components/overlays/NewNotifications/NotificationView/NotificationCloseButton.js +1 -1
  185. package/es/components/overlays/NewNotifications/NotificationView/NotificationDescription.js +1 -1
  186. package/es/components/overlays/NewNotifications/NotificationView/NotificationFooter.js +1 -1
  187. package/es/components/overlays/NewNotifications/NotificationView/NotificationHeader.js +1 -1
  188. package/es/components/overlays/NewNotifications/NotificationView/NotificationIcon.js +1 -1
  189. package/es/components/overlays/NewNotifications/NotificationView/NotificationProvider.js +1 -1
  190. package/es/components/overlays/NewNotifications/NotificationView/NotificationView.js +1 -1
  191. package/es/components/overlays/NewNotifications/NotificationView/index.js +1 -1
  192. package/es/components/overlays/NewNotifications/NotificationView/types.js +1 -1
  193. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsContext.js +11 -0
  194. package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.js +3 -3
  195. package/es/components/overlays/NewNotifications/NotificationsContext/index.js +3 -2
  196. package/es/components/overlays/NewNotifications/NotificationsContext/use-notifications.js +1 -1
  197. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsList.js +1 -1
  198. package/es/components/overlays/NewNotifications/NotificationsList/NotificationsListItem.js +1 -1
  199. package/es/components/overlays/NewNotifications/NotificationsList/index.js +1 -1
  200. package/es/components/overlays/NewNotifications/NotificationsList/types.js +1 -1
  201. package/es/components/overlays/NewNotifications/hooks/index.js +1 -1
  202. package/es/components/overlays/NewNotifications/hooks/types.js +1 -1
  203. package/es/components/overlays/NewNotifications/hooks/use-notification-list-item.js +1 -1
  204. package/es/components/overlays/NewNotifications/hooks/use-notifications-api.js +1 -1
  205. package/es/components/overlays/NewNotifications/hooks/use-notifications-list.js +1 -1
  206. package/es/components/overlays/NewNotifications/hooks/use-notifications-observer.js +2 -2
  207. package/es/components/overlays/NewNotifications/index.js +2 -2
  208. package/es/components/overlays/NewNotifications/types.js +1 -1
  209. package/es/components/overlays/Notification/Notification.js +1 -1
  210. package/es/components/overlays/OverlayWrapper.js +1 -1
  211. package/es/components/overlays/Toasts/Toast.js +1 -1
  212. package/es/components/overlays/Toasts/index.js +1 -1
  213. package/es/components/overlays/Toasts/types.js +1 -1
  214. package/es/components/overlays/Toasts/use-toasts-api.js +1 -1
  215. package/es/components/overlays/Tooltip/Tooltip.js +1 -1
  216. package/es/components/overlays/Tooltip/TooltipProvider.js +1 -1
  217. package/es/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  218. package/es/components/overlays/Tooltip/context.js +1 -1
  219. package/es/components/overlays/Tooltip/index.js +1 -1
  220. package/es/components/pickers/Menu/Menu.js +39 -33
  221. package/es/components/pickers/Menu/MenuButton.js +4 -5
  222. package/es/components/pickers/Menu/MenuItem.js +59 -20
  223. package/es/components/pickers/Menu/MenuSection.js +12 -4
  224. package/es/components/pickers/Menu/MenuTrigger.js +1 -1
  225. package/es/components/pickers/Menu/context.js +1 -1
  226. package/es/components/pickers/Menu/styled.js +55 -12
  227. package/es/components/portal/Portal.js +1 -1
  228. package/es/components/portal/PortalProvider.js +1 -1
  229. package/es/components/portal/index.js +1 -1
  230. package/es/components/portal/storybook/templates/CustomRoot.js +1 -1
  231. package/es/components/portal/storybook/templates/PortalOrder.js +1 -1
  232. package/es/components/portal/storybook/templates/basic.js +1 -1
  233. package/es/components/portal/storybook/templates/index.js +1 -1
  234. package/es/components/portal/types.js +1 -1
  235. package/es/components/portal/usePortal.js +1 -1
  236. package/es/components/shared/InvalidIcon.js +1 -1
  237. package/es/components/shared/ValidIcon.js +1 -1
  238. package/es/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  239. package/es/components/status/LoadingAnimation/index.js +1 -1
  240. package/es/components/status/Spin/Cube.js +1 -1
  241. package/es/components/status/Spin/InternalSpinner.js +1 -1
  242. package/es/components/status/Spin/Spin.js +1 -1
  243. package/es/components/status/Spin/SpinsContainer.js +1 -1
  244. package/es/components/status/Spin/index.js +1 -1
  245. package/es/components/status/Spin/types.js +1 -1
  246. package/es/components/status/index.js +1 -1
  247. package/es/data/themes.js +1 -1
  248. package/es/icons/AdjustmentsHorizontalIcon.js +1 -1
  249. package/es/icons/AdjustmentsIcon.js +1 -1
  250. package/es/icons/AiIcon.js +1 -1
  251. package/es/icons/AreaChartIcon.js +1 -1
  252. package/es/icons/BackwardIcon.js +1 -1
  253. package/es/icons/BarChartIcon.js +1 -1
  254. package/es/icons/BellFilledIcon.js +1 -1
  255. package/es/icons/BellIcon.js +1 -1
  256. package/es/icons/BooleanIcon.js +1 -1
  257. package/es/icons/CalendarEditIcon.js +1 -1
  258. package/es/icons/CalendarIcon.js +1 -1
  259. package/es/icons/CaretDownIcon.js +1 -1
  260. package/es/icons/CaretUpIcon.js +1 -1
  261. package/es/icons/ChartAreaStackedIcon.js +12 -0
  262. package/es/icons/ChartAreaStackedPercentageIcon.js +12 -0
  263. package/es/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  264. package/es/icons/ChartBarGroupedIcon.js +1 -1
  265. package/es/icons/ChartBarHorizontalIcon.js +2 -2
  266. package/es/icons/ChartBarLineIcon.js +1 -1
  267. package/es/icons/ChartBarStackedHorizontalIcon.js +2 -2
  268. package/es/icons/ChartBarStackedIcon.js +1 -1
  269. package/es/icons/ChartBarStackedPercentageHorizontalIcon.js +2 -2
  270. package/es/icons/ChartBarStackedPercentageIcon.js +2 -2
  271. package/es/icons/ChartBoxPlot2Icon.js +1 -1
  272. package/es/icons/ChartBoxPlotIcon.js +1 -1
  273. package/es/icons/ChartBubbleIcon.js +1 -1
  274. package/es/icons/ChartDonut2Icon.js +1 -1
  275. package/es/icons/ChartFunnelIcon.js +12 -0
  276. package/es/icons/ChartPie2Icon.js +1 -1
  277. package/es/icons/ChartScatterIcon.js +1 -1
  278. package/es/icons/CheckCircleFilledIcon.js +1 -1
  279. package/es/icons/CheckCircleIcon.js +1 -1
  280. package/es/icons/CheckIcon.js +1 -1
  281. package/es/icons/CircleFilledIcon.js +1 -1
  282. package/es/icons/ClearIcon.js +1 -1
  283. package/es/icons/CloseCircleFilledIcon.js +1 -1
  284. package/es/icons/CloseCircleIcon.js +1 -1
  285. package/es/icons/CloseIcon.js +1 -1
  286. package/es/icons/CodeIcon.js +1 -1
  287. package/es/icons/CopyIcon.js +1 -1
  288. package/es/icons/CountIcon.js +1 -1
  289. package/es/icons/CubeIcon.js +1 -1
  290. package/es/icons/DangerIcon.js +1 -1
  291. package/es/icons/DashboardIcon.js +1 -1
  292. package/es/icons/DatabaseIcon.js +1 -1
  293. package/es/icons/DirectionIcon.js +1 -1
  294. package/es/icons/DonutIcon.js +1 -1
  295. package/es/icons/DownIcon.js +1 -1
  296. package/es/icons/EditIcon.js +1 -1
  297. package/es/icons/ExclamationCircleFilledIcon.js +1 -1
  298. package/es/icons/ExclamationCircleIcon.js +1 -1
  299. package/es/icons/ExclamationIcon.js +1 -1
  300. package/es/icons/EyeIcon.js +1 -1
  301. package/es/icons/EyeInvisibleIcon.js +1 -1
  302. package/es/icons/FilterIcon.js +1 -1
  303. package/es/icons/FolderFilledIcon.js +1 -1
  304. package/es/icons/FolderIcon.js +1 -1
  305. package/es/icons/FolderOpenFilledIcon.js +1 -1
  306. package/es/icons/FolderOpenIcon.js +1 -1
  307. package/es/icons/ForwardIcon.js +1 -1
  308. package/es/icons/HierarchyIcon.js +1 -1
  309. package/es/icons/Icon.js +1 -1
  310. package/es/icons/InfoCircleIcon.js +1 -1
  311. package/es/icons/InfoIcon.js +1 -1
  312. package/es/icons/KeyIcon.js +1 -1
  313. package/es/icons/LeftIcon.js +1 -1
  314. package/es/icons/LineChartIcon.js +1 -1
  315. package/es/icons/LoadingIcon.js +1 -1
  316. package/es/icons/LockFilledIcon.js +1 -1
  317. package/es/icons/LockIcon.js +1 -1
  318. package/es/icons/MoreIcon.js +1 -1
  319. package/es/icons/NotAllowedIcon.js +1 -1
  320. package/es/icons/NumberIcon.js +1 -1
  321. package/es/icons/PauseCircleFilledIcon.js +1 -1
  322. package/es/icons/PauseCircleIcon.js +1 -1
  323. package/es/icons/PauseIcon.js +1 -1
  324. package/es/icons/PieChartIcon.js +1 -1
  325. package/es/icons/PlayCircleIcon.js +1 -1
  326. package/es/icons/PlayIcon.js +1 -1
  327. package/es/icons/PlusIcon.js +1 -1
  328. package/es/icons/ReloadIcon.js +1 -1
  329. package/es/icons/ReportIcon.js +1 -1
  330. package/es/icons/ReturnIcon.js +1 -1
  331. package/es/icons/RightIcon.js +1 -1
  332. package/es/icons/SchemeIcon.js +1 -1
  333. package/es/icons/SearchIcon.js +1 -1
  334. package/es/icons/SettingsIcon.js +1 -1
  335. package/es/icons/ShieldFilledIcon.js +1 -1
  336. package/es/icons/ShieldIcon.js +1 -1
  337. package/es/icons/SlashIcon.js +1 -1
  338. package/es/icons/SparklesIcon.js +1 -1
  339. package/es/icons/SqlIcon.js +1 -1
  340. package/es/icons/StatsIcon.js +1 -1
  341. package/es/icons/StopIcon.js +1 -1
  342. package/es/icons/StringIcon.js +1 -1
  343. package/es/icons/SwitchIcon.js +1 -1
  344. package/es/icons/TableIcon.js +1 -1
  345. package/es/icons/ThumbsDownIcon.js +1 -1
  346. package/es/icons/ThumbsUpIcon.js +1 -1
  347. package/es/icons/ThunderboltCrossedIcon.js +1 -1
  348. package/es/icons/ThunderboltFilledIcon.js +1 -1
  349. package/es/icons/ThunderboltIcon.js +1 -1
  350. package/es/icons/TimeIcon.js +1 -1
  351. package/es/icons/UnlockIcon.js +1 -1
  352. package/es/icons/UpIcon.js +1 -1
  353. package/es/icons/UserGroupIcon.js +1 -1
  354. package/es/icons/UserIcon.js +1 -1
  355. package/es/icons/UserLockIcon.js +1 -1
  356. package/es/icons/ViewIcon.js +1 -1
  357. package/es/icons/WarningFilledIcon.js +1 -1
  358. package/es/icons/WarningIcon.js +1 -1
  359. package/es/icons/add-new-icon.js +1 -1
  360. package/es/icons/index.js +4 -1
  361. package/es/icons/wrap-icon.js +1 -1
  362. package/es/index.js +2 -1
  363. package/es/provider.js +1 -1
  364. package/es/providers/TrackingProvider.js +1 -1
  365. package/es/services/notification.js +1 -1
  366. package/es/shared/form.js +1 -1
  367. package/es/shared/index.js +1 -1
  368. package/es/stories/Form.legacy-stories.js +1 -1
  369. package/es/stories/FormFieldArgs.js +1 -1
  370. package/es/stories/Layout.stories.js +1 -1
  371. package/es/stories/Tasty.stories.js +1 -1
  372. package/es/stories/components/ConfirmDeletionDialogForm.js +1 -1
  373. package/es/stories/components/DialogFormApp.js +1 -1
  374. package/es/stories/components/StyledButton.js +1 -1
  375. package/es/stories/lists/baseProps.js +1 -1
  376. package/es/tasty/index.js +1 -1
  377. package/es/tasty/providers/BreakpointsProvider.js +1 -1
  378. package/es/tasty/styles/align.js +1 -1
  379. package/es/tasty/styles/border.js +1 -1
  380. package/es/tasty/styles/boxShadow.combinator.js +1 -1
  381. package/es/tasty/styles/color.js +1 -1
  382. package/es/tasty/styles/createStyle.js +1 -1
  383. package/es/tasty/styles/dimension.js +1 -1
  384. package/es/tasty/styles/display.js +1 -1
  385. package/es/tasty/styles/fade.js +1 -1
  386. package/es/tasty/styles/fill.js +1 -1
  387. package/es/tasty/styles/flow.js +1 -1
  388. package/es/tasty/styles/font.js +1 -1
  389. package/es/tasty/styles/fontStyle.js +1 -1
  390. package/es/tasty/styles/gap.js +1 -1
  391. package/es/tasty/styles/groupRadius.js +1 -1
  392. package/es/tasty/styles/height.js +1 -1
  393. package/es/tasty/styles/index.js +1 -1
  394. package/es/tasty/styles/inset.js +1 -1
  395. package/es/tasty/styles/justify.js +1 -1
  396. package/es/tasty/styles/list.js +1 -1
  397. package/es/tasty/styles/margin.js +1 -1
  398. package/es/tasty/styles/marginBlock.js +1 -1
  399. package/es/tasty/styles/marginInline.js +1 -1
  400. package/es/tasty/styles/outline.js +1 -1
  401. package/es/tasty/styles/padding.js +1 -1
  402. package/es/tasty/styles/paddingBlock.js +1 -1
  403. package/es/tasty/styles/paddingInline.js +1 -1
  404. package/es/tasty/styles/place.js +1 -1
  405. package/es/tasty/styles/predefined.js +1 -1
  406. package/es/tasty/styles/preset.js +1 -1
  407. package/es/tasty/styles/radius.js +1 -1
  408. package/es/tasty/styles/reset.js +1 -1
  409. package/es/tasty/styles/scrollbar.js +1 -1
  410. package/es/tasty/styles/shadow.js +1 -1
  411. package/es/tasty/styles/styledScrollbar.js +1 -1
  412. package/es/tasty/styles/transition.js +1 -1
  413. package/es/tasty/styles/types.js +1 -1
  414. package/es/tasty/styles/width.js +1 -1
  415. package/es/tasty/tasty.js +1 -1
  416. package/es/tasty/types.js +1 -1
  417. package/es/tasty/utils/cache-wrapper.js +1 -1
  418. package/es/tasty/utils/case-converter.js +1 -1
  419. package/es/tasty/utils/colors.js +1 -1
  420. package/es/tasty/utils/dotize.js +1 -1
  421. package/es/tasty/utils/filterBaseProps.js +4 -9
  422. package/es/tasty/utils/getDisplayName.js +1 -1
  423. package/es/tasty/utils/getModCombinations.js +1 -1
  424. package/es/tasty/utils/mergeStyles.js +1 -1
  425. package/es/tasty/utils/modAttrs.js +1 -1
  426. package/es/tasty/utils/renderStyles.js +1 -1
  427. package/es/tasty/utils/responsive.js +1 -1
  428. package/es/tasty/utils/string.js +1 -1
  429. package/es/tasty/utils/styles.js +1 -1
  430. package/es/tasty/utils/warnings.js +1 -1
  431. package/es/tokens.js +3 -2
  432. package/es/type-checks.js +1 -1
  433. package/es/utils/ResizeSensor.js +1 -1
  434. package/es/utils/modules.js +1 -1
  435. package/es/utils/promise.js +1 -1
  436. package/es/utils/random.js +1 -1
  437. package/es/utils/range.js +1 -1
  438. package/es/utils/react/Slots.js +1 -1
  439. package/es/utils/react/chain.js +1 -1
  440. package/es/utils/react/index.js +1 -1
  441. package/es/utils/react/interactions.js +1 -1
  442. package/es/utils/react/isTextOnly.js +1 -1
  443. package/es/utils/react/mapProps.js +1 -1
  444. package/es/utils/react/mergeProps.js +1 -1
  445. package/es/utils/react/nullableValue.js +1 -1
  446. package/es/utils/react/useCombinedRefs.js +1 -1
  447. package/es/utils/react/useId.js +1 -1
  448. package/es/utils/react/useIsDarwin.js +42 -0
  449. package/es/utils/react/useKeySymbols.js +81 -0
  450. package/es/utils/react/useLayoutEffect.js +1 -1
  451. package/es/utils/react/useQaProps.js +1 -1
  452. package/es/utils/react/useViewportSize.js +1 -1
  453. package/es/utils/react/wrapNodeIfPlain.js +1 -1
  454. package/es/utils/transitions.js +1 -1
  455. package/es/utils/tree.js +1 -1
  456. package/es/utils/warnings.js +1 -1
  457. package/es/version.js +2 -2
  458. package/package.json +5 -1
  459. package/types/components/content/HotKeys/HotKeys.d.ts +6 -0
  460. package/types/components/content/HotKeys/index.d.ts +2 -0
  461. package/types/components/fields/ListBox/ListBox.d.ts +3 -1
  462. package/types/components/overlays/NewNotifications/NotificationsContext/NotificationsContext.d.ts +5 -0
  463. package/types/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.d.ts +0 -5
  464. package/types/components/overlays/NewNotifications/NotificationsContext/index.d.ts +2 -1
  465. package/types/components/overlays/NewNotifications/index.d.ts +1 -1
  466. package/types/components/pickers/Menu/Menu.d.ts +27 -12
  467. package/types/components/pickers/Menu/MenuItem.d.ts +1 -1
  468. package/types/icons/ChartAreaStackedIcon.d.ts +4 -0
  469. package/types/icons/ChartAreaStackedPercentageIcon.d.ts +4 -0
  470. package/types/icons/ChartFunnelIcon.d.ts +4 -0
  471. package/types/icons/index.d.ts +3 -0
  472. package/types/index.d.ts +1 -0
  473. package/types/utils/react/useIsDarwin.d.ts +12 -0
  474. package/types/utils/react/useKeySymbols.d.ts +9 -0
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -13,6 +13,7 @@ import { useMenu } from 'react-aria';
13
13
  import { Item as BaseItem, 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
17
  import { useMenuContext } from './context';
17
18
  import { MenuItem } from './MenuItem';
18
19
  import { MenuSection } from './MenuSection';
@@ -42,38 +43,43 @@ function Menu(props, ref) {
42
43
  // The helper from @react-aria/utils expects the context object as the first argument
43
44
  // to keep it up-to-date, and a ref object as the second.
44
45
  useSyncRef(contextProps, domRef);
45
- return (_jsxs(StyledMenu, { ...mergeProps(defaultProps, menuProps, filterBaseProps(completeProps)), ref: domRef, children: [header && _jsx(StyledHeader, { role: "presentation", children: header }), (() => {
46
- // Build the list of menu elements, automatically inserting dividers between sections.
47
- const renderedItems = useMemo(() => {
48
- const items = [];
49
- let isFirstSection = true;
50
- collectionItems.forEach((item) => {
51
- if (item.type === 'section') {
52
- if (!isFirstSection) {
53
- items.push(_jsx(StyledDivider, { as: "li", role: "separator", "aria-orientation": "horizontal" }, `divider-${String(item.key)}`));
54
- }
55
- items.push(_jsx(MenuSection, { item: item, state: state, styles: sectionStyles, itemStyles: itemStyles, headingStyles: sectionHeadingStyles, selectionIcon: selectionIcon }, item.key));
56
- isFirstSection = false;
57
- return;
58
- }
59
- let menuItem = (_jsx(MenuItem, { item: item, state: state, styles: itemStyles, selectionIcon: selectionIcon, onAction: item.onAction }, item.key));
60
- if (item.props.wrapper) {
61
- menuItem = item.props.wrapper(menuItem);
62
- }
63
- // Ensure every child has a stable key, even if the wrapper component didn't set one.
64
- items.push(React.cloneElement(menuItem, { key: item.key }));
65
- });
66
- return items;
67
- }, [
68
- collectionItems,
69
- state,
70
- sectionStyles,
71
- itemStyles,
72
- selectionIcon,
73
- sectionHeadingStyles,
74
- ]);
75
- return renderedItems;
76
- })()] }));
46
+ const renderedItems = useMemo(() => {
47
+ const items = [];
48
+ let isFirstSection = true;
49
+ collectionItems.forEach((item) => {
50
+ if (item.type === 'section') {
51
+ if (!isFirstSection) {
52
+ items.push(_jsx(StyledDivider, { role: "separator", "aria-orientation": "horizontal" }, `divider-${String(item.key)}`));
53
+ }
54
+ items.push(_jsx(MenuSection, { item: item, state: state, styles: sectionStyles, itemStyles: itemStyles, headingStyles: sectionHeadingStyles, selectionIcon: selectionIcon }, item.key));
55
+ isFirstSection = false;
56
+ return;
57
+ }
58
+ let menuItem = (_jsx(MenuItem, { item: item, state: state, styles: itemStyles, selectionIcon: selectionIcon, onAction: item.onAction }, item.key));
59
+ // Apply tooltip wrapper if tooltip property is provided
60
+ if (item.props.tooltip) {
61
+ const tooltipProps = typeof item.props.tooltip === 'string'
62
+ ? { title: item.props.tooltip }
63
+ : item.props.tooltip;
64
+ menuItem = (_jsx(TooltipProvider, { activeWrap: true, placement: "right", ...tooltipProps, children: menuItem }, item.key));
65
+ }
66
+ // Apply custom wrapper if provided
67
+ if (item.props.wrapper) {
68
+ menuItem = item.props.wrapper(menuItem);
69
+ }
70
+ // Ensure every child has a stable key, even if the wrapper component didn't set one.
71
+ items.push(React.cloneElement(menuItem, { key: item.key }));
72
+ });
73
+ return items;
74
+ }, [
75
+ collectionItems,
76
+ state,
77
+ sectionStyles,
78
+ itemStyles,
79
+ selectionIcon,
80
+ sectionHeadingStyles,
81
+ ]);
82
+ return (_jsxs(StyledMenu, { ...mergeProps(defaultProps, menuProps, filterBaseProps(completeProps)), ref: domRef, role: menuProps.role ?? 'menu', children: [header && _jsx(StyledHeader, { role: "presentation", children: header }), renderedItems] }));
77
83
  }
78
84
  // forwardRef doesn't support generic parameters, so cast the result to the correct type
79
85
  // https://stackoverflow.com/questions/58469229/react-with-typescript-generics-while-using-react-forwardref
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.64.1
4
+ * @cube-dev/ui-kit v0.65.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -9,7 +9,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
9
  import { IconPointFilled } from '@tabler/icons-react';
10
10
  import { CheckIcon } from '../../../icons';
11
11
  import { tasty } from '../../../tasty';
12
- import { DEFAULT_BUTTON_STYLES, DEFAULT_NEUTRAL_STYLES, } from '../../actions/index';
12
+ import { DEFAULT_BUTTON_STYLES, DEFAULT_NEUTRAL_STYLES } from '../../actions';
13
13
  import { Block } from '../../Block';
14
14
  import { Text } from '../../content/Text';
15
15
  import { Space } from '../../layout/Space';
@@ -38,9 +38,8 @@ const StyledButton = tasty(Block, {
38
38
  },
39
39
  shadow: '#clear',
40
40
  padding: {
41
- '': '0 (1.5x - 1px)',
42
- 'selectable & !selected': '0 (1.5x - 1px) 0 (1.5x - 1px)',
43
- 'selectionIcon & selectable & !selected': '0 (1.5x - 1px) 0 (1.5x - 1px + 3x)',
41
+ '': '0 (1x - 1bw)',
42
+ 'selectionIcon & selectable & !selected': '0 (1x - 1bw) 0 (1x - 1bw + 3x)',
44
43
  },
45
44
  display: 'flex',
46
45
  flow: 'row',
@@ -1,22 +1,42 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.64.1
4
+ * @cube-dev/ui-kit v0.65.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
8
- import { jsx as _jsx } from "react/jsx-runtime";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ import { IconPointFilled } from '@tabler/icons-react';
9
10
  import { useRef } from 'react';
10
11
  import { FocusRing, useMenuItem } from 'react-aria';
12
+ import { useHotkeys } from 'react-hotkeys-hook';
13
+ import { CheckIcon } from '../../../icons';
11
14
  import { ClearSlots, mergeProps, SlotProvider } from '../../../utils/react';
15
+ import { HotKeys } from '../../content/HotKeys';
16
+ import { Text } from '../../content/Text';
17
+ import { Space } from '../../layout/Space';
12
18
  import { useMenuContext } from './context';
13
- import { MenuButton } from './MenuButton';
14
19
  import { StyledItem } from './styled';
20
+ // Returns icon corresponding to selection type
21
+ const getSelectionTypeIcon = (selectionIcon) => {
22
+ switch (selectionIcon) {
23
+ case 'checkbox':
24
+ return _jsx(CheckIcon, {});
25
+ case 'radio':
26
+ return _jsx(IconPointFilled, {});
27
+ default:
28
+ return undefined;
29
+ }
30
+ };
31
+ // Normalise postfix rendering (string -> Text component)
32
+ const getPostfix = (postfix) => typeof postfix === 'string' ? (_jsx(Text, { nowrap: true, color: "inherit", "data-element": "Postfix", children: postfix })) : (postfix);
15
33
  /** @private */
16
34
  export function MenuItem(props) {
17
35
  const { item, state, styles, selectionIcon, isVirtualized, onAction } = props;
18
36
  const { onClose, closeOnSelect } = useMenuContext();
19
37
  const { rendered, key, props: itemProps } = item;
38
+ // Extract optional keyboard shortcut from item props so it is not passed down to DOM elements.
39
+ const { hotkeys, wrapper, ...cleanItemProps } = (itemProps || {});
20
40
  const isSelectable = state.selectionManager.selectionMode !== 'none';
21
41
  const isDisabledKey = state.disabledKeys.has(key);
22
42
  const ref = useRef(null);
@@ -30,30 +50,49 @@ export function MenuItem(props) {
30
50
  isVirtualized,
31
51
  onAction,
32
52
  }, state, ref);
33
- const buttonProps = {
34
- qa: itemProps.qa ? itemProps.qa : `MenuButton-${key}`,
35
- mods: {
36
- ...itemProps.mods,
37
- focused: isFocused,
38
- pressed: isPressed,
39
- },
53
+ // Destructure presentation-related props from cleanItemProps so they are not spread onto DOM element
54
+ const { postfix, description, icon, mods: itemMods, qa: itemQa, textValue, ...restCleanProps } = cleanItemProps;
55
+ // Build final postfix: custom postfix or HotKeys hint if provided and no explicit postfix
56
+ const finalPostfix = postfix ?? (hotkeys ? _jsx(HotKeys, { keys: hotkeys }) : undefined);
57
+ const checkIcon = isSelectable && isSelected
58
+ ? getSelectionTypeIcon(selectionIcon)
59
+ : undefined;
60
+ const mods = {
61
+ ...itemMods,
62
+ focused: isFocused,
63
+ pressed: isPressed,
64
+ selectionIcon: !!selectionIcon,
65
+ selectable: isSelectable,
66
+ selected: isSelected,
67
+ disabled: isDisabled,
40
68
  };
41
- const contents = (_jsx(MenuButton, { ...mergeProps(itemProps, buttonProps), styles: styles, selectionIcon: selectionIcon, isSelectable: isSelectable, isSelected: isSelected, isDisabled: isDisabled, children: rendered }));
42
- return (_jsx(FocusRing, { children: _jsx(StyledItem, { ...mergeProps(menuItemProps, {
69
+ // Register global hotkey if provided
70
+ useHotkeys(typeof hotkeys === 'string' ? hotkeys.toLowerCase() : '', () => {
71
+ if (!hotkeys)
72
+ return;
73
+ if (isDisabledKey || isDisabled)
74
+ return;
75
+ // Simulate a click on the menu item so all existing handlers run
76
+ if (ref.current) {
77
+ ref.current.click();
78
+ }
79
+ }, {
80
+ enableOnContentEditable: true,
81
+ enabled: !!hotkeys,
82
+ preventDefault: true,
83
+ }, [hotkeys, isDisabledKey, isDisabled]);
84
+ return (_jsx(FocusRing, { children: _jsx(StyledItem, { ...mergeProps(menuItemProps, restCleanProps, {
85
+ qa: itemQa ? itemQa : `MenuItem-${key}`,
86
+ mods,
87
+ styles,
43
88
  'aria-disabled': isDisabled || undefined,
44
- }), ref: ref, "data-qa": itemProps.qa ? `MenuItem-${itemProps.qa}` : `MenuItem-${key}`, mods: {
45
- disabled: isDisabled,
46
- selected: isSelected,
47
- selectable: isSelectable,
48
- focused: isFocused,
49
- pressed: isPressed,
50
- }, children: _jsx(ClearSlots, { children: _jsx(SlotProvider, { slots: {
89
+ }), ref: ref, children: _jsx(ClearSlots, { children: _jsxs(SlotProvider, { slots: {
51
90
  text: { className: 'itemLabel', ...labelProps },
52
91
  end: { className: 'end', ...descriptionProps },
53
92
  icon: { className: 'icon', size: 'S' },
54
93
  description: { className: 'description', ...descriptionProps },
55
94
  keyboard: { className: 'keyboard', ...keyboardShortcutProps },
56
- }, children: contents }) }) }) }));
95
+ }, 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)] })] }) }) }) }));
57
96
  }
58
97
 
59
98
 
@@ -1,12 +1,13 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.64.1
4
+ * @cube-dev/ui-kit v0.65.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
8
8
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
9
9
  import { useMenuSection } from 'react-aria';
10
+ import { TooltipProvider } from '../../overlays/Tooltip/TooltipProvider';
10
11
  import { MenuItem } from './MenuItem';
11
12
  import { StyledMenu, StyledSection, StyledSectionHeading } from './styled';
12
13
  /** @private */
@@ -18,11 +19,18 @@ export function MenuSection(props) {
18
19
  'aria-label': item['aria-label'],
19
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
- let item = (_jsx(MenuItem, { item: node, styles: itemStyles, state: state, onAction: node.onAction }, node.key));
22
+ let menuItem = (_jsx(MenuItem, { item: node, styles: itemStyles, state: state, onAction: node.onAction }, node.key));
23
+ // Apply tooltip wrapper if tooltip property is provided
24
+ if (node.props.tooltip) {
25
+ const tooltipProps = typeof node.props.tooltip === 'string'
26
+ ? { title: node.props.tooltip }
27
+ : node.props.tooltip;
28
+ menuItem = (_jsx(TooltipProvider, { activeWrap: true, placement: "right", ...tooltipProps, children: menuItem }, node.key));
29
+ }
22
30
  if (node.props.wrapper) {
23
- item = node.props.wrapper(item);
31
+ menuItem = node.props.wrapper(menuItem);
24
32
  }
25
- return item;
33
+ return menuItem;
26
34
  }) })] }) }));
27
35
  }
28
36
 
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
@@ -1,11 +1,12 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.64.1
4
+ * @cube-dev/ui-kit v0.65.1
5
5
  * Released under the MIT license.
6
6
  */
7
7
 
8
8
  import { tasty } from '../../../tasty';
9
+ import { DEFAULT_BUTTON_STYLES, DEFAULT_NEUTRAL_STYLES } from '../../actions';
9
10
  import { Space } from '../../layout/Space';
10
11
  export const StyledMenu = tasty({
11
12
  as: 'ul',
@@ -58,7 +59,7 @@ export const StyledHeader = tasty(Space, {
58
59
  styles: {
59
60
  color: '#dark-02',
60
61
  preset: 't2m',
61
- padding: '0.75x 2x',
62
+ padding: '0.75x 1.5x',
62
63
  margin: '-0.5x -0.5x (0.5x - 1bw) -0.5x',
63
64
  border: '#dark-05 bottom',
64
65
  placeContent: 'space-between',
@@ -83,27 +84,69 @@ export const StyledItem = tasty({
83
84
  qa: 'Item',
84
85
  as: 'li',
85
86
  styles: {
87
+ // Base button-like styles merged from Action/Button defaults
88
+ ...DEFAULT_BUTTON_STYLES,
89
+ ...DEFAULT_NEUTRAL_STYLES,
90
+ // Override specifics for menu context
86
91
  display: 'flex',
87
- flow: 'column',
88
- gap: '1bw',
89
- margin: '0',
90
- padding: '0',
92
+ flow: 'row',
93
+ justifyContent: 'start',
91
94
  listStyle: 'none',
92
- fill: '#white',
93
- preset: 't3m',
95
+ height: 'min 4x',
96
+ border: '#clear',
97
+ fill: {
98
+ '': '#clear',
99
+ focused: '#dark.03',
100
+ selected: '#dark.06',
101
+ 'selected & focused': '#dark.09',
102
+ pressed: '#dark.06',
103
+ disabled: '#clear',
104
+ },
94
105
  color: {
95
- '': 'inherit',
106
+ '': '#dark-02',
107
+ 'selected | pressed': '#dark',
96
108
  disabled: '#dark-04',
97
109
  },
98
- whiteSpace: 'nowrap',
110
+ cursor: {
111
+ '': 'pointer',
112
+ disabled: 'default',
113
+ },
114
+ shadow: '#clear',
115
+ padding: {
116
+ '': '0 (1x - 1bw)',
117
+ 'selectionIcon & selectable & !selected': '0 (1x - 1bw) 0 (1x - 1bw + 3x)',
118
+ },
119
+ gap: '.75x',
120
+ outline: false,
121
+ // Sub-elements reused from MenuButton styles
122
+ ButtonIcon: {
123
+ display: 'grid',
124
+ fontSize: '@icon-size',
125
+ width: '@icon-size',
126
+ height: '@icon-size',
127
+ placeSelf: 'center',
128
+ placeItems: 'center',
129
+ },
130
+ Postfix: {
131
+ color: {
132
+ '': '#dark-03',
133
+ pressed: '#dark-02',
134
+ disabled: '#dark-04',
135
+ },
136
+ },
137
+ Description: {
138
+ preset: 't4',
139
+ color: '#dark-03',
140
+ },
99
141
  },
100
142
  });
101
143
  export const StyledSectionHeading = tasty(Space, {
102
- as: 'SectionHeading',
144
+ qa: 'SectionHeading',
145
+ as: 'div',
103
146
  styles: {
104
147
  color: '#dark-04',
105
148
  preset: 'c2',
106
- padding: '.5x 1.5x',
149
+ padding: '.5x 1x',
107
150
  height: '3x',
108
151
  placeContent: 'center space-between',
109
152
  align: 'start',
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license MIT
3
3
  * author: Cube Dev Team
4
- * @cube-dev/ui-kit v0.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.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.64.1
4
+ * @cube-dev/ui-kit v0.65.1
5
5
  * Released under the MIT license.
6
6
  */
7
7