@cube-dev/ui-kit 0.138.6 → 0.139.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 (471) hide show
  1. package/dist/CHANGELOG.md +45 -0
  2. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  3. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  4. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  5. package/dist/_internal/hooks/use-event.js +1 -1
  6. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  7. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  8. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  9. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  10. package/dist/_internal/hooks/use-warn.js +1 -1
  11. package/dist/components/Block.js +1 -1
  12. package/dist/components/CollectionItem.js +1 -1
  13. package/dist/components/GlobalStyles.js +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/Button/Button.d.ts +2 -2
  20. package/dist/components/actions/Button/Button.js +11 -17
  21. package/dist/components/actions/Button/Button.js.map +1 -1
  22. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  23. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  24. package/dist/components/actions/ButtonSplit/context.js +1 -1
  25. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  26. package/dist/components/actions/CommandMenu/styled.js +1 -1
  27. package/dist/components/actions/ItemAction/ItemAction.d.ts +2 -2
  28. package/dist/components/actions/ItemAction/ItemAction.js +8 -22
  29. package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
  30. package/dist/components/actions/ItemActionContext.js +2 -2
  31. package/dist/components/actions/ItemActionContext.js.map +1 -1
  32. package/dist/components/actions/ItemButton/ItemButton.js +3 -3
  33. package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
  34. package/dist/components/actions/Link/Link.js +1 -1
  35. package/dist/components/actions/Menu/Menu.js +1 -1
  36. package/dist/components/actions/Menu/MenuItem.js +1 -1
  37. package/dist/components/actions/Menu/MenuSection.js +1 -1
  38. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  39. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  40. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  41. package/dist/components/actions/Menu/context.js +1 -1
  42. package/dist/components/actions/Menu/styled.js +3 -3
  43. package/dist/components/actions/Menu/styled.js.map +1 -1
  44. package/dist/components/actions/index.js +1 -1
  45. package/dist/components/actions/use-action.js +1 -1
  46. package/dist/components/actions/use-anchored-menu.js +1 -1
  47. package/dist/components/actions/use-context-menu.js +1 -1
  48. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  49. package/dist/components/content/Alert/Alert.js +1 -1
  50. package/dist/components/content/Alert/use-alert.js +1 -1
  51. package/dist/components/content/Avatar/Avatar.js +1 -1
  52. package/dist/components/content/Badge/Badge.js +1 -1
  53. package/dist/components/content/Card/Card.js +1 -1
  54. package/dist/components/content/Content.js +1 -1
  55. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  56. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  57. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  58. package/dist/components/content/Divider.js +1 -1
  59. package/dist/components/content/Footer.js +1 -1
  60. package/dist/components/content/Header.js +1 -1
  61. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  62. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  63. package/dist/components/content/Item/Item.d.ts +3 -3
  64. package/dist/components/content/Item/Item.js +19 -25
  65. package/dist/components/content/Item/Item.js.map +1 -1
  66. package/dist/components/content/ItemBadge/ItemBadge.d.ts +2 -2
  67. package/dist/components/content/ItemBadge/ItemBadge.js +12 -18
  68. package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
  69. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  70. package/dist/components/content/Layout/GridLayout.js +1 -1
  71. package/dist/components/content/Layout/Layout.js +1 -1
  72. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  73. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  74. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  75. package/dist/components/content/Layout/LayoutContent.js +1 -1
  76. package/dist/components/content/Layout/LayoutContext.js +1 -1
  77. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  78. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  79. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  80. package/dist/components/content/Layout/LayoutHeader.js +2 -2
  81. package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
  82. package/dist/components/content/Layout/LayoutPane.js +1 -1
  83. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  84. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  85. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  86. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  87. package/dist/components/content/Layout/index.js +1 -1
  88. package/dist/components/content/Layout/utils.js +1 -1
  89. package/dist/components/content/Paragraph.js +1 -1
  90. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  91. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  92. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  93. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  94. package/dist/components/content/Result/Result.js +1 -1
  95. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  96. package/dist/components/content/Tag/Tag.js +1 -1
  97. package/dist/components/content/Text.d.ts +7 -7
  98. package/dist/components/content/Text.js +1 -1
  99. package/dist/components/content/TextItem/TextItem.js +1 -1
  100. package/dist/components/content/Title.js +1 -1
  101. package/dist/components/content/Tree/Tree.js +1 -1
  102. package/dist/components/content/Tree/TreeNode.js +1 -1
  103. package/dist/components/content/Tree/styled.js +1 -1
  104. package/dist/components/content/Tree/tree-index.js +1 -1
  105. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  106. package/dist/components/content/Tree/use-load-data.js +1 -1
  107. package/dist/components/content/highlightText.js +1 -1
  108. package/dist/components/content/use-auto-tooltip.js +1 -1
  109. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  110. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  111. package/dist/components/fields/Checkbox/context.js +1 -1
  112. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  113. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  114. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  115. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  116. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  117. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  118. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  119. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  120. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  121. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  122. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  123. package/dist/components/fields/DatePicker/intl.js +1 -1
  124. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  125. package/dist/components/fields/DatePicker/props.js +1 -1
  126. package/dist/components/fields/DatePicker/utils.js +1 -1
  127. package/dist/components/fields/FileInput/FileInput.js +1 -1
  128. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  129. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  130. package/dist/components/fields/Input/Input.js +1 -1
  131. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  132. package/dist/components/fields/ListBox/ListBox.js +1 -1
  133. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  134. package/dist/components/fields/NumberInput/StepButton.js +3 -3
  135. package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
  136. package/dist/components/fields/PasswordInput/PasswordInput.js +2 -2
  137. package/dist/components/fields/PasswordInput/PasswordInput.js.map +1 -1
  138. package/dist/components/fields/Picker/Picker.js +1 -1
  139. package/dist/components/fields/RadioGroup/Radio.d.ts +1 -1
  140. package/dist/components/fields/RadioGroup/Radio.js +40 -12
  141. package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
  142. package/dist/components/fields/RadioGroup/RadioGroup.d.ts +1 -1
  143. package/dist/components/fields/RadioGroup/RadioGroup.js +15 -5
  144. package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
  145. package/dist/components/fields/RadioGroup/context.js +1 -1
  146. package/dist/components/fields/SearchInput/SearchInput.js +2 -2
  147. package/dist/components/fields/SearchInput/SearchInput.js.map +1 -1
  148. package/dist/components/fields/Select/Select.d.ts +1 -1
  149. package/dist/components/fields/Select/Select.js +1 -1
  150. package/dist/components/fields/Select/Select.js.map +1 -1
  151. package/dist/components/fields/Slider/Gradation.js +1 -1
  152. package/dist/components/fields/Slider/HueSlider.js +1 -1
  153. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  154. package/dist/components/fields/Slider/Slider.js +1 -1
  155. package/dist/components/fields/Slider/SliderBase.js +1 -1
  156. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  157. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  158. package/dist/components/fields/Slider/elements.js +1 -1
  159. package/dist/components/fields/Slider/index.js +1 -1
  160. package/dist/components/fields/Switch/Switch.js +1 -1
  161. package/dist/components/fields/TextArea/TextArea.js +1 -1
  162. package/dist/components/fields/TextInput/TextInput.js +1 -1
  163. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  164. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  165. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  166. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  167. package/dist/components/form/Form/Field.js +1 -1
  168. package/dist/components/form/Form/Form.js +1 -1
  169. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  170. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  171. package/dist/components/form/Form/SubmitError.js +1 -1
  172. package/dist/components/form/Form/index.js +1 -1
  173. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  174. package/dist/components/form/Form/use-field/use-field.js +1 -1
  175. package/dist/components/form/Form/use-form.js +1 -1
  176. package/dist/components/form/Form/validation.js +1 -1
  177. package/dist/components/form/Label.js +1 -1
  178. package/dist/components/form/wrapper.js +1 -1
  179. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  180. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  181. package/dist/components/layout/Flex.js +1 -1
  182. package/dist/components/layout/Flow.js +1 -1
  183. package/dist/components/layout/Grid.js +1 -1
  184. package/dist/components/layout/Panel.js +1 -1
  185. package/dist/components/layout/Prefix.js +1 -1
  186. package/dist/components/layout/ResizablePanel.js +1 -1
  187. package/dist/components/layout/Space.js +1 -1
  188. package/dist/components/layout/Suffix.js +1 -1
  189. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  190. package/dist/components/navigation/Tabs/TabButton.js +2 -2
  191. package/dist/components/navigation/Tabs/TabButton.js.map +1 -1
  192. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  193. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  194. package/dist/components/navigation/Tabs/TabPicker.js +2 -2
  195. package/dist/components/navigation/Tabs/TabPicker.js.map +1 -1
  196. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  197. package/dist/components/navigation/Tabs/TabsAction.js +5 -5
  198. package/dist/components/navigation/Tabs/TabsAction.js.map +1 -1
  199. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  200. package/dist/components/navigation/Tabs/styled.js +2 -1
  201. package/dist/components/navigation/Tabs/styled.js.map +1 -1
  202. package/dist/components/navigation/Tabs/types.js +1 -1
  203. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  204. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  205. package/dist/components/organisms/FileTabs/FileTabs.js +2 -2
  206. package/dist/components/organisms/FileTabs/FileTabs.js.map +1 -1
  207. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  208. package/dist/components/other/Calendar/Calendar.js +1 -1
  209. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  210. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  211. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  212. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  213. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  214. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  215. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  216. package/dist/components/overlays/Dialog/Dialog.js +2 -2
  217. package/dist/components/overlays/Dialog/Dialog.js.map +1 -1
  218. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  219. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  220. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  221. package/dist/components/overlays/Dialog/context.js +1 -1
  222. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  223. package/dist/components/overlays/Modal/Modal.js +1 -1
  224. package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
  225. package/dist/components/overlays/Modal/Overlay.js +1 -1
  226. package/dist/components/overlays/Modal/Popover.js +1 -1
  227. package/dist/components/overlays/Modal/Tray.js +1 -1
  228. package/dist/components/overlays/Modal/Underlay.js +1 -1
  229. package/dist/components/overlays/Notifications/Notification.js +1 -1
  230. package/dist/components/overlays/Notifications/NotificationAction.d.ts +1 -1
  231. package/dist/components/overlays/Notifications/NotificationAction.js +4 -3
  232. package/dist/components/overlays/Notifications/NotificationAction.js.map +1 -1
  233. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  234. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  235. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  236. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  237. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  238. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  239. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  240. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  241. package/dist/components/overlays/Notifications/index.js +1 -1
  242. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  243. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  244. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  245. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  246. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  247. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  248. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  249. package/dist/components/overlays/Toast/index.js +1 -1
  250. package/dist/components/overlays/Toast/useProgressToast.js +3 -2
  251. package/dist/components/overlays/Toast/useProgressToast.js.map +1 -1
  252. package/dist/components/overlays/Toast/useToast.js +1 -1
  253. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  254. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  255. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  256. package/dist/components/overlays/Tooltip/context.js +1 -1
  257. package/dist/components/portal/Portal.js +1 -1
  258. package/dist/components/portal/PortalProvider.js +1 -1
  259. package/dist/components/portal/usePortal.js +1 -1
  260. package/dist/components/shared/DraggableCollection.js +1 -1
  261. package/dist/components/shared/InvalidIcon.js +1 -1
  262. package/dist/components/shared/ValidIcon.js +1 -1
  263. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  264. package/dist/components/status/Spin/Cube.js +1 -1
  265. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  266. package/dist/components/status/Spin/Spin.js +1 -1
  267. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  268. package/dist/data/item-themes.d.ts +1 -1
  269. package/dist/data/item-themes.js +377 -467
  270. package/dist/data/item-themes.js.map +1 -1
  271. package/dist/data/themes.js +1 -1
  272. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  273. package/dist/icons/AdjustmentsIcon.js +1 -1
  274. package/dist/icons/AiIcon.js +1 -1
  275. package/dist/icons/AreaChartIcon.js +1 -1
  276. package/dist/icons/BackwardIcon.js +1 -1
  277. package/dist/icons/BarChartIcon.js +1 -1
  278. package/dist/icons/BellFilledIcon.js +1 -1
  279. package/dist/icons/BellIcon.js +1 -1
  280. package/dist/icons/BooleanIcon.js +1 -1
  281. package/dist/icons/CalendarEditIcon.js +1 -1
  282. package/dist/icons/CalendarIcon.js +1 -1
  283. package/dist/icons/CaretDownIcon.js +1 -1
  284. package/dist/icons/CaretUpIcon.js +1 -1
  285. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  286. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  287. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  288. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  289. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  290. package/dist/icons/ChartBarLineIcon.js +1 -1
  291. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  292. package/dist/icons/ChartBarStackedIcon.js +1 -1
  293. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  294. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  295. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  296. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  297. package/dist/icons/ChartBubbleIcon.js +1 -1
  298. package/dist/icons/ChartDonut2Icon.js +1 -1
  299. package/dist/icons/ChartFunnelIcon.js +1 -1
  300. package/dist/icons/ChartHeatmapIcon.js +1 -1
  301. package/dist/icons/ChartKPIIcon.js +1 -1
  302. package/dist/icons/ChartPie2Icon.js +1 -1
  303. package/dist/icons/ChartScatterIcon.js +1 -1
  304. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  305. package/dist/icons/CheckCircleIcon.js +1 -1
  306. package/dist/icons/CheckIcon.js +1 -1
  307. package/dist/icons/CircleFilledIcon.js +1 -1
  308. package/dist/icons/ClearIcon.js +1 -1
  309. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  310. package/dist/icons/CloseCircleIcon.js +1 -1
  311. package/dist/icons/CloseIcon.js +1 -1
  312. package/dist/icons/CodeIcon.js +1 -1
  313. package/dist/icons/ColumnTotalIcon.js +1 -1
  314. package/dist/icons/CopyIcon.js +1 -1
  315. package/dist/icons/CountIcon.js +1 -1
  316. package/dist/icons/CubeIcon.js +1 -1
  317. package/dist/icons/CubePauseIcon.js +1 -1
  318. package/dist/icons/CubePlayIcon.js +1 -1
  319. package/dist/icons/CurrencyDollarIcon.js +1 -1
  320. package/dist/icons/DangerIcon.js +1 -1
  321. package/dist/icons/DashboardIcon.js +1 -1
  322. package/dist/icons/DatabaseIcon.js +1 -1
  323. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  324. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  325. package/dist/icons/DirectionIcon.js +1 -1
  326. package/dist/icons/DonutIcon.js +1 -1
  327. package/dist/icons/DownIcon.js +1 -1
  328. package/dist/icons/EditIcon.js +1 -1
  329. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  330. package/dist/icons/ExclamationCircleIcon.js +1 -1
  331. package/dist/icons/ExclamationIcon.js +1 -1
  332. package/dist/icons/EyeIcon.js +1 -1
  333. package/dist/icons/EyeInvisibleIcon.js +1 -1
  334. package/dist/icons/FilterIcon.js +1 -1
  335. package/dist/icons/FolderFilledIcon.js +1 -1
  336. package/dist/icons/FolderIcon.js +1 -1
  337. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  338. package/dist/icons/FolderOpenIcon.js +1 -1
  339. package/dist/icons/ForwardIcon.js +1 -1
  340. package/dist/icons/GripVerticalIcon.js +1 -1
  341. package/dist/icons/HierarchyIcon.js +1 -1
  342. package/dist/icons/HierarchyOpenIcon.js +1 -1
  343. package/dist/icons/Icon.js +1 -1
  344. package/dist/icons/InfoCircleIcon.js +1 -1
  345. package/dist/icons/InfoIcon.js +1 -1
  346. package/dist/icons/KeyIcon.js +1 -1
  347. package/dist/icons/LeftIcon.js +1 -1
  348. package/dist/icons/LineChartIcon.js +1 -1
  349. package/dist/icons/LoadingIcon.js +1 -1
  350. package/dist/icons/LockFilledIcon.js +1 -1
  351. package/dist/icons/LockIcon.js +1 -1
  352. package/dist/icons/MoreIcon.js +1 -1
  353. package/dist/icons/NotAllowedIcon.js +1 -1
  354. package/dist/icons/Number123Icon.js +1 -1
  355. package/dist/icons/NumberIcon.js +1 -1
  356. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  357. package/dist/icons/PauseCircleIcon.js +1 -1
  358. package/dist/icons/PauseIcon.js +1 -1
  359. package/dist/icons/PercentageIcon.js +1 -1
  360. package/dist/icons/PieChartIcon.js +1 -1
  361. package/dist/icons/PlayCircleIcon.js +1 -1
  362. package/dist/icons/PlayIcon.js +1 -1
  363. package/dist/icons/PlusIcon.js +1 -1
  364. package/dist/icons/ProgressBarIcon.js +1 -1
  365. package/dist/icons/ReloadIcon.js +1 -1
  366. package/dist/icons/ReportIcon.js +1 -1
  367. package/dist/icons/ReturnIcon.js +1 -1
  368. package/dist/icons/RightIcon.js +1 -1
  369. package/dist/icons/RowTotalsIcon.js +1 -1
  370. package/dist/icons/SchemeIcon.js +1 -1
  371. package/dist/icons/SearchIcon.js +1 -1
  372. package/dist/icons/SemanticQueryIcon.js +1 -1
  373. package/dist/icons/SettingsIcon.js +1 -1
  374. package/dist/icons/ShieldFilledIcon.js +1 -1
  375. package/dist/icons/ShieldIcon.js +1 -1
  376. package/dist/icons/SlashIcon.js +1 -1
  377. package/dist/icons/SparklesIcon.js +1 -1
  378. package/dist/icons/SqlIcon.js +1 -1
  379. package/dist/icons/StatsIcon.js +1 -1
  380. package/dist/icons/StopIcon.js +1 -1
  381. package/dist/icons/StringIcon.js +1 -1
  382. package/dist/icons/SubtotalsIcon.js +1 -1
  383. package/dist/icons/SwitchIcon.js +1 -1
  384. package/dist/icons/TableIcon.js +1 -1
  385. package/dist/icons/ThumbsDownIcon.js +1 -1
  386. package/dist/icons/ThumbsUpIcon.js +1 -1
  387. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  388. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  389. package/dist/icons/ThunderboltIcon.js +1 -1
  390. package/dist/icons/TimeIcon.js +1 -1
  391. package/dist/icons/TrashIcon.js +1 -1
  392. package/dist/icons/UnlockIcon.js +1 -1
  393. package/dist/icons/UpIcon.js +1 -1
  394. package/dist/icons/UserGroupIcon.js +1 -1
  395. package/dist/icons/UserIcon.js +1 -1
  396. package/dist/icons/UserLockIcon.js +1 -1
  397. package/dist/icons/ViewIcon.js +1 -1
  398. package/dist/icons/WarningFilledIcon.js +1 -1
  399. package/dist/icons/WarningIcon.js +1 -1
  400. package/dist/icons/wrap-icon.js +1 -1
  401. package/dist/index.js +1 -1
  402. package/dist/provider.js +1 -1
  403. package/dist/providers/TrackingProvider.js +1 -1
  404. package/dist/providers/navigationAdapter.default.js +1 -1
  405. package/dist/tokens/base.js +1 -1
  406. package/dist/tokens/colors.js +1 -1
  407. package/dist/tokens/index.js +1 -1
  408. package/dist/tokens/layout.js +1 -1
  409. package/dist/tokens/palette.js +52 -22
  410. package/dist/tokens/palette.js.map +1 -1
  411. package/dist/tokens/shadows.js +1 -1
  412. package/dist/tokens/sizes.js +1 -1
  413. package/dist/tokens/spacing.js +1 -1
  414. package/dist/tokens/typography.js +1 -1
  415. package/dist/utils/ResizeSensor.js +1 -1
  416. package/dist/utils/is-dev-env.js +1 -1
  417. package/dist/utils/modules.js +1 -1
  418. package/dist/utils/promise.js +1 -1
  419. package/dist/utils/raf.js +1 -1
  420. package/dist/utils/random.js +1 -1
  421. package/dist/utils/range.js +1 -1
  422. package/dist/utils/react/RenderCache.js +1 -1
  423. package/dist/utils/react/Slots.js +1 -1
  424. package/dist/utils/react/chain.js +1 -1
  425. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  426. package/dist/utils/react/index.js +1 -1
  427. package/dist/utils/react/interactions.js +1 -1
  428. package/dist/utils/react/isTextOnly.js +1 -1
  429. package/dist/utils/react/mapProps.js +1 -1
  430. package/dist/utils/react/mergeProps.js +1 -1
  431. package/dist/utils/react/nullableValue.js +1 -1
  432. package/dist/utils/react/resolveIcon.js +1 -1
  433. package/dist/utils/react/sharedStore.js +1 -1
  434. package/dist/utils/react/useCombinedRefs.js +1 -1
  435. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  436. package/dist/utils/react/useEventBus.js +1 -1
  437. package/dist/utils/react/useId.js +1 -1
  438. package/dist/utils/react/useIsDarwin.js +1 -1
  439. package/dist/utils/react/useKeySymbols.js +1 -1
  440. package/dist/utils/react/useLayoutEffect.js +1 -1
  441. package/dist/utils/react/useLocalStorage.js +1 -1
  442. package/dist/utils/react/useMergeStyles.js +1 -1
  443. package/dist/utils/react/usePopoverSync.js +1 -1
  444. package/dist/utils/react/useQaProps.js +1 -1
  445. package/dist/utils/react/useViewportSize.js +1 -1
  446. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  447. package/dist/utils/selection.js +1 -1
  448. package/dist/utils/styles.js +1 -1
  449. package/dist/utils/tree.js +1 -1
  450. package/dist/utils/warnings.js +1 -1
  451. package/dist/version.js +2 -2
  452. package/docs/ComplexLayout.md +2 -2
  453. package/docs/components/CollectionItem.md +1 -1
  454. package/docs/components/actions/Banner.md +1 -1
  455. package/docs/components/actions/Button.md +3 -5
  456. package/docs/components/actions/ButtonGroup.md +1 -1
  457. package/docs/components/actions/ButtonSplit.md +1 -2
  458. package/docs/components/actions/ItemAction.md +5 -5
  459. package/docs/components/actions/ItemButton.md +4 -6
  460. package/docs/components/content/Item.md +9 -10
  461. package/docs/components/content/ItemBadge.md +4 -4
  462. package/docs/components/content/ItemCard.md +1 -1
  463. package/docs/components/content/Layout.md +2 -2
  464. package/docs/components/content/Tag.md +1 -1
  465. package/docs/components/fields/FilterListBox.md +1 -1
  466. package/docs/components/fields/FilterPicker.md +3 -5
  467. package/docs/components/fields/ListBox.md +1 -1
  468. package/docs/components/fields/Picker.md +3 -5
  469. package/docs/components/fields/RadioGroup.md +7 -9
  470. package/docs/components/fields/Select.md +2 -4
  471. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/providers/navigationAdapter.default.ts
3
3
  /**
4
4
  * Converts a Path object to a string URL
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/tokens/base.ts
3
3
  /**
4
4
  * Base design system tokens.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { PALETTE_TOKENS } from "./palette.js";
3
3
 
4
4
  //#region src/tokens/colors.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { BASE_TOKENS } from "./base.js";
3
3
  import { COLOR_TOKENS } from "./colors.js";
4
4
  import { LAYOUT_TOKENS } from "./layout.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/tokens/layout.ts
3
3
  /**
4
4
  * Layout-related tokens for common UI dimensions.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { glaze } from "@tenphi/glaze";
3
3
 
4
4
  //#region src/tokens/palette.ts
@@ -102,8 +102,7 @@ defaultTheme.colors({
102
102
  border: {
103
103
  base: "surface",
104
104
  lightness: ["-10", "-20"],
105
- saturation: .175,
106
- inherit: false
105
+ saturation: .175
107
106
  },
108
107
  placeholder: {
109
108
  base: "surface",
@@ -155,19 +154,19 @@ defaultTheme.colors({
155
154
  "accent-surface-2": {
156
155
  base: "accent-surface-text",
157
156
  lightness: "-1",
158
- contrast: [4.8, 7.5],
157
+ contrast: [5, 8],
159
158
  mode: "fixed"
160
159
  },
161
160
  "accent-surface-3": {
162
161
  base: "accent-surface-text",
163
162
  lightness: "-1",
164
- contrast: [5.2, 8],
163
+ contrast: [5.5, 9],
165
164
  mode: "fixed"
166
165
  },
167
166
  "accent-surface-hover": {
168
167
  base: "accent-surface-text",
169
168
  lightness: "-1",
170
- contrast: [6, 8.5],
169
+ contrast: [6, 10],
171
170
  mode: "fixed"
172
171
  },
173
172
  "accent-text": {
@@ -305,11 +304,26 @@ defaultTheme.colors({
305
304
  inherit: false
306
305
  }
307
306
  });
308
- /** Override `surface` per colored theme so the banner bg is visibly tinted. */
309
- const TINTED_SURFACE_OVERRIDE = { surface: {
310
- lightness: 96,
311
- saturation: .8
312
- } };
307
+ /**
308
+ * Per-colored-theme overrides on top of `defaultTheme`:
309
+ * - `surface` — bumped saturation so the banner bg is visibly tinted.
310
+ * - `border` — bumped saturation so OUTLINE-variant borders pick up the
311
+ * theme hue (used by `#<theme>-border` in `item-themes.ts`). Mirrors the
312
+ * default-theme `border` shape (`base: 'surface'`, lightness window) but
313
+ * with higher saturation. Glaze's `extend({ colors })` redefines each
314
+ * listed color from scratch, so we restate the full definition here.
315
+ */
316
+ const TINTED_SURFACE_OVERRIDE = {
317
+ surface: {
318
+ lightness: 96,
319
+ saturation: .8
320
+ },
321
+ border: {
322
+ base: "surface",
323
+ lightness: ["-10", "-20"],
324
+ saturation: .5
325
+ }
326
+ };
313
327
  const primaryTheme = defaultTheme.extend({ colors: TINTED_SURFACE_OVERRIDE });
314
328
  const successTheme = defaultTheme.extend({
315
329
  hue: SUCCESS_HUE,
@@ -338,11 +352,15 @@ const noteTheme = defaultTheme.extend({
338
352
  *
339
353
  * Token rundown:
340
354
  * - `surface` — dark L≈12 backdrop (same value as `#surface-inverse`).
341
- * - `accent-fill` / `accent-fill-hover` brand-purple PRIMARY fill +
342
- * darker hover shade. Same anchor/contrast as `#primary-accent-surface*`
343
- * so values match today's `#primary` / `#primary-hover`.
344
- * - `accent-fill-text` fixed white (= built-in `#white`), exposed for
345
- * explicit references.
355
+ * - `accent-surface` / `accent-surface-2` / `accent-surface-3`
356
+ * brand-purple PRIMARY fill ramp (default hover → pressed). Mirrors
357
+ * the `#primary-accent-surface` / `-2` / `-3` ramp on the colored
358
+ * themes so `SPECIAL_PRIMARY_STYLES.fill` can use the same shape.
359
+ * - `accent-surface-hover` — legacy alias kept around for the
360
+ * `#special-hover` color shortcut in `src/tokens/colors.ts`. Item
361
+ * themes themselves no longer reference it.
362
+ * - `accent-surface-text` — fixed white (= built-in `#white`), exposed
363
+ * for explicit references.
346
364
  * - `accent-text` — dark-purple foreground readable on white. Used as
347
365
  * CLEAR-variant text on the always-white pill, and as the
348
366
  * pressed/focused border on the brand-purple primary fill. Matches the
@@ -358,24 +376,36 @@ specialTheme.colors({
358
376
  saturation: .475,
359
377
  mode: "fixed"
360
378
  },
361
- "accent-fill-text": {
379
+ "accent-surface-text": {
362
380
  lightness: 100,
363
381
  mode: "fixed"
364
382
  },
365
- "accent-fill": {
366
- base: "accent-fill-text",
383
+ "accent-surface": {
384
+ base: "accent-surface-text",
367
385
  lightness: "-1",
368
386
  contrast: [4.5, 7],
369
387
  mode: "fixed"
370
388
  },
371
- "accent-fill-hover": {
372
- base: "accent-fill-text",
389
+ "accent-surface-2": {
390
+ base: "accent-surface-text",
391
+ lightness: "-1",
392
+ contrast: [5, 8],
393
+ mode: "fixed"
394
+ },
395
+ "accent-surface-3": {
396
+ base: "accent-surface-text",
397
+ lightness: "-1",
398
+ contrast: [5.5, 9],
399
+ mode: "fixed"
400
+ },
401
+ "accent-surface-hover": {
402
+ base: "accent-surface-text",
373
403
  lightness: "-1",
374
404
  contrast: [6, 8.5],
375
405
  mode: "fixed"
376
406
  },
377
407
  "accent-text": {
378
- base: "accent-fill-text",
408
+ base: "accent-surface-text",
379
409
  lightness: "-1",
380
410
  contrast: [6, 8.5],
381
411
  mode: "fixed"
@@ -1 +1 @@
1
- {"version":3,"file":"palette.js","names":[],"sources":["../../src/tokens/palette.ts"],"sourcesContent":["import { glaze } from '@tenphi/glaze';\n\nimport type { ColorMap } from '@tenphi/glaze';\nimport type { Styles } from '@tenphi/tasty';\n\n/**\n * Glaze-generated color palette for the Cube UI Kit.\n *\n * Produces light, dark, and high-contrast color variants from a single\n * source of truth. Every color token is emitted as a tasty state map:\n *\n * '#surface': { '': 'okhsl(...)', '@dark': 'okhsl(...)', '@hc': 'okhsl(...)' }\n *\n * The `@dark` and `@hc` state aliases are wired up globally in\n * `src/components/Root.tsx` (see `setGlobalPredefinedStates`).\n */\n\n// ============================================================================\n// Hue / saturation seeds\n// ============================================================================\n\nconst PURPLE_HUE = 280.3;\nconst SUCCESS_HUE = 156.9;\nconst DANGER_HUE = 23.1;\nconst WARNING_HUE = 84.3;\nconst NOTE_HUE = 302.3;\n\n/** Seed saturation; per-color saturation factors below are 0–1 of this seed. */\nconst SEED_SATURATION = 80;\n\n// ============================================================================\n// Global Glaze configuration\n// ============================================================================\n\nglaze.configure({\n states: {\n dark: '@dark',\n highContrast: '@hc',\n },\n modes: {\n dark: true,\n highContrast: true,\n },\n});\n\n// ============================================================================\n// Default theme (neutral, primary in palette → exported unprefixed)\n// ============================================================================\n\nconst defaultTheme = glaze(PURPLE_HUE, SEED_SATURATION);\n\ndefaultTheme.colors({\n // ---- Surfaces (neutral, very low saturation) ----\n surface: { lightness: 100, saturation: 0.11 },\n 'surface-2': {\n base: 'surface',\n lightness: '-2',\n saturation: 0.15,\n inherit: false,\n },\n 'surface-3': {\n base: 'surface',\n lightness: '-4',\n saturation: 0.19,\n inherit: false,\n },\n 'surface-4': {\n base: 'surface',\n lightness: '-6',\n saturation: 0.2,\n inherit: false,\n },\n\n // ---- Text on surfaces ----\n // The darkest text token uses an *absolute* lightness anchored at the very\n // bottom of Glaze's lightness window (default `[10, 100]` for light /\n // `[15, 95]` for dark). A contrast-driven `surface-text` would top out near\n // L≈21 in light mode (because the solver only needs to *meet* the contrast\n // floor, then stops), leaving it noticeably softer than the legacy `#dark`\n // (OKHSL L=12). Setting `lightness: 2` (mode: 'auto', default) pins the\n // light-mode resolved value to L≈11.8 — pixel-equivalent to the legacy\n // `#dark` — and inverts in dark mode to L≈94 (cr≈13.7 vs the dark surface).\n // High-contrast pushes it all the way to the absolute extremes (L=2 light /\n // L=99 dark, cr≈20.8 / 20.5), unbounded by the normal lightness window.\n //\n // The softer variants below keep `lightness: '-1'` as a directional hint and\n // a numeric `contrast` ratio. Values are tuned so light-mode lightness lands\n // close to the legacy palette (`#dark-02` L=31, `#dark-03` L=49), so the\n // visual look in light mode is preserved while dark mode gets the proper\n // inverted ramp via the contrast solver.\n 'surface-text': {\n base: 'surface',\n lightness: 2,\n saturation: 0.475,\n },\n 'surface-text-soft': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.375,\n contrast: [9, 11],\n inherit: false,\n },\n 'surface-text-soft-2': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.24,\n contrast: [4.5, 5.5],\n inherit: false,\n },\n 'surface-2-text': {\n base: 'surface-2',\n lightness: 2,\n saturation: 0.475,\n inherit: false,\n },\n 'surface-2-text-soft': {\n base: 'surface-2',\n lightness: '-1',\n saturation: 0.375,\n contrast: [9, 11],\n inherit: false,\n },\n 'surface-3-text': {\n base: 'surface-3',\n lightness: 2,\n saturation: 0.475,\n inherit: false,\n },\n 'surface-3-text-soft': {\n base: 'surface-3',\n lightness: '-1',\n saturation: 0.375,\n contrast: [9, 11],\n inherit: false,\n },\n\n // ---- Other neutral UI primitives (default-only) ----\n border: {\n base: 'surface',\n lightness: ['-10', '-20'],\n saturation: 0.175,\n inherit: false,\n },\n placeholder: {\n base: 'surface',\n lightness: 67,\n saturation: 0.175,\n inherit: false,\n },\n focus: {\n base: 'surface',\n lightness: 71,\n saturation: 0.8625,\n inherit: false,\n },\n disabled: {\n lightness: 80.8,\n saturation: 0.4,\n inherit: false,\n },\n // Disabled fill chip + text — both adaptive (mode 'auto') and\n // *contrast-driven* against `surface` so the disabled state has the same\n // perceived intensity in light and dark schemes.\n //\n // The previous design relied on `#dark.04` (alpha tint) for the chip and\n // `#dark-04` (= `#placeholder`) for text. Because `#dark` is `#surface-text`\n // (anchored to absolute L=2 → flips to L=94 in dark), the resulting\n // composite was much more contrasting in dark mode (chip cr=1.04 → 1.51,\n // text cr=2.21 → 2.75 vs the chip), and combined with `color: '#white'` on\n // PRIMARY-type buttons text-on-chip jumped from cr=1.6 (washed) to cr=6.5\n // (fully readable) — the dark disabled state stopped looking disabled.\n //\n // With these contrast-driven tokens both schemes resolve to the same\n // ratios (chip ~1.4, text ~2.0 vs surface, text-on-chip ~1.4) so the\n // disabled appearance is identical in light, dark, and high-contrast.\n //\n // These two tokens are NEUTRAL — the chip has very low saturation and is\n // used by non-PRIMARY-style disabled states (secondary / outline / neutral\n // / clear / link / item). PRIMARY-style buttons (solid brand fill, white\n // label) use `accent-disabled-surface` + `accent-disabled-surface-text`\n // instead so the disabled chip stays brand-tinted per theme. Both tokens\n // therefore stay default-only (`inherit: false`) — the colored themes get\n // their own brand-tinted disabled chip via the inherited accent variants.\n 'disabled-surface': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.2,\n contrast: [1.1, 1.2],\n inherit: false,\n },\n 'disabled-surface-text': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.3,\n contrast: [2, 2.5],\n inherit: false,\n },\n\n // Fixed-mode \"always dark\" surface for elements that intentionally stay\n // inverted regardless of scheme (tooltips, code blocks, popovers with their\n // own dark theme, etc.). `mode: 'fixed'` bypasses the dark-scheme inversion\n // so the color reads as a dark surface in light, dark, and high-contrast.\n // Pair with `#white` (built-in) for foreground text.\n 'surface-inverse': {\n lightness: 12,\n saturation: 0.475,\n mode: 'fixed',\n inherit: false,\n },\n\n // ---- Accent system (theme-aware, inherited by colored themes) ----\n // Everything here is anchored to a fixed white \"accent-surface-text\" via\n // `mode: 'fixed'` + small *relative* lightness offsets, so accent colors\n // stay visually consistent across light/dark/high-contrast schemes (the\n // brand color does not flip). Contrast targets are explicit numeric ratios\n // — using 'AA'/'AAA' here would let the solver push the color far away\n // from its anchor in dark schemes, breaking the visual relationship\n // between `accent-surface` and `accent-text` (e.g. solid button bg vs.\n // its hover bg). All accent variants therefore share the same shape.\n 'accent-surface-text': { lightness: 100, mode: 'fixed' },\n 'accent-surface': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [4.5, 7],\n mode: 'fixed',\n },\n 'accent-surface-2': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [4.8, 7.5],\n mode: 'fixed',\n },\n 'accent-surface-3': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [5.2, 8],\n mode: 'fixed',\n },\n // Hover variant of `accent-surface` — a *fixed*-mode darker shade used as\n // the hover fill for solid PRIMARY-type buttons. Anchored to the same\n // accent-surface-text so it stays in the same hue family. Numeric contrast\n // is tuned so the hover shade lands near today's light-mode \"darker\n // purple\" (≈L=44 light / ≈L=40 dark), giving a visible darkening in BOTH\n // schemes (~7–9 OKHSL lightness points below `accent-surface`). Using a\n // dedicated fixed token avoids the trap of reusing `accent-text` (which\n // is `mode: 'auto'` and inverts direction in dark mode).\n 'accent-surface-hover': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [6, 8.5],\n mode: 'fixed',\n },\n // Saturated foreground variants. Anchored to `surface` (NOT `accent-surface`)\n // with `mode: 'auto'` so they adapt with the scheme: in dark mode the solver\n // pushes them lighter to stay readable on the dark surface. Anchoring to the\n // brand fill instead would only enforce contrast against that fill — leaving\n // the dark-mode color washed out against the actual surface they sit on\n // (e.g. SECONDARY button labels). The numeric `contrast` value is the\n // achieved-light-mode ratio under the previous chain, so the visual\n // appearance in light mode is preserved while dark mode is brought up to\n // the same perceived contrast.\n 'accent-text': {\n base: 'surface',\n lightness: '-1',\n saturation: 1,\n contrast: [6.4, 10],\n },\n // Softer adaptive companion to `accent-text` for \"secondary\" foregrounds\n // (LINK base color, subdued labels, etc.). Same anchor + saturation as\n // `accent-text` but a relaxed AA-only contrast floor (4.5/7) so it sits\n // visibly less prominent than the main brand text. Critically, it stays\n // `mode: 'auto'` (default) — unlike the fixed `accent-surface` brand color,\n // which would collapse to cr≈3 against the dark surface and break AA. The\n // adaptive lightness keeps cr≥4.5 in BOTH light and dark schemes.\n 'accent-text-soft': {\n base: 'surface',\n lightness: '-1',\n saturation: 1,\n contrast: [4.5, 7],\n },\n 'accent-icon': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.9375,\n contrast: [3.2, 5],\n },\n\n // Brand-tinted disabled chip + label for PRIMARY-style buttons (solid brand\n // fill, white text). Mirrors the shape of the neutral `disabled-surface` /\n // `disabled-surface-text` pair (`mode: 'auto'`, contrast-driven against\n // `surface`) so the disabled state is scheme-symmetric — chip cr ≈ 1.4 vs\n // surface, label cr ≈ 2.8–3.2 vs surface (≈ 2.1 text-on-chip) in BOTH\n // light and dark. Saturation is bumped up so the chip reads as a *muted\n // brand* color rather than a fully neutral grey, preserving the brand\n // identity even in the disabled state. Inherited per theme, so each colored\n // theme automatically emits `<theme>-accent-disabled-surface` and\n // `<theme>-accent-disabled-surface-text` (e.g. `#danger-accent-disabled-surface`).\n 'accent-disabled-surface': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.5,\n contrast: [1.4, 1.5],\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n lightness: '+1',\n saturation: 0.4,\n contrast: 1.51,\n mode: 'fixed',\n },\n\n // ---- Code syntax highlighting (PrismCode) ----\n // A small palette of *adaptive* colored tokens for syntax highlighting.\n // Each token: `mode: 'auto'` (default) + `base: 'surface'` + a numeric\n // `contrast` floor of 4.5 (= WCAG AA) so every token reads against `#surface`\n // in light, dark, and high-contrast schemes alike. Hues mirror the\n // long-standing PrismCode reference (pink keywords / pink functions /\n // orange strings / green numbers / gray comments). `code-attribute` keeps\n // a cyan hue for HTML attribute names / CSS properties / selectors — not\n // exercised in the SQL reference but useful in other languages. Diff\n // insertion / deletion re-use the existing `success-*` / `danger-*` ramps.\n 'code-comment': {\n base: 'surface',\n hue: 280,\n saturation: 0.1,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-punctuation': {\n base: 'surface',\n hue: 348,\n saturation: 0.4,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-keyword': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n lightness: '-1',\n contrast: [5, 7.5],\n inherit: false,\n },\n 'code-string': {\n base: 'surface',\n hue: PURPLE_HUE,\n saturation: 1,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-number': {\n base: 'surface',\n hue: 156,\n saturation: 0.9,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-function': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n lightness: '-1',\n contrast: [5, 7.5],\n inherit: false,\n },\n 'code-attribute': {\n base: 'surface',\n hue: 200,\n saturation: 1,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n\n // ---- Loading-animation cube faces ----\n 'loading-face-1': {\n base: 'surface',\n lightness: 98,\n saturation: 0.3,\n contrast: [1.04, 1.5],\n inherit: false,\n },\n 'loading-face-2': {\n base: 'surface',\n lightness: 91,\n saturation: 0.62,\n contrast: [1.24, 2.5],\n inherit: false,\n },\n 'loading-face-3': {\n base: 'surface',\n lightness: 79,\n saturation: 0.66,\n contrast: [1.75, 4],\n inherit: false,\n },\n\n // ---- Shadows (default-only) ----\n 'shadow-sm': {\n type: 'shadow',\n bg: 'surface',\n fg: 'surface-text',\n intensity: 5,\n inherit: false,\n },\n 'shadow-md': {\n type: 'shadow',\n bg: 'surface',\n fg: 'surface-text',\n intensity: 10,\n inherit: false,\n },\n 'shadow-lg': {\n type: 'shadow',\n bg: 'surface',\n fg: 'surface-text',\n intensity: 15,\n inherit: false,\n },\n\n // Backdrop overlay (translucent)\n overlay: { lightness: 10, opacity: 0.5, inherit: false },\n});\n\n// ============================================================================\n// Colored themes\n// ============================================================================\n\n/** Override `surface` per colored theme so the banner bg is visibly tinted. */\nconst TINTED_SURFACE_OVERRIDE: ColorMap = {\n surface: { lightness: 96, saturation: 0.8 },\n};\n\nconst primaryTheme = defaultTheme.extend({\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst successTheme = defaultTheme.extend({\n hue: SUCCESS_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst dangerTheme = defaultTheme.extend({\n hue: DANGER_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst warningTheme = defaultTheme.extend({\n hue: WARNING_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst noteTheme = defaultTheme.extend({\n hue: NOTE_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\n\n// ============================================================================\n// Special theme (fixed-mode, NOT inherited from defaultTheme)\n// ============================================================================\n\n/**\n * Standalone theme for `special`-variant components (hero CTAs, banners, etc.)\n * that intentionally sit on a dark surface regardless of the active scheme.\n *\n * Every token here is `mode: 'fixed'` so the resolved value is identical in\n * light, dark, and high-contrast. The shape is purpose-built (not a full\n * mirror of `defaultTheme`) — only what `SPECIAL_*_STYLES` in\n * `src/data/item-themes.ts` consumes is emitted.\n *\n * Token rundown:\n * - `surface` — dark L≈12 backdrop (same value as `#surface-inverse`).\n * - `accent-fill` / `accent-fill-hover` — brand-purple PRIMARY fill +\n * darker hover shade. Same anchor/contrast as `#primary-accent-surface*`\n * so values match today's `#primary` / `#primary-hover`.\n * - `accent-fill-text` — fixed white (= built-in `#white`), exposed for\n * explicit references.\n * - `accent-text` — dark-purple foreground readable on white. Used as\n * CLEAR-variant text on the always-white pill, and as the\n * pressed/focused border on the brand-purple primary fill. Matches the\n * legacy `#fixed-primary-text` alias (= `#primary-accent-surface-hover`).\n * - `accent-disabled-surface` / `accent-disabled-surface-text` —\n * brand-tinted disabled chip + label, contrast-driven against the fixed\n * dark `surface` so the disabled state is scheme-symmetric.\n */\nconst specialTheme = glaze(PURPLE_HUE, SEED_SATURATION);\n\nspecialTheme.colors({\n surface: { lightness: 12, saturation: 0.475, mode: 'fixed' },\n\n 'accent-fill-text': { lightness: 100, mode: 'fixed' },\n 'accent-fill': {\n base: 'accent-fill-text',\n lightness: '-1',\n contrast: [4.5, 7],\n mode: 'fixed',\n },\n 'accent-fill-hover': {\n base: 'accent-fill-text',\n lightness: '-1',\n contrast: [6, 8.5],\n mode: 'fixed',\n },\n 'accent-text': {\n base: 'accent-fill-text',\n lightness: '-1',\n contrast: [6, 8.5],\n mode: 'fixed',\n },\n\n 'accent-disabled-surface': {\n base: 'surface',\n lightness: '+1',\n saturation: 0.5,\n contrast: [1.4, 1.5],\n mode: 'fixed',\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n lightness: '+1',\n saturation: 0.4,\n contrast: 1.51,\n mode: 'fixed',\n },\n});\n\n// ============================================================================\n// Palette composition\n// ============================================================================\n\n/**\n * Theme map for the palette.\n *\n * `purple` is the legacy alias for `primary` and resolves to identical tokens\n * (same theme instance, different prefix → no token-value collision).\n *\n * `default` is emitted with an empty prefix (custom map below), so its tokens\n * appear unprefixed (`#surface`, `#border`, …). All other themes are prefixed\n * with `<themeName>-`.\n */\nconst palette = glaze.palette({\n default: defaultTheme,\n primary: primaryTheme,\n purple: primaryTheme,\n success: successTheme,\n danger: dangerTheme,\n warning: warningTheme,\n note: noteTheme,\n special: specialTheme,\n});\n\n// ============================================================================\n// Tasty-formatted token export\n// ============================================================================\n\n/**\n * All Glaze-generated color tokens as a tasty `Styles` map.\n *\n * Keys use `#name` syntax; values are state maps:\n * '#surface': { '': 'okhsl(...)', '@dark': 'okhsl(...)', '@hc': 'okhsl(...)' }\n *\n * Spread into `useGlobalStyles('body', tokens)` (already wired through\n * `src/components/GlobalStyles.tsx`).\n */\nexport const PALETTE_TOKENS: Styles = palette.tasty({\n prefix: {\n default: '',\n primary: 'primary-',\n purple: 'purple-',\n success: 'success-',\n danger: 'danger-',\n warning: 'warning-',\n note: 'note-',\n special: 'special-',\n },\n}) as Styles;\n\n/** Re-exported for advanced consumers / tests. */\nexport {\n defaultTheme,\n primaryTheme,\n successTheme,\n dangerTheme,\n warningTheme,\n noteTheme,\n specialTheme,\n palette,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"palette.js","names":[],"sources":["../../src/tokens/palette.ts"],"sourcesContent":["import { glaze } from '@tenphi/glaze';\n\nimport type { ColorMap } from '@tenphi/glaze';\nimport type { Styles } from '@tenphi/tasty';\n\n/**\n * Glaze-generated color palette for the Cube UI Kit.\n *\n * Produces light, dark, and high-contrast color variants from a single\n * source of truth. Every color token is emitted as a tasty state map:\n *\n * '#surface': { '': 'okhsl(...)', '@dark': 'okhsl(...)', '@hc': 'okhsl(...)' }\n *\n * The `@dark` and `@hc` state aliases are wired up globally in\n * `src/components/Root.tsx` (see `setGlobalPredefinedStates`).\n */\n\n// ============================================================================\n// Hue / saturation seeds\n// ============================================================================\n\nconst PURPLE_HUE = 280.3;\nconst SUCCESS_HUE = 156.9;\nconst DANGER_HUE = 23.1;\nconst WARNING_HUE = 84.3;\nconst NOTE_HUE = 302.3;\n\n/** Seed saturation; per-color saturation factors below are 0–1 of this seed. */\nconst SEED_SATURATION = 80;\n\n// ============================================================================\n// Global Glaze configuration\n// ============================================================================\n\nglaze.configure({\n states: {\n dark: '@dark',\n highContrast: '@hc',\n },\n modes: {\n dark: true,\n highContrast: true,\n },\n});\n\n// ============================================================================\n// Default theme (neutral, primary in palette → exported unprefixed)\n// ============================================================================\n\nconst defaultTheme = glaze(PURPLE_HUE, SEED_SATURATION);\n\ndefaultTheme.colors({\n // ---- Surfaces (neutral, very low saturation) ----\n surface: { lightness: 100, saturation: 0.11 },\n 'surface-2': {\n base: 'surface',\n lightness: '-2',\n saturation: 0.15,\n inherit: false,\n },\n 'surface-3': {\n base: 'surface',\n lightness: '-4',\n saturation: 0.19,\n inherit: false,\n },\n 'surface-4': {\n base: 'surface',\n lightness: '-6',\n saturation: 0.2,\n inherit: false,\n },\n\n // ---- Text on surfaces ----\n // The darkest text token uses an *absolute* lightness anchored at the very\n // bottom of Glaze's lightness window (default `[10, 100]` for light /\n // `[15, 95]` for dark). A contrast-driven `surface-text` would top out near\n // L≈21 in light mode (because the solver only needs to *meet* the contrast\n // floor, then stops), leaving it noticeably softer than the legacy `#dark`\n // (OKHSL L=12). Setting `lightness: 2` (mode: 'auto', default) pins the\n // light-mode resolved value to L≈11.8 — pixel-equivalent to the legacy\n // `#dark` — and inverts in dark mode to L≈94 (cr≈13.7 vs the dark surface).\n // High-contrast pushes it all the way to the absolute extremes (L=2 light /\n // L=99 dark, cr≈20.8 / 20.5), unbounded by the normal lightness window.\n //\n // The softer variants below keep `lightness: '-1'` as a directional hint and\n // a numeric `contrast` ratio. Values are tuned so light-mode lightness lands\n // close to the legacy palette (`#dark-02` L=31, `#dark-03` L=49), so the\n // visual look in light mode is preserved while dark mode gets the proper\n // inverted ramp via the contrast solver.\n 'surface-text': {\n base: 'surface',\n lightness: 2,\n saturation: 0.475,\n },\n 'surface-text-soft': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.375,\n contrast: [9, 11],\n inherit: false,\n },\n 'surface-text-soft-2': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.24,\n contrast: [4.5, 5.5],\n inherit: false,\n },\n 'surface-2-text': {\n base: 'surface-2',\n lightness: 2,\n saturation: 0.475,\n inherit: false,\n },\n 'surface-2-text-soft': {\n base: 'surface-2',\n lightness: '-1',\n saturation: 0.375,\n contrast: [9, 11],\n inherit: false,\n },\n 'surface-3-text': {\n base: 'surface-3',\n lightness: 2,\n saturation: 0.475,\n inherit: false,\n },\n 'surface-3-text-soft': {\n base: 'surface-3',\n lightness: '-1',\n saturation: 0.375,\n contrast: [9, 11],\n inherit: false,\n },\n\n // ---- Other neutral UI primitives (default-only) ----\n border: {\n base: 'surface',\n lightness: ['-10', '-20'],\n saturation: 0.175,\n },\n placeholder: {\n base: 'surface',\n lightness: 67,\n saturation: 0.175,\n inherit: false,\n },\n focus: {\n base: 'surface',\n lightness: 71,\n saturation: 0.8625,\n inherit: false,\n },\n disabled: {\n lightness: 80.8,\n saturation: 0.4,\n inherit: false,\n },\n // Disabled fill chip + text — both adaptive (mode 'auto') and\n // *contrast-driven* against `surface` so the disabled state has the same\n // perceived intensity in light and dark schemes.\n //\n // The previous design relied on `#dark.04` (alpha tint) for the chip and\n // `#dark-04` (= `#placeholder`) for text. Because `#dark` is `#surface-text`\n // (anchored to absolute L=2 → flips to L=94 in dark), the resulting\n // composite was much more contrasting in dark mode (chip cr=1.04 → 1.51,\n // text cr=2.21 → 2.75 vs the chip), and combined with `color: '#white'` on\n // PRIMARY-type buttons text-on-chip jumped from cr=1.6 (washed) to cr=6.5\n // (fully readable) — the dark disabled state stopped looking disabled.\n //\n // With these contrast-driven tokens both schemes resolve to the same\n // ratios (chip ~1.4, text ~2.0 vs surface, text-on-chip ~1.4) so the\n // disabled appearance is identical in light, dark, and high-contrast.\n //\n // These two tokens are NEUTRAL — the chip has very low saturation and is\n // used by non-PRIMARY-style disabled states (secondary / outline / neutral\n // / clear / link / item). PRIMARY-style buttons (solid brand fill, white\n // label) use `accent-disabled-surface` + `accent-disabled-surface-text`\n // instead so the disabled chip stays brand-tinted per theme. Both tokens\n // therefore stay default-only (`inherit: false`) — the colored themes get\n // their own brand-tinted disabled chip via the inherited accent variants.\n 'disabled-surface': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.2,\n contrast: [1.1, 1.2],\n inherit: false,\n },\n 'disabled-surface-text': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.3,\n contrast: [2, 2.5],\n inherit: false,\n },\n\n // Fixed-mode \"always dark\" surface for elements that intentionally stay\n // inverted regardless of scheme (tooltips, code blocks, popovers with their\n // own dark theme, etc.). `mode: 'fixed'` bypasses the dark-scheme inversion\n // so the color reads as a dark surface in light, dark, and high-contrast.\n // Pair with `#white` (built-in) for foreground text.\n 'surface-inverse': {\n lightness: 12,\n saturation: 0.475,\n mode: 'fixed',\n inherit: false,\n },\n\n // ---- Accent system (theme-aware, inherited by colored themes) ----\n // Everything here is anchored to a fixed white \"accent-surface-text\" via\n // `mode: 'fixed'` + small *relative* lightness offsets, so accent colors\n // stay visually consistent across light/dark/high-contrast schemes (the\n // brand color does not flip). Contrast targets are explicit numeric ratios\n // — using 'AA'/'AAA' here would let the solver push the color far away\n // from its anchor in dark schemes, breaking the visual relationship\n // between `accent-surface` and `accent-text` (e.g. solid button bg vs.\n // its hover bg). All accent variants therefore share the same shape.\n 'accent-surface-text': { lightness: 100, mode: 'fixed' },\n 'accent-surface': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [4.5, 7],\n mode: 'fixed',\n },\n 'accent-surface-2': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [5, 8],\n mode: 'fixed',\n },\n 'accent-surface-3': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [5.5, 9],\n mode: 'fixed',\n },\n // Hover variant of `accent-surface` — a *fixed*-mode darker shade used as\n // the hover fill for solid PRIMARY-type buttons. Anchored to the same\n // accent-surface-text so it stays in the same hue family. Numeric contrast\n // is tuned so the hover shade lands near today's light-mode \"darker\n // purple\" (≈L=44 light / ≈L=40 dark), giving a visible darkening in BOTH\n // schemes (~7–9 OKHSL lightness points below `accent-surface`). Using a\n // dedicated fixed token avoids the trap of reusing `accent-text` (which\n // is `mode: 'auto'` and inverts direction in dark mode).\n 'accent-surface-hover': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [6, 10],\n mode: 'fixed',\n },\n // Saturated foreground variants. Anchored to `surface` (NOT `accent-surface`)\n // with `mode: 'auto'` so they adapt with the scheme: in dark mode the solver\n // pushes them lighter to stay readable on the dark surface. Anchoring to the\n // brand fill instead would only enforce contrast against that fill — leaving\n // the dark-mode color washed out against the actual surface they sit on\n // (e.g. SECONDARY button labels). The numeric `contrast` value is the\n // achieved-light-mode ratio under the previous chain, so the visual\n // appearance in light mode is preserved while dark mode is brought up to\n // the same perceived contrast.\n 'accent-text': {\n base: 'surface',\n lightness: '-1',\n saturation: 1,\n contrast: [6.4, 10],\n },\n // Softer adaptive companion to `accent-text` for \"secondary\" foregrounds\n // (LINK base color, subdued labels, etc.). Same anchor + saturation as\n // `accent-text` but a relaxed AA-only contrast floor (4.5/7) so it sits\n // visibly less prominent than the main brand text. Critically, it stays\n // `mode: 'auto'` (default) — unlike the fixed `accent-surface` brand color,\n // which would collapse to cr≈3 against the dark surface and break AA. The\n // adaptive lightness keeps cr≥4.5 in BOTH light and dark schemes.\n 'accent-text-soft': {\n base: 'surface',\n lightness: '-1',\n saturation: 1,\n contrast: [4.5, 7],\n },\n 'accent-icon': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.9375,\n contrast: [3.2, 5],\n },\n\n // Brand-tinted disabled chip + label for PRIMARY-style buttons (solid brand\n // fill, white text). Mirrors the shape of the neutral `disabled-surface` /\n // `disabled-surface-text` pair (`mode: 'auto'`, contrast-driven against\n // `surface`) so the disabled state is scheme-symmetric — chip cr ≈ 1.4 vs\n // surface, label cr ≈ 2.8–3.2 vs surface (≈ 2.1 text-on-chip) in BOTH\n // light and dark. Saturation is bumped up so the chip reads as a *muted\n // brand* color rather than a fully neutral grey, preserving the brand\n // identity even in the disabled state. Inherited per theme, so each colored\n // theme automatically emits `<theme>-accent-disabled-surface` and\n // `<theme>-accent-disabled-surface-text` (e.g. `#danger-accent-disabled-surface`).\n 'accent-disabled-surface': {\n base: 'surface',\n lightness: '-1',\n saturation: 0.5,\n contrast: [1.4, 1.5],\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n lightness: '+1',\n saturation: 0.4,\n contrast: 1.51,\n mode: 'fixed',\n },\n\n // ---- Code syntax highlighting (PrismCode) ----\n // A small palette of *adaptive* colored tokens for syntax highlighting.\n // Each token: `mode: 'auto'` (default) + `base: 'surface'` + a numeric\n // `contrast` floor of 4.5 (= WCAG AA) so every token reads against `#surface`\n // in light, dark, and high-contrast schemes alike. Hues mirror the\n // long-standing PrismCode reference (pink keywords / pink functions /\n // orange strings / green numbers / gray comments). `code-attribute` keeps\n // a cyan hue for HTML attribute names / CSS properties / selectors — not\n // exercised in the SQL reference but useful in other languages. Diff\n // insertion / deletion re-use the existing `success-*` / `danger-*` ramps.\n 'code-comment': {\n base: 'surface',\n hue: 280,\n saturation: 0.1,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-punctuation': {\n base: 'surface',\n hue: 348,\n saturation: 0.4,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-keyword': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n lightness: '-1',\n contrast: [5, 7.5],\n inherit: false,\n },\n 'code-string': {\n base: 'surface',\n hue: PURPLE_HUE,\n saturation: 1,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-number': {\n base: 'surface',\n hue: 156,\n saturation: 0.9,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n 'code-function': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n lightness: '-1',\n contrast: [5, 7.5],\n inherit: false,\n },\n 'code-attribute': {\n base: 'surface',\n hue: 200,\n saturation: 1,\n lightness: '-1',\n contrast: [4.5, 7],\n inherit: false,\n },\n\n // ---- Loading-animation cube faces ----\n 'loading-face-1': {\n base: 'surface',\n lightness: 98,\n saturation: 0.3,\n contrast: [1.04, 1.5],\n inherit: false,\n },\n 'loading-face-2': {\n base: 'surface',\n lightness: 91,\n saturation: 0.62,\n contrast: [1.24, 2.5],\n inherit: false,\n },\n 'loading-face-3': {\n base: 'surface',\n lightness: 79,\n saturation: 0.66,\n contrast: [1.75, 4],\n inherit: false,\n },\n\n // ---- Shadows (default-only) ----\n 'shadow-sm': {\n type: 'shadow',\n bg: 'surface',\n fg: 'surface-text',\n intensity: 5,\n inherit: false,\n },\n 'shadow-md': {\n type: 'shadow',\n bg: 'surface',\n fg: 'surface-text',\n intensity: 10,\n inherit: false,\n },\n 'shadow-lg': {\n type: 'shadow',\n bg: 'surface',\n fg: 'surface-text',\n intensity: 15,\n inherit: false,\n },\n\n // Backdrop overlay (translucent)\n overlay: { lightness: 10, opacity: 0.5, inherit: false },\n});\n\n// ============================================================================\n// Colored themes\n// ============================================================================\n\n/**\n * Per-colored-theme overrides on top of `defaultTheme`:\n * - `surface` — bumped saturation so the banner bg is visibly tinted.\n * - `border` — bumped saturation so OUTLINE-variant borders pick up the\n * theme hue (used by `#<theme>-border` in `item-themes.ts`). Mirrors the\n * default-theme `border` shape (`base: 'surface'`, lightness window) but\n * with higher saturation. Glaze's `extend({ colors })` redefines each\n * listed color from scratch, so we restate the full definition here.\n */\nconst TINTED_SURFACE_OVERRIDE: ColorMap = {\n surface: { lightness: 96, saturation: 0.8 },\n border: {\n base: 'surface',\n lightness: ['-10', '-20'],\n saturation: 0.5,\n },\n};\n\nconst primaryTheme = defaultTheme.extend({\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst successTheme = defaultTheme.extend({\n hue: SUCCESS_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst dangerTheme = defaultTheme.extend({\n hue: DANGER_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst warningTheme = defaultTheme.extend({\n hue: WARNING_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\nconst noteTheme = defaultTheme.extend({\n hue: NOTE_HUE,\n colors: TINTED_SURFACE_OVERRIDE,\n});\n\n// ============================================================================\n// Special theme (fixed-mode, NOT inherited from defaultTheme)\n// ============================================================================\n\n/**\n * Standalone theme for `special`-variant components (hero CTAs, banners, etc.)\n * that intentionally sit on a dark surface regardless of the active scheme.\n *\n * Every token here is `mode: 'fixed'` so the resolved value is identical in\n * light, dark, and high-contrast. The shape is purpose-built (not a full\n * mirror of `defaultTheme`) — only what `SPECIAL_*_STYLES` in\n * `src/data/item-themes.ts` consumes is emitted.\n *\n * Token rundown:\n * - `surface` — dark L≈12 backdrop (same value as `#surface-inverse`).\n * - `accent-surface` / `accent-surface-2` / `accent-surface-3` —\n * brand-purple PRIMARY fill ramp (default → hover → pressed). Mirrors\n * the `#primary-accent-surface` / `-2` / `-3` ramp on the colored\n * themes so `SPECIAL_PRIMARY_STYLES.fill` can use the same shape.\n * - `accent-surface-hover` — legacy alias kept around for the\n * `#special-hover` color shortcut in `src/tokens/colors.ts`. Item\n * themes themselves no longer reference it.\n * - `accent-surface-text` — fixed white (= built-in `#white`), exposed\n * for explicit references.\n * - `accent-text` — dark-purple foreground readable on white. Used as\n * CLEAR-variant text on the always-white pill, and as the\n * pressed/focused border on the brand-purple primary fill. Matches the\n * legacy `#fixed-primary-text` alias (= `#primary-accent-surface-hover`).\n * - `accent-disabled-surface` / `accent-disabled-surface-text` —\n * brand-tinted disabled chip + label, contrast-driven against the fixed\n * dark `surface` so the disabled state is scheme-symmetric.\n */\nconst specialTheme = glaze(PURPLE_HUE, SEED_SATURATION);\n\nspecialTheme.colors({\n surface: { lightness: 12, saturation: 0.475, mode: 'fixed' },\n\n 'accent-surface-text': { lightness: 100, mode: 'fixed' },\n 'accent-surface': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [4.5, 7],\n mode: 'fixed',\n },\n 'accent-surface-2': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [5, 8],\n mode: 'fixed',\n },\n 'accent-surface-3': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [5.5, 9],\n mode: 'fixed',\n },\n 'accent-surface-hover': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [6, 8.5],\n mode: 'fixed',\n },\n 'accent-text': {\n base: 'accent-surface-text',\n lightness: '-1',\n contrast: [6, 8.5],\n mode: 'fixed',\n },\n\n 'accent-disabled-surface': {\n base: 'surface',\n lightness: '+1',\n saturation: 0.5,\n contrast: [1.4, 1.5],\n mode: 'fixed',\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n lightness: '+1',\n saturation: 0.4,\n contrast: 1.51,\n mode: 'fixed',\n },\n});\n\n// ============================================================================\n// Palette composition\n// ============================================================================\n\n/**\n * Theme map for the palette.\n *\n * `purple` is the legacy alias for `primary` and resolves to identical tokens\n * (same theme instance, different prefix → no token-value collision).\n *\n * `default` is emitted with an empty prefix (custom map below), so its tokens\n * appear unprefixed (`#surface`, `#border`, …). All other themes are prefixed\n * with `<themeName>-`.\n */\nconst palette = glaze.palette({\n default: defaultTheme,\n primary: primaryTheme,\n purple: primaryTheme,\n success: successTheme,\n danger: dangerTheme,\n warning: warningTheme,\n note: noteTheme,\n special: specialTheme,\n});\n\n// ============================================================================\n// Tasty-formatted token export\n// ============================================================================\n\n/**\n * All Glaze-generated color tokens as a tasty `Styles` map.\n *\n * Keys use `#name` syntax; values are state maps:\n * '#surface': { '': 'okhsl(...)', '@dark': 'okhsl(...)', '@hc': 'okhsl(...)' }\n *\n * Spread into `useGlobalStyles('body', tokens)` (already wired through\n * `src/components/GlobalStyles.tsx`).\n */\nexport const PALETTE_TOKENS: Styles = palette.tasty({\n prefix: {\n default: '',\n primary: 'primary-',\n purple: 'purple-',\n success: 'success-',\n danger: 'danger-',\n warning: 'warning-',\n note: 'note-',\n special: 'special-',\n },\n}) as Styles;\n\n/** Re-exported for advanced consumers / tests. */\nexport {\n defaultTheme,\n primaryTheme,\n successTheme,\n dangerTheme,\n warningTheme,\n noteTheme,\n specialTheme,\n palette,\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/tokens/shadows.ts
3
3
  /**
4
4
  * Shadow tokens using tasty shorthand syntax.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/tokens/sizes.ts
3
3
  /**
4
4
  * Component size values in pixels.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/tokens/spacing.ts
3
3
  /**
4
4
  * Spacing tokens using tasty multiplier syntax.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/tokens/typography.ts
3
3
  /**
4
4
  * Typography presets for headings, text, and special styles.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/ResizeSensor.ts
3
3
  /**
4
4
  * Iterate over each of the provided element(s).
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/is-dev-env.ts
3
3
  function isDevEnv() {
4
4
  if (typeof window !== "undefined" && window.localStorage) try {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/modules.ts
3
3
  function extractModule(promise) {
4
4
  return promise.then((module) => module.default || module);
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/promise.ts
3
3
  function timeout(ms = 30) {
4
4
  return new Promise((resolve) => {
package/dist/utils/raf.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/raf.ts
3
3
  /**
4
4
  * Chains N requestAnimationFrame calls and returns a cancel function.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/random.ts
3
3
  function random(min, max) {
4
4
  const realMin = min < max ? min : max;
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/range.ts
3
3
  function range(count) {
4
4
  return Array.from({ length: count }, (_, i) => i);
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useRef } from "react";
3
3
  import { Fragment as Fragment$1, jsx } from "react/jsx-runtime";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { mergeProps } from "./mergeProps.js";
3
3
  import { Children, cloneElement, createContext, useContext, useMemo } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/react/chain.ts
3
3
  /**
4
4
  * Calls all functions in the order they were chained with the same arguments.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/react/forwardRefWithGenerics.tsx
3
3
  /**
4
4
  * A helper for creating forwardRef components with generic types.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { chain } from "./chain.js";
3
3
  import { forwardRefWithGenerics } from "./forwardRefWithGenerics.js";
4
4
  import { isTextOnly } from "./isTextOnly.js";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useState } from "react";
3
3
  import { useFocus, useFocusVisible } from "react-aria";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { Children, isValidElement } from "react";
3
3
 
4
4
  //#region src/utils/react/isTextOnly.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/react/mapProps.ts
3
3
  /** Converts AriaButtonProps to CubeButtonProps */
4
4
  function ariaToCubeButtonProps(props) {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { chain } from "./chain.js";
3
3
  import { mergeIds } from "./useId.js";
4
4
  import { mergeStyles } from "@tenphi/tasty";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/react/nullableValue.ts
3
3
  function castNullableStringValue(props) {
4
4
  return castNullableField(props, ["value", "defaultValue"], "string", (v) => String(v));
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/react/resolveIcon.ts
3
3
  /**
4
4
  * Resolves a dynamic icon prop to its content and slot state.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { useSyncExternalStore } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useEffect, useRef } from "react";
3
3
 
4
4
  //#region src/utils/react/useCombinedRefs.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { createSharedStore } from "./sharedStore.js";
3
3
  import { useEffect } from "react";
4
4
  import { useFocusVisible } from "react-aria";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import React, { createContext, useCallback, useContext, useEffect, useRef } from "react";
3
3
 
4
4
  //#region src/utils/react/useEventBus.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useLayoutEffect as useLayoutEffect$1 } from "./useLayoutEffect.js";
3
3
  import { useEffect, useRef, useState } from "react";
4
4
  import { useSSRSafeId } from "@react-aria/ssr";
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useEffect, useState } from "react";
3
3
 
4
4
  //#region src/utils/react/useIsDarwin.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useIsDarwin } from "./useIsDarwin.js";
3
3
  import { useMemo } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import * as React$1 from "react";
3
3
 
4
4
  //#region src/utils/react/useLayoutEffect.tsx
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useEvent } from "../../_internal/hooks/use-event.js";
3
3
  import { useCallback, useSyncExternalStore } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { mergeStyles } from "@tenphi/tasty";
3
3
  import { useMemo } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useEventBus } from "./useEventBus.js";
3
3
  import { useEffect, useRef } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/react/useQaProps.ts
3
3
  /**
4
4
  * Processes QA props.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { useEffect, useState } from "react";
3
3
 
4
4
  //#region src/utils/react/useViewportSize.ts
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  import { isValidElement } from "react";
3
3
  import { isFragment } from "react-is";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/selection.ts
3
3
  /**
4
4
  * Deduplicate/toggle keys in a selection: if a key appears twice it is
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/styles.ts
3
3
  /**
4
4
  * Split properties into style and non-style properties.
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/tree.ts
3
3
  function toFlatTree(tree, includingFolders) {
4
4
  return tree.reduce((result, node) => {
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/utils/warnings.ts
3
3
  const SUGGESTED_PROP_MAP = {
4
4
  disabled: "isDisabled",
package/dist/version.js CHANGED
@@ -1,6 +1,6 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.138.6 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.139.0 | Cube Dev Team */
2
2
  //#region src/version.ts
3
- const VERSION = "0.138.6";
3
+ const VERSION = "0.139.0";
4
4
  const TASTY_VERSION = "2.6.2";
5
5
  if (typeof window !== "undefined") {
6
6
  const version = VERSION;