@cube-dev/ui-kit 0.199.0 → 0.199.2

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 (650) hide show
  1. package/dist/CHANGELOG.md +18 -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 +2 -2
  13. package/dist/components/GlobalStyles.js.map +1 -1
  14. package/dist/components/GridProvider.js +1 -1
  15. package/dist/components/HiddenInput.js +1 -1
  16. package/dist/components/Root.js +17 -17
  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 +6 -8
  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.js +1 -1
  24. package/dist/components/actions/ButtonSplit/context.js +1 -1
  25. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  26. package/dist/components/actions/CommandMenu/styled.js +1 -1
  27. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  28. package/dist/components/actions/ItemActionContext.js +1 -1
  29. package/dist/components/actions/ItemActionsWrapper.js +31 -32
  30. package/dist/components/actions/ItemActionsWrapper.js.map +1 -1
  31. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  32. package/dist/components/actions/Link/Link.js +1 -1
  33. package/dist/components/actions/Menu/Menu.js +1 -1
  34. package/dist/components/actions/Menu/MenuCollectionItem.js +1 -1
  35. package/dist/components/actions/Menu/MenuItem.js +1 -1
  36. package/dist/components/actions/Menu/MenuSection.js +1 -1
  37. package/dist/components/actions/Menu/MenuTrigger.js +116 -127
  38. package/dist/components/actions/Menu/MenuTrigger.js.map +1 -1
  39. package/dist/components/actions/Menu/SubMenuTrigger.js +4 -3
  40. package/dist/components/actions/Menu/SubMenuTrigger.js.map +1 -1
  41. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  42. package/dist/components/actions/Menu/context.js +1 -1
  43. package/dist/components/actions/Menu/styled.js +4 -3
  44. package/dist/components/actions/Menu/styled.js.map +1 -1
  45. package/dist/components/actions/actions-run.js +1 -1
  46. package/dist/components/actions/index.js +1 -1
  47. package/dist/components/actions/use-action.js +1 -1
  48. package/dist/components/actions/use-anchored-menu.js +1 -1
  49. package/dist/components/actions/use-context-menu.js +32 -23
  50. package/dist/components/actions/use-context-menu.js.map +1 -1
  51. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  52. package/dist/components/content/Alert/Alert.js +1 -1
  53. package/dist/components/content/Alert/use-alert.js +1 -1
  54. package/dist/components/content/Avatar/Avatar.js +1 -1
  55. package/dist/components/content/Badge/Badge.js +1 -1
  56. package/dist/components/content/Card/Card.js +1 -1
  57. package/dist/components/content/Content.js +1 -1
  58. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  59. package/dist/components/content/CopySnippet/CopySnippet.js +83 -87
  60. package/dist/components/content/CopySnippet/CopySnippet.js.map +1 -1
  61. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  62. package/dist/components/content/Divider.js +1 -1
  63. package/dist/components/content/Footer.js +1 -1
  64. package/dist/components/content/Header.js +1 -1
  65. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  66. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  67. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  68. package/dist/components/content/Item/Item.js +1 -1
  69. package/dist/components/content/Item/Item.js.map +1 -1
  70. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  71. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  72. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  73. package/dist/components/content/Layout/GridLayout.js +1 -1
  74. package/dist/components/content/Layout/Layout.js +15 -19
  75. package/dist/components/content/Layout/Layout.js.map +1 -1
  76. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  77. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  78. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  79. package/dist/components/content/Layout/LayoutContent.js +14 -14
  80. package/dist/components/content/Layout/LayoutContent.js.map +1 -1
  81. package/dist/components/content/Layout/LayoutContext.js +1 -1
  82. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  83. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  84. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  85. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  86. package/dist/components/content/Layout/LayoutPane.js +20 -20
  87. package/dist/components/content/Layout/LayoutPane.js.map +1 -1
  88. package/dist/components/content/Layout/LayoutPanel.js +9 -9
  89. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  90. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  91. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  92. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  93. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +23 -25
  94. package/dist/components/content/Layout/hooks/useTinyScrollbar.js.map +1 -1
  95. package/dist/components/content/Layout/index.js +1 -1
  96. package/dist/components/content/Layout/utils.js +1 -1
  97. package/dist/components/content/Paragraph.js +1 -1
  98. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  99. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  100. package/dist/components/content/PrismCode/PrismCode.js.map +1 -1
  101. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  102. package/dist/components/content/PrismCode/prismSetup.js.map +1 -1
  103. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  104. package/dist/components/content/Result/Result.js +1 -1
  105. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  106. package/dist/components/content/Tag/Tag.js +1 -1
  107. package/dist/components/content/Text.js +1 -1
  108. package/dist/components/content/TextItem/TextItem.js +2 -5
  109. package/dist/components/content/TextItem/TextItem.js.map +1 -1
  110. package/dist/components/content/Title.js +1 -1
  111. package/dist/components/content/Tree/Tree.js +6 -8
  112. package/dist/components/content/Tree/Tree.js.map +1 -1
  113. package/dist/components/content/Tree/TreeNode.js +4 -6
  114. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  115. package/dist/components/content/Tree/styled.js +2 -2
  116. package/dist/components/content/Tree/styled.js.map +1 -1
  117. package/dist/components/content/Tree/tree-index.js +1 -1
  118. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  119. package/dist/components/content/Tree/use-load-data.js +1 -1
  120. package/dist/components/content/highlightText.js +1 -1
  121. package/dist/components/content/use-auto-tooltip.js +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 +1 -1
  128. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  129. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  130. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  131. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  132. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  133. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  134. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  135. package/dist/components/data/TableBase/RowCollection.js +1 -1
  136. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  137. package/dist/components/data/TableBase/TableRow.js +1 -1
  138. package/dist/components/data/TableBase/TableRow.js.map +1 -1
  139. package/dist/components/data/TableBase/TableView.js +4 -7
  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/TreeGridTable.js.map +1 -1
  143. package/dist/components/data/TableBase/column-header.js +1 -1
  144. package/dist/components/data/TableBase/column-menu.js +1 -1
  145. package/dist/components/data/TableBase/column-styles.js +1 -1
  146. package/dist/components/data/TableBase/column-tint.js +1 -1
  147. package/dist/components/data/TableBase/row-menu.js +1 -1
  148. package/dist/components/data/TableBase/styled.js +11 -1
  149. package/dist/components/data/TableBase/styled.js.map +1 -1
  150. package/dist/components/data/TableBase/table-tree.js +1 -1
  151. package/dist/components/data/TableBase/types.js +1 -1
  152. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  153. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  154. package/dist/components/data/TableBase/use-column-order.js +1 -1
  155. package/dist/components/data/TableBase/use-column-window.js +1 -1
  156. package/dist/components/data/TableBase/use-container-width.js +1 -1
  157. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  158. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  159. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  160. package/dist/components/data/TableBase/use-table-search.js +1 -1
  161. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  162. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  163. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  164. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  165. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  166. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  167. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  168. package/dist/components/fields/Checkbox/CheckboxGroup.js +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 +1 -1
  172. package/dist/components/fields/ColorSwatch/ColorSwatch.d.ts +1 -1
  173. package/dist/components/fields/ColorSwatch/ColorSwatch.js +4 -4
  174. package/dist/components/fields/ColorSwatch/ColorSwatch.js.map +1 -1
  175. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +7 -10
  176. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  177. package/dist/components/fields/ComboBox/ComboBox.js +174 -183
  178. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  179. package/dist/components/fields/ComboBox/comboBoxOptions.js +1 -1
  180. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  181. package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +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/DateInputBase.js.map +1 -1
  187. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  188. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  189. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  190. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  191. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  192. package/dist/components/fields/DatePicker/DatePickerSegment.js.map +1 -1
  193. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  194. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  195. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  196. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  197. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  198. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  199. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  200. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  201. package/dist/components/fields/DatePicker/parseDate.js +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 +1 -1
  207. package/dist/components/fields/FilterPicker/FilterPicker.js +2 -2
  208. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  209. package/dist/components/fields/Input/Input.js +1 -1
  210. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  211. package/dist/components/fields/ListBox/ListBox.js +1 -1
  212. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  213. package/dist/components/fields/ListBox/optionId.js +1 -1
  214. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +2 -2
  215. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  216. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  217. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  218. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  219. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  220. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  221. package/dist/components/fields/Picker/Picker.js +2 -2
  222. package/dist/components/fields/Picker/Picker.js.map +1 -1
  223. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  224. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  225. package/dist/components/fields/RadioGroup/context.js +1 -1
  226. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -2
  227. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  228. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  229. package/dist/components/fields/Select/Select.js +2 -2
  230. package/dist/components/fields/Select/Select.js.map +1 -1
  231. package/dist/components/fields/Slider/Gradation.js +1 -1
  232. package/dist/components/fields/Slider/HueSlider.js +1 -1
  233. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  234. package/dist/components/fields/Slider/Slider.js +1 -1
  235. package/dist/components/fields/Slider/SliderBase.js +1 -1
  236. package/dist/components/fields/Slider/SliderBase.js.map +1 -1
  237. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  238. package/dist/components/fields/Slider/SliderTrack.js +5 -5
  239. package/dist/components/fields/Slider/SliderTrack.js.map +1 -1
  240. package/dist/components/fields/Slider/elements.js +1 -1
  241. package/dist/components/fields/Slider/index.js +1 -1
  242. package/dist/components/fields/Switch/Switch.js +1 -1
  243. package/dist/components/fields/TagInput/TagInput.js +1 -1
  244. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  245. package/dist/components/fields/TagInput/TagList.js +1 -1
  246. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  247. package/dist/components/fields/TagInput/useTagError.js +1 -1
  248. package/dist/components/fields/TextArea/TextArea.js +1 -1
  249. package/dist/components/fields/TextInput/TextInput.js +1 -1
  250. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  251. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  252. package/dist/components/fields/TextInput/displayed-validation.js +1 -1
  253. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  254. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  255. package/dist/components/fields/TriggerActions.js +1 -1
  256. package/dist/components/fields/color/ColorPanel.js +6 -6
  257. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  258. package/dist/components/fields/color/channels.js +4 -4
  259. package/dist/components/fields/color/channels.js.map +1 -1
  260. package/dist/components/fields/color/color.js +1 -1
  261. package/dist/components/fields/color/context.js +1 -1
  262. package/dist/components/fields/option-origin-press.js +1 -1
  263. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  264. package/dist/components/form/FieldWrapper/field-description.js +1 -1
  265. package/dist/components/form/Form/Field.js +1 -1
  266. package/dist/components/form/Form/Form.js +1 -1
  267. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  268. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  269. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  270. package/dist/components/form/Form/SubmitError.js +1 -1
  271. package/dist/components/form/Form/backend.js +1 -1
  272. package/dist/components/form/Form/index.js +1 -1
  273. package/dist/components/form/Form/modern/actions.js +1 -1
  274. package/dist/components/form/Form/modern/context.js +1 -1
  275. package/dist/components/form/Form/modern/controller.js +1 -1
  276. package/dist/components/form/Form/modern/field-binding.js +1 -1
  277. package/dist/components/form/Form/modern/field.js +1 -1
  278. package/dist/components/form/Form/modern/react.js +1 -1
  279. package/dist/components/form/Form/modern/store.js +1 -1
  280. package/dist/components/form/Form/modern/validation.js +1 -1
  281. package/dist/components/form/Form/modern/values.js +1 -1
  282. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  283. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  284. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  285. package/dist/components/form/Form/use-field/use-field.js +1 -1
  286. package/dist/components/form/Form/use-form.js +1 -1
  287. package/dist/components/form/Form/validation.js +1 -1
  288. package/dist/components/form/Label.js +11 -8
  289. package/dist/components/form/Label.js.map +1 -1
  290. package/dist/components/form/field-chrome.js +1 -1
  291. package/dist/components/form/legacy-tooltip.js +1 -1
  292. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  293. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  294. package/dist/components/form/validation/use-validation-props.js +1 -1
  295. package/dist/components/form/wrapper.js +1 -1
  296. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  297. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  298. package/dist/components/layout/Flex.js +1 -1
  299. package/dist/components/layout/Flow.js +1 -1
  300. package/dist/components/layout/Grid.js +1 -1
  301. package/dist/components/layout/Panel.js +1 -1
  302. package/dist/components/layout/Panel.js.map +1 -1
  303. package/dist/components/layout/Prefix.js +16 -22
  304. package/dist/components/layout/Prefix.js.map +1 -1
  305. package/dist/components/layout/ResizablePanel.js +7 -6
  306. package/dist/components/layout/ResizablePanel.js.map +1 -1
  307. package/dist/components/layout/Space.js +1 -1
  308. package/dist/components/layout/Suffix.js +16 -22
  309. package/dist/components/layout/Suffix.js.map +1 -1
  310. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  311. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  312. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  313. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  314. package/dist/components/navigation/Tabs/TabButton.js +2 -1
  315. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  316. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  317. package/dist/components/navigation/Tabs/TabPanel.js +2 -2
  318. package/dist/components/navigation/Tabs/TabPanel.js.map +1 -1
  319. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  320. package/dist/components/navigation/Tabs/Tabs.js +6 -9
  321. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  322. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  323. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  324. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  325. package/dist/components/navigation/Tabs/styled.js +8 -6
  326. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  327. package/dist/components/navigation/Tabs/types.js +1 -1
  328. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  329. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  330. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  331. package/dist/components/other/Calendar/Calendar.js +1 -1
  332. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  333. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  334. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  335. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  336. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  337. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  338. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  339. package/dist/components/other/Calendar/styled.js +1 -1
  340. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  341. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  342. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  343. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  344. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  345. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  346. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  347. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  348. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  349. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  350. package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
  351. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  352. package/dist/components/overlays/Dialog/context.js +1 -1
  353. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  354. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  355. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  356. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +1 -1
  357. package/dist/components/overlays/Dialog/use-retained-dialog-focus.js +1 -1
  358. package/dist/components/overlays/Modal/Modal.js +3 -3
  359. package/dist/components/overlays/Modal/Modal.js.map +1 -1
  360. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  361. package/dist/components/overlays/Modal/Overlay.js +1 -1
  362. package/dist/components/overlays/Modal/Popover.js +1 -1
  363. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  364. package/dist/components/overlays/Modal/Tray.js +2 -2
  365. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  366. package/dist/components/overlays/Modal/Underlay.js +2 -2
  367. package/dist/components/overlays/Modal/Underlay.js.map +1 -1
  368. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  369. package/dist/components/overlays/Notifications/Notification.js +1 -1
  370. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  371. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  372. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  373. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  374. package/dist/components/overlays/Notifications/OverlayContainer.js +28 -13
  375. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  376. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  377. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  378. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  379. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  380. package/dist/components/overlays/Notifications/index.js +1 -1
  381. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  382. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  383. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  384. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  385. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  386. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  387. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  388. package/dist/components/overlays/Toast/index.js +1 -1
  389. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  390. package/dist/components/overlays/Toast/useToast.js +1 -1
  391. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  392. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  393. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  394. package/dist/components/overlays/Tooltip/context.js +1 -1
  395. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  396. package/dist/components/portal/Portal.js +1 -1
  397. package/dist/components/portal/PortalProvider.js +1 -1
  398. package/dist/components/portal/usePortal.js +1 -1
  399. package/dist/components/shared/DraggableCollection.js +1 -1
  400. package/dist/components/shared/InvalidIcon.js +1 -1
  401. package/dist/components/shared/ValidIcon.js +1 -1
  402. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +58 -57
  403. package/dist/components/status/LoadingAnimation/LoadingAnimation.js.map +1 -1
  404. package/dist/components/status/Spin/Cube.js +1 -1
  405. package/dist/components/status/Spin/Cube.js.map +1 -1
  406. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  407. package/dist/components/status/Spin/Spin.js +1 -1
  408. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  409. package/dist/data/item-themes.js +127 -162
  410. package/dist/data/item-themes.js.map +1 -1
  411. package/dist/data/themes.js +1 -1
  412. package/dist/eslint-plugin/defaults.generated.js +1 -1
  413. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  414. package/dist/eslint-plugin/index.js +1 -1
  415. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  416. package/dist/i18n/I18nProvider.js +1 -1
  417. package/dist/i18n/createFormatter.js +1 -1
  418. package/dist/i18n/index.js +1 -1
  419. package/dist/i18n/instance.js +1 -1
  420. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  421. package/dist/i18n/locales/en-US/uikit.js +1 -1
  422. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  423. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  424. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  425. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  426. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  427. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  428. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  429. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  430. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  431. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  432. package/dist/i18n/locales.js +1 -1
  433. package/dist/i18n/namespace.js +1 -1
  434. package/dist/i18n/useFormatter.js +1 -1
  435. package/dist/i18n/useI18n.js +1 -1
  436. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  437. package/dist/icons/AdjustmentsIcon.js +1 -1
  438. package/dist/icons/AiIcon.js +1 -1
  439. package/dist/icons/AreaChartIcon.js +1 -1
  440. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  441. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  442. package/dist/icons/BackwardIcon.js +1 -1
  443. package/dist/icons/BarChartIcon.js +1 -1
  444. package/dist/icons/BellFilledIcon.js +1 -1
  445. package/dist/icons/BellIcon.js +1 -1
  446. package/dist/icons/BooleanIcon.js +1 -1
  447. package/dist/icons/CalendarEditIcon.js +1 -1
  448. package/dist/icons/CalendarIcon.js +1 -1
  449. package/dist/icons/CaretDownIcon.js +1 -1
  450. package/dist/icons/CaretUpIcon.js +1 -1
  451. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  452. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  453. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  454. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  455. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  456. package/dist/icons/ChartBarLineIcon.js +1 -1
  457. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  458. package/dist/icons/ChartBarStackedIcon.js +1 -1
  459. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  460. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  461. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  462. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  463. package/dist/icons/ChartBubbleIcon.js +1 -1
  464. package/dist/icons/ChartDonut2Icon.js +1 -1
  465. package/dist/icons/ChartFunnelIcon.js +1 -1
  466. package/dist/icons/ChartHeatmapIcon.js +1 -1
  467. package/dist/icons/ChartKPIIcon.js +1 -1
  468. package/dist/icons/ChartPie2Icon.js +1 -1
  469. package/dist/icons/ChartScatterIcon.js +1 -1
  470. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  471. package/dist/icons/CheckCircleIcon.js +1 -1
  472. package/dist/icons/CheckIcon.js +1 -1
  473. package/dist/icons/CircleFilledIcon.js +1 -1
  474. package/dist/icons/ClearIcon.js +1 -1
  475. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  476. package/dist/icons/CloseCircleIcon.js +1 -1
  477. package/dist/icons/CloseIcon.js +1 -1
  478. package/dist/icons/CodeIcon.js +1 -1
  479. package/dist/icons/ColumnTotalIcon.js +1 -1
  480. package/dist/icons/CopyIcon.js +1 -1
  481. package/dist/icons/CountIcon.js +1 -1
  482. package/dist/icons/CubeIcon.js +1 -1
  483. package/dist/icons/CubePauseIcon.js +1 -1
  484. package/dist/icons/CubePlayIcon.js +1 -1
  485. package/dist/icons/CurrencyDollarIcon.js +1 -1
  486. package/dist/icons/DangerIcon.js +1 -1
  487. package/dist/icons/DashboardIcon.js +1 -1
  488. package/dist/icons/DatabaseIcon.js +1 -1
  489. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  490. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  491. package/dist/icons/DirectionIcon.js +25 -22
  492. package/dist/icons/DirectionIcon.js.map +1 -1
  493. package/dist/icons/DonutIcon.js +1 -1
  494. package/dist/icons/DownIcon.js +1 -1
  495. package/dist/icons/EditIcon.js +1 -1
  496. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  497. package/dist/icons/ExclamationCircleIcon.js +1 -1
  498. package/dist/icons/ExclamationIcon.js +1 -1
  499. package/dist/icons/EyeIcon.js +1 -1
  500. package/dist/icons/EyeInvisibleIcon.js +1 -1
  501. package/dist/icons/FilterIcon.js +1 -1
  502. package/dist/icons/FolderFilledIcon.js +1 -1
  503. package/dist/icons/FolderIcon.js +1 -1
  504. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  505. package/dist/icons/FolderOpenIcon.js +1 -1
  506. package/dist/icons/ForwardIcon.js +1 -1
  507. package/dist/icons/GripVerticalIcon.js +1 -1
  508. package/dist/icons/HierarchyIcon.js +1 -1
  509. package/dist/icons/HierarchyOpenIcon.js +1 -1
  510. package/dist/icons/Icon.js +1 -1
  511. package/dist/icons/InfoCircleIcon.js +1 -1
  512. package/dist/icons/InfoIcon.js +1 -1
  513. package/dist/icons/KeyIcon.js +1 -1
  514. package/dist/icons/LeftIcon.js +1 -1
  515. package/dist/icons/LineChartIcon.js +1 -1
  516. package/dist/icons/LoadingIcon.js +1 -1
  517. package/dist/icons/LockFilledIcon.js +1 -1
  518. package/dist/icons/LockIcon.js +1 -1
  519. package/dist/icons/MoreIcon.js +1 -1
  520. package/dist/icons/NotAllowedIcon.js +1 -1
  521. package/dist/icons/Number123Icon.js +1 -1
  522. package/dist/icons/NumberIcon.js +1 -1
  523. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  524. package/dist/icons/PauseCircleIcon.js +1 -1
  525. package/dist/icons/PauseIcon.js +1 -1
  526. package/dist/icons/PercentageIcon.js +1 -1
  527. package/dist/icons/PieChartIcon.js +1 -1
  528. package/dist/icons/PipetteIcon.js +1 -1
  529. package/dist/icons/PlayCircleIcon.js +7 -2
  530. package/dist/icons/PlayCircleIcon.js.map +1 -1
  531. package/dist/icons/PlayIcon.js +1 -1
  532. package/dist/icons/PlusIcon.js +1 -1
  533. package/dist/icons/ProgressBarIcon.js +1 -1
  534. package/dist/icons/ReloadIcon.js +1 -1
  535. package/dist/icons/ReportIcon.js +1 -1
  536. package/dist/icons/ReturnIcon.js +1 -1
  537. package/dist/icons/RightIcon.js +1 -1
  538. package/dist/icons/RowTotalsIcon.js +1 -1
  539. package/dist/icons/SchemeIcon.js +1 -1
  540. package/dist/icons/SearchIcon.js +1 -1
  541. package/dist/icons/SemanticQueryIcon.js +1 -1
  542. package/dist/icons/SettingsIcon.js +1 -1
  543. package/dist/icons/ShieldFilledIcon.js +1 -1
  544. package/dist/icons/ShieldIcon.js +1 -1
  545. package/dist/icons/SlashIcon.js +1 -1
  546. package/dist/icons/SparklesIcon.js +1 -1
  547. package/dist/icons/SqlIcon.js +1 -1
  548. package/dist/icons/StatsIcon.js +1 -1
  549. package/dist/icons/StopIcon.js +1 -1
  550. package/dist/icons/StringIcon.js +1 -1
  551. package/dist/icons/SubtotalsIcon.js +1 -1
  552. package/dist/icons/SwitchIcon.js +1 -1
  553. package/dist/icons/TableIcon.js +1 -1
  554. package/dist/icons/ThumbsDownIcon.js +1 -1
  555. package/dist/icons/ThumbsUpIcon.js +1 -1
  556. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  557. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  558. package/dist/icons/ThunderboltIcon.js +1 -1
  559. package/dist/icons/TimeIcon.js +1 -1
  560. package/dist/icons/TrashIcon.js +1 -1
  561. package/dist/icons/UnlockIcon.js +1 -1
  562. package/dist/icons/UpIcon.js +1 -1
  563. package/dist/icons/UserGroupIcon.js +1 -1
  564. package/dist/icons/UserIcon.js +1 -1
  565. package/dist/icons/UserLockIcon.js +1 -1
  566. package/dist/icons/ViewIcon.js +1 -1
  567. package/dist/icons/WarningFilledIcon.js +1 -1
  568. package/dist/icons/WarningIcon.js +1 -1
  569. package/dist/icons/wrap-icon.js +1 -1
  570. package/dist/index.js +1 -1
  571. package/dist/probe/canonicalize.js +1 -1
  572. package/dist/probe/css.js +1 -1
  573. package/dist/probe/index.js +1 -1
  574. package/dist/provider.js +1 -1
  575. package/dist/providers/TrackingProvider.js +1 -1
  576. package/dist/providers/navigation-url.js +1 -1
  577. package/dist/providers/navigationAdapter.default.js +1 -1
  578. package/dist/providers/use-navigation.js +1 -1
  579. package/dist/tokens/all-tokens.js +1 -1
  580. package/dist/tokens/base.js +5 -1
  581. package/dist/tokens/base.js.map +1 -1
  582. package/dist/tokens/color-seed.js +1 -1
  583. package/dist/tokens/color-theme.js +1 -1
  584. package/dist/tokens/colors.js +4 -4
  585. package/dist/tokens/colors.js.map +1 -1
  586. package/dist/tokens/layout.js +1 -1
  587. package/dist/tokens/lazy-styles.js +1 -1
  588. package/dist/tokens/legacy-color.js +1 -1
  589. package/dist/tokens/palette-config.js +1 -1
  590. package/dist/tokens/palette.js +1 -1
  591. package/dist/tokens/palette.js.map +1 -1
  592. package/dist/tokens/resolve.js +1 -1
  593. package/dist/tokens/resolve.js.map +1 -1
  594. package/dist/tokens/shadows.js +1 -1
  595. package/dist/tokens/sizes.js +1 -1
  596. package/dist/tokens/spacing.js +1 -1
  597. package/dist/tokens/typography.js +1 -1
  598. package/dist/utils/ResizeSensor.js +1 -1
  599. package/dist/utils/colors.js +1 -1
  600. package/dist/utils/dotize.js +1 -1
  601. package/dist/utils/is-dev-env.js +1 -1
  602. package/dist/utils/modules.js +1 -1
  603. package/dist/utils/promise.js +1 -1
  604. package/dist/utils/raf.js +1 -1
  605. package/dist/utils/random.js +1 -1
  606. package/dist/utils/range.js +1 -1
  607. package/dist/utils/react/RenderCache.js +1 -1
  608. package/dist/utils/react/Slots.js +1 -1
  609. package/dist/utils/react/chain.js +1 -1
  610. package/dist/utils/react/disabledProps.js +1 -1
  611. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  612. package/dist/utils/react/index.js +1 -1
  613. package/dist/utils/react/interactions.js +1 -1
  614. package/dist/utils/react/isTextOnly.js +1 -1
  615. package/dist/utils/react/mapProps.js +1 -1
  616. package/dist/utils/react/mergeProps.js +1 -1
  617. package/dist/utils/react/nullableValue.js +1 -1
  618. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  619. package/dist/utils/react/programmaticFocus.js +1 -1
  620. package/dist/utils/react/resolveIcon.js +1 -1
  621. package/dist/utils/react/sharedStore.js +1 -1
  622. package/dist/utils/react/useBufferedValue.js +1 -1
  623. package/dist/utils/react/useCombinedRefs.js +1 -1
  624. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  625. package/dist/utils/react/useEventBus.js +1 -1
  626. package/dist/utils/react/useId.js +1 -1
  627. package/dist/utils/react/useIsDarwin.js +1 -1
  628. package/dist/utils/react/useKeySymbols.js +1 -1
  629. package/dist/utils/react/useLayoutEffect.js +1 -1
  630. package/dist/utils/react/useLocalStorage.js +1 -1
  631. package/dist/utils/react/useMergeStyles.js +1 -1
  632. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  633. package/dist/utils/react/usePopoverSync.js +1 -1
  634. package/dist/utils/react/useQaProps.js +1 -1
  635. package/dist/utils/react/useScheme.js +1 -1
  636. package/dist/utils/react/useViewportSize.js +1 -1
  637. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  638. package/dist/utils/selection.js +1 -1
  639. package/dist/utils/styles.js +1 -1
  640. package/dist/utils/tree.js +1 -1
  641. package/dist/utils/warnings.js +1 -1
  642. package/dist/version.js +2 -2
  643. package/docs/Usage.md +2 -0
  644. package/docs/components/content/HotKeys.md +2 -2
  645. package/docs/components/content/InlineInput.md +2 -2
  646. package/docs/components/content/Item.md +5 -5
  647. package/docs/components/content/Layout.md +9 -9
  648. package/docs/components/content/Text.md +1 -1
  649. package/package.json +2 -2
  650. package/tasty.config.ts +53 -4
@@ -1 +1 @@
1
- {"version":3,"file":"styled.js","names":["mergeStyles","tasty","DEFAULT_CLEAR_STYLES","CubeSpaceProps","Space","DEFAULT_BUTTON_STYLES","StyledMenuWrapper","qa","styles","display","gridRows","fill","margin","padding","border","radius","width","popover","shadow","height","tray","boxSizing","StyledMenu","as","flow","gap","sections","section","overflow","scrollbar","StyledDivider","listStyle","flexShrink","StyledHeader","color","preset","placeContent","placeItems","whiteSpace","$size","StyledFooter","StyledSection","StyledItem","justifyContent","focused","selected","pressed","disabled","cursor","outline","Description","StyledSectionHeading","size","prefix"],"sources":["../../../../src/components/actions/Menu/styled.tsx"],"sourcesContent":["import { mergeStyles, tasty } from '@tenphi/tasty';\n\nimport { DEFAULT_CLEAR_STYLES } from '../../../data/item-themes';\nimport { CubeSpaceProps, Space } from '../../layout/Space';\nimport { DEFAULT_BUTTON_STYLES } from '../Button/Button';\n\nexport const StyledMenuWrapper = tasty({\n qa: 'Menu',\n styles: {\n display: 'grid',\n gridRows: 'max-content 1sf max-content',\n fill: '#surface',\n margin: 0,\n padding: 0,\n border: true,\n radius: '(1cr + 1bw)',\n width: {\n '': 'auto',\n popover: 'max-content',\n },\n shadow: {\n '': '',\n // Use the design-system `$shadow` token (resolves to\n // `0 .5x 2x #shadow-md`) so the popover shadow follows the\n // scheme-aware Glaze `#shadow-md` color. The previous literal\n // `0px 5px 15px #dark.05` baked in `#dark` (now aliased to the\n // adaptive `#surface-text`) which inverts to a *light* shadow on\n // dark surfaces.\n 'popover | tray': '$shadow',\n },\n height: {\n '': 'initial',\n popover: 'initial max-content (50vh - 4x)',\n tray: 'initial max-content (100vh - 4x)',\n },\n boxSizing: 'border-box',\n },\n});\n\nexport const StyledMenu = tasty({\n as: 'ul',\n qa: 'MenuList',\n styles: {\n display: 'flex',\n flow: 'column',\n gap: {\n '': '1bw',\n sections: false,\n },\n boxSizing: 'border-box',\n margin: 0,\n padding: {\n '': '0.5x',\n section: 0, // section menu\n },\n overflow: {\n '': 'auto',\n section: '',\n },\n scrollbar: 'styled',\n },\n});\n\nexport const StyledDivider = tasty({\n qa: 'Divider',\n as: 'li',\n styles: {\n display: 'flex',\n flow: 'column',\n margin: '.5x',\n listStyle: 'none',\n fill: '#border',\n height: '1bw',\n flexShrink: 0,\n },\n});\n\n// No `heading` role: a header can hold controls, and a heading would read\n// them as part of its title.\nexport const StyledHeader = tasty(Space, {\n qa: 'Header',\n as: 'div',\n styles: {\n color: '#dark-02',\n preset: 't3',\n placeContent: 'space-between',\n placeItems: 'center',\n whiteSpace: 'nowrap',\n padding: '.5x 1.5x',\n height: 'min $size',\n boxSizing: 'border-box',\n border: 'bottom',\n radius: '1cr top',\n\n $size: {\n '': '$size-md',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n },\n },\n});\n\nexport const StyledFooter = tasty(Space, {\n qa: 'Footer',\n as: 'div',\n styles: {\n color: '#dark-02',\n preset: 't3',\n placeContent: 'space-between',\n placeItems: 'center',\n whiteSpace: 'nowrap',\n padding: '.5x 1.5x',\n height: {\n '': 'min $size-md',\n 'size=large': 'min $size-lg',\n },\n boxSizing: 'border-box',\n border: 'top',\n radius: '1cr bottom',\n },\n});\n\nexport const StyledSection = tasty({\n qa: 'Section',\n as: 'li',\n styles: {\n display: 'flex',\n flow: 'column',\n margin: '0',\n padding: '0',\n listStyle: 'none',\n fill: '#surface',\n },\n});\n\nexport const StyledItem = tasty({\n qa: 'Item',\n as: 'li',\n // Button's defaults with its `default.clear` theme, merged the way Button\n // applies that variant, then the menu-specific overrides.\n styles: mergeStyles(DEFAULT_BUTTON_STYLES, DEFAULT_CLEAR_STYLES, {\n // Override specifics for menu context\n display: 'flex',\n flow: 'row',\n justifyContent: 'stretch',\n listStyle: 'none',\n flexShrink: 0,\n height: {\n '': 'min $size-md',\n 'size=large': 'min $size-lg',\n },\n border: false,\n boxSizing: 'border-box',\n fill: {\n '': '#clear',\n focused: '#dark.03',\n selected: '#dark.09',\n 'selected & focused': '#dark.12',\n pressed: '#dark.09',\n disabled: '#clear',\n },\n color: {\n '': '#dark-02',\n 'selected | pressed': '#dark',\n disabled: '#disabled-surface-text',\n },\n cursor: {\n '': 'default',\n disabled: 'not-allowed',\n },\n shadow: '#clear',\n padding: {\n '': '.5x 1x',\n 'selectionIcon & selectable & !selected': '.5x 1x .5x (1x + 3x)',\n },\n gap: '.75x',\n outline: false,\n\n Description: {\n preset: 't4',\n color: '#dark-03',\n },\n }),\n});\n\nexport const StyledSectionHeading = tasty<\n CubeSpaceProps & { size?: 'small' | 'medium' | (string & {}) }\n>(Space, {\n qa: 'SectionHeading',\n as: 'div',\n styles: {\n color: '#dark-04',\n preset: 'c2',\n height: '3x',\n placeContent: 'center space-between',\n padding: {\n '': '.5x .75x',\n prefix: '0 .75x 0 .5x',\n },\n\n $size: {\n '': '$size-md',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n },\n },\n});\n"],"mappings":";;;;;;AAMA,MAAaM,oBAAoBL,MAAM;CACrCM,IAAI;CACJC,QAAQ;EACNC,SAAS;EACTC,UAAU;EACVC,MAAM;EACNC,QAAQ;EACRC,SAAS;EACTC,QAAQ;EACRC,QAAQ;EACRC,OAAO;GACL,IAAI;GACJC,SAAS;EACX;EACAC,QAAQ;GACN,IAAI;GAOJ,kBAAkB;EACpB;EACAC,QAAQ;GACN,IAAI;GACJF,SAAS;GACTG,MAAM;EACR;EACAC,WAAW;CACb;AACF,CAAC;AAED,MAAaC,aAAarB,MAAM;CAC9BsB,IAAI;CACJhB,IAAI;CACJC,QAAQ;EACNC,SAAS;EACTe,MAAM;EACNC,KAAK;GACH,IAAI;GACJC,UAAU;EACZ;EACAL,WAAW;EACXT,QAAQ;EACRC,SAAS;GACP,IAAI;GACJc,SAAS;EACX;EACAC,UAAU;GACR,IAAI;GACJD,SAAS;EACX;EACAE,WAAW;CACb;AACF,CAAC;AAED,MAAaC,gBAAgB7B,MAAM;CACjCM,IAAI;CACJgB,IAAI;CACJf,QAAQ;EACNC,SAAS;EACTe,MAAM;EACNZ,QAAQ;EACRmB,WAAW;EACXpB,MAAM;EACNQ,QAAQ;EACRa,YAAY;CACd;AACF,CAAC;AAID,MAAaC,eAAehC,MAAMG,OAAO;CACvCG,IAAI;CACJgB,IAAI;CACJf,QAAQ;EACN0B,OAAO;EACPC,QAAQ;EACRC,cAAc;EACdC,YAAY;EACZC,YAAY;EACZzB,SAAS;EACTM,QAAQ;EACRE,WAAW;EACXP,QAAQ;EACRC,QAAQ;EAERwB,OAAO;GACL,IAAI;GACJ,cAAc;GACd,eAAe;GACf,cAAc;EAChB;CACF;AACF,CAAC;AAED,MAAaC,eAAevC,MAAMG,OAAO;CACvCG,IAAI;CACJgB,IAAI;CACJf,QAAQ;EACN0B,OAAO;EACPC,QAAQ;EACRC,cAAc;EACdC,YAAY;EACZC,YAAY;EACZzB,SAAS;EACTM,QAAQ;GACN,IAAI;GACJ,cAAc;EAChB;EACAE,WAAW;EACXP,QAAQ;EACRC,QAAQ;CACV;AACF,CAAC;AAED,MAAa0B,gBAAgBxC,MAAM;CACjCM,IAAI;CACJgB,IAAI;CACJf,QAAQ;EACNC,SAAS;EACTe,MAAM;EACNZ,QAAQ;EACRC,SAAS;EACTkB,WAAW;EACXpB,MAAM;CACR;AACF,CAAC;AAEyBV,MAAM;CAC9BM,IAAI;CACJgB,IAAI;CAGJf,QAAQR,YAAYK,uBAAuBH,sBAAsB;EAE/DO,SAAS;EACTe,MAAM;EACNmB,gBAAgB;EAChBZ,WAAW;EACXC,YAAY;EACZb,QAAQ;GACN,IAAI;GACJ,cAAc;EAChB;EACAL,QAAQ;EACRO,WAAW;EACXV,MAAM;GACJ,IAAI;GACJiC,SAAS;GACTC,UAAU;GACV,sBAAsB;GACtBC,SAAS;GACTC,UAAU;EACZ;EACAb,OAAO;GACL,IAAI;GACJ,sBAAsB;GACtBa,UAAU;EACZ;EACAC,QAAQ;GACN,IAAI;GACJD,UAAU;EACZ;EACA7B,QAAQ;EACRL,SAAS;GACP,IAAI;GACJ,0CAA0C;EAC5C;EACAY,KAAK;EACLwB,SAAS;EAETC,aAAa;GACXf,QAAQ;GACRD,OAAO;EACT;CACF,CAAC;AACH,CAAC;AAED,MAAaiB,uBAAuBlD,MAElCG,OAAO;CACPG,IAAI;CACJgB,IAAI;CACJf,QAAQ;EACN0B,OAAO;EACPC,QAAQ;EACRhB,QAAQ;EACRiB,cAAc;EACdvB,SAAS;GACP,IAAI;GACJwC,QAAQ;EACV;EAEAd,OAAO;GACL,IAAI;GACJ,cAAc;GACd,eAAe;GACf,cAAc;EAChB;CACF;AACF,CAAC"}
1
+ {"version":3,"file":"styled.js","names":["mergeStyles","tasty","DEFAULT_CLEAR_STYLES","CubeSpaceProps","Space","DEFAULT_BUTTON_STYLES","StyledMenuWrapper","qa","styles","display","gridRows","fill","margin","padding","border","radius","width","popover","tray","shadow","height","boxSizing","StyledMenu","as","flow","gap","sections","section","overflow","scrollbar","StyledDivider","listStyle","flexShrink","StyledHeader","color","preset","placeContent","placeItems","whiteSpace","$size","StyledFooter","StyledSection","StyledItem","justifyContent","focused","selected","pressed","disabled","cursor","outline","Description","StyledSectionHeading","size","prefix"],"sources":["../../../../src/components/actions/Menu/styled.tsx"],"sourcesContent":["import { mergeStyles, tasty } from '@tenphi/tasty';\n\nimport { DEFAULT_CLEAR_STYLES } from '../../../data/item-themes';\nimport { CubeSpaceProps, Space } from '../../layout/Space';\nimport { DEFAULT_BUTTON_STYLES } from '../Button/Button';\n\nexport const StyledMenuWrapper = tasty({\n qa: 'Menu',\n styles: {\n display: 'grid',\n gridRows: 'max-content 1sf max-content',\n fill: '#surface',\n margin: 0,\n padding: 0,\n border: true,\n radius: '(1cr + 1bw)',\n width: {\n '': 'auto',\n popover: 'max-content',\n tray: '100%',\n },\n shadow: {\n '': '',\n // Use the design-system `$shadow` token (resolves to\n // `0 .5x 2x #shadow-md`) so the popover shadow follows the\n // scheme-aware Glaze `#shadow-md` color. The previous literal\n // `0px 5px 15px #dark.05` baked in `#dark` (now aliased to the\n // adaptive `#surface-text`) which inverts to a *light* shadow on\n // dark surfaces.\n 'popover | tray': '$shadow',\n },\n height: {\n '': 'initial',\n popover: 'initial max-content (50vh - 4x)',\n // The tray caps the height, and the menu scrolls inside it.\n tray: 'initial max-content inherit',\n },\n boxSizing: 'border-box',\n },\n});\n\nexport const StyledMenu = tasty({\n as: 'ul',\n qa: 'MenuList',\n styles: {\n display: 'flex',\n flow: 'column',\n gap: {\n '': '1bw',\n sections: false,\n },\n boxSizing: 'border-box',\n margin: 0,\n padding: {\n '': '0.5x',\n section: 0, // section menu\n },\n overflow: {\n '': 'auto',\n section: '',\n },\n scrollbar: 'styled',\n },\n});\n\nexport const StyledDivider = tasty({\n qa: 'Divider',\n as: 'li',\n styles: {\n display: 'flex',\n flow: 'column',\n margin: '.5x',\n listStyle: 'none',\n fill: '#border',\n height: '1bw',\n flexShrink: 0,\n },\n});\n\n// No `heading` role: a header can hold controls, and a heading would read\n// them as part of its title.\nexport const StyledHeader = tasty(Space, {\n qa: 'Header',\n as: 'div',\n styles: {\n color: '#dark-02',\n preset: 't3',\n placeContent: 'space-between',\n placeItems: 'center',\n whiteSpace: 'nowrap',\n padding: '.5x 1.5x',\n height: 'min $size',\n boxSizing: 'border-box',\n border: 'bottom',\n radius: '1cr top',\n\n $size: {\n '': '$size-md',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n },\n },\n});\n\nexport const StyledFooter = tasty(Space, {\n qa: 'Footer',\n as: 'div',\n styles: {\n color: '#dark-02',\n preset: 't3',\n placeContent: 'space-between',\n placeItems: 'center',\n whiteSpace: 'nowrap',\n padding: '.5x 1.5x',\n height: {\n '': 'min $size-md',\n 'size=large': 'min $size-lg',\n },\n boxSizing: 'border-box',\n border: 'top',\n radius: '1cr bottom',\n },\n});\n\nexport const StyledSection = tasty({\n qa: 'Section',\n as: 'li',\n styles: {\n display: 'flex',\n flow: 'column',\n margin: '0',\n padding: '0',\n listStyle: 'none',\n fill: '#surface',\n },\n});\n\nexport const StyledItem = tasty({\n qa: 'Item',\n as: 'li',\n // Button's defaults with its `default.clear` theme, merged the way Button\n // applies that variant, then the menu-specific overrides.\n styles: mergeStyles(DEFAULT_BUTTON_STYLES, DEFAULT_CLEAR_STYLES, {\n // Override specifics for menu context\n display: 'flex',\n flow: 'row',\n justifyContent: 'stretch',\n listStyle: 'none',\n flexShrink: 0,\n height: {\n '': 'min $size-md',\n 'size=large': 'min $size-lg',\n },\n border: false,\n boxSizing: 'border-box',\n fill: {\n '': '#clear',\n focused: '#dark.03',\n selected: '#dark.09',\n 'selected & focused': '#dark.12',\n pressed: '#dark.09',\n disabled: '#clear',\n },\n color: {\n '': '#dark-02',\n 'selected | pressed': '#dark',\n disabled: '#disabled-surface-text',\n },\n cursor: {\n '': 'default',\n disabled: 'not-allowed',\n },\n shadow: '#clear',\n padding: {\n '': '.5x 1x',\n 'selectionIcon & selectable & !selected': '.5x 1x .5x (1x + 3x)',\n },\n gap: '.75x',\n outline: false,\n\n Description: {\n preset: 't4',\n color: '#dark-03',\n },\n }),\n});\n\nexport const StyledSectionHeading = tasty<\n CubeSpaceProps & { size?: 'small' | 'medium' | (string & {}) }\n>(Space, {\n qa: 'SectionHeading',\n as: 'div',\n styles: {\n color: '#dark-04',\n preset: 'c2',\n height: '3x',\n placeContent: 'center space-between',\n padding: {\n '': '.5x .75x',\n prefix: '0 .75x 0 .5x',\n },\n\n $size: {\n '': '$size-md',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n },\n },\n});\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  //#region src/components/actions/actions-run.ts
3
3
  /**
4
4
  * Whether `element` — the node react-aria hands an overlay's dismiss predicate
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { ItemActionProvider, useItemActionContext } from "./ItemActionContext.js";
3
3
  import { openLink, parseTo, performClickHandler, useAction } from "./use-action.js";
4
4
  import { ItemAction } from "./ItemAction/ItemAction.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../utils/react/mergeProps.js";
3
3
  import { useEvent } from "../../_internal/hooks/use-event.js";
4
4
  import { useWarn } from "../../_internal/hooks/use-warn.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../utils/react/mergeProps.js";
3
3
  import { usePopoverSync } from "../../utils/react/usePopoverSync.js";
4
4
  import { useEvent } from "../../_internal/hooks/use-event.js";
@@ -1,16 +1,40 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../utils/react/mergeProps.js";
3
3
  import { usePopoverSync } from "../../utils/react/usePopoverSync.js";
4
4
  import { useEvent } from "../../_internal/hooks/use-event.js";
5
5
  import { useI18n } from "../../i18n/useI18n.js";
6
6
  import { generateRandomId } from "../../utils/random.js";
7
7
  import { MenuTrigger as _MenuTrigger } from "./Menu/MenuTrigger.js";
8
+ import { tasty } from "@tenphi/tasty";
8
9
  import { createRef, useEffect, useMemo, useRef, useState } from "react";
9
10
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
10
11
  import { createPortal } from "react-dom";
11
12
  import { VisuallyHidden } from "react-aria";
12
13
  import { Pressable } from "@react-aria/interactions";
13
14
  //#region src/components/actions/use-context-menu.tsx
15
+ const ContextMenuHostElement = tasty({
16
+ qa: "ContextMenuHost",
17
+ styles: {
18
+ position: "fixed",
19
+ inset: "0 auto auto 0",
20
+ width: 0,
21
+ height: 0
22
+ }
23
+ });
24
+ const ContextMenuAnchorElement = tasty({
25
+ as: "span",
26
+ qa: "ContextMenuAnchor",
27
+ styles: {
28
+ position: "absolute",
29
+ left: "$anchor-x",
30
+ top: "$anchor-y",
31
+ width: 0,
32
+ height: 0,
33
+ lineHeight: 0,
34
+ pointerEvents: "none",
35
+ visibility: "hidden"
36
+ }
37
+ });
14
38
  /**
15
39
  * Generic hook to manage a context menu component that opens at pointer coordinates.
16
40
  *
@@ -139,28 +163,13 @@ function useContextMenu(Component, defaultTriggerProps, defaultMenuProps) {
139
163
  ...defaultMenuProps,
140
164
  ...runtimeProps
141
165
  } : runtimeProps;
142
- return /* @__PURE__ */ jsxs(Fragment$1, { children: [createPortal(/* @__PURE__ */ jsx("div", {
143
- style: {
144
- position: "fixed",
145
- left: 0,
146
- top: 0,
147
- width: 0,
148
- height: 0
149
- },
150
- children: /* @__PURE__ */ jsx("span", {
151
- ref: invisibleAnchorRef,
152
- style: {
153
- position: "absolute",
154
- left: `${anchorPosition.x}px`,
155
- top: `${anchorPosition.y}px`,
156
- width: "0px",
157
- height: "0px",
158
- lineHeight: "0",
159
- pointerEvents: "none",
160
- visibility: "hidden"
161
- }
162
- })
163
- }), document.body), /* @__PURE__ */ jsxs(_MenuTrigger, {
166
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [createPortal(/* @__PURE__ */ jsx(ContextMenuHostElement, { children: /* @__PURE__ */ jsx(ContextMenuAnchorElement, {
167
+ ref: invisibleAnchorRef,
168
+ tokens: {
169
+ "$anchor-x": `${anchorPosition.x}px`,
170
+ "$anchor-y": `${anchorPosition.y}px`
171
+ }
172
+ }) }), document.body), /* @__PURE__ */ jsxs(_MenuTrigger, {
164
173
  offset: 0,
165
174
  placement: triggerProps?.placement || defaultTriggerProps?.placement || "bottom start",
166
175
  ...mergeProps$1(defaultTriggerProps, triggerProps || void 0),
@@ -1 +1 @@
1
- {"version":3,"file":"use-context-menu.js","names":["Pressable","ComponentProps","ComponentType","createRef","MouseEvent","PointerEvent","ReactElement","RefObject","useEffect","useMemo","useRef","useState","VisuallyHidden","createPortal","useEvent","useI18n","generateRandomId","mergeProps","usePopoverSync","MenuTrigger","NativeMouseEvent","globalThis","NativePointerEvent","UseContextMenuReturn","HTMLElement","targetRef","E","open","props","P","triggerProps","T","event","update","close","isOpen","rendered","useContextMenu","Component","defaultTriggerProps","Omit","defaultMenuProps","t","setIsOpen","runtimeProps","setRuntimeProps","setTriggerProps","anchorPosition","setAnchorPosition","x","y","invisibleAnchorRef","HTMLSpanElement","popoverRef","HTMLDivElement","setupRef","el","current","dataset","popoverTrigger","menuId","onClose","triggerRef","containerRef","setupCheck","Error","calculatePosition","clientX","clientY","container","rect","getBoundingClientRect","left","width","top","height","computedStyle","window","getComputedStyle","position","style","preventDefault","onContextMenu","pos","undefined","element","addEventListener","removeEventListener","renderedMenu","componentProps","lineHeight","pointerEvents","visibility","document","body","placement","MenuTrigger","mergeProps"],"sources":["../../../src/components/actions/use-context-menu.tsx"],"sourcesContent":["import { Pressable } from '@react-aria/interactions';\nimport {\n ComponentProps,\n ComponentType,\n createRef,\n MouseEvent,\n PointerEvent,\n ReactElement,\n RefObject,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { VisuallyHidden } from 'react-aria';\nimport { createPortal } from 'react-dom';\n\nimport { useEvent } from '../../_internal';\nimport { useI18n } from '../../i18n';\nimport { generateRandomId } from '../../utils/random';\nimport { mergeProps } from '../../utils/react';\nimport { usePopoverSync } from '../../utils/react/usePopoverSync';\n\nimport { MenuTrigger } from './Menu';\n\ntype NativeMouseEvent = globalThis.MouseEvent;\ntype NativePointerEvent = globalThis.PointerEvent;\n\nexport interface UseContextMenuReturn<\n E extends HTMLElement = HTMLElement,\n P extends object = {},\n T = ComponentProps<typeof MenuTrigger>,\n> {\n /** Container element that receives context menu events. Attach this ref to your target element. */\n targetRef: RefObject<E | null>;\n\n /**\n * Programmatically opens the menu at the specified coordinates or element center.\n * Runtime props are merged with the CURRENT `defaultMenuProps` on every render\n * (runtime props take precedence), so defaults that change while the menu is\n * open reach it without an `update()` call.\n *\n * @param props - Props to pass to the menu component (optional, defaults to defaultMenuProps)\n * @param triggerProps - Additional props for MenuTrigger (merged with defaultTriggerProps)\n * @param event - The pointer/mouse event containing coordinates for positioning (optional, centers on element if not provided)\n */\n open(\n props?: P,\n triggerProps?: T,\n event?: NativeMouseEvent | NativePointerEvent | MouseEvent | PointerEvent,\n ): void;\n\n /**\n * Updates the RUNTIME props of the currently open menu without repositioning.\n * Props are merged over the current `defaultMenuProps`. Only needed for props\n * the caller owns — `defaultMenuProps` is re-read on every render.\n */\n update(props: P, triggerProps?: T): void;\n\n /** Closes the menu programmatically. */\n close(): void;\n\n /** Current open/closed state of the menu. */\n isOpen: boolean;\n\n /**\n * JSX element that must be rendered in your component tree.\n * Contains the MenuTrigger and positioning logic.\n * IMPORTANT: Must be placed directly inside the target container (the element with targetRef).\n */\n get rendered(): ReactElement | null;\n}\n\n/**\n * Generic hook to manage a context menu component that opens at pointer coordinates.\n *\n * @param Component - A React component that represents the menu content (Menu or CommandMenu).\n * @param defaultTriggerProps - Default props to pass to the MenuTrigger.\n * @param defaultMenuProps - Default props to pass to the Menu component.\n * @returns An object with `targetRef` to attach to the container element, `open` function to open the menu at event coordinates, `close` function to close the menu, and `rendered` JSX element to include in your component tree.\n */\nexport function useContextMenu<\n E extends HTMLElement = HTMLElement,\n P extends object = {},\n T = ComponentProps<typeof MenuTrigger>,\n>(\n Component: ComponentType<P>,\n defaultTriggerProps?: Omit<\n ComponentProps<typeof MenuTrigger>,\n 'children' | 'isOpen' | 'onOpenChange' | 'targetRef'\n >,\n defaultMenuProps?: P,\n): UseContextMenuReturn<E, P, T> {\n const { t } = useI18n();\n const [isOpen, setIsOpen] = useState(false);\n /**\n * The props the CALLER passed to `open()`/`update()`, on their own — never\n * pre-merged with `defaultMenuProps`.\n *\n * Merging at open time snapshotted the defaults, so a consumer that keeps its\n * menu content IN the defaults (`Tree`'s row menu does: `children` is part of\n * the third argument) had a menu that was frozen the moment it opened. Items\n * appearing, disappearing or flipping `isDisabled` while it was open stayed\n * invisible until it was closed and reopened, and the only workaround was to\n * mirror every render into an `update()` call. Keeping the overrides alone\n * lets the merge happen at RENDER time, against the current defaults, while\n * runtime props still win.\n */\n const [runtimeProps, setRuntimeProps] = useState<P | null>(null);\n const [triggerProps, setTriggerProps] = useState<T | null>(null);\n const [anchorPosition, setAnchorPosition] = useState<{\n x: number;\n y: number;\n } | null>(null);\n const targetRef = useRef<E>(null);\n // Moving a zero-size anchor does not fire ResizeObserver. A fresh ref for\n // each point makes MenuTrigger refresh its positioning and observation while\n // keeping the menu itself mounted, including its current focus and selection.\n const invisibleAnchorRef = useMemo(\n () => createRef<HTMLSpanElement>(),\n [anchorPosition],\n );\n const popoverRef = useRef<HTMLDivElement>(null);\n const setupRef = useRef(false);\n\n // Mark the container as a popover trigger so that other open menus' close-on-\n // outside predicates treat clicks inside it (including programmatic\n // open buttons rendered alongside a context-menu target) as a legitimate\n // trigger interaction instead of a generic outside click. This mirrors the\n // pattern in `useAnchoredMenu`.\n useEffect(() => {\n const el = targetRef.current;\n if (el) {\n el.dataset.popoverTrigger = '';\n return () => {\n delete el.dataset.popoverTrigger;\n };\n }\n }, []);\n\n // Generate a unique ID for this menu instance\n const menuId = useMemo(() => generateRandomId(), []);\n\n // Feed both the context-menu target (`triggerRef`) and the popover\n // container (`containerRef`) into the sync. The container ref is shared with\n // the rendered `MenuTrigger` via its `popoverRef` prop — the dummy\n // `MenuTrigger` opts out of `usePopoverSync` (`enabled: !isDummy`), so\n // without this the nested-popover guard would have no container to match\n // against and a `SubMenuTrigger` opened inside this menu would close the\n // whole menu.\n usePopoverSync({\n menuId,\n isOpen,\n onClose: () => {\n setIsOpen(false);\n setAnchorPosition(null);\n },\n triggerRef: targetRef as RefObject<HTMLElement | null>,\n containerRef: popoverRef,\n });\n\n function setupCheck() {\n if (!setupRef.current) {\n throw new Error(\n 'useContextMenu: MenuTrigger must be rendered. Use `rendered` property to include it in your component tree.',\n );\n }\n }\n\n /**\n * Where to put the invisible anchor, in **viewport** coordinates.\n *\n * Viewport rather than container-relative on purpose. The anchor is rendered\n * into a fixed-position host pinned to the viewport origin (see\n * `renderedMenu`), so the two agree by construction. Computing coordinates\n * against the target element while the anchor's containing block was\n * whichever positioned ancestor happened to enclose `rendered` is what used\n * to open the menu one ancestor-origin away from the pointer.\n */\n const calculatePosition = (\n event?: NativeMouseEvent | NativePointerEvent | MouseEvent | PointerEvent,\n ) => {\n if (event) {\n const { clientX = 0, clientY = 0 } = event;\n\n return { x: clientX, y: clientY };\n }\n\n // No event — a keyboard opening, which has no coordinates. Anchor on the\n // target element's centre instead.\n const container = targetRef.current;\n\n if (!container) return { x: 0, y: 0 };\n\n const rect = container.getBoundingClientRect();\n\n return { x: rect.left + rect.width / 2, y: rect.top + rect.height / 2 };\n };\n\n // 'open' accepts props, trigger props, and optional event for positioning, then opens the menu\n const open = useEvent(\n (\n props: P = {} as P,\n triggerProps?: T,\n event?: NativeMouseEvent | NativePointerEvent | MouseEvent | PointerEvent,\n ) => {\n setupCheck();\n\n // Ensure the target element can serve as a positioning context for the\n // invisible target element. If the consumer hasn't explicitly set\n // `position: relative | absolute | fixed | sticky` we switch it to\n // `relative` so that absolutely-positioned children are laid out correctly.\n if (targetRef.current) {\n const computedStyle = window.getComputedStyle(targetRef.current);\n\n if (computedStyle.position === 'static') {\n targetRef.current.style.position = 'relative';\n }\n }\n\n // Prevent default context menu if it's a context menu event\n if (\n event &&\n 'preventDefault' in event &&\n typeof event.preventDefault === 'function'\n ) {\n event.preventDefault();\n }\n\n const { x, y } = calculatePosition(event);\n setAnchorPosition({ x, y });\n\n // Overrides only — `defaultMenuProps` is merged in on render.\n setRuntimeProps(props);\n setTriggerProps(triggerProps ?? null);\n setIsOpen(true);\n },\n );\n\n const update = useEvent((props: P, triggerProps?: T) => {\n setupCheck();\n\n setRuntimeProps(props);\n setTriggerProps(triggerProps ?? null);\n });\n\n const close = useEvent(() => {\n setIsOpen(false);\n setAnchorPosition(null);\n });\n\n // Context menu event handler\n const onContextMenu = useEvent(\n (event: MouseEvent | PointerEvent | MouseEvent | PointerEvent) => {\n event.preventDefault();\n if (isOpen) {\n const pos = calculatePosition(event);\n setAnchorPosition(pos);\n } else {\n // No overrides: the defaults are merged in on every render, so\n // passing them here would freeze the version this right-click saw.\n open(undefined, undefined, event);\n }\n },\n );\n\n // Bind the onContextMenu event to targetRef\n useEffect(() => {\n const element = targetRef.current;\n if (!element) return;\n\n element.addEventListener('contextmenu', onContextMenu as any);\n\n return () => {\n element.removeEventListener('contextmenu', onContextMenu as any);\n };\n }, [onContextMenu]);\n\n // Render the menu only when it has been opened at least once\n const renderedMenu = useMemo(() => {\n if (!runtimeProps || !anchorPosition) return null;\n\n // Merged here rather than at open time, so the defaults an open menu\n // renders are the CURRENT ones. Runtime props still take precedence.\n const componentProps = defaultMenuProps\n ? { ...defaultMenuProps, ...runtimeProps }\n : runtimeProps;\n\n return (\n <>\n {/*\n Invisible anchor at the click coordinates.\n\n Two things make those coordinates mean what they say:\n\n 1. A `fixed` host, so the containing block's origin is the viewport\n rather than whichever positioned ancestor encloses `rendered` — the\n table root, the tree row — which is what used to open the menu one\n ancestor-origin away from the pointer.\n 2. A portal to `body`, because `position: fixed` is captured by any\n ancestor carrying a transform, filter or `will-change`. A\n virtualized row is usually translated, so the `fixed` host alone\n would still be anchored to the row.\n */}\n {createPortal(\n <div\n style={{\n position: 'fixed',\n left: 0,\n top: 0,\n width: 0,\n height: 0,\n }}\n >\n <span\n ref={invisibleAnchorRef}\n style={{\n position: 'absolute',\n left: `${anchorPosition.x}px`,\n top: `${anchorPosition.y}px`,\n width: '0px',\n height: '0px',\n lineHeight: '0',\n pointerEvents: 'none',\n visibility: 'hidden',\n }}\n />\n </div>,\n document.body,\n )}\n <MenuTrigger\n offset={0}\n placement={\n (triggerProps as ComponentProps<typeof MenuTrigger>)?.placement ||\n defaultTriggerProps?.placement ||\n 'bottom start'\n }\n {...mergeProps(defaultTriggerProps, triggerProps || undefined)}\n isDummy\n isOpen={isOpen}\n targetRef={invisibleAnchorRef}\n popoverRef={popoverRef}\n onOpenChange={setIsOpen}\n >\n <VisuallyHidden>\n <Pressable>\n <button\n aria-label={t(\n 'contextMenu.openContextMenu',\n 'Open context menu',\n )}\n />\n </Pressable>\n </VisuallyHidden>\n <Component {...componentProps} />\n </MenuTrigger>\n </>\n );\n }, [\n runtimeProps,\n defaultMenuProps,\n triggerProps,\n isOpen,\n defaultTriggerProps,\n anchorPosition,\n invisibleAnchorRef,\n t,\n ]);\n\n return {\n targetRef,\n open,\n update,\n close,\n isOpen,\n get rendered() {\n setupRef.current = true;\n\n return renderedMenu;\n },\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"use-context-menu.js","names":["Pressable","tasty","ComponentProps","ComponentType","createRef","MouseEvent","PointerEvent","ReactElement","RefObject","useEffect","useMemo","useRef","useState","VisuallyHidden","createPortal","useEvent","useI18n","generateRandomId","mergeProps","usePopoverSync","MenuTrigger","ContextMenuHostElement","qa","styles","position","inset","width","height","ContextMenuAnchorElement","as","left","top","lineHeight","pointerEvents","visibility","NativeMouseEvent","globalThis","NativePointerEvent","UseContextMenuReturn","HTMLElement","targetRef","E","open","props","P","triggerProps","T","event","update","close","isOpen","rendered","useContextMenu","Component","defaultTriggerProps","Omit","defaultMenuProps","t","setIsOpen","runtimeProps","setRuntimeProps","setTriggerProps","anchorPosition","setAnchorPosition","x","y","invisibleAnchorRef","HTMLSpanElement","popoverRef","HTMLDivElement","setupRef","el","current","dataset","popoverTrigger","menuId","onClose","triggerRef","containerRef","setupCheck","Error","calculatePosition","clientX","clientY","container","rect","getBoundingClientRect","computedStyle","window","getComputedStyle","style","preventDefault","onContextMenu","pos","undefined","element","addEventListener","removeEventListener","renderedMenu","componentProps","document","body","placement","MenuTrigger","mergeProps"],"sources":["../../../src/components/actions/use-context-menu.tsx"],"sourcesContent":["import { Pressable } from '@react-aria/interactions';\nimport { tasty } from '@tenphi/tasty';\nimport {\n ComponentProps,\n ComponentType,\n createRef,\n MouseEvent,\n PointerEvent,\n ReactElement,\n RefObject,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { VisuallyHidden } from 'react-aria';\nimport { createPortal } from 'react-dom';\n\nimport { useEvent } from '../../_internal';\nimport { useI18n } from '../../i18n';\nimport { generateRandomId } from '../../utils/random';\nimport { mergeProps } from '../../utils/react';\nimport { usePopoverSync } from '../../utils/react/usePopoverSync';\n\nimport { MenuTrigger } from './Menu';\n\n// A zero-size `fixed` host, so the anchor's coordinates are viewport ones.\nconst ContextMenuHostElement = tasty({\n qa: 'ContextMenuHost',\n styles: {\n position: 'fixed',\n inset: '0 auto auto 0',\n width: 0,\n height: 0,\n },\n});\n\n// Invisible anchor at the pointer's coordinates.\nconst ContextMenuAnchorElement = tasty({\n as: 'span',\n qa: 'ContextMenuAnchor',\n styles: {\n position: 'absolute',\n left: '$anchor-x',\n top: '$anchor-y',\n width: 0,\n height: 0,\n lineHeight: 0,\n pointerEvents: 'none',\n visibility: 'hidden',\n },\n});\n\ntype NativeMouseEvent = globalThis.MouseEvent;\ntype NativePointerEvent = globalThis.PointerEvent;\n\nexport interface UseContextMenuReturn<\n E extends HTMLElement = HTMLElement,\n P extends object = {},\n T = ComponentProps<typeof MenuTrigger>,\n> {\n /** Container element that receives context menu events. Attach this ref to your target element. */\n targetRef: RefObject<E | null>;\n\n /**\n * Programmatically opens the menu at the specified coordinates or element center.\n * Runtime props are merged with the CURRENT `defaultMenuProps` on every render\n * (runtime props take precedence), so defaults that change while the menu is\n * open reach it without an `update()` call.\n *\n * @param props - Props to pass to the menu component (optional, defaults to defaultMenuProps)\n * @param triggerProps - Additional props for MenuTrigger (merged with defaultTriggerProps)\n * @param event - The pointer/mouse event containing coordinates for positioning (optional, centers on element if not provided)\n */\n open(\n props?: P,\n triggerProps?: T,\n event?: NativeMouseEvent | NativePointerEvent | MouseEvent | PointerEvent,\n ): void;\n\n /**\n * Updates the RUNTIME props of the currently open menu without repositioning.\n * Props are merged over the current `defaultMenuProps`. Only needed for props\n * the caller owns — `defaultMenuProps` is re-read on every render.\n */\n update(props: P, triggerProps?: T): void;\n\n /** Closes the menu programmatically. */\n close(): void;\n\n /** Current open/closed state of the menu. */\n isOpen: boolean;\n\n /**\n * JSX element that must be rendered in your component tree.\n * Contains the MenuTrigger and positioning logic.\n * IMPORTANT: Must be placed directly inside the target container (the element with targetRef).\n */\n get rendered(): ReactElement | null;\n}\n\n/**\n * Generic hook to manage a context menu component that opens at pointer coordinates.\n *\n * @param Component - A React component that represents the menu content (Menu or CommandMenu).\n * @param defaultTriggerProps - Default props to pass to the MenuTrigger.\n * @param defaultMenuProps - Default props to pass to the Menu component.\n * @returns An object with `targetRef` to attach to the container element, `open` function to open the menu at event coordinates, `close` function to close the menu, and `rendered` JSX element to include in your component tree.\n */\nexport function useContextMenu<\n E extends HTMLElement = HTMLElement,\n P extends object = {},\n T = ComponentProps<typeof MenuTrigger>,\n>(\n Component: ComponentType<P>,\n defaultTriggerProps?: Omit<\n ComponentProps<typeof MenuTrigger>,\n 'children' | 'isOpen' | 'onOpenChange' | 'targetRef'\n >,\n defaultMenuProps?: P,\n): UseContextMenuReturn<E, P, T> {\n const { t } = useI18n();\n const [isOpen, setIsOpen] = useState(false);\n /**\n * The props the CALLER passed to `open()`/`update()`, on their own — never\n * pre-merged with `defaultMenuProps`.\n *\n * Merging at open time snapshotted the defaults, so a consumer that keeps its\n * menu content IN the defaults (`Tree`'s row menu does: `children` is part of\n * the third argument) had a menu that was frozen the moment it opened. Items\n * appearing, disappearing or flipping `isDisabled` while it was open stayed\n * invisible until it was closed and reopened, and the only workaround was to\n * mirror every render into an `update()` call. Keeping the overrides alone\n * lets the merge happen at RENDER time, against the current defaults, while\n * runtime props still win.\n */\n const [runtimeProps, setRuntimeProps] = useState<P | null>(null);\n const [triggerProps, setTriggerProps] = useState<T | null>(null);\n const [anchorPosition, setAnchorPosition] = useState<{\n x: number;\n y: number;\n } | null>(null);\n const targetRef = useRef<E>(null);\n // Moving a zero-size anchor does not fire ResizeObserver. A fresh ref for\n // each point makes MenuTrigger refresh its positioning and observation while\n // keeping the menu itself mounted, including its current focus and selection.\n const invisibleAnchorRef = useMemo(\n () => createRef<HTMLSpanElement>(),\n [anchorPosition],\n );\n const popoverRef = useRef<HTMLDivElement>(null);\n const setupRef = useRef(false);\n\n // Mark the container as a popover trigger so that other open menus' close-on-\n // outside predicates treat clicks inside it (including programmatic\n // open buttons rendered alongside a context-menu target) as a legitimate\n // trigger interaction instead of a generic outside click. This mirrors the\n // pattern in `useAnchoredMenu`.\n useEffect(() => {\n const el = targetRef.current;\n if (el) {\n el.dataset.popoverTrigger = '';\n return () => {\n delete el.dataset.popoverTrigger;\n };\n }\n }, []);\n\n // Generate a unique ID for this menu instance\n const menuId = useMemo(() => generateRandomId(), []);\n\n // Feed both the context-menu target (`triggerRef`) and the popover\n // container (`containerRef`) into the sync. The container ref is shared with\n // the rendered `MenuTrigger` via its `popoverRef` prop — the dummy\n // `MenuTrigger` opts out of `usePopoverSync` (`enabled: !isDummy`), so\n // without this the nested-popover guard would have no container to match\n // against and a `SubMenuTrigger` opened inside this menu would close the\n // whole menu.\n usePopoverSync({\n menuId,\n isOpen,\n onClose: () => {\n setIsOpen(false);\n setAnchorPosition(null);\n },\n triggerRef: targetRef as RefObject<HTMLElement | null>,\n containerRef: popoverRef,\n });\n\n function setupCheck() {\n if (!setupRef.current) {\n throw new Error(\n 'useContextMenu: MenuTrigger must be rendered. Use `rendered` property to include it in your component tree.',\n );\n }\n }\n\n /**\n * Where to put the invisible anchor, in **viewport** coordinates.\n *\n * Viewport rather than container-relative on purpose. The anchor is rendered\n * into a fixed-position host pinned to the viewport origin (see\n * `renderedMenu`), so the two agree by construction. Computing coordinates\n * against the target element while the anchor's containing block was\n * whichever positioned ancestor happened to enclose `rendered` is what used\n * to open the menu one ancestor-origin away from the pointer.\n */\n const calculatePosition = (\n event?: NativeMouseEvent | NativePointerEvent | MouseEvent | PointerEvent,\n ) => {\n if (event) {\n const { clientX = 0, clientY = 0 } = event;\n\n return { x: clientX, y: clientY };\n }\n\n // No event — a keyboard opening, which has no coordinates. Anchor on the\n // target element's centre instead.\n const container = targetRef.current;\n\n if (!container) return { x: 0, y: 0 };\n\n const rect = container.getBoundingClientRect();\n\n return { x: rect.left + rect.width / 2, y: rect.top + rect.height / 2 };\n };\n\n // 'open' accepts props, trigger props, and optional event for positioning, then opens the menu\n const open = useEvent(\n (\n props: P = {} as P,\n triggerProps?: T,\n event?: NativeMouseEvent | NativePointerEvent | MouseEvent | PointerEvent,\n ) => {\n setupCheck();\n\n // Ensure the target element can serve as a positioning context for the\n // invisible target element. If the consumer hasn't explicitly set\n // `position: relative | absolute | fixed | sticky` we switch it to\n // `relative` so that absolutely-positioned children are laid out correctly.\n if (targetRef.current) {\n const computedStyle = window.getComputedStyle(targetRef.current);\n\n if (computedStyle.position === 'static') {\n targetRef.current.style.position = 'relative';\n }\n }\n\n // Prevent default context menu if it's a context menu event\n if (\n event &&\n 'preventDefault' in event &&\n typeof event.preventDefault === 'function'\n ) {\n event.preventDefault();\n }\n\n const { x, y } = calculatePosition(event);\n setAnchorPosition({ x, y });\n\n // Overrides only — `defaultMenuProps` is merged in on render.\n setRuntimeProps(props);\n setTriggerProps(triggerProps ?? null);\n setIsOpen(true);\n },\n );\n\n const update = useEvent((props: P, triggerProps?: T) => {\n setupCheck();\n\n setRuntimeProps(props);\n setTriggerProps(triggerProps ?? null);\n });\n\n const close = useEvent(() => {\n setIsOpen(false);\n setAnchorPosition(null);\n });\n\n // Context menu event handler\n const onContextMenu = useEvent(\n (event: MouseEvent | PointerEvent | MouseEvent | PointerEvent) => {\n event.preventDefault();\n if (isOpen) {\n const pos = calculatePosition(event);\n setAnchorPosition(pos);\n } else {\n // No overrides: the defaults are merged in on every render, so\n // passing them here would freeze the version this right-click saw.\n open(undefined, undefined, event);\n }\n },\n );\n\n // Bind the onContextMenu event to targetRef\n useEffect(() => {\n const element = targetRef.current;\n if (!element) return;\n\n element.addEventListener('contextmenu', onContextMenu as any);\n\n return () => {\n element.removeEventListener('contextmenu', onContextMenu as any);\n };\n }, [onContextMenu]);\n\n // Render the menu only when it has been opened at least once\n const renderedMenu = useMemo(() => {\n if (!runtimeProps || !anchorPosition) return null;\n\n // Merged here rather than at open time, so the defaults an open menu\n // renders are the CURRENT ones. Runtime props still take precedence.\n const componentProps = defaultMenuProps\n ? { ...defaultMenuProps, ...runtimeProps }\n : runtimeProps;\n\n return (\n <>\n {/*\n Invisible anchor at the click coordinates.\n\n Two things make those coordinates mean what they say:\n\n 1. A `fixed` host, so the containing block's origin is the viewport\n rather than whichever positioned ancestor encloses `rendered` — the\n table root, the tree row — which is what used to open the menu one\n ancestor-origin away from the pointer.\n 2. A portal to `body`, because `position: fixed` is captured by any\n ancestor carrying a transform, filter or `will-change`. A\n virtualized row is usually translated, so the `fixed` host alone\n would still be anchored to the row.\n */}\n {createPortal(\n <ContextMenuHostElement>\n <ContextMenuAnchorElement\n ref={invisibleAnchorRef}\n tokens={{\n '$anchor-x': `${anchorPosition.x}px`,\n '$anchor-y': `${anchorPosition.y}px`,\n }}\n />\n </ContextMenuHostElement>,\n document.body,\n )}\n <MenuTrigger\n offset={0}\n placement={\n (triggerProps as ComponentProps<typeof MenuTrigger>)?.placement ||\n defaultTriggerProps?.placement ||\n 'bottom start'\n }\n {...mergeProps(defaultTriggerProps, triggerProps || undefined)}\n isDummy\n isOpen={isOpen}\n targetRef={invisibleAnchorRef}\n popoverRef={popoverRef}\n onOpenChange={setIsOpen}\n >\n <VisuallyHidden>\n <Pressable>\n <button\n aria-label={t(\n 'contextMenu.openContextMenu',\n 'Open context menu',\n )}\n />\n </Pressable>\n </VisuallyHidden>\n <Component {...componentProps} />\n </MenuTrigger>\n </>\n );\n }, [\n runtimeProps,\n defaultMenuProps,\n triggerProps,\n isOpen,\n defaultTriggerProps,\n anchorPosition,\n invisibleAnchorRef,\n t,\n ]);\n\n return {\n targetRef,\n open,\n update,\n close,\n isOpen,\n get rendered() {\n setupRef.current = true;\n\n return renderedMenu;\n },\n };\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
4
4
  import { useFocus as useFocus$1 } from "../../../utils/react/interactions.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import themes_default from "../../../data/themes.js";
3
3
  import { useAlert } from "./use-alert.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useDeprecationWarning } from "../../../_internal/hooks/use-deprecation-warning.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { CONTAINER_STYLES, Element, filterBaseProps } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { Item as _Item } from "../Item/Item.js";
3
3
  import themes_default from "../../../data/themes.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { CONTAINER_STYLES, filterBaseProps, tasty } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { extractStyles } from "../../utils/styles.js";
3
3
  import { useSlotProps } from "../../utils/react/Slots.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useTimer } from "../../../_internal/hooks/use-timer/use-timer.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.199.0 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.199.2 | Cube Dev Team */
2
2
  import { Tooltip as _Tooltip } from "../../overlays/Tooltip/Tooltip.js";
3
3
  import { TooltipTrigger } from "../../overlays/Tooltip/TooltipTrigger.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -16,6 +16,10 @@ import { useState } from "react";
16
16
  import { jsx, jsxs } from "react/jsx-runtime";
17
17
  import copy from "clipboard-copy";
18
18
  //#region src/components/content/CopySnippet/CopySnippet.tsx
19
+ const COPY_SNIPPET_CODE_STYLES = {
20
+ margin: 0,
21
+ overflow: "visible"
22
+ };
19
23
  const ActionElement = tasty(Action, { styles: {
20
24
  display: "block",
21
25
  cursor: "default",
@@ -131,7 +135,7 @@ function replaceSymbolsToHidden(str) {
131
135
  return HIDDEN_SYMBOL.repeat(str.length);
132
136
  }
133
137
  function CopySnippet(allProps) {
134
- const $ = c(66);
138
+ const $ = c(65);
135
139
  const { t } = useI18n();
136
140
  let actions;
137
141
  let hideText;
@@ -235,127 +239,119 @@ function CopySnippet(allProps) {
235
239
  const mods = t6;
236
240
  const T0 = CopySnippetElement;
237
241
  const t7 = "Grid";
238
- let t8;
239
- if ($[28] === Symbol.for("react.memo_cache_sentinel")) {
240
- t8 = {
241
- margin: 0,
242
- overflow: "visible"
243
- };
244
- $[28] = t8;
245
- } else t8 = $[28];
246
- const t9 = language || "javascript";
247
- let t10;
248
- if ($[29] !== formattedCode || $[30] !== shouldWrap || $[31] !== t9) {
249
- t10 = /* @__PURE__ */ jsx(_PrismCode, {
250
- style: t8,
242
+ const t8 = language || "javascript";
243
+ let t9;
244
+ if ($[28] !== formattedCode || $[29] !== shouldWrap || $[30] !== t8) {
245
+ t9 = /* @__PURE__ */ jsx(_PrismCode, {
246
+ styles: COPY_SNIPPET_CODE_STYLES,
251
247
  code: formattedCode,
252
- language: t9,
248
+ language: t8,
253
249
  isWrapped: shouldWrap
254
250
  });
255
- $[29] = formattedCode;
256
- $[30] = shouldWrap;
251
+ $[28] = formattedCode;
252
+ $[29] = shouldWrap;
253
+ $[30] = t8;
257
254
  $[31] = t9;
258
- $[32] = t10;
259
- } else t10 = $[32];
260
- let t11;
261
- if ($[33] !== mods || $[34] !== t10) {
262
- t11 = /* @__PURE__ */ jsx(StyledBlock, {
255
+ } else t9 = $[31];
256
+ let t10;
257
+ if ($[32] !== mods || $[33] !== t9) {
258
+ t10 = /* @__PURE__ */ jsx(StyledBlock, {
263
259
  mods,
264
- children: t10
260
+ children: t9
265
261
  });
266
- $[33] = mods;
262
+ $[32] = mods;
263
+ $[33] = t9;
267
264
  $[34] = t10;
268
- $[35] = t11;
269
- } else t11 = $[35];
265
+ } else t10 = $[34];
270
266
  const T1 = ButtonContainer;
271
267
  const T2 = CopyButton;
272
- const t12 = t("copySnippet.copyToClipboard", "Copy {{title}} to clipboard", { title });
273
- let t13;
274
- if ($[36] !== T2 || $[37] !== onCopy || $[38] !== t12) {
275
- t13 = /* @__PURE__ */ jsx(T2, {
276
- "aria-label": t12,
268
+ const t11 = t("copySnippet.copyToClipboard", "Copy {{title}} to clipboard", { title });
269
+ let t12;
270
+ if ($[35] !== T2 || $[36] !== onCopy || $[37] !== t11) {
271
+ t12 = /* @__PURE__ */ jsx(T2, {
272
+ "aria-label": t11,
277
273
  onPress: onCopy
278
274
  });
279
- $[36] = T2;
280
- $[37] = onCopy;
275
+ $[35] = T2;
276
+ $[36] = onCopy;
277
+ $[37] = t11;
281
278
  $[38] = t12;
282
- $[39] = t13;
283
- } else t13 = $[39];
284
- let t14;
285
- if ($[40] !== hideText || $[41] !== setShowHidden || $[42] !== showHidden || $[43] !== t) {
286
- t14 = hideText && /* @__PURE__ */ jsx(ShowButton, {
279
+ } else t12 = $[38];
280
+ let t13;
281
+ if ($[39] !== hideText || $[40] !== setShowHidden || $[41] !== showHidden || $[42] !== t) {
282
+ t13 = hideText && /* @__PURE__ */ jsx(ShowButton, {
287
283
  "aria-label": t("copySnippet.showHiddenParts", "Show hidden parts"),
288
284
  icon: showHidden ? /* @__PURE__ */ jsx(EyeInvisibleIcon, {}) : /* @__PURE__ */ jsx(EyeIcon, {}),
289
285
  onPress: () => setShowHidden(!showHidden)
290
286
  });
291
- $[40] = hideText;
292
- $[41] = setShowHidden;
293
- $[42] = showHidden;
294
- $[43] = t;
295
- $[44] = t14;
296
- } else t14 = $[44];
297
- let t15;
298
- if ($[45] !== T1 || $[46] !== actions || $[47] !== mods || $[48] !== t13 || $[49] !== t14) {
299
- t15 = /* @__PURE__ */ jsxs(T1, {
287
+ $[39] = hideText;
288
+ $[40] = setShowHidden;
289
+ $[41] = showHidden;
290
+ $[42] = t;
291
+ $[43] = t13;
292
+ } else t13 = $[43];
293
+ let t14;
294
+ if ($[44] !== T1 || $[45] !== actions || $[46] !== mods || $[47] !== t12 || $[48] !== t13) {
295
+ t14 = /* @__PURE__ */ jsxs(T1, {
300
296
  mods,
301
297
  children: [
298
+ t12,
302
299
  t13,
303
- t14,
304
300
  actions
305
301
  ]
306
302
  });
307
- $[45] = T1;
308
- $[46] = actions;
309
- $[47] = mods;
303
+ $[44] = T1;
304
+ $[45] = actions;
305
+ $[46] = mods;
306
+ $[47] = t12;
310
307
  $[48] = t13;
311
308
  $[49] = t14;
312
- $[50] = t15;
313
- } else t15 = $[50];
314
- let t16;
315
- if ($[51] !== t11 || $[52] !== t15) {
316
- t16 = /* @__PURE__ */ jsxs("div", {
309
+ } else t14 = $[49];
310
+ let t15;
311
+ if ($[50] !== t10 || $[51] !== t14) {
312
+ t15 = /* @__PURE__ */ jsxs("div", {
317
313
  "data-element": t7,
318
- children: [t11, t15]
314
+ children: [t10, t14]
319
315
  });
320
- $[51] = t11;
316
+ $[50] = t10;
317
+ $[51] = t14;
321
318
  $[52] = t15;
322
- $[53] = t16;
323
- } else t16 = $[53];
324
- let t17;
325
- if ($[54] !== T0 || $[55] !== mods || $[56] !== props || $[57] !== t16) {
326
- t17 = /* @__PURE__ */ jsx(T0, {
319
+ } else t15 = $[52];
320
+ let t16;
321
+ if ($[53] !== T0 || $[54] !== mods || $[55] !== props || $[56] !== t15) {
322
+ t16 = /* @__PURE__ */ jsx(T0, {
327
323
  mods,
328
324
  ...props,
329
- children: t16
325
+ children: t15
330
326
  });
331
- $[54] = T0;
332
- $[55] = mods;
333
- $[56] = props;
327
+ $[53] = T0;
328
+ $[54] = mods;
329
+ $[55] = props;
330
+ $[56] = t15;
334
331
  $[57] = t16;
335
- $[58] = t17;
336
- } else t17 = $[58];
337
- const Snippet = t17;
332
+ } else t16 = $[57];
333
+ const Snippet = t16;
338
334
  if (showTooltip) {
335
+ let t17;
336
+ if ($[58] !== Snippet) {
337
+ t17 = /* @__PURE__ */ jsx(ActionElement, { children: Snippet });
338
+ $[58] = Snippet;
339
+ $[59] = t17;
340
+ } else t17 = $[59];
339
341
  let t18;
340
- if ($[59] !== Snippet) {
341
- t18 = /* @__PURE__ */ jsx(ActionElement, { children: Snippet });
342
- $[59] = Snippet;
343
- $[60] = t18;
344
- } else t18 = $[60];
342
+ if ($[60] !== formattedCode) {
343
+ t18 = /* @__PURE__ */ jsx(_Tooltip, { children: formattedCode });
344
+ $[60] = formattedCode;
345
+ $[61] = t18;
346
+ } else t18 = $[61];
345
347
  let t19;
346
- if ($[61] !== formattedCode) {
347
- t19 = /* @__PURE__ */ jsx(_Tooltip, { children: formattedCode });
348
- $[61] = formattedCode;
349
- $[62] = t19;
350
- } else t19 = $[62];
351
- let t20;
352
- if ($[63] !== t18 || $[64] !== t19) {
353
- t20 = /* @__PURE__ */ jsxs(TooltipTrigger, { children: [t18, t19] });
348
+ if ($[62] !== t17 || $[63] !== t18) {
349
+ t19 = /* @__PURE__ */ jsxs(TooltipTrigger, { children: [t17, t18] });
350
+ $[62] = t17;
354
351
  $[63] = t18;
355
352
  $[64] = t19;
356
- $[65] = t20;
357
- } else t20 = $[65];
358
- return t20;
353
+ } else t19 = $[64];
354
+ return t19;
359
355
  }
360
356
  return Snippet;
361
357
  }