@cube-dev/ui-kit 0.187.2 → 0.189.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (683) hide show
  1. package/README.md +4 -0
  2. package/dist/CHANGELOG.md +47 -0
  3. package/dist/README.md +4 -0
  4. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  5. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  6. package/dist/_internal/hooks/use-event.js +1 -1
  7. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  8. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  9. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  10. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  11. package/dist/_internal/hooks/use-warn.js +1 -1
  12. package/dist/components/Block.js +1 -1
  13. package/dist/components/CollectionItem.js +1 -1
  14. package/dist/components/GlobalStyles.js +3 -6
  15. package/dist/components/GlobalStyles.js.map +1 -1
  16. package/dist/components/GridProvider.js +1 -1
  17. package/dist/components/HiddenInput.js +1 -1
  18. package/dist/components/Root.js +1 -1
  19. package/dist/components/actions/Action/Action.d.ts +4 -0
  20. package/dist/components/actions/Action/Action.js +1 -1
  21. package/dist/components/actions/Action/Action.js.map +1 -1
  22. package/dist/components/actions/Banner/Banner.js +1 -1
  23. package/dist/components/actions/Button/Button.js +2 -2
  24. package/dist/components/actions/Button/Button.js.map +1 -1
  25. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  26. package/dist/components/actions/ButtonSplit/ButtonSplit.js +40 -19
  27. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  28. package/dist/components/actions/ButtonSplit/context.js +1 -1
  29. package/dist/components/actions/CommandMenu/CommandMenu.js +4 -7
  30. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  31. package/dist/components/actions/CommandMenu/styled.js +1 -1
  32. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  33. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  34. package/dist/components/actions/ItemActionContext.js +1 -1
  35. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  36. package/dist/components/actions/ItemActionsWrapper.js.map +1 -1
  37. package/dist/components/actions/ItemButton/ItemButton.js +3 -3
  38. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  39. package/dist/components/actions/Link/Link.js +1 -1
  40. package/dist/components/actions/Menu/Menu.js +1 -1
  41. package/dist/components/actions/Menu/MenuItem.js +1 -1
  42. package/dist/components/actions/Menu/MenuSection.js +7 -5
  43. package/dist/components/actions/Menu/MenuSection.js.map +1 -1
  44. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  45. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  46. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  47. package/dist/components/actions/Menu/context.js +1 -1
  48. package/dist/components/actions/Menu/styled.js +4 -6
  49. package/dist/components/actions/Menu/styled.js.map +1 -1
  50. package/dist/components/actions/actions-run.js +1 -1
  51. package/dist/components/actions/index.js +1 -1
  52. package/dist/components/actions/use-action.d.ts +4 -0
  53. package/dist/components/actions/use-action.js +6 -1
  54. package/dist/components/actions/use-action.js.map +1 -1
  55. package/dist/components/actions/use-anchored-menu.js +1 -1
  56. package/dist/components/actions/use-context-menu.js +1 -1
  57. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  58. package/dist/components/content/Alert/Alert.js +1 -1
  59. package/dist/components/content/Alert/Alert.js.map +1 -1
  60. package/dist/components/content/Alert/use-alert.js +1 -1
  61. package/dist/components/content/Avatar/Avatar.js +1 -1
  62. package/dist/components/content/Badge/Badge.js +1 -1
  63. package/dist/components/content/Badge/Badge.js.map +1 -1
  64. package/dist/components/content/Card/Card.js +1 -1
  65. package/dist/components/content/Content.js +1 -1
  66. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  67. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  68. package/dist/components/content/Disclosure/Disclosure.js +53 -78
  69. package/dist/components/content/Disclosure/Disclosure.js.map +1 -1
  70. package/dist/components/content/Divider.js +1 -1
  71. package/dist/components/content/Footer.js +1 -1
  72. package/dist/components/content/Header.js +1 -1
  73. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  74. package/dist/components/content/InfoBadge/InfoBadge.d.ts +7 -1
  75. package/dist/components/content/InfoBadge/InfoBadge.js +6 -1
  76. package/dist/components/content/InfoBadge/InfoBadge.js.map +1 -1
  77. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  78. package/dist/components/content/Item/Item.js +11 -10
  79. package/dist/components/content/Item/Item.js.map +1 -1
  80. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  81. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  82. package/dist/components/content/Layout/GridLayout.js +1 -1
  83. package/dist/components/content/Layout/Layout.js +1 -1
  84. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  85. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  86. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  87. package/dist/components/content/Layout/LayoutContent.js +1 -1
  88. package/dist/components/content/Layout/LayoutContext.js +1 -1
  89. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  90. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  91. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  92. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  93. package/dist/components/content/Layout/LayoutPane.js +1 -1
  94. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  95. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  96. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  97. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  98. package/dist/components/content/Layout/index.js +1 -1
  99. package/dist/components/content/Layout/utils.js +1 -1
  100. package/dist/components/content/Paragraph.js +1 -1
  101. package/dist/components/content/Placeholder/Placeholder.js +13 -22
  102. package/dist/components/content/Placeholder/Placeholder.js.map +1 -1
  103. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  104. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  105. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  106. package/dist/components/content/Result/Result.d.ts +34 -4
  107. package/dist/components/content/Result/Result.js +199 -95
  108. package/dist/components/content/Result/Result.js.map +1 -1
  109. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  110. package/dist/components/content/Tag/Tag.js +3 -5
  111. package/dist/components/content/Tag/Tag.js.map +1 -1
  112. package/dist/components/content/Text.d.ts +14 -14
  113. package/dist/components/content/Text.js +1 -1
  114. package/dist/components/content/TextItem/TextItem.js +1 -1
  115. package/dist/components/content/Title.d.ts +2 -0
  116. package/dist/components/content/Title.js +1 -1
  117. package/dist/components/content/Title.js.map +1 -1
  118. package/dist/components/content/Tree/Tree.js +1 -1
  119. package/dist/components/content/Tree/TreeNode.js +1 -1
  120. package/dist/components/content/Tree/styled.js +1 -1
  121. package/dist/components/content/Tree/styled.js.map +1 -1
  122. package/dist/components/content/Tree/tree-index.js +1 -1
  123. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  124. package/dist/components/content/Tree/use-load-data.js +1 -1
  125. package/dist/components/content/highlightText.js +1 -1
  126. package/dist/components/content/use-auto-tooltip.js +1 -1
  127. package/dist/components/data/DataTable/DataTable.js +33 -10
  128. package/dist/components/data/DataTable/DataTable.js.map +1 -1
  129. package/dist/components/data/DataTable/types.d.ts +3 -1
  130. package/dist/components/data/ItemTable/ItemTable.js +3 -6
  131. package/dist/components/data/ItemTable/ItemTable.js.map +1 -1
  132. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  133. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  134. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  135. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  136. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  137. package/dist/components/data/TableBase/RowCollection.js +1 -1
  138. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  139. package/dist/components/data/TableBase/TableRow.js +1 -1
  140. package/dist/components/data/TableBase/TableView.js +9 -7
  141. package/dist/components/data/TableBase/TableView.js.map +1 -1
  142. package/dist/components/data/TableBase/column-menu.js +1 -1
  143. package/dist/components/data/TableBase/column-styles.js +82 -0
  144. package/dist/components/data/TableBase/column-styles.js.map +1 -0
  145. package/dist/components/data/TableBase/column-tint.js +1 -1
  146. package/dist/components/data/TableBase/row-menu.js +1 -1
  147. package/dist/components/data/TableBase/styled.js +8 -10
  148. package/dist/components/data/TableBase/styled.js.map +1 -1
  149. package/dist/components/data/TableBase/table-tree.js +1 -1
  150. package/dist/components/data/TableBase/types.d.ts +11 -0
  151. package/dist/components/data/TableBase/types.js +1 -1
  152. package/dist/components/data/TableBase/types.js.map +1 -1
  153. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  154. package/dist/components/data/TableBase/use-column-order.js +1 -1
  155. package/dist/components/data/TableBase/use-container-width.js +1 -1
  156. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  157. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  158. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  159. package/dist/components/data/TableBase/use-table-search.js +1 -1
  160. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  161. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  162. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  163. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  164. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  165. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  166. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  167. package/dist/components/fields/Checkbox/context.js +1 -1
  168. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  169. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  170. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  171. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  172. package/dist/components/fields/ComboBox/ComboBox.d.ts +9 -4
  173. package/dist/components/fields/ComboBox/ComboBox.js +2 -1
  174. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  175. package/dist/components/fields/CommandTextArea/CommandTextArea.js +3 -5
  176. package/dist/components/fields/CommandTextArea/CommandTextArea.js.map +1 -1
  177. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  178. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  179. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  180. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  181. package/dist/components/fields/DatePicker/DateInputBase.js.map +1 -1
  182. package/dist/components/fields/DatePicker/DatePicker.js +119 -129
  183. package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
  184. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  185. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  186. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  187. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  188. package/dist/components/fields/DatePicker/DateRangePicker.js +128 -138
  189. package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
  190. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +321 -331
  191. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
  192. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  193. package/dist/components/fields/DatePicker/PeriodPicker.js +163 -179
  194. package/dist/components/fields/DatePicker/PeriodPicker.js.map +1 -1
  195. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  196. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  197. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  198. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  199. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  200. package/dist/components/fields/DatePicker/period.js +1 -1
  201. package/dist/components/fields/DatePicker/props.js +1 -1
  202. package/dist/components/fields/DatePicker/utils.js +1 -1
  203. package/dist/components/fields/FileInput/FileInput.js +1 -1
  204. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  205. package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
  206. package/dist/components/fields/FilterPicker/FilterPicker.js +5 -6
  207. package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
  208. package/dist/components/fields/Input/Input.js +1 -1
  209. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  210. package/dist/components/fields/ListBox/ListBox.js +1 -1
  211. package/dist/components/fields/ListBox/optionId.js +1 -1
  212. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +46 -44
  213. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  214. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  215. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  216. package/dist/components/fields/NumberInput/NumberInput.d.ts +2 -2
  217. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  218. package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
  219. package/dist/components/fields/NumberInput/StepButton.js +3 -3
  220. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  221. package/dist/components/fields/PasswordInput/PasswordInput.d.ts +2 -1
  222. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  223. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  224. package/dist/components/fields/Picker/Picker.js +5 -6
  225. package/dist/components/fields/Picker/Picker.js.map +1 -1
  226. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  227. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  228. package/dist/components/fields/RadioGroup/context.js +1 -1
  229. package/dist/components/fields/SearchComboBox/SearchComboBox.d.ts +9 -4
  230. package/dist/components/fields/SearchComboBox/SearchComboBox.js +2 -1
  231. package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
  232. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  233. package/dist/components/fields/Select/Select.js +68 -66
  234. package/dist/components/fields/Select/Select.js.map +1 -1
  235. package/dist/components/fields/Slider/Gradation.js +1 -1
  236. package/dist/components/fields/Slider/HueSlider.js +33 -43
  237. package/dist/components/fields/Slider/HueSlider.js.map +1 -1
  238. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  239. package/dist/components/fields/Slider/Slider.js +1 -1
  240. package/dist/components/fields/Slider/SliderBase.js +1 -1
  241. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  242. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  243. package/dist/components/fields/Slider/elements.js +1 -1
  244. package/dist/components/fields/Slider/index.js +1 -1
  245. package/dist/components/fields/Switch/Switch.js +1 -1
  246. package/dist/components/fields/TagInput/TagInput.js +170 -158
  247. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  248. package/dist/components/fields/TagInput/TagList.js +1 -1
  249. package/dist/components/fields/TextArea/TextArea.js +1 -1
  250. package/dist/components/fields/TextInput/TextInput.d.ts +2 -2
  251. package/dist/components/fields/TextInput/TextInput.js +1 -1
  252. package/dist/components/fields/TextInput/TextInput.js.map +1 -1
  253. package/dist/components/fields/TextInput/TextInputBase.d.ts +2 -2
  254. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  255. package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
  256. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  257. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  258. package/dist/components/fields/TriggerActions.js +1 -1
  259. package/dist/components/fields/color/ColorPanel.js +1 -1
  260. package/dist/components/fields/color/channels.js +1 -1
  261. package/dist/components/fields/color/color.js +1 -1
  262. package/dist/components/fields/color/context.js +1 -1
  263. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  264. package/dist/components/form/Form/Field.js +1 -1
  265. package/dist/components/form/Form/Form.js +1 -1
  266. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  267. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  268. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  269. package/dist/components/form/Form/SubmitError.js +1 -1
  270. package/dist/components/form/Form/backend.js +1 -1
  271. package/dist/components/form/Form/index.js +1 -1
  272. package/dist/components/form/Form/modern/actions.js +1 -1
  273. package/dist/components/form/Form/modern/context.js +1 -1
  274. package/dist/components/form/Form/modern/controller.js +1 -1
  275. package/dist/components/form/Form/modern/field-binding.js +1 -1
  276. package/dist/components/form/Form/modern/field.js +1 -1
  277. package/dist/components/form/Form/modern/react.js +1 -1
  278. package/dist/components/form/Form/modern/store.js +1 -1
  279. package/dist/components/form/Form/modern/validation.js +1 -1
  280. package/dist/components/form/Form/modern/values.js +1 -1
  281. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  282. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  283. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  284. package/dist/components/form/Form/use-field/use-field.js +1 -1
  285. package/dist/components/form/Form/use-form.js +1 -1
  286. package/dist/components/form/Form/validation.js +1 -1
  287. package/dist/components/form/Label.js +1 -1
  288. package/dist/components/form/legacy-tooltip.js +1 -1
  289. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  290. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  291. package/dist/components/form/validation/use-validation-props.js +1 -1
  292. package/dist/components/form/wrapper.js +1 -1
  293. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  294. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  295. package/dist/components/layout/Board/Board.js +2 -2
  296. package/dist/components/layout/Board/Board.js.map +1 -1
  297. package/dist/components/layout/Board/BoardProvider.js +1 -1
  298. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  299. package/dist/components/layout/Board/Widget.js +1 -1
  300. package/dist/components/layout/Board/WidgetHost.js +4 -4
  301. package/dist/components/layout/Board/WidgetHost.js.map +1 -1
  302. package/dist/components/layout/Board/board-context.js +1 -1
  303. package/dist/components/layout/Board/board-store.js +1 -1
  304. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  305. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  306. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  307. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  308. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  309. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  310. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  311. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  312. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  313. package/dist/components/layout/Board/index.js +1 -1
  314. package/dist/components/layout/Board/responsive-utils.js +1 -1
  315. package/dist/components/layout/Board/use-board-layout.js +1 -1
  316. package/dist/components/layout/Board/use-board-registry.js +1 -1
  317. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  318. package/dist/components/layout/Board/use-board-selection.js +1 -1
  319. package/dist/components/layout/Flex.js +1 -1
  320. package/dist/components/layout/Flow.js +1 -1
  321. package/dist/components/layout/Grid.js +1 -1
  322. package/dist/components/layout/Panel.js +1 -1
  323. package/dist/components/layout/Prefix.js +1 -1
  324. package/dist/components/layout/ResizablePanel.js +1 -1
  325. package/dist/components/layout/Space.js +1 -1
  326. package/dist/components/layout/Suffix.js +1 -1
  327. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  328. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  329. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  330. package/dist/components/navigation/Tabs/TabButton.js +470 -407
  331. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  332. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  333. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  334. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  335. package/dist/components/navigation/Tabs/Tabs.js +22 -4
  336. package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
  337. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  338. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  339. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  340. package/dist/components/navigation/Tabs/styled.js +1 -1
  341. package/dist/components/navigation/Tabs/types.d.ts +1 -1
  342. package/dist/components/navigation/Tabs/types.js +1 -1
  343. package/dist/components/navigation/Tabs/types.js.map +1 -1
  344. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  345. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  346. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  347. package/dist/components/other/Calendar/Calendar.js +1 -1
  348. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  349. package/dist/components/other/Calendar/CalendarCell.js.map +1 -1
  350. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  351. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  352. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  353. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  354. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  355. package/dist/components/other/Calendar/PeriodGrid.js.map +1 -1
  356. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  357. package/dist/components/other/Calendar/styled.js +1 -1
  358. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  359. package/dist/components/other/CubeLogo/CubeLogo.js.map +1 -1
  360. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  361. package/dist/components/overlays/AlertDialog/AlertDialog.js +78 -116
  362. package/dist/components/overlays/AlertDialog/AlertDialog.js.map +1 -1
  363. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.d.ts +57 -50
  364. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +52 -48
  365. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
  366. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +99 -104
  367. package/dist/components/overlays/AlertDialog/AlertDialogZone.js.map +1 -1
  368. package/dist/components/overlays/AlertDialog/index.d.ts +2 -1
  369. package/dist/components/overlays/Dialog/Dialog.js +2 -2
  370. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  371. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  372. package/dist/components/overlays/Dialog/DialogForm.d.ts +2 -2
  373. package/dist/components/overlays/Dialog/DialogForm.js +4 -5
  374. package/dist/components/overlays/Dialog/DialogForm.js.map +1 -1
  375. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  376. package/dist/components/overlays/Dialog/ModernDialogForm.js +5 -6
  377. package/dist/components/overlays/Dialog/ModernDialogForm.js.map +1 -1
  378. package/dist/components/overlays/Dialog/context.js +1 -1
  379. package/dist/components/overlays/Dialog/default-button-text.js +30 -0
  380. package/dist/components/overlays/Dialog/default-button-text.js.map +1 -0
  381. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  382. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  383. package/dist/components/overlays/Modal/Modal.js +1 -1
  384. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  385. package/dist/components/overlays/Modal/Overlay.js +1 -1
  386. package/dist/components/overlays/Modal/Popover.js +2 -2
  387. package/dist/components/overlays/Modal/Popover.js.map +1 -1
  388. package/dist/components/overlays/Modal/Tray.js +1 -1
  389. package/dist/components/overlays/Modal/Tray.js.map +1 -1
  390. package/dist/components/overlays/Modal/Underlay.js +1 -1
  391. package/dist/components/overlays/Notifications/Notification.js +1 -1
  392. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  393. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  394. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  395. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  396. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  397. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  398. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  399. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  400. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  401. package/dist/components/overlays/Notifications/index.js +1 -1
  402. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  403. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  404. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  405. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  406. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  407. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  408. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  409. package/dist/components/overlays/Toast/index.js +1 -1
  410. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  411. package/dist/components/overlays/Toast/useToast.js +1 -1
  412. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  413. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  414. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  415. package/dist/components/overlays/Tooltip/context.js +1 -1
  416. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  417. package/dist/components/portal/Portal.js +1 -1
  418. package/dist/components/portal/PortalProvider.js +1 -1
  419. package/dist/components/portal/usePortal.js +1 -1
  420. package/dist/components/shared/DraggableCollection.js +1 -1
  421. package/dist/components/shared/InvalidIcon.js +1 -1
  422. package/dist/components/shared/ValidIcon.js +1 -1
  423. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  424. package/dist/components/status/Spin/Cube.js +1 -1
  425. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  426. package/dist/components/status/Spin/Spin.js +1 -1
  427. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  428. package/dist/data/item-themes.js +1 -1
  429. package/dist/data/themes.js +1 -1
  430. package/dist/eslint-plugin/defaults.generated.js +18 -2
  431. package/dist/eslint-plugin/defaults.generated.js.map +1 -1
  432. package/dist/eslint-plugin/index.js +1 -1
  433. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  434. package/dist/i18n/I18nProvider.js +1 -1
  435. package/dist/i18n/createFormatter.js +1 -1
  436. package/dist/i18n/index.js +1 -1
  437. package/dist/i18n/instance.js +1 -1
  438. package/dist/i18n/locales/de-DE/uikit.js +4 -1
  439. package/dist/i18n/locales/en-US/uikit.js +4 -1
  440. package/dist/i18n/locales/en-US/uikit.json.d.ts +3 -0
  441. package/dist/i18n/locales/es-ES/uikit.js +4 -1
  442. package/dist/i18n/locales/es-MX/uikit.js +4 -1
  443. package/dist/i18n/locales/fr-FR/uikit.js +4 -1
  444. package/dist/i18n/locales/it-IT/uikit.js +4 -1
  445. package/dist/i18n/locales/ja-JP/uikit.js +4 -1
  446. package/dist/i18n/locales/nb-NO/uikit.js +4 -1
  447. package/dist/i18n/locales/pt-BR/uikit.js +4 -1
  448. package/dist/i18n/locales/pt-PT/uikit.js +4 -1
  449. package/dist/i18n/locales/sv-SE/uikit.js +4 -1
  450. package/dist/i18n/locales/vi-VN/uikit.js +4 -1
  451. package/dist/i18n/locales.js +1 -1
  452. package/dist/i18n/useFormatter.js +1 -1
  453. package/dist/i18n/useI18n.js +1 -1
  454. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  455. package/dist/icons/AdjustmentsIcon.js +1 -1
  456. package/dist/icons/AiIcon.js +1 -1
  457. package/dist/icons/AreaChartIcon.js +1 -1
  458. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  459. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  460. package/dist/icons/BackwardIcon.js +1 -1
  461. package/dist/icons/BarChartIcon.js +1 -1
  462. package/dist/icons/BellFilledIcon.js +1 -1
  463. package/dist/icons/BellIcon.js +1 -1
  464. package/dist/icons/BooleanIcon.js +1 -1
  465. package/dist/icons/CalendarEditIcon.js +1 -1
  466. package/dist/icons/CalendarIcon.js +1 -1
  467. package/dist/icons/CaretDownIcon.js +1 -1
  468. package/dist/icons/CaretUpIcon.js +1 -1
  469. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  470. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  471. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  472. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  473. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  474. package/dist/icons/ChartBarLineIcon.js +1 -1
  475. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  476. package/dist/icons/ChartBarStackedIcon.js +1 -1
  477. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  478. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  479. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  480. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  481. package/dist/icons/ChartBubbleIcon.js +1 -1
  482. package/dist/icons/ChartDonut2Icon.js +1 -1
  483. package/dist/icons/ChartFunnelIcon.js +1 -1
  484. package/dist/icons/ChartHeatmapIcon.js +1 -1
  485. package/dist/icons/ChartKPIIcon.js +1 -1
  486. package/dist/icons/ChartPie2Icon.js +1 -1
  487. package/dist/icons/ChartScatterIcon.js +1 -1
  488. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  489. package/dist/icons/CheckCircleIcon.js +1 -1
  490. package/dist/icons/CheckIcon.js +1 -1
  491. package/dist/icons/CircleFilledIcon.js +1 -1
  492. package/dist/icons/ClearIcon.js +1 -1
  493. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  494. package/dist/icons/CloseCircleIcon.js +1 -1
  495. package/dist/icons/CloseIcon.js +1 -1
  496. package/dist/icons/CodeIcon.js +1 -1
  497. package/dist/icons/ColumnTotalIcon.js +1 -1
  498. package/dist/icons/CopyIcon.js +1 -1
  499. package/dist/icons/CountIcon.js +1 -1
  500. package/dist/icons/CubeIcon.js +1 -1
  501. package/dist/icons/CubePauseIcon.js +1 -1
  502. package/dist/icons/CubePlayIcon.js +1 -1
  503. package/dist/icons/CurrencyDollarIcon.js +1 -1
  504. package/dist/icons/DangerIcon.js +1 -1
  505. package/dist/icons/DashboardIcon.js +1 -1
  506. package/dist/icons/DatabaseIcon.js +1 -1
  507. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  508. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  509. package/dist/icons/DirectionIcon.js +1 -1
  510. package/dist/icons/DonutIcon.js +1 -1
  511. package/dist/icons/DownIcon.js +1 -1
  512. package/dist/icons/EditIcon.js +1 -1
  513. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  514. package/dist/icons/ExclamationCircleIcon.js +1 -1
  515. package/dist/icons/ExclamationIcon.js +1 -1
  516. package/dist/icons/EyeIcon.js +1 -1
  517. package/dist/icons/EyeInvisibleIcon.js +1 -1
  518. package/dist/icons/FilterIcon.js +1 -1
  519. package/dist/icons/FolderFilledIcon.js +1 -1
  520. package/dist/icons/FolderIcon.js +1 -1
  521. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  522. package/dist/icons/FolderOpenIcon.js +1 -1
  523. package/dist/icons/ForwardIcon.js +1 -1
  524. package/dist/icons/GripVerticalIcon.js +1 -1
  525. package/dist/icons/HierarchyIcon.js +1 -1
  526. package/dist/icons/HierarchyOpenIcon.js +1 -1
  527. package/dist/icons/Icon.js +1 -1
  528. package/dist/icons/InfoCircleIcon.js +1 -1
  529. package/dist/icons/InfoIcon.js +1 -1
  530. package/dist/icons/KeyIcon.js +1 -1
  531. package/dist/icons/LeftIcon.js +1 -1
  532. package/dist/icons/LineChartIcon.js +1 -1
  533. package/dist/icons/LoadingIcon.js +1 -1
  534. package/dist/icons/LockFilledIcon.js +1 -1
  535. package/dist/icons/LockIcon.js +1 -1
  536. package/dist/icons/MoreIcon.js +1 -1
  537. package/dist/icons/NotAllowedIcon.js +1 -1
  538. package/dist/icons/Number123Icon.js +1 -1
  539. package/dist/icons/NumberIcon.js +1 -1
  540. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  541. package/dist/icons/PauseCircleIcon.js +1 -1
  542. package/dist/icons/PauseIcon.js +1 -1
  543. package/dist/icons/PercentageIcon.js +1 -1
  544. package/dist/icons/PieChartIcon.js +1 -1
  545. package/dist/icons/PipetteIcon.js +1 -1
  546. package/dist/icons/PlayCircleIcon.js +1 -1
  547. package/dist/icons/PlayIcon.js +1 -1
  548. package/dist/icons/PlusIcon.js +1 -1
  549. package/dist/icons/ProgressBarIcon.js +1 -1
  550. package/dist/icons/ReloadIcon.js +1 -1
  551. package/dist/icons/ReportIcon.js +1 -1
  552. package/dist/icons/ReturnIcon.js +1 -1
  553. package/dist/icons/RightIcon.js +1 -1
  554. package/dist/icons/RowTotalsIcon.js +1 -1
  555. package/dist/icons/SchemeIcon.js +1 -1
  556. package/dist/icons/SearchIcon.js +1 -1
  557. package/dist/icons/SemanticQueryIcon.js +1 -1
  558. package/dist/icons/SettingsIcon.js +1 -1
  559. package/dist/icons/ShieldFilledIcon.js +1 -1
  560. package/dist/icons/ShieldIcon.js +1 -1
  561. package/dist/icons/SlashIcon.js +1 -1
  562. package/dist/icons/SparklesIcon.js +1 -1
  563. package/dist/icons/SqlIcon.js +1 -1
  564. package/dist/icons/StatsIcon.js +1 -1
  565. package/dist/icons/StopIcon.js +1 -1
  566. package/dist/icons/StringIcon.js +1 -1
  567. package/dist/icons/SubtotalsIcon.js +1 -1
  568. package/dist/icons/SwitchIcon.js +1 -1
  569. package/dist/icons/TableIcon.js +1 -1
  570. package/dist/icons/ThumbsDownIcon.js +1 -1
  571. package/dist/icons/ThumbsUpIcon.js +1 -1
  572. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  573. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  574. package/dist/icons/ThunderboltIcon.js +1 -1
  575. package/dist/icons/TimeIcon.js +1 -1
  576. package/dist/icons/TrashIcon.js +1 -1
  577. package/dist/icons/UnlockIcon.js +1 -1
  578. package/dist/icons/UpIcon.js +1 -1
  579. package/dist/icons/UserGroupIcon.js +1 -1
  580. package/dist/icons/UserIcon.js +1 -1
  581. package/dist/icons/UserLockIcon.js +1 -1
  582. package/dist/icons/ViewIcon.js +1 -1
  583. package/dist/icons/WarningFilledIcon.js +1 -1
  584. package/dist/icons/WarningIcon.js +1 -1
  585. package/dist/icons/wrap-icon.js +1 -1
  586. package/dist/index.d.ts +5 -4
  587. package/dist/index.js +3 -3
  588. package/dist/index.js.map +1 -1
  589. package/dist/probe/canonicalize.js +1 -1
  590. package/dist/probe/css.js +1 -1
  591. package/dist/probe/index.js +1 -1
  592. package/dist/provider.js +1 -1
  593. package/dist/providers/TrackingProvider.js +1 -1
  594. package/dist/providers/navigationAdapter.default.js +1 -1
  595. package/dist/shared/form.d.ts +29 -1
  596. package/dist/shared/index.d.ts +1 -1
  597. package/dist/tokens/all-tokens.js +1 -1
  598. package/dist/tokens/base.js +1 -1
  599. package/dist/tokens/color-seed.js +1 -1
  600. package/dist/tokens/color-theme.js +1 -1
  601. package/dist/tokens/colors.js +1 -1
  602. package/dist/tokens/layout.js +1 -1
  603. package/dist/tokens/lazy-styles.js +1 -1
  604. package/dist/tokens/legacy-color.js +1 -1
  605. package/dist/tokens/palette-config.js +1 -1
  606. package/dist/tokens/palette.js +1 -1
  607. package/dist/tokens/resolve.js +1 -1
  608. package/dist/tokens/shadows.js +1 -1
  609. package/dist/tokens/sizes.js +1 -1
  610. package/dist/tokens/spacing.js +1 -1
  611. package/dist/tokens/typography.js +1 -1
  612. package/dist/utils/ResizeSensor.js +1 -1
  613. package/dist/utils/colors.js +1 -1
  614. package/dist/utils/dotize.js +1 -1
  615. package/dist/utils/is-dev-env.js +1 -1
  616. package/dist/utils/modules.js +1 -1
  617. package/dist/utils/promise.js +1 -1
  618. package/dist/utils/raf.js +1 -1
  619. package/dist/utils/random.js +1 -1
  620. package/dist/utils/range.js +1 -1
  621. package/dist/utils/react/RenderCache.js +1 -1
  622. package/dist/utils/react/Slots.js +1 -1
  623. package/dist/utils/react/chain.js +1 -1
  624. package/dist/utils/react/disabledProps.js +1 -1
  625. package/dist/utils/react/escapePropagation.js +1 -1
  626. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  627. package/dist/utils/react/index.js +1 -1
  628. package/dist/utils/react/interactions.js +1 -1
  629. package/dist/utils/react/isTextOnly.js +1 -1
  630. package/dist/utils/react/mapProps.js +1 -1
  631. package/dist/utils/react/mergeProps.js +1 -1
  632. package/dist/utils/react/nullableValue.js +1 -1
  633. package/dist/utils/react/programmaticFocus.js +1 -1
  634. package/dist/utils/react/resolveIcon.js +1 -1
  635. package/dist/utils/react/sharedStore.js +1 -1
  636. package/dist/utils/react/useBufferedValue.js +1 -1
  637. package/dist/utils/react/useCombinedRefs.js +1 -1
  638. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  639. package/dist/utils/react/useEventBus.js +1 -1
  640. package/dist/utils/react/useId.js +1 -1
  641. package/dist/utils/react/useIsDarwin.js +1 -1
  642. package/dist/utils/react/useKeySymbols.js +1 -1
  643. package/dist/utils/react/useLayoutEffect.js +1 -1
  644. package/dist/utils/react/useLocalStorage.js +1 -1
  645. package/dist/utils/react/useMergeStyles.js +1 -1
  646. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  647. package/dist/utils/react/usePopoverSync.js +1 -1
  648. package/dist/utils/react/useQaProps.js +1 -1
  649. package/dist/utils/react/useScheme.js +1 -1
  650. package/dist/utils/react/useViewportSize.js +1 -1
  651. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  652. package/dist/utils/selection.js +1 -1
  653. package/dist/utils/styles.js +51 -6
  654. package/dist/utils/styles.js.map +1 -1
  655. package/dist/utils/tree.js +1 -1
  656. package/dist/utils/warnings.js +1 -1
  657. package/dist/version.js +3 -3
  658. package/docs/components/actions/Action.md +1 -1
  659. package/docs/components/actions/Button.md +4 -2
  660. package/docs/components/actions/ItemButton.md +1 -0
  661. package/docs/components/actions/Link.md +1 -1
  662. package/docs/components/content/InfoBadge.md +1 -1
  663. package/docs/components/content/Item.md +1 -1
  664. package/docs/components/content/Result.md +202 -12
  665. package/docs/components/content/Title.md +1 -0
  666. package/docs/components/data/DataTable.md +18 -0
  667. package/docs/components/data/ItemTable.md +3 -1
  668. package/docs/components/fields/ComboBox.md +49 -1
  669. package/docs/components/fields/FilterPicker.md +3 -3
  670. package/docs/components/fields/NumberInput.md +27 -0
  671. package/docs/components/fields/PasswordInput.md +24 -0
  672. package/docs/components/fields/Picker.md +3 -3
  673. package/docs/components/fields/SearchComboBox.md +3 -1
  674. package/docs/components/fields/TagInput.md +4 -2
  675. package/docs/components/fields/TextArea.md +24 -0
  676. package/docs/components/fields/TextInput.md +24 -0
  677. package/docs/components/navigation/Tabs.md +8 -3
  678. package/docs/components/overlays/AlertDialog.md +100 -3
  679. package/docs/components/overlays/DialogForm.md +3 -3
  680. package/docs/components/overlays/UseDialogContainer.md +4 -7
  681. package/docs/tasty/dsl.md +28 -6
  682. package/docs/tasty/styles.md +20 -0
  683. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | Cube Dev Team */
2
2
  //#region src/components/navigation/Tabs/types.ts
3
3
  /**
4
4
  * Size mapping for radio type tabs.
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["BaseProps","OuterStyleProps","Styles","ReactNode","CubeItemActionProps","CubeMenuProps","CubeItemProps","TabType","TabPlacement","TabsActionPosition","TabSize","RADIO_SIZE_MAP","Record","medium","large","TabContextMenu","PanelBehaviorProps","prerender","keepMounted","QAProps","qa","qaVal","OmittedItemProps","TabStyleProps","Omit","size","autoHideActions","CacheKeyValue","CubeTabsProps","activeKey","defaultActiveKey","type","placement","label","prefix","suffix","onChange","key","onDelete","onTitleChange","newTitle","isEditable","menu","menuTriggerProps","Partial","menuProps","contextMenu","onAction","action","tabKey","styles","children","renderPanel","panelCacheKeys","isReorderable","keyOrder","onReorder","newOrder","showTabPicker","showScrollArrows","tabPickerPosition","scrollArrowsPosition","hideTabListScroll","tabListPadding","barStyles","tabListStyles","prefixStyles","suffixStyles","CubeTabProps","id","title","isDisabled","actions","CubeTabPanelProps","CubeTabListProps","ParsedTab","content","ParsedPanel"],"sources":["../../../../src/components/navigation/Tabs/types.ts"],"sourcesContent":["import type { BaseProps, OuterStyleProps, Styles } from '@tenphi/tasty';\nimport type { ReactNode } from 'react';\nimport type { CubeItemActionProps } from '../../actions/ItemAction';\nimport type { CubeMenuProps } from '../../actions/Menu';\nimport type { CubeItemProps } from '../../content/Item';\n\n// =============================================================================\n// Core Types\n// =============================================================================\n\n/** Visual appearance type for tabs */\nexport type TabType = 'default' | 'narrow' | 'file' | 'radio';\n\n/**\n * Where the tab bar sits relative to its panels.\n * - `'top'` / `'bottom'` keep the bar horizontal.\n * - `'left'` / `'right'` switch it to a vertical strip.\n */\nexport type TabPlacement = 'top' | 'bottom' | 'left' | 'right';\n\n/** Position for TabPicker and scroll arrows */\nexport type TabsActionPosition = 'prefix' | 'suffix';\n\n/**\n * Tab size options.\n * Radio type only supports 'medium' | 'large' (mapped to smaller Item sizes).\n */\nexport type TabSize = 'xsmall' | 'small' | 'medium' | 'large';\n\n/**\n * Size mapping for radio type tabs.\n * API sizes mapped to Item button sizes:\n * medium (default) -> xsmall (32px total), large -> medium (40px total).\n */\nexport const RADIO_SIZE_MAP: Record<'medium' | 'large', TabSize> = {\n medium: 'xsmall',\n large: 'medium',\n};\n\n/** How the tab `menu` is exposed alongside or instead of the overflow trigger. */\nexport type TabContextMenu = boolean | 'context-only';\n\n// =============================================================================\n// Shared Props Interfaces\n// =============================================================================\n\n/** Common props for panel rendering behavior */\nexport interface PanelBehaviorProps {\n /** If true, panel is rendered but hidden when not active. */\n prerender?: boolean;\n /** If true, once visited the panel stays in DOM. */\n keepMounted?: boolean;\n}\n\n/** Common props for QA attributes */\nexport interface QAProps {\n /** QA selector attribute. */\n qa?: string;\n /** Additional QA value attribute. */\n qaVal?: string;\n}\n\n// =============================================================================\n// Tab Style Props\n// =============================================================================\n\n/** Props from CubeItemProps that don't apply to Tab */\ntype OmittedItemProps =\n | 'id' // Tab has its own id as Key type\n | 'type' // Type is decided at the Tabs level, never per-tab\n | 'size' // Tab has its own TabSize\n | 'theme' // Tabs have internal theming\n | 'shape' // Tabs have internal shape logic\n | 'description' // Tabs don't have descriptions\n | 'descriptionPlacement'\n | 'descriptionProps'\n | 'hotkeys' // Tabs have their own keyboard navigation\n | 'keyboardShortcutProps'\n | 'labelProps' // Tabs use title prop instead\n | 'labelRef'\n | 'level' // Tabs don't use heading levels\n | 'highlight' // Tabs don't use highlighting\n | 'highlightCaseSensitive'\n | 'highlightStyles'\n | 'variant' // Tabs have internal variant logic\n | 'htmlType' // Tab is always a button\n | 'isSelected' // Handled internally by state\n | 'preserveActionsSpace' // Set internally in TabButton\n | 'disableActionsFocus' // Not used in Tab\n | 'actions' // Tab has its own actions definition\n | 'autoHideActions' // Tab has its own autoHideActions\n | 'insideWrapper' // Internal Item wrapper prop\n | 'showActions' // Internal Item wrapper prop\n | 'skipActionsWidthTransition'; // Internal Item wrapper prop\n\n/** Common styling props for tabs - inherits style props from CubeItemProps */\nexport interface TabStyleProps extends Omit<CubeItemProps, OmittedItemProps> {\n /**\n * Tab size. Supports 'xsmall', 'small', 'medium', 'large'.\n * Radio type supports 'large' (default, 40px) and 'medium' (32px),\n * mapped to Item button sizes medium (32px) and xsmall (24px).\n */\n size?: TabSize;\n /** Whether to show actions only on hover. */\n autoHideActions?: boolean;\n}\n\n// =============================================================================\n// Component Props\n// =============================================================================\n\n/** Cache key type - primitives only for reliable comparison */\nexport type CacheKeyValue = string | number | boolean | null | undefined;\n\nexport interface CubeTabsProps\n extends BaseProps,\n OuterStyleProps,\n PanelBehaviorProps {\n /** Controlled active tab key. When provided, component is controlled. */\n activeKey?: string;\n /** Initial active tab key for uncontrolled mode. */\n defaultActiveKey?: string;\n /**\n * Visual appearance type for tabs.\n * - `default` - Standard tabs with selection indicator below (default)\n * - `narrow` - Same as default but with collapsed vertical padding on labels\n * - `file` - File-style tabs with border bottom highlight on selection, delimiter between tabs\n * - `radio` - Radio button style for tab selection\n * @default 'default'\n */\n type?: TabType;\n /**\n * Where the tab bar sits relative to its panels.\n * `'top'` / `'bottom'` keep the bar horizontal; `'left'` / `'right'`\n * switch it to a vertical strip. The selection indicator, scroll behavior,\n * fades, and per-type visuals all adapt automatically.\n * @default 'top'\n */\n placement?: TabPlacement;\n /**\n * Tab size. Supports 'xsmall', 'small', 'medium', 'large'.\n * Radio type supports 'large' (default, 40px) and 'medium' (32px),\n * mapped to Item button sizes medium (32px) and xsmall (24px).\n * @default 'medium'\n */\n size?: TabSize;\n /** Accessible label for the tab list. */\n label?: string;\n /** Content rendered before the tab list. */\n prefix?: ReactNode;\n /** Content rendered after the tab list. */\n suffix?: ReactNode;\n /** Callback when active tab changes. */\n onChange?: (key: string) => void;\n /** Callback when tab delete button is clicked. Presence enables delete buttons. */\n onDelete?: (key: string) => void;\n /** Callback when a tab title is changed. Enables title editing on tabs with isEditable. */\n onTitleChange?: (key: string, newTitle: string) => void;\n /** Whether to show tab actions only on hover. Can be overridden per-tab. */\n autoHideActions?: boolean;\n /**\n * Whether tabs are editable by default.\n * Can be overridden per-tab via Tab's isEditable prop.\n * @default false\n */\n isEditable?: boolean;\n /**\n * Default menu items for all tabs.\n * Can be overridden per-tab via Tab's menu prop.\n * Set to `null` on individual Tab to disable menu for that tab.\n */\n menu?: ReactNode;\n /**\n * Default props for the menu trigger button.\n * Can be overridden per-tab via Tab's menuTriggerProps prop.\n * @default { icon: <MoreIcon /> }\n */\n menuTriggerProps?: Partial<CubeItemActionProps>;\n /**\n * Default props passed to the Menu component.\n * Can be overridden per-tab via Tab's menuProps prop.\n */\n menuProps?: Partial<CubeMenuProps<object>>;\n /**\n * Context menu / overflow behavior for tab `menu` items.\n * - `false` (default) — overflow trigger only; no right-click menu\n * - `true` — overflow trigger and right-click menu\n * - `'context-only'` — right-click menu only; no overflow trigger. Inline close\n * (`onDelete`) shows even when `menu` is non-empty, like tabs without a menu.\n * Can be overridden per-tab via Tab's contextMenu prop.\n * @default false\n */\n contextMenu?: TabContextMenu;\n /**\n * Callback when a menu action is triggered on any tab.\n * Called with the action key and the tab key.\n * Tab-level onAction is called first, then this.\n */\n onAction?: (action: string, tabKey: string) => void;\n /** Custom tasty styles for the tab bar container. */\n styles?: Styles;\n /** QA selector attribute. */\n qa?: string;\n /** Tab components or Tabs.List with Tabs.Panel. */\n children?: ReactNode;\n /**\n * Functional content renderer for optimized lazy evaluation.\n * When provided, panel content is only evaluated for the active tab,\n * while inactive tabs use cached content.\n */\n renderPanel?: (key: string) => ReactNode;\n /**\n * Cache keys for individual panels. Enables caching for specified panels.\n */\n panelCacheKeys?: Record<string | number, CacheKeyValue>;\n /**\n * Enable drag-and-drop tab reordering.\n * When a tab picker is shown (`showTabPicker`), reordering is automatically\n * enabled in the picker dropdown as well.\n * @default false\n */\n isReorderable?: boolean;\n /**\n * Controlled order of tab keys.\n * When provided, tabs are displayed in this order.\n */\n keyOrder?: string[];\n /**\n * Callback when tabs are reordered via drag-and-drop.\n */\n onReorder?: (newOrder: string[]) => void;\n /**\n * Whether to show a tab picker dropdown in the suffix area.\n * - `true` - always show the tab picker\n * - `false` - never show the tab picker (default)\n * - `'auto'` - show only when tabs overflow (has horizontal scroll)\n * @default false\n */\n showTabPicker?: boolean | 'auto';\n /**\n * Whether to show scroll arrow buttons in the suffix area.\n * - `true` - always show scroll arrows\n * - `false` - never show scroll arrows (default)\n * - `'auto'` - show only when tabs overflow (has horizontal scroll)\n * @default false\n */\n showScrollArrows?: boolean | 'auto';\n /**\n * Position of the tab picker dropdown.\n * - `'prefix'` - render in the prefix slot (before tab list)\n * - `'suffix'` - render in the suffix slot (after tab list)\n * @default 'suffix'\n */\n tabPickerPosition?: TabsActionPosition;\n /**\n * Position of the scroll arrow buttons.\n * - `'prefix'` - render in the prefix slot (before tab list)\n * - `'suffix'` - render in the suffix slot (after tab list)\n * @default 'suffix'\n */\n scrollArrowsPosition?: TabsActionPosition;\n /**\n * Visually hide the custom horizontal scrollbar in the tab list\n * and skip its tracking logic. Does not affect tab picker, scroll arrows,\n * or fade indicators — only the tiny scrollbar visual.\n * @default false\n */\n hideTabListScroll?: boolean;\n /**\n * Inline padding for the tab list container.\n * Sets horizontal padding only (e.g., \"2x\" → padding: \"0 2x\").\n */\n tabListPadding?: string;\n /** Custom tasty styles for the tab bar (Bar sub-element). */\n barStyles?: Styles;\n /** Custom tasty styles for the TabList sub-element. */\n tabListStyles?: Styles;\n /** Custom tasty styles for the Prefix sub-element. */\n prefixStyles?: Styles;\n /** Custom tasty styles for the Suffix sub-element. */\n suffixStyles?: Styles;\n}\n\nexport interface CubeTabProps extends TabStyleProps, PanelBehaviorProps {\n /**\n * Unique identifier for the tab.\n * Auto-injected from the React `key` prop (converted to string).\n */\n id?: string;\n /**\n * Content displayed in the tab button. Optional for icon-only tabs\n * (`icon` / `rightIcon`). When omitted, provide an `aria-label` (and\n * typically a `tooltip`) so the tab has an accessible name.\n */\n title?: ReactNode;\n /** Panel content rendered when tab is active. */\n children?: ReactNode;\n /** Disables the tab (cannot be selected). */\n isDisabled?: boolean;\n /** Actions to render in the tab. Rendered before menu trigger if tab has menu. */\n actions?: ReactNode;\n /** Whether the tab title can be edited. Overrides the Tabs-level isEditable default. */\n isEditable?: boolean;\n /** Callback when this tab's title is changed. Overrides parent's onTitleChange. */\n onTitleChange?: (newTitle: string) => void;\n /**\n * Menu items to display in a dropdown menu on the tab.\n * Pass Menu.Item elements directly - they will be wrapped in a Menu internally.\n * Overrides the Tabs-level menu default. Set to `null` to disable menu.\n */\n menu?: ReactNode | null;\n /**\n * Props to customize the menu trigger button.\n * Overrides the Tabs-level menuTriggerProps default.\n */\n menuTriggerProps?: Partial<CubeItemActionProps>;\n /**\n * Props passed to the Menu component.\n * Overrides the Tabs-level menuProps default.\n */\n menuProps?: Partial<CubeMenuProps<object>>;\n /**\n * Context menu / overflow behavior. Same values as Tabs `contextMenu`.\n * Uses the same menu items as `menu` prop.\n * @default false\n */\n contextMenu?: TabContextMenu;\n /**\n * Callback when a menu action is triggered.\n * Called with the action key from Menu.Item.\n */\n onAction?: (action: string) => void;\n}\n\nexport interface CubeTabPanelProps extends PanelBehaviorProps, QAProps {\n /**\n * Panel identifier. Must match a Tab's id.\n * Auto-injected from the React `key` prop (converted to string).\n */\n id?: string;\n /** Panel content. */\n children?: ReactNode;\n /** Custom tasty styles for the panel container. */\n styles?: Styles;\n}\n\nexport interface CubeTabListProps {\n /** Tab components. */\n children?: ReactNode;\n}\n\n// =============================================================================\n// Internal Types\n// =============================================================================\n\n/**\n * Internal representation of a parsed Tab.\n * Uses `content` instead of `children` to distinguish panel content.\n */\nexport interface ParsedTab extends Omit<CubeTabProps, 'id' | 'children'> {\n /** Tab key (always a string internally for React Aria compatibility) */\n key: string;\n /** Panel content extracted from Tab's children prop */\n content: ReactNode;\n}\n\n/**\n * Internal representation of a parsed TabPanel.\n */\nexport interface ParsedPanel\n extends Omit<CubeTabPanelProps, 'id' | 'children'> {\n /** Panel key (always a string internally for React Aria compatibility) */\n key: string;\n /** Panel content extracted from TabPanel's children prop */\n content: ReactNode;\n}\n"],"mappings":";;;;;;;AAkCA,MAAaW,iBAAsD;CACjEE,QAAQ;CACRC,OAAO;CACR"}
1
+ {"version":3,"file":"types.js","names":["BaseProps","OuterStyleProps","Styles","ReactNode","CubeItemActionProps","CubeMenuProps","CubeItemProps","TabType","TabPlacement","TabsActionPosition","TabSize","RADIO_SIZE_MAP","Record","medium","large","TabContextMenu","PanelBehaviorProps","prerender","keepMounted","QAProps","qa","qaVal","OmittedItemProps","TabStyleProps","Omit","size","autoHideActions","CacheKeyValue","CubeTabsProps","activeKey","defaultActiveKey","type","placement","label","prefix","suffix","onChange","key","onDelete","onTitleChange","newTitle","isEditable","menu","menuTriggerProps","Partial","menuProps","contextMenu","onAction","action","tabKey","styles","children","renderPanel","panelCacheKeys","isReorderable","keyOrder","onReorder","newOrder","showTabPicker","showScrollArrows","tabPickerPosition","scrollArrowsPosition","hideTabListScroll","tabListPadding","barStyles","tabListStyles","prefixStyles","suffixStyles","CubeTabProps","id","title","isDisabled","actions","CubeTabPanelProps","CubeTabListProps","ParsedTab","content","ParsedPanel"],"sources":["../../../../src/components/navigation/Tabs/types.ts"],"sourcesContent":["import type { BaseProps, OuterStyleProps, Styles } from '@tenphi/tasty';\nimport type { ReactNode } from 'react';\nimport type { CubeItemActionProps } from '../../actions/ItemAction';\nimport type { CubeMenuProps } from '../../actions/Menu';\nimport type { CubeItemProps } from '../../content/Item';\n\n// =============================================================================\n// Core Types\n// =============================================================================\n\n/** Visual appearance type for tabs */\nexport type TabType = 'default' | 'narrow' | 'file' | 'radio';\n\n/**\n * Where the tab bar sits relative to its panels.\n * - `'top'` / `'bottom'` keep the bar horizontal.\n * - `'left'` / `'right'` switch it to a vertical strip.\n */\nexport type TabPlacement = 'top' | 'bottom' | 'left' | 'right';\n\n/** Position for TabPicker and scroll arrows */\nexport type TabsActionPosition = 'prefix' | 'suffix';\n\n/**\n * Tab size options.\n * Radio type only supports 'medium' | 'large' (mapped to smaller Item sizes).\n */\nexport type TabSize = 'xsmall' | 'small' | 'medium' | 'large';\n\n/**\n * Size mapping for radio type tabs.\n * API sizes mapped to Item button sizes:\n * medium (default) -> xsmall (32px total), large -> medium (40px total).\n */\nexport const RADIO_SIZE_MAP: Record<'medium' | 'large', TabSize> = {\n medium: 'xsmall',\n large: 'medium',\n};\n\n/** How the tab `menu` is exposed alongside or instead of the overflow trigger. */\nexport type TabContextMenu = boolean | 'context-only';\n\n// =============================================================================\n// Shared Props Interfaces\n// =============================================================================\n\n/** Common props for panel rendering behavior */\nexport interface PanelBehaviorProps {\n /** If true, panel is rendered but hidden when not active. */\n prerender?: boolean;\n /** If true, once visited the panel stays in DOM. */\n keepMounted?: boolean;\n}\n\n/** Common props for QA attributes */\nexport interface QAProps {\n /** QA selector attribute. */\n qa?: string;\n /** Additional QA value attribute. */\n qaVal?: string;\n}\n\n// =============================================================================\n// Tab Style Props\n// =============================================================================\n\n/** Props from CubeItemProps that don't apply to Tab */\ntype OmittedItemProps =\n | 'id' // Tab has its own id as Key type\n | 'type' // Type is decided at the Tabs level, never per-tab\n | 'size' // Tab has its own TabSize\n | 'theme' // Tabs have internal theming\n | 'shape' // Tabs have internal shape logic\n | 'description' // Tabs don't have descriptions\n | 'descriptionPlacement'\n | 'descriptionProps'\n | 'hotkeys' // Tabs have their own keyboard navigation\n | 'keyboardShortcutProps'\n | 'labelProps' // Tabs use title prop instead\n | 'labelRef'\n | 'level' // Tabs don't use heading levels\n | 'highlight' // Tabs don't use highlighting\n | 'highlightCaseSensitive'\n | 'highlightStyles'\n | 'variant' // Tabs have internal variant logic\n | 'htmlType' // Tab is always a button\n | 'isSelected' // Handled internally by state\n | 'preserveActionsSpace' // Set internally in TabButton\n | 'disableActionsFocus' // Not used in Tab\n | 'actions' // Tab has its own actions definition\n | 'autoHideActions' // Tab has its own autoHideActions\n | 'insideWrapper' // Internal Item wrapper prop\n | 'showActions' // Internal Item wrapper prop\n | 'skipActionsWidthTransition'; // Internal Item wrapper prop\n\n/** Common styling props for tabs - inherits style props from CubeItemProps */\nexport interface TabStyleProps extends Omit<CubeItemProps, OmittedItemProps> {\n /**\n * Tab size. Supports 'xsmall', 'small', 'medium', 'large'.\n * Radio type supports 'large' (default, 40px) and 'medium' (32px),\n * mapped to Item button sizes medium (32px) and xsmall (24px).\n */\n size?: TabSize;\n /** Whether to show actions only on hover. */\n autoHideActions?: boolean;\n}\n\n// =============================================================================\n// Component Props\n// =============================================================================\n\n/** Cache key type - primitives only for reliable comparison */\nexport type CacheKeyValue = string | number | boolean | null | undefined;\n\nexport interface CubeTabsProps\n extends BaseProps,\n OuterStyleProps,\n PanelBehaviorProps {\n /** Controlled active tab key. When provided, component is controlled. */\n activeKey?: string;\n /** Initial active tab key for uncontrolled mode. */\n defaultActiveKey?: string;\n /**\n * Visual appearance type for tabs.\n * - `default` - Standard tabs with selection indicator below (default)\n * - `narrow` - Same as default but with collapsed vertical padding on labels\n * - `file` - File-style tabs with border bottom highlight on selection, delimiter between tabs\n * - `radio` - Radio button style for tab selection\n * @default 'default'\n */\n type?: TabType;\n /**\n * Where the tab bar sits relative to its panels.\n * `'top'` / `'bottom'` keep the bar horizontal; `'left'` / `'right'`\n * switch it to a vertical strip. The selection indicator, scroll behavior,\n * fades, and per-type visuals all adapt automatically.\n * @default 'top'\n */\n placement?: TabPlacement;\n /**\n * Tab size. Supports 'xsmall', 'small', 'medium', 'large'.\n * Radio type supports 'large' (default, 40px) and 'medium' (32px),\n * mapped to Item button sizes medium (32px) and xsmall (24px).\n * @default 'medium'\n */\n size?: TabSize;\n /** Accessible label for the tab list. */\n label?: string;\n /** Content rendered before the tab list. */\n prefix?: ReactNode;\n /** Content rendered after the tab list. */\n suffix?: ReactNode;\n /** Callback when active tab changes. */\n onChange?: (key: string) => void;\n /** Callback when tab delete button is clicked. Presence enables delete buttons. */\n onDelete?: (key: string) => void;\n /** Callback when a tab title is changed. Enables title editing on tabs with isEditable. */\n onTitleChange?: (key: string, newTitle: string) => void;\n /** Whether to show tab actions only on hover. Can be overridden per-tab. */\n autoHideActions?: boolean;\n /**\n * Whether tabs are editable by default.\n * Can be overridden per-tab via Tab's isEditable prop.\n * @default false\n */\n isEditable?: boolean;\n /**\n * Default menu items for all tabs.\n * Can be overridden per-tab via Tab's menu prop.\n * Set to `null` on individual Tab to disable menu for that tab.\n */\n menu?: ReactNode;\n /**\n * Default props for the menu trigger button.\n * Can be overridden per-tab via Tab's menuTriggerProps prop.\n * @default { icon: <MoreIcon /> }\n */\n menuTriggerProps?: Partial<CubeItemActionProps>;\n /**\n * Default props passed to the Menu component.\n * Can be overridden per-tab via Tab's menuProps prop.\n */\n menuProps?: Partial<CubeMenuProps<object>>;\n /**\n * Context menu / overflow behavior for tab `menu` items.\n * - `false` (default) — overflow trigger only; no right-click menu\n * - `true` — overflow trigger and right-click menu\n * - `'context-only'` — right-click menu only; no overflow trigger. Inline close\n * (`onDelete`) shows even when `menu` is non-empty, like tabs without a menu.\n * Can be overridden per-tab via Tab's contextMenu prop.\n * @default false\n */\n contextMenu?: TabContextMenu;\n /**\n * Callback when a menu action is triggered on any tab.\n * Called with the action key and the tab key.\n * Tab-level onAction is called first, then this.\n */\n onAction?: (action: string, tabKey: string) => void;\n /** Custom tasty styles for the tab bar container. */\n styles?: Styles;\n /** QA selector attribute. */\n qa?: string;\n /** Tab components or Tabs.List with Tabs.Panel. */\n children?: ReactNode;\n /**\n * Functional content renderer for optimized lazy evaluation.\n * When provided, panel content is only evaluated for the active tab,\n * while inactive tabs use cached content.\n */\n renderPanel?: (key: string) => ReactNode;\n /**\n * Cache keys for individual panels. Enables caching for specified panels.\n */\n panelCacheKeys?: Record<string | number, CacheKeyValue>;\n /**\n * Enable drag-and-drop tab reordering.\n * When a tab picker is shown (`showTabPicker`), reordering is automatically\n * enabled in the picker dropdown as well.\n * @default false\n */\n isReorderable?: boolean;\n /**\n * Controlled order of tab keys.\n * When provided, tabs are displayed in this order.\n */\n keyOrder?: string[];\n /**\n * Callback when tabs are reordered via drag-and-drop.\n */\n onReorder?: (newOrder: string[]) => void;\n /**\n * Whether to show a tab picker dropdown in the suffix area.\n * - `true` - always show the tab picker\n * - `false` - never show the tab picker (default)\n * - `'auto'` - show only when tabs overflow (has horizontal scroll)\n * @default false\n */\n showTabPicker?: boolean | 'auto';\n /**\n * Whether to show scroll arrow buttons in the suffix area.\n * - `true` - always show scroll arrows\n * - `false` - never show scroll arrows (default)\n * - `'auto'` - show only when tabs overflow (has horizontal scroll)\n * @default false\n */\n showScrollArrows?: boolean | 'auto';\n /**\n * Position of the tab picker dropdown.\n * - `'prefix'` - render in the prefix slot (before tab list)\n * - `'suffix'` - render in the suffix slot (after tab list)\n * @default 'suffix'\n */\n tabPickerPosition?: TabsActionPosition;\n /**\n * Position of the scroll arrow buttons.\n * - `'prefix'` - render in the prefix slot (before tab list)\n * - `'suffix'` - render in the suffix slot (after tab list)\n * @default 'suffix'\n */\n scrollArrowsPosition?: TabsActionPosition;\n /**\n * Visually hide the custom horizontal scrollbar in the tab list\n * and skip its tracking logic. Does not affect tab picker, scroll arrows,\n * or fade indicators — only the tiny scrollbar visual.\n * @default false\n */\n hideTabListScroll?: boolean;\n /**\n * Inline padding for the tab list container.\n * Sets horizontal padding only (e.g., \"2x\" → padding: \"0 2x\").\n */\n tabListPadding?: string;\n /** Custom tasty styles for the tab bar (Bar sub-element). */\n barStyles?: Styles;\n /** Custom tasty styles for the TabList sub-element. */\n tabListStyles?: Styles;\n /** Custom tasty styles for the Prefix sub-element. */\n prefixStyles?: Styles;\n /** Custom tasty styles for the Suffix sub-element. */\n suffixStyles?: Styles;\n}\n\nexport interface CubeTabProps extends TabStyleProps, PanelBehaviorProps {\n /**\n * Unique identifier for the tab.\n * Auto-injected from the React `key` prop (converted to string).\n */\n id?: string;\n /**\n * Content displayed in the tab button. Optional for icon-only tabs\n * (`icon` / `rightIcon`). When omitted, provide an `aria-label` (and\n * typically a `tooltip`) so the tab has an accessible name.\n */\n title?: ReactNode;\n /** Panel content rendered when tab is active. */\n children?: ReactNode;\n /** Disables the tab (cannot be selected). */\n isDisabled?: boolean;\n /** Actions to render in the tab. Rendered before menu trigger if tab has menu. */\n actions?: ReactNode;\n /** Whether the tab title can be edited. Overrides the Tabs-level isEditable default. */\n isEditable?: boolean;\n /** Callback when this tab's title is changed. Overrides parent's onTitleChange. */\n onTitleChange?: (newTitle: string) => void;\n /**\n * Menu items to display in a dropdown menu on the tab.\n * Pass Menu.Item elements directly - they will be wrapped in a Menu internally.\n * Overrides the Tabs-level menu default. Set to `null` to disable menu.\n */\n menu?: ReactNode | null;\n /**\n * Props to customize the menu trigger button.\n * Overrides the Tabs-level menuTriggerProps default.\n */\n menuTriggerProps?: Partial<CubeItemActionProps>;\n /**\n * Props passed to the Menu component.\n * Overrides the Tabs-level menuProps default.\n */\n menuProps?: Partial<CubeMenuProps<object>>;\n /**\n * Context menu / overflow behavior. Same values as Tabs `contextMenu`.\n * Uses the same menu items as `menu` prop.\n * @default false\n */\n contextMenu?: TabContextMenu;\n /**\n * Callback when a menu action is triggered.\n * Called with the action key from Menu.Item.\n */\n onAction?: (action: string) => void;\n}\n\nexport interface CubeTabPanelProps extends PanelBehaviorProps, QAProps {\n /**\n * Panel identifier. Must match a Tab's id.\n * Auto-injected from the React `key` prop (converted to string).\n */\n id?: string;\n /** Panel content. */\n children?: ReactNode;\n /** Custom tasty styles for the panel container. */\n styles?: Styles;\n}\n\nexport interface CubeTabListProps extends QAProps {\n /** Tab components. */\n children?: ReactNode;\n}\n\n// =============================================================================\n// Internal Types\n// =============================================================================\n\n/**\n * Internal representation of a parsed Tab.\n * Uses `content` instead of `children` to distinguish panel content.\n */\nexport interface ParsedTab extends Omit<CubeTabProps, 'id' | 'children'> {\n /** Tab key (always a string internally for React Aria compatibility) */\n key: string;\n /** Panel content extracted from Tab's children prop */\n content: ReactNode;\n}\n\n/**\n * Internal representation of a parsed TabPanel.\n */\nexport interface ParsedPanel\n extends Omit<CubeTabPanelProps, 'id' | 'children'> {\n /** Panel key (always a string internally for React Aria compatibility) */\n key: string;\n /** Panel content extracted from TabPanel's children prop */\n content: ReactNode;\n}\n"],"mappings":";;;;;;;AAkCA,MAAaW,iBAAsD;CACjEE,QAAQ;CACRC,OAAO;CACR"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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 +1 @@
1
- {"version":3,"file":"CalendarCell.js","names":["CalendarDate","isSameDay","tasty","useRef","DateValue","useCalendarCell","CalendarState","RangeCalendarState","CALENDAR_CELL_STYLES","CalendarCellElement","as","styles","margin","padding","CalendarButtonElement","width","height","CubeCalendarCellProps","state","date","today","selectedRange","start","end","rangeHover","CalendarCell","props","$","_c","ref","t0","cellProps","buttonProps","isSelected","isPressed","isFocused","isInvalid","isOutsideVisibleRange","isDisabled","isUnavailable","formattedDate","isFinalSelected","compare","t1","t2","t3","selected","current","outside","pressed","focused","invalid","disabled","unavailable","t4","t5"],"sources":["../../../../src/components/other/Calendar/CalendarCell.tsx"],"sourcesContent":["import { CalendarDate, isSameDay } from '@internationalized/date';\nimport { tasty } from '@tenphi/tasty';\nimport { useRef } from 'react';\nimport { DateValue, useCalendarCell } from 'react-aria';\nimport { CalendarState, RangeCalendarState } from 'react-stately';\n\nimport { CALENDAR_CELL_STYLES } from './styled';\n\nconst CalendarCellElement = tasty({\n as: 'td',\n styles: {\n margin: 0,\n padding: '2bw right bottom',\n },\n});\n\nconst CalendarButtonElement = tasty({\n 'data-popover-keep': true,\n styles: {\n ...CALENDAR_CELL_STYLES,\n width: '3x',\n height: '3x',\n },\n});\n\nexport interface CubeCalendarCellProps {\n state: CalendarState | RangeCalendarState;\n date: CalendarDate;\n /** Today, expressed in the calendar system of the grid. */\n today?: CalendarDate;\n /** Explicit range highlight, used when the range lives outside the state. */\n selectedRange?: { start: DateValue; end: DateValue };\n /** Whether the whole row is highlighted (week picker mode). */\n rangeHover?: boolean;\n}\n\nexport function CalendarCell(props: CubeCalendarCellProps) {\n let { state, selectedRange, date, today, rangeHover } = props;\n let ref = useRef(null);\n let {\n cellProps,\n buttonProps,\n isSelected,\n isPressed,\n isFocused,\n isInvalid,\n isOutsideVisibleRange,\n isDisabled,\n isUnavailable,\n formattedDate,\n } = useCalendarCell({ date }, state, ref);\n\n const isFinalSelected =\n !isOutsideVisibleRange &&\n (selectedRange\n ? date.compare(selectedRange.start) >= 0 &&\n date.compare(selectedRange.end) <= 0\n : isSelected);\n\n return (\n <CalendarCellElement {...cellProps}>\n <CalendarButtonElement\n {...buttonProps}\n ref={ref}\n mods={{\n selected: isFinalSelected,\n current: !!today && !isOutsideVisibleRange && isSameDay(date, today),\n outside: isOutsideVisibleRange,\n rangeHover: rangeHover && !isFinalSelected,\n pressed: isPressed,\n focused: isFocused,\n invalid: isInvalid,\n disabled: isDisabled,\n unavailable: isUnavailable,\n }}\n >\n {formattedDate}\n </CalendarButtonElement>\n </CalendarCellElement>\n );\n}\n"],"mappings":";;;;;;;;;;AAQA,MAAMS,sBAAsBP,MAAM;CAChCQ,IAAI;CACJC,QAAQ;EACNC,QAAQ;EACRC,SAAS;EACX;CACD,CAAC;AAEF,MAAMC,wBAAwBZ,MAAM;CAClC,qBAAqB;CACrBS,QAAQ;EACN,GAAGH;EACHO,OAAO;EACPC,QAAQ;EACV;CACD,CAAC;AAaF,SAAOS,aAAAC,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACL,MAAA,EAAAV,OAAAG,eAAAF,MAAAC,OAAAI,eAAwDE;CACxD,MAAAG,MAAU1B,OAAO,KAAK;CAAC,IAAA2B;AAAA,KAAAH,EAAA,OAAAR,MAAA;AAYHW,OAAA,EAAAX,MAAQ;AAAAQ,IAAA,KAAAR;AAAAQ,IAAA,KAAAG;OAAAA,MAAAH,EAAA;CAX5B,MAAA,EAAAI,WAAAC,aAAAC,YAAAC,WAAAC,WAAAC,WAAAC,uBAAAC,YAAAC,eAAAC,kBAWInC,gBAAgByB,IAAUZ,OAAOW,IAAI;CAEzC,MAAAY,kBACE,CAACJ,0BACAhB,gBACGF,KAAIuB,QAASrB,cAAaC,MAAO,IAAI,KACrCH,KAAIuB,QAASrB,cAAaE,IAAK,IAAI,IAFtCU;CAGe,IAAAU;AAAA,KAAAhB,EAAA,OAAAR,QAAAQ,EAAA,OAAAU,yBAAAV,EAAA,OAAAP,OAAA;AASDuB,OAAA,CAAC,CAACvB,SAAF,CAAYiB,yBAAyBpC,UAAUkB,MAAMC,MAAM;AAAAO,IAAA,KAAAR;AAAAQ,IAAA,KAAAU;AAAAV,IAAA,KAAAP;AAAAO,IAAA,KAAAgB;OAAAA,MAAAhB,EAAA;CAExD,MAAAiB,KAAApB,cAAA,CAAeiB;CAAe,IAAAI;AAAA,KAAAlB,EAAA,OAAAW,cAAAX,EAAA,OAAAc,mBAAAd,EAAA,OAAAQ,aAAAR,EAAA,OAAAS,aAAAT,EAAA,QAAAU,yBAAAV,EAAA,QAAAO,aAAAP,EAAA,QAAAY,iBAAAZ,EAAA,QAAAgB,MAAAhB,EAAA,QAAAiB,IAAA;AAJtCC,OAAA;GAAAC,UACML;GAAeM,SAChBJ;GAA2DK,SAC3DX;GAAqBb,YAClBoB;GAA8BK,SACjCf;GAASgB,SACTf;GAASgB,SACTf;GAASgB,UACRd;GAAUe,aACPd;GACd;AAAAZ,IAAA,KAAAW;AAAAX,IAAA,KAAAc;AAAAd,IAAA,KAAAQ;AAAAR,IAAA,KAAAS;AAAAT,IAAA,MAAAU;AAAAV,IAAA,MAAAO;AAAAP,IAAA,MAAAY;AAAAZ,IAAA,MAAAgB;AAAAhB,IAAA,MAAAiB;AAAAjB,IAAA,MAAAkB;OAAAA,MAAAlB,EAAA;CAAA,IAAA2B;AAAA,KAAA3B,EAAA,QAAAK,eAAAL,EAAA,QAAAa,iBAAAb,EAAA,QAAAkB,IAAA;AAbHS,OAAA,oBAAC;GAAqB,GAChBtB;GACCH;GACC,MAAAgB;aAYLL;IACqB;AAAAb,IAAA,MAAAK;AAAAL,IAAA,MAAAa;AAAAb,IAAA,MAAAkB;AAAAlB,IAAA,MAAA2B;OAAAA,MAAA3B,EAAA;CAAA,IAAA4B;AAAA,KAAA5B,EAAA,QAAAI,aAAAJ,EAAA,QAAA2B,IAAA;AAjB1BC,OAAA,oBAAC;GAAmB,GAAKxB;aACvBuB;IAiBoB;AAAA3B,IAAA,MAAAI;AAAAJ,IAAA,MAAA2B;AAAA3B,IAAA,MAAA4B;OAAAA,MAAA5B,EAAA;AAAA,QAlBtB4B"}
1
+ {"version":3,"file":"CalendarCell.js","names":["CalendarDate","isSameDay","tasty","useRef","DateValue","useCalendarCell","CalendarState","RangeCalendarState","CALENDAR_CELL_STYLES","CalendarCellElement","as","styles","margin","padding","CalendarButtonElement","width","height","CubeCalendarCellProps","state","date","today","selectedRange","start","end","rangeHover","CalendarCell","props","$","_c","ref","t0","cellProps","buttonProps","isSelected","isPressed","isFocused","isInvalid","isOutsideVisibleRange","isDisabled","isUnavailable","formattedDate","isFinalSelected","compare","t1","t2","t3","selected","current","outside","pressed","focused","invalid","disabled","unavailable","t4","t5"],"sources":["../../../../src/components/other/Calendar/CalendarCell.tsx"],"sourcesContent":["import { CalendarDate, isSameDay } from '@internationalized/date';\nimport { tasty } from '@tenphi/tasty';\nimport { useRef } from 'react';\nimport { DateValue, useCalendarCell } from 'react-aria';\nimport { CalendarState, RangeCalendarState } from 'react-stately';\n\nimport { CALENDAR_CELL_STYLES } from './styled';\n\nconst CalendarCellElement = tasty({\n as: 'td',\n styles: {\n margin: 0,\n padding: '2bw right bottom',\n },\n});\n\nconst CalendarButtonElement = tasty({\n 'data-popover-keep': true,\n styles: {\n // eslint-disable-next-line tasty/no-style-spread -- cell base shared with PeriodGrid\n ...CALENDAR_CELL_STYLES,\n width: '3x',\n height: '3x',\n },\n});\n\nexport interface CubeCalendarCellProps {\n state: CalendarState | RangeCalendarState;\n date: CalendarDate;\n /** Today, expressed in the calendar system of the grid. */\n today?: CalendarDate;\n /** Explicit range highlight, used when the range lives outside the state. */\n selectedRange?: { start: DateValue; end: DateValue };\n /** Whether the whole row is highlighted (week picker mode). */\n rangeHover?: boolean;\n}\n\nexport function CalendarCell(props: CubeCalendarCellProps) {\n let { state, selectedRange, date, today, rangeHover } = props;\n let ref = useRef(null);\n let {\n cellProps,\n buttonProps,\n isSelected,\n isPressed,\n isFocused,\n isInvalid,\n isOutsideVisibleRange,\n isDisabled,\n isUnavailable,\n formattedDate,\n } = useCalendarCell({ date }, state, ref);\n\n const isFinalSelected =\n !isOutsideVisibleRange &&\n (selectedRange\n ? date.compare(selectedRange.start) >= 0 &&\n date.compare(selectedRange.end) <= 0\n : isSelected);\n\n return (\n <CalendarCellElement {...cellProps}>\n <CalendarButtonElement\n {...buttonProps}\n ref={ref}\n mods={{\n selected: isFinalSelected,\n current: !!today && !isOutsideVisibleRange && isSameDay(date, today),\n outside: isOutsideVisibleRange,\n rangeHover: rangeHover && !isFinalSelected,\n pressed: isPressed,\n focused: isFocused,\n invalid: isInvalid,\n disabled: isDisabled,\n unavailable: isUnavailable,\n }}\n >\n {formattedDate}\n </CalendarButtonElement>\n </CalendarCellElement>\n );\n}\n"],"mappings":";;;;;;;;;;AAQA,MAAMS,sBAAsBP,MAAM;CAChCQ,IAAI;CACJC,QAAQ;EACNC,QAAQ;EACRC,SAAS;EACX;CACD,CAAC;AAEF,MAAMC,wBAAwBZ,MAAM;CAClC,qBAAqB;CACrBS,QAAQ;EAEN,GAAGH;EACHO,OAAO;EACPC,QAAQ;EACV;CACD,CAAC;AAaF,SAAOS,aAAAC,OAAA;CAAA,MAAAC,IAAAC,EAAA,GAAA;CACL,MAAA,EAAAV,OAAAG,eAAAF,MAAAC,OAAAI,eAAwDE;CACxD,MAAAG,MAAU1B,OAAO,KAAK;CAAC,IAAA2B;AAAA,KAAAH,EAAA,OAAAR,MAAA;AAYHW,OAAA,EAAAX,MAAQ;AAAAQ,IAAA,KAAAR;AAAAQ,IAAA,KAAAG;OAAAA,MAAAH,EAAA;CAX5B,MAAA,EAAAI,WAAAC,aAAAC,YAAAC,WAAAC,WAAAC,WAAAC,uBAAAC,YAAAC,eAAAC,kBAWInC,gBAAgByB,IAAUZ,OAAOW,IAAI;CAEzC,MAAAY,kBACE,CAACJ,0BACAhB,gBACGF,KAAIuB,QAASrB,cAAaC,MAAO,IAAI,KACrCH,KAAIuB,QAASrB,cAAaE,IAAK,IAAI,IAFtCU;CAGe,IAAAU;AAAA,KAAAhB,EAAA,OAAAR,QAAAQ,EAAA,OAAAU,yBAAAV,EAAA,OAAAP,OAAA;AASDuB,OAAA,CAAC,CAACvB,SAAF,CAAYiB,yBAAyBpC,UAAUkB,MAAMC,MAAM;AAAAO,IAAA,KAAAR;AAAAQ,IAAA,KAAAU;AAAAV,IAAA,KAAAP;AAAAO,IAAA,KAAAgB;OAAAA,MAAAhB,EAAA;CAExD,MAAAiB,KAAApB,cAAA,CAAeiB;CAAe,IAAAI;AAAA,KAAAlB,EAAA,OAAAW,cAAAX,EAAA,OAAAc,mBAAAd,EAAA,OAAAQ,aAAAR,EAAA,OAAAS,aAAAT,EAAA,QAAAU,yBAAAV,EAAA,QAAAO,aAAAP,EAAA,QAAAY,iBAAAZ,EAAA,QAAAgB,MAAAhB,EAAA,QAAAiB,IAAA;AAJtCC,OAAA;GAAAC,UACML;GAAeM,SAChBJ;GAA2DK,SAC3DX;GAAqBb,YAClBoB;GAA8BK,SACjCf;GAASgB,SACTf;GAASgB,SACTf;GAASgB,UACRd;GAAUe,aACPd;GACd;AAAAZ,IAAA,KAAAW;AAAAX,IAAA,KAAAc;AAAAd,IAAA,KAAAQ;AAAAR,IAAA,KAAAS;AAAAT,IAAA,MAAAU;AAAAV,IAAA,MAAAO;AAAAP,IAAA,MAAAY;AAAAZ,IAAA,MAAAgB;AAAAhB,IAAA,MAAAiB;AAAAjB,IAAA,MAAAkB;OAAAA,MAAAlB,EAAA;CAAA,IAAA2B;AAAA,KAAA3B,EAAA,QAAAK,eAAAL,EAAA,QAAAa,iBAAAb,EAAA,QAAAkB,IAAA;AAbHS,OAAA,oBAAC;GAAqB,GAChBtB;GACCH;GACC,MAAAgB;aAYLL;IACqB;AAAAb,IAAA,MAAAK;AAAAL,IAAA,MAAAa;AAAAb,IAAA,MAAAkB;AAAAlB,IAAA,MAAA2B;OAAAA,MAAA3B,EAAA;CAAA,IAAA4B;AAAA,KAAA5B,EAAA,QAAAI,aAAAJ,EAAA,QAAA2B,IAAA;AAjB1BC,OAAA,oBAAC;GAAmB,GAAKxB;aACvBuB;IAiBoB;AAAA3B,IAAA,MAAAI;AAAAJ,IAAA,MAAA2B;AAAA3B,IAAA,MAAA4B;OAAAA,MAAA5B,EAAA;AAAA,QAlBtB4B"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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 +1 @@
1
- {"version":3,"file":"PeriodGrid.js","names":["Styles","tasty","KeyboardEvent","useLayoutEffect","useRef","CALENDAR_CELL_STYLES","PeriodGridElement","as","role","styles","borderCollapse","borderSpacing","tableLayout","PeriodGridCellElement","margin","padding","PeriodGridButtonElement","width","height","CubePeriodGridCell","key","label","ariaLabel","isSelected","isCurrent","isDisabled","isOutside","CubePeriodGridProps","cells","columns","focusedIndex","autoFocus","onCellPress","index","onCellFocus","onMoveFocus","delta","onMovePage","PeriodGrid","props","cellRefs","Array","HTMLButtonElement","shouldFocusRef","safeIndex","Math","max","min","length","current","focus","moveFocus","next","focusEdge","edge","step","onKeyDown","e","preventDefault","stopPropagation","rows","i","push","slice","map","row","rowIndex","cell","columnIndex","element","selected","outside","disabled"],"sources":["../../../../src/components/other/Calendar/PeriodGrid.tsx"],"sourcesContent":["import { Styles, tasty } from '@tenphi/tasty';\nimport { KeyboardEvent, useLayoutEffect, useRef } from 'react';\n\nimport { CALENDAR_CELL_STYLES } from './styled';\n\nconst PeriodGridElement = tasty({\n as: 'table',\n role: 'grid',\n styles: {\n borderCollapse: 'collapse',\n borderSpacing: 0,\n // Columns share the width evenly. The owner passes that width explicitly —\n // a percentage here would resolve against the popover's `max-content` box.\n tableLayout: 'fixed',\n },\n});\n\nconst PeriodGridCellElement = tasty({\n as: 'td',\n role: 'gridcell',\n styles: {\n margin: 0,\n padding: '2bw right bottom',\n },\n});\n\nconst PeriodGridButtonElement = tasty({\n as: 'button',\n 'data-popover-keep': true,\n styles: {\n ...CALENDAR_CELL_STYLES,\n width: '100%',\n height: '4x',\n padding: '0 .5x',\n },\n});\n\nexport interface CubePeriodGridCell {\n /** Stable identity of the cell, also used as the React key. */\n key: string;\n label: string;\n /** Overrides the accessible name when the visible label is ambiguous. */\n ariaLabel?: string;\n isSelected?: boolean;\n /** Whether the cell contains today. */\n isCurrent?: boolean;\n isDisabled?: boolean;\n /** Whether the cell belongs to a neighbouring page (e.g. an adjacent decade). */\n isOutside?: boolean;\n}\n\nexport interface CubePeriodGridProps {\n cells: CubePeriodGridCell[];\n columns: number;\n /** Index of the cell that holds the roving tab stop. */\n focusedIndex: number;\n autoFocus?: boolean;\n 'aria-label'?: string;\n styles?: Styles;\n onCellPress: (index: number) => void;\n /** Focus moved to another cell of the current page. */\n onCellFocus: (index: number) => void;\n /**\n * Focus moved past the edge of the current page by `delta` periods. The owner\n * moves its anchor, which in turn flips the page and the focused index.\n */\n onMoveFocus: (delta: number) => void;\n /** `PageUp` / `PageDown` — one page back or forward. */\n onMovePage: (delta: -1 | 1) => void;\n}\n\n/**\n * A keyboard-navigable grid of calendar periods (months, quarters or years).\n *\n * The grid owns rendering, the roving tab stop and DOM focus; the owner owns\n * the periods themselves. Arrow keys that leave the page are reported through\n * `onMoveFocus` so the owner can page and keep focus on the adjacent period.\n */\nexport function PeriodGrid(props: CubePeriodGridProps) {\n let {\n cells,\n columns,\n focusedIndex,\n autoFocus,\n styles,\n onCellPress,\n onCellFocus,\n onMoveFocus,\n onMovePage,\n } = props;\n\n let cellRefs = useRef<Array<HTMLButtonElement | null>>([]);\n // Set by the grid's own keyboard handling and by `autoFocus`, so paging with\n // the header buttons never steals focus into the grid.\n let shouldFocusRef = useRef(!!autoFocus);\n\n let safeIndex = Math.max(0, Math.min(cells.length - 1, focusedIndex));\n\n cellRefs.current.length = cells.length;\n\n useLayoutEffect(() => {\n if (shouldFocusRef.current) {\n shouldFocusRef.current = false;\n cellRefs.current[safeIndex]?.focus();\n }\n });\n\n let moveFocus = (delta: number) => {\n shouldFocusRef.current = true;\n\n let next = safeIndex + delta;\n\n // Disabled cells can't hold DOM focus, so step over them instead of\n // stranding the caret on an unreachable period.\n while (next >= 0 && next < cells.length && cells[next].isDisabled) {\n next += delta;\n }\n\n if (next < 0 || next >= cells.length) {\n onMoveFocus(delta);\n } else {\n onCellFocus(next);\n }\n };\n\n let focusEdge = (edge: 'start' | 'end') => {\n let step = edge === 'start' ? 1 : -1;\n let index = edge === 'start' ? 0 : cells.length - 1;\n\n while (index >= 0 && index < cells.length && cells[index].isDisabled) {\n index += step;\n }\n\n if (index < 0 || index >= cells.length) return;\n\n shouldFocusRef.current = true;\n onCellFocus(index);\n };\n\n let onKeyDown = (e: KeyboardEvent) => {\n switch (e.key) {\n case 'ArrowRight':\n moveFocus(1);\n break;\n case 'ArrowLeft':\n moveFocus(-1);\n break;\n case 'ArrowDown':\n moveFocus(columns);\n break;\n case 'ArrowUp':\n moveFocus(-columns);\n break;\n case 'Home':\n focusEdge('start');\n break;\n case 'End':\n focusEdge('end');\n break;\n case 'PageUp':\n shouldFocusRef.current = true;\n onMovePage(-1);\n break;\n case 'PageDown':\n shouldFocusRef.current = true;\n onMovePage(1);\n break;\n default:\n return;\n }\n\n e.preventDefault();\n e.stopPropagation();\n };\n\n let rows: CubePeriodGridCell[][] = [];\n\n for (let i = 0; i < cells.length; i += columns) {\n rows.push(cells.slice(i, i + columns));\n }\n\n return (\n <PeriodGridElement\n aria-label={props['aria-label']}\n styles={styles}\n onKeyDown={onKeyDown}\n >\n <tbody data-element=\"Body\">\n {rows.map((row, rowIndex) => (\n <tr key={rowIndex} role=\"row\" data-element=\"Row\">\n {row.map((cell, columnIndex) => {\n let index = rowIndex * columns + columnIndex;\n\n return (\n <PeriodGridCellElement\n key={cell.key}\n aria-selected={!!cell.isSelected}\n >\n <PeriodGridButtonElement\n ref={(element: HTMLButtonElement | null) => {\n cellRefs.current[index] = element;\n }}\n type=\"button\"\n tabIndex={index === safeIndex ? 0 : -1}\n disabled={cell.isDisabled}\n aria-label={cell.ariaLabel}\n mods={{\n selected: cell.isSelected,\n current: cell.isCurrent,\n outside: cell.isOutside,\n disabled: cell.isDisabled,\n }}\n onFocus={() => onCellFocus(index)}\n onClick={() => onCellPress(index)}\n >\n {cell.label}\n </PeriodGridButtonElement>\n </PeriodGridCellElement>\n );\n })}\n </tr>\n ))}\n </tbody>\n </PeriodGridElement>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"PeriodGrid.js","names":["Styles","tasty","KeyboardEvent","useLayoutEffect","useRef","CALENDAR_CELL_STYLES","PeriodGridElement","as","role","styles","borderCollapse","borderSpacing","tableLayout","PeriodGridCellElement","margin","padding","PeriodGridButtonElement","width","height","CubePeriodGridCell","key","label","ariaLabel","isSelected","isCurrent","isDisabled","isOutside","CubePeriodGridProps","cells","columns","focusedIndex","autoFocus","onCellPress","index","onCellFocus","onMoveFocus","delta","onMovePage","PeriodGrid","props","cellRefs","Array","HTMLButtonElement","shouldFocusRef","safeIndex","Math","max","min","length","current","focus","moveFocus","next","focusEdge","edge","step","onKeyDown","e","preventDefault","stopPropagation","rows","i","push","slice","map","row","rowIndex","cell","columnIndex","element","selected","outside","disabled"],"sources":["../../../../src/components/other/Calendar/PeriodGrid.tsx"],"sourcesContent":["import { Styles, tasty } from '@tenphi/tasty';\nimport { KeyboardEvent, useLayoutEffect, useRef } from 'react';\n\nimport { CALENDAR_CELL_STYLES } from './styled';\n\nconst PeriodGridElement = tasty({\n as: 'table',\n role: 'grid',\n styles: {\n borderCollapse: 'collapse',\n borderSpacing: 0,\n // Columns share the width evenly. The owner passes that width explicitly —\n // a percentage here would resolve against the popover's `max-content` box.\n tableLayout: 'fixed',\n },\n});\n\nconst PeriodGridCellElement = tasty({\n as: 'td',\n role: 'gridcell',\n styles: {\n margin: 0,\n padding: '2bw right bottom',\n },\n});\n\nconst PeriodGridButtonElement = tasty({\n as: 'button',\n 'data-popover-keep': true,\n styles: {\n // eslint-disable-next-line tasty/no-style-spread -- cell base shared with CalendarCell\n ...CALENDAR_CELL_STYLES,\n width: '100%',\n height: '4x',\n padding: '0 .5x',\n },\n});\n\nexport interface CubePeriodGridCell {\n /** Stable identity of the cell, also used as the React key. */\n key: string;\n label: string;\n /** Overrides the accessible name when the visible label is ambiguous. */\n ariaLabel?: string;\n isSelected?: boolean;\n /** Whether the cell contains today. */\n isCurrent?: boolean;\n isDisabled?: boolean;\n /** Whether the cell belongs to a neighbouring page (e.g. an adjacent decade). */\n isOutside?: boolean;\n}\n\nexport interface CubePeriodGridProps {\n cells: CubePeriodGridCell[];\n columns: number;\n /** Index of the cell that holds the roving tab stop. */\n focusedIndex: number;\n autoFocus?: boolean;\n 'aria-label'?: string;\n styles?: Styles;\n onCellPress: (index: number) => void;\n /** Focus moved to another cell of the current page. */\n onCellFocus: (index: number) => void;\n /**\n * Focus moved past the edge of the current page by `delta` periods. The owner\n * moves its anchor, which in turn flips the page and the focused index.\n */\n onMoveFocus: (delta: number) => void;\n /** `PageUp` / `PageDown` — one page back or forward. */\n onMovePage: (delta: -1 | 1) => void;\n}\n\n/**\n * A keyboard-navigable grid of calendar periods (months, quarters or years).\n *\n * The grid owns rendering, the roving tab stop and DOM focus; the owner owns\n * the periods themselves. Arrow keys that leave the page are reported through\n * `onMoveFocus` so the owner can page and keep focus on the adjacent period.\n */\nexport function PeriodGrid(props: CubePeriodGridProps) {\n let {\n cells,\n columns,\n focusedIndex,\n autoFocus,\n styles,\n onCellPress,\n onCellFocus,\n onMoveFocus,\n onMovePage,\n } = props;\n\n let cellRefs = useRef<Array<HTMLButtonElement | null>>([]);\n // Set by the grid's own keyboard handling and by `autoFocus`, so paging with\n // the header buttons never steals focus into the grid.\n let shouldFocusRef = useRef(!!autoFocus);\n\n let safeIndex = Math.max(0, Math.min(cells.length - 1, focusedIndex));\n\n cellRefs.current.length = cells.length;\n\n useLayoutEffect(() => {\n if (shouldFocusRef.current) {\n shouldFocusRef.current = false;\n cellRefs.current[safeIndex]?.focus();\n }\n });\n\n let moveFocus = (delta: number) => {\n shouldFocusRef.current = true;\n\n let next = safeIndex + delta;\n\n // Disabled cells can't hold DOM focus, so step over them instead of\n // stranding the caret on an unreachable period.\n while (next >= 0 && next < cells.length && cells[next].isDisabled) {\n next += delta;\n }\n\n if (next < 0 || next >= cells.length) {\n onMoveFocus(delta);\n } else {\n onCellFocus(next);\n }\n };\n\n let focusEdge = (edge: 'start' | 'end') => {\n let step = edge === 'start' ? 1 : -1;\n let index = edge === 'start' ? 0 : cells.length - 1;\n\n while (index >= 0 && index < cells.length && cells[index].isDisabled) {\n index += step;\n }\n\n if (index < 0 || index >= cells.length) return;\n\n shouldFocusRef.current = true;\n onCellFocus(index);\n };\n\n let onKeyDown = (e: KeyboardEvent) => {\n switch (e.key) {\n case 'ArrowRight':\n moveFocus(1);\n break;\n case 'ArrowLeft':\n moveFocus(-1);\n break;\n case 'ArrowDown':\n moveFocus(columns);\n break;\n case 'ArrowUp':\n moveFocus(-columns);\n break;\n case 'Home':\n focusEdge('start');\n break;\n case 'End':\n focusEdge('end');\n break;\n case 'PageUp':\n shouldFocusRef.current = true;\n onMovePage(-1);\n break;\n case 'PageDown':\n shouldFocusRef.current = true;\n onMovePage(1);\n break;\n default:\n return;\n }\n\n e.preventDefault();\n e.stopPropagation();\n };\n\n let rows: CubePeriodGridCell[][] = [];\n\n for (let i = 0; i < cells.length; i += columns) {\n rows.push(cells.slice(i, i + columns));\n }\n\n return (\n <PeriodGridElement\n aria-label={props['aria-label']}\n styles={styles}\n onKeyDown={onKeyDown}\n >\n <tbody data-element=\"Body\">\n {rows.map((row, rowIndex) => (\n <tr key={rowIndex} role=\"row\" data-element=\"Row\">\n {row.map((cell, columnIndex) => {\n let index = rowIndex * columns + columnIndex;\n\n return (\n <PeriodGridCellElement\n key={cell.key}\n aria-selected={!!cell.isSelected}\n >\n <PeriodGridButtonElement\n ref={(element: HTMLButtonElement | null) => {\n cellRefs.current[index] = element;\n }}\n type=\"button\"\n tabIndex={index === safeIndex ? 0 : -1}\n disabled={cell.isDisabled}\n aria-label={cell.ariaLabel}\n mods={{\n selected: cell.isSelected,\n current: cell.isCurrent,\n outside: cell.isOutside,\n disabled: cell.isDisabled,\n }}\n onFocus={() => onCellFocus(index)}\n onClick={() => onCellPress(index)}\n >\n {cell.label}\n </PeriodGridButtonElement>\n </PeriodGridCellElement>\n );\n })}\n </tr>\n ))}\n </tbody>\n </PeriodGridElement>\n );\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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 +1 @@
1
- {"version":3,"file":"CubeLogo.js","names":["mergeStyles","tasty","ForwardedRef","forwardRef","CubeIconProps","Icon","MARK_LIGHT_PATH","MARK_DARK_PATH","WORDMARK_PATH","MARK_VIEW_BOX","FULL_VIEW_BOX","FULL_ASPECT_RATIO","MarkPaths","$","_c","t0","Symbol","for","SCHEME_SWAP","LightMark","display","DarkMark","const","FORCED_SCHEME","light","dark","CubeLogoProps","scheme","resolveLogoStyles","styles","CubeLogoElement","qa","CubeLogo","props","ref","rest","t1","t2","CubeFullLogoElement","width","aspectRatio","Svg","height","CubeFullLogo"],"sources":["../../../../src/components/other/CubeLogo/CubeLogo.tsx"],"sourcesContent":["import { mergeStyles, tasty } from '@tenphi/tasty';\nimport { ForwardedRef, forwardRef } from 'react';\n\nimport { CubeIconProps, Icon } from '../../../icons/Icon';\n\n/**\n * Cube logo marks.\n *\n * The mark is two *different drawings*, not one drawing recoloured: the light\n * variant is an outlined cube, the dark variant is filled differently so it keeps\n * its weight against a dark surface. Both are rendered and swapped by the global\n * `@dark` state rather than picked in JS, so the logo follows the scheme without a\n * re-render and works in SSR.\n *\n * Both marks are drawn with `currentColor`, so colour comes from the surrounding\n * text colour (or an explicit `color` prop) — never a baked-in hex. That is the\n * whole reason the previous `CloudLogo` had to go: it hard-coded the old brand\n * hexes and could not adapt.\n */\n\nconst MARK_LIGHT_PATH =\n 'M12.3428 0.468443C13.3139 -0.0982146 14.5153 -0.0984244 15.4863 0.468443L25.7051 6.43426C26.1063 6.66852 26.3535 7.09853 26.3535 7.56317V11.9008C26.3534 12.1325 26.2301 12.347 26.0303 12.4642L23.8356 13.8389L25.7109 14.8737C26.1088 15.1088 26.3534 15.5366 26.3535 15.9987V20.4352C26.3535 20.8999 26.1063 21.3298 25.7051 21.5641L15.4834 27.53C14.5123 28.0967 13.3119 28.0968 12.3408 27.53L2.11914 21.5641C1.71803 21.3298 1.47168 20.8998 1.47168 20.4352V7.56317C1.47178 7.09851 1.71879 6.66848 2.12012 6.43426L12.3428 0.468443ZM14.7002 1.77118C14.2147 1.4878 13.6144 1.48791 13.1289 1.77118L3.18164 7.57587C3.06086 7.64635 2.98649 7.77589 2.98633 7.91571V20.0085L12.873 14.3005C13.5161 13.9292 14.3091 13.9292 14.9521 14.3005L24.8389 20.0095V16.3513C24.8388 16.2116 24.764 16.082 24.6436 16.0114L14.6982 10.197C14.2129 9.91323 13.6117 9.91297 13.126 10.196L6.38477 14.1247C6.13553 14.2695 5.82263 14.0897 5.82227 13.8015V10.3942C5.82238 10.188 5.93134 9.99713 6.1084 9.89129L12.8613 5.85614C13.5101 5.46859 14.3183 5.4637 14.9717 5.84344L24.8389 11.5788V7.91571C24.8387 7.77604 24.7641 7.64643 24.6436 7.57587L14.7002 1.77118Z';\n\nconst MARK_DARK_PATH =\n 'M25.9002 6.65073C26.2344 6.84455 26.44 7.20162 26.44 7.5879L26.4396 11.3066C26.4395 11.6899 26.2369 12.0447 25.9067 12.2395L22.6916 14.1362L25.9094 16.0449C26.2383 16.24 26.44 16.5941 26.44 16.9766V20.6864C26.44 21.0743 26.2326 21.4327 25.8961 21.6258L15.6128 27.5294C14.6148 28.1023 13.387 28.0996 12.3914 27.5223L2.09765 21.5528C1.7635 21.359 1.55781 21.002 1.55781 20.6157V7.58789C1.55781 7.20162 1.76349 6.84457 2.09764 6.65079L13.049 0.299736C13.6372 -0.0413849 14.363 -0.0413542 14.9512 0.299815L25.9002 6.65073ZM3.08936 20.3607C2.9078 20.4649 2.90801 20.7268 3.08974 20.8307L13.0565 26.5279C13.641 26.8619 14.3587 26.861 14.9423 26.5254L24.821 20.8447C25.0017 20.7408 25.0022 20.4802 24.8218 20.3756L14.9425 14.6505C14.3571 14.3112 13.6353 14.3097 13.0485 14.6464L3.08936 20.3607ZM5.55497 9.75456C5.3906 9.85215 5.28984 10.0292 5.28984 10.2203V13.6284C5.28984 13.8379 5.51738 13.968 5.69791 13.8619L13.0363 9.54766C13.631 9.19804 14.3687 9.19907 14.9624 9.55035L21.2322 13.26C21.4021 13.3605 21.6131 13.3607 21.7831 13.2604L24.8318 11.4632C25.0105 11.3579 25.0093 11.0991 24.8297 10.9954L14.9614 5.29588C14.3677 4.95297 13.6351 4.95738 13.0455 5.3074L5.55497 9.75456Z';\n\nconst WORDMARK_PATH =\n 'M52.1689 16.0085C52.1689 18.0202 53.5876 19.2742 55.3838 19.2742C57.1215 19.274 58.5107 18.02 58.5107 16.0085V7.46362H61.5527V15.7761C61.5526 19.6552 58.8592 22.1041 55.3857 22.1042C51.8518 22.1042 49.1584 19.6553 49.1582 15.7761V7.46362H52.1689V16.0085ZM68.2725 9.2146C69.3445 7.90193 71.0524 7.14436 73.0215 7.14429C77.0745 7.14226 79.999 10.3792 79.999 14.6375C79.999 18.8957 77.0747 22.1042 73.0498 22.1042C70.964 22.1042 69.1394 21.26 68.0693 19.8015V21.7849H65.2314V0.6521H68.2725V9.2146ZM90.0576 7.14233C93.851 7.14255 96.6309 9.94205 96.6309 13.7039C96.6308 14.4918 96.4859 15.2518 96.3994 15.6306H85.8008C86.2072 17.9925 88.0019 19.3923 90.4336 19.3923C92.0849 19.3923 93.3865 18.7502 94.5752 17.7009L96.0234 19.8015C94.5169 21.2297 92.6055 22.1042 90.3467 22.1042C85.9457 22.1042 82.7012 18.8673 82.7012 14.6375C82.7012 10.438 85.9161 7.14233 90.0576 7.14233ZM40.5293 7.14233C43.2224 7.14248 45.3056 8.45506 46.5225 10.4666L44.3809 12.158C43.4536 10.8452 42.2663 9.97046 40.5586 9.97046C37.952 9.97067 36.0996 12.0122 36.0996 14.6072C36.0996 17.2608 37.952 19.272 40.5586 19.2722C42.2381 19.2722 43.4254 18.4277 44.3809 17.115L46.5225 18.7781C45.2774 20.7896 43.1922 22.1021 40.5293 22.1023C36.3314 22.1043 33 18.837 33 14.6091C33 10.4096 36.3314 7.14233 40.5293 7.14233ZM72.5273 9.94409C70.3852 9.94409 68.2403 11.4022 68.2402 14.6394C68.2402 17.905 70.4133 19.3044 72.5273 19.3044C74.9891 19.3042 76.872 17.3803 76.8721 14.6091C76.8721 11.838 74.961 9.9443 72.5273 9.94409ZM89.9424 9.73706C87.9431 9.73916 86.322 11.109 85.8594 13.238H93.5908C93.5325 10.9914 91.8834 9.73706 89.9424 9.73706Z';\n\n/** Mark artwork is square. */\nconst MARK_VIEW_BOX = '0 0 28 28';\n/**\n * Full logo = mark (x 0–28) + wordmark (x 33–98) on one canvas, so the 5-unit\n * gap between them is part of the artwork rather than a layout concern.\n */\nconst FULL_VIEW_BOX = '0 0 98 28';\n/** 98 / 28 — used to let width follow height automatically. */\nconst FULL_ASPECT_RATIO = '98 / 28';\n\nconst MarkPaths = () => (\n <>\n <path\n clipRule=\"evenodd\"\n d={MARK_LIGHT_PATH}\n data-element=\"LightMark\"\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n />\n <path\n clipRule=\"evenodd\"\n d={MARK_DARK_PATH}\n data-element=\"DarkMark\"\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n />\n </>\n);\n\nconst SCHEME_SWAP = {\n LightMark: {\n display: { '': 'block', '@dark': 'none' },\n },\n DarkMark: {\n display: { '': 'none', '@dark': 'block' },\n },\n} as const;\n\n/**\n * Pin one mark instead of letting the `@dark` state choose.\n *\n * Needed wherever the background is known but the *document* scheme does not\n * describe it: a fixed-dark panel in a light app (`#surface-inverse`, the\n * `special` theme), an exported image, or a themed region — `tokens` overrides\n * token *values*, and `@dark` is a state, so a region preview cannot reach the\n * swap on its own.\n */\nconst FORCED_SCHEME = {\n light: {\n LightMark: { display: 'block' },\n DarkMark: { display: 'none' },\n },\n dark: {\n LightMark: { display: 'none' },\n DarkMark: { display: 'block' },\n },\n} as const;\n\nexport interface CubeLogoProps extends CubeIconProps {\n /**\n * Force the light or dark mark. Omit it — the default — to follow the document\n * scheme in CSS, which costs no re-render and is correct during SSR.\n */\n scheme?: 'light' | 'dark';\n}\n\n/** Caller styles win; a forced scheme only overrides the swap itself. */\nfunction resolveLogoStyles({ scheme, styles }: CubeLogoProps) {\n return scheme ? mergeStyles(FORCED_SCHEME[scheme], styles) : styles;\n}\n\n/**\n * Square Cube mark, sized through `Icon` — pass `size` (or any `Icon` style prop)\n * and both axes follow it.\n */\nconst CubeLogoElement = tasty(Icon, {\n qa: 'CubeLogo',\n styles: SCHEME_SWAP,\n});\n\nexport const CubeLogo = forwardRef(function CubeLogo(\n props: CubeLogoProps,\n ref: ForwardedRef<HTMLSpanElement>,\n) {\n const { scheme, styles, ...rest } = props;\n\n return (\n <CubeLogoElement\n aria-label=\"Cube\"\n role=\"img\"\n {...rest}\n styles={resolveLogoStyles(props)}\n ref={ref}\n >\n <svg\n fill=\"none\"\n viewBox={MARK_VIEW_BOX}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <MarkPaths />\n </svg>\n </CubeLogoElement>\n );\n});\n\n/**\n * Cube mark + wordmark.\n *\n * `size` sets the **height** only; the width follows the artwork's aspect ratio.\n * `Icon` is square by default (`width: '1em 1em'`), so both the wrapper and the\n * inner `svg` have their width released to `auto` and the ratio pinned with\n * `aspectRatio` — otherwise the wordmark would be squashed into a 1em box.\n */\nconst CubeFullLogoElement = tasty(Icon, {\n qa: 'CubeFullLogo',\n styles: {\n ...SCHEME_SWAP,\n // Height still comes from `$icon-size` via `Icon`; width must not.\n width: 'auto',\n aspectRatio: FULL_ASPECT_RATIO,\n\n Svg: {\n width: 'auto',\n height: '1em 1em',\n aspectRatio: FULL_ASPECT_RATIO,\n },\n },\n});\n\nexport const CubeFullLogo = forwardRef(function CubeFullLogo(\n props: CubeLogoProps,\n ref: ForwardedRef<HTMLSpanElement>,\n) {\n const { scheme, styles, ...rest } = props;\n\n return (\n <CubeFullLogoElement\n aria-label=\"Cube\"\n role=\"img\"\n {...rest}\n styles={resolveLogoStyles(props)}\n ref={ref}\n >\n <svg\n fill=\"none\"\n viewBox={FULL_VIEW_BOX}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <MarkPaths />\n <path d={WORDMARK_PATH} fill=\"currentColor\" />\n </svg>\n </CubeFullLogoElement>\n );\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"CubeLogo.js","names":["mergeStyles","tasty","ForwardedRef","forwardRef","CubeIconProps","Icon","MARK_LIGHT_PATH","MARK_DARK_PATH","WORDMARK_PATH","MARK_VIEW_BOX","FULL_VIEW_BOX","FULL_ASPECT_RATIO","MarkPaths","$","_c","t0","Symbol","for","SCHEME_SWAP","LightMark","display","DarkMark","const","FORCED_SCHEME","light","dark","CubeLogoProps","scheme","resolveLogoStyles","styles","CubeLogoElement","qa","CubeLogo","props","ref","rest","t1","t2","CubeFullLogoElement","width","aspectRatio","Svg","height","CubeFullLogo"],"sources":["../../../../src/components/other/CubeLogo/CubeLogo.tsx"],"sourcesContent":["import { mergeStyles, tasty } from '@tenphi/tasty';\nimport { ForwardedRef, forwardRef } from 'react';\n\nimport { CubeIconProps, Icon } from '../../../icons/Icon';\n\n/**\n * Cube logo marks.\n *\n * The mark is two *different drawings*, not one drawing recoloured: the light\n * variant is an outlined cube, the dark variant is filled differently so it keeps\n * its weight against a dark surface. Both are rendered and swapped by the global\n * `@dark` state rather than picked in JS, so the logo follows the scheme without a\n * re-render and works in SSR.\n *\n * Both marks are drawn with `currentColor`, so colour comes from the surrounding\n * text colour (or an explicit `color` prop) — never a baked-in hex. That is the\n * whole reason the previous `CloudLogo` had to go: it hard-coded the old brand\n * hexes and could not adapt.\n */\n\nconst MARK_LIGHT_PATH =\n 'M12.3428 0.468443C13.3139 -0.0982146 14.5153 -0.0984244 15.4863 0.468443L25.7051 6.43426C26.1063 6.66852 26.3535 7.09853 26.3535 7.56317V11.9008C26.3534 12.1325 26.2301 12.347 26.0303 12.4642L23.8356 13.8389L25.7109 14.8737C26.1088 15.1088 26.3534 15.5366 26.3535 15.9987V20.4352C26.3535 20.8999 26.1063 21.3298 25.7051 21.5641L15.4834 27.53C14.5123 28.0967 13.3119 28.0968 12.3408 27.53L2.11914 21.5641C1.71803 21.3298 1.47168 20.8998 1.47168 20.4352V7.56317C1.47178 7.09851 1.71879 6.66848 2.12012 6.43426L12.3428 0.468443ZM14.7002 1.77118C14.2147 1.4878 13.6144 1.48791 13.1289 1.77118L3.18164 7.57587C3.06086 7.64635 2.98649 7.77589 2.98633 7.91571V20.0085L12.873 14.3005C13.5161 13.9292 14.3091 13.9292 14.9521 14.3005L24.8389 20.0095V16.3513C24.8388 16.2116 24.764 16.082 24.6436 16.0114L14.6982 10.197C14.2129 9.91323 13.6117 9.91297 13.126 10.196L6.38477 14.1247C6.13553 14.2695 5.82263 14.0897 5.82227 13.8015V10.3942C5.82238 10.188 5.93134 9.99713 6.1084 9.89129L12.8613 5.85614C13.5101 5.46859 14.3183 5.4637 14.9717 5.84344L24.8389 11.5788V7.91571C24.8387 7.77604 24.7641 7.64643 24.6436 7.57587L14.7002 1.77118Z';\n\nconst MARK_DARK_PATH =\n 'M25.9002 6.65073C26.2344 6.84455 26.44 7.20162 26.44 7.5879L26.4396 11.3066C26.4395 11.6899 26.2369 12.0447 25.9067 12.2395L22.6916 14.1362L25.9094 16.0449C26.2383 16.24 26.44 16.5941 26.44 16.9766V20.6864C26.44 21.0743 26.2326 21.4327 25.8961 21.6258L15.6128 27.5294C14.6148 28.1023 13.387 28.0996 12.3914 27.5223L2.09765 21.5528C1.7635 21.359 1.55781 21.002 1.55781 20.6157V7.58789C1.55781 7.20162 1.76349 6.84457 2.09764 6.65079L13.049 0.299736C13.6372 -0.0413849 14.363 -0.0413542 14.9512 0.299815L25.9002 6.65073ZM3.08936 20.3607C2.9078 20.4649 2.90801 20.7268 3.08974 20.8307L13.0565 26.5279C13.641 26.8619 14.3587 26.861 14.9423 26.5254L24.821 20.8447C25.0017 20.7408 25.0022 20.4802 24.8218 20.3756L14.9425 14.6505C14.3571 14.3112 13.6353 14.3097 13.0485 14.6464L3.08936 20.3607ZM5.55497 9.75456C5.3906 9.85215 5.28984 10.0292 5.28984 10.2203V13.6284C5.28984 13.8379 5.51738 13.968 5.69791 13.8619L13.0363 9.54766C13.631 9.19804 14.3687 9.19907 14.9624 9.55035L21.2322 13.26C21.4021 13.3605 21.6131 13.3607 21.7831 13.2604L24.8318 11.4632C25.0105 11.3579 25.0093 11.0991 24.8297 10.9954L14.9614 5.29588C14.3677 4.95297 13.6351 4.95738 13.0455 5.3074L5.55497 9.75456Z';\n\nconst WORDMARK_PATH =\n 'M52.1689 16.0085C52.1689 18.0202 53.5876 19.2742 55.3838 19.2742C57.1215 19.274 58.5107 18.02 58.5107 16.0085V7.46362H61.5527V15.7761C61.5526 19.6552 58.8592 22.1041 55.3857 22.1042C51.8518 22.1042 49.1584 19.6553 49.1582 15.7761V7.46362H52.1689V16.0085ZM68.2725 9.2146C69.3445 7.90193 71.0524 7.14436 73.0215 7.14429C77.0745 7.14226 79.999 10.3792 79.999 14.6375C79.999 18.8957 77.0747 22.1042 73.0498 22.1042C70.964 22.1042 69.1394 21.26 68.0693 19.8015V21.7849H65.2314V0.6521H68.2725V9.2146ZM90.0576 7.14233C93.851 7.14255 96.6309 9.94205 96.6309 13.7039C96.6308 14.4918 96.4859 15.2518 96.3994 15.6306H85.8008C86.2072 17.9925 88.0019 19.3923 90.4336 19.3923C92.0849 19.3923 93.3865 18.7502 94.5752 17.7009L96.0234 19.8015C94.5169 21.2297 92.6055 22.1042 90.3467 22.1042C85.9457 22.1042 82.7012 18.8673 82.7012 14.6375C82.7012 10.438 85.9161 7.14233 90.0576 7.14233ZM40.5293 7.14233C43.2224 7.14248 45.3056 8.45506 46.5225 10.4666L44.3809 12.158C43.4536 10.8452 42.2663 9.97046 40.5586 9.97046C37.952 9.97067 36.0996 12.0122 36.0996 14.6072C36.0996 17.2608 37.952 19.272 40.5586 19.2722C42.2381 19.2722 43.4254 18.4277 44.3809 17.115L46.5225 18.7781C45.2774 20.7896 43.1922 22.1021 40.5293 22.1023C36.3314 22.1043 33 18.837 33 14.6091C33 10.4096 36.3314 7.14233 40.5293 7.14233ZM72.5273 9.94409C70.3852 9.94409 68.2403 11.4022 68.2402 14.6394C68.2402 17.905 70.4133 19.3044 72.5273 19.3044C74.9891 19.3042 76.872 17.3803 76.8721 14.6091C76.8721 11.838 74.961 9.9443 72.5273 9.94409ZM89.9424 9.73706C87.9431 9.73916 86.322 11.109 85.8594 13.238H93.5908C93.5325 10.9914 91.8834 9.73706 89.9424 9.73706Z';\n\n/** Mark artwork is square. */\nconst MARK_VIEW_BOX = '0 0 28 28';\n/**\n * Full logo = mark (x 0–28) + wordmark (x 33–98) on one canvas, so the 5-unit\n * gap between them is part of the artwork rather than a layout concern.\n */\nconst FULL_VIEW_BOX = '0 0 98 28';\n/** 98 / 28 — used to let width follow height automatically. */\nconst FULL_ASPECT_RATIO = '98 / 28';\n\nconst MarkPaths = () => (\n <>\n <path\n clipRule=\"evenodd\"\n d={MARK_LIGHT_PATH}\n data-element=\"LightMark\"\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n />\n <path\n clipRule=\"evenodd\"\n d={MARK_DARK_PATH}\n data-element=\"DarkMark\"\n fill=\"currentColor\"\n fillRule=\"evenodd\"\n />\n </>\n);\n\nconst SCHEME_SWAP = {\n LightMark: {\n display: { '': 'block', '@dark': 'none' },\n },\n DarkMark: {\n display: { '': 'none', '@dark': 'block' },\n },\n} as const;\n\n/**\n * Pin one mark instead of letting the `@dark` state choose.\n *\n * Needed wherever the background is known but the *document* scheme does not\n * describe it: a fixed-dark panel in a light app (`#surface-inverse`, the\n * `special` theme), an exported image, or a themed region — `tokens` overrides\n * token *values*, and `@dark` is a state, so a region preview cannot reach the\n * swap on its own.\n */\nconst FORCED_SCHEME = {\n light: {\n LightMark: { display: 'block' },\n DarkMark: { display: 'none' },\n },\n dark: {\n LightMark: { display: 'none' },\n DarkMark: { display: 'block' },\n },\n} as const;\n\nexport interface CubeLogoProps extends CubeIconProps {\n /**\n * Force the light or dark mark. Omit it — the default — to follow the document\n * scheme in CSS, which costs no re-render and is correct during SSR.\n */\n scheme?: 'light' | 'dark';\n}\n\n/** Caller styles win; a forced scheme only overrides the swap itself. */\nfunction resolveLogoStyles({ scheme, styles }: CubeLogoProps) {\n return scheme ? mergeStyles(FORCED_SCHEME[scheme], styles) : styles;\n}\n\n/**\n * Square Cube mark, sized through `Icon` — pass `size` (or any `Icon` style prop)\n * and both axes follow it.\n */\nconst CubeLogoElement = tasty(Icon, {\n qa: 'CubeLogo',\n styles: SCHEME_SWAP,\n});\n\nexport const CubeLogo = forwardRef(function CubeLogo(\n props: CubeLogoProps,\n ref: ForwardedRef<HTMLSpanElement>,\n) {\n const { scheme, styles, ...rest } = props;\n\n return (\n <CubeLogoElement\n aria-label=\"Cube\"\n role=\"img\"\n {...rest}\n styles={resolveLogoStyles(props)}\n ref={ref}\n >\n <svg\n fill=\"none\"\n viewBox={MARK_VIEW_BOX}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <MarkPaths />\n </svg>\n </CubeLogoElement>\n );\n});\n\n/**\n * Cube mark + wordmark.\n *\n * `size` sets the **height** only; the width follows the artwork's aspect ratio.\n * `Icon` is square by default (`width: '1em 1em'`), so both the wrapper and the\n * inner `svg` have their width released to `auto` and the ratio pinned with\n * `aspectRatio` — otherwise the wordmark would be squashed into a 1em box.\n */\nconst CubeFullLogoElement = tasty(Icon, {\n qa: 'CubeFullLogo',\n styles: {\n // eslint-disable-next-line tasty/no-style-spread -- light/dark mark swap shared with CubeLogo\n ...SCHEME_SWAP,\n // Height still comes from `$icon-size` via `Icon`; width must not.\n width: 'auto',\n aspectRatio: FULL_ASPECT_RATIO,\n\n Svg: {\n width: 'auto',\n height: '1em 1em',\n aspectRatio: FULL_ASPECT_RATIO,\n },\n },\n});\n\nexport const CubeFullLogo = forwardRef(function CubeFullLogo(\n props: CubeLogoProps,\n ref: ForwardedRef<HTMLSpanElement>,\n) {\n const { scheme, styles, ...rest } = props;\n\n return (\n <CubeFullLogoElement\n aria-label=\"Cube\"\n role=\"img\"\n {...rest}\n styles={resolveLogoStyles(props)}\n ref={ref}\n >\n <svg\n fill=\"none\"\n viewBox={FULL_VIEW_BOX}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <MarkPaths />\n <path d={WORDMARK_PATH} fill=\"currentColor\" />\n </svg>\n </CubeFullLogoElement>\n );\n});\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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.187.2 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.189.0 | 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";
@@ -9,6 +9,7 @@ import { useDialogContext } from "../Dialog/context.js";
9
9
  import { Content } from "../../content/Content.js";
10
10
  import { Footer } from "../../content/Footer.js";
11
11
  import { Header } from "../../content/Header.js";
12
+ import { withDefaultButtonText } from "../Dialog/default-button-text.js";
12
13
  import { Dialog } from "../Dialog/Dialog.js";
13
14
  import { c } from "react-compiler-runtime";
14
15
  import { forwardRef } from "react";
@@ -19,115 +20,76 @@ import { jsx, jsxs } from "react/jsx-runtime";
19
20
  * AlertDialogs are a specific type of Dialog. They display important information that users need to acknowledge.
20
21
  */
21
22
  function AlertDialog(props, ref) {
22
- const $ = c(40);
23
+ const $ = c(29);
23
24
  const { onClose } = useDialogContext();
24
25
  const { t } = useI18n();
25
- let t0;
26
- if ($[0] !== t) {
27
- t0 = t("alertDialog.confirm", "Ok");
28
- $[0] = t;
29
- $[1] = t0;
30
- } else t0 = $[1];
31
- let t1;
32
- if ($[2] !== t0) {
33
- t1 = {
34
- label: t0,
35
- type: "primary"
36
- };
37
- $[2] = t0;
38
- $[3] = t1;
39
- } else t1 = $[3];
40
- const DEFAULT_CONFIRM_PROPS = t1;
41
- let t2;
42
- if ($[4] !== t) {
43
- t2 = t("alertDialog.cancel", "Cancel");
44
- $[4] = t;
45
- $[5] = t2;
46
- } else t2 = $[5];
47
- let t3;
48
- if ($[6] !== t2) {
49
- t3 = { label: t2 };
50
- $[6] = t2;
51
- $[7] = t3;
52
- } else t3 = $[7];
53
- const DEFAULT_CANCEL_PROPS = t3;
54
26
  let actions;
55
27
  let content;
56
28
  let danger;
57
29
  let noActions;
58
30
  let otherProps;
59
31
  let title;
60
- if ($[8] !== props) {
61
- const { danger: t4, actions: t5, title: t6, styles, noActions: t7, content: t8, ...t9 } = props;
62
- danger = t4;
63
- actions = t5;
64
- title = t6;
65
- noActions = t7;
66
- content = t8;
67
- otherProps = t9;
68
- $[8] = props;
69
- $[9] = actions;
70
- $[10] = content;
71
- $[11] = danger;
72
- $[12] = noActions;
73
- $[13] = otherProps;
74
- $[14] = title;
32
+ if ($[0] !== props) {
33
+ const { danger: t0, actions: t1, title: t2, styles, noActions: t3, content: t4, ...t5 } = props;
34
+ danger = t0;
35
+ actions = t1;
36
+ title = t2;
37
+ noActions = t3;
38
+ content = t4;
39
+ otherProps = t5;
40
+ $[0] = props;
41
+ $[1] = actions;
42
+ $[2] = content;
43
+ $[3] = danger;
44
+ $[4] = noActions;
45
+ $[5] = otherProps;
46
+ $[6] = title;
75
47
  } else {
76
- actions = $[9];
77
- content = $[10];
78
- danger = $[11];
79
- noActions = $[12];
80
- otherProps = $[13];
81
- title = $[14];
48
+ actions = $[1];
49
+ content = $[2];
50
+ danger = $[3];
51
+ noActions = $[4];
52
+ otherProps = $[5];
53
+ title = $[6];
82
54
  }
83
- let t4;
84
- if ($[15] !== actions) {
85
- t4 = actions ?? {};
86
- $[15] = actions;
87
- $[16] = t4;
88
- } else t4 = $[16];
89
55
  let cancelProps;
90
56
  let confirmProps;
91
57
  let secondaryProps;
92
- if ($[17] !== DEFAULT_CANCEL_PROPS || $[18] !== DEFAULT_CONFIRM_PROPS || $[19] !== t4) {
93
- const { confirm: t5, secondary: t6, cancel: t7 } = t4;
94
- secondaryProps = t6;
95
- confirmProps = t5;
96
- cancelProps = t7;
97
- confirmProps = confirmProps !== false ? {
98
- ...DEFAULT_CONFIRM_PROPS,
58
+ if ($[7] !== actions || $[8] !== t) {
59
+ const { confirm: t0, secondary: t1, cancel: t2 } = actions ?? {};
60
+ secondaryProps = t1;
61
+ confirmProps = t0;
62
+ cancelProps = t2;
63
+ confirmProps = confirmProps !== false ? withDefaultButtonText({
64
+ type: "primary",
99
65
  ...typeof confirmProps === "object" ? confirmProps : null
100
- } : void 0;
101
- cancelProps = cancelProps ? {
102
- ...DEFAULT_CANCEL_PROPS,
103
- ...typeof cancelProps === "object" ? cancelProps : null
104
- } : void 0;
105
- $[17] = DEFAULT_CANCEL_PROPS;
106
- $[18] = DEFAULT_CONFIRM_PROPS;
107
- $[19] = t4;
108
- $[20] = cancelProps;
109
- $[21] = confirmProps;
110
- $[22] = secondaryProps;
66
+ }, t("alertDialog.confirm", "Ok")) : void 0;
67
+ cancelProps = cancelProps ? withDefaultButtonText(typeof cancelProps === "object" ? cancelProps : void 0, t("alertDialog.cancel", "Cancel")) : void 0;
68
+ $[7] = actions;
69
+ $[8] = t;
70
+ $[9] = cancelProps;
71
+ $[10] = confirmProps;
72
+ $[11] = secondaryProps;
111
73
  } else {
112
- cancelProps = $[20];
113
- confirmProps = $[21];
114
- secondaryProps = $[22];
74
+ cancelProps = $[9];
75
+ confirmProps = $[10];
76
+ secondaryProps = $[11];
115
77
  }
116
- let t5;
117
- if ($[23] !== title) {
118
- t5 = title ? /* @__PURE__ */ jsx(Header, { children: /* @__PURE__ */ jsx(_Title, { children: title }) }) : null;
119
- $[23] = title;
120
- $[24] = t5;
121
- } else t5 = $[24];
122
- let t6;
123
- if ($[25] !== content) {
124
- t6 = content ? /* @__PURE__ */ jsx(Content, { children: typeof content === "string" ? /* @__PURE__ */ jsx(Paragraph, { children: content }) : content }) : null;
125
- $[25] = content;
126
- $[26] = t6;
127
- } else t6 = $[26];
128
- let t7;
129
- if ($[27] !== cancelProps || $[28] !== confirmProps || $[29] !== danger || $[30] !== noActions || $[31] !== onClose || $[32] !== secondaryProps) {
130
- t7 = !noActions && (confirmProps || secondaryProps || cancelProps) ? /* @__PURE__ */ jsx(Footer, { children: /* @__PURE__ */ jsxs(ButtonGroup, { children: [
78
+ let t0;
79
+ if ($[12] !== title) {
80
+ t0 = title ? /* @__PURE__ */ jsx(Header, { children: /* @__PURE__ */ jsx(_Title, { children: title }) }) : null;
81
+ $[12] = title;
82
+ $[13] = t0;
83
+ } else t0 = $[13];
84
+ let t1;
85
+ if ($[14] !== content) {
86
+ t1 = content ? /* @__PURE__ */ jsx(Content, { children: typeof content === "string" ? /* @__PURE__ */ jsx(Paragraph, { children: content }) : content }) : null;
87
+ $[14] = content;
88
+ $[15] = t1;
89
+ } else t1 = $[15];
90
+ let t2;
91
+ if ($[16] !== cancelProps || $[17] !== confirmProps || $[18] !== danger || $[19] !== noActions || $[20] !== onClose || $[21] !== secondaryProps) {
92
+ t2 = !noActions && (confirmProps || secondaryProps || cancelProps) ? /* @__PURE__ */ jsx(Footer, { children: /* @__PURE__ */ jsxs(ButtonGroup, { children: [
131
93
  confirmProps && /* @__PURE__ */ jsx(Button, {
132
94
  autoFocus: true,
133
95
  theme: danger ? "danger" : void 0,
@@ -143,35 +105,35 @@ function AlertDialog(props, ref) {
143
105
  onPress: (e_1) => chain(cancelProps?.onPress?.(e_1), onClose?.("cancel"))
144
106
  })
145
107
  ] }) }) : null;
146
- $[27] = cancelProps;
147
- $[28] = confirmProps;
148
- $[29] = danger;
149
- $[30] = noActions;
150
- $[31] = onClose;
151
- $[32] = secondaryProps;
152
- $[33] = t7;
153
- } else t7 = $[33];
154
- let t8;
155
- if ($[34] !== otherProps || $[35] !== ref || $[36] !== t5 || $[37] !== t6 || $[38] !== t7) {
156
- t8 = /* @__PURE__ */ jsxs(Dialog, {
108
+ $[16] = cancelProps;
109
+ $[17] = confirmProps;
110
+ $[18] = danger;
111
+ $[19] = noActions;
112
+ $[20] = onClose;
113
+ $[21] = secondaryProps;
114
+ $[22] = t2;
115
+ } else t2 = $[22];
116
+ let t3;
117
+ if ($[23] !== otherProps || $[24] !== ref || $[25] !== t0 || $[26] !== t1 || $[27] !== t2) {
118
+ t3 = /* @__PURE__ */ jsxs(Dialog, {
157
119
  ref,
158
120
  role: "alertdialog",
159
121
  isDismissable: false,
160
122
  ...otherProps,
161
123
  children: [
162
- t5,
163
- t6,
164
- t7
124
+ t0,
125
+ t1,
126
+ t2
165
127
  ]
166
128
  });
167
- $[34] = otherProps;
168
- $[35] = ref;
169
- $[36] = t5;
170
- $[37] = t6;
171
- $[38] = t7;
172
- $[39] = t8;
173
- } else t8 = $[39];
174
- return t8;
129
+ $[23] = otherProps;
130
+ $[24] = ref;
131
+ $[25] = t0;
132
+ $[26] = t1;
133
+ $[27] = t2;
134
+ $[28] = t3;
135
+ } else t3 = $[28];
136
+ return t3;
175
137
  }
176
138
  /**
177
139
  * AlertDialogs are a specific type of Dialog. They display important information that users need to acknowledge.