@cube-dev/ui-kit 0.195.0 → 0.196.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (701) hide show
  1. package/dist/CHANGELOG.md +174 -0
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.d.ts +6 -0
  16. package/dist/components/Root.js +125 -102
  17. package/dist/components/Root.js.map +1 -1
  18. package/dist/components/actions/Action/Action.js +1 -1
  19. package/dist/components/actions/Banner/Banner.js +1 -1
  20. package/dist/components/actions/Button/Button.js +11 -5
  21. package/dist/components/actions/Button/Button.js.map +1 -1
  22. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  23. package/dist/components/actions/ButtonSplit/ButtonSplit.d.ts +9 -4
  24. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  25. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  26. package/dist/components/actions/ButtonSplit/context.js +1 -1
  27. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  28. package/dist/components/actions/CommandMenu/styled.js +1 -1
  29. package/dist/components/actions/ItemAction/ItemAction.js +27 -25
  30. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  31. package/dist/components/actions/ItemActionContext.js +1 -1
  32. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  33. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  34. package/dist/components/actions/Link/Link.js +1 -1
  35. package/dist/components/actions/Menu/Menu.js +1 -1
  36. package/dist/components/actions/Menu/MenuCollectionItem.js +7 -4
  37. package/dist/components/actions/Menu/MenuCollectionItem.js.map +1 -1
  38. package/dist/components/actions/Menu/MenuItem.js +69 -60
  39. package/dist/components/actions/Menu/MenuItem.js.map +1 -1
  40. package/dist/components/actions/Menu/MenuSection.js +1 -1
  41. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  42. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  43. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  44. package/dist/components/actions/Menu/context.js +1 -1
  45. package/dist/components/actions/Menu/styled.js +1 -4
  46. package/dist/components/actions/Menu/styled.js.map +1 -1
  47. package/dist/components/actions/actions-run.js +1 -1
  48. package/dist/components/actions/index.js +1 -1
  49. package/dist/components/actions/use-action.js +15 -14
  50. package/dist/components/actions/use-action.js.map +1 -1
  51. package/dist/components/actions/use-anchored-menu.js +1 -1
  52. package/dist/components/actions/use-context-menu.js +1 -1
  53. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  54. package/dist/components/content/Alert/Alert.js +1 -1
  55. package/dist/components/content/Alert/use-alert.js +1 -1
  56. package/dist/components/content/Avatar/Avatar.js +1 -1
  57. package/dist/components/content/Badge/Badge.js +1 -1
  58. package/dist/components/content/Card/Card.js +1 -1
  59. package/dist/components/content/Content.js +1 -1
  60. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  61. package/dist/components/content/CopySnippet/CopySnippet.d.ts +8 -8
  62. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  63. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  64. package/dist/components/content/Divider.js +1 -1
  65. package/dist/components/content/Footer.js +1 -1
  66. package/dist/components/content/Header.js +1 -1
  67. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  68. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  69. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  70. package/dist/components/content/Item/Item.js +16 -4
  71. package/dist/components/content/Item/Item.js.map +1 -1
  72. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  73. package/dist/components/content/ItemBadge/ItemBadge.js +7 -3
  74. package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
  75. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  76. package/dist/components/content/Layout/GridLayout.js +1 -1
  77. package/dist/components/content/Layout/Layout.js +29 -15
  78. package/dist/components/content/Layout/Layout.js.map +1 -1
  79. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  80. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  81. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  82. package/dist/components/content/Layout/LayoutContent.js +1 -1
  83. package/dist/components/content/Layout/LayoutContext.js +20 -10
  84. package/dist/components/content/Layout/LayoutContext.js.map +1 -1
  85. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  86. package/dist/components/content/Layout/LayoutFooter.js +12 -9
  87. package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
  88. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  89. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  90. package/dist/components/content/Layout/LayoutPane.js +1 -1
  91. package/dist/components/content/Layout/LayoutPanel.d.ts +4 -2
  92. package/dist/components/content/Layout/LayoutPanel.js +73 -2
  93. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  94. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  95. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  96. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  97. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  98. package/dist/components/content/Layout/index.js +1 -1
  99. package/dist/components/content/Layout/utils.js +1 -1
  100. package/dist/components/content/Paragraph.js +1 -1
  101. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  102. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  103. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  104. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  105. package/dist/components/content/Result/Result.js +1 -1
  106. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  107. package/dist/components/content/Tag/Tag.js +1 -1
  108. package/dist/components/content/Text.d.ts +14 -14
  109. package/dist/components/content/Text.js +1 -1
  110. package/dist/components/content/TextItem/TextItem.js +1 -1
  111. package/dist/components/content/Title.js +1 -1
  112. package/dist/components/content/Tree/Tree.js +1 -1
  113. package/dist/components/content/Tree/TreeNode.js +2 -1
  114. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  115. package/dist/components/content/Tree/styled.js +1 -1
  116. package/dist/components/content/Tree/tree-index.js +1 -1
  117. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  118. package/dist/components/content/Tree/use-load-data.js +1 -1
  119. package/dist/components/content/highlightText.js +1 -1
  120. package/dist/components/content/use-auto-tooltip.js +3 -3
  121. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  122. package/dist/components/data/DataTable/DataTable.js +1 -1
  123. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  124. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  125. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  126. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  127. package/dist/components/data/ItemTable/ItemTableToolbar.js +2 -1
  128. package/dist/components/data/ItemTable/ItemTableToolbar.js.map +1 -1
  129. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  130. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  131. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  132. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  133. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  134. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  135. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  136. package/dist/components/data/TableBase/RowCollection.js +1 -1
  137. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  138. package/dist/components/data/TableBase/TableRow.js +1 -1
  139. package/dist/components/data/TableBase/TableView.js +3 -1
  140. package/dist/components/data/TableBase/TableView.js.map +1 -1
  141. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  142. package/dist/components/data/TableBase/column-header.js +1 -1
  143. package/dist/components/data/TableBase/column-menu.js +1 -1
  144. package/dist/components/data/TableBase/column-styles.js +1 -1
  145. package/dist/components/data/TableBase/column-tint.js +1 -1
  146. package/dist/components/data/TableBase/row-menu.js +1 -1
  147. package/dist/components/data/TableBase/styled.js +1 -1
  148. package/dist/components/data/TableBase/table-tree.js +1 -1
  149. package/dist/components/data/TableBase/types.js +1 -1
  150. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  151. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  152. package/dist/components/data/TableBase/use-column-order.js +1 -1
  153. package/dist/components/data/TableBase/use-column-window.js +1 -1
  154. package/dist/components/data/TableBase/use-container-width.js +1 -1
  155. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  156. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  157. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  158. package/dist/components/data/TableBase/use-table-search.js +1 -1
  159. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  160. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  161. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  162. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  163. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  164. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  165. package/dist/components/fields/Checkbox/Checkbox.js +2 -2
  166. package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
  167. package/dist/components/fields/Checkbox/CheckboxGroup.js +5 -5
  168. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  169. package/dist/components/fields/Checkbox/context.js +1 -1
  170. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  171. package/dist/components/fields/ColorPicker/ColorPicker.js +3 -1
  172. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  173. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  174. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +2 -1
  175. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  176. package/dist/components/fields/ComboBox/ComboBox.d.ts +27 -7
  177. package/dist/components/fields/ComboBox/ComboBox.js +1095 -619
  178. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  179. package/dist/components/fields/ComboBox/comboBoxOptions.js +84 -0
  180. package/dist/components/fields/ComboBox/comboBoxOptions.js.map +1 -0
  181. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  182. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  183. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  184. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  185. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  186. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  187. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  188. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  189. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  190. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  191. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  192. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  193. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  194. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  195. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  196. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  197. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  198. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  199. package/dist/components/fields/DatePicker/parseDate.d.ts +7 -0
  200. package/dist/components/fields/DatePicker/parseDate.js +17 -3
  201. package/dist/components/fields/DatePicker/parseDate.js.map +1 -1
  202. package/dist/components/fields/DatePicker/period.js +1 -1
  203. package/dist/components/fields/DatePicker/props.js +1 -1
  204. package/dist/components/fields/DatePicker/utils.js +1 -1
  205. package/dist/components/fields/FileInput/FileInput.js +1 -1
  206. package/dist/components/fields/FilterListBox/FilterListBox.js +2 -1
  207. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  208. package/dist/components/fields/FilterPicker/FilterPicker.js +15 -6
  209. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  210. package/dist/components/fields/Input/Input.d.ts +2 -2
  211. package/dist/components/fields/Input/Input.js +2 -2
  212. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  213. package/dist/components/fields/ListBox/ListBox.d.ts +10 -4
  214. package/dist/components/fields/ListBox/ListBox.js +298 -146
  215. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  216. package/dist/components/fields/ListBox/optionId.js +1 -1
  217. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +150 -139
  218. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  219. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  220. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  221. package/dist/components/fields/NumberInput/NumberInput.d.ts +6 -1
  222. package/dist/components/fields/NumberInput/NumberInput.js +136 -128
  223. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  224. package/dist/components/fields/NumberInput/StepButton.js +38 -48
  225. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  226. package/dist/components/fields/PasswordInput/PasswordInput.d.ts +1 -2
  227. package/dist/components/fields/PasswordInput/PasswordInput.js +77 -111
  228. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  229. package/dist/components/fields/Picker/Picker.d.ts +1 -1
  230. package/dist/components/fields/Picker/Picker.js +22 -8
  231. package/dist/components/fields/Picker/Picker.js.map +1 -1
  232. package/dist/components/fields/RadioGroup/Radio.d.ts +12 -12
  233. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  234. package/dist/components/fields/RadioGroup/RadioGroup.js +2 -2
  235. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  236. package/dist/components/fields/RadioGroup/context.js +1 -1
  237. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -6
  238. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  239. package/dist/components/fields/SearchInput/SearchInput.d.ts +8 -3
  240. package/dist/components/fields/SearchInput/SearchInput.js +22 -34
  241. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  242. package/dist/components/fields/Select/Select.d.ts +12 -1
  243. package/dist/components/fields/Select/Select.js +365 -207
  244. package/dist/components/fields/Select/Select.js.map +1 -1
  245. package/dist/components/fields/Slider/Gradation.js +1 -1
  246. package/dist/components/fields/Slider/HueSlider.js +1 -1
  247. package/dist/components/fields/Slider/RangeSlider.js +3 -4
  248. package/dist/components/fields/Slider/RangeSlider.js.map +1 -1
  249. package/dist/components/fields/Slider/Slider.js +1 -1
  250. package/dist/components/fields/Slider/SliderBase.js +1 -1
  251. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  252. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  253. package/dist/components/fields/Slider/elements.js +1 -1
  254. package/dist/components/fields/Slider/index.js +1 -1
  255. package/dist/components/fields/Switch/Switch.js +1 -1
  256. package/dist/components/fields/TagInput/TagInput.js +2 -2
  257. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  258. package/dist/components/fields/TagInput/TagList.js +1 -1
  259. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  260. package/dist/components/fields/TagInput/useTagError.js +1 -1
  261. package/dist/components/fields/TextArea/TextArea.d.ts +0 -1
  262. package/dist/components/fields/TextArea/TextArea.js +49 -63
  263. package/dist/components/fields/TextArea/TextArea.js.map +1 -1
  264. package/dist/components/fields/TextInput/TextInput.d.ts +1 -1
  265. package/dist/components/fields/TextInput/TextInput.js +42 -46
  266. package/dist/components/fields/TextInput/TextInput.js.map +1 -1
  267. package/dist/components/fields/TextInput/TextInputBase.d.ts +6 -2
  268. package/dist/components/fields/TextInput/TextInputBase.js +32 -10
  269. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  270. package/dist/components/fields/TextInput/displayed-validation.js +50 -0
  271. package/dist/components/fields/TextInput/displayed-validation.js.map +1 -0
  272. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  273. package/dist/components/fields/TextInputMapper/TextInputMapper.js +20 -17
  274. package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
  275. package/dist/components/fields/TriggerActions.js +1 -1
  276. package/dist/components/fields/color/ColorPanel.js +3 -1
  277. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  278. package/dist/components/fields/color/channels.js +1 -1
  279. package/dist/components/fields/color/color.js +1 -1
  280. package/dist/components/fields/color/context.js +1 -1
  281. package/dist/components/fields/index.d.ts +2 -2
  282. package/dist/components/fields/option-origin-press.js +78 -0
  283. package/dist/components/fields/option-origin-press.js.map +1 -0
  284. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +10 -8
  285. package/dist/components/form/FieldWrapper/FieldWrapper.js +214 -159
  286. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  287. package/dist/components/form/FieldWrapper/field-description.js +3 -3
  288. package/dist/components/form/FieldWrapper/field-description.js.map +1 -1
  289. package/dist/components/form/FieldWrapper/types.d.ts +4 -3
  290. package/dist/components/form/Form/Field.js +1 -1
  291. package/dist/components/form/Form/Form.js +1 -1
  292. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  293. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  294. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  295. package/dist/components/form/Form/SubmitError.js +1 -1
  296. package/dist/components/form/Form/backend.js +1 -1
  297. package/dist/components/form/Form/index.js +1 -1
  298. package/dist/components/form/Form/modern/actions.js +1 -1
  299. package/dist/components/form/Form/modern/context.js +1 -1
  300. package/dist/components/form/Form/modern/controller.js +1 -1
  301. package/dist/components/form/Form/modern/field-binding.js +1 -1
  302. package/dist/components/form/Form/modern/field.js +1 -1
  303. package/dist/components/form/Form/modern/react.js +1 -1
  304. package/dist/components/form/Form/modern/store.js +1 -1
  305. package/dist/components/form/Form/modern/validation.js +1 -1
  306. package/dist/components/form/Form/modern/values.js +1 -1
  307. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  308. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  309. package/dist/components/form/Form/use-field/use-field-props.js +21 -33
  310. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  311. package/dist/components/form/Form/use-field/use-field.js +1 -1
  312. package/dist/components/form/Form/use-form.js +1 -1
  313. package/dist/components/form/Form/validation.js +1 -1
  314. package/dist/components/form/Label.js +1 -1
  315. package/dist/components/form/field-chrome.js +4 -34
  316. package/dist/components/form/field-chrome.js.map +1 -1
  317. package/dist/components/form/legacy-tooltip.js +1 -1
  318. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  319. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  320. package/dist/components/form/validation/use-validation-props.js +1 -1
  321. package/dist/components/form/wrapper.d.ts +6 -17
  322. package/dist/components/form/wrapper.js +6 -14
  323. package/dist/components/form/wrapper.js.map +1 -1
  324. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  325. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  326. package/dist/components/layout/Flex.js +1 -1
  327. package/dist/components/layout/Flow.js +1 -1
  328. package/dist/components/layout/Grid.js +1 -1
  329. package/dist/components/layout/Panel.js +1 -1
  330. package/dist/components/layout/Prefix.js +1 -1
  331. package/dist/components/layout/ResizablePanel.js +1 -1
  332. package/dist/components/layout/Space.js +1 -1
  333. package/dist/components/layout/Suffix.js +1 -1
  334. package/dist/components/navigation/Pagination/Pagination.js +3 -1
  335. package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
  336. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  337. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  338. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  339. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  340. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  341. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  342. package/dist/components/navigation/Tabs/TabPicker.js +2 -1
  343. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  344. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  345. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  346. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  347. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  348. package/dist/components/navigation/Tabs/styled.js +1 -1
  349. package/dist/components/navigation/Tabs/types.js +1 -1
  350. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  351. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  352. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  353. package/dist/components/other/Calendar/Calendar.js +1 -1
  354. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  355. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  356. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  357. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  358. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  359. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  360. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  361. package/dist/components/other/Calendar/styled.js +1 -1
  362. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  363. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  364. package/dist/components/overlays/AlertDialog/AlertDialog.d.ts +6 -1
  365. package/dist/components/overlays/AlertDialog/AlertDialog.js +3 -2
  366. package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
  367. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +3 -2
  368. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
  369. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  370. package/dist/components/overlays/Dialog/Dialog.js +28 -14
  371. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  372. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  373. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  374. package/dist/components/overlays/Dialog/DialogTrigger.d.ts +7 -3
  375. package/dist/components/overlays/Dialog/DialogTrigger.js +149 -132
  376. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  377. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  378. package/dist/components/overlays/Dialog/context.js +1 -1
  379. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  380. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  381. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  382. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +83 -0
  383. package/dist/components/overlays/Dialog/use-dialog-open-sync.js.map +1 -0
  384. package/dist/components/overlays/Modal/Modal.js +1 -1
  385. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  386. package/dist/components/overlays/Modal/Overlay.js +9 -3
  387. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  388. package/dist/components/overlays/Modal/Popover.js +31 -29
  389. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  390. package/dist/components/overlays/Modal/Tray.js +2 -1
  391. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  392. package/dist/components/overlays/Modal/Underlay.js +1 -1
  393. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  394. package/dist/components/overlays/Notifications/Notification.js +1 -1
  395. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  396. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  397. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  398. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  399. package/dist/components/overlays/Notifications/OverlayContainer.js +18 -32
  400. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  401. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  402. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  403. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  404. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  405. package/dist/components/overlays/Notifications/index.js +1 -1
  406. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  407. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  408. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  409. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  410. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  411. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  412. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  413. package/dist/components/overlays/Toast/index.js +1 -1
  414. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  415. package/dist/components/overlays/Toast/useToast.js +1 -1
  416. package/dist/components/overlays/Tooltip/Tooltip.d.ts +8 -0
  417. package/dist/components/overlays/Tooltip/Tooltip.js +16 -22
  418. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  419. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  420. package/dist/components/overlays/Tooltip/TooltipTrigger.d.ts +1 -1
  421. package/dist/components/overlays/Tooltip/TooltipTrigger.js +163 -113
  422. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  423. package/dist/components/overlays/Tooltip/context.js +1 -1
  424. package/dist/components/overlays/Tooltip/context.js.map +1 -1
  425. package/dist/components/overlays/Tooltip/split-trigger-props.js +6 -5
  426. package/dist/components/overlays/Tooltip/split-trigger-props.js.map +1 -1
  427. package/dist/components/portal/Portal.js +1 -1
  428. package/dist/components/portal/PortalProvider.js +1 -1
  429. package/dist/components/portal/usePortal.js +1 -1
  430. package/dist/components/shared/DraggableCollection.js +1 -1
  431. package/dist/components/shared/InvalidIcon.js +1 -1
  432. package/dist/components/shared/ValidIcon.js +1 -1
  433. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  434. package/dist/components/status/Spin/Cube.js +1 -1
  435. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  436. package/dist/components/status/Spin/Spin.js +1 -1
  437. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  438. package/dist/data/item-themes.js +1 -1
  439. package/dist/data/themes.js +1 -1
  440. package/dist/eslint-plugin/defaults.generated.js +11 -17
  441. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  442. package/dist/eslint-plugin/index.js +1 -1
  443. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  444. package/dist/i18n/I18nProvider.js +1 -1
  445. package/dist/i18n/createFormatter.js +1 -1
  446. package/dist/i18n/index.js +1 -1
  447. package/dist/i18n/instance.js +1 -1
  448. package/dist/i18n/locales/de-DE/uikit.js +6 -4
  449. package/dist/i18n/locales/en-US/uikit.js +6 -4
  450. package/dist/i18n/locales/en-US/uikit.json.d.ts +3 -1
  451. package/dist/i18n/locales/es-ES/uikit.js +6 -4
  452. package/dist/i18n/locales/es-MX/uikit.js +6 -4
  453. package/dist/i18n/locales/fr-FR/uikit.js +6 -4
  454. package/dist/i18n/locales/it-IT/uikit.js +6 -4
  455. package/dist/i18n/locales/ja-JP/uikit.js +6 -4
  456. package/dist/i18n/locales/nb-NO/uikit.js +6 -4
  457. package/dist/i18n/locales/pt-BR/uikit.js +6 -4
  458. package/dist/i18n/locales/pt-PT/uikit.js +6 -4
  459. package/dist/i18n/locales/sv-SE/uikit.js +6 -4
  460. package/dist/i18n/locales/vi-VN/uikit.js +6 -4
  461. package/dist/i18n/locales.js +1 -1
  462. package/dist/i18n/namespace.js +1 -1
  463. package/dist/i18n/useFormatter.js +1 -1
  464. package/dist/i18n/useI18n.js +1 -1
  465. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  466. package/dist/icons/AdjustmentsIcon.js +1 -1
  467. package/dist/icons/AiIcon.js +1 -1
  468. package/dist/icons/AreaChartIcon.js +1 -1
  469. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  470. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  471. package/dist/icons/BackwardIcon.js +1 -1
  472. package/dist/icons/BarChartIcon.js +1 -1
  473. package/dist/icons/BellFilledIcon.js +1 -1
  474. package/dist/icons/BellIcon.js +1 -1
  475. package/dist/icons/BooleanIcon.js +1 -1
  476. package/dist/icons/CalendarEditIcon.js +1 -1
  477. package/dist/icons/CalendarIcon.js +1 -1
  478. package/dist/icons/CaretDownIcon.js +1 -1
  479. package/dist/icons/CaretUpIcon.js +1 -1
  480. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  481. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  482. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  483. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  484. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  485. package/dist/icons/ChartBarLineIcon.js +1 -1
  486. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  487. package/dist/icons/ChartBarStackedIcon.js +1 -1
  488. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  489. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  490. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  491. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  492. package/dist/icons/ChartBubbleIcon.js +1 -1
  493. package/dist/icons/ChartDonut2Icon.js +1 -1
  494. package/dist/icons/ChartFunnelIcon.js +1 -1
  495. package/dist/icons/ChartHeatmapIcon.js +1 -1
  496. package/dist/icons/ChartKPIIcon.js +1 -1
  497. package/dist/icons/ChartPie2Icon.js +1 -1
  498. package/dist/icons/ChartScatterIcon.js +1 -1
  499. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  500. package/dist/icons/CheckCircleIcon.js +1 -1
  501. package/dist/icons/CheckIcon.js +1 -1
  502. package/dist/icons/CircleFilledIcon.js +1 -1
  503. package/dist/icons/ClearIcon.js +1 -1
  504. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  505. package/dist/icons/CloseCircleIcon.js +1 -1
  506. package/dist/icons/CloseIcon.js +1 -1
  507. package/dist/icons/CodeIcon.js +1 -1
  508. package/dist/icons/ColumnTotalIcon.js +1 -1
  509. package/dist/icons/CopyIcon.js +1 -1
  510. package/dist/icons/CountIcon.js +1 -1
  511. package/dist/icons/CubeIcon.js +1 -1
  512. package/dist/icons/CubePauseIcon.js +1 -1
  513. package/dist/icons/CubePlayIcon.js +1 -1
  514. package/dist/icons/CurrencyDollarIcon.js +1 -1
  515. package/dist/icons/DangerIcon.js +1 -1
  516. package/dist/icons/DashboardIcon.js +1 -1
  517. package/dist/icons/DatabaseIcon.js +1 -1
  518. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  519. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  520. package/dist/icons/DirectionIcon.js +1 -1
  521. package/dist/icons/DonutIcon.js +1 -1
  522. package/dist/icons/DownIcon.js +1 -1
  523. package/dist/icons/EditIcon.js +1 -1
  524. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  525. package/dist/icons/ExclamationCircleIcon.js +1 -1
  526. package/dist/icons/ExclamationIcon.js +1 -1
  527. package/dist/icons/EyeIcon.js +1 -1
  528. package/dist/icons/EyeInvisibleIcon.js +1 -1
  529. package/dist/icons/FilterIcon.js +1 -1
  530. package/dist/icons/FolderFilledIcon.js +1 -1
  531. package/dist/icons/FolderIcon.js +1 -1
  532. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  533. package/dist/icons/FolderOpenIcon.js +1 -1
  534. package/dist/icons/ForwardIcon.js +1 -1
  535. package/dist/icons/GripVerticalIcon.js +1 -1
  536. package/dist/icons/HierarchyIcon.js +1 -1
  537. package/dist/icons/HierarchyOpenIcon.js +1 -1
  538. package/dist/icons/Icon.js +1 -1
  539. package/dist/icons/InfoCircleIcon.js +1 -1
  540. package/dist/icons/InfoIcon.js +1 -1
  541. package/dist/icons/KeyIcon.js +1 -1
  542. package/dist/icons/LeftIcon.js +1 -1
  543. package/dist/icons/LineChartIcon.js +1 -1
  544. package/dist/icons/LoadingIcon.js +1 -1
  545. package/dist/icons/LockFilledIcon.js +1 -1
  546. package/dist/icons/LockIcon.js +1 -1
  547. package/dist/icons/MoreIcon.js +1 -1
  548. package/dist/icons/NotAllowedIcon.js +1 -1
  549. package/dist/icons/Number123Icon.js +1 -1
  550. package/dist/icons/NumberIcon.js +1 -1
  551. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  552. package/dist/icons/PauseCircleIcon.js +1 -1
  553. package/dist/icons/PauseIcon.js +1 -1
  554. package/dist/icons/PercentageIcon.js +1 -1
  555. package/dist/icons/PieChartIcon.js +1 -1
  556. package/dist/icons/PipetteIcon.js +1 -1
  557. package/dist/icons/PlayCircleIcon.js +1 -1
  558. package/dist/icons/PlayIcon.js +1 -1
  559. package/dist/icons/PlusIcon.js +1 -1
  560. package/dist/icons/ProgressBarIcon.js +1 -1
  561. package/dist/icons/ReloadIcon.js +1 -1
  562. package/dist/icons/ReportIcon.js +1 -1
  563. package/dist/icons/ReturnIcon.js +1 -1
  564. package/dist/icons/RightIcon.js +1 -1
  565. package/dist/icons/RowTotalsIcon.js +1 -1
  566. package/dist/icons/SchemeIcon.js +1 -1
  567. package/dist/icons/SearchIcon.js +1 -1
  568. package/dist/icons/SemanticQueryIcon.js +1 -1
  569. package/dist/icons/SettingsIcon.js +1 -1
  570. package/dist/icons/ShieldFilledIcon.js +1 -1
  571. package/dist/icons/ShieldIcon.js +1 -1
  572. package/dist/icons/SlashIcon.js +1 -1
  573. package/dist/icons/SparklesIcon.js +1 -1
  574. package/dist/icons/SqlIcon.js +1 -1
  575. package/dist/icons/StatsIcon.js +1 -1
  576. package/dist/icons/StopIcon.js +1 -1
  577. package/dist/icons/StringIcon.js +1 -1
  578. package/dist/icons/SubtotalsIcon.js +1 -1
  579. package/dist/icons/SwitchIcon.js +1 -1
  580. package/dist/icons/TableIcon.js +1 -1
  581. package/dist/icons/ThumbsDownIcon.js +1 -1
  582. package/dist/icons/ThumbsUpIcon.js +1 -1
  583. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  584. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  585. package/dist/icons/ThunderboltIcon.js +1 -1
  586. package/dist/icons/TimeIcon.js +1 -1
  587. package/dist/icons/TrashIcon.js +1 -1
  588. package/dist/icons/UnlockIcon.js +1 -1
  589. package/dist/icons/UpIcon.js +1 -1
  590. package/dist/icons/UserGroupIcon.js +1 -1
  591. package/dist/icons/UserIcon.js +1 -1
  592. package/dist/icons/UserLockIcon.js +1 -1
  593. package/dist/icons/ViewIcon.js +1 -1
  594. package/dist/icons/WarningFilledIcon.js +1 -1
  595. package/dist/icons/WarningIcon.js +1 -1
  596. package/dist/icons/wrap-icon.js +1 -1
  597. package/dist/index.d.ts +1 -1
  598. package/dist/index.js +2 -2
  599. package/dist/probe/canonicalize.js +1 -1
  600. package/dist/probe/css.js +1 -1
  601. package/dist/probe/index.js +1 -1
  602. package/dist/provider.js +1 -1
  603. package/dist/providers/TrackingProvider.js +1 -1
  604. package/dist/providers/navigation-url.js +15 -3
  605. package/dist/providers/navigation-url.js.map +1 -1
  606. package/dist/providers/navigationAdapter.default.js +1 -1
  607. package/dist/providers/use-navigation.js +1 -1
  608. package/dist/shared/form.d.ts +11 -12
  609. package/dist/tokens/all-tokens.js +1 -1
  610. package/dist/tokens/base.js +1 -1
  611. package/dist/tokens/color-seed.js +1 -1
  612. package/dist/tokens/color-theme.js +1 -1
  613. package/dist/tokens/colors.js +1 -1
  614. package/dist/tokens/layout.js +1 -1
  615. package/dist/tokens/lazy-styles.js +1 -1
  616. package/dist/tokens/legacy-color.js +1 -1
  617. package/dist/tokens/palette-config.js +1 -1
  618. package/dist/tokens/palette.js +1 -1
  619. package/dist/tokens/resolve.js +1 -1
  620. package/dist/tokens/shadows.js +1 -1
  621. package/dist/tokens/sizes.js +1 -1
  622. package/dist/tokens/spacing.js +1 -1
  623. package/dist/tokens/typography.js +1 -1
  624. package/dist/utils/ResizeSensor.js +1 -1
  625. package/dist/utils/colors.js +1 -1
  626. package/dist/utils/dotize.js +1 -1
  627. package/dist/utils/is-dev-env.js +1 -1
  628. package/dist/utils/modules.js +1 -1
  629. package/dist/utils/promise.js +1 -1
  630. package/dist/utils/raf.js +1 -1
  631. package/dist/utils/random.js +1 -1
  632. package/dist/utils/range.js +1 -1
  633. package/dist/utils/react/RenderCache.js +1 -1
  634. package/dist/utils/react/Slots.js +1 -1
  635. package/dist/utils/react/chain.js +1 -1
  636. package/dist/utils/react/disabledProps.js +1 -1
  637. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  638. package/dist/utils/react/index.js +1 -1
  639. package/dist/utils/react/interactions.js +1 -1
  640. package/dist/utils/react/isTextOnly.js +1 -1
  641. package/dist/utils/react/mapProps.js +1 -1
  642. package/dist/utils/react/mergeProps.js +1 -1
  643. package/dist/utils/react/nullableValue.js +18 -9
  644. package/dist/utils/react/nullableValue.js.map +1 -1
  645. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  646. package/dist/utils/react/programmaticFocus.js +1 -1
  647. package/dist/utils/react/resolveIcon.js +1 -1
  648. package/dist/utils/react/sharedStore.js +1 -1
  649. package/dist/utils/react/useBufferedValue.js +1 -1
  650. package/dist/utils/react/useCombinedRefs.js +1 -1
  651. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  652. package/dist/utils/react/useEventBus.js +1 -1
  653. package/dist/utils/react/useId.js +1 -1
  654. package/dist/utils/react/useIsDarwin.js +1 -1
  655. package/dist/utils/react/useKeySymbols.js +1 -1
  656. package/dist/utils/react/useLayoutEffect.js +1 -1
  657. package/dist/utils/react/useLocalStorage.js +1 -1
  658. package/dist/utils/react/useMergeStyles.js +1 -1
  659. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  660. package/dist/utils/react/usePopoverSync.js +1 -1
  661. package/dist/utils/react/useQaProps.js +1 -1
  662. package/dist/utils/react/useScheme.js +1 -1
  663. package/dist/utils/react/useViewportSize.js +1 -1
  664. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  665. package/dist/utils/selection.js +1 -1
  666. package/dist/utils/styles.js +1 -1
  667. package/dist/utils/tree.js +1 -1
  668. package/dist/utils/warnings.js +1 -1
  669. package/dist/version.js +2 -2
  670. package/docs/ComplexLayout.md +1 -1
  671. package/docs/CreateComponent.md +2 -0
  672. package/docs/FieldProperties.md +31 -6
  673. package/docs/Theming.md +2 -1
  674. package/docs/Usage.md +2 -0
  675. package/docs/components/Root.md +1 -1
  676. package/docs/components/actions/Button.md +8 -2
  677. package/docs/components/actions/ButtonSplit.md +27 -1
  678. package/docs/components/actions/Link.md +1 -1
  679. package/docs/components/actions/Menu.md +4 -2
  680. package/docs/components/content/InfoBadge.md +2 -0
  681. package/docs/components/content/ItemBadge.md +4 -0
  682. package/docs/components/content/Layout.md +10 -5
  683. package/docs/components/fields/ComboBox.md +30 -19
  684. package/docs/components/fields/FilterListBox.md +2 -2
  685. package/docs/components/fields/FilterPicker.md +2 -2
  686. package/docs/components/fields/ListBox.md +14 -10
  687. package/docs/components/fields/NumberInput.md +20 -11
  688. package/docs/components/fields/PasswordInput.md +6 -7
  689. package/docs/components/fields/Picker.md +6 -5
  690. package/docs/components/fields/RadioGroup.md +1 -1
  691. package/docs/components/fields/SearchInput.md +7 -6
  692. package/docs/components/fields/Select.md +14 -8
  693. package/docs/components/fields/TagInput.md +8 -1
  694. package/docs/components/fields/TextArea.md +4 -3
  695. package/docs/components/fields/TextInput.md +13 -6
  696. package/docs/components/overlays/AlertDialog.md +7 -1
  697. package/docs/components/overlays/Dialog.md +5 -5
  698. package/docs/components/overlays/DialogTrigger.md +6 -6
  699. package/docs/components/overlays/Tooltip.md +17 -6
  700. package/docs/components/overlays/TooltipTrigger.md +2 -0
  701. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ItemAction.js","names":["FocusableRef","BaseProps","Styles","tasty","ComponentProps","forwardRef","HTMLAttributes","ReactNode","RefObject","CURRENT_CLEAR_STYLES","CURRENT_OUTLINE_STYLES","CURRENT_PRIMARY_STYLES","DANGER_CLEAR_STYLES","DANGER_OUTLINE_STYLES","DANGER_PRIMARY_STYLES","DEFAULT_CLEAR_STYLES","DEFAULT_OUTLINE_STYLES","DEFAULT_PRIMARY_STYLES","ITEM_ACTION_BASE_STYLES","NOTE_CLEAR_STYLES","NOTE_OUTLINE_STYLES","NOTE_PRIMARY_STYLES","SPECIAL_CLEAR_STYLES","SPECIAL_OUTLINE_STYLES","SPECIAL_PRIMARY_STYLES","SUCCESS_CLEAR_STYLES","SUCCESS_OUTLINE_STYLES","SUCCESS_PRIMARY_STYLES","WARNING_CLEAR_STYLES","WARNING_OUTLINE_STYLES","WARNING_PRIMARY_STYLES","CheckIcon","LoadingIcon","getDisabledElementProps","mergeProps","omitActivationEventProps","TooltipProvider","useItemActionContext","CubeUseActionProps","useAction","CubeItemActionProps","Omit","size","icon","children","isLoading","isSelected","type","theme","tooltip","title","styles","tabIndex","ItemActionVariant","ItemActionElement","qa","recipe","outline","focused","outlineOffset","cursor","disabled","preset","padding","Icon","$","variants","ItemAction","allProps","ref","_c","contextType","disableActionsFocus","menuItemAction","isDisabled","contextIsDisabled","isDisabledProp","mods","rest","t0","t1","t2","t3","undefined","isDisabledInherited","hasCheckmark","t4","finalIcon","t5","t6","t7","t8","checkmark","selected","loading","context","finalMods","ariaLabel","t9","htmlType","actionProps","t10","t11","t12","role","Symbol","for","bb0","_isDisabled","finalTabIndex","tooltipContent","t13","tooltipProps","_title","t14","hasTooltip","isNativelyDisabled","isInert","inertProps","keepEvents","as","elementProps","finalType","renderButton","tooltipTriggerProps","tooltipRef","mergedProps","element","current","actionRef","triggerProps","tooltipRef_0","ItemActionProps"],"sources":["../../../../src/components/actions/ItemAction/ItemAction.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { BaseProps, Styles, tasty } from '@tenphi/tasty';\nimport {\n ComponentProps,\n forwardRef,\n HTMLAttributes,\n ReactNode,\n RefObject,\n} from 'react';\n\nimport {\n CURRENT_CLEAR_STYLES,\n CURRENT_OUTLINE_STYLES,\n CURRENT_PRIMARY_STYLES,\n DANGER_CLEAR_STYLES,\n DANGER_OUTLINE_STYLES,\n DANGER_PRIMARY_STYLES,\n DEFAULT_CLEAR_STYLES,\n DEFAULT_OUTLINE_STYLES,\n DEFAULT_PRIMARY_STYLES,\n ITEM_ACTION_BASE_STYLES,\n NOTE_CLEAR_STYLES,\n NOTE_OUTLINE_STYLES,\n NOTE_PRIMARY_STYLES,\n SPECIAL_CLEAR_STYLES,\n SPECIAL_OUTLINE_STYLES,\n SPECIAL_PRIMARY_STYLES,\n SUCCESS_CLEAR_STYLES,\n SUCCESS_OUTLINE_STYLES,\n SUCCESS_PRIMARY_STYLES,\n WARNING_CLEAR_STYLES,\n WARNING_OUTLINE_STYLES,\n WARNING_PRIMARY_STYLES,\n} from '../../../data/item-themes';\nimport { CheckIcon } from '../../../icons/CheckIcon';\nimport { LoadingIcon } from '../../../icons/LoadingIcon';\nimport {\n getDisabledElementProps,\n mergeProps,\n omitActivationEventProps,\n} from '../../../utils/react';\nimport { TooltipProvider } from '../../overlays/Tooltip/TooltipProvider';\nimport { useItemActionContext } from '../ItemActionContext';\nimport { CubeUseActionProps, useAction } from '../use-action';\n\nexport interface CubeItemActionProps\n extends Omit<CubeUseActionProps, 'as' | 'htmlType'>,\n Omit<BaseProps, 'as'> {\n size?:\n | 'xsmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xlarge'\n | 'inline'\n | (string & {});\n icon?: ReactNode | 'checkmark';\n children?: ReactNode;\n isLoading?: boolean;\n isSelected?: boolean;\n type?: 'primary' | 'outline' | 'clear' | (string & {});\n theme?:\n | 'current'\n | 'default'\n | 'danger'\n | 'success'\n | 'warning'\n | 'note'\n | 'special'\n | (string & {});\n tooltip?:\n | string\n | (Omit<ComponentProps<typeof TooltipProvider>, 'children'> & {\n title?: ReactNode;\n });\n styles?: Styles;\n tabIndex?: number;\n}\n\ntype ItemActionVariant =\n // Inherited-color theme — see the CURRENT THEME section of `item-themes`.\n | 'current.primary'\n | 'current.outline'\n | 'current.clear'\n | 'default.primary'\n | 'default.outline'\n | 'default.clear'\n | 'danger.primary'\n | 'danger.outline'\n | 'danger.clear'\n | 'success.primary'\n | 'success.outline'\n | 'success.clear'\n | 'warning.primary'\n | 'warning.outline'\n | 'warning.clear'\n | 'note.primary'\n | 'note.outline'\n | 'note.clear'\n | 'special.primary'\n | 'special.outline'\n | 'special.clear';\n\nconst ItemActionElement = tasty({\n qa: 'ItemAction',\n styles: {\n // eslint-disable-next-line tasty/no-style-spread -- action base shared with ItemBadge\n ...ITEM_ACTION_BASE_STYLES,\n recipe: 'reset button',\n // Every variant below defines its own ring and overrides this one, which is\n // kept as the floor for a custom `type` that resolves to no variant at all.\n // It uses the same `#primary-accent-text` as every variant in\n // `item-themes.ts`.\n outline: {\n '': '0 #primary-accent-text.0',\n focused: '1bw #primary-accent-text',\n },\n outlineOffset: 1,\n cursor: { '': '$pointer', disabled: 'default' },\n preset: {\n '': 't4',\n 'size=xlarge': 't3m',\n },\n padding: {\n '': '0 $inline-padding',\n 'has-icon': 0,\n 'has-icon & has-label': '$inline-padding right',\n },\n\n '$inline-padding': {\n '': 'max($min-inline-padding, (($action-size - 1lh - 2bw) / 2 + $inline-compensation))',\n 'size=inline': '.25x',\n },\n '$inline-compensation': '.5x',\n '$min-inline-padding': '(.5x - 1bw)',\n '$local-icon-size': '$icon-size',\n\n Icon: {\n $: '>',\n // eslint-disable-next-line tasty/no-style-spread -- Icon base shared with ItemBadge\n ...(ITEM_ACTION_BASE_STYLES.Icon as Styles),\n '$icon-size': 'min($local-icon-size, ($action-size - .25x))',\n },\n },\n variants: {\n // Current theme — colors mixed from the inherited `currentcolor`. The\n // default `clear` flavour is borderless, so an action does not put a resting\n // chip on every row.\n 'current.primary': CURRENT_PRIMARY_STYLES,\n 'current.outline': CURRENT_OUTLINE_STYLES,\n 'current.clear': CURRENT_CLEAR_STYLES,\n\n // Default theme\n 'default.primary': DEFAULT_PRIMARY_STYLES,\n 'default.outline': DEFAULT_OUTLINE_STYLES,\n 'default.clear': DEFAULT_CLEAR_STYLES,\n\n // Danger theme\n 'danger.primary': DANGER_PRIMARY_STYLES,\n 'danger.outline': DANGER_OUTLINE_STYLES,\n 'danger.clear': DANGER_CLEAR_STYLES,\n\n // Success theme\n 'success.primary': SUCCESS_PRIMARY_STYLES,\n 'success.outline': SUCCESS_OUTLINE_STYLES,\n 'success.clear': SUCCESS_CLEAR_STYLES,\n\n // Warning theme\n 'warning.primary': WARNING_PRIMARY_STYLES,\n 'warning.outline': WARNING_OUTLINE_STYLES,\n 'warning.clear': WARNING_CLEAR_STYLES,\n\n // Note theme\n 'note.primary': NOTE_PRIMARY_STYLES,\n 'note.outline': NOTE_OUTLINE_STYLES,\n 'note.clear': NOTE_CLEAR_STYLES,\n\n // Special theme\n 'special.primary': SPECIAL_PRIMARY_STYLES,\n 'special.outline': SPECIAL_OUTLINE_STYLES,\n 'special.clear': SPECIAL_CLEAR_STYLES,\n },\n});\n\nexport const ItemAction = forwardRef(function ItemAction(\n allProps: CubeItemActionProps,\n ref: FocusableRef<HTMLElement>,\n) {\n const {\n type: contextType,\n disableActionsFocus,\n menuItemAction,\n isDisabled: contextIsDisabled,\n } = useItemActionContext();\n\n const {\n // Borderless by default: an action sits inside a row, where a resting chip\n // on every one of them would read as noise.\n type = 'clear',\n // The `current` theme derives every color from the row's inherited\n // `currentcolor`, so one default covers every host type and theme — no need\n // to mirror the row's own `theme` from context. An action that names a theme\n // is asking to paint itself rather than match its host, and gets it.\n theme = 'current',\n icon,\n children,\n isLoading = false,\n isSelected = false,\n tooltip,\n mods,\n styles,\n isDisabled: isDisabledProp,\n ...rest\n } = allProps;\n\n // Inherit disabled state from context, but allow local override. Loading\n // always disables, as on `Button`: a second press while the first is still\n // running would run the action again, so not even `isDisabled={false}`\n // re-enables a loading action.\n const isDisabled = isLoading || (isDisabledProp ?? contextIsDisabled);\n\n // The host row is disabled too. The `current` theme paints from the inherited\n // color, which a disabled host has already faded, so fading a second time\n // washes the label out (see `CURRENT_ITEM_STYLES.color`). And like a disabled\n // fieldset, a disabled host leaves its button actions out of the tab order.\n const isDisabledInherited = !!contextIsDisabled && isDisabled;\n\n // Determine if we should show a checkmark\n const hasCheckmark = icon === 'checkmark';\n\n // Determine final icon (loading takes precedence)\n const finalIcon = isLoading ? (\n <LoadingIcon />\n ) : hasCheckmark ? (\n <CheckIcon />\n ) : (\n icon\n );\n\n // Build modifiers\n const finalMods = {\n checkmark: hasCheckmark,\n selected: isSelected,\n loading: isLoading,\n 'has-label': !!children,\n context: !!contextType,\n // The spinner takes the icon slot, so it needs the icon's padding.\n 'has-icon': !!finalIcon,\n 'inherit-disabled': isDisabledInherited,\n ...mods,\n };\n\n // An explicit label always wins; a tooltip only fills in the accessible name\n // when there isn't one. Rich tooltip content can't serve as a name, so only\n // plain strings are used here.\n const ariaLabel =\n rest['aria-label'] ||\n (typeof tooltip === 'string'\n ? tooltip\n : typeof tooltip === 'object' && typeof tooltip.title === 'string'\n ? tooltip.title\n : undefined);\n\n // `isDisabled` is dropped from the element: tasty would turn it into the\n // native `disabled` attribute, which `getDisabledElementProps` decides below.\n const {\n actionProps: { isDisabled: _isDisabled, ...actionProps },\n } = useAction(\n {\n ...rest,\n isDisabled,\n 'aria-label': ariaLabel,\n mods: finalMods,\n htmlType: 'button',\n },\n ref,\n );\n\n // Set tabIndex when in context. A loading action keeps focus it already has,\n // but Tab skips it until loading ends, tooltip or not.\n const finalTabIndex = disableActionsFocus || isLoading ? -1 : rest.tabIndex;\n\n // Extract tooltip content and props\n const tooltipContent =\n typeof tooltip === 'string'\n ? tooltip\n : typeof tooltip === 'object' && tooltip.title\n ? tooltip.title\n : undefined;\n\n const { title: _title, ...tooltipProps } =\n typeof tooltip === 'object' ? tooltip : {};\n\n // Only icon-only actions show their tooltip.\n const hasTooltip = !children && !!tooltipContent;\n\n // Native `disabled` drops focus. A loading action keeps it, so a keyboard\n // press doesn't lose its place. So does an action that disables itself while\n // showing a tooltip, often its only label, which keyboard users reach and read\n // as on `Button`. One whose host is disabled too stays native.\n const { isNativelyDisabled, isInert, inertProps } = getDisabledElementProps({\n isDisabled,\n keepEvents: isLoading || (hasTooltip && !isDisabledInherited),\n as: typeof actionProps.as === 'string' ? actionProps.as : undefined,\n });\n\n // Without the native attribute, handlers a parent passed in (a `MenuTrigger`'s\n // `onKeyDown`) would still activate the action.\n const elementProps = isInert\n ? omitActivationEventProps(actionProps)\n : actionProps;\n\n const finalType = type;\n\n // Render function that accepts tooltip trigger props and ref\n const renderButton = (\n tooltipTriggerProps?: HTMLAttributes<HTMLElement>,\n tooltipRef?: RefObject<HTMLElement>,\n ) => {\n // Merge tooltip ref with actionProps if provided\n const mergedProps = tooltipRef\n ? mergeProps(elementProps, tooltipTriggerProps || {}, inertProps, {\n ref: (element: HTMLElement | null) => {\n // Set the tooltip ref\n if (tooltipRef) {\n (tooltipRef as any).current = element;\n }\n // Set the action ref if it exists in actionProps\n const actionRef = (actionProps as any).ref;\n if (actionRef) {\n if (typeof actionRef === 'function') {\n actionRef(element);\n } else {\n actionRef.current = element;\n }\n }\n },\n })\n : mergeProps(elementProps, tooltipTriggerProps || {}, inertProps);\n\n return (\n <ItemActionElement\n {...mergedProps}\n disabled={isNativelyDisabled}\n variant={`${theme}.${finalType}` as ItemActionVariant}\n data-theme={theme}\n data-type={finalType}\n role={menuItemAction ? 'menuitem' : rest.role}\n data-menu-inline-action={menuItemAction || undefined}\n tabIndex={finalTabIndex}\n styles={styles}\n >\n {finalIcon && <div data-element=\"Icon\">{finalIcon}</div>}\n {children}\n </ItemActionElement>\n );\n };\n\n // Wrap with tooltip if needed\n if (hasTooltip) {\n return (\n <TooltipProvider title={tooltipContent} {...tooltipProps}>\n {(triggerProps, tooltipRef) => renderButton(triggerProps, tooltipRef)}\n </TooltipProvider>\n );\n }\n\n return renderButton();\n});\n\nexport type { CubeItemActionProps as ItemActionProps };\n"],"mappings":";;;;;;;;;;;;;;;AAuGA,MAAMsD,oBAAoBnD,MAAM;CAC9BoD,IAAI;CACJJ,QAAQ;EAEN,GAAGjC;EACHsC,QAAQ;EAKRC,SAAS;GACP,IAAI;GACJC,SAAS;GACV;EACDC,eAAe;EACfC,QAAQ;GAAE,IAAI;GAAYC,UAAU;GAAW;EAC/CC,QAAQ;GACN,IAAI;GACJ,eAAe;GAChB;EACDC,SAAS;GACP,IAAI;GACJ,YAAY;GACZ,wBAAwB;GACzB;EAED,mBAAmB;GACjB,IAAI;GACJ,eAAe;GAChB;EACD,wBAAwB;EACxB,uBAAuB;EACvB,oBAAoB;EAEpBC,MAAM;GACJC,GAAG;GAEH,GAAI/C,wBAAwB8C;GAC5B,cAAc;GAChB;EACD;CACDE,UAAU;EAIR,mBAAmBvD;EACnB,mBAAmBD;EACnB,iBAAiBD;EAGjB,mBAAmBQ;EACnB,mBAAmBD;EACnB,iBAAiBD;EAGjB,kBAAkBD;EAClB,kBAAkBD;EAClB,gBAAgBD;EAGhB,mBAAmBe;EACnB,mBAAmBD;EACnB,iBAAiBD;EAGjB,mBAAmBK;EACnB,mBAAmBD;EACnB,iBAAiBD;EAGjB,gBAAgBP;EAChB,gBAAgBD;EAChB,cAAcD;EAGd,mBAAmBK;EACnB,mBAAmBD;EACnB,iBAAiBD;EACnB;CACD,CAAC;AAEF,MAAa6C,aAAa9D,WAAW,SAAA8D,WAAAC,UAAAC,KAAA;CAAA,MAAAJ,IAAAK,EAAA,GAAA;CAInC,MAAA,EAAAvB,MAAAwB,aAAAC,qBAAAC,gBAAAC,YAAAC,sBAKItC,sBAAsB;CAAC,IAAAO;CAAA,IAAAD;CAAA,IAAAiC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAA3B;CAAA,IAAA4B;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAC;CAAA,IAAAjC;AAAA,KAAAgB,EAAA,OAAAG,UAAA;AAE3B,GAAA,CAAArB,MAAAgC,IAAA/B,OAAAgC,IAAArC,MAAAC,UAAAC,WAAAoC,IAAAnC,YAAAoC,IAAAjC,SAAA4B,MAAA1B,QAAAuB,YAAAE,mBAAAE,QAkBIV;AAASH,IAAA,KAAAG;AAAAH,IAAA,KAAArB;AAAAqB,IAAA,KAAAtB;AAAAsB,IAAA,KAAAW;AAAAX,IAAA,KAAAY;AAAAZ,IAAA,KAAAa;AAAAb,IAAA,KAAAd;AAAAc,IAAA,KAAAc;AAAAd,IAAA,KAAAe;AAAAf,IAAA,KAAAgB;AAAAhB,IAAA,MAAAiB;AAAAjB,IAAA,MAAAhB;QAAA;AAAAL,aAAAqB,EAAA;AAAAtB,SAAAsB,EAAA;AAAAW,mBAAAX,EAAA;AAAAY,SAAAZ,EAAA;AAAAa,SAAAb,EAAA;AAAAd,WAAAc,EAAA;AAAAc,OAAAd,EAAA;AAAAe,OAAAf,EAAA;AAAAgB,OAAAhB,EAAA;AAAAiB,OAAAjB,EAAA;AAAAhB,YAAAgB,EAAA;;CAfX,MAAAlB,OAAAgC,OAAAI,SAAA,UAAAJ;CAKA,MAAA/B,QAAAgC,OAAAG,SAAA,YAAAH;CAGA,MAAAnC,YAAAoC,OAAAE,SAAA,QAAAF;CACA,MAAAnC,aAAAoC,OAAAC,SAAA,QAAAD;CAYF,MAAAR,aAAmB7B,cAAc+B,kBAAAD;CAMjC,MAAAS,sBAA4B,CAAC,CAACT,qBAAFD;CAG5B,MAAAW,eAAqB1C,SAAS;CAAY,IAAA2C;AAAA,KAAArB,EAAA,QAAAoB,gBAAApB,EAAA,QAAAtB,QAAAsB,EAAA,QAAApB,WAAA;AAGxByC,OAAAzC,YAChB,oBAAC,gBAKF,GAJGwC,eACF,oBAAC,cAGF,GAJG1C;AAIHsB,IAAA,MAAAoB;AAAApB,IAAA,MAAAtB;AAAAsB,IAAA,MAAApB;AAAAoB,IAAA,MAAAqB;OAAAA,MAAArB,EAAA;CAND,MAAAsB,YAAkBD;CAaH,MAAAE,KAAA,CAAC,CAAC5C;CACN,MAAA6C,KAAA,CAAC,CAAClB;CAEC,MAAAmB,KAAA,CAAC,CAACH;CAAS,IAAAI;AAAA,KAAA1B,EAAA,QAAAoB,gBAAApB,EAAA,QAAAmB,uBAAAnB,EAAA,QAAApB,aAAAoB,EAAA,QAAAnB,cAAAmB,EAAA,QAAAY,QAAAZ,EAAA,QAAAuB,MAAAvB,EAAA,QAAAwB,MAAAxB,EAAA,QAAAyB,IAAA;AAPPC,OAAA;GAAAC,WACLP;GAAYQ,UACb/C;GAAUgD,SACXjD;GAAS,aACL2C;GAAUO,SACdN;GAAa,YAEVC;GAAW,oBACHN;GAAmB,GACpCP;GACJ;AAAAZ,IAAA,MAAAoB;AAAApB,IAAA,MAAAmB;AAAAnB,IAAA,MAAApB;AAAAoB,IAAA,MAAAnB;AAAAmB,IAAA,MAAAY;AAAAZ,IAAA,MAAAuB;AAAAvB,IAAA,MAAAwB;AAAAxB,IAAA,MAAAyB;AAAAzB,IAAA,MAAA0B;OAAAA,MAAA1B,EAAA;CAVD,MAAA+B,YAAkBL;CAelB,MAAAM,YACEnB,KAAK,kBACJ,OAAO7B,YAAY,WAAnBA,UAEG,OAAOA,YAAY,YAAY,OAAOA,QAAOC,UAAW,WACtDD,QAAOC,QADTiC;CAEa,IAAAe;AAAA,KAAAjC,EAAA,QAAAgC,aAAAhC,EAAA,QAAA+B,aAAA/B,EAAA,QAAAS,cAAAT,EAAA,QAAAa,MAAA;AAOjBoB,OAAA;GAAA,GACKpB;GAAIJ;GAAA,cAEOuB;GAASpB,MACjBmB;GAASG,UACL;GACX;AAAAlC,IAAA,MAAAgC;AAAAhC,IAAA,MAAA+B;AAAA/B,IAAA,MAAAS;AAAAT,IAAA,MAAAa;AAAAb,IAAA,MAAAiC;OAAAA,MAAAjC,EAAA;CATH,MAAA,EAAAmC,aAAAC,QAEI9D,UACF2D,IAOA7B,IACD;CAAC,IAAAiC;CAAA,IAAAC;AAAA,KAAAtC,EAAA,QAAArB,YAAAqB,EAAA,QAAAO,uBAAAP,EAAA,QAAAsB,aAAAtB,EAAA,QAAAS,cAAAT,EAAA,QAAAmB,uBAAAnB,EAAA,QAAApB,aAAAoB,EAAA,QAAAQ,kBAAAR,EAAA,QAAAa,KAAA0B,QAAAvC,EAAA,QAAAa,KAAA1B,YAAAa,EAAA,QAAAd,UAAAc,EAAA,QAAAoC,OAAApC,EAAA,QAAAjB,SAAAiB,EAAA,QAAAhB,WAAAgB,EAAA,QAAAlB,MAAA;AAqFEwD,QAAAE,OAEkBC,IAFlB,8BAEkB;AAAAC,OAAA;GAjGP,MAAA,EAAAjC,YAAAkC,aAAA,GAAAR,gBAAAC;GAcf,MAAAQ,gBAAsBrC,uBAAA3B,YAAA,KAAwCiC,KAAI1B;GAGlE,MAAA0D,iBACE,OAAO7D,YAAY,WAAnBA,UAEI,OAAOA,YAAY,YAAYA,QAAOC,QACpCD,QAAOC,QADTiC;GAEY,IAAA4B;AAAA,OAAA9C,EAAA,QAAAhB,SAAA;AAGhB8D,UAAA,OAAO9D,YAAY,WAAnBA,UAAA,EAA0C;AAAAgB,MAAA,MAAAhB;AAAAgB,MAAA,MAAA8C;SAAAA,OAAA9C,EAAA;GAAA,IAAA+C;AAAA,OAAA/C,EAAA,QAAA8C,KAAA;IAD5C,MAAA,EAAA7D,OAAA+D,QAAA,GAAAC,QACEH;AADFC,mBAAAE;AAC6CjD,MAAA,MAAA8C;AAAA9C,MAAA,MAAA+C;SAAAA,gBAAA/C,EAAA;GAG7C,MAAAkD,aAAmB,CAACvE,YAAD,CAAc,CAACkE;GAMlC,MAAA,EAAAM,oBAAAC,SAAAC,eAAoDrF,wBAAwB;IAAAyC;IAAA6C,YAE9D1E,aAAcsE,cAAA,CAAe/B;IAAoBoC,IACzD,OAAOpB,YAAWoB,OAAQ,WAAWpB,YAAWoB,KAAhDrC;IACL,CAAC;GAIF,MAAAsC,eAAqBJ,UACjBlF,yBAAyBiE,YACd,GAFMA;GAIrB,MAAAsB,YAAkB3E;GAGlB,MAAA4E,gBAAqBC,qBAAAC,eAAA;AAuBiD,WAGlE,qBAAC;KAAiB,GArBAA,aAChB3F,WAAWuF,cAAcG,uBAAA,EAAyB,EAAEN,YAAY,EAAAjD,MACzD0D,YAAA;AAEH,UAAIF,WACF,CAACA,WAAiBG,UAAYD;MAGhC,MAAAE,YAAmB7B,YAAkB/B;AACrC,UAAI4D,UACF,KAAI,OAAOA,cAAc,WACvBA,WAAUF,QAAQ;UAElBE,WAASD,UAAWD;QAKkC,CAAC,GAA/D7F,WAAWuF,cAAcG,uBAAA,EAAyB,EAAEN,WAAW;KAKrDF,UAAAA;KACD,SAAA,GAAGpE,MAAK,GAAI0E;KACT1E,cAAAA;KACD0E,aAAAA;KACL,MAAAjD,iBAAA,aAA8BK,KAAI0B;KACf,2BAAA/B,kBAAAU;KACf0B,UAAAA;KACF1D;gBAEPoC,aAAa,oBAAA;MAAkB,gBAAA;gBAAQA;OAAe,EACtD3C;MACiB;;AAKxB,OAAIuE,YAAU;AAEVZ,UAAA,oBAAC;KAAuBO,OAAAA;KAAc,GAAME;gBACzCkB,cAAAC,iBAA8BR,aAAaO,cAAcL,aAAU;MACpD;AAFlB,UAAAlB;;AAMGL,SAAAqB,cAAc;;AAAA1D,IAAA,MAAArB;AAAAqB,IAAA,MAAAO;AAAAP,IAAA,MAAAsB;AAAAtB,IAAA,MAAAS;AAAAT,IAAA,MAAAmB;AAAAnB,IAAA,MAAApB;AAAAoB,IAAA,MAAAQ;AAAAR,IAAA,MAAAa,KAAA0B;AAAAvC,IAAA,MAAAa,KAAA1B;AAAAa,IAAA,MAAAd;AAAAc,IAAA,MAAAoC;AAAApC,IAAA,MAAAjB;AAAAiB,IAAA,MAAAhB;AAAAgB,IAAA,MAAAlB;AAAAkB,IAAA,MAAAqC;AAAArC,IAAA,MAAAsC;QAAA;AAAAD,QAAArC,EAAA;AAAAsC,QAAAtC,EAAA;;AAAA,KAAAsC,QAAAE,OAAAC,IAAA,8BAAA,CAAA,QAAAH;AAAA,QAAdD;EACP"}
1
+ {"version":3,"file":"ItemAction.js","names":["FocusableRef","BaseProps","Styles","tasty","ComponentProps","forwardRef","HTMLAttributes","ReactNode","RefObject","CURRENT_CLEAR_STYLES","CURRENT_OUTLINE_STYLES","CURRENT_PRIMARY_STYLES","DANGER_CLEAR_STYLES","DANGER_OUTLINE_STYLES","DANGER_PRIMARY_STYLES","DEFAULT_CLEAR_STYLES","DEFAULT_OUTLINE_STYLES","DEFAULT_PRIMARY_STYLES","ITEM_ACTION_BASE_STYLES","NOTE_CLEAR_STYLES","NOTE_OUTLINE_STYLES","NOTE_PRIMARY_STYLES","SPECIAL_CLEAR_STYLES","SPECIAL_OUTLINE_STYLES","SPECIAL_PRIMARY_STYLES","SUCCESS_CLEAR_STYLES","SUCCESS_OUTLINE_STYLES","SUCCESS_PRIMARY_STYLES","WARNING_CLEAR_STYLES","WARNING_OUTLINE_STYLES","WARNING_PRIMARY_STYLES","CheckIcon","LoadingIcon","getDisabledElementProps","mergeProps","omitActivationEventProps","mergeTooltipFocusProps","TooltipProvider","useItemActionContext","CubeUseActionProps","useAction","CubeItemActionProps","Omit","size","icon","children","isLoading","isSelected","type","theme","tooltip","title","styles","tabIndex","ItemActionVariant","ItemActionElement","qa","recipe","outline","focused","outlineOffset","cursor","disabled","preset","padding","Icon","$","variants","ItemAction","allProps","ref","_c","contextType","disableActionsFocus","menuItemAction","isDisabled","contextIsDisabled","isDisabledProp","mods","rest","t0","t1","t2","t3","undefined","isDisabledInherited","hasCheckmark","t4","finalIcon","t5","t6","t7","t8","checkmark","selected","loading","context","finalMods","ariaLabel","t9","htmlType","actionProps","t10","t11","t12","excludeFromTabOrder","role","Symbol","for","bb0","_isDisabled","finalTabIndex","tooltipContent","t13","tooltipProps","_title","t14","hasTooltip","isNativelyDisabled","isInert","inertProps","keepEvents","as","elementProps","finalType","renderButton","tooltipTriggerProps","tooltipRef","mergedProps","element","current","actionRef","triggerProps","tooltipRef_0","ItemActionProps"],"sources":["../../../../src/components/actions/ItemAction/ItemAction.tsx"],"sourcesContent":["import { FocusableRef } from '@react-types/shared';\nimport { BaseProps, Styles, tasty } from '@tenphi/tasty';\nimport {\n ComponentProps,\n forwardRef,\n HTMLAttributes,\n ReactNode,\n RefObject,\n} from 'react';\n\nimport {\n CURRENT_CLEAR_STYLES,\n CURRENT_OUTLINE_STYLES,\n CURRENT_PRIMARY_STYLES,\n DANGER_CLEAR_STYLES,\n DANGER_OUTLINE_STYLES,\n DANGER_PRIMARY_STYLES,\n DEFAULT_CLEAR_STYLES,\n DEFAULT_OUTLINE_STYLES,\n DEFAULT_PRIMARY_STYLES,\n ITEM_ACTION_BASE_STYLES,\n NOTE_CLEAR_STYLES,\n NOTE_OUTLINE_STYLES,\n NOTE_PRIMARY_STYLES,\n SPECIAL_CLEAR_STYLES,\n SPECIAL_OUTLINE_STYLES,\n SPECIAL_PRIMARY_STYLES,\n SUCCESS_CLEAR_STYLES,\n SUCCESS_OUTLINE_STYLES,\n SUCCESS_PRIMARY_STYLES,\n WARNING_CLEAR_STYLES,\n WARNING_OUTLINE_STYLES,\n WARNING_PRIMARY_STYLES,\n} from '../../../data/item-themes';\nimport { CheckIcon } from '../../../icons/CheckIcon';\nimport { LoadingIcon } from '../../../icons/LoadingIcon';\nimport {\n getDisabledElementProps,\n mergeProps,\n omitActivationEventProps,\n} from '../../../utils/react';\nimport { mergeTooltipFocusProps } from '../../overlays/Tooltip/split-trigger-props';\nimport { TooltipProvider } from '../../overlays/Tooltip/TooltipProvider';\nimport { useItemActionContext } from '../ItemActionContext';\nimport { CubeUseActionProps, useAction } from '../use-action';\n\nexport interface CubeItemActionProps\n extends Omit<CubeUseActionProps, 'as' | 'htmlType'>,\n Omit<BaseProps, 'as'> {\n size?:\n | 'xsmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xlarge'\n | 'inline'\n | (string & {});\n icon?: ReactNode | 'checkmark';\n children?: ReactNode;\n isLoading?: boolean;\n isSelected?: boolean;\n type?: 'primary' | 'outline' | 'clear' | (string & {});\n theme?:\n | 'current'\n | 'default'\n | 'danger'\n | 'success'\n | 'warning'\n | 'note'\n | 'special'\n | (string & {});\n tooltip?:\n | string\n | (Omit<ComponentProps<typeof TooltipProvider>, 'children'> & {\n title?: ReactNode;\n });\n styles?: Styles;\n tabIndex?: number;\n}\n\ntype ItemActionVariant =\n // Inherited-color theme — see the CURRENT THEME section of `item-themes`.\n | 'current.primary'\n | 'current.outline'\n | 'current.clear'\n | 'default.primary'\n | 'default.outline'\n | 'default.clear'\n | 'danger.primary'\n | 'danger.outline'\n | 'danger.clear'\n | 'success.primary'\n | 'success.outline'\n | 'success.clear'\n | 'warning.primary'\n | 'warning.outline'\n | 'warning.clear'\n | 'note.primary'\n | 'note.outline'\n | 'note.clear'\n | 'special.primary'\n | 'special.outline'\n | 'special.clear';\n\nconst ItemActionElement = tasty({\n qa: 'ItemAction',\n styles: {\n // eslint-disable-next-line tasty/no-style-spread -- action base shared with ItemBadge\n ...ITEM_ACTION_BASE_STYLES,\n recipe: 'reset button',\n // Every variant below defines its own ring and overrides this one, which is\n // kept as the floor for a custom `type` that resolves to no variant at all.\n // It uses the same `#primary-accent-text` as every variant in\n // `item-themes.ts`.\n outline: {\n '': '0 #primary-accent-text.0',\n focused: '1bw #primary-accent-text',\n },\n outlineOffset: 1,\n cursor: { '': '$pointer', disabled: 'default' },\n preset: {\n '': 't4',\n 'size=xlarge': 't3m',\n },\n padding: {\n '': '0 $inline-padding',\n 'has-icon': 0,\n 'has-icon & has-label': '$inline-padding right',\n },\n\n '$inline-padding': {\n '': 'max($min-inline-padding, (($action-size - 1lh - 2bw) / 2 + $inline-compensation))',\n 'size=inline': '.25x',\n },\n '$inline-compensation': '.5x',\n '$min-inline-padding': '(.5x - 1bw)',\n '$local-icon-size': '$icon-size',\n\n Icon: {\n $: '>',\n // eslint-disable-next-line tasty/no-style-spread -- Icon base shared with ItemBadge\n ...(ITEM_ACTION_BASE_STYLES.Icon as Styles),\n '$icon-size': 'min($local-icon-size, ($action-size - .25x))',\n },\n },\n variants: {\n // Current theme — colors mixed from the inherited `currentcolor`. The\n // default `clear` flavour is borderless, so an action does not put a resting\n // chip on every row.\n 'current.primary': CURRENT_PRIMARY_STYLES,\n 'current.outline': CURRENT_OUTLINE_STYLES,\n 'current.clear': CURRENT_CLEAR_STYLES,\n\n // Default theme\n 'default.primary': DEFAULT_PRIMARY_STYLES,\n 'default.outline': DEFAULT_OUTLINE_STYLES,\n 'default.clear': DEFAULT_CLEAR_STYLES,\n\n // Danger theme\n 'danger.primary': DANGER_PRIMARY_STYLES,\n 'danger.outline': DANGER_OUTLINE_STYLES,\n 'danger.clear': DANGER_CLEAR_STYLES,\n\n // Success theme\n 'success.primary': SUCCESS_PRIMARY_STYLES,\n 'success.outline': SUCCESS_OUTLINE_STYLES,\n 'success.clear': SUCCESS_CLEAR_STYLES,\n\n // Warning theme\n 'warning.primary': WARNING_PRIMARY_STYLES,\n 'warning.outline': WARNING_OUTLINE_STYLES,\n 'warning.clear': WARNING_CLEAR_STYLES,\n\n // Note theme\n 'note.primary': NOTE_PRIMARY_STYLES,\n 'note.outline': NOTE_OUTLINE_STYLES,\n 'note.clear': NOTE_CLEAR_STYLES,\n\n // Special theme\n 'special.primary': SPECIAL_PRIMARY_STYLES,\n 'special.outline': SPECIAL_OUTLINE_STYLES,\n 'special.clear': SPECIAL_CLEAR_STYLES,\n },\n});\n\nexport const ItemAction = forwardRef(function ItemAction(\n allProps: CubeItemActionProps,\n ref: FocusableRef<HTMLElement>,\n) {\n const {\n type: contextType,\n disableActionsFocus,\n menuItemAction,\n isDisabled: contextIsDisabled,\n } = useItemActionContext();\n\n const {\n // Borderless by default: an action sits inside a row, where a resting chip\n // on every one of them would read as noise.\n type = 'clear',\n // The `current` theme derives every color from the row's inherited\n // `currentcolor`, so one default covers every host type and theme — no need\n // to mirror the row's own `theme` from context. An action that names a theme\n // is asking to paint itself rather than match its host, and gets it.\n theme = 'current',\n icon,\n children,\n isLoading = false,\n isSelected = false,\n tooltip,\n mods,\n styles,\n isDisabled: isDisabledProp,\n ...rest\n } = allProps;\n\n // Inherit disabled state from context, but allow local override. Loading\n // always disables, as on `Button`: a second press while the first is still\n // running would run the action again, so not even `isDisabled={false}`\n // re-enables a loading action.\n const isDisabled = isLoading || (isDisabledProp ?? contextIsDisabled);\n\n // The host row is disabled too. The `current` theme paints from the inherited\n // color, which a disabled host has already faded, so fading a second time\n // washes the label out (see `CURRENT_ITEM_STYLES.color`). And like a disabled\n // fieldset, a disabled host leaves its button actions out of the tab order.\n const isDisabledInherited = !!contextIsDisabled && isDisabled;\n\n // Determine if we should show a checkmark\n const hasCheckmark = icon === 'checkmark';\n\n // Determine final icon (loading takes precedence)\n const finalIcon = isLoading ? (\n <LoadingIcon />\n ) : hasCheckmark ? (\n <CheckIcon />\n ) : (\n icon\n );\n\n // Build modifiers\n const finalMods = {\n checkmark: hasCheckmark,\n selected: isSelected,\n loading: isLoading,\n 'has-label': !!children,\n context: !!contextType,\n // The spinner takes the icon slot, so it needs the icon's padding.\n 'has-icon': !!finalIcon,\n 'inherit-disabled': isDisabledInherited,\n ...mods,\n };\n\n // An explicit label always wins; a tooltip only fills in the accessible name\n // when there isn't one. Rich tooltip content can't serve as a name, so only\n // plain strings are used here.\n const ariaLabel =\n rest['aria-label'] ||\n (typeof tooltip === 'string'\n ? tooltip\n : typeof tooltip === 'object' && typeof tooltip.title === 'string'\n ? tooltip.title\n : undefined);\n\n // `isDisabled` is dropped from the element: tasty would turn it into the\n // native `disabled` attribute, which `getDisabledElementProps` decides below.\n const {\n actionProps: { isDisabled: _isDisabled, ...actionProps },\n } = useAction(\n {\n ...rest,\n isDisabled,\n 'aria-label': ariaLabel,\n mods: finalMods,\n htmlType: 'button',\n },\n ref,\n );\n\n // Set tabIndex when in context. A loading action keeps focus it already has,\n // but Tab skips it until loading ends, tooltip or not. Otherwise an explicit\n // `tabIndex` wins over `excludeFromTabOrder`, which this prop would reset.\n const finalTabIndex =\n disableActionsFocus || isLoading\n ? -1\n : rest.tabIndex ?? (rest.excludeFromTabOrder ? -1 : undefined);\n\n // Extract tooltip content and props\n const tooltipContent =\n typeof tooltip === 'string'\n ? tooltip\n : typeof tooltip === 'object' && tooltip.title\n ? tooltip.title\n : undefined;\n\n const { title: _title, ...tooltipProps } =\n typeof tooltip === 'object' ? tooltip : {};\n\n // Only icon-only actions show their tooltip.\n const hasTooltip = !children && !!tooltipContent;\n\n // Native `disabled` drops focus. A loading action keeps it, so a keyboard\n // press doesn't lose its place. So does an action that disables itself while\n // showing a tooltip, often its only label, which keyboard users reach and read\n // as on `Button`. One whose host is disabled too stays native.\n const { isNativelyDisabled, isInert, inertProps } = getDisabledElementProps({\n isDisabled,\n keepEvents: isLoading || (hasTooltip && !isDisabledInherited),\n as: typeof actionProps.as === 'string' ? actionProps.as : undefined,\n });\n\n // Without the native attribute, handlers a parent passed in (a `MenuTrigger`'s\n // `onKeyDown`) would still activate the action.\n const elementProps = isInert\n ? omitActivationEventProps(actionProps)\n : actionProps;\n\n const finalType = type;\n\n // Render function that accepts tooltip trigger props and ref\n const renderButton = (\n tooltipTriggerProps?: HTMLAttributes<HTMLElement>,\n tooltipRef?: RefObject<HTMLElement>,\n ) => {\n // Merge tooltip ref with actionProps if provided\n const mergedProps = tooltipRef\n ? mergeProps(\n mergeTooltipFocusProps(elementProps, tooltipTriggerProps),\n inertProps,\n {\n ref: (element: HTMLElement | null) => {\n // Set the tooltip ref\n if (tooltipRef) {\n (tooltipRef as any).current = element;\n }\n // Set the action ref if it exists in actionProps\n const actionRef = (actionProps as any).ref;\n if (actionRef) {\n if (typeof actionRef === 'function') {\n actionRef(element);\n } else {\n actionRef.current = element;\n }\n }\n },\n },\n )\n : mergeProps(\n mergeTooltipFocusProps(elementProps, tooltipTriggerProps),\n inertProps,\n );\n\n return (\n <ItemActionElement\n {...mergedProps}\n disabled={isNativelyDisabled}\n variant={`${theme}.${finalType}` as ItemActionVariant}\n data-theme={theme}\n data-type={finalType}\n role={menuItemAction ? 'menuitem' : rest.role}\n data-menu-inline-action={menuItemAction || undefined}\n tabIndex={finalTabIndex}\n styles={styles}\n >\n {finalIcon && <div data-element=\"Icon\">{finalIcon}</div>}\n {children}\n </ItemActionElement>\n );\n };\n\n // Wrap with tooltip if needed\n if (hasTooltip) {\n return (\n <TooltipProvider title={tooltipContent} {...tooltipProps}>\n {(triggerProps, tooltipRef) => renderButton(triggerProps, tooltipRef)}\n </TooltipProvider>\n );\n }\n\n return renderButton();\n});\n\nexport type { CubeItemActionProps as ItemActionProps };\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { createContext, useContext } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { DisplayTransition } from "../helpers/DisplayTransition/DisplayTransition.js";
3
3
  import { ITEM_RESTING_COLOR_VARIANTS, ROW_STATE_ALIASES, resolveItemVariant } from "../../data/item-themes.js";
4
4
  import { ItemActionProvider } from "./ItemActionContext.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { mergeRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { useDismissParentPopover } from "../../../utils/react/usePopoverSync.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { Button } from "../Button/Button.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { forwardRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useMenuContext } from "./context.js";
@@ -1,4 +1,5 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
+ import { normalizeNavigationUrl } from "../../../providers/navigation-url.js";
2
3
  import { parseTo } from "../use-action.js";
3
4
  import { COLLECTION_ITEM_CLICK, _CollectionItem } from "../../CollectionItem.js";
4
5
  import { Item } from "react-stately";
@@ -16,12 +17,14 @@ const _MenuCollectionItem = Object.assign(MenuCollectionItem, {
16
17
  Badge: _CollectionItem.Badge,
17
18
  getCollectionNode(props, context) {
18
19
  const { newTab } = parseTo(props.to);
19
- const isCurrentDocument = props.to == null && props.href === "";
20
- const isLink = props.to !== "" && (props.to != null || props.href != null);
20
+ const to = typeof props.to === "string" ? normalizeNavigationUrl(props.to) : props.to;
21
+ const href = typeof props.href === "string" ? normalizeNavigationUrl(props.href) : props.href;
22
+ const isCurrentDocument = to == null && href === "";
23
+ const isLink = to !== "" && (to != null || href != null);
21
24
  return Item.getCollectionNode({
22
25
  ...props,
23
26
  isDisabled: props.isDisabled ?? (props.isLoading ? true : void 0),
24
- href: props.to === "" ? void 0 : props.to != null ? "." : isCurrentDocument ? "." : props.href,
27
+ href: to === "" ? void 0 : to != null ? "." : isCurrentDocument ? "." : href,
25
28
  [CURRENT_DOCUMENT_LINK]: isCurrentDocument,
26
29
  onClick: isLink ? void 0 : props.onClick,
27
30
  [COLLECTION_ITEM_CLICK]: isLink ? props.onClick : void 0,
@@ -1 +1 @@
1
- {"version":3,"file":"MenuCollectionItem.js","names":["ReactElement","Item","NavigateOptions","To","COLLECTION_ITEM_CLICK","CollectionItem","CubeCollectionItemBaseProps","parseTo","Key","LinkDOMProps","CubeMenuItemProps","T","to","navigationOptions","key","CURRENT_DOCUMENT_LINK","Symbol","getMenuItemReactKey","String","MenuCollectionItem","_props","_MenuCollectionItem","Pick","Object","assign","Action","Badge","getCollectionNode","props","context","newTab","isCurrentDocument","href","isLink","isDisabled","isLoading","undefined","onClick","target","rel"],"sources":["../../../../src/components/actions/Menu/MenuCollectionItem.tsx"],"sourcesContent":["import { ReactElement } from 'react';\nimport { Item } from 'react-stately';\n\nimport { NavigateOptions, To } from '../../../providers/navigation.types';\nimport {\n COLLECTION_ITEM_CLICK,\n CollectionItem,\n CubeCollectionItemBaseProps,\n} from '../../CollectionItem';\nimport { parseTo } from '../use-action';\n\nimport type { Key, LinkDOMProps } from '@react-types/shared';\n\nexport interface CubeMenuItemProps<T>\n extends CubeCollectionItemBaseProps<T>,\n LinkDOMProps {\n /** Application destination. Takes precedence over href. */\n to?: To;\n navigationOptions?: NavigateOptions;\n [key: string]: any;\n}\n\n// Aria recognizes links by a truthy collection href; preserve the native empty URL.\nexport const CURRENT_DOCUMENT_LINK = Symbol('Menu.Item current document');\n\nexport function getMenuItemReactKey(key: Key): string {\n return `${typeof key}:${String(key)}`;\n}\n\nfunction MenuCollectionItem<T>(\n _props: CubeMenuItemProps<T>,\n): ReactElement | null {\n return null;\n}\n\nconst _MenuCollectionItem: typeof MenuCollectionItem &\n Pick<typeof CollectionItem, 'Action' | 'Badge'> = Object.assign(\n MenuCollectionItem,\n {\n Action: CollectionItem.Action,\n Badge: CollectionItem.Badge,\n getCollectionNode<T>(props: CubeMenuItemProps<T>, context: unknown) {\n const { newTab } = parseTo(props.to);\n const isCurrentDocument = props.to == null && props.href === '';\n const isLink =\n props.to !== '' && (props.to != null || props.href != null);\n\n // A private href marks links for Aria; the row resolves the actual `to`.\n return (Item as any).getCollectionNode(\n {\n ...props,\n isDisabled: props.isDisabled ?? (props.isLoading ? true : undefined),\n href:\n props.to === ''\n ? undefined\n : props.to != null\n ? '.'\n : isCurrentDocument\n ? '.'\n : props.href,\n [CURRENT_DOCUMENT_LINK]: isCurrentDocument,\n // Selectable items also consume collection onClick; let Menu own it once.\n onClick: isLink ? undefined : props.onClick,\n [COLLECTION_ITEM_CLICK]: isLink ? props.onClick : undefined,\n target: newTab ? '_blank' : props.target,\n rel: newTab ? props.rel ?? 'noopener noreferrer' : props.rel,\n },\n context,\n );\n },\n },\n);\n\nexport { _MenuCollectionItem as MenuCollectionItem };\n"],"mappings":";;;;;;AAuBA,MAAae,wBAAwBC,OAAO,6BAA6B;AAEzE,SAAgBC,oBAAoBH,KAAkB;AACpD,QAAO,GAAG,OAAOA,IAAG,GAAII,OAAOJ,IAAI;;AAGrC,SAASK,mBACPC,QACqB;AACrB,QAAO;;AAGT,MAAMC,sBAC8CE,OAAOC,OACzDL,oBACA;CACEM,QAAQpB,gBAAeoB;CACvBC,OAAOrB,gBAAeqB;CACtBC,kBAAqBC,OAA6BC,SAAkB;EAClE,MAAM,EAAEC,WAAWvB,QAAQqB,MAAMhB,GAAG;EACpC,MAAMmB,oBAAoBH,MAAMhB,MAAM,QAAQgB,MAAMI,SAAS;EAC7D,MAAMC,SACJL,MAAMhB,OAAO,OAAOgB,MAAMhB,MAAM,QAAQgB,MAAMI,QAAQ;AAGxD,SAAQ/B,KAAa0B,kBACnB;GACE,GAAGC;GACHM,YAAYN,MAAMM,eAAeN,MAAMO,YAAY,OAAOC;GAC1DJ,MACEJ,MAAMhB,OAAO,KACTwB,SACAR,MAAMhB,MAAM,OACV,MACAmB,oBACE,MACAH,MAAMI;IACfjB,wBAAwBgB;GAEzBM,SAASJ,SAASG,SAAYR,MAAMS;IACnCjC,wBAAwB6B,SAASL,MAAMS,UAAUD;GAClDE,QAAQR,SAAS,WAAWF,MAAMU;GAClCC,KAAKT,SAASF,MAAMW,OAAO,wBAAwBX,MAAMW;GAC1D,EACDV,QACD;;CAGP,CAAC"}
1
+ {"version":3,"file":"MenuCollectionItem.js","names":["ReactElement","Item","normalizeNavigationUrl","NavigateOptions","To","COLLECTION_ITEM_CLICK","CollectionItem","CubeCollectionItemBaseProps","parseTo","Key","LinkDOMProps","CubeMenuItemProps","T","to","navigationOptions","key","CURRENT_DOCUMENT_LINK","Symbol","getMenuItemReactKey","String","MenuCollectionItem","_props","_MenuCollectionItem","Pick","Object","assign","Action","Badge","getCollectionNode","props","context","newTab","href","isCurrentDocument","isLink","isDisabled","isLoading","undefined","onClick","target","rel"],"sources":["../../../../src/components/actions/Menu/MenuCollectionItem.tsx"],"sourcesContent":["import { ReactElement } from 'react';\nimport { Item } from 'react-stately';\n\nimport { normalizeNavigationUrl } from '../../../providers/navigation-url';\nimport { NavigateOptions, To } from '../../../providers/navigation.types';\nimport {\n COLLECTION_ITEM_CLICK,\n CollectionItem,\n CubeCollectionItemBaseProps,\n} from '../../CollectionItem';\nimport { parseTo } from '../use-action';\n\nimport type { Key, LinkDOMProps } from '@react-types/shared';\n\nexport interface CubeMenuItemProps<T>\n extends CubeCollectionItemBaseProps<T>,\n LinkDOMProps {\n /** Application destination. Takes precedence over href. */\n to?: To;\n navigationOptions?: NavigateOptions;\n [key: string]: any;\n}\n\n// Aria recognizes links by a truthy collection href; preserve the native empty URL.\nexport const CURRENT_DOCUMENT_LINK = Symbol('Menu.Item current document');\n\nexport function getMenuItemReactKey(key: Key): string {\n return `${typeof key}:${String(key)}`;\n}\n\nfunction MenuCollectionItem<T>(\n _props: CubeMenuItemProps<T>,\n): ReactElement | null {\n return null;\n}\n\nconst _MenuCollectionItem: typeof MenuCollectionItem &\n Pick<typeof CollectionItem, 'Action' | 'Badge'> = Object.assign(\n MenuCollectionItem,\n {\n Action: CollectionItem.Action,\n Badge: CollectionItem.Badge,\n getCollectionNode<T>(props: CubeMenuItemProps<T>, context: unknown) {\n const { newTab } = parseTo(props.to);\n // A blank destination counts as an empty one, as the URL parser reads it.\n const to =\n typeof props.to === 'string'\n ? normalizeNavigationUrl(props.to)\n : props.to;\n const href =\n typeof props.href === 'string'\n ? normalizeNavigationUrl(props.href)\n : props.href;\n const isCurrentDocument = to == null && href === '';\n const isLink = to !== '' && (to != null || href != null);\n\n // A private href marks links for Aria; the row resolves the actual `to`.\n return (Item as any).getCollectionNode(\n {\n ...props,\n isDisabled: props.isDisabled ?? (props.isLoading ? true : undefined),\n href:\n to === ''\n ? undefined\n : to != null\n ? '.'\n : isCurrentDocument\n ? '.'\n : href,\n [CURRENT_DOCUMENT_LINK]: isCurrentDocument,\n // Selectable items also consume collection onClick; let Menu own it once.\n onClick: isLink ? undefined : props.onClick,\n [COLLECTION_ITEM_CLICK]: isLink ? props.onClick : undefined,\n target: newTab ? '_blank' : props.target,\n rel: newTab ? props.rel ?? 'noopener noreferrer' : props.rel,\n },\n context,\n );\n },\n },\n);\n\nexport { _MenuCollectionItem as MenuCollectionItem };\n"],"mappings":";;;;;;;AAwBA,MAAagB,wBAAwBC,OAAO,6BAA6B;AAEzE,SAAgBC,oBAAoBH,KAAkB;AACpD,QAAO,GAAG,OAAOA,IAAG,GAAII,OAAOJ,IAAI;;AAGrC,SAASK,mBACPC,QACqB;AACrB,QAAO;;AAGT,MAAMC,sBAC8CE,OAAOC,OACzDL,oBACA;CACEM,QAAQpB,gBAAeoB;CACvBC,OAAOrB,gBAAeqB;CACtBC,kBAAqBC,OAA6BC,SAAkB;EAClE,MAAM,EAAEC,WAAWvB,QAAQqB,MAAMhB,GAAG;EAEpC,MAAMA,KACJ,OAAOgB,MAAMhB,OAAO,WAChBX,uBAAuB2B,MAAMhB,GAAG,GAChCgB,MAAMhB;EACZ,MAAMmB,OACJ,OAAOH,MAAMG,SAAS,WAClB9B,uBAAuB2B,MAAMG,KAAK,GAClCH,MAAMG;EACZ,MAAMC,oBAAoBpB,MAAM,QAAQmB,SAAS;EACjD,MAAME,SAASrB,OAAO,OAAOA,MAAM,QAAQmB,QAAQ;AAGnD,SAAQ/B,KAAa2B,kBACnB;GACE,GAAGC;GACHM,YAAYN,MAAMM,eAAeN,MAAMO,YAAY,OAAOC;GAC1DL,MACEnB,OAAO,KACHwB,SACAxB,MAAM,OACJ,MACAoB,oBACE,MACAD;IACThB,wBAAwBiB;GAEzBK,SAASJ,SAASG,SAAYR,MAAMS;IACnCjC,wBAAwB6B,SAASL,MAAMS,UAAUD;GAClDE,QAAQR,SAAS,WAAWF,MAAMU;GAClCC,KAAKT,SAASF,MAAMW,OAAO,wBAAwBX,MAAMW;GAC1D,EACDV,QACD;;CAGP,CAAC"}
@@ -1,6 +1,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
- import { isExternalUrl } from "../../../providers/navigation-url.js";
3
+ import { isExternalUrl, normalizeNavigationUrl } from "../../../providers/navigation-url.js";
4
4
  import { useNavigation } from "../../../providers/use-navigation.js";
5
5
  import { parseTo } from "../use-action.js";
6
6
  import { COLLECTION_ITEM_CLICK, filterCollectionItemProps } from "../../CollectionItem.js";
@@ -59,7 +59,7 @@ function MenuItem(props) {
59
59
  return t0;
60
60
  }
61
61
  function MenuLinkItem(props) {
62
- const $ = c(23);
62
+ const $ = c(28);
63
63
  const activatedLink = useRef(null);
64
64
  const linkRef = useRef(null);
65
65
  const { to, href, navigationOptions } = props.item.props;
@@ -71,55 +71,64 @@ function MenuLinkItem(props) {
71
71
  } else t0 = $[1];
72
72
  const { cleanTo: parsedTo, nativeRoute } = t0;
73
73
  const isCurrentDocument = props.item.props[CURRENT_DOCUMENT_LINK];
74
- const cleanTo = to != null ? parsedTo : isCurrentDocument ? "" : href;
75
74
  let t1;
76
- if ($[2] !== cleanTo) {
77
- t1 = typeof cleanTo === "string" && isExternalUrl(cleanTo);
78
- $[2] = cleanTo;
79
- $[3] = t1;
80
- } else t1 = $[3];
81
- const isExternal = t1;
82
- const t2 = navigationOptions?.relative;
83
- let t3;
84
- if ($[4] !== t2) {
85
- t3 = { relative: t2 };
86
- $[4] = t2;
87
- $[5] = t3;
88
- } else t3 = $[5];
89
- const { navigate, resolvedHref, isDefault } = useNavigation(isExternal ? "." : cleanTo || ".", t3);
75
+ if ($[2] !== href || $[3] !== isCurrentDocument || $[4] !== parsedTo || $[5] !== to) {
76
+ t1 = to != null ? parsedTo : isCurrentDocument ? "" : typeof href === "string" ? normalizeNavigationUrl(href) : href;
77
+ $[2] = href;
78
+ $[3] = isCurrentDocument;
79
+ $[4] = parsedTo;
80
+ $[5] = to;
81
+ $[6] = t1;
82
+ } else t1 = $[6];
83
+ const cleanTo = t1;
84
+ let t2;
85
+ if ($[7] !== cleanTo) {
86
+ t2 = typeof cleanTo === "string" && isExternalUrl(cleanTo);
87
+ $[7] = cleanTo;
88
+ $[8] = t2;
89
+ } else t2 = $[8];
90
+ const isExternal = t2;
91
+ const t3 = navigationOptions?.relative;
92
+ let t4;
93
+ if ($[9] !== t3) {
94
+ t4 = { relative: t3 };
95
+ $[9] = t3;
96
+ $[10] = t4;
97
+ } else t4 = $[10];
98
+ const { navigate, resolvedHref, isDefault } = useNavigation(isExternal ? "." : cleanTo || ".", t4);
90
99
  const linkHref = isCurrentDocument || nativeRoute && cleanTo === "" ? "" : isExternal ? String(cleanTo) : resolvedHref;
91
100
  const itemProps = props.item.props;
92
- let t4;
93
- if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
94
- t4 = (element) => {
101
+ let t5;
102
+ if ($[11] === Symbol.for("react.memo_cache_sentinel")) {
103
+ t5 = (element) => {
95
104
  linkRef.current = element;
96
105
  };
97
- $[6] = t4;
98
- } else t4 = $[6];
99
- const onNativeLinkElement = t4;
100
- let t5;
101
- if ($[7] !== itemProps) {
102
- t5 = (event) => {
106
+ $[11] = t5;
107
+ } else t5 = $[11];
108
+ const onNativeLinkElement = t5;
109
+ let t6;
110
+ if ($[12] !== itemProps) {
111
+ t6 = (event) => {
103
112
  activatedLink.current = event.target.closest?.("a[data-menu-native-link]") ?? linkRef.current;
104
113
  itemProps[COLLECTION_ITEM_CLICK]?.(event);
105
114
  };
106
- $[7] = itemProps;
107
- $[8] = t5;
108
- } else t5 = $[8];
109
- const onClick = t5;
110
- let t6;
111
- if ($[9] === Symbol.for("react.memo_cache_sentinel")) {
112
- t6 = (event_0) => {
115
+ $[12] = itemProps;
116
+ $[13] = t6;
117
+ } else t6 = $[13];
118
+ const onClick = t6;
119
+ let t7;
120
+ if ($[14] === Symbol.for("react.memo_cache_sentinel")) {
121
+ t7 = (event_0) => {
113
122
  const anchor = activatedLink.current;
114
123
  if (!anchor) return;
115
124
  openLink(anchor.cloneNode(false), event_0, false);
116
125
  };
117
- $[9] = t6;
118
- } else t6 = $[9];
119
- const openNative = t6;
120
- let t7;
121
- if ($[10] !== cleanTo || $[11] !== isCurrentDocument || $[12] !== isDefault || $[13] !== isExternal || $[14] !== nativeRoute || $[15] !== navigate || $[16] !== navigationOptions) {
122
- t7 = (event_1) => {
126
+ $[14] = t7;
127
+ } else t7 = $[14];
128
+ const openNative = t7;
129
+ let t8;
130
+ if ($[15] !== cleanTo || $[16] !== isCurrentDocument || $[17] !== isDefault || $[18] !== isExternal || $[19] !== nativeRoute || $[20] !== navigate || $[21] !== navigationOptions) {
131
+ t8 = (event_1) => {
123
132
  const anchor_0 = activatedLink.current;
124
133
  if (!anchor_0?.hasAttribute("href") || event_1.defaultPrevented || event_1.button !== 0) return;
125
134
  if (shouldClientNavigate(anchor_0, event_1) && !isDefault && !isCurrentDocument && !nativeRoute && !isExternal) {
@@ -127,31 +136,31 @@ function MenuLinkItem(props) {
127
136
  if (cleanTo !== void 0) navigate(cleanTo, navigationOptions);
128
137
  } else if (!(event_1.target instanceof Element) || !anchor_0.contains(event_1.target)) openNative(event_1);
129
138
  };
130
- $[10] = cleanTo;
131
- $[11] = isCurrentDocument;
132
- $[12] = isDefault;
133
- $[13] = isExternal;
134
- $[14] = nativeRoute;
135
- $[15] = navigate;
136
- $[16] = navigationOptions;
137
- $[17] = t7;
138
- } else t7 = $[17];
139
- let t8;
140
- if ($[18] !== linkHref || $[19] !== onClick || $[20] !== props || $[21] !== t7) {
141
- t8 = /* @__PURE__ */ jsx(MenuItemContent, {
139
+ $[15] = cleanTo;
140
+ $[16] = isCurrentDocument;
141
+ $[17] = isDefault;
142
+ $[18] = isExternal;
143
+ $[19] = nativeRoute;
144
+ $[20] = navigate;
145
+ $[21] = navigationOptions;
146
+ $[22] = t8;
147
+ } else t8 = $[22];
148
+ let t9;
149
+ if ($[23] !== linkHref || $[24] !== onClick || $[25] !== props || $[26] !== t8) {
150
+ t9 = /* @__PURE__ */ jsx(MenuItemContent, {
142
151
  ...props,
143
152
  nativeLinkHref: linkHref,
144
153
  onNativeLinkElement,
145
154
  onClick,
146
- onNavigate: t7
155
+ onNavigate: t8
147
156
  });
148
- $[18] = linkHref;
149
- $[19] = onClick;
150
- $[20] = props;
151
- $[21] = t7;
152
- $[22] = t8;
153
- } else t8 = $[22];
154
- return t8;
157
+ $[23] = linkHref;
158
+ $[24] = onClick;
159
+ $[25] = props;
160
+ $[26] = t8;
161
+ $[27] = t9;
162
+ } else t9 = $[27];
163
+ return t9;
155
164
  }
156
165
  function MenuItemContent(props) {
157
166
  const $ = c(38);
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.js","names":["ClearPressResponder","openLink","shouldClientNavigate","useGlobalListeners","FocusableElement","Key","Node","Styles","AnchorHTMLAttributes","KeyboardEvent","MouseEvent","PointerEvent","useContext","useRef","FocusRing","useMenuItem","TreeState","RightIcon","isExternalUrl","useNavigation","mergeProps","COLLECTION_ITEM_CLICK","filterCollectionItemProps","ItemWithNativeLinks","parseTo","useMenuContext","CURRENT_DOCUMENT_LINK","SubmenuTriggerContext","MenuSelectionType","MenuItemProps","item","T","id","state","styles","isVirtualized","isDisabled","onAction","key","size","splitMenuItemProps","props","Record","semanticId","rowProps","semanticProps","value","Object","entries","startsWith","includes","primaryMenuItemProps","ariaProps","consumerProps","isLink","type","role","undefined","MenuItem","$","_c","submenuContext","t0","MenuLinkItem","activatedLink","linkRef","to","href","navigationOptions","cleanTo","parsedTo","nativeRoute","isCurrentDocument","t1","isExternal","t2","relative","t3","navigate","resolvedHref","isDefault","linkHref","String","itemProps","t4","Symbol","for","element","current","onNativeLinkElement","t5","event","target","Element","closest","onClick","t6","event_0","anchor","cloneNode","HTMLAnchorElement","openNative","t7","event_1","anchor_0","hasAttribute","defaultPrevented","button","preventDefault","contains","t8","MenuItemContent","onClose","closeOnSelect","rendered","_to","_navigationOptions","routerOptions","_routerOptions","_href","_target","rel","_rel","download","_download","ping","_ping","referrerPolicy","_referrerPolicy","hrefLang","_hrefLang","filteredItemProps","mods","itemMods","qa","itemQa","isSelectable","selectionManager","selectionMode","isDisabledKey","isLoading","ref","rowRef","restoreFocusRef","elementRef","ownerDocument","activeElement","focus","preventScroll","updateSemanticElement","menuItemProps","labelProps","descriptionProps","keyboardShortcutProps","isFocused","isSelected","isPressed","isOpen","isVirtualFocused","focusedKey","onKeyDown","itemOnKeyDown","onPointerDown","itemOnPointerDown","onPointerUp","itemOnPointerUp","_renderedHref","_renderedTarget","_renderedRel","_renderedDownload","_renderedPing","_renderedPolicy","_renderedHrefLang","itemOwnProps","primaryInCell","actions","rowItemProps","rowConsumerProps","consumerSemanticProps","skippedPointerUp","addGlobalListener","removeAllGlobalListeners","ctrlKey","metaKey","altKey","shiftKey","pointerId","currentTarget","recordSkippedUp","up","clearSkippedUp","cancel","nativeEvent","e","HTMLElement","stopPropagation","isComposing","repeat","dispatchEvent","window","bubbles","cancelable","detail","click","focused","pressed","selected","disabled","submenu","menuitem","nativeLinkHref","event_2","tabIndex","onMouseDown","nativeLinkProps","e_0","setFocused","setFocusedKey","t9","label","labelledBy","t10","element_0","t11","element_1","t12","t13","rightIcon","content","style","as","onNavigate","onMouseEnter","onMouseLeave","event_3","event_4","event_5","triggerRef"],"sources":["../../../../src/components/actions/Menu/MenuItem.tsx"],"sourcesContent":["import { ClearPressResponder } from '@react-aria/interactions';\nimport {\n openLink,\n shouldClientNavigate,\n useGlobalListeners,\n} from '@react-aria/utils';\nimport { FocusableElement, Key, Node } from '@react-types/shared';\nimport { Styles } from '@tenphi/tasty';\nimport {\n AnchorHTMLAttributes,\n KeyboardEvent,\n MouseEvent,\n PointerEvent,\n useContext,\n useRef,\n} from 'react';\nimport { FocusRing, useMenuItem } from 'react-aria';\nimport { TreeState } from 'react-stately';\n\nimport { RightIcon } from '../../../icons/RightIcon';\nimport { isExternalUrl } from '../../../providers/navigation-url';\nimport { useNavigation } from '../../../providers/use-navigation';\nimport { mergeProps } from '../../../utils/react';\nimport {\n COLLECTION_ITEM_CLICK,\n filterCollectionItemProps,\n} from '../../CollectionItem';\nimport { ItemWithNativeLinks } from '../../content/Item/ItemWithNativeLinks';\nimport { parseTo } from '../use-action';\n\nimport { useMenuContext } from './context';\nimport { CURRENT_DOCUMENT_LINK } from './MenuCollectionItem';\nimport { SubmenuTriggerContext } from './SubmenuTriggerContext';\n\nexport type MenuSelectionType = 'checkbox' | 'radio' | 'checkmark';\n\nexport interface MenuItemProps<T> {\n item: Node<T>;\n /**\n * The item element's id. A menu whose focus stays elsewhere — `CommandMenu`\n * keeps it in its search input — points `aria-activedescendant` at it.\n */\n id?: string;\n state: TreeState<T>;\n styles?: Styles;\n isVirtualized?: boolean;\n isDisabled?: boolean;\n onAction?: (key: Key) => void;\n size?: 'small' | 'medium' | (string & {});\n}\n\n// The primary control owns accessibility; the list row keeps styling and presses.\nfunction splitMenuItemProps(props: Record<string, any>, semanticId = false) {\n const rowProps: Record<string, any> = {};\n const semanticProps: Record<string, any> = {};\n for (const [key, value] of Object.entries(props)) {\n if (\n (key.startsWith('aria-') && key !== 'aria-hidden') ||\n (semanticId && key === 'id') ||\n [\n 'role',\n 'tabIndex',\n 'onFocus',\n 'onBlur',\n 'data-key',\n 'data-collection',\n ].includes(key)\n )\n semanticProps[key] = value;\n else rowProps[key] = value;\n }\n return { rowProps, semanticProps };\n}\n\nfunction primaryMenuItemProps(\n ariaProps: Record<string, any>,\n consumerProps: Record<string, any>,\n isLink: boolean,\n id: string | undefined,\n type: string | undefined,\n) {\n const props = mergeProps(ariaProps, consumerProps);\n // Destinations cannot change the menu's checked selection.\n if (isLink) {\n props.role = 'menuitem';\n props['aria-checked'] = undefined;\n }\n if (!('aria-labelledby' in consumerProps)) {\n props['aria-labelledby'] =\n consumerProps['aria-label'] != null\n ? undefined\n : id && type !== 'header' && type !== 'card'\n ? id\n : ariaProps['aria-labelledby'];\n }\n props['aria-hidden'] = undefined;\n props['data-menu-native-primary'] = '';\n return props;\n}\n\n/** @private */\nexport function MenuItem<T>(props: MenuItemProps<T>) {\n const submenuContext = useContext(SubmenuTriggerContext);\n return !submenuContext ? (\n <MenuLinkItem {...props} />\n ) : (\n <MenuItemContent {...props} />\n );\n}\n\nfunction MenuLinkItem<T>(props: MenuItemProps<T>) {\n const activatedLink = useRef<HTMLAnchorElement>(null);\n const linkRef = useRef<HTMLAnchorElement>(null);\n const { to, href, navigationOptions } = props.item.props;\n const { cleanTo: parsedTo, nativeRoute } = parseTo(to);\n const isCurrentDocument = props.item.props[CURRENT_DOCUMENT_LINK];\n const cleanTo = to != null ? parsedTo : isCurrentDocument ? '' : href;\n const isExternal = typeof cleanTo === 'string' && isExternalUrl(cleanTo);\n const { navigate, resolvedHref, isDefault } = useNavigation(\n isExternal ? '.' : cleanTo || '.',\n { relative: navigationOptions?.relative },\n );\n const linkHref =\n isCurrentDocument || (nativeRoute && cleanTo === '')\n ? ''\n : isExternal\n ? String(cleanTo)\n : resolvedHref;\n const itemProps = props.item.props;\n const onNativeLinkElement = (element: HTMLAnchorElement | null) => {\n linkRef.current = element;\n };\n const onClick = (event: MouseEvent<FocusableElement>) => {\n const target = event.target as Element;\n activatedLink.current =\n target.closest?.<HTMLAnchorElement>('a[data-menu-native-link]') ??\n linkRef.current;\n itemProps[COLLECTION_ITEM_CLICK]?.(event);\n };\n const openNative = (event: MouseEvent<FocusableElement>) => {\n const anchor = activatedLink.current;\n if (!anchor) return;\n openLink(anchor.cloneNode(false) as HTMLAnchorElement, event, false);\n };\n return (\n <MenuItemContent\n {...props}\n nativeLinkHref={linkHref}\n onNativeLinkElement={onNativeLinkElement}\n onClick={onClick}\n onNavigate={(event) => {\n const anchor = activatedLink.current;\n if (\n !anchor?.hasAttribute('href') ||\n event.defaultPrevented ||\n event.button !== 0\n )\n return;\n if (\n shouldClientNavigate(anchor, event) &&\n !isDefault &&\n !isCurrentDocument &&\n !nativeRoute &&\n !isExternal\n ) {\n event.preventDefault();\n if (cleanTo !== undefined) navigate(cleanTo, navigationOptions);\n } else if (\n !(event.target instanceof Element) ||\n !anchor.contains(event.target)\n ) {\n openNative(event);\n }\n }}\n />\n );\n}\n\nfunction MenuItemContent<T>(\n props: MenuItemProps<T> & {\n nativeLinkHref?: string;\n onNativeLinkElement?: (element: HTMLAnchorElement | null) => void;\n onNavigate?: (event: MouseEvent<FocusableElement>) => void;\n onClick?: (event: MouseEvent<FocusableElement>) => void;\n },\n) {\n const { item, state, styles, isVirtualized, onAction, size, id } = props;\n const { onClose, closeOnSelect } = useMenuContext();\n const { rendered, key, props: itemProps } = item;\n\n // Check if this item is wrapped in a SubmenuTriggerContext\n const submenuContext = useContext(SubmenuTriggerContext);\n\n // Filter out service props (react-stately and parent-handled props)\n // All remaining props are safe to pass to Item component\n const {\n to: _to,\n navigationOptions: _navigationOptions,\n routerOptions: _routerOptions,\n href: _href,\n target: _target,\n rel: _rel,\n download: _download,\n ping: _ping,\n referrerPolicy: _referrerPolicy,\n hrefLang: _hrefLang,\n ...filteredItemProps\n } = filterCollectionItemProps(itemProps);\n\n // Extract specific props that need special handling\n const { hotkeys, mods: itemMods, qa: itemQa } = filteredItemProps;\n\n const isSelectable = state.selectionManager.selectionMode !== 'none';\n const isDisabledKey =\n state.selectionManager.isDisabled(key) ||\n submenuContext?.isDisabled ||\n (filteredItemProps.isLoading && filteredItemProps.isDisabled !== false);\n\n const ref = useRef<HTMLElement>(null);\n const rowRef = useRef<HTMLElement>(null);\n const restoreFocusRef = useRef(false);\n const elementRef = ref;\n const updateSemanticElement = (element: HTMLElement | null) => {\n if (!element)\n restoreFocusRef.current =\n ref.current === ref.current?.ownerDocument.activeElement;\n ref.current = element;\n if (element && restoreFocusRef.current) {\n restoreFocusRef.current = false;\n element.focus({ preventScroll: true });\n }\n };\n\n const {\n menuItemProps,\n labelProps,\n descriptionProps,\n keyboardShortcutProps,\n isFocused,\n isSelected,\n isPressed,\n isDisabled,\n } = useMenuItem(\n {\n id: id ?? itemProps.id,\n isSelected: state.selectionManager.isSelected(key),\n isDisabled: isDisabledKey,\n 'aria-label': item['aria-label'],\n 'aria-haspopup': submenuContext ? 'menu' : undefined,\n 'aria-expanded': submenuContext\n ? submenuContext.isOpen\n ? 'true'\n : 'false'\n : undefined,\n key,\n onClose: submenuContext ? undefined : onClose, // Don't close menu for submenu triggers\n closeOnSelect: submenuContext ? false : closeOnSelect, // Don't close on submenu trigger selection\n isVirtualized,\n onAction,\n onClick: (event) => {\n (props.onClick ?? itemProps[COLLECTION_ITEM_CLICK])?.(event);\n submenuContext?.onAction?.();\n },\n },\n state,\n elementRef,\n );\n\n // Selection indicator will be handled by Item component\n const isVirtualFocused = state.selectionManager.focusedKey === key;\n\n // `mergeProps` chains handlers rather than replacing them, so a handler of\n // the item's own passed to it again runs twice. `onKeyDown` used to be: Enter\n // and Space each click the item, so every keyboard activation fired\n // `onAction` twice. It is taken out here and passed once.\n const {\n onKeyDown: itemOnKeyDown,\n onPointerDown: itemOnPointerDown,\n onPointerUp: itemOnPointerUp,\n href: _renderedHref,\n target: _renderedTarget,\n rel: _renderedRel,\n download: _renderedDownload,\n ping: _renderedPing,\n referrerPolicy: _renderedPolicy,\n hrefLang: _renderedHrefLang,\n ...itemOwnProps\n } = menuItemProps as typeof menuItemProps &\n AnchorHTMLAttributes<HTMLAnchorElement>;\n const isLink = itemProps.href != null && !submenuContext;\n const primaryInCell =\n isLink ||\n (!!filteredItemProps.actions && filteredItemProps.actions !== true);\n const { rowProps: rowItemProps, semanticProps } = splitMenuItemProps(\n itemOwnProps,\n props.id != null,\n );\n const { rowProps: rowConsumerProps, semanticProps: consumerSemanticProps } =\n splitMenuItemProps(filteredItemProps);\n const skippedPointerUp = useRef<globalThis.PointerEvent | null>(null);\n const { addGlobalListener, removeAllGlobalListeners } = useGlobalListeners();\n const onPointerDown = (event: PointerEvent<FocusableElement>) => {\n skippedPointerUp.current = null;\n removeAllGlobalListeners();\n // A modified native gesture must not start Aria's delayed-click fallback.\n if (\n isLink &&\n (event.ctrlKey || event.metaKey || event.altKey || event.shiftKey)\n ) {\n const pointerId = event.pointerId;\n const ownerDocument = event.currentTarget.ownerDocument;\n const recordSkippedUp = (up: globalThis.PointerEvent) => {\n if (up.pointerId !== pointerId) return;\n skippedPointerUp.current = up;\n removeAllGlobalListeners();\n };\n const clearSkippedUp = (cancel: globalThis.PointerEvent) => {\n if (cancel.pointerId !== pointerId) return;\n skippedPointerUp.current = null;\n removeAllGlobalListeners();\n };\n addGlobalListener(ownerDocument, 'pointerup', recordSkippedUp, true);\n addGlobalListener(ownerDocument, 'pointercancel', clearSkippedUp, true);\n return;\n }\n itemOnPointerDown?.(event);\n };\n const onPointerUp = (event: PointerEvent<FocusableElement>) => {\n if (skippedPointerUp.current === event.nativeEvent) {\n skippedPointerUp.current = null;\n return;\n }\n if (\n isLink &&\n (event.ctrlKey || event.metaKey || event.altKey || event.shiftKey)\n )\n return;\n itemOnPointerUp?.(event);\n };\n const onKeyDown = (e: KeyboardEvent<FocusableElement>) => {\n // Inline controls own activation; the menu handles their row navigation.\n if ((e.target as HTMLElement).closest('[data-element=\"Actions\"]')) return;\n if (primaryInCell && (e.key === ' ' || e.key === 'Enter')) {\n if (isDisabled) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n if (e.nativeEvent.isComposing || (e.key === ' ' && e.repeat)) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n if (isLink && (e.ctrlKey || e.metaKey || e.altKey || e.shiftKey)) {\n itemOnKeyDown?.(e);\n e.preventDefault();\n e.stopPropagation();\n e.currentTarget.dispatchEvent(\n new window.MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n detail: 1,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey,\n shiftKey: e.shiftKey,\n }),\n );\n return;\n }\n }\n if (submenuContext?.onKeyDown) {\n // The submenu goes first; a key it handles is not the item's too.\n submenuContext.onKeyDown?.(e);\n if (!e.defaultPrevented) itemOnKeyDown?.(e);\n } else itemOnKeyDown?.(e);\n // Aria records Enter but expects an A to have native link activation.\n if (\n primaryInCell &&\n !isLink &&\n !submenuContext &&\n e.key === 'Enter' &&\n !e.repeat &&\n !e.nativeEvent.isComposing\n ) {\n e.preventDefault();\n e.stopPropagation();\n elementRef.current?.click();\n }\n };\n\n const mods = {\n ...itemMods,\n focused: isFocused || isVirtualFocused,\n pressed: isPressed,\n selected: isSelected,\n disabled: isDisabled,\n submenu: !!submenuContext,\n menuitem: true,\n };\n\n const nativeLinkProps: AnchorHTMLAttributes<HTMLAnchorElement> = {\n href: isLink && !isDisabled ? props.nativeLinkHref : undefined,\n target: itemProps.target,\n rel: itemProps.rel,\n download: itemProps.download,\n ping: itemProps.ping,\n referrerPolicy: itemProps.referrerPolicy,\n hrefLang: itemProps.hrefLang,\n tabIndex: -1,\n 'aria-hidden': isLink || undefined,\n role: 'none',\n onMouseDown: (event) => {\n if (!isDisabled && menuItemProps.tabIndex != null)\n elementRef.current?.focus({ preventScroll: true });\n event.preventDefault();\n },\n };\n\n const content = (\n <FocusRing>\n <ItemWithNativeLinks\n {...mergeProps(\n primaryInCell ? rowItemProps : itemOwnProps,\n primaryInCell ? rowConsumerProps : filteredItemProps,\n {\n 'data-popover-trigger': true,\n qa: itemQa ? itemQa : `MenuItem-${key}`,\n mods,\n styles,\n style: filteredItemProps.style,\n 'data-size': size,\n as: 'li',\n onClick: isDisabled ? undefined : props.onNavigate,\n labelProps,\n descriptionProps,\n keyboardShortcutProps,\n 'data-has-submenu': submenuContext ? true : undefined,\n // Chained after the item's own hover handlers.\n onMouseEnter: submenuContext?.onMouseEnter,\n onMouseLeave: submenuContext?.onMouseLeave,\n },\n )}\n {...{\n onKeyDown: (event: KeyboardEvent<FocusableElement>) => {\n onKeyDown(event);\n filteredItemProps.onKeyDown?.(event);\n },\n onPointerDown: (event: PointerEvent<FocusableElement>) => {\n onPointerDown(event);\n filteredItemProps.onPointerDown?.(event);\n },\n onPointerUp: (event: PointerEvent<FocusableElement>) => {\n onPointerUp(event);\n filteredItemProps.onPointerUp?.(event);\n },\n }}\n role={primaryInCell ? 'none' : itemOwnProps.role}\n ref={submenuContext?.triggerRef ?? rowRef}\n nativeLinkProps={nativeLinkProps}\n onInlineFocus={\n primaryInCell\n ? (e) => {\n state.selectionManager.setFocused(false);\n state.selectionManager.setFocusedKey(key);\n e.stopPropagation();\n }\n : undefined\n }\n nativeMenuItemProps={\n primaryInCell\n ? primaryMenuItemProps(\n semanticProps,\n consumerSemanticProps,\n isLink,\n props.id,\n filteredItemProps.type,\n )\n : undefined\n }\n nativeMenuItemShouldFocus={isFocused && menuItemProps.tabIndex != null}\n nativeMenuItemName={{\n label: consumerSemanticProps['aria-label'],\n labelledBy: consumerSemanticProps['aria-labelledby'],\n }}\n onNativeLinkElement={(element) => {\n if (primaryInCell) updateSemanticElement(element);\n props.onNativeLinkElement?.(element);\n }}\n onNativeElement={(element) => {\n if (!primaryInCell) updateSemanticElement(element);\n }}\n actions={\n primaryInCell &&\n filteredItemProps.actions &&\n filteredItemProps.actions !== true ? (\n <ClearPressResponder>\n {filteredItemProps.actions}\n </ClearPressResponder>\n ) : (\n filteredItemProps.actions\n )\n }\n disableActionsFocus={true}\n rightIcon={submenuContext ? <RightIcon /> : filteredItemProps.rightIcon}\n defaultTooltipPlacement=\"right\"\n isSelected={isSelectable ? isSelected : undefined}\n isDisabled={isDisabled}\n size={size === 'small' ? 'small' : 'medium'}\n >\n {rendered}\n </ItemWithNativeLinks>\n </FocusRing>\n );\n\n return content;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"MenuItem.js","names":["ClearPressResponder","openLink","shouldClientNavigate","useGlobalListeners","FocusableElement","Key","Node","Styles","AnchorHTMLAttributes","KeyboardEvent","MouseEvent","PointerEvent","useContext","useRef","FocusRing","useMenuItem","TreeState","RightIcon","isExternalUrl","normalizeNavigationUrl","useNavigation","mergeProps","COLLECTION_ITEM_CLICK","filterCollectionItemProps","ItemWithNativeLinks","parseTo","useMenuContext","CURRENT_DOCUMENT_LINK","SubmenuTriggerContext","MenuSelectionType","MenuItemProps","item","T","id","state","styles","isVirtualized","isDisabled","onAction","key","size","splitMenuItemProps","props","Record","semanticId","rowProps","semanticProps","value","Object","entries","startsWith","includes","primaryMenuItemProps","ariaProps","consumerProps","isLink","type","role","undefined","MenuItem","$","_c","submenuContext","t0","MenuLinkItem","activatedLink","linkRef","to","href","navigationOptions","cleanTo","parsedTo","nativeRoute","isCurrentDocument","t1","t2","isExternal","t3","relative","t4","navigate","resolvedHref","isDefault","linkHref","String","itemProps","t5","Symbol","for","element","current","onNativeLinkElement","t6","event","target","Element","closest","onClick","t7","event_0","anchor","cloneNode","HTMLAnchorElement","openNative","t8","event_1","anchor_0","hasAttribute","defaultPrevented","button","preventDefault","contains","t9","MenuItemContent","onClose","closeOnSelect","rendered","_to","_navigationOptions","routerOptions","_routerOptions","_href","_target","rel","_rel","download","_download","ping","_ping","referrerPolicy","_referrerPolicy","hrefLang","_hrefLang","filteredItemProps","mods","itemMods","qa","itemQa","isSelectable","selectionManager","selectionMode","isDisabledKey","isLoading","ref","rowRef","restoreFocusRef","elementRef","ownerDocument","activeElement","focus","preventScroll","updateSemanticElement","menuItemProps","labelProps","descriptionProps","keyboardShortcutProps","isFocused","isSelected","isPressed","isOpen","isVirtualFocused","focusedKey","onKeyDown","itemOnKeyDown","onPointerDown","itemOnPointerDown","onPointerUp","itemOnPointerUp","_renderedHref","_renderedTarget","_renderedRel","_renderedDownload","_renderedPing","_renderedPolicy","_renderedHrefLang","itemOwnProps","primaryInCell","actions","rowItemProps","rowConsumerProps","consumerSemanticProps","skippedPointerUp","addGlobalListener","removeAllGlobalListeners","ctrlKey","metaKey","altKey","shiftKey","pointerId","currentTarget","recordSkippedUp","up","clearSkippedUp","cancel","nativeEvent","e","HTMLElement","stopPropagation","isComposing","repeat","dispatchEvent","window","bubbles","cancelable","detail","click","focused","pressed","selected","disabled","submenu","menuitem","nativeLinkHref","event_2","tabIndex","onMouseDown","nativeLinkProps","e_0","setFocused","setFocusedKey","label","labelledBy","t10","element_0","t11","element_1","t12","t13","rightIcon","content","style","as","onNavigate","onMouseEnter","onMouseLeave","event_3","event_4","event_5","triggerRef"],"sources":["../../../../src/components/actions/Menu/MenuItem.tsx"],"sourcesContent":["import { ClearPressResponder } from '@react-aria/interactions';\nimport {\n openLink,\n shouldClientNavigate,\n useGlobalListeners,\n} from '@react-aria/utils';\nimport { FocusableElement, Key, Node } from '@react-types/shared';\nimport { Styles } from '@tenphi/tasty';\nimport {\n AnchorHTMLAttributes,\n KeyboardEvent,\n MouseEvent,\n PointerEvent,\n useContext,\n useRef,\n} from 'react';\nimport { FocusRing, useMenuItem } from 'react-aria';\nimport { TreeState } from 'react-stately';\n\nimport { RightIcon } from '../../../icons/RightIcon';\nimport {\n isExternalUrl,\n normalizeNavigationUrl,\n} from '../../../providers/navigation-url';\nimport { useNavigation } from '../../../providers/use-navigation';\nimport { mergeProps } from '../../../utils/react';\nimport {\n COLLECTION_ITEM_CLICK,\n filterCollectionItemProps,\n} from '../../CollectionItem';\nimport { ItemWithNativeLinks } from '../../content/Item/ItemWithNativeLinks';\nimport { parseTo } from '../use-action';\n\nimport { useMenuContext } from './context';\nimport { CURRENT_DOCUMENT_LINK } from './MenuCollectionItem';\nimport { SubmenuTriggerContext } from './SubmenuTriggerContext';\n\nexport type MenuSelectionType = 'checkbox' | 'radio' | 'checkmark';\n\nexport interface MenuItemProps<T> {\n item: Node<T>;\n /**\n * The item element's id. A menu whose focus stays elsewhere — `CommandMenu`\n * keeps it in its search input — points `aria-activedescendant` at it.\n */\n id?: string;\n state: TreeState<T>;\n styles?: Styles;\n isVirtualized?: boolean;\n isDisabled?: boolean;\n onAction?: (key: Key) => void;\n size?: 'small' | 'medium' | (string & {});\n}\n\n// The primary control owns accessibility; the list row keeps styling and presses.\nfunction splitMenuItemProps(props: Record<string, any>, semanticId = false) {\n const rowProps: Record<string, any> = {};\n const semanticProps: Record<string, any> = {};\n for (const [key, value] of Object.entries(props)) {\n if (\n (key.startsWith('aria-') && key !== 'aria-hidden') ||\n (semanticId && key === 'id') ||\n [\n 'role',\n 'tabIndex',\n 'onFocus',\n 'onBlur',\n 'data-key',\n 'data-collection',\n ].includes(key)\n )\n semanticProps[key] = value;\n else rowProps[key] = value;\n }\n return { rowProps, semanticProps };\n}\n\nfunction primaryMenuItemProps(\n ariaProps: Record<string, any>,\n consumerProps: Record<string, any>,\n isLink: boolean,\n id: string | undefined,\n type: string | undefined,\n) {\n const props = mergeProps(ariaProps, consumerProps);\n // Destinations cannot change the menu's checked selection.\n if (isLink) {\n props.role = 'menuitem';\n props['aria-checked'] = undefined;\n }\n if (!('aria-labelledby' in consumerProps)) {\n props['aria-labelledby'] =\n consumerProps['aria-label'] != null\n ? undefined\n : id && type !== 'header' && type !== 'card'\n ? id\n : ariaProps['aria-labelledby'];\n }\n props['aria-hidden'] = undefined;\n props['data-menu-native-primary'] = '';\n return props;\n}\n\n/** @private */\nexport function MenuItem<T>(props: MenuItemProps<T>) {\n const submenuContext = useContext(SubmenuTriggerContext);\n return !submenuContext ? (\n <MenuLinkItem {...props} />\n ) : (\n <MenuItemContent {...props} />\n );\n}\n\nfunction MenuLinkItem<T>(props: MenuItemProps<T>) {\n const activatedLink = useRef<HTMLAnchorElement>(null);\n const linkRef = useRef<HTMLAnchorElement>(null);\n const { to, href, navigationOptions } = props.item.props;\n const { cleanTo: parsedTo, nativeRoute } = parseTo(to);\n const isCurrentDocument = props.item.props[CURRENT_DOCUMENT_LINK];\n const cleanTo =\n to != null\n ? parsedTo\n : isCurrentDocument\n ? ''\n : typeof href === 'string'\n ? normalizeNavigationUrl(href)\n : href;\n const isExternal = typeof cleanTo === 'string' && isExternalUrl(cleanTo);\n const { navigate, resolvedHref, isDefault } = useNavigation(\n isExternal ? '.' : cleanTo || '.',\n { relative: navigationOptions?.relative },\n );\n const linkHref =\n isCurrentDocument || (nativeRoute && cleanTo === '')\n ? ''\n : isExternal\n ? String(cleanTo)\n : resolvedHref;\n const itemProps = props.item.props;\n const onNativeLinkElement = (element: HTMLAnchorElement | null) => {\n linkRef.current = element;\n };\n const onClick = (event: MouseEvent<FocusableElement>) => {\n const target = event.target as Element;\n activatedLink.current =\n target.closest?.<HTMLAnchorElement>('a[data-menu-native-link]') ??\n linkRef.current;\n itemProps[COLLECTION_ITEM_CLICK]?.(event);\n };\n const openNative = (event: MouseEvent<FocusableElement>) => {\n const anchor = activatedLink.current;\n if (!anchor) return;\n openLink(anchor.cloneNode(false) as HTMLAnchorElement, event, false);\n };\n return (\n <MenuItemContent\n {...props}\n nativeLinkHref={linkHref}\n onNativeLinkElement={onNativeLinkElement}\n onClick={onClick}\n onNavigate={(event) => {\n const anchor = activatedLink.current;\n if (\n !anchor?.hasAttribute('href') ||\n event.defaultPrevented ||\n event.button !== 0\n )\n return;\n if (\n shouldClientNavigate(anchor, event) &&\n !isDefault &&\n !isCurrentDocument &&\n !nativeRoute &&\n !isExternal\n ) {\n event.preventDefault();\n if (cleanTo !== undefined) navigate(cleanTo, navigationOptions);\n } else if (\n !(event.target instanceof Element) ||\n !anchor.contains(event.target)\n ) {\n openNative(event);\n }\n }}\n />\n );\n}\n\nfunction MenuItemContent<T>(\n props: MenuItemProps<T> & {\n nativeLinkHref?: string;\n onNativeLinkElement?: (element: HTMLAnchorElement | null) => void;\n onNavigate?: (event: MouseEvent<FocusableElement>) => void;\n onClick?: (event: MouseEvent<FocusableElement>) => void;\n },\n) {\n const { item, state, styles, isVirtualized, onAction, size, id } = props;\n const { onClose, closeOnSelect } = useMenuContext();\n const { rendered, key, props: itemProps } = item;\n\n // Check if this item is wrapped in a SubmenuTriggerContext\n const submenuContext = useContext(SubmenuTriggerContext);\n\n // Filter out service props (react-stately and parent-handled props)\n // All remaining props are safe to pass to Item component\n const {\n to: _to,\n navigationOptions: _navigationOptions,\n routerOptions: _routerOptions,\n href: _href,\n target: _target,\n rel: _rel,\n download: _download,\n ping: _ping,\n referrerPolicy: _referrerPolicy,\n hrefLang: _hrefLang,\n ...filteredItemProps\n } = filterCollectionItemProps(itemProps);\n\n // Extract specific props that need special handling\n const { hotkeys, mods: itemMods, qa: itemQa } = filteredItemProps;\n\n const isSelectable = state.selectionManager.selectionMode !== 'none';\n const isDisabledKey =\n state.selectionManager.isDisabled(key) ||\n submenuContext?.isDisabled ||\n (filteredItemProps.isLoading && filteredItemProps.isDisabled !== false);\n\n const ref = useRef<HTMLElement>(null);\n const rowRef = useRef<HTMLElement>(null);\n const restoreFocusRef = useRef(false);\n const elementRef = ref;\n const updateSemanticElement = (element: HTMLElement | null) => {\n if (!element)\n restoreFocusRef.current =\n ref.current === ref.current?.ownerDocument.activeElement;\n ref.current = element;\n if (element && restoreFocusRef.current) {\n restoreFocusRef.current = false;\n element.focus({ preventScroll: true });\n }\n };\n\n const {\n menuItemProps,\n labelProps,\n descriptionProps,\n keyboardShortcutProps,\n isFocused,\n isSelected,\n isPressed,\n isDisabled,\n } = useMenuItem(\n {\n id: id ?? itemProps.id,\n isSelected: state.selectionManager.isSelected(key),\n isDisabled: isDisabledKey,\n 'aria-label': item['aria-label'],\n 'aria-haspopup': submenuContext ? 'menu' : undefined,\n 'aria-expanded': submenuContext\n ? submenuContext.isOpen\n ? 'true'\n : 'false'\n : undefined,\n key,\n onClose: submenuContext ? undefined : onClose, // Don't close menu for submenu triggers\n closeOnSelect: submenuContext ? false : closeOnSelect, // Don't close on submenu trigger selection\n isVirtualized,\n onAction,\n onClick: (event) => {\n (props.onClick ?? itemProps[COLLECTION_ITEM_CLICK])?.(event);\n submenuContext?.onAction?.();\n },\n },\n state,\n elementRef,\n );\n\n // Selection indicator will be handled by Item component\n const isVirtualFocused = state.selectionManager.focusedKey === key;\n\n // `mergeProps` chains handlers rather than replacing them, so a handler of\n // the item's own passed to it again runs twice. `onKeyDown` used to be: Enter\n // and Space each click the item, so every keyboard activation fired\n // `onAction` twice. It is taken out here and passed once.\n const {\n onKeyDown: itemOnKeyDown,\n onPointerDown: itemOnPointerDown,\n onPointerUp: itemOnPointerUp,\n href: _renderedHref,\n target: _renderedTarget,\n rel: _renderedRel,\n download: _renderedDownload,\n ping: _renderedPing,\n referrerPolicy: _renderedPolicy,\n hrefLang: _renderedHrefLang,\n ...itemOwnProps\n } = menuItemProps as typeof menuItemProps &\n AnchorHTMLAttributes<HTMLAnchorElement>;\n const isLink = itemProps.href != null && !submenuContext;\n const primaryInCell =\n isLink ||\n (!!filteredItemProps.actions && filteredItemProps.actions !== true);\n const { rowProps: rowItemProps, semanticProps } = splitMenuItemProps(\n itemOwnProps,\n props.id != null,\n );\n const { rowProps: rowConsumerProps, semanticProps: consumerSemanticProps } =\n splitMenuItemProps(filteredItemProps);\n const skippedPointerUp = useRef<globalThis.PointerEvent | null>(null);\n const { addGlobalListener, removeAllGlobalListeners } = useGlobalListeners();\n const onPointerDown = (event: PointerEvent<FocusableElement>) => {\n skippedPointerUp.current = null;\n removeAllGlobalListeners();\n // A modified native gesture must not start Aria's delayed-click fallback.\n if (\n isLink &&\n (event.ctrlKey || event.metaKey || event.altKey || event.shiftKey)\n ) {\n const pointerId = event.pointerId;\n const ownerDocument = event.currentTarget.ownerDocument;\n const recordSkippedUp = (up: globalThis.PointerEvent) => {\n if (up.pointerId !== pointerId) return;\n skippedPointerUp.current = up;\n removeAllGlobalListeners();\n };\n const clearSkippedUp = (cancel: globalThis.PointerEvent) => {\n if (cancel.pointerId !== pointerId) return;\n skippedPointerUp.current = null;\n removeAllGlobalListeners();\n };\n addGlobalListener(ownerDocument, 'pointerup', recordSkippedUp, true);\n addGlobalListener(ownerDocument, 'pointercancel', clearSkippedUp, true);\n return;\n }\n itemOnPointerDown?.(event);\n };\n const onPointerUp = (event: PointerEvent<FocusableElement>) => {\n if (skippedPointerUp.current === event.nativeEvent) {\n skippedPointerUp.current = null;\n return;\n }\n if (\n isLink &&\n (event.ctrlKey || event.metaKey || event.altKey || event.shiftKey)\n )\n return;\n itemOnPointerUp?.(event);\n };\n const onKeyDown = (e: KeyboardEvent<FocusableElement>) => {\n // Inline controls own activation; the menu handles their row navigation.\n if ((e.target as HTMLElement).closest('[data-element=\"Actions\"]')) return;\n if (primaryInCell && (e.key === ' ' || e.key === 'Enter')) {\n if (isDisabled) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n if (e.nativeEvent.isComposing || (e.key === ' ' && e.repeat)) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n if (isLink && (e.ctrlKey || e.metaKey || e.altKey || e.shiftKey)) {\n itemOnKeyDown?.(e);\n e.preventDefault();\n e.stopPropagation();\n e.currentTarget.dispatchEvent(\n new window.MouseEvent('click', {\n bubbles: true,\n cancelable: true,\n detail: 1,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey,\n shiftKey: e.shiftKey,\n }),\n );\n return;\n }\n }\n if (submenuContext?.onKeyDown) {\n // The submenu goes first; a key it handles is not the item's too.\n submenuContext.onKeyDown?.(e);\n if (!e.defaultPrevented) itemOnKeyDown?.(e);\n } else itemOnKeyDown?.(e);\n // Aria records Enter but expects an A to have native link activation.\n if (\n primaryInCell &&\n !isLink &&\n !submenuContext &&\n e.key === 'Enter' &&\n !e.repeat &&\n !e.nativeEvent.isComposing\n ) {\n e.preventDefault();\n e.stopPropagation();\n elementRef.current?.click();\n }\n };\n\n const mods = {\n ...itemMods,\n focused: isFocused || isVirtualFocused,\n pressed: isPressed,\n selected: isSelected,\n disabled: isDisabled,\n submenu: !!submenuContext,\n menuitem: true,\n };\n\n const nativeLinkProps: AnchorHTMLAttributes<HTMLAnchorElement> = {\n href: isLink && !isDisabled ? props.nativeLinkHref : undefined,\n target: itemProps.target,\n rel: itemProps.rel,\n download: itemProps.download,\n ping: itemProps.ping,\n referrerPolicy: itemProps.referrerPolicy,\n hrefLang: itemProps.hrefLang,\n tabIndex: -1,\n 'aria-hidden': isLink || undefined,\n role: 'none',\n onMouseDown: (event) => {\n if (!isDisabled && menuItemProps.tabIndex != null)\n elementRef.current?.focus({ preventScroll: true });\n event.preventDefault();\n },\n };\n\n const content = (\n <FocusRing>\n <ItemWithNativeLinks\n {...mergeProps(\n primaryInCell ? rowItemProps : itemOwnProps,\n primaryInCell ? rowConsumerProps : filteredItemProps,\n {\n 'data-popover-trigger': true,\n qa: itemQa ? itemQa : `MenuItem-${key}`,\n mods,\n styles,\n style: filteredItemProps.style,\n 'data-size': size,\n as: 'li',\n onClick: isDisabled ? undefined : props.onNavigate,\n labelProps,\n descriptionProps,\n keyboardShortcutProps,\n 'data-has-submenu': submenuContext ? true : undefined,\n // Chained after the item's own hover handlers.\n onMouseEnter: submenuContext?.onMouseEnter,\n onMouseLeave: submenuContext?.onMouseLeave,\n },\n )}\n {...{\n onKeyDown: (event: KeyboardEvent<FocusableElement>) => {\n onKeyDown(event);\n filteredItemProps.onKeyDown?.(event);\n },\n onPointerDown: (event: PointerEvent<FocusableElement>) => {\n onPointerDown(event);\n filteredItemProps.onPointerDown?.(event);\n },\n onPointerUp: (event: PointerEvent<FocusableElement>) => {\n onPointerUp(event);\n filteredItemProps.onPointerUp?.(event);\n },\n }}\n role={primaryInCell ? 'none' : itemOwnProps.role}\n ref={submenuContext?.triggerRef ?? rowRef}\n nativeLinkProps={nativeLinkProps}\n onInlineFocus={\n primaryInCell\n ? (e) => {\n state.selectionManager.setFocused(false);\n state.selectionManager.setFocusedKey(key);\n e.stopPropagation();\n }\n : undefined\n }\n nativeMenuItemProps={\n primaryInCell\n ? primaryMenuItemProps(\n semanticProps,\n consumerSemanticProps,\n isLink,\n props.id,\n filteredItemProps.type,\n )\n : undefined\n }\n nativeMenuItemShouldFocus={isFocused && menuItemProps.tabIndex != null}\n nativeMenuItemName={{\n label: consumerSemanticProps['aria-label'],\n labelledBy: consumerSemanticProps['aria-labelledby'],\n }}\n onNativeLinkElement={(element) => {\n if (primaryInCell) updateSemanticElement(element);\n props.onNativeLinkElement?.(element);\n }}\n onNativeElement={(element) => {\n if (!primaryInCell) updateSemanticElement(element);\n }}\n actions={\n primaryInCell &&\n filteredItemProps.actions &&\n filteredItemProps.actions !== true ? (\n <ClearPressResponder>\n {filteredItemProps.actions}\n </ClearPressResponder>\n ) : (\n filteredItemProps.actions\n )\n }\n disableActionsFocus={true}\n rightIcon={submenuContext ? <RightIcon /> : filteredItemProps.rightIcon}\n defaultTooltipPlacement=\"right\"\n isSelected={isSelectable ? isSelected : undefined}\n isDisabled={isDisabled}\n size={size === 'small' ? 'small' : 'medium'}\n >\n {rendered}\n </ItemWithNativeLinks>\n </FocusRing>\n );\n\n return content;\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { getMenuItemReactKey } from "./MenuCollectionItem.js";
3
3
  import { MenuItem } from "./MenuItem.js";
4
4
  import { StyledMenu, StyledSection, StyledSectionHeading } from "./styled.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { SlotProvider } from "../../../utils/react/Slots.js";
3
3
  import { usePopoverSync } from "../../../utils/react/usePopoverSync.js";
4
4
  import { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { usePopoverSync } from "../../../utils/react/usePopoverSync.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { MenuContext, useMenuContext } from "./context.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import React from "react";
3
3
 
4
4
  //#region src/components/actions/Menu/SubmenuTriggerContext.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import React, { useContext } from "react";
3
3
 
4
4
  //#region src/components/actions/Menu/context.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.195.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.196.0 | Cube Dev Team */
2
2
  import { DEFAULT_CLEAR_STYLES } from "../../../data/item-themes.js";
3
3
  import { Space } from "../../layout/Space.js";
4
4
  import { DEFAULT_BUTTON_STYLES } from "../Button/Button.js";
@@ -70,8 +70,6 @@ const StyledDivider = tasty({
70
70
  const StyledHeader = tasty(Space, {
71
71
  qa: "Header",
72
72
  as: "div",
73
- role: "heading",
74
- "aria-level": 3,
75
73
  styles: {
76
74
  color: "#dark-02",
77
75
  preset: "t3",
@@ -94,7 +92,6 @@ const StyledHeader = tasty(Space, {
94
92
  const StyledFooter = tasty(Space, {
95
93
  qa: "Footer",
96
94
  as: "div",
97
- role: "footer",
98
95
  styles: {
99
96
  color: "#dark-02",
100
97
  preset: "t3",