@cube-dev/ui-kit 0.0.0-canary-759f43d → 0.0.0-canary-77836fa

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 (617) hide show
  1. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  2. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  3. package/dist/_internal/hooks/use-event.js +1 -1
  4. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  5. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  6. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  7. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  8. package/dist/_internal/hooks/use-warn.js +1 -1
  9. package/dist/components/Block.js +1 -1
  10. package/dist/components/CollectionItem.js +1 -1
  11. package/dist/components/GlobalStyles.js +1 -1
  12. package/dist/components/GridProvider.js +1 -1
  13. package/dist/components/HiddenInput.js +1 -1
  14. package/dist/components/Root.js +1 -1
  15. package/dist/components/actions/Action/Action.js +1 -1
  16. package/dist/components/actions/Banner/Banner.js +1 -1
  17. package/dist/components/actions/Button/Button.js +1 -1
  18. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  19. package/dist/components/actions/ButtonSplit/ButtonSplit.d.ts +9 -4
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  21. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  22. package/dist/components/actions/ButtonSplit/context.js +1 -1
  23. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  24. package/dist/components/actions/CommandMenu/styled.js +1 -1
  25. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  26. package/dist/components/actions/ItemActionContext.js +1 -1
  27. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  28. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  29. package/dist/components/actions/Link/Link.js +1 -1
  30. package/dist/components/actions/Menu/Menu.js +1 -1
  31. package/dist/components/actions/Menu/MenuCollectionItem.js +1 -1
  32. package/dist/components/actions/Menu/MenuItem.js +1 -1
  33. package/dist/components/actions/Menu/MenuSection.js +1 -1
  34. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  35. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  36. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  37. package/dist/components/actions/Menu/context.js +1 -1
  38. package/dist/components/actions/Menu/styled.js +1 -1
  39. package/dist/components/actions/actions-run.js +1 -1
  40. package/dist/components/actions/index.js +1 -1
  41. package/dist/components/actions/use-action.js +1 -1
  42. package/dist/components/actions/use-anchored-menu.js +1 -1
  43. package/dist/components/actions/use-context-menu.js +1 -1
  44. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  45. package/dist/components/content/Alert/Alert.js +1 -1
  46. package/dist/components/content/Alert/use-alert.js +1 -1
  47. package/dist/components/content/Avatar/Avatar.js +1 -1
  48. package/dist/components/content/Badge/Badge.js +1 -1
  49. package/dist/components/content/Card/Card.js +1 -1
  50. package/dist/components/content/Content.js +1 -1
  51. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  52. package/dist/components/content/CopySnippet/CopySnippet.d.ts +28 -28
  53. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  54. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  55. package/dist/components/content/Divider.js +1 -1
  56. package/dist/components/content/Footer.js +1 -1
  57. package/dist/components/content/Header.js +1 -1
  58. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  59. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  60. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  61. package/dist/components/content/Item/Item.js +1 -1
  62. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  63. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  64. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  65. package/dist/components/content/Layout/GridLayout.js +1 -1
  66. package/dist/components/content/Layout/Layout.js +2 -1
  67. package/dist/components/content/Layout/Layout.js.map +1 -1
  68. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  69. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  70. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  71. package/dist/components/content/Layout/LayoutContent.js +1 -1
  72. package/dist/components/content/Layout/LayoutContext.js +1 -1
  73. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  74. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  75. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  76. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  77. package/dist/components/content/Layout/LayoutPane.js +1 -1
  78. package/dist/components/content/Layout/LayoutPanel.d.ts +4 -2
  79. package/dist/components/content/Layout/LayoutPanel.js +73 -2
  80. package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
  81. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  82. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  83. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  84. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  85. package/dist/components/content/Layout/index.js +1 -1
  86. package/dist/components/content/Layout/utils.js +1 -1
  87. package/dist/components/content/Paragraph.js +1 -1
  88. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  89. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  90. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  91. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  92. package/dist/components/content/Result/Result.js +1 -1
  93. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  94. package/dist/components/content/Tag/Tag.js +1 -1
  95. package/dist/components/content/Text.d.ts +28 -28
  96. package/dist/components/content/Text.js +1 -1
  97. package/dist/components/content/TextItem/TextItem.js +1 -1
  98. package/dist/components/content/Title.js +1 -1
  99. package/dist/components/content/Tree/Tree.js +1 -1
  100. package/dist/components/content/Tree/TreeNode.js +2 -1
  101. package/dist/components/content/Tree/TreeNode.js.map +1 -1
  102. package/dist/components/content/Tree/styled.js +1 -1
  103. package/dist/components/content/Tree/tree-index.js +1 -1
  104. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  105. package/dist/components/content/Tree/use-load-data.js +1 -1
  106. package/dist/components/content/highlightText.js +1 -1
  107. package/dist/components/content/use-auto-tooltip.js +1 -1
  108. package/dist/components/data/DataTable/DataTable.js +1 -1
  109. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  110. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  111. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  112. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  113. package/dist/components/data/ItemTable/ItemTableToolbar.js +2 -1
  114. package/dist/components/data/ItemTable/ItemTableToolbar.js.map +1 -1
  115. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  116. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  117. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  118. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  119. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  120. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  121. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  122. package/dist/components/data/TableBase/RowCollection.js +1 -1
  123. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  124. package/dist/components/data/TableBase/TableRow.js +1 -1
  125. package/dist/components/data/TableBase/TableView.js +3 -1
  126. package/dist/components/data/TableBase/TableView.js.map +1 -1
  127. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  128. package/dist/components/data/TableBase/column-header.js +1 -1
  129. package/dist/components/data/TableBase/column-menu.js +1 -1
  130. package/dist/components/data/TableBase/column-styles.js +1 -1
  131. package/dist/components/data/TableBase/column-tint.js +1 -1
  132. package/dist/components/data/TableBase/row-menu.js +1 -1
  133. package/dist/components/data/TableBase/styled.js +1 -1
  134. package/dist/components/data/TableBase/table-tree.js +1 -1
  135. package/dist/components/data/TableBase/types.js +1 -1
  136. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  137. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  138. package/dist/components/data/TableBase/use-column-order.js +1 -1
  139. package/dist/components/data/TableBase/use-column-window.js +1 -1
  140. package/dist/components/data/TableBase/use-container-width.js +1 -1
  141. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  142. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  143. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  144. package/dist/components/data/TableBase/use-table-search.js +1 -1
  145. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  146. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  147. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  148. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  149. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  150. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  151. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  152. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  153. package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
  154. package/dist/components/fields/Checkbox/context.js +1 -1
  155. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  156. package/dist/components/fields/ColorPicker/ColorPicker.js +3 -1
  157. package/dist/components/fields/ColorPicker/ColorPicker.js.map +1 -1
  158. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  159. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +2 -1
  160. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
  161. package/dist/components/fields/ComboBox/ComboBox.d.ts +1 -1
  162. package/dist/components/fields/ComboBox/ComboBox.js +13 -13
  163. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  164. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  165. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  166. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  167. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  168. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  169. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  170. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  171. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  172. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  173. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  174. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  175. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  176. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  177. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  178. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  179. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  180. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  181. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  182. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  183. package/dist/components/fields/DatePicker/period.js +1 -1
  184. package/dist/components/fields/DatePicker/props.js +1 -1
  185. package/dist/components/fields/DatePicker/utils.js +1 -1
  186. package/dist/components/fields/FileInput/FileInput.js +1 -1
  187. package/dist/components/fields/FilterListBox/FilterListBox.js +2 -1
  188. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  189. package/dist/components/fields/FilterPicker/FilterPicker.js +15 -6
  190. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  191. package/dist/components/fields/Input/Input.js +1 -1
  192. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  193. package/dist/components/fields/ListBox/ListBox.js +7 -5
  194. package/dist/components/fields/ListBox/ListBox.js.map +1 -1
  195. package/dist/components/fields/ListBox/optionId.js +1 -1
  196. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +148 -140
  197. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  198. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  199. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  200. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  201. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  202. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  203. package/dist/components/fields/Picker/Picker.js +15 -6
  204. package/dist/components/fields/Picker/Picker.js.map +1 -1
  205. package/dist/components/fields/RadioGroup/Radio.d.ts +28 -28
  206. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  207. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  208. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  209. package/dist/components/fields/RadioGroup/context.js +1 -1
  210. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -6
  211. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  212. package/dist/components/fields/SearchInput/SearchInput.js +1 -6
  213. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  214. package/dist/components/fields/Select/Select.js +1 -1
  215. package/dist/components/fields/Slider/Gradation.js +1 -1
  216. package/dist/components/fields/Slider/HueSlider.js +1 -1
  217. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  218. package/dist/components/fields/Slider/Slider.js +1 -1
  219. package/dist/components/fields/Slider/SliderBase.js +1 -1
  220. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  221. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  222. package/dist/components/fields/Slider/elements.js +1 -1
  223. package/dist/components/fields/Slider/index.js +1 -1
  224. package/dist/components/fields/Switch/Switch.js +1 -1
  225. package/dist/components/fields/TagInput/TagInput.js +2 -2
  226. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  227. package/dist/components/fields/TagInput/TagList.js +1 -1
  228. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  229. package/dist/components/fields/TagInput/useTagError.js +1 -1
  230. package/dist/components/fields/TextArea/TextArea.js +1 -1
  231. package/dist/components/fields/TextInput/TextInput.js +1 -1
  232. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  233. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  234. package/dist/components/fields/TextInputMapper/TextInputMapper.js +19 -16
  235. package/dist/components/fields/TextInputMapper/TextInputMapper.js.map +1 -1
  236. package/dist/components/fields/TriggerActions.js +1 -1
  237. package/dist/components/fields/color/ColorPanel.js +3 -1
  238. package/dist/components/fields/color/ColorPanel.js.map +1 -1
  239. package/dist/components/fields/color/channels.js +1 -1
  240. package/dist/components/fields/color/color.js +1 -1
  241. package/dist/components/fields/color/context.js +1 -1
  242. package/dist/components/form/FieldWrapper/FieldWrapper.d.ts +10 -8
  243. package/dist/components/form/FieldWrapper/FieldWrapper.js +214 -159
  244. package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
  245. package/dist/components/form/FieldWrapper/field-description.js +3 -3
  246. package/dist/components/form/FieldWrapper/field-description.js.map +1 -1
  247. package/dist/components/form/FieldWrapper/types.d.ts +4 -3
  248. package/dist/components/form/Form/Field.js +1 -1
  249. package/dist/components/form/Form/Form.js +1 -1
  250. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  251. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  252. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  253. package/dist/components/form/Form/SubmitError.js +1 -1
  254. package/dist/components/form/Form/backend.js +1 -1
  255. package/dist/components/form/Form/index.js +1 -1
  256. package/dist/components/form/Form/modern/actions.js +1 -1
  257. package/dist/components/form/Form/modern/context.js +1 -1
  258. package/dist/components/form/Form/modern/controller.js +1 -1
  259. package/dist/components/form/Form/modern/field-binding.js +1 -1
  260. package/dist/components/form/Form/modern/field.js +1 -1
  261. package/dist/components/form/Form/modern/react.js +1 -1
  262. package/dist/components/form/Form/modern/store.js +1 -1
  263. package/dist/components/form/Form/modern/validation.js +1 -1
  264. package/dist/components/form/Form/modern/values.js +1 -1
  265. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  266. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  267. package/dist/components/form/Form/use-field/use-field-props.js +21 -33
  268. package/dist/components/form/Form/use-field/use-field-props.js.map +1 -1
  269. package/dist/components/form/Form/use-field/use-field.js +1 -1
  270. package/dist/components/form/Form/use-form.js +1 -1
  271. package/dist/components/form/Form/validation.js +1 -1
  272. package/dist/components/form/Label.js +1 -1
  273. package/dist/components/form/field-chrome.js +4 -34
  274. package/dist/components/form/field-chrome.js.map +1 -1
  275. package/dist/components/form/legacy-tooltip.js +1 -1
  276. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  277. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  278. package/dist/components/form/validation/use-validation-props.js +1 -1
  279. package/dist/components/form/wrapper.d.ts +6 -17
  280. package/dist/components/form/wrapper.js +6 -14
  281. package/dist/components/form/wrapper.js.map +1 -1
  282. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  283. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  284. package/dist/components/layout/Flex.js +1 -1
  285. package/dist/components/layout/Flow.js +1 -1
  286. package/dist/components/layout/Grid.js +1 -1
  287. package/dist/components/layout/Panel.js +1 -1
  288. package/dist/components/layout/Prefix.js +1 -1
  289. package/dist/components/layout/ResizablePanel.js +1 -1
  290. package/dist/components/layout/Space.js +1 -1
  291. package/dist/components/layout/Suffix.js +1 -1
  292. package/dist/components/navigation/Pagination/Pagination.js +3 -1
  293. package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
  294. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  295. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  296. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  297. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  298. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  299. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  300. package/dist/components/navigation/Tabs/TabPicker.js +2 -1
  301. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  302. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  303. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  304. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  305. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  306. package/dist/components/navigation/Tabs/styled.js +1 -1
  307. package/dist/components/navigation/Tabs/types.js +1 -1
  308. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  309. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  310. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  311. package/dist/components/other/Calendar/Calendar.js +1 -1
  312. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  313. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  314. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  315. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  316. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  317. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  318. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  319. package/dist/components/other/Calendar/styled.js +1 -1
  320. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  321. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  322. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  323. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  324. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  325. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  326. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  327. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  328. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  329. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  330. package/dist/components/overlays/Dialog/context.js +1 -1
  331. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  332. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  333. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  334. package/dist/components/overlays/Modal/Modal.js +1 -1
  335. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  336. package/dist/components/overlays/Modal/Overlay.js +7 -2
  337. package/dist/components/overlays/Modal/Overlay.js.map +1 -1
  338. package/dist/components/overlays/Modal/Popover.js +31 -29
  339. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  340. package/dist/components/overlays/Modal/Tray.js +2 -1
  341. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  342. package/dist/components/overlays/Modal/Underlay.js +1 -1
  343. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  344. package/dist/components/overlays/Notifications/Notification.js +1 -1
  345. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  346. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  347. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  348. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  349. package/dist/components/overlays/Notifications/OverlayContainer.js +18 -32
  350. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  351. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  352. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  353. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  354. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  355. package/dist/components/overlays/Notifications/index.js +1 -1
  356. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  357. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  358. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  359. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  360. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  361. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  362. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  363. package/dist/components/overlays/Toast/index.js +1 -1
  364. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  365. package/dist/components/overlays/Toast/useToast.js +1 -1
  366. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  367. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  368. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  369. package/dist/components/overlays/Tooltip/context.js +1 -1
  370. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  371. package/dist/components/portal/Portal.js +1 -1
  372. package/dist/components/portal/PortalProvider.js +1 -1
  373. package/dist/components/portal/usePortal.js +1 -1
  374. package/dist/components/shared/DraggableCollection.js +1 -1
  375. package/dist/components/shared/InvalidIcon.js +1 -1
  376. package/dist/components/shared/ValidIcon.js +1 -1
  377. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  378. package/dist/components/status/Spin/Cube.js +1 -1
  379. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  380. package/dist/components/status/Spin/Spin.js +1 -1
  381. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  382. package/dist/data/item-themes.js +1 -1
  383. package/dist/data/themes.js +1 -1
  384. package/dist/eslint-plugin/defaults.generated.js +1 -1
  385. package/dist/eslint-plugin/index.js +1 -1
  386. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  387. package/dist/i18n/I18nProvider.js +1 -1
  388. package/dist/i18n/createFormatter.js +1 -1
  389. package/dist/i18n/index.js +1 -1
  390. package/dist/i18n/instance.js +1 -1
  391. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  392. package/dist/i18n/locales/en-US/uikit.js +1 -1
  393. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  394. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  395. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  396. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  397. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  398. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  399. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  400. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  401. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  402. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  403. package/dist/i18n/locales.js +1 -1
  404. package/dist/i18n/namespace.js +1 -1
  405. package/dist/i18n/useFormatter.js +1 -1
  406. package/dist/i18n/useI18n.js +1 -1
  407. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  408. package/dist/icons/AdjustmentsIcon.js +1 -1
  409. package/dist/icons/AiIcon.js +1 -1
  410. package/dist/icons/AreaChartIcon.js +1 -1
  411. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  412. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  413. package/dist/icons/BackwardIcon.js +1 -1
  414. package/dist/icons/BarChartIcon.js +1 -1
  415. package/dist/icons/BellFilledIcon.js +1 -1
  416. package/dist/icons/BellIcon.js +1 -1
  417. package/dist/icons/BooleanIcon.js +1 -1
  418. package/dist/icons/CalendarEditIcon.js +1 -1
  419. package/dist/icons/CalendarIcon.js +1 -1
  420. package/dist/icons/CaretDownIcon.js +1 -1
  421. package/dist/icons/CaretUpIcon.js +1 -1
  422. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  423. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  424. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  425. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  426. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  427. package/dist/icons/ChartBarLineIcon.js +1 -1
  428. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  429. package/dist/icons/ChartBarStackedIcon.js +1 -1
  430. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  431. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  432. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  433. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  434. package/dist/icons/ChartBubbleIcon.js +1 -1
  435. package/dist/icons/ChartDonut2Icon.js +1 -1
  436. package/dist/icons/ChartFunnelIcon.js +1 -1
  437. package/dist/icons/ChartHeatmapIcon.js +1 -1
  438. package/dist/icons/ChartKPIIcon.js +1 -1
  439. package/dist/icons/ChartPie2Icon.js +1 -1
  440. package/dist/icons/ChartScatterIcon.js +1 -1
  441. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  442. package/dist/icons/CheckCircleIcon.js +1 -1
  443. package/dist/icons/CheckIcon.js +1 -1
  444. package/dist/icons/CircleFilledIcon.js +1 -1
  445. package/dist/icons/ClearIcon.js +1 -1
  446. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  447. package/dist/icons/CloseCircleIcon.js +1 -1
  448. package/dist/icons/CloseIcon.js +1 -1
  449. package/dist/icons/CodeIcon.js +1 -1
  450. package/dist/icons/ColumnTotalIcon.js +1 -1
  451. package/dist/icons/CopyIcon.js +1 -1
  452. package/dist/icons/CountIcon.js +1 -1
  453. package/dist/icons/CubeIcon.js +1 -1
  454. package/dist/icons/CubePauseIcon.js +1 -1
  455. package/dist/icons/CubePlayIcon.js +1 -1
  456. package/dist/icons/CurrencyDollarIcon.js +1 -1
  457. package/dist/icons/DangerIcon.js +1 -1
  458. package/dist/icons/DashboardIcon.js +1 -1
  459. package/dist/icons/DatabaseIcon.js +1 -1
  460. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  461. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  462. package/dist/icons/DirectionIcon.js +1 -1
  463. package/dist/icons/DonutIcon.js +1 -1
  464. package/dist/icons/DownIcon.js +1 -1
  465. package/dist/icons/EditIcon.js +1 -1
  466. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  467. package/dist/icons/ExclamationCircleIcon.js +1 -1
  468. package/dist/icons/ExclamationIcon.js +1 -1
  469. package/dist/icons/EyeIcon.js +1 -1
  470. package/dist/icons/EyeInvisibleIcon.js +1 -1
  471. package/dist/icons/FilterIcon.js +1 -1
  472. package/dist/icons/FolderFilledIcon.js +1 -1
  473. package/dist/icons/FolderIcon.js +1 -1
  474. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  475. package/dist/icons/FolderOpenIcon.js +1 -1
  476. package/dist/icons/ForwardIcon.js +1 -1
  477. package/dist/icons/GripVerticalIcon.js +1 -1
  478. package/dist/icons/HierarchyIcon.js +1 -1
  479. package/dist/icons/HierarchyOpenIcon.js +1 -1
  480. package/dist/icons/Icon.js +1 -1
  481. package/dist/icons/InfoCircleIcon.js +1 -1
  482. package/dist/icons/InfoIcon.js +1 -1
  483. package/dist/icons/KeyIcon.js +1 -1
  484. package/dist/icons/LeftIcon.js +1 -1
  485. package/dist/icons/LineChartIcon.js +1 -1
  486. package/dist/icons/LoadingIcon.js +1 -1
  487. package/dist/icons/LockFilledIcon.js +1 -1
  488. package/dist/icons/LockIcon.js +1 -1
  489. package/dist/icons/MoreIcon.js +1 -1
  490. package/dist/icons/NotAllowedIcon.js +1 -1
  491. package/dist/icons/Number123Icon.js +1 -1
  492. package/dist/icons/NumberIcon.js +1 -1
  493. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  494. package/dist/icons/PauseCircleIcon.js +1 -1
  495. package/dist/icons/PauseIcon.js +1 -1
  496. package/dist/icons/PercentageIcon.js +1 -1
  497. package/dist/icons/PieChartIcon.js +1 -1
  498. package/dist/icons/PipetteIcon.js +1 -1
  499. package/dist/icons/PlayCircleIcon.js +1 -1
  500. package/dist/icons/PlayIcon.js +1 -1
  501. package/dist/icons/PlusIcon.js +1 -1
  502. package/dist/icons/ProgressBarIcon.js +1 -1
  503. package/dist/icons/ReloadIcon.js +1 -1
  504. package/dist/icons/ReportIcon.js +1 -1
  505. package/dist/icons/ReturnIcon.js +1 -1
  506. package/dist/icons/RightIcon.js +1 -1
  507. package/dist/icons/RowTotalsIcon.js +1 -1
  508. package/dist/icons/SchemeIcon.js +1 -1
  509. package/dist/icons/SearchIcon.js +1 -1
  510. package/dist/icons/SemanticQueryIcon.js +1 -1
  511. package/dist/icons/SettingsIcon.js +1 -1
  512. package/dist/icons/ShieldFilledIcon.js +1 -1
  513. package/dist/icons/ShieldIcon.js +1 -1
  514. package/dist/icons/SlashIcon.js +1 -1
  515. package/dist/icons/SparklesIcon.js +1 -1
  516. package/dist/icons/SqlIcon.js +1 -1
  517. package/dist/icons/StatsIcon.js +1 -1
  518. package/dist/icons/StopIcon.js +1 -1
  519. package/dist/icons/StringIcon.js +1 -1
  520. package/dist/icons/SubtotalsIcon.js +1 -1
  521. package/dist/icons/SwitchIcon.js +1 -1
  522. package/dist/icons/TableIcon.js +1 -1
  523. package/dist/icons/ThumbsDownIcon.js +1 -1
  524. package/dist/icons/ThumbsUpIcon.js +1 -1
  525. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  526. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  527. package/dist/icons/ThunderboltIcon.js +1 -1
  528. package/dist/icons/TimeIcon.js +1 -1
  529. package/dist/icons/TrashIcon.js +1 -1
  530. package/dist/icons/UnlockIcon.js +1 -1
  531. package/dist/icons/UpIcon.js +1 -1
  532. package/dist/icons/UserGroupIcon.js +1 -1
  533. package/dist/icons/UserIcon.js +1 -1
  534. package/dist/icons/UserLockIcon.js +1 -1
  535. package/dist/icons/ViewIcon.js +1 -1
  536. package/dist/icons/WarningFilledIcon.js +1 -1
  537. package/dist/icons/WarningIcon.js +1 -1
  538. package/dist/icons/wrap-icon.js +1 -1
  539. package/dist/index.js +1 -1
  540. package/dist/probe/canonicalize.js +1 -1
  541. package/dist/probe/css.js +1 -1
  542. package/dist/probe/index.js +1 -1
  543. package/dist/provider.js +1 -1
  544. package/dist/providers/TrackingProvider.js +1 -1
  545. package/dist/providers/navigation-url.js +1 -1
  546. package/dist/providers/navigationAdapter.default.js +1 -1
  547. package/dist/providers/use-navigation.js +1 -1
  548. package/dist/shared/form.d.ts +11 -12
  549. package/dist/tokens/all-tokens.js +1 -1
  550. package/dist/tokens/base.js +1 -1
  551. package/dist/tokens/color-seed.js +1 -1
  552. package/dist/tokens/color-theme.js +1 -1
  553. package/dist/tokens/colors.js +1 -1
  554. package/dist/tokens/layout.js +1 -1
  555. package/dist/tokens/lazy-styles.js +1 -1
  556. package/dist/tokens/legacy-color.js +1 -1
  557. package/dist/tokens/palette-config.js +1 -1
  558. package/dist/tokens/palette.js +1 -1
  559. package/dist/tokens/resolve.js +1 -1
  560. package/dist/tokens/shadows.js +1 -1
  561. package/dist/tokens/sizes.js +1 -1
  562. package/dist/tokens/spacing.js +1 -1
  563. package/dist/tokens/typography.js +1 -1
  564. package/dist/utils/ResizeSensor.js +1 -1
  565. package/dist/utils/colors.js +1 -1
  566. package/dist/utils/dotize.js +1 -1
  567. package/dist/utils/is-dev-env.js +1 -1
  568. package/dist/utils/modules.js +1 -1
  569. package/dist/utils/promise.js +1 -1
  570. package/dist/utils/raf.js +1 -1
  571. package/dist/utils/random.js +1 -1
  572. package/dist/utils/range.js +1 -1
  573. package/dist/utils/react/RenderCache.js +1 -1
  574. package/dist/utils/react/Slots.js +1 -1
  575. package/dist/utils/react/chain.js +1 -1
  576. package/dist/utils/react/disabledProps.js +1 -1
  577. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  578. package/dist/utils/react/index.js +1 -1
  579. package/dist/utils/react/interactions.js +1 -1
  580. package/dist/utils/react/isTextOnly.js +1 -1
  581. package/dist/utils/react/mapProps.js +1 -1
  582. package/dist/utils/react/mergeProps.js +1 -1
  583. package/dist/utils/react/nullableValue.js +1 -1
  584. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  585. package/dist/utils/react/programmaticFocus.js +1 -1
  586. package/dist/utils/react/resolveIcon.js +1 -1
  587. package/dist/utils/react/sharedStore.js +1 -1
  588. package/dist/utils/react/useBufferedValue.js +1 -1
  589. package/dist/utils/react/useCombinedRefs.js +1 -1
  590. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  591. package/dist/utils/react/useEventBus.js +1 -1
  592. package/dist/utils/react/useId.js +1 -1
  593. package/dist/utils/react/useIsDarwin.js +1 -1
  594. package/dist/utils/react/useKeySymbols.js +1 -1
  595. package/dist/utils/react/useLayoutEffect.js +1 -1
  596. package/dist/utils/react/useLocalStorage.js +1 -1
  597. package/dist/utils/react/useMergeStyles.js +1 -1
  598. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  599. package/dist/utils/react/usePopoverSync.js +1 -1
  600. package/dist/utils/react/useQaProps.js +1 -1
  601. package/dist/utils/react/useScheme.js +1 -1
  602. package/dist/utils/react/useViewportSize.js +1 -1
  603. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  604. package/dist/utils/selection.js +1 -1
  605. package/dist/utils/styles.js +1 -1
  606. package/dist/utils/tree.js +1 -1
  607. package/dist/utils/warnings.js +1 -1
  608. package/dist/version.js +2 -2
  609. package/docs/ComplexLayout.md +1 -1
  610. package/docs/CreateComponent.md +2 -0
  611. package/docs/FieldProperties.md +31 -6
  612. package/docs/Usage.md +2 -0
  613. package/docs/components/actions/ButtonSplit.md +27 -1
  614. package/docs/components/content/Layout.md +8 -4
  615. package/docs/components/fields/ComboBox.md +6 -2
  616. package/docs/components/fields/TagInput.md +8 -1
  617. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { extractStyles } from "../../../utils/styles.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { useI18n } from "../../../i18n/useI18n.js";
@@ -146,6 +146,7 @@ function Pagination(props, ref) {
146
146
  }) : null;
147
147
  const renderPageControl = function renderPageControl() {
148
148
  if (selectEntries) return /* @__PURE__ */ jsx(__Select, {
149
+ isBare: true,
149
150
  qa: "PaginationPageSelect",
150
151
  size,
151
152
  isDisabled,
@@ -215,6 +216,7 @@ function Pagination(props, ref) {
215
216
  let t12;
216
217
  if ($[13] !== isDisabled || $[14] !== onPageSizeChange || $[15] !== onPageSizeSelectionChange || $[16] !== pageSize || $[17] !== pageSizeOptions || $[18] !== pageSizeSelectStyles || $[19] !== size || $[20] !== t) {
217
218
  t12 = pageSizeOptions && onPageSizeChange ? /* @__PURE__ */ jsx(__Select, {
219
+ isBare: true,
218
220
  qa: "PaginationPageSizeSelect",
219
221
  size,
220
222
  isDisabled,
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.js","names":["useControlledState","filterBaseProps","OUTER_STYLES","tasty","forwardRef","useEvent","useFormatter","useI18n","BackwardIcon","ForwardIcon","LeftIcon","RightIcon","extractStyles","Button","Select","clampPage","getPageInfo","getPaginationRange","ForwardedRef","ReactElement","CubePaginationProps","CubeTablePageInfo","PaginationElement","qa","as","styles","display","flow","gap","placeItems","placeContent","Summary","preset","color","whiteSpace","Controls","Gap","width","height","userSelect","Pages","styleProps","NavButton","type","border","PageButton","formatRange","info","start","page","pageSize","end","total","Math","min","Pagination","props","ref","$","_c","pageProp","defaultPage","onPageChange","totalPages","totalPagesProp","pageSizeProp","defaultPageSize","pageSizeOptions","onPageSizeChange","t0","siblingCount","t1","boundaryCount","t2","size","t3","isDisabled","hasNextPage","isCompact","t4","summary","t5","labelFormatter","ariaLabel","pageSizeSelectStyles","mods","rest","undefined","t","formatNumber","setPageSize","v","setPage","isCountable","Number","MAX_SAFE_INTEGER","from","to","goTo","next","clamped","max","t6","value","onPageSizeSelectionChange","t7","value_0","onPageSelectionChange","pageItems","selectEntries","Array","length","_temp","isFirst","isLast","t8","summaryNode","renderPageControl","String","map","entry","entryInfo","label","entry_0","index","showEdgeButtons","t9","eventProps","t10","t11","t12","option","label_0","t13","t14","Symbol","for","t15","t16","t17","t18","t19","t20","t21","t22","_","i","_Pagination","displayName"],"sources":["../../../../src/components/navigation/Pagination/Pagination.tsx"],"sourcesContent":["import { useControlledState } from '@react-stately/utils';\nimport { filterBaseProps, OUTER_STYLES, tasty } from '@tenphi/tasty';\nimport { forwardRef } from 'react';\n\nimport { useEvent } from '../../../_internal/hooks';\nimport { useFormatter, useI18n } from '../../../i18n';\nimport { BackwardIcon } from '../../../icons/BackwardIcon';\nimport { ForwardIcon } from '../../../icons/ForwardIcon';\nimport { LeftIcon } from '../../../icons/LeftIcon';\nimport { RightIcon } from '../../../icons/RightIcon';\nimport { extractStyles } from '../../../utils/styles';\nimport { Button } from '../../actions';\nimport { Select } from '../../fields/Select';\n\nimport { clampPage, getPageInfo, getPaginationRange } from './use-pagination';\n\nimport type { ForwardedRef, ReactElement } from 'react';\nimport type { CubePaginationProps, CubeTablePageInfo } from './types';\n\nconst PaginationElement = tasty({\n qa: 'Pagination',\n as: 'nav',\n styles: {\n display: 'flex',\n flow: 'row',\n gap: '1x',\n placeItems: 'center',\n placeContent: 'start',\n\n Summary: {\n // Follows the control's size rather than being fixed, so the summary\n // matches whatever the buttons beside it are.\n preset: { '': 't3', 'size=xsmall': 't4' },\n color: '#dark-03',\n whiteSpace: 'nowrap',\n },\n\n Controls: {\n display: 'flex',\n flow: 'row',\n gap: '.5x',\n placeItems: 'center',\n },\n\n Gap: {\n display: 'grid',\n placeItems: 'center',\n width: 'min $gap-size',\n height: '$gap-size',\n preset: 't3',\n color: '#dark-04',\n userSelect: 'none',\n },\n\n /**\n * The page numbers sit tighter than the nav buttons around them: they read\n * as one run of pages, not as separate controls, and a hairline is enough\n * to keep the current page's outline off its neighbours.\n */\n Pages: {\n display: 'flex',\n flow: 'row',\n gap: '1bw',\n placeItems: 'center',\n },\n\n '$gap-size': {\n '': '$size-sm',\n 'size=xsmall': '$size-xs',\n 'size=medium': '$size-md',\n },\n },\n styleProps: OUTER_STYLES,\n});\n\nconst NavButton = tasty(Button, {\n type: 'clear',\n styles: { border: true },\n});\n\n// Page buttons are borderless so the current page — which renders as `outline`\n// and therefore draws its own border — is the only bordered one in the run.\nconst PageButton = tasty(Button, {\n type: 'clear',\n});\n\nfunction formatRange(info: CubeTablePageInfo): string {\n const start = (info.page - 1) * info.pageSize + 1;\n const end =\n info.total > 0\n ? Math.min(info.page * info.pageSize, info.total)\n : info.page * info.pageSize;\n\n return `${start}–${end}`;\n}\n\nfunction Pagination(\n props: CubePaginationProps,\n ref: ForwardedRef<HTMLElement>,\n): ReactElement {\n const {\n page: pageProp,\n defaultPage,\n onPageChange,\n totalPages: totalPagesProp,\n total,\n pageSize: pageSizeProp,\n defaultPageSize,\n pageSizeOptions,\n onPageSizeChange,\n type = 'numbers',\n siblingCount = 1,\n boundaryCount = 1,\n size = 'small',\n isDisabled,\n hasNextPage,\n isCompact = false,\n summary = false,\n labelFormatter,\n ariaLabel,\n pageSizeSelectStyles,\n qa,\n mods,\n ...rest\n } = props;\n\n const { t } = useI18n();\n const { formatNumber } = useFormatter();\n\n const [pageSize, setPageSize] = useControlledState<number>(\n pageSizeProp as number,\n defaultPageSize ?? 50,\n onPageSizeChange as (v: number) => void,\n );\n const [page, setPage] = useControlledState<number>(\n pageProp as number,\n defaultPage ?? 1,\n onPageChange as (v: number) => void,\n );\n\n // Unknown total: prev/next only, with `hasNextPage` driving the next button.\n // The page must NOT be clamped in that mode — there is nothing to clamp to.\n const isCountable = totalPagesProp != null || total != null;\n\n const info: CubeTablePageInfo = isCountable\n ? getPageInfo({\n page,\n pageSize,\n total: total ?? 0,\n totalPages: totalPagesProp,\n })\n : {\n page: clampPage(page, Number.MAX_SAFE_INTEGER),\n pageSize,\n totalPages: 0,\n total: 0,\n from: 0,\n to: 0,\n };\n\n const { totalPages } = info;\n\n const goTo = useEvent((next: number) => {\n const clamped = isCountable\n ? clampPage(next, totalPages)\n : Math.max(next, 1);\n\n if (clamped !== info.page) setPage(clamped);\n });\n\n const onPageSizeSelectionChange = useEvent((value: any) => {\n setPageSize(Number(value));\n setPage(1);\n });\n\n const onPageSelectionChange = useEvent((value: any) => {\n goTo(Number(value));\n });\n\n const pageItems =\n type === 'numbers' && isCountable\n ? getPaginationRange({\n page: info.page,\n totalPages,\n siblingCount,\n boundaryCount,\n })\n : [];\n\n // `type=\"select\"` materializes one entry per page, so it is only safe for\n // small page counts. Above the cap we fall back to `compact`, which reads the\n // same but renders a single label.\n const selectEntries =\n type === 'select' && isCountable && totalPages <= 200\n ? Array.from({ length: totalPages }, (_, i) => i + 1)\n : null;\n\n const isFirst = info.page <= 1;\n const isLast = isCountable ? info.page >= totalPages : !hasNextPage;\n\n const styles = extractStyles(props, OUTER_STYLES);\n\n const summaryNode =\n summary === false\n ? null\n : typeof summary === 'function'\n ? summary(info)\n : info.total > 0\n ? // Numbers are formatted here rather than left to i18next, which\n // interpolates them raw (\"1204\", not \"1,204\").\n t('pagination.summary', '{{from}}–{{to}} of {{total}}', {\n from: formatNumber(info.from),\n to: formatNumber(info.to),\n total: formatNumber(info.total),\n })\n : null;\n\n function renderPageControl() {\n if (selectEntries) {\n return (\n <Select\n qa=\"PaginationPageSelect\"\n size={size}\n isDisabled={isDisabled}\n aria-label={t('pagination.selectPage', 'Select page')}\n selectedKey={String(info.page)}\n width=\"min 15x\"\n styles={pageSizeSelectStyles}\n onSelectionChange={onPageSelectionChange}\n >\n {selectEntries.map((entry) => {\n const entryInfo = { ...info, page: entry };\n const label =\n labelFormatter?.(entryInfo) ??\n (info.total > 0\n ? formatRange(entryInfo)\n : t('pagination.page', 'Page {{page}}', { page: entry }));\n\n return (\n <Select.Item key={entry} textValue={String(label)}>\n {label}\n </Select.Item>\n );\n })}\n </Select>\n );\n }\n\n if (type === 'numbers' && pageItems.length > 0) {\n return (\n <div data-element=\"Pages\">\n {pageItems.map((entry, index) =>\n entry === 'gap' ? (\n <div key={`gap-${index}`} data-element=\"Gap\" aria-hidden=\"true\">\n {'…'}\n </div>\n ) : (\n <PageButton\n key={entry}\n qa={`PaginationPage_${entry}`}\n size={size}\n type={entry === info.page ? 'outline' : 'clear'}\n isDisabled={isDisabled}\n aria-label={t('pagination.page', 'Page {{page}}', {\n page: entry,\n })}\n aria-current={entry === info.page ? 'page' : undefined}\n onPress={() => goTo(entry)}\n >\n {entry}\n </PageButton>\n ),\n )}\n </div>\n );\n }\n\n if (!isCountable) return null;\n\n return (\n <div data-element=\"Summary\" data-qa=\"PaginationPageLabel\">\n {t('pagination.pageOf', '{{page}} of {{totalPages}}', {\n page: info.page,\n totalPages,\n })}\n </div>\n );\n }\n\n const showEdgeButtons = !isCompact && isCountable;\n\n return (\n <PaginationElement\n {...filterBaseProps(rest, { eventProps: true })}\n ref={ref}\n qa={qa || 'Pagination'}\n styles={styles}\n mods={{ size, ...mods }}\n aria-label={ariaLabel ?? t('pagination.ariaLabel', 'Pagination')}\n >\n {summaryNode ? <div data-element=\"Summary\">{summaryNode}</div> : null}\n\n {pageSizeOptions && onPageSizeChange ? (\n <Select\n qa=\"PaginationPageSizeSelect\"\n size={size}\n isDisabled={isDisabled}\n aria-label={t('pagination.itemsPerPage', 'Items per page')}\n selectedKey={String(pageSize)}\n styles={pageSizeSelectStyles}\n onSelectionChange={onPageSizeSelectionChange}\n >\n {pageSizeOptions.map((option) => {\n const label = t(\n 'pagination.itemsPerPageOption',\n '{{size}} / page',\n {\n size: option,\n },\n );\n\n return (\n <Select.Item key={option} textValue={label}>\n {label}\n </Select.Item>\n );\n })}\n </Select>\n ) : null}\n\n <div data-element=\"Controls\">\n {showEdgeButtons ? (\n <NavButton\n qa=\"PaginationFirstButton\"\n size={size}\n icon={<BackwardIcon />}\n isDisabled={isFirst || isDisabled}\n aria-label={t('pagination.firstPage', 'First page')}\n onPress={() => goTo(1)}\n />\n ) : null}\n\n <NavButton\n qa=\"PaginationPrevButton\"\n size={size}\n icon={<LeftIcon />}\n isDisabled={isFirst || isDisabled}\n aria-label={t('pagination.previousPage', 'Previous page')}\n onPress={() => goTo(info.page - 1)}\n />\n\n {renderPageControl()}\n\n <NavButton\n qa=\"PaginationNextButton\"\n size={size}\n icon={<RightIcon />}\n isDisabled={isLast || isDisabled}\n aria-label={t('pagination.nextPage', 'Next page')}\n onPress={() => goTo(info.page + 1)}\n />\n\n {showEdgeButtons ? (\n <NavButton\n qa=\"PaginationLastButton\"\n size={size}\n icon={<ForwardIcon />}\n isDisabled={isLast || isDisabled}\n aria-label={t('pagination.lastPage', 'Last page')}\n onPress={() => goTo(totalPages)}\n />\n ) : null}\n </div>\n </PaginationElement>\n );\n}\n\nconst _Pagination = forwardRef(Pagination);\n\n_Pagination.displayName = 'Pagination';\n\nexport { _Pagination as Pagination };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Pagination.js","names":["useControlledState","filterBaseProps","OUTER_STYLES","tasty","forwardRef","useEvent","useFormatter","useI18n","BackwardIcon","ForwardIcon","LeftIcon","RightIcon","extractStyles","Button","Select","clampPage","getPageInfo","getPaginationRange","ForwardedRef","ReactElement","CubePaginationProps","CubeTablePageInfo","PaginationElement","qa","as","styles","display","flow","gap","placeItems","placeContent","Summary","preset","color","whiteSpace","Controls","Gap","width","height","userSelect","Pages","styleProps","NavButton","type","border","PageButton","formatRange","info","start","page","pageSize","end","total","Math","min","Pagination","props","ref","$","_c","pageProp","defaultPage","onPageChange","totalPages","totalPagesProp","pageSizeProp","defaultPageSize","pageSizeOptions","onPageSizeChange","t0","siblingCount","t1","boundaryCount","t2","size","t3","isDisabled","hasNextPage","isCompact","t4","summary","t5","labelFormatter","ariaLabel","pageSizeSelectStyles","mods","rest","undefined","t","formatNumber","setPageSize","v","setPage","isCountable","Number","MAX_SAFE_INTEGER","from","to","goTo","next","clamped","max","t6","value","onPageSizeSelectionChange","t7","value_0","onPageSelectionChange","pageItems","selectEntries","Array","length","_temp","isFirst","isLast","t8","summaryNode","renderPageControl","String","map","entry","entryInfo","label","entry_0","index","showEdgeButtons","t9","eventProps","t10","t11","t12","option","label_0","t13","t14","Symbol","for","t15","t16","t17","t18","t19","t20","t21","t22","_","i","_Pagination","displayName"],"sources":["../../../../src/components/navigation/Pagination/Pagination.tsx"],"sourcesContent":["import { useControlledState } from '@react-stately/utils';\nimport { filterBaseProps, OUTER_STYLES, tasty } from '@tenphi/tasty';\nimport { forwardRef } from 'react';\n\nimport { useEvent } from '../../../_internal/hooks';\nimport { useFormatter, useI18n } from '../../../i18n';\nimport { BackwardIcon } from '../../../icons/BackwardIcon';\nimport { ForwardIcon } from '../../../icons/ForwardIcon';\nimport { LeftIcon } from '../../../icons/LeftIcon';\nimport { RightIcon } from '../../../icons/RightIcon';\nimport { extractStyles } from '../../../utils/styles';\nimport { Button } from '../../actions';\nimport { Select } from '../../fields/Select';\n\nimport { clampPage, getPageInfo, getPaginationRange } from './use-pagination';\n\nimport type { ForwardedRef, ReactElement } from 'react';\nimport type { CubePaginationProps, CubeTablePageInfo } from './types';\n\nconst PaginationElement = tasty({\n qa: 'Pagination',\n as: 'nav',\n styles: {\n display: 'flex',\n flow: 'row',\n gap: '1x',\n placeItems: 'center',\n placeContent: 'start',\n\n Summary: {\n // Follows the control's size rather than being fixed, so the summary\n // matches whatever the buttons beside it are.\n preset: { '': 't3', 'size=xsmall': 't4' },\n color: '#dark-03',\n whiteSpace: 'nowrap',\n },\n\n Controls: {\n display: 'flex',\n flow: 'row',\n gap: '.5x',\n placeItems: 'center',\n },\n\n Gap: {\n display: 'grid',\n placeItems: 'center',\n width: 'min $gap-size',\n height: '$gap-size',\n preset: 't3',\n color: '#dark-04',\n userSelect: 'none',\n },\n\n /**\n * The page numbers sit tighter than the nav buttons around them: they read\n * as one run of pages, not as separate controls, and a hairline is enough\n * to keep the current page's outline off its neighbours.\n */\n Pages: {\n display: 'flex',\n flow: 'row',\n gap: '1bw',\n placeItems: 'center',\n },\n\n '$gap-size': {\n '': '$size-sm',\n 'size=xsmall': '$size-xs',\n 'size=medium': '$size-md',\n },\n },\n styleProps: OUTER_STYLES,\n});\n\nconst NavButton = tasty(Button, {\n type: 'clear',\n styles: { border: true },\n});\n\n// Page buttons are borderless so the current page — which renders as `outline`\n// and therefore draws its own border — is the only bordered one in the run.\nconst PageButton = tasty(Button, {\n type: 'clear',\n});\n\nfunction formatRange(info: CubeTablePageInfo): string {\n const start = (info.page - 1) * info.pageSize + 1;\n const end =\n info.total > 0\n ? Math.min(info.page * info.pageSize, info.total)\n : info.page * info.pageSize;\n\n return `${start}–${end}`;\n}\n\nfunction Pagination(\n props: CubePaginationProps,\n ref: ForwardedRef<HTMLElement>,\n): ReactElement {\n const {\n page: pageProp,\n defaultPage,\n onPageChange,\n totalPages: totalPagesProp,\n total,\n pageSize: pageSizeProp,\n defaultPageSize,\n pageSizeOptions,\n onPageSizeChange,\n type = 'numbers',\n siblingCount = 1,\n boundaryCount = 1,\n size = 'small',\n isDisabled,\n hasNextPage,\n isCompact = false,\n summary = false,\n labelFormatter,\n ariaLabel,\n pageSizeSelectStyles,\n qa,\n mods,\n ...rest\n } = props;\n\n const { t } = useI18n();\n const { formatNumber } = useFormatter();\n\n const [pageSize, setPageSize] = useControlledState<number>(\n pageSizeProp as number,\n defaultPageSize ?? 50,\n onPageSizeChange as (v: number) => void,\n );\n const [page, setPage] = useControlledState<number>(\n pageProp as number,\n defaultPage ?? 1,\n onPageChange as (v: number) => void,\n );\n\n // Unknown total: prev/next only, with `hasNextPage` driving the next button.\n // The page must NOT be clamped in that mode — there is nothing to clamp to.\n const isCountable = totalPagesProp != null || total != null;\n\n const info: CubeTablePageInfo = isCountable\n ? getPageInfo({\n page,\n pageSize,\n total: total ?? 0,\n totalPages: totalPagesProp,\n })\n : {\n page: clampPage(page, Number.MAX_SAFE_INTEGER),\n pageSize,\n totalPages: 0,\n total: 0,\n from: 0,\n to: 0,\n };\n\n const { totalPages } = info;\n\n const goTo = useEvent((next: number) => {\n const clamped = isCountable\n ? clampPage(next, totalPages)\n : Math.max(next, 1);\n\n if (clamped !== info.page) setPage(clamped);\n });\n\n const onPageSizeSelectionChange = useEvent((value: any) => {\n setPageSize(Number(value));\n setPage(1);\n });\n\n const onPageSelectionChange = useEvent((value: any) => {\n goTo(Number(value));\n });\n\n const pageItems =\n type === 'numbers' && isCountable\n ? getPaginationRange({\n page: info.page,\n totalPages,\n siblingCount,\n boundaryCount,\n })\n : [];\n\n // `type=\"select\"` materializes one entry per page, so it is only safe for\n // small page counts. Above the cap we fall back to `compact`, which reads the\n // same but renders a single label.\n const selectEntries =\n type === 'select' && isCountable && totalPages <= 200\n ? Array.from({ length: totalPages }, (_, i) => i + 1)\n : null;\n\n const isFirst = info.page <= 1;\n const isLast = isCountable ? info.page >= totalPages : !hasNextPage;\n\n const styles = extractStyles(props, OUTER_STYLES);\n\n const summaryNode =\n summary === false\n ? null\n : typeof summary === 'function'\n ? summary(info)\n : info.total > 0\n ? // Numbers are formatted here rather than left to i18next, which\n // interpolates them raw (\"1204\", not \"1,204\").\n t('pagination.summary', '{{from}}–{{to}} of {{total}}', {\n from: formatNumber(info.from),\n to: formatNumber(info.to),\n total: formatNumber(info.total),\n })\n : null;\n\n function renderPageControl() {\n if (selectEntries) {\n return (\n <Select\n isBare\n qa=\"PaginationPageSelect\"\n size={size}\n isDisabled={isDisabled}\n aria-label={t('pagination.selectPage', 'Select page')}\n selectedKey={String(info.page)}\n width=\"min 15x\"\n styles={pageSizeSelectStyles}\n onSelectionChange={onPageSelectionChange}\n >\n {selectEntries.map((entry) => {\n const entryInfo = { ...info, page: entry };\n const label =\n labelFormatter?.(entryInfo) ??\n (info.total > 0\n ? formatRange(entryInfo)\n : t('pagination.page', 'Page {{page}}', { page: entry }));\n\n return (\n <Select.Item key={entry} textValue={String(label)}>\n {label}\n </Select.Item>\n );\n })}\n </Select>\n );\n }\n\n if (type === 'numbers' && pageItems.length > 0) {\n return (\n <div data-element=\"Pages\">\n {pageItems.map((entry, index) =>\n entry === 'gap' ? (\n <div key={`gap-${index}`} data-element=\"Gap\" aria-hidden=\"true\">\n {'…'}\n </div>\n ) : (\n <PageButton\n key={entry}\n qa={`PaginationPage_${entry}`}\n size={size}\n type={entry === info.page ? 'outline' : 'clear'}\n isDisabled={isDisabled}\n aria-label={t('pagination.page', 'Page {{page}}', {\n page: entry,\n })}\n aria-current={entry === info.page ? 'page' : undefined}\n onPress={() => goTo(entry)}\n >\n {entry}\n </PageButton>\n ),\n )}\n </div>\n );\n }\n\n if (!isCountable) return null;\n\n return (\n <div data-element=\"Summary\" data-qa=\"PaginationPageLabel\">\n {t('pagination.pageOf', '{{page}} of {{totalPages}}', {\n page: info.page,\n totalPages,\n })}\n </div>\n );\n }\n\n const showEdgeButtons = !isCompact && isCountable;\n\n return (\n <PaginationElement\n {...filterBaseProps(rest, { eventProps: true })}\n ref={ref}\n qa={qa || 'Pagination'}\n styles={styles}\n mods={{ size, ...mods }}\n aria-label={ariaLabel ?? t('pagination.ariaLabel', 'Pagination')}\n >\n {summaryNode ? <div data-element=\"Summary\">{summaryNode}</div> : null}\n\n {pageSizeOptions && onPageSizeChange ? (\n <Select\n isBare\n qa=\"PaginationPageSizeSelect\"\n size={size}\n isDisabled={isDisabled}\n aria-label={t('pagination.itemsPerPage', 'Items per page')}\n selectedKey={String(pageSize)}\n styles={pageSizeSelectStyles}\n onSelectionChange={onPageSizeSelectionChange}\n >\n {pageSizeOptions.map((option) => {\n const label = t(\n 'pagination.itemsPerPageOption',\n '{{size}} / page',\n {\n size: option,\n },\n );\n\n return (\n <Select.Item key={option} textValue={label}>\n {label}\n </Select.Item>\n );\n })}\n </Select>\n ) : null}\n\n <div data-element=\"Controls\">\n {showEdgeButtons ? (\n <NavButton\n qa=\"PaginationFirstButton\"\n size={size}\n icon={<BackwardIcon />}\n isDisabled={isFirst || isDisabled}\n aria-label={t('pagination.firstPage', 'First page')}\n onPress={() => goTo(1)}\n />\n ) : null}\n\n <NavButton\n qa=\"PaginationPrevButton\"\n size={size}\n icon={<LeftIcon />}\n isDisabled={isFirst || isDisabled}\n aria-label={t('pagination.previousPage', 'Previous page')}\n onPress={() => goTo(info.page - 1)}\n />\n\n {renderPageControl()}\n\n <NavButton\n qa=\"PaginationNextButton\"\n size={size}\n icon={<RightIcon />}\n isDisabled={isLast || isDisabled}\n aria-label={t('pagination.nextPage', 'Next page')}\n onPress={() => goTo(info.page + 1)}\n />\n\n {showEdgeButtons ? (\n <NavButton\n qa=\"PaginationLastButton\"\n size={size}\n icon={<ForwardIcon />}\n isDisabled={isLast || isDisabled}\n aria-label={t('pagination.lastPage', 'Last page')}\n onPress={() => goTo(totalPages)}\n />\n ) : null}\n </div>\n </PaginationElement>\n );\n}\n\nconst _Pagination = forwardRef(Pagination);\n\n_Pagination.displayName = 'Pagination';\n\nexport { _Pagination as Pagination };\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { useEvent } from "../../../_internal/hooks/use-event.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useControlledState } from "@react-stately/utils";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { createContext, useContext } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { DraggableCollection } from "../../shared/DraggableCollection.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | 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 { ItemAction } from "../../actions/ItemAction/ItemAction.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { DropIndicatorElement } from "./styled.js";
3
3
  import { useTabsContext } from "./TabsContext.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { TabPanelElement } from "./styled.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useEffect, useMemo, useRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { ItemAction } from "../../actions/ItemAction/ItemAction.js";
3
3
  import { useI18n } from "../../../i18n/useI18n.js";
4
4
  import { CloseIcon } from "../../../icons/CloseIcon.js";
@@ -99,6 +99,7 @@ function TabPicker(t0) {
99
99
  let t11;
100
100
  if ($[20] !== isReorderable || $[21] !== onReorder || $[22] !== pickerSize || $[23] !== selectedKey || $[24] !== t10 || $[25] !== t4 || $[26] !== t6 || $[27] !== t8 || $[28] !== t9) {
101
101
  t11 = /* @__PURE__ */ jsx(FilterPicker, {
102
+ isBare: true,
102
103
  selectedKey,
103
104
  renderSummary: false,
104
105
  icon: t3,
@@ -1 +1 @@
1
- {"version":3,"file":"TabPicker.js","names":["useI18n","CloseIcon","MoreIcon","ItemAction","FilterPicker","POPOVER_PLACEMENT_BY_TABS_PLACEMENT","ParsedTab","TabPlacement","TabSize","TabType","TabPickerProps","tabs","selectedKey","onSelect","key","onDelete","size","type","placement","isReorderable","onReorder","newOrder","TabPicker","t0","$","_c","t1","t2","undefined","t","isDeletable","pickerSize","showBorderDivider","isVertical","t3","Symbol","for","t4","t5","t6","border","t7","t8","t9","String","t10","t11","tab","icon","tooltip","title","map"],"sources":["../../../../src/components/navigation/Tabs/TabPicker.tsx"],"sourcesContent":["import { useI18n } from '../../../i18n';\nimport { CloseIcon } from '../../../icons/CloseIcon';\nimport { MoreIcon } from '../../../icons/MoreIcon';\nimport { ItemAction } from '../../actions/ItemAction';\nimport { FilterPicker } from '../../fields/FilterPicker/FilterPicker';\n\nimport { POPOVER_PLACEMENT_BY_TABS_PLACEMENT } from './popover-placement';\n\nimport type { ParsedTab, TabPlacement, TabSize, TabType } from './types';\n\n// =============================================================================\n// Types\n// =============================================================================\n\nexport interface TabPickerProps {\n /** Ordered list of parsed tabs to display in the picker */\n tabs: ParsedTab[];\n /** Currently selected tab key */\n selectedKey: string | null;\n /** Callback when a tab is selected from the picker */\n onSelect: (key: string) => void;\n /** Callback when a tab should be deleted. When provided, shows delete action on items. */\n onDelete?: (key: string) => void;\n /** Size of the picker trigger button */\n size?: TabSize;\n /** Type of the parent Tabs component (for border styling) */\n type?: TabType;\n /** Placement of the parent Tabs component (controls divider + popover placement) */\n placement?: TabPlacement;\n /** Enable drag-and-drop reordering of items in the picker dropdown */\n isReorderable?: boolean;\n /** Callback when items are reordered via drag-and-drop */\n onReorder?: (newOrder: string[]) => void;\n}\n\n// =============================================================================\n// Component\n// =============================================================================\n\n/**\n * Tab picker component that displays a dropdown menu of all tabs.\n *\n * Used in the Tabs suffix area when tabs overflow to provide quick navigation\n * to any tab without scrolling.\n */\nexport function TabPicker({\n tabs,\n selectedKey,\n onSelect,\n onDelete,\n size,\n type = 'default',\n placement = 'top',\n isReorderable,\n onReorder,\n}: TabPickerProps) {\n const { t } = useI18n();\n const isDeletable = !!onDelete;\n\n // Map TabSize to FilterPicker size (xsmall -> small)\n const pickerSize = size === 'xsmall' ? 'small' : size;\n\n // Only show border divider for file type\n const showBorderDivider = type === 'file';\n const isVertical = placement === 'left' || placement === 'right';\n\n return (\n <FilterPicker\n selectedKey={selectedKey}\n renderSummary={false}\n icon={<MoreIcon />}\n rightIcon={null}\n shape=\"sharp\"\n type=\"clear\"\n size={pickerSize}\n placement={POPOVER_PLACEMENT_BY_TABS_PLACEMENT[placement]}\n // Apply border to wrapper (FilterPickerWrapper) so :first-child evaluates\n // relative to Suffix container, not the internal DialogTrigger. The\n // divider side flips with the bar's orientation.\n styles={{\n border: showBorderDivider\n ? {\n '': 0,\n '!:first-child': isVertical ? 'top' : 'left',\n }\n : 0,\n }}\n triggerStyles={{ border: 0 }}\n aria-label={t('tabs.selectTab', 'Select tab')}\n isReorderable={isReorderable}\n onReorder={onReorder}\n onSelectionChange={(key) => {\n if (key != null) {\n onSelect(String(key));\n }\n }}\n >\n {tabs.map((tab) => (\n <FilterPicker.Item\n key={tab.key}\n icon={tab.icon}\n tooltip={tab.tooltip}\n textValue={\n typeof tab.title === 'string' ? tab.title : String(tab.key)\n }\n autoHideActions={isDeletable}\n actions={\n isDeletable ? (\n <ItemAction\n icon={<CloseIcon />}\n aria-label={t('tabs.close', 'Close')}\n onPress={() => {\n onDelete(tab.key);\n }}\n />\n ) : undefined\n }\n >\n {tab.title}\n </FilterPicker.Item>\n ))}\n </FilterPicker>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"TabPicker.js","names":["useI18n","CloseIcon","MoreIcon","ItemAction","FilterPicker","POPOVER_PLACEMENT_BY_TABS_PLACEMENT","ParsedTab","TabPlacement","TabSize","TabType","TabPickerProps","tabs","selectedKey","onSelect","key","onDelete","size","type","placement","isReorderable","onReorder","newOrder","TabPicker","t0","$","_c","t1","t2","undefined","t","isDeletable","pickerSize","showBorderDivider","isVertical","t3","Symbol","for","t4","t5","t6","border","t7","t8","t9","String","t10","t11","tab","icon","tooltip","title","map"],"sources":["../../../../src/components/navigation/Tabs/TabPicker.tsx"],"sourcesContent":["import { useI18n } from '../../../i18n';\nimport { CloseIcon } from '../../../icons/CloseIcon';\nimport { MoreIcon } from '../../../icons/MoreIcon';\nimport { ItemAction } from '../../actions/ItemAction';\nimport { FilterPicker } from '../../fields/FilterPicker/FilterPicker';\n\nimport { POPOVER_PLACEMENT_BY_TABS_PLACEMENT } from './popover-placement';\n\nimport type { ParsedTab, TabPlacement, TabSize, TabType } from './types';\n\n// =============================================================================\n// Types\n// =============================================================================\n\nexport interface TabPickerProps {\n /** Ordered list of parsed tabs to display in the picker */\n tabs: ParsedTab[];\n /** Currently selected tab key */\n selectedKey: string | null;\n /** Callback when a tab is selected from the picker */\n onSelect: (key: string) => void;\n /** Callback when a tab should be deleted. When provided, shows delete action on items. */\n onDelete?: (key: string) => void;\n /** Size of the picker trigger button */\n size?: TabSize;\n /** Type of the parent Tabs component (for border styling) */\n type?: TabType;\n /** Placement of the parent Tabs component (controls divider + popover placement) */\n placement?: TabPlacement;\n /** Enable drag-and-drop reordering of items in the picker dropdown */\n isReorderable?: boolean;\n /** Callback when items are reordered via drag-and-drop */\n onReorder?: (newOrder: string[]) => void;\n}\n\n// =============================================================================\n// Component\n// =============================================================================\n\n/**\n * Tab picker component that displays a dropdown menu of all tabs.\n *\n * Used in the Tabs suffix area when tabs overflow to provide quick navigation\n * to any tab without scrolling.\n */\nexport function TabPicker({\n tabs,\n selectedKey,\n onSelect,\n onDelete,\n size,\n type = 'default',\n placement = 'top',\n isReorderable,\n onReorder,\n}: TabPickerProps) {\n const { t } = useI18n();\n const isDeletable = !!onDelete;\n\n // Map TabSize to FilterPicker size (xsmall -> small)\n const pickerSize = size === 'xsmall' ? 'small' : size;\n\n // Only show border divider for file type\n const showBorderDivider = type === 'file';\n const isVertical = placement === 'left' || placement === 'right';\n\n return (\n <FilterPicker\n isBare\n selectedKey={selectedKey}\n renderSummary={false}\n icon={<MoreIcon />}\n rightIcon={null}\n shape=\"sharp\"\n type=\"clear\"\n size={pickerSize}\n placement={POPOVER_PLACEMENT_BY_TABS_PLACEMENT[placement]}\n // Apply border to wrapper (FilterPickerWrapper) so :first-child evaluates\n // relative to Suffix container, not the internal DialogTrigger. The\n // divider side flips with the bar's orientation.\n styles={{\n border: showBorderDivider\n ? {\n '': 0,\n '!:first-child': isVertical ? 'top' : 'left',\n }\n : 0,\n }}\n triggerStyles={{ border: 0 }}\n aria-label={t('tabs.selectTab', 'Select tab')}\n isReorderable={isReorderable}\n onReorder={onReorder}\n onSelectionChange={(key) => {\n if (key != null) {\n onSelect(String(key));\n }\n }}\n >\n {tabs.map((tab) => (\n <FilterPicker.Item\n key={tab.key}\n icon={tab.icon}\n tooltip={tab.tooltip}\n textValue={\n typeof tab.title === 'string' ? tab.title : String(tab.key)\n }\n autoHideActions={isDeletable}\n actions={\n isDeletable ? (\n <ItemAction\n icon={<CloseIcon />}\n aria-label={t('tabs.close', 'Close')}\n onPress={() => {\n onDelete(tab.key);\n }}\n />\n ) : undefined\n }\n >\n {tab.title}\n </FilterPicker.Item>\n ))}\n </FilterPicker>\n );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | 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 { useEvent } from "../../../_internal/hooks/use-event.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { _ItemButton } from "../../actions/ItemButton/ItemButton.js";
3
3
  import { useOptionalTabsContext } from "./TabsContext.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { createContext, useContext } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  //#region src/components/navigation/Tabs/popover-placement.ts
3
3
  /**
4
4
  * Maps the parent Tabs `placement` to the popover placement for menus and
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { _Item } from "../../content/Item/Item.js";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  //#region src/components/navigation/Tabs/types.ts
3
3
  /**
4
4
  * Size mapping for radio type tabs.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { useState } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { chainRaf } from "../../../utils/raf.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useEffect, useLayoutEffect, useRef, useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { _Text } from "../../content/Text.js";
3
3
  import { _Title } from "../../content/Title.js";
4
4
  import { Card } from "../../content/Card/Card.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { useProviderProps } from "../../../provider.js";
3
3
  import { CalendarPanel } from "./CalendarPanel.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { CALENDAR_CELL_STYLES } from "./styled.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { tasty } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { getWeekNumber } from "../../fields/DatePicker/period.js";
3
3
  import { CalendarCell } from "./CalendarCell.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { _Title } from "../../content/Title.js";
3
3
  import { Space } from "../../layout/Space.js";
4
4
  import { RightIcon } from "../../../icons/RightIcon.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { useI18n } from "../../../i18n/useI18n.js";
4
4
  import { CalendarElement } from "./styled.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { useProviderProps } from "../../../provider.js";
3
3
  import { useI18n } from "../../../i18n/useI18n.js";
4
4
  import { getQuarter } from "../../fields/DatePicker/period.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { CALENDAR_CELL_STYLES } from "./styled.js";
3
3
  import { tasty } from "@tenphi/tasty";
4
4
  import { useLayoutEffect, useRef } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { useProviderProps } from "../../../provider.js";
3
3
  import { CalendarPanel } from "./CalendarPanel.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { tasty } from "@tenphi/tasty";
3
3
 
4
4
  //#region src/components/other/Calendar/styled.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { Icon } from "../../../icons/Icon.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { mergeStyles, tasty } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { wrapIcon } from "../../../icons/wrap-icon.js";
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { chain } from "../../../utils/react/chain.js";
3
3
  import { Paragraph } from "../../content/Paragraph.js";
4
4
  import { _Title } from "../../content/Title.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { AlertDialogZone } from "./AlertDialogZone.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { createContext, useContext, useLayoutEffect, useRef, useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { Portal } from "../../portal/Portal.js";
3
3
  import { DialogContainer } from "../Dialog/DialogContainer.js";
4
4
  import { _AlertDialog } from "./AlertDialog.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | 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 { SlotProvider } from "../../../utils/react/Slots.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { _Modal } from "../Modal/Modal.js";
3
3
  import { DialogContext } from "./context.js";
4
4
  import { c } from "react/compiler-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { _Title } from "../../content/Title.js";
3
3
  import { useI18n } from "../../../i18n/useI18n.js";
4
4
  import { Button } from "../../actions/Button/Button.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { usePopoverSync } from "../../../utils/react/usePopoverSync.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { _Title } from "../../content/Title.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
  import invariant from "tiny-invariant";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  //#region src/components/overlays/Dialog/default-button-text.ts
3
3
  /**
4
4
  * Gives a dialog's built-in button its default text without overriding the
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
3
3
  import { c } from "react/compiler-runtime";
4
4
  import { useState } from "react";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { mergeProps } from "../../../utils/react/mergeProps.js";
3
3
  import { useEvent } from "../../../_internal/hooks/use-event.js";
4
4
  import { DialogContainer } from "./DialogContainer.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
3
3
  import { mergeRefs as mergeRefs$1 } from "../../../utils/react/useCombinedRefs.js";
4
4
  import { ModalContainmentProvider, useModalContainment } from "./modal-containment.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { createContext, useContext } from "react";
3
3
 
4
4
  //#region src/components/overlays/Modal/OpenTransitionContext.tsx
@@ -1,7 +1,8 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-759f43d | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-77836fa | Cube Dev Team */
2
2
  import { markFocusRestoreWindow } from "../../../utils/react/programmaticFocus.js";
3
3
  import { DisplayTransition } from "../../helpers/DisplayTransition/DisplayTransition.js";
4
4
  import { Provider, useProviderProps } from "../../../provider.js";
5
+ import { ButtonSplitContext } from "../../actions/ButtonSplit/context.js";
5
6
  import { OpenTransitionContext } from "./OpenTransitionContext.js";
6
7
  import { TastyBatchProvider } from "@tenphi/tasty";
7
8
  import { Children, cloneElement, forwardRef, useCallback, useRef, useState } from "react";
@@ -50,7 +51,7 @@ function Overlay(props, ref) {
50
51
  if (!(isOpen || !exited)) {
51
52
  if (!hideOnClose) return null;
52
53
  }
53
- return createPortal(/* @__PURE__ */ jsx(TastyBatchProvider, { children: /* @__PURE__ */ jsx(Provider, {
54
+ let contents = /* @__PURE__ */ jsx(Provider, {
54
55
  ref,
55
56
  children: /* @__PURE__ */ jsx(DisplayTransition, {
56
57
  isShown: !!isOpen,
@@ -68,6 +69,10 @@ function Overlay(props, ref) {
68
69
  });
69
70
  }
70
71
  })
72
+ });
73
+ return createPortal(/* @__PURE__ */ jsx(TastyBatchProvider, { children: /* @__PURE__ */ jsx(ButtonSplitContext.Provider, {
74
+ value: null,
75
+ children: contents
71
76
  }) }), container || root || document.body);
72
77
  }
73
78
  let _Overlay = forwardRef(Overlay);
@@ -1 +1 @@
1
- {"version":3,"file":"Overlay.js","names":["TastyBatchProvider","Children","cloneElement","forwardRef","ReactElement","ReactNode","useCallback","useRef","useState","createPortal","Provider","useProviderProps","markFocusRestoreWindow","DisplayTransition","OpenTransitionContext","WithCloseBehavior","Props","ReportedPhase","CubeOverlayProps","children","isOpen","container","HTMLElement","onEnter","onEntering","onEntered","onExit","onExiting","onExited","EXIT_DURATION","Overlay","props","ref","hideOnClose","exited","setExited","wasOpen","current","root","handlePhaseChange","phase","mountOverlay","contents","isShown","isExiting","transitionState","map","child","undefined","document","body","_Overlay","displayName"],"sources":["../../../../src/components/overlays/Modal/Overlay.tsx"],"sourcesContent":["import { TastyBatchProvider } from '@tenphi/tasty';\nimport {\n Children,\n cloneElement,\n forwardRef,\n ReactElement,\n ReactNode,\n useCallback,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Provider, useProviderProps } from '../../../provider';\nimport { markFocusRestoreWindow } from '../../../utils/react/programmaticFocus';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\n\nimport { OpenTransitionContext } from './OpenTransitionContext';\nimport { WithCloseBehavior } from './types';\n\nimport type { Props } from '../../../props';\nimport type { ReportedPhase } from '../../helpers/DisplayTransition/DisplayTransition';\n\nexport interface CubeOverlayProps extends WithCloseBehavior {\n children?: ReactNode;\n isOpen?: boolean;\n container?: HTMLElement | null;\n onEnter?: () => void;\n onEntering?: () => void;\n onEntered?: () => void;\n onExit?: () => void;\n onExiting?: () => void;\n onExited?: () => void;\n}\n\nconst EXIT_DURATION = 350;\n\nfunction Overlay(props: CubeOverlayProps, ref) {\n let {\n children,\n isOpen,\n container = null,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n hideOnClose = false,\n } = props;\n let [exited, setExited] = useState(!isOpen);\n\n if (isOpen && exited) {\n setExited(false);\n }\n\n // Our `FocusScope` restores focus to the trigger when it unmounts, from\n // inside React's own commit where nothing can wrap the call. The window has\n // to be open before that lands, or the restored trigger's tooltip opens and\n // eats the user's next `Escape` (CUB-4839).\n //\n // Keyed to `isOpen` closing rather than to the exit PHASE, because the phase\n // is not always reported: under reduced motion `DisplayTransition` collapses\n // its duration to zero, so `exit` and `unmounted` are set in one callback and\n // React batches the `exit` render — and its notification — away entirely.\n // Closing is the one signal that always arrives.\n const wasOpen = useRef(!!isOpen);\n\n if (wasOpen.current !== !!isOpen) {\n wasOpen.current = !!isOpen;\n\n if (!isOpen) markFocusRestoreWindow(EXIT_DURATION + 200);\n }\n\n let { root } = useProviderProps({} as Props);\n\n let handlePhaseChange = useCallback(\n (phase: ReportedPhase) => {\n switch (phase) {\n case 'enter':\n setExited(false);\n onEnter?.();\n onEntering?.();\n break;\n case 'entered':\n onEntered?.();\n break;\n case 'exit':\n onExit?.();\n onExiting?.();\n break;\n case 'unmounted':\n setExited(true);\n onExited?.();\n break;\n }\n },\n [onEnter, onEntering, onEntered, onExit, onExiting, onExited],\n );\n\n let mountOverlay = isOpen || !exited;\n\n if (!mountOverlay) {\n if (!hideOnClose) {\n return null;\n }\n }\n\n let contents = (\n <Provider ref={ref}>\n <DisplayTransition\n isShown={!!isOpen}\n exposeUnmounted={hideOnClose}\n duration={EXIT_DURATION}\n onPhaseChange={handlePhaseChange}\n >\n {({ phase, isShown, isExiting }) => {\n return (\n <OpenTransitionContext.Provider\n value={{ transitionState: phase as ReportedPhase }}\n >\n {Children.map(\n children,\n (child) =>\n child &&\n cloneElement(\n child as ReactElement,\n {\n isOpen: isShown,\n transitionState: phase,\n // A closed overlay leaves React Aria's stack of visible\n // overlays at once, but stays on screen, and clickable,\n // while it fades out. A press on it then counts as a\n // press outside whatever overlay is topmost again, so a\n // click on a fading list closed the Dialog under it\n // (CUB-5293). React Aria never treats a press inside a\n // top-layer element as outside.\n 'data-react-aria-top-layer': isExiting || undefined,\n } as any,\n ),\n )}\n </OpenTransitionContext.Provider>\n );\n }}\n </DisplayTransition>\n </Provider>\n );\n\n // Popover, Modal and Tray all portal through here, which makes this the\n // overlay path that matters most for batching: a dialog or menu mounts a\n // fresh subtree and react-aria positions it from a layout effect in the same\n // commit. `<Root>` does not re-render for those commits, so open a window\n // here — it flushes in `useInsertionEffect`, before any positioning effect\n // reads the DOM. Note this is a *raw* `createPortal`, not `<Portal>`, so the\n // window `<Portal>` opens does not reach these overlays.\n return createPortal(\n <TastyBatchProvider>{contents}</TastyBatchProvider>,\n container || root || document.body,\n );\n}\n\nlet _Overlay = forwardRef(Overlay);\n\n_Overlay.displayName = 'Overlay';\n\nexport { _Overlay as Overlay };\n"],"mappings":";;;;;;;;;;;AAmCA,MAAM6B,gBAAgB;AAEtB,SAASC,QAAQC,OAAyBC,KAAK;CAC7C,IAAI,EACFb,UACAC,QACAC,YAAY,MACZE,SACAC,YACAC,WACAC,QACAC,WACAC,UACAK,cAAc,UACZF;CACJ,IAAI,CAACG,QAAQC,aAAa3B,SAAS,CAACY,OAAO;AAE3C,KAAIA,UAAUc,OACZC,WAAU,MAAM;CAalB,MAAMC,UAAU7B,OAAO,CAAC,CAACa,OAAO;AAEhC,KAAIgB,QAAQC,YAAY,CAAC,CAACjB,QAAQ;AAChCgB,UAAQC,UAAU,CAAC,CAACjB;AAEpB,MAAI,CAACA,OAAQR,wBAAuBiB,gBAAgB,IAAI;;CAG1D,IAAI,EAAES,SAAS3B,iBAAiB,EAAE,CAAU;CAE5C,IAAI4B,oBAAoBjC,aACrBkC,UAAyB;AACxB,UAAQA,OAAR;GACE,KAAK;AACHL,cAAU,MAAM;AAChBZ,eAAW;AACXC,kBAAc;AACd;GACF,KAAK;AACHC,iBAAa;AACb;GACF,KAAK;AACHC,cAAU;AACVC,iBAAa;AACb;GACF,KAAK;AACHQ,cAAU,KAAK;AACfP,gBAAY;AACZ;;IAGN;EAACL;EAASC;EAAYC;EAAWC;EAAQC;EAAWC;EACtD,CAAC;AAID,KAAI,EAFeR,UAAU,CAACc,SAG5B;MAAI,CAACD,YACH,QAAO;;AAmDX,QAAOxB,aACL,oBAAC,gCA/CD,oBAAC;EAAcuB;YACb,oBAAC;GACC,SAAS,CAAC,CAACZ;GACX,iBAAiBa;GACjB,UAAUJ;GACV,eAAeU;cAEb,EAAEC,OAAAA,SAAOG,SAASC,gBAAgB;AAClC,WACE,oBAAC,sBAAsB;KACrB,OAAO,EAAEC,iBAAiBL,SAAwB;eAEjDvC,SAAS6C,IACR3B,WACC4B,UACCA,SACA7C,aACE6C,OACA;MACE3B,QAAQuB;MACRE,iBAAiBL;MAQjB,6BAA6BI,aAAaI;MAC3C,CAEP,CAAC;MAC8B;;IAGpB;GAEtB,GAUoD,EACnD3B,aAAaiB,QAAQW,SAASC,KAC/B;;AAGH,IAAIC,WAAWhD,WAAW2B,QAAQ;AAElCqB,SAASC,cAAc"}
1
+ {"version":3,"file":"Overlay.js","names":["TastyBatchProvider","Children","cloneElement","forwardRef","ReactElement","ReactNode","useCallback","useRef","useState","createPortal","Provider","useProviderProps","markFocusRestoreWindow","ButtonSplitContext","DisplayTransition","OpenTransitionContext","WithCloseBehavior","Props","ReportedPhase","CubeOverlayProps","children","isOpen","container","HTMLElement","onEnter","onEntering","onEntered","onExit","onExiting","onExited","EXIT_DURATION","Overlay","props","ref","hideOnClose","exited","setExited","wasOpen","current","root","handlePhaseChange","phase","mountOverlay","contents","isShown","isExiting","transitionState","map","child","undefined","document","body","_Overlay","displayName"],"sources":["../../../../src/components/overlays/Modal/Overlay.tsx"],"sourcesContent":["import { TastyBatchProvider } from '@tenphi/tasty';\nimport {\n Children,\n cloneElement,\n forwardRef,\n ReactElement,\n ReactNode,\n useCallback,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Provider, useProviderProps } from '../../../provider';\nimport { markFocusRestoreWindow } from '../../../utils/react/programmaticFocus';\nimport { ButtonSplitContext } from '../../actions/ButtonSplit/context';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\n\nimport { OpenTransitionContext } from './OpenTransitionContext';\nimport { WithCloseBehavior } from './types';\n\nimport type { Props } from '../../../props';\nimport type { ReportedPhase } from '../../helpers/DisplayTransition/DisplayTransition';\n\nexport interface CubeOverlayProps extends WithCloseBehavior {\n children?: ReactNode;\n isOpen?: boolean;\n container?: HTMLElement | null;\n onEnter?: () => void;\n onEntering?: () => void;\n onEntered?: () => void;\n onExit?: () => void;\n onExiting?: () => void;\n onExited?: () => void;\n}\n\nconst EXIT_DURATION = 350;\n\nfunction Overlay(props: CubeOverlayProps, ref) {\n let {\n children,\n isOpen,\n container = null,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n hideOnClose = false,\n } = props;\n let [exited, setExited] = useState(!isOpen);\n\n if (isOpen && exited) {\n setExited(false);\n }\n\n // Our `FocusScope` restores focus to the trigger when it unmounts, from\n // inside React's own commit where nothing can wrap the call. The window has\n // to be open before that lands, or the restored trigger's tooltip opens and\n // eats the user's next `Escape` (CUB-4839).\n //\n // Keyed to `isOpen` closing rather than to the exit PHASE, because the phase\n // is not always reported: under reduced motion `DisplayTransition` collapses\n // its duration to zero, so `exit` and `unmounted` are set in one callback and\n // React batches the `exit` render — and its notification — away entirely.\n // Closing is the one signal that always arrives.\n const wasOpen = useRef(!!isOpen);\n\n if (wasOpen.current !== !!isOpen) {\n wasOpen.current = !!isOpen;\n\n if (!isOpen) markFocusRestoreWindow(EXIT_DURATION + 200);\n }\n\n let { root } = useProviderProps({} as Props);\n\n let handlePhaseChange = useCallback(\n (phase: ReportedPhase) => {\n switch (phase) {\n case 'enter':\n setExited(false);\n onEnter?.();\n onEntering?.();\n break;\n case 'entered':\n onEntered?.();\n break;\n case 'exit':\n onExit?.();\n onExiting?.();\n break;\n case 'unmounted':\n setExited(true);\n onExited?.();\n break;\n }\n },\n [onEnter, onEntering, onEntered, onExit, onExiting, onExited],\n );\n\n let mountOverlay = isOpen || !exited;\n\n if (!mountOverlay) {\n if (!hideOnClose) {\n return null;\n }\n }\n\n let contents = (\n <Provider ref={ref}>\n <DisplayTransition\n isShown={!!isOpen}\n exposeUnmounted={hideOnClose}\n duration={EXIT_DURATION}\n onPhaseChange={handlePhaseChange}\n >\n {({ phase, isShown, isExiting }) => {\n return (\n <OpenTransitionContext.Provider\n value={{ transitionState: phase as ReportedPhase }}\n >\n {Children.map(\n children,\n (child) =>\n child &&\n cloneElement(\n child as ReactElement,\n {\n isOpen: isShown,\n transitionState: phase,\n // A closed overlay leaves React Aria's stack of visible\n // overlays at once, but stays on screen, and clickable,\n // while it fades out. A press on it then counts as a\n // press outside whatever overlay is topmost again, so a\n // click on a fading list closed the Dialog under it\n // (CUB-5293). React Aria never treats a press inside a\n // top-layer element as outside.\n 'data-react-aria-top-layer': isExiting || undefined,\n } as any,\n ),\n )}\n </OpenTransitionContext.Provider>\n );\n }}\n </DisplayTransition>\n </Provider>\n );\n\n // Popover, Modal and Tray all portal through here, which makes this the\n // overlay path that matters most for batching: a dialog or menu mounts a\n // fresh subtree and react-aria positions it from a layout effect in the same\n // commit. `<Root>` does not re-render for those commits, so open a window\n // here — it flushes in `useInsertionEffect`, before any positioning effect\n // reads the DOM. Note this is a *raw* `createPortal`, not `<Portal>`, so the\n // window `<Portal>` opens does not reach these overlays.\n //\n // Overlays also leave the `ButtonSplit` that opened them here: its context\n // crosses the portal and would style every Button inside (CUB-5624). A split\n // rendered inside the overlay still provides its own.\n return createPortal(\n <TastyBatchProvider>\n <ButtonSplitContext.Provider value={null}>\n {contents}\n </ButtonSplitContext.Provider>\n </TastyBatchProvider>,\n container || root || document.body,\n );\n}\n\nlet _Overlay = forwardRef(Overlay);\n\n_Overlay.displayName = 'Overlay';\n\nexport { _Overlay as Overlay };\n"],"mappings":";;;;;;;;;;;;AAoCA,MAAM8B,gBAAgB;AAEtB,SAASC,QAAQC,OAAyBC,KAAK;CAC7C,IAAI,EACFb,UACAC,QACAC,YAAY,MACZE,SACAC,YACAC,WACAC,QACAC,WACAC,UACAK,cAAc,UACZF;CACJ,IAAI,CAACG,QAAQC,aAAa5B,SAAS,CAACa,OAAO;AAE3C,KAAIA,UAAUc,OACZC,WAAU,MAAM;CAalB,MAAMC,UAAU9B,OAAO,CAAC,CAACc,OAAO;AAEhC,KAAIgB,QAAQC,YAAY,CAAC,CAACjB,QAAQ;AAChCgB,UAAQC,UAAU,CAAC,CAACjB;AAEpB,MAAI,CAACA,OAAQT,wBAAuBkB,gBAAgB,IAAI;;CAG1D,IAAI,EAAES,SAAS5B,iBAAiB,EAAE,CAAU;CAE5C,IAAI6B,oBAAoBlC,aACrBmC,UAAyB;AACxB,UAAQA,OAAR;GACE,KAAK;AACHL,cAAU,MAAM;AAChBZ,eAAW;AACXC,kBAAc;AACd;GACF,KAAK;AACHC,iBAAa;AACb;GACF,KAAK;AACHC,cAAU;AACVC,iBAAa;AACb;GACF,KAAK;AACHQ,cAAU,KAAK;AACfP,gBAAY;AACZ;;IAGN;EAACL;EAASC;EAAYC;EAAWC;EAAQC;EAAWC;EACtD,CAAC;AAID,KAAI,EAFeR,UAAU,CAACc,SAG5B;MAAI,CAACD,YACH,QAAO;;CAIX,IAAIS,WACF,oBAAC;EAAcV;YACb,oBAAC;GACC,SAAS,CAAC,CAACZ;GACX,iBAAiBa;GACjB,UAAUJ;GACV,eAAeU;cAEb,EAAEC,OAAAA,SAAOG,SAASC,gBAAgB;AAClC,WACE,oBAAC,sBAAsB;KACrB,OAAO,EAAEC,iBAAiBL,SAAwB;eAEjDxC,SAAS8C,IACR3B,WACC4B,UACCA,SACA9C,aACE8C,OACA;MACE3B,QAAQuB;MACRE,iBAAiBL;MAQjB,6BAA6BI,aAAaI;MAC3C,CAEP,CAAC;MAC8B;;IAGpB;GAEtB;AAaD,QAAOxC,aACL,oBAAC,gCACC,oBAAC,mBAAmB;EAAS,OAAO;YACjCkC;GAC0B,GACV,EACrBrB,aAAaiB,QAAQW,SAASC,KAC/B;;AAGH,IAAIC,WAAWjD,WAAW4B,QAAQ;AAElCqB,SAASC,cAAc"}