@cube-dev/ui-kit 0.185.3 → 0.186.1

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 (635) hide show
  1. package/dist/CHANGELOG.md +30 -0
  2. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  3. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  4. package/dist/_internal/hooks/use-event.js +1 -1
  5. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  6. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  7. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  8. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  9. package/dist/_internal/hooks/use-warn.js +1 -1
  10. package/dist/components/Block.js +1 -1
  11. package/dist/components/CollectionItem.js +1 -1
  12. package/dist/components/GlobalStyles.js +23 -21
  13. package/dist/components/GlobalStyles.js.map +1 -1
  14. package/dist/components/GridProvider.js +1 -1
  15. package/dist/components/HiddenInput.js +1 -1
  16. package/dist/components/Root.js +1 -1
  17. package/dist/components/actions/Action/Action.js +1 -1
  18. package/dist/components/actions/Banner/Banner.js +1 -1
  19. package/dist/components/actions/Banner/Banner.js.map +1 -1
  20. package/dist/components/actions/Button/Button.js +1 -1
  21. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  22. package/dist/components/actions/ButtonSplit/ButtonSplit.js +128 -66
  23. package/dist/components/actions/ButtonSplit/ButtonSplit.js.map +1 -1
  24. package/dist/components/actions/ButtonSplit/context.js +1 -1
  25. package/dist/components/actions/CommandMenu/CommandMenu.js +451 -280
  26. package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
  27. package/dist/components/actions/CommandMenu/styled.js +1 -1
  28. package/dist/components/actions/ItemAction/ItemAction.js +57 -93
  29. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  30. package/dist/components/actions/ItemActionContext.js +1 -1
  31. package/dist/components/actions/ItemActionsWrapper.js +1 -1
  32. package/dist/components/actions/ItemActionsWrapper.js.map +1 -1
  33. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  34. package/dist/components/actions/Link/Link.js +1 -1
  35. package/dist/components/actions/Menu/Menu.js +49 -69
  36. package/dist/components/actions/Menu/Menu.js.map +1 -1
  37. package/dist/components/actions/Menu/MenuItem.js +1 -1
  38. package/dist/components/actions/Menu/MenuSection.js +1 -1
  39. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  40. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  41. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  42. package/dist/components/actions/Menu/context.js +1 -1
  43. package/dist/components/actions/Menu/styled.js +1 -1
  44. package/dist/components/actions/actions-run.js +1 -1
  45. package/dist/components/actions/index.js +1 -1
  46. package/dist/components/actions/use-action.js +1 -1
  47. package/dist/components/actions/use-anchored-menu.js +1 -1
  48. package/dist/components/actions/use-context-menu.js +1 -1
  49. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  50. package/dist/components/content/Alert/Alert.js +1 -1
  51. package/dist/components/content/Alert/use-alert.js +1 -1
  52. package/dist/components/content/Avatar/Avatar.js +1 -1
  53. package/dist/components/content/Badge/Badge.js +5 -2
  54. package/dist/components/content/Badge/Badge.js.map +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/CopySnippet/CopySnippet.js.map +1 -1
  60. package/dist/components/content/Disclosure/Disclosure.js +44 -60
  61. package/dist/components/content/Disclosure/Disclosure.js.map +1 -1
  62. package/dist/components/content/Divider.js +1 -1
  63. package/dist/components/content/Footer.js +1 -1
  64. package/dist/components/content/Header.js +1 -1
  65. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  66. package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
  67. package/dist/components/content/InlineInput/InlineInput.js +39 -65
  68. package/dist/components/content/InlineInput/InlineInput.js.map +1 -1
  69. package/dist/components/content/Item/Item.js +208 -263
  70. package/dist/components/content/Item/Item.js.map +1 -1
  71. package/dist/components/content/ItemBadge/ItemBadge.js +70 -145
  72. package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
  73. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  74. package/dist/components/content/Layout/GridLayout.js +1 -1
  75. package/dist/components/content/Layout/Layout.js +1 -1
  76. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  77. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  78. package/dist/components/content/Layout/LayoutContainer.js +39 -18
  79. package/dist/components/content/Layout/LayoutContainer.js.map +1 -1
  80. package/dist/components/content/Layout/LayoutContent.js +100 -48
  81. package/dist/components/content/Layout/LayoutContent.js.map +1 -1
  82. package/dist/components/content/Layout/LayoutContext.js +211 -95
  83. package/dist/components/content/Layout/LayoutContext.js.map +1 -1
  84. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  85. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  86. package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
  87. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  88. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  89. package/dist/components/content/Layout/LayoutPane.js +240 -123
  90. package/dist/components/content/Layout/LayoutPane.js.map +1 -1
  91. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  92. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  93. package/dist/components/content/Layout/LayoutPanelHeader.js.map +1 -1
  94. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  95. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  96. package/dist/components/content/Layout/hooks/useTinyScrollbar.js.map +1 -1
  97. package/dist/components/content/Layout/index.js +1 -1
  98. package/dist/components/content/Layout/utils.js +1 -1
  99. package/dist/components/content/Paragraph.js +1 -1
  100. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  101. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  102. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  103. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  104. package/dist/components/content/Result/Result.js +28 -48
  105. package/dist/components/content/Result/Result.js.map +1 -1
  106. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  107. package/dist/components/content/Tag/Tag.js +1 -1
  108. package/dist/components/content/Text.d.ts +14 -14
  109. package/dist/components/content/Text.js +1 -1
  110. package/dist/components/content/TextItem/TextItem.js +9 -17
  111. package/dist/components/content/TextItem/TextItem.js.map +1 -1
  112. package/dist/components/content/Title.js +1 -1
  113. package/dist/components/content/Tree/Tree.js +1 -1
  114. package/dist/components/content/Tree/TreeNode.js +1 -1
  115. package/dist/components/content/Tree/styled.js +1 -1
  116. package/dist/components/content/Tree/tree-index.js +1 -1
  117. package/dist/components/content/Tree/use-checkbox-tree.js +68 -105
  118. package/dist/components/content/Tree/use-checkbox-tree.js.map +1 -1
  119. package/dist/components/content/Tree/use-load-data.js +1 -1
  120. package/dist/components/content/highlightText.js +1 -1
  121. package/dist/components/content/use-auto-tooltip.js +106 -138
  122. package/dist/components/content/use-auto-tooltip.js.map +1 -1
  123. package/dist/components/data/DataTable/DataTable.js +1 -1
  124. package/dist/components/data/ItemTable/ItemTable.js +1 -1
  125. package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
  126. package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
  127. package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
  128. package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
  129. package/dist/components/data/TableBase/ColumnResizer.js +1 -1
  130. package/dist/components/data/TableBase/RowCollection.js +1 -1
  131. package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
  132. package/dist/components/data/TableBase/TableRow.js +1 -1
  133. package/dist/components/data/TableBase/TableView.js +1 -1
  134. package/dist/components/data/TableBase/column-menu.js +1 -1
  135. package/dist/components/data/TableBase/column-tint.js +1 -1
  136. package/dist/components/data/TableBase/row-menu.js +1 -1
  137. package/dist/components/data/TableBase/styled.js +1 -1
  138. package/dist/components/data/TableBase/table-tree.js +1 -1
  139. package/dist/components/data/TableBase/types.js +1 -1
  140. package/dist/components/data/TableBase/use-cell-selection.js +0 -0
  141. package/dist/components/data/TableBase/use-column-order.js +30 -31
  142. package/dist/components/data/TableBase/use-column-order.js.map +1 -1
  143. package/dist/components/data/TableBase/use-container-width.js +1 -1
  144. package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
  145. package/dist/components/data/TableBase/use-scrollability.js +1 -1
  146. package/dist/components/data/TableBase/use-table-columns.js +1 -1
  147. package/dist/components/data/TableBase/use-table-search.js +1 -1
  148. package/dist/components/data/TableBase/use-table-selection.js +1 -1
  149. package/dist/components/data/TableBase/use-table-sort.js +38 -42
  150. package/dist/components/data/TableBase/use-table-sort.js.map +1 -1
  151. package/dist/components/data/TableBase/use-table-sorts.js +19 -57
  152. package/dist/components/data/TableBase/use-table-sorts.js.map +1 -1
  153. package/dist/components/data/TableBase/use-table-storage.js +1 -1
  154. package/dist/components/data/TableBase/use-table-tree-state.js +55 -64
  155. package/dist/components/data/TableBase/use-table-tree-state.js.map +1 -1
  156. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  157. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  158. package/dist/components/fields/Checkbox/context.js +1 -1
  159. package/dist/components/fields/ColorInput/ColorInput.js +1 -1
  160. package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
  161. package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
  162. package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  163. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  164. package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
  165. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  166. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  167. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  168. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  169. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  170. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  171. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  172. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  173. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  174. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  175. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  176. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  177. package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
  178. package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
  179. package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
  180. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  181. package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
  182. package/dist/components/fields/DatePicker/YearPicker.js +1 -1
  183. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  184. package/dist/components/fields/DatePicker/period.js +1 -1
  185. package/dist/components/fields/DatePicker/props.js +1 -1
  186. package/dist/components/fields/DatePicker/utils.js +1 -1
  187. package/dist/components/fields/FileInput/FileInput.js +1 -1
  188. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  189. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  190. package/dist/components/fields/Input/Input.js +1 -1
  191. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  192. package/dist/components/fields/ListBox/ListBox.js +1 -1
  193. package/dist/components/fields/ListBox/optionId.js +1 -1
  194. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +111 -108
  195. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
  196. package/dist/components/fields/ListBoxPopover/listNavigation.js +4 -3
  197. package/dist/components/fields/ListBoxPopover/listNavigation.js.map +1 -1
  198. package/dist/components/fields/ListBoxPopover/useCompositeFocus.d.ts +1 -1
  199. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +109 -69
  200. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js.map +1 -1
  201. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  202. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  203. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  204. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  205. package/dist/components/fields/Picker/Picker.js +1 -1
  206. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  207. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  208. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  209. package/dist/components/fields/RadioGroup/context.js +1 -1
  210. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  211. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  212. package/dist/components/fields/Select/Select.js +1 -1
  213. package/dist/components/fields/Slider/Gradation.js +1 -1
  214. package/dist/components/fields/Slider/HueSlider.js +1 -1
  215. package/dist/components/fields/Slider/HueSlider.js.map +1 -1
  216. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  217. package/dist/components/fields/Slider/Slider.js +1 -1
  218. package/dist/components/fields/Slider/SliderBase.js +1 -1
  219. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  220. package/dist/components/fields/Slider/SliderThumb.js.map +1 -1
  221. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  222. package/dist/components/fields/Slider/SliderTrack.js.map +1 -1
  223. package/dist/components/fields/Slider/elements.js +1 -1
  224. package/dist/components/fields/Slider/index.js +1 -1
  225. package/dist/components/fields/Switch/Switch.js +1 -1
  226. package/dist/components/fields/TagInput/TagInput.d.ts +9 -2
  227. package/dist/components/fields/TagInput/TagInput.js +911 -1157
  228. package/dist/components/fields/TagInput/TagInput.js.map +1 -1
  229. package/dist/components/fields/TagInput/TagList.js +1 -1
  230. package/dist/components/fields/TextArea/TextArea.js +1 -1
  231. package/dist/components/fields/TextInput/TextInput.js +1 -1
  232. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  233. package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
  234. package/dist/components/fields/TextInputMapper/TextInputMapper.js +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/ColorPanel.js.map +1 -1
  238. package/dist/components/fields/color/channels.js +1 -1
  239. package/dist/components/fields/color/color.js +1 -1
  240. package/dist/components/fields/color/context.js +1 -1
  241. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  242. package/dist/components/form/Form/Field.js +10 -15
  243. package/dist/components/form/Form/Field.js.map +1 -1
  244. package/dist/components/form/Form/Form.js +1 -1
  245. package/dist/components/form/Form/ModernFormRoot.js +1 -1
  246. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  247. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  248. package/dist/components/form/Form/SubmitError.js +1 -1
  249. package/dist/components/form/Form/backend.js +1 -1
  250. package/dist/components/form/Form/index.js +1 -1
  251. package/dist/components/form/Form/modern/actions.js +1 -1
  252. package/dist/components/form/Form/modern/context.js +1 -1
  253. package/dist/components/form/Form/modern/controller.js +1 -1
  254. package/dist/components/form/Form/modern/field-binding.js +1 -1
  255. package/dist/components/form/Form/modern/field.js +1 -1
  256. package/dist/components/form/Form/modern/react.js +1 -1
  257. package/dist/components/form/Form/modern/react.js.map +1 -1
  258. package/dist/components/form/Form/modern/store.js +1 -1
  259. package/dist/components/form/Form/modern/validation.js +1 -1
  260. package/dist/components/form/Form/modern/values.js +1 -1
  261. package/dist/components/form/Form/reset-unbound-controls.js +1 -1
  262. package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
  263. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  264. package/dist/components/form/Form/use-field/use-field.js +1 -1
  265. package/dist/components/form/Form/use-form.js +1 -1
  266. package/dist/components/form/Form/validation.js +1 -1
  267. package/dist/components/form/Label.js +1 -1
  268. package/dist/components/form/legacy-tooltip.js +1 -1
  269. package/dist/components/form/validation/ValidationIndicator.js +1 -1
  270. package/dist/components/form/validation/resolve-validation-props.js +1 -1
  271. package/dist/components/form/validation/use-validation-props.js +1 -1
  272. package/dist/components/form/wrapper.js +1 -1
  273. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  274. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  275. package/dist/components/layout/Board/Board.js +1 -1
  276. package/dist/components/layout/Board/BoardProvider.js +1 -1
  277. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  278. package/dist/components/layout/Board/Widget.js +1 -1
  279. package/dist/components/layout/Board/WidgetHost.js +1 -1
  280. package/dist/components/layout/Board/board-context.js +1 -1
  281. package/dist/components/layout/Board/board-store.js +1 -1
  282. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  283. package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
  284. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  285. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  286. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  287. package/dist/components/layout/Board/grid-core/group-move.js +1 -1
  288. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  289. package/dist/components/layout/Board/grid-core/placement.js +1 -1
  290. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  291. package/dist/components/layout/Board/index.js +1 -1
  292. package/dist/components/layout/Board/responsive-utils.js +1 -1
  293. package/dist/components/layout/Board/use-board-layout.js +1 -1
  294. package/dist/components/layout/Board/use-board-registry.js +1 -1
  295. package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
  296. package/dist/components/layout/Board/use-board-selection.js +1 -1
  297. package/dist/components/layout/Flex.js +1 -1
  298. package/dist/components/layout/Flow.js +1 -1
  299. package/dist/components/layout/Grid.js +1 -1
  300. package/dist/components/layout/Panel.js +129 -48
  301. package/dist/components/layout/Panel.js.map +1 -1
  302. package/dist/components/layout/Prefix.js +1 -1
  303. package/dist/components/layout/ResizablePanel.js +1 -1
  304. package/dist/components/layout/Space.js +1 -1
  305. package/dist/components/layout/Suffix.js +1 -1
  306. package/dist/components/navigation/Pagination/Pagination.js +227 -347
  307. package/dist/components/navigation/Pagination/Pagination.js.map +1 -1
  308. package/dist/components/navigation/Pagination/use-pagination.js +1 -1
  309. package/dist/components/navigation/Pagination/use-pagination.js.map +1 -1
  310. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  311. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  312. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  313. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  314. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  315. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  316. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  317. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  318. package/dist/components/navigation/Tabs/TabsAction.js.map +1 -1
  319. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  320. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  321. package/dist/components/navigation/Tabs/styled.js +1 -1
  322. package/dist/components/navigation/Tabs/types.js +1 -1
  323. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  324. package/dist/components/navigation/Tabs/use-tab-editing.js.map +1 -1
  325. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  326. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  327. package/dist/components/other/Calendar/Calendar.js +1 -1
  328. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  329. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  330. package/dist/components/other/Calendar/CalendarGrid.js.map +1 -1
  331. package/dist/components/other/Calendar/CalendarHeader.js +1 -1
  332. package/dist/components/other/Calendar/CalendarPanel.js +497 -515
  333. package/dist/components/other/Calendar/CalendarPanel.js.map +1 -1
  334. package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
  335. package/dist/components/other/Calendar/PeriodCalendar.js.map +1 -1
  336. package/dist/components/other/Calendar/PeriodGrid.js +1 -1
  337. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  338. package/dist/components/other/Calendar/styled.js +1 -1
  339. package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
  340. package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
  341. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  342. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  343. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  344. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  345. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  346. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  347. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  348. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  349. package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
  350. package/dist/components/overlays/Dialog/context.js +1 -1
  351. package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
  352. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  353. package/dist/components/overlays/Modal/Modal.js +1 -1
  354. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  355. package/dist/components/overlays/Modal/Overlay.js +1 -1
  356. package/dist/components/overlays/Modal/Popover.js +1 -1
  357. package/dist/components/overlays/Modal/Tray.js +1 -1
  358. package/dist/components/overlays/Modal/Underlay.js +1 -1
  359. package/dist/components/overlays/Notifications/Notification.js +1 -1
  360. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  361. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  362. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  363. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  364. package/dist/components/overlays/Notifications/OverlayContainer.js +266 -161
  365. package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
  366. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  367. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  368. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  369. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  370. package/dist/components/overlays/Notifications/index.js +1 -1
  371. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  372. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  373. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  374. package/dist/components/overlays/Notifications/use-persistent-notifications.js +18 -9
  375. package/dist/components/overlays/Notifications/use-persistent-notifications.js.map +1 -1
  376. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  377. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  378. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  379. package/dist/components/overlays/Toast/index.js +1 -1
  380. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  381. package/dist/components/overlays/Toast/useToast.js +1 -1
  382. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  383. package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
  384. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  385. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  386. package/dist/components/overlays/Tooltip/context.js +1 -1
  387. package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
  388. package/dist/components/portal/Portal.js +1 -1
  389. package/dist/components/portal/PortalProvider.js +1 -1
  390. package/dist/components/portal/usePortal.js +1 -1
  391. package/dist/components/shared/DraggableCollection.js +1 -1
  392. package/dist/components/shared/InvalidIcon.js +1 -1
  393. package/dist/components/shared/ValidIcon.js +1 -1
  394. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  395. package/dist/components/status/Spin/Cube.js +1 -1
  396. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  397. package/dist/components/status/Spin/Spin.js +1 -1
  398. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  399. package/dist/data/item-themes.js +1 -1
  400. package/dist/data/themes.js +1 -1
  401. package/dist/eslint-plugin/defaults.generated.js +1 -1
  402. package/dist/eslint-plugin/index.js +1 -1
  403. package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
  404. package/dist/i18n/I18nProvider.js +1 -1
  405. package/dist/i18n/createFormatter.js +1 -1
  406. package/dist/i18n/index.js +1 -1
  407. package/dist/i18n/instance.js +1 -1
  408. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  409. package/dist/i18n/locales/en-US/uikit.js +1 -1
  410. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  411. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  412. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  413. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  414. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  415. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  416. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  417. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  418. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  419. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  420. package/dist/i18n/locales.js +1 -1
  421. package/dist/i18n/useFormatter.js +1 -1
  422. package/dist/i18n/useFormatter.js.map +1 -1
  423. package/dist/i18n/useI18n.js +1 -1
  424. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  425. package/dist/icons/AdjustmentsIcon.js +1 -1
  426. package/dist/icons/AiIcon.js +1 -1
  427. package/dist/icons/AreaChartIcon.js +1 -1
  428. package/dist/icons/ArrowNarrowDownIcon.js +1 -1
  429. package/dist/icons/ArrowNarrowUpIcon.js +1 -1
  430. package/dist/icons/BackwardIcon.js +1 -1
  431. package/dist/icons/BarChartIcon.js +1 -1
  432. package/dist/icons/BellFilledIcon.js +1 -1
  433. package/dist/icons/BellIcon.js +1 -1
  434. package/dist/icons/BooleanIcon.js +1 -1
  435. package/dist/icons/CalendarEditIcon.js +1 -1
  436. package/dist/icons/CalendarIcon.js +1 -1
  437. package/dist/icons/CaretDownIcon.js +1 -1
  438. package/dist/icons/CaretUpIcon.js +1 -1
  439. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  440. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  441. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  442. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  443. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  444. package/dist/icons/ChartBarLineIcon.js +1 -1
  445. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  446. package/dist/icons/ChartBarStackedIcon.js +1 -1
  447. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  448. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  449. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  450. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  451. package/dist/icons/ChartBubbleIcon.js +1 -1
  452. package/dist/icons/ChartDonut2Icon.js +1 -1
  453. package/dist/icons/ChartFunnelIcon.js +1 -1
  454. package/dist/icons/ChartHeatmapIcon.js +1 -1
  455. package/dist/icons/ChartKPIIcon.js +1 -1
  456. package/dist/icons/ChartPie2Icon.js +1 -1
  457. package/dist/icons/ChartScatterIcon.js +1 -1
  458. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  459. package/dist/icons/CheckCircleIcon.js +1 -1
  460. package/dist/icons/CheckIcon.js +1 -1
  461. package/dist/icons/CircleFilledIcon.js +1 -1
  462. package/dist/icons/ClearIcon.js +1 -1
  463. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  464. package/dist/icons/CloseCircleIcon.js +1 -1
  465. package/dist/icons/CloseIcon.js +1 -1
  466. package/dist/icons/CodeIcon.js +1 -1
  467. package/dist/icons/ColumnTotalIcon.js +1 -1
  468. package/dist/icons/CopyIcon.js +1 -1
  469. package/dist/icons/CountIcon.js +1 -1
  470. package/dist/icons/CubeIcon.js +1 -1
  471. package/dist/icons/CubePauseIcon.js +1 -1
  472. package/dist/icons/CubePlayIcon.js +1 -1
  473. package/dist/icons/CurrencyDollarIcon.js +1 -1
  474. package/dist/icons/DangerIcon.js +1 -1
  475. package/dist/icons/DashboardIcon.js +1 -1
  476. package/dist/icons/DatabaseIcon.js +1 -1
  477. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  478. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  479. package/dist/icons/DirectionIcon.js +1 -1
  480. package/dist/icons/DonutIcon.js +1 -1
  481. package/dist/icons/DownIcon.js +1 -1
  482. package/dist/icons/EditIcon.js +1 -1
  483. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  484. package/dist/icons/ExclamationCircleIcon.js +1 -1
  485. package/dist/icons/ExclamationIcon.js +1 -1
  486. package/dist/icons/EyeIcon.js +1 -1
  487. package/dist/icons/EyeInvisibleIcon.js +1 -1
  488. package/dist/icons/FilterIcon.js +1 -1
  489. package/dist/icons/FolderFilledIcon.js +1 -1
  490. package/dist/icons/FolderIcon.js +1 -1
  491. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  492. package/dist/icons/FolderOpenIcon.js +1 -1
  493. package/dist/icons/ForwardIcon.js +1 -1
  494. package/dist/icons/GripVerticalIcon.js +1 -1
  495. package/dist/icons/HierarchyIcon.js +1 -1
  496. package/dist/icons/HierarchyOpenIcon.js +1 -1
  497. package/dist/icons/Icon.js +1 -1
  498. package/dist/icons/InfoCircleIcon.js +1 -1
  499. package/dist/icons/InfoIcon.js +1 -1
  500. package/dist/icons/KeyIcon.js +1 -1
  501. package/dist/icons/LeftIcon.js +1 -1
  502. package/dist/icons/LineChartIcon.js +1 -1
  503. package/dist/icons/LoadingIcon.js +1 -1
  504. package/dist/icons/LockFilledIcon.js +1 -1
  505. package/dist/icons/LockIcon.js +1 -1
  506. package/dist/icons/MoreIcon.js +1 -1
  507. package/dist/icons/NotAllowedIcon.js +1 -1
  508. package/dist/icons/Number123Icon.js +1 -1
  509. package/dist/icons/NumberIcon.js +1 -1
  510. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  511. package/dist/icons/PauseCircleIcon.js +1 -1
  512. package/dist/icons/PauseIcon.js +1 -1
  513. package/dist/icons/PercentageIcon.js +1 -1
  514. package/dist/icons/PieChartIcon.js +1 -1
  515. package/dist/icons/PipetteIcon.js +1 -1
  516. package/dist/icons/PlayCircleIcon.js +1 -1
  517. package/dist/icons/PlayIcon.js +1 -1
  518. package/dist/icons/PlusIcon.js +1 -1
  519. package/dist/icons/ProgressBarIcon.js +1 -1
  520. package/dist/icons/ReloadIcon.js +1 -1
  521. package/dist/icons/ReportIcon.js +1 -1
  522. package/dist/icons/ReturnIcon.js +1 -1
  523. package/dist/icons/RightIcon.js +1 -1
  524. package/dist/icons/RowTotalsIcon.js +1 -1
  525. package/dist/icons/SchemeIcon.js +1 -1
  526. package/dist/icons/SearchIcon.js +1 -1
  527. package/dist/icons/SemanticQueryIcon.js +1 -1
  528. package/dist/icons/SettingsIcon.js +1 -1
  529. package/dist/icons/ShieldFilledIcon.js +1 -1
  530. package/dist/icons/ShieldIcon.js +1 -1
  531. package/dist/icons/SlashIcon.js +1 -1
  532. package/dist/icons/SparklesIcon.js +1 -1
  533. package/dist/icons/SqlIcon.js +1 -1
  534. package/dist/icons/StatsIcon.js +1 -1
  535. package/dist/icons/StopIcon.js +1 -1
  536. package/dist/icons/StringIcon.js +1 -1
  537. package/dist/icons/SubtotalsIcon.js +1 -1
  538. package/dist/icons/SwitchIcon.js +1 -1
  539. package/dist/icons/TableIcon.js +1 -1
  540. package/dist/icons/ThumbsDownIcon.js +1 -1
  541. package/dist/icons/ThumbsUpIcon.js +1 -1
  542. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  543. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  544. package/dist/icons/ThunderboltIcon.js +1 -1
  545. package/dist/icons/TimeIcon.js +1 -1
  546. package/dist/icons/TrashIcon.js +1 -1
  547. package/dist/icons/UnlockIcon.js +1 -1
  548. package/dist/icons/UpIcon.js +1 -1
  549. package/dist/icons/UserGroupIcon.js +1 -1
  550. package/dist/icons/UserIcon.js +1 -1
  551. package/dist/icons/UserLockIcon.js +1 -1
  552. package/dist/icons/ViewIcon.js +1 -1
  553. package/dist/icons/WarningFilledIcon.js +1 -1
  554. package/dist/icons/WarningIcon.js +1 -1
  555. package/dist/icons/wrap-icon.js +1 -1
  556. package/dist/index.js +1 -1
  557. package/dist/probe/canonicalize.js +1 -1
  558. package/dist/probe/css.js +1 -1
  559. package/dist/probe/index.js +1 -1
  560. package/dist/provider.js +1 -1
  561. package/dist/providers/TrackingProvider.js +1 -1
  562. package/dist/providers/navigationAdapter.default.js +1 -1
  563. package/dist/tokens/all-tokens.js +1 -1
  564. package/dist/tokens/base.js +1 -1
  565. package/dist/tokens/color-seed.js +1 -1
  566. package/dist/tokens/color-theme.js +1 -1
  567. package/dist/tokens/colors.js +1 -1
  568. package/dist/tokens/layout.js +1 -1
  569. package/dist/tokens/lazy-styles.js +1 -1
  570. package/dist/tokens/legacy-color.js +1 -1
  571. package/dist/tokens/palette-config.js +1 -1
  572. package/dist/tokens/palette.js +1 -1
  573. package/dist/tokens/resolve.js +1 -1
  574. package/dist/tokens/shadows.js +1 -1
  575. package/dist/tokens/sizes.js +1 -1
  576. package/dist/tokens/spacing.js +1 -1
  577. package/dist/tokens/typography.js +1 -1
  578. package/dist/utils/ResizeSensor.js +1 -1
  579. package/dist/utils/colors.js +1 -1
  580. package/dist/utils/dotize.js +1 -1
  581. package/dist/utils/is-dev-env.js +1 -1
  582. package/dist/utils/modules.js +1 -1
  583. package/dist/utils/promise.js +1 -1
  584. package/dist/utils/raf.js +1 -1
  585. package/dist/utils/random.js +1 -1
  586. package/dist/utils/range.js +1 -1
  587. package/dist/utils/react/RenderCache.js +1 -1
  588. package/dist/utils/react/Slots.js +1 -1
  589. package/dist/utils/react/chain.js +1 -1
  590. package/dist/utils/react/disabledProps.js +1 -1
  591. package/dist/utils/react/escapePropagation.js +1 -1
  592. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  593. package/dist/utils/react/index.js +1 -1
  594. package/dist/utils/react/interactions.js +1 -1
  595. package/dist/utils/react/isTextOnly.js +1 -1
  596. package/dist/utils/react/mapProps.js +1 -1
  597. package/dist/utils/react/mergeProps.js +1 -1
  598. package/dist/utils/react/nullableValue.js +1 -1
  599. package/dist/utils/react/programmaticFocus.js +1 -1
  600. package/dist/utils/react/resolveIcon.js +1 -1
  601. package/dist/utils/react/sharedStore.js +1 -1
  602. package/dist/utils/react/useBufferedValue.js +1 -1
  603. package/dist/utils/react/useCombinedRefs.js +1 -1
  604. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  605. package/dist/utils/react/useEventBus.js +1 -1
  606. package/dist/utils/react/useId.js +1 -1
  607. package/dist/utils/react/useIsDarwin.js +1 -1
  608. package/dist/utils/react/useKeySymbols.js +1 -1
  609. package/dist/utils/react/useKeySymbols.js.map +1 -1
  610. package/dist/utils/react/useLayoutEffect.js +1 -1
  611. package/dist/utils/react/useLocalStorage.js +1 -1
  612. package/dist/utils/react/useMergeStyles.js +1 -1
  613. package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
  614. package/dist/utils/react/usePopoverSync.js +1 -1
  615. package/dist/utils/react/usePopoverSync.js.map +1 -1
  616. package/dist/utils/react/useQaProps.js +1 -1
  617. package/dist/utils/react/useScheme.js +1 -1
  618. package/dist/utils/react/useViewportSize.js +1 -1
  619. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  620. package/dist/utils/selection.js +1 -1
  621. package/dist/utils/styles.js +1 -1
  622. package/dist/utils/tree.js +1 -1
  623. package/dist/utils/warnings.js +1 -1
  624. package/dist/version.js +3 -3
  625. package/docs/CreateComponent.md +3 -1
  626. package/docs/components/fields/TagInput.md +8 -8
  627. package/docs/tasty/ai-agents.md +21 -2
  628. package/docs/tasty/dsl.md +4 -2
  629. package/docs/tasty/getting-started.md +13 -11
  630. package/docs/tasty/methodology.md +2 -2
  631. package/docs/tasty/pipeline.md +29 -8
  632. package/docs/tasty/plugins.md +1 -1
  633. package/docs/tasty/styles.md +23 -5
  634. package/docs/tasty/tasty-static.md +1 -1
  635. package/package.json +3 -3
@@ -86,18 +86,22 @@ Output: CSSRule[]
86
86
 
87
87
  ### What It Does
88
88
 
89
- Runs on each style's value map **before** any parsing. If a compound AND state key shares a value with the "atom absent" variant, the atom is a don't-care and every key is simplified by dropping it. Duplicate keys collapse.
89
+ Runs on each style's value map **before** any parsing, when the map has at least three keys and one of them uses `&`. An atom is a **don't-care** when flipping it never changes which value the map resolves to; every key that mentions a don't-care atom is dropped.
90
90
 
91
91
  ### How It Works
92
92
 
93
- 1. Gather the unique set of top-level AND atoms across all keys.
94
- 2. An atom is **redundant** when every entry that contains it has a same-value partner with the atom absent and the rest of the atoms identical.
95
- 3. Keys containing `|`, `^`, or `,` at top level are treated as opaque single atoms (they don't participate in atom-level extraction).
96
- 4. Drop redundant atoms from every key; collapse duplicates.
93
+ 1. Split each key into its top-level `&` atoms. Keys containing `|`, `^`, or `,` at top level are a single opaque atom. The `_` floor (and a misused `_` key) is kept verbatim and left out of the analysis.
94
+ 2. Treat the map as the cascade it is: the last authored key whose atoms all hold wins, and `''` is always the lowest priority.
95
+ 3. An atom is a don't-care when, in every state, the cascade resolves to the same value with the atom present as with it absent. Only the states `(K₁ minus the atom) ∪ K₀`, for every key `K₁` that contains the atom and every key `K₀` that does not (or none), can tell the two apart, so the check is quadratic in the number of keys rather than exponential in atoms.
96
+ 4. Drop every key that contains a don't-care atom. With the atom forced absent those keys never match, and by definition the result is unchanged.
97
+
98
+ The check is over the cascade, not over pairs of keys. In `{ '': A, checked: B, 'invalid & checked': C, disabled: A }`, `disabled` has the default's value, but it outranks `checked`: a checked, disabled element gets `A`, so `disabled` is not a don't-care. (An earlier pairwise rule — "every key with the atom has a same-value partner without it" — folded `disabled` into `''` here and lost that priority.)
99
+
100
+ Atoms are compared as strings and treated as independent. Real atoms can be related (`theme=dark` vs `theme=light`, nested media ranges); that only rules states out, so a don't-care over independent atoms is one for every real state too. Two guards keep the rewrite safe: a map with more than 32 distinct atoms is left unreduced, and a reduction that would leave the `_` floor alone with `''` (which means "use the floor", see Stage 1) is skipped.
97
101
 
98
102
  ### Why
99
103
 
100
- Removing don't-care dimensions before parsing prevents combinatorial blowup in later stages. `mergeEntriesByValue`, `buildExclusiveConditions`, and materialization all see fewer entries and fewer spurious conditions. Implemented as part of the Apr 2026 fix for overlapping CSS rules (commit 7cd9dbe).
104
+ Removing don't-care dimensions before parsing prevents combinatorial blowup in later stages. `mergeEntriesByValue`, `buildExclusiveConditions`, and materialization all see fewer entries and fewer spurious conditions.
101
105
 
102
106
  ### Example
103
107
 
@@ -197,6 +201,8 @@ The merge is safe iff for every entry `e_m` strictly between them in priority wi
197
201
 
198
202
  i.e. there is no scenario where the intermediate state could have matched, the lower same-value entry would also have matched, and the higher one would not. This is the only way the merge could leak through and shadow the intermediate state.
199
203
 
204
+ An intermediate whose condition always holds (a tautological key, or same-value keys that already merged into one, like `beta | !beta`) is checked like any other. Only the `''` default and the `_` floor are exempt from the check, and they are always the lowest priorities, so they are never intermediates.
205
+
200
206
  ### Why
201
207
 
202
208
  Without this pass a value map like `{ '@dark': 'red', '@dark & @hc': 'red' }` would create two separate entries that later produce two CSS rules with identical output. Merging before exclusive building keeps the exclusive condition algebra small and avoids duplicate CSS. The safety check ensures we never break the cascade in service of this optimization.
@@ -293,7 +299,9 @@ B: B & !A (applies only when A doesn't)
293
299
  C: C & !A & !B (applies only when neither A nor B)
294
300
  ```
295
301
 
296
- Each exclusive condition is passed through `simplifyCondition`. Entries that simplify to `FALSE` (impossible) are filtered out. The default state (`''` → `TrueCondition`) is not added to the “prior” list for negation (see `buildExclusiveConditions`).
302
+ Each exclusive condition is passed through `simplifyCondition`. Entries that simplify to `FALSE` (impossible) are filtered out.
303
+
304
+ Every entry is added to the "prior" list, including one whose condition is `TRUE`. That can be a tautological key, or same-value keys that merged into one in Stage 1b (`alpha: X, '!alpha': X` → `TRUE`). Such an entry always applies at its priority, so negating it correctly makes every lower entry `FALSE`. The bare `''` default is `TRUE` too, but it is always the lowest priority, so no entry comes after it.
297
305
 
298
306
  ### `_` fallback floor
299
307
 
@@ -383,7 +391,7 @@ The pre-build Stage 2a pass doesn't need this because user-authored ORs aren't p
383
391
 
384
392
  ### Example (conceptual)
385
393
 
386
- See the comment block in `exclusive.ts:500-523`: a default value whose higher-priority sibling is `@supports(...) & :has(...)` gets an exclusive of `!@supports | !:has`. Expansion yields one branch under `@supports (not ...)` and another under `@supports (...) { :not(:has()) }` instead of a bare `:not(:has())` rule.
394
+ See the comment block on `expandExclusiveOrs` in `exclusive.ts`: a default value whose higher-priority sibling is `@supports(...) & :has(...)` gets an exclusive of `!@supports | !:has`. Expansion yields one branch under `@supports (not ...)` and another under `@supports (...) { :not(:has()) }` instead of a bare `:not(:has())` rule.
387
395
 
388
396
  ---
389
397
 
@@ -742,3 +750,16 @@ Impossible combinations are detected at multiple levels (simplification, variant
742
750
  ### 4. Aggressive Caching
743
751
 
744
752
  Parse, simplify, condition-to-CSS, and full-pipeline results are cached independently, enabling fast re-rendering when only parts of the style object change.
753
+
754
+ Cache keys must respect key order where it carries meaning. A state map resolves by key order, so `{ '': A, checked: B, disabled: C }` and `{ '': A, disabled: C, checked: B }` are different styles and must get different keys (and classes). Only the style keys of a styles object, including a sub-element's, are order-insensitive, so they may be sorted. `stringifyStyles` (pipeline cache) and `generateChunkCacheKey` (class allocation) both follow this rule.
755
+
756
+ ---
757
+
758
+ ## Testing Priority
759
+
760
+ Every stage above is an optimization that must leave one thing unchanged: in any state, the value that applies is the value of the last authored key whose condition holds. `src/test/state-oracle.ts` states that rule directly, with none of the pipeline's machinery, and two suites compare the pipeline against it:
761
+
762
+ - `src/pipeline/exclusive.test.ts` (Node) evaluates the conditions after each of Stages 0–3 on thousands of generated maps, and names the stage that disagrees.
763
+ - `src/pipeline/state-priority.test.ts` (browser) renders hand-written, permuted, and generated maps to CSS, applies every combination of states (modifiers, value modifiers, `:has()`, `@root`, `@parent`, `@own`, media, supports), and compares what the browser computes against the oracle. It also checks that rules stay mutually exclusive, which a correct computed value alone can hide. It runs through the pipeline, the runtime injector, and the SSR collector, with all maps mounted at once so a cache-key collision shows up.
764
+
765
+ A change to any stage should keep both green. When a generated map fails, the message includes the map, the failing states, and the CSS; the map is usually worth adding to the hand-written cases once it is reduced.
@@ -246,7 +246,7 @@ function glazeStyles(value: GlazeValue): Styles {
246
246
  styles = Object.freeze({
247
247
  '#glaze-bg': `#${tone}.${intensity}`,
248
248
  fill: '#glaze-bg',
249
- transition: 'fill 0.2s',
249
+ transition: 'fill',
250
250
  }) as Styles;
251
251
  cache.set(key, styles);
252
252
  }
@@ -566,15 +566,15 @@ When easing is provided without a duration, the default timing variable is used
566
566
  | `zIndex` | `z-index` |
567
567
  | `inset` | `inset`, `top`, `right`, `bottom`, `left` |
568
568
 
569
- Default timing: `$transition` (or `${name}-transition` with `$transition` fallback per semantic name).
569
+ Default timing: `$transition` (or `${name}-transition` with `$transition` fallback per semantic name). Prefer omitting the duration or using a duration token instead of repeating raw time values across components. Explicit zero can disable motion.
570
570
 
571
571
  ```jsx
572
- transition="theme 0.3s"
573
- transition="fill 0.2s, radius 0.3s"
574
- transition="fade 0.15s ease-in"
572
+ transition="theme"
573
+ transition="fill, radius"
574
+ transition="fade $transition ease-in"
575
575
  transition="fill ease-in" // easing without duration (uses default timing)
576
576
  transition="radius ease-in-out" // easing keyword only
577
- transition="$$custom-prop 0.3s" // custom property transition
577
+ transition="$$custom-prop" // custom property transition
578
578
  ```
579
579
 
580
580
  **Recognized easing keywords:** `ease`, `ease-in`, `ease-out`, `ease-in-out`, `linear`, `step-start`, `step-end`. CSS easing functions (`cubic-bezier(...)`, `steps(...)`, `linear(...)`) are also recognized.
@@ -583,6 +583,24 @@ If the name is not a semantic name, it is used as a literal CSS property name.
583
583
 
584
584
  ---
585
585
 
586
+ ### `animation`
587
+
588
+ `animation` is the native CSS shorthand. Tasty parses tokens in its value and
589
+ tracks local `@keyframes` names referenced by it, so it needs no custom style
590
+ handler. Define a complete animation with the shorthand, using a configured
591
+ duration token where appropriate (for example,
592
+ `animation: 'pulse $animation-duration ease-in infinite'`).
593
+
594
+ Use `animationDuration`, `animationTimeline`, `animationRange`, and other CSS
595
+ longhands when changing just one part of an existing animation in a state or
596
+ component extension. Setting `animation` resets omitted parts, including its
597
+ timeline and range. The same principle applies to `transitionDuration` and
598
+ other transition longhands when a base `transition` is already defined.
599
+ `transitionBehavior` remains a separate CSS longhand; Tasty's semantic
600
+ `transition` syntax covers name, timing, easing, and delay.
601
+
602
+ ---
603
+
586
604
  ## Scrollbar & Overflow
587
605
 
588
606
  ### `scrollbar`
@@ -489,7 +489,7 @@ const button = tastyStatic({
489
489
  radius: '1r',
490
490
  fill: '#gray.20',
491
491
  color: '#text',
492
- transition: 'fill 0.15s',
492
+ transition: 'fill',
493
493
  });
494
494
 
495
495
  // Variants
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cube-dev/ui-kit",
3
- "version": "0.185.3",
3
+ "version": "0.186.1",
4
4
  "type": "module",
5
5
  "description": "UIKit for Cube Projects",
6
6
  "repository": {
@@ -59,7 +59,7 @@
59
59
  "@tabler/icons-react": "^3.31.0",
60
60
  "@tanstack/react-virtual": "^3.13.12",
61
61
  "@tenphi/glaze": "2.0.0",
62
- "@tenphi/tasty": "^3.9.2",
62
+ "@tenphi/tasty": "^3.9.3",
63
63
  "clipboard-copy": "^4.0.1",
64
64
  "clsx": "^1.1.1",
65
65
  "diff": "^8.0.3",
@@ -98,7 +98,7 @@
98
98
  "@statoscope/cli": "^5.20.1",
99
99
  "@storybook/addon-docs": "^10.3.6",
100
100
  "@storybook/react-vite": "^10.3.6",
101
- "@tenphi/eslint-plugin-tasty": "^1.1.0",
101
+ "@tenphi/eslint-plugin-tasty": "^1.2.0",
102
102
  "@testing-library/dom": "^10.4.1",
103
103
  "@testing-library/jest-dom": "^6.7.0",
104
104
  "@testing-library/react": "^16.3.0",