@cube-dev/ui-kit 0.208.0 → 0.210.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 (613) hide show
  1. package/README.md +1 -1
  2. package/dist/CHANGELOG.md +24 -0
  3. package/dist/README.md +1 -1
  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 +1 -1
  15. package/dist/components/GridProvider.js +1 -1
  16. package/dist/components/HiddenInput.js +1 -1
  17. package/dist/components/Root.js +5 -2
  18. package/dist/components/Root.js.map +1 -1
  19. package/dist/components/actions/Action/Action.js +1 -1
  20. package/dist/components/actions/Banner/Banner.js +1 -1
  21. package/dist/components/actions/Button/AutoCollapseObserver.js +215 -0
  22. package/dist/components/actions/Button/AutoCollapseObserver.js.map +1 -0
  23. package/dist/components/actions/Button/Button.d.ts +38 -0
  24. package/dist/components/actions/Button/Button.js +73 -13
  25. package/dist/components/actions/Button/Button.js.map +1 -1
  26. package/dist/components/actions/Button/index.js +1 -1
  27. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  28. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  29. package/dist/components/actions/ButtonSplit/context.js +1 -1
  30. package/dist/components/actions/CommandMenu/CommandMenu.js +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/ItemActionContext.js +1 -1
  34. package/dist/components/actions/ItemActionsWrapper.js +2 -2
  35. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  36. package/dist/components/actions/Link/Link.js +1 -1
  37. package/dist/components/actions/Menu/Menu.js +1 -1
  38. package/dist/components/actions/Menu/MenuCollectionItem.js +1 -1
  39. package/dist/components/actions/Menu/MenuItem.js +1 -1
  40. package/dist/components/actions/Menu/MenuSection.js +1 -1
  41. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  42. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  43. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  44. package/dist/components/actions/Menu/context.js +1 -1
  45. package/dist/components/actions/Menu/styled.js +1 -1
  46. package/dist/components/actions/actions-run.js +1 -1
  47. package/dist/components/actions/use-action.js +1 -1
  48. package/dist/components/actions/use-anchored-menu.js +1 -1
  49. package/dist/components/actions/use-context-menu.js +2 -2
  50. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  51. package/dist/components/content/Alert/Alert.js +1 -1
  52. package/dist/components/content/Alert/use-alert.js +1 -1
  53. package/dist/components/content/Avatar/Avatar.js +1 -1
  54. package/dist/components/content/Badge/Badge.js +1 -1
  55. package/dist/components/content/Card/Card.js +1 -1
  56. package/dist/components/content/Content.js +1 -1
  57. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  58. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  59. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  60. package/dist/components/content/Divider/Divider.js +1 -1
  61. package/dist/components/content/Footer.js +1 -1
  62. package/dist/components/content/Header.js +1 -1
  63. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  64. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  65. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  66. package/dist/components/content/Item/Item.d.ts +0 -9
  67. package/dist/components/content/Item/Item.js +108 -112
  68. package/dist/components/content/Item/Item.js.map +1 -1
  69. package/dist/components/content/Item/ItemWithNativeLinks.js +1 -1
  70. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  71. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  72. package/dist/components/content/Layout/GridLayout.js +1 -1
  73. package/dist/components/content/Layout/Layout.js +1 -1
  74. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  75. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  76. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  77. package/dist/components/content/Layout/LayoutContent.js +1 -1
  78. package/dist/components/content/Layout/LayoutContext.js +1 -1
  79. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  80. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  81. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  82. package/dist/components/content/Layout/LayoutHeader.d.ts +6 -0
  83. package/dist/components/content/Layout/LayoutHeader.js +98 -86
  84. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  85. package/dist/components/content/Layout/LayoutPane.js +1 -1
  86. package/dist/components/content/Layout/LayoutPanel.js +2 -2
  87. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  88. package/dist/components/content/Layout/LayoutPanelTransition.js +1 -1
  89. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  90. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  91. package/dist/components/content/Layout/index.js +1 -1
  92. package/dist/components/content/Layout/utils.js +1 -1
  93. package/dist/components/content/Paragraph.js +1 -1
  94. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  95. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  96. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  97. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  98. package/dist/components/content/Result/Result.js +1 -1
  99. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  100. package/dist/components/content/Tag/Tag.js +1 -1
  101. package/dist/components/content/Text.js +1 -1
  102. package/dist/components/content/TextItem/TextItem.js +1 -1
  103. package/dist/components/content/Title.js +1 -1
  104. package/dist/components/content/Tree/Tree.js +1 -1
  105. package/dist/components/content/Tree/TreeNode.js +1 -1
  106. package/dist/components/content/Tree/checked-keys.js +1 -1
  107. package/dist/components/content/Tree/rowId.js +1 -1
  108. package/dist/components/content/Tree/styled.js +1 -1
  109. package/dist/components/content/Tree/tree-index.js +1 -1
  110. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  111. package/dist/components/content/Tree/use-load-data.js +1 -1
  112. package/dist/components/content/highlightText.js +1 -1
  113. package/dist/components/content/use-auto-tooltip.js +233 -111
  114. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  115. package/dist/components/data/DataTable/DataTable.js +1 -1
  116. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  117. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  118. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  119. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  120. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  121. package/dist/components/data/ItemTable/item-table-sections.js +1 -1
  122. package/dist/components/data/ItemTable/use-item-table-column-widths.js +1 -1
  123. package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
  124. package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
  125. package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
  126. package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
  127. package/dist/components/data/ItemTable/use-item-table-tree-model.js +1 -1
  128. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  129. package/dist/components/data/TableBase/RowCollection.js +1 -1
  130. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  131. package/dist/components/data/TableBase/TableRow.js +1 -1
  132. package/dist/components/data/TableBase/TableRowLink.js +1 -1
  133. package/dist/components/data/TableBase/TableView.js +1 -1
  134. package/dist/components/data/TableBase/TreeGridTable.js +1 -1
  135. package/dist/components/data/TableBase/column-header.js +1 -1
  136. package/dist/components/data/TableBase/column-menu.js +1 -1
  137. package/dist/components/data/TableBase/column-styles.js +1 -1
  138. package/dist/components/data/TableBase/column-tint.js +1 -1
  139. package/dist/components/data/TableBase/row-menu.js +1 -1
  140. package/dist/components/data/TableBase/styled.js +1 -1
  141. package/dist/components/data/TableBase/table-body-sections.js +1 -1
  142. package/dist/components/data/TableBase/table-tree.js +1 -1
  143. package/dist/components/data/TableBase/types.js +1 -1
  144. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  145. package/dist/components/data/TableBase/use-column-menu.js +1 -1
  146. package/dist/components/data/TableBase/use-column-order.js +1 -1
  147. package/dist/components/data/TableBase/use-column-window.js +1 -1
  148. package/dist/components/data/TableBase/use-container-width.js +1 -1
  149. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  150. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  151. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  152. package/dist/components/data/TableBase/use-table-search.js +1 -1
  153. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  154. package/dist/components/data/TableBase/use-table-sort.js +1 -1
  155. package/dist/components/data/TableBase/use-table-sorts.js +1 -1
  156. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  157. package/dist/components/data/TableBase/use-table-tooltip-refresh.js +1 -1
  158. package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
  159. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  160. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  161. package/dist/components/fields/Checkbox/context.js +1 -1
  162. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  163. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  164. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  165. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  166. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  167. package/dist/components/fields/ComboBox/comboBoxOptions.js +1 -1
  168. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  169. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  170. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  171. package/dist/components/fields/DatePicker/CalendarPopover.js +1 -1
  172. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  173. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  174. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  175. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  176. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  177. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  178. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  179. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  180. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  181. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  182. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  183. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  184. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  185. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  186. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  187. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  188. package/dist/components/fields/DatePicker/period.js +1 -1
  189. package/dist/components/fields/DatePicker/props.js +1 -1
  190. package/dist/components/fields/DatePicker/utils.js +1 -1
  191. package/dist/components/fields/FileInput/FileInput.js +206 -184
  192. package/dist/components/fields/FileInput/FileInput.js.map +1 -1
  193. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  194. package/dist/components/fields/FilterListBox/styled.js +1 -1
  195. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  196. package/dist/components/fields/FilterPicker/FilterTree.js +1 -1
  197. package/dist/components/fields/Input/Input.js +1 -1
  198. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  199. package/dist/components/fields/ListBox/ListBox.js +1 -1
  200. package/dist/components/fields/ListBox/optionId.js +1 -1
  201. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  202. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  203. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  204. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  205. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  206. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  207. package/dist/components/fields/Picker/Picker.js +1 -1
  208. package/dist/components/fields/RadioGroup/Radio.js +2 -4
  209. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  210. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  211. package/dist/components/fields/RadioGroup/context.js +1 -1
  212. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  213. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  214. package/dist/components/fields/Select/Select.js +1 -1
  215. package/dist/components/fields/Slider/Gradation.js +1 -1
  216. package/dist/components/fields/Slider/HueSlider.js +1 -1
  217. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  218. package/dist/components/fields/Slider/Slider.js +1 -1
  219. package/dist/components/fields/Slider/SliderBase.js +1 -1
  220. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  221. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  222. package/dist/components/fields/Slider/elements.js +1 -1
  223. package/dist/components/fields/Slider/index.js +1 -1
  224. package/dist/components/fields/Switch/Switch.js +1 -1
  225. package/dist/components/fields/TagInput/TagInput.js +1 -1
  226. package/dist/components/fields/TagInput/TagList.js +1 -1
  227. package/dist/components/fields/TagInput/useActiveOption.js +1 -1
  228. package/dist/components/fields/TagInput/useTagError.js +1 -1
  229. package/dist/components/fields/TextArea/TextArea.js +1 -1
  230. package/dist/components/fields/TextInput/TextInput.js +1 -1
  231. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  232. package/dist/components/fields/TextInput/displayed-validation.js +1 -1
  233. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  234. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  235. package/dist/components/fields/TriggerActions.js +1 -1
  236. package/dist/components/fields/color/ColorPanel.js +1 -1
  237. package/dist/components/fields/color/channels.js +1 -1
  238. package/dist/components/fields/color/color.js +1 -1
  239. package/dist/components/fields/color/context.js +1 -1
  240. package/dist/components/fields/option-origin-press.js +1 -1
  241. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  242. package/dist/components/form/FieldWrapper/field-description.js +1 -1
  243. package/dist/components/form/Form/Field.js +1 -1
  244. package/dist/components/form/Form/Form.js +1 -1
  245. package/dist/components/form/Form/FormContext.js +1 -1
  246. package/dist/components/form/Form/FormElement.js +1 -1
  247. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  248. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  249. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  250. package/dist/components/form/Form/SubmitError.js +1 -1
  251. package/dist/components/form/Form/backend.js +1 -1
  252. package/dist/components/form/Form/index.js +1 -1
  253. package/dist/components/form/Form/modern/actions.js +1 -1
  254. package/dist/components/form/Form/modern/context.js +1 -1
  255. package/dist/components/form/Form/modern/controller.js +1 -1
  256. package/dist/components/form/Form/modern/field-binding.js +1 -1
  257. package/dist/components/form/Form/modern/field.js +1 -1
  258. package/dist/components/form/Form/modern/react.js +1 -1
  259. package/dist/components/form/Form/modern/store.js +1 -1
  260. package/dist/components/form/Form/modern/validation.js +1 -1
  261. package/dist/components/form/Form/modern/values.js +1 -1
  262. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  263. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  264. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  265. package/dist/components/form/Form/use-field/use-field.js +1 -1
  266. package/dist/components/form/Form/use-form.js +1 -1
  267. package/dist/components/form/Form/validation.js +1 -1
  268. package/dist/components/form/Label.js +1 -1
  269. package/dist/components/form/field-chrome.js +1 -1
  270. package/dist/components/form/field-layout.js +1 -1
  271. package/dist/components/form/legacy-tooltip.js +1 -1
  272. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  273. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  274. package/dist/components/form/validation/use-validation-props.js +1 -1
  275. package/dist/components/form/wrapper.js +1 -1
  276. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  277. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  278. package/dist/components/layout/Flex.js +1 -1
  279. package/dist/components/layout/Flow.js +1 -1
  280. package/dist/components/layout/Grid.js +1 -1
  281. package/dist/components/layout/Panel.js +1 -1
  282. package/dist/components/layout/Prefix.js +1 -1
  283. package/dist/components/layout/ResizablePanel.js +1 -1
  284. package/dist/components/layout/Space.js +1 -1
  285. package/dist/components/layout/Suffix.js +1 -1
  286. package/dist/components/navigation/Pagination/Pagination.js +1 -1
  287. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  288. package/dist/components/navigation/Tabs/BoardDragActiveProvider.js +1 -1
  289. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  290. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  291. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  292. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  293. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  294. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  295. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  296. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  297. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  298. package/dist/components/navigation/Tabs/segmented-styles.js +1 -1
  299. package/dist/components/navigation/Tabs/styled.js +1 -1
  300. package/dist/components/navigation/Tabs/types.js +1 -1
  301. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  302. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  303. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  304. package/dist/components/other/Calendar/Calendar.js +1 -1
  305. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  306. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  307. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  308. package/dist/components/other/Calendar/CalendarPanel.js +1 -1
  309. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  310. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  311. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  312. package/dist/components/other/Calendar/styled.js +1 -1
  313. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  314. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  315. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  316. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  317. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  318. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  319. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  320. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  321. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  322. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  323. package/dist/components/overlays/Dialog/context.js +1 -1
  324. package/dist/components/overlays/Dialog/default-button-text.js +1 -1
  325. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  326. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  327. package/dist/components/overlays/Dialog/use-dialog-open-sync.js +1 -1
  328. package/dist/components/overlays/Dialog/use-dismiss-confirmation.js +1 -1
  329. package/dist/components/overlays/Dialog/use-retained-dialog-focus.js +1 -1
  330. package/dist/components/overlays/Modal/Modal.js +1 -1
  331. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  332. package/dist/components/overlays/Modal/Overlay.js +1 -1
  333. package/dist/components/overlays/Modal/Popover.js +1 -1
  334. package/dist/components/overlays/Modal/Tray.js +1 -1
  335. package/dist/components/overlays/Modal/Underlay.js +1 -1
  336. package/dist/components/overlays/Modal/modal-containment.js +1 -1
  337. package/dist/components/overlays/Notifications/Notification.js +1 -1
  338. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  339. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  340. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  341. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  342. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  343. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  344. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  345. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  346. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  347. package/dist/components/overlays/Notifications/index.js +1 -1
  348. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  349. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  350. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  351. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  352. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  353. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  354. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  355. package/dist/components/overlays/Toast/index.js +1 -1
  356. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  357. package/dist/components/overlays/Toast/useToast.js +1 -1
  358. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  359. package/dist/components/overlays/Tooltip/TooltipProvider.js +20 -7
  360. package/dist/components/overlays/Tooltip/TooltipProvider.js.map +1 -1
  361. package/dist/components/overlays/Tooltip/TooltipTrigger.d.ts +1 -0
  362. package/dist/components/overlays/Tooltip/TooltipTrigger.js +223 -101
  363. package/dist/components/overlays/Tooltip/TooltipTrigger.js.map +1 -1
  364. package/dist/components/overlays/Tooltip/context.js +1 -1
  365. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  366. package/dist/components/portal/Portal.js +1 -1
  367. package/dist/components/portal/PortalProvider.js +1 -1
  368. package/dist/components/portal/usePortal.js +1 -1
  369. package/dist/components/shared/DraggableCollection.js +1 -1
  370. package/dist/components/shared/InvalidIcon.js +1 -1
  371. package/dist/components/shared/ValidIcon.js +1 -1
  372. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  373. package/dist/components/status/Spin/Cube.js +1 -1
  374. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  375. package/dist/components/status/Spin/Spin.js +1 -1
  376. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  377. package/dist/data/item-themes.js +1 -1
  378. package/dist/data/themes.js +1 -1
  379. package/dist/eslint-plugin/defaults.generated.js +1 -1
  380. package/dist/eslint-plugin/index.js +1 -1
  381. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  382. package/dist/i18n/I18nProvider.js +1 -1
  383. package/dist/i18n/createFormatter.js +1 -1
  384. package/dist/i18n/index.js +1 -1
  385. package/dist/i18n/instance.js +1 -1
  386. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  387. package/dist/i18n/locales/en-US/uikit.js +1 -1
  388. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  389. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  390. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  391. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  392. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  393. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  394. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  395. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  396. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  397. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  398. package/dist/i18n/locales.js +1 -1
  399. package/dist/i18n/namespace.js +1 -1
  400. package/dist/i18n/useFormatter.js +1 -1
  401. package/dist/i18n/useI18n.js +1 -1
  402. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  403. package/dist/icons/AdjustmentsIcon.js +1 -1
  404. package/dist/icons/AiIcon.js +1 -1
  405. package/dist/icons/AreaChartIcon.js +1 -1
  406. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  407. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  408. package/dist/icons/BackwardIcon.js +1 -1
  409. package/dist/icons/BarChartIcon.js +1 -1
  410. package/dist/icons/BellFilledIcon.js +1 -1
  411. package/dist/icons/BellIcon.js +1 -1
  412. package/dist/icons/BooleanIcon.js +1 -1
  413. package/dist/icons/CalendarEditIcon.js +1 -1
  414. package/dist/icons/CalendarIcon.js +1 -1
  415. package/dist/icons/CaretDownIcon.js +1 -1
  416. package/dist/icons/CaretUpIcon.js +1 -1
  417. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  418. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  419. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  420. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  421. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  422. package/dist/icons/ChartBarLineIcon.js +1 -1
  423. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  424. package/dist/icons/ChartBarStackedIcon.js +1 -1
  425. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  426. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  427. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  428. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  429. package/dist/icons/ChartBubbleIcon.js +1 -1
  430. package/dist/icons/ChartDonut2Icon.js +1 -1
  431. package/dist/icons/ChartFunnelIcon.js +1 -1
  432. package/dist/icons/ChartHeatmapIcon.js +1 -1
  433. package/dist/icons/ChartKPIIcon.js +1 -1
  434. package/dist/icons/ChartPie2Icon.js +1 -1
  435. package/dist/icons/ChartScatterIcon.js +1 -1
  436. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  437. package/dist/icons/CheckCircleIcon.js +1 -1
  438. package/dist/icons/CheckIcon.js +1 -1
  439. package/dist/icons/CircleFilledIcon.js +1 -1
  440. package/dist/icons/ClearIcon.js +1 -1
  441. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  442. package/dist/icons/CloseCircleIcon.js +1 -1
  443. package/dist/icons/CloseIcon.js +1 -1
  444. package/dist/icons/CodeIcon.js +1 -1
  445. package/dist/icons/ColumnTotalIcon.js +1 -1
  446. package/dist/icons/CopyIcon.js +1 -1
  447. package/dist/icons/CountIcon.js +1 -1
  448. package/dist/icons/CubeIcon.js +1 -1
  449. package/dist/icons/CubePauseIcon.js +1 -1
  450. package/dist/icons/CubePlayIcon.js +1 -1
  451. package/dist/icons/CurrencyDollarIcon.js +1 -1
  452. package/dist/icons/DangerIcon.js +1 -1
  453. package/dist/icons/DashboardIcon.js +1 -1
  454. package/dist/icons/DatabaseIcon.js +1 -1
  455. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  456. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  457. package/dist/icons/DirectionIcon.js +1 -1
  458. package/dist/icons/DonutIcon.js +1 -1
  459. package/dist/icons/DownIcon.js +1 -1
  460. package/dist/icons/EditIcon.js +1 -1
  461. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  462. package/dist/icons/ExclamationCircleIcon.js +1 -1
  463. package/dist/icons/ExclamationIcon.js +1 -1
  464. package/dist/icons/EyeIcon.js +1 -1
  465. package/dist/icons/EyeInvisibleIcon.js +1 -1
  466. package/dist/icons/FilterIcon.js +1 -1
  467. package/dist/icons/FolderFilledIcon.js +1 -1
  468. package/dist/icons/FolderIcon.js +1 -1
  469. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  470. package/dist/icons/FolderOpenIcon.js +1 -1
  471. package/dist/icons/ForwardIcon.js +1 -1
  472. package/dist/icons/GripVerticalIcon.js +1 -1
  473. package/dist/icons/HierarchyIcon.js +1 -1
  474. package/dist/icons/HierarchyOpenIcon.js +1 -1
  475. package/dist/icons/Icon.js +1 -1
  476. package/dist/icons/InfoCircleIcon.js +1 -1
  477. package/dist/icons/InfoIcon.js +1 -1
  478. package/dist/icons/KeyIcon.js +1 -1
  479. package/dist/icons/LeftIcon.js +1 -1
  480. package/dist/icons/LineChartIcon.js +1 -1
  481. package/dist/icons/LoadingIcon.js +1 -1
  482. package/dist/icons/LockFilledIcon.js +1 -1
  483. package/dist/icons/LockIcon.js +1 -1
  484. package/dist/icons/MoreIcon.js +1 -1
  485. package/dist/icons/NotAllowedIcon.js +1 -1
  486. package/dist/icons/Number123Icon.js +1 -1
  487. package/dist/icons/NumberIcon.js +1 -1
  488. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  489. package/dist/icons/PauseCircleIcon.js +1 -1
  490. package/dist/icons/PauseIcon.js +1 -1
  491. package/dist/icons/PercentageIcon.js +1 -1
  492. package/dist/icons/PieChartIcon.js +1 -1
  493. package/dist/icons/PipetteIcon.js +1 -1
  494. package/dist/icons/PlayCircleIcon.js +1 -1
  495. package/dist/icons/PlayIcon.js +1 -1
  496. package/dist/icons/PlusIcon.js +1 -1
  497. package/dist/icons/ProgressBarIcon.js +1 -1
  498. package/dist/icons/ReloadIcon.js +1 -1
  499. package/dist/icons/ReportIcon.js +1 -1
  500. package/dist/icons/ReturnIcon.js +1 -1
  501. package/dist/icons/RightIcon.js +1 -1
  502. package/dist/icons/RowTotalsIcon.js +1 -1
  503. package/dist/icons/SchemeIcon.js +1 -1
  504. package/dist/icons/SearchIcon.js +1 -1
  505. package/dist/icons/SemanticQueryIcon.js +1 -1
  506. package/dist/icons/SettingsIcon.js +1 -1
  507. package/dist/icons/ShieldFilledIcon.js +1 -1
  508. package/dist/icons/ShieldIcon.js +1 -1
  509. package/dist/icons/SlashIcon.js +1 -1
  510. package/dist/icons/SparklesIcon.js +1 -1
  511. package/dist/icons/SqlIcon.js +1 -1
  512. package/dist/icons/StatsIcon.js +1 -1
  513. package/dist/icons/StopIcon.js +1 -1
  514. package/dist/icons/StringIcon.js +1 -1
  515. package/dist/icons/SubtotalsIcon.js +1 -1
  516. package/dist/icons/SwitchIcon.js +1 -1
  517. package/dist/icons/TableIcon.js +1 -1
  518. package/dist/icons/ThumbsDownIcon.js +1 -1
  519. package/dist/icons/ThumbsUpIcon.js +1 -1
  520. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  521. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  522. package/dist/icons/ThunderboltIcon.js +1 -1
  523. package/dist/icons/TimeIcon.js +1 -1
  524. package/dist/icons/TrashIcon.js +1 -1
  525. package/dist/icons/UnlockIcon.js +1 -1
  526. package/dist/icons/UpIcon.js +1 -1
  527. package/dist/icons/UserGroupIcon.js +1 -1
  528. package/dist/icons/UserIcon.js +1 -1
  529. package/dist/icons/UserLockIcon.js +1 -1
  530. package/dist/icons/ViewIcon.js +1 -1
  531. package/dist/icons/WarningFilledIcon.js +1 -1
  532. package/dist/icons/WarningIcon.js +1 -1
  533. package/dist/icons/wrap-icon.js +1 -1
  534. package/dist/index.js +1 -1
  535. package/dist/probe/canonicalize.js +1 -1
  536. package/dist/probe/css.js +1 -1
  537. package/dist/probe/index.js +1 -1
  538. package/dist/provider.js +1 -1
  539. package/dist/providers/TrackingProvider.js +1 -1
  540. package/dist/providers/navigation-url.js +1 -1
  541. package/dist/providers/navigationAdapter.default.js +1 -1
  542. package/dist/providers/use-navigation.js +1 -1
  543. package/dist/tokens/all-tokens.js +1 -1
  544. package/dist/tokens/base.js +1 -1
  545. package/dist/tokens/color-seed.js +1 -1
  546. package/dist/tokens/color-theme.js +1 -1
  547. package/dist/tokens/colors.js +1 -1
  548. package/dist/tokens/layout.js +1 -1
  549. package/dist/tokens/lazy-styles.js +1 -1
  550. package/dist/tokens/legacy-color.js +1 -1
  551. package/dist/tokens/palette-config.js +1 -1
  552. package/dist/tokens/palette.js +1 -1
  553. package/dist/tokens/resolve.js +1 -1
  554. package/dist/tokens/shadows.js +1 -1
  555. package/dist/tokens/sizes.js +1 -1
  556. package/dist/tokens/spacing.js +1 -1
  557. package/dist/tokens/typography.js +1 -1
  558. package/dist/utils/ResizeSensor.js +1 -1
  559. package/dist/utils/colors.js +1 -1
  560. package/dist/utils/dotize.js +1 -1
  561. package/dist/utils/is-dev-env.js +1 -1
  562. package/dist/utils/modules.js +1 -1
  563. package/dist/utils/promise.js +1 -1
  564. package/dist/utils/raf.js +1 -1
  565. package/dist/utils/random.js +1 -1
  566. package/dist/utils/range.js +1 -1
  567. package/dist/utils/react/RenderCache.js +1 -1
  568. package/dist/utils/react/Slots.js +1 -1
  569. package/dist/utils/react/chain.js +1 -1
  570. package/dist/utils/react/disabledProps.js +1 -1
  571. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  572. package/dist/utils/react/index.js +1 -1
  573. package/dist/utils/react/interactions.js +1 -1
  574. package/dist/utils/react/isTextOnly.js +1 -1
  575. package/dist/utils/react/mapProps.js +1 -1
  576. package/dist/utils/react/mergeProps.js +1 -1
  577. package/dist/utils/react/nullableValue.js +1 -1
  578. package/dist/utils/react/overlayKeyPropagation.js +1 -1
  579. package/dist/utils/react/programmaticFocus.js +1 -1
  580. package/dist/utils/react/resolveIcon.js +1 -1
  581. package/dist/utils/react/sharedStore.js +1 -1
  582. package/dist/utils/react/useBufferedValue.js +1 -1
  583. package/dist/utils/react/useCombinedRefs.js +1 -1
  584. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  585. package/dist/utils/react/useEventBus.js +1 -1
  586. package/dist/utils/react/useId.js +1 -1
  587. package/dist/utils/react/useIsDarwin.js +1 -1
  588. package/dist/utils/react/useKeySymbols.js +1 -1
  589. package/dist/utils/react/useLayoutEffect.js +1 -1
  590. package/dist/utils/react/useLocalStorage.js +1 -1
  591. package/dist/utils/react/useMergeStyles.js +1 -1
  592. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  593. package/dist/utils/react/usePopoverSync.js +1 -1
  594. package/dist/utils/react/useQaProps.js +1 -1
  595. package/dist/utils/react/useScheme.js +1 -1
  596. package/dist/utils/react/useViewportSize.js +1 -1
  597. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  598. package/dist/utils/selection.js +1 -1
  599. package/dist/utils/styles.js +1 -1
  600. package/dist/utils/tree.js +1 -1
  601. package/dist/utils/warnings.js +1 -1
  602. package/dist/version.js +3 -3
  603. package/docs/Usage.md +16 -2
  604. package/docs/components/actions/Button.md +45 -0
  605. package/docs/components/content/Layout.md +9 -0
  606. package/docs/components/fields/FileInput.md +18 -5
  607. package/docs/tasty/ai-agents.md +1 -1
  608. package/docs/tasty/design-system.md +12 -0
  609. package/docs/tasty/dsl.md +20 -0
  610. package/docs/tasty/pipeline.md +1 -1
  611. package/package.json +2 -2
  612. package/tasty.config.generated.ts +1 -1
  613. package/tasty.config.ts +81 -41
@@ -19,7 +19,7 @@ A file input component that allows users to select and upload files through a cu
19
19
  - **`placeholder`** `string` — Text displayed when no file is selected
20
20
  - **`accept`** `string` — Comma-separated list of accepted file types
21
21
  - **`type`** `'file' | 'text'` (default: `file`) — How to process the selected file(s)
22
- - **`size`** `'small' | 'default' | 'large'` (default: `default`) — The size of the input
22
+ - **`size`** `'small' | 'default' | 'large'` (default: `default`) — The size of the input: the same heights as text inputs (28, 32 and 40px)
23
23
  - **`inputStyles`** `Styles` — Custom styles for the file input element
24
24
  - **`inputProps`** `Props` — Direct props passed to the native file input element
25
25
  - **`onChange`** `function` — Callback fired when files are selected
@@ -38,11 +38,11 @@ Supports all [Field properties](../../FieldProperties.md)
38
38
 
39
39
  #### styles
40
40
 
41
- Styles the input element. Its style props place and size the field: see [Field properties](../../FieldProperties.md).
41
+ Styles the input element, the box that opens the file dialog. It is drawn like the text inputs' box and fills the width of its field, as they do; narrow it with `controlWidth`. Its style props place and size the field: see [Field properties](../../FieldProperties.md).
42
42
 
43
43
  **Sub-elements:**
44
44
 
45
- - `Button` - The clickable button element for file selection
45
+ - `Button` - The "Choose file" chip at the start of the box
46
46
  - `Placeholder` - Text shown when no file is selected
47
47
  - `Value` - Text showing the selected file name(s)
48
48
  - `Input` - The hidden native file input element
@@ -58,7 +58,11 @@ These properties allow direct style application without using the `styles` prop:
58
58
 
59
59
  The `mods` property accepts the following modifiers you can override:
60
60
 
61
- - **`drag-hover`** `boolean` — Whether files are being dragged over the component
61
+ - **`drag-hover`** `boolean` — Whether files are being dragged over the component (never while disabled)
62
+ - **`hovered`** `boolean` — Whether the pointer is over the component
63
+ - **`pressed`** `boolean` — Whether the component is being pressed
64
+ - **`selected`** `boolean` — Whether a file is selected
65
+ - **`size`** `string` — The `size` prop's value
62
66
  - **`disabled`** `boolean` — Whether the file input is disabled
63
67
  - **`invalid`** `boolean` — Whether the file input has validation errors
64
68
  - **`valid`** `boolean` — Whether the file input is valid
@@ -87,6 +91,16 @@ The `mods` property accepts the following modifiers you can override:
87
91
 
88
92
  When bound to a legacy or modern form, resetting updates the displayed filename and clears any obsolete native file selection. This also allows choosing the same file again. A nonempty string value can display a filename, but it cannot restore file bytes; the user must select the file again. With `type="text"`, the form stores the file's text content.
89
93
 
94
+ ### Sizes
95
+
96
+ Each size has the height of a text input of the same size, so the two line up in a form.
97
+
98
+ ```jsx
99
+ <FileInput label="Key file" size="small" />
100
+ <FileInput label="Key file" />
101
+ <FileInput label="Key file" size="large" />
102
+ ```
103
+
90
104
  ### With Validation
91
105
 
92
106
  Pass `isValid` or `isInvalid` to tint the border and show the matching state icon.
@@ -173,7 +187,6 @@ This component supports all [Field properties](../../FieldProperties.md) when us
173
187
  - Implement file preview functionality for images
174
188
  - Add support for file size and type validation messages
175
189
  - Consider adding file removal functionality for selected files
176
- - Implement custom drag-and-drop visual feedback
177
190
 
178
191
  ## Related Components
179
192
 
@@ -201,7 +201,7 @@ Advanced states:
201
201
  | `@name` | project state alias | `@mobile` |
202
202
 
203
203
  - At root level write the selector directly: ❌ `'@own(:hover)'` → ✅ `':hover'`.
204
- - `@name` aliases must exist in `states` in the config or be declared locally as an `'@name': '<state expression>'` key; alias keys start with `@` and their value must be a valid state expression.
204
+ - `@name` aliases must exist in `states` in the config or be declared locally as an `'@name': '<state expression>'` key; alias keys start with `@` and their value must be a valid state expression. A value may use other aliases (`'@collapsed': '@mobile & !expanded'`), but never in a loop.
205
205
  - `:is()` / `:has()` / `:not()` / `:where()` work in state keys but support at most 2 levels of nested parentheses, and `:has()` is expensive — prefer `@parent()`, `@own()` and modifiers.
206
206
 
207
207
  When extending a parent's state map: `'@inherit'` reuses the parent's value for that state, `null` removes a state (or resets a property, letting recipes fill in), `false` is a tombstone that blocks it entirely.
@@ -191,6 +191,18 @@ const Card = tasty({
191
191
  });
192
192
  ```
193
193
 
194
+ Aliases can build on each other, so a composite state is defined once too:
195
+
196
+ ```tsx
197
+ configure({
198
+ states: {
199
+ '@mobile': '@media(w < 768px)',
200
+ '@tablet': '@media(768px <= w < 1024px)',
201
+ '@touch': '@mobile | @tablet',
202
+ },
203
+ });
204
+ ```
205
+
194
206
  Theme switching belongs in tokens (`'#surface': { '': '#fff', '@dark': '#1c1c1e' }`) rather than in component state maps, so components stay theme-agnostic.
195
207
 
196
208
  Without aliases, the same component would need the full media query expression inlined in every state map — across every property, in every component. Aliases eliminate that duplication.
package/docs/tasty/dsl.md CHANGED
@@ -29,6 +29,26 @@ styles: {
29
29
  }
30
30
  ```
31
31
 
32
+ An alias can use other aliases, anywhere in its expression:
33
+
34
+ ```jsx
35
+ configure({
36
+ states: {
37
+ '@mobile': '@media(w < 768px)',
38
+ '@collapsed': '@mobile & !expanded',
39
+ },
40
+ });
41
+
42
+ styles: {
43
+ '@compact': '@collapsed | @media:print', // local, built on a global alias
44
+ padding: { '': '4x', '@compact': '2x' },
45
+ }
46
+ ```
47
+
48
+ - A local alias sees the component's aliases first, then the global ones. Aliases declared inside a sub-element also see the root-level ones.
49
+ - A global alias sees only global aliases. It means the same thing in every component: if a component redefines `@mobile` locally, the global `@collapsed` keeps using the global `@mobile`.
50
+ - A circular alias (`'@a': '@b'` with `'@b': '@a'`, or `'@a': '@a & hovered'`) never matches, and a `CIRCULAR_STATE_ALIAS` warning names the loop.
51
+
32
52
  #### State Key Types
33
53
 
34
54
  | Syntax | Example | Generated CSS |
@@ -149,7 +149,7 @@ Converts each state key in a style value map (like `'hovered & !disabled'`, `'@m
149
149
  - `@own(hovered)` → `OwnCondition` wrapping the parsed inner condition
150
150
  - `@supports(display: grid)` → `SupportsCondition`
151
151
  - `@(w < 600px)` → `ContainerCondition` (dimension, style, or raw subtypes)
152
- - `@mobile` → Resolved via predefined states, then parsed recursively
152
+ - `@mobile` → Resolved via predefined states, then parsed recursively. A local alias resolves against local, then global aliases; a global alias resolves against global aliases only. A stack of the aliases being resolved stops a cycle: the repeated alias becomes `FALSE` and emits `CIRCULAR_STATE_ALIAS`
153
153
 
154
154
  Pipeline warnings for invalid inputs (e.g. bad `$` selector affix) are emitted from `warnings.ts`.
155
155
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cube-dev/ui-kit",
3
- "version": "0.208.0",
3
+ "version": "0.210.0",
4
4
  "type": "module",
5
5
  "description": "UIKit for Cube Projects",
6
6
  "repository": {
@@ -60,7 +60,7 @@
60
60
  "@tabler/icons-react": "^3.31.0",
61
61
  "@tanstack/react-virtual": "^3.13.12",
62
62
  "@tenphi/glaze": "3.0.1",
63
- "@tenphi/tasty": "3.17.1",
63
+ "@tenphi/tasty": "3.18.0",
64
64
  "clipboard-copy": "^4.0.1",
65
65
  "clsx": "^1.1.1",
66
66
  "diff": "^8.0.3",
@@ -482,7 +482,7 @@ export const runtimeNames = {
482
482
  '$topbar-height',
483
483
  '$transition',
484
484
  ],
485
- states: ['@dark', '@hc', '@reduced-motion'],
485
+ states: ['@dark', '@hc', '@mobile', '@reduced-motion'],
486
486
  presets: [
487
487
  'c1',
488
488
  'c2',
package/tasty.config.ts CHANGED
@@ -67,6 +67,49 @@ export const componentTokens = [
67
67
  '$overlay-inset-top',
68
68
  ];
69
69
 
70
+ /**
71
+ * The style props a container keeps: those that place or size it, and those
72
+ * that lay out the content the consumer puts in it, including `textAlign` and
73
+ * the `container` that its container queries read. `Layout` and `GridLayout`
74
+ * cover their sub-components, such as `Layout.Content`, whose `scrollbar` is
75
+ * their own prop; `ResizablePanel`'s `direction` is the side it resizes from.
76
+ * `display` picks the layout: a block `Card` needs `flex` or `grid` before
77
+ * `flow`, `grid*` or `place*` do anything.
78
+ */
79
+ const containerStyleProps = [
80
+ 'position',
81
+ 'dimension',
82
+ 'display',
83
+ 'flow',
84
+ 'gap',
85
+ 'columnGap',
86
+ 'rowGap',
87
+ 'place',
88
+ 'placeItems',
89
+ 'placeContent',
90
+ 'align',
91
+ 'alignItems',
92
+ 'alignContent',
93
+ 'justify',
94
+ 'justifyItems',
95
+ 'justifyContent',
96
+ 'gridColumns',
97
+ 'gridRows',
98
+ 'gridTemplate',
99
+ 'gridAreas',
100
+ 'gridAutoFlow',
101
+ 'gridAutoColumns',
102
+ 'gridAutoRows',
103
+ 'padding',
104
+ 'blockPadding',
105
+ 'inlinePadding',
106
+ 'overflow',
107
+ 'scrollbar',
108
+ 'textAlign',
109
+ 'container',
110
+ 'direction',
111
+ ];
112
+
70
113
  export default {
71
114
  extends: '@tenphi/tasty',
72
115
 
@@ -152,17 +195,47 @@ export default {
152
195
  include: ['GridProvider'],
153
196
  allowedStyleProps: ['position', 'dimension', 'gap'],
154
197
  },
155
- // Containers. `Layout` and `GridLayout` cover their sub-components, such
156
- // as `Layout.Content`, whose `scrollbar` is their own prop;
157
- // `ResizablePanel`'s `direction` is the side it resizes from. `Alert`,
158
- // `Result` and `Skeleton` hold content the consumer supplies, so how that
159
- // content is spaced is the consumer's call. `display` picks the layout:
160
- // a block `Card` needs `flex` or `grid` before `flow`, `grid*` or `place*`
161
- // do anything.
198
+ // Containers that draw a surface of their own: a fill, a border, a
199
+ // radius or a theme. `Alert`, `Result` and `Skeleton` hold content the
200
+ // consumer supplies, so how that content is spaced is the consumer's
201
+ // call. A member path decides before the export it hangs off, so
202
+ // `Layout.Panel` and `Layout.PanelHeader` are listed before `Layout`.
162
203
  {
163
204
  source: '@cube-dev/ui-kit',
164
205
  include: [
165
206
  'Card',
207
+ 'Layout.Panel',
208
+ 'Layout.PanelHeader',
209
+ 'Alert',
210
+ 'Result',
211
+ 'Skeleton',
212
+ ],
213
+ allowedStyleProps: containerStyleProps,
214
+ },
215
+ // Layout's sections draw no fill, so the backdrop is the consumer's; their
216
+ // border is UI Kit's, which separates stacked sections or underlines a
217
+ // header, so it stays protected.
218
+ {
219
+ source: '@cube-dev/ui-kit',
220
+ include: [
221
+ 'Layout.Content',
222
+ 'Layout.Header',
223
+ 'Layout.Footer',
224
+ 'Layout.Toolbar',
225
+ 'Layout.Block',
226
+ 'Layout.Flex',
227
+ 'Layout.Grid',
228
+ 'Layout.Center',
229
+ 'Layout.Container',
230
+ ],
231
+ allowedStyleProps: [...containerStyleProps, 'fill'],
232
+ },
233
+ // Frames that draw neither a fill nor a border, such as a page `Layout`
234
+ // or a plain `Panel`: there is no surface to protect, so a fill or a
235
+ // border on one is the consumer's, as on a `Block`.
236
+ {
237
+ source: '@cube-dev/ui-kit',
238
+ include: [
166
239
  'Panel',
167
240
  'ResizablePanel',
168
241
  'Content',
@@ -170,41 +243,8 @@ export default {
170
243
  'Footer',
171
244
  'Layout',
172
245
  'GridLayout',
173
- 'Alert',
174
- 'Result',
175
- 'Skeleton',
176
- ],
177
- allowedStyleProps: [
178
- 'position',
179
- 'dimension',
180
- 'display',
181
- 'flow',
182
- 'gap',
183
- 'columnGap',
184
- 'rowGap',
185
- 'place',
186
- 'placeItems',
187
- 'placeContent',
188
- 'align',
189
- 'alignItems',
190
- 'alignContent',
191
- 'justify',
192
- 'justifyItems',
193
- 'justifyContent',
194
- 'gridColumns',
195
- 'gridRows',
196
- 'gridTemplate',
197
- 'gridAreas',
198
- 'gridAutoFlow',
199
- 'gridAutoColumns',
200
- 'gridAutoRows',
201
- 'padding',
202
- 'blockPadding',
203
- 'inlinePadding',
204
- 'overflow',
205
- 'scrollbar',
206
- 'direction',
207
246
  ],
247
+ allowedStyleProps: [...containerStyleProps, 'fill', 'border'],
208
248
  },
209
249
  // A placeholder stands in for content of any shape, so `radius` is its
210
250
  // shape, like `dimension`.