@cube-dev/ui-kit 0.0.0-canary-7c63f24 → 0.0.0-canary-a2deb22

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 (470) hide show
  1. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  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 +24 -3
  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/Button/Button.js +1 -1
  20. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  21. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  22. package/dist/components/actions/ButtonSplit/context.js +1 -1
  23. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  24. package/dist/components/actions/CommandMenu/styled.js +1 -1
  25. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  26. package/dist/components/actions/ItemActionContext.js +1 -1
  27. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  28. package/dist/components/actions/Link/Link.js +1 -1
  29. package/dist/components/actions/Menu/Menu.js +1 -1
  30. package/dist/components/actions/Menu/MenuItem.js +1 -1
  31. package/dist/components/actions/Menu/MenuSection.js +1 -1
  32. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  34. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  35. package/dist/components/actions/Menu/context.js +1 -1
  36. package/dist/components/actions/Menu/styled.js +1 -1
  37. package/dist/components/actions/index.js +1 -1
  38. package/dist/components/actions/use-action.js +1 -1
  39. package/dist/components/actions/use-action.js.map +1 -1
  40. package/dist/components/actions/use-anchored-menu.js +1 -1
  41. package/dist/components/actions/use-context-menu.js +1 -1
  42. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  43. package/dist/components/content/Alert/Alert.js +1 -1
  44. package/dist/components/content/Alert/use-alert.js +1 -1
  45. package/dist/components/content/Avatar/Avatar.js +1 -1
  46. package/dist/components/content/Badge/Badge.js +1 -1
  47. package/dist/components/content/Card/Card.js +1 -1
  48. package/dist/components/content/Content.js +1 -1
  49. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  50. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  51. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  52. package/dist/components/content/Divider.js +1 -1
  53. package/dist/components/content/Footer.js +1 -1
  54. package/dist/components/content/Header.js +1 -1
  55. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  56. package/dist/components/content/InlineInput/InlineInput.js +1 -1
  57. package/dist/components/content/Item/Item.js +1 -1
  58. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  59. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  60. package/dist/components/content/Layout/GridLayout.js +1 -1
  61. package/dist/components/content/Layout/Layout.js +1 -1
  62. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  63. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  64. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  65. package/dist/components/content/Layout/LayoutContent.js +1 -1
  66. package/dist/components/content/Layout/LayoutContext.js +1 -1
  67. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  68. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  69. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  70. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  71. package/dist/components/content/Layout/LayoutPane.js +1 -1
  72. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  73. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  74. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  75. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  76. package/dist/components/content/Layout/index.js +1 -1
  77. package/dist/components/content/Layout/utils.js +1 -1
  78. package/dist/components/content/Paragraph.js +1 -1
  79. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  80. package/dist/components/content/PrismCode/PrismCode.d.ts +1 -0
  81. package/dist/components/content/PrismCode/PrismCode.js +2 -1
  82. package/dist/components/content/PrismCode/PrismCode.js.map +1 -1
  83. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  84. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  85. package/dist/components/content/Result/Result.js +1 -1
  86. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  87. package/dist/components/content/Tag/Tag.js +1 -1
  88. package/dist/components/content/Text.d.ts +7 -7
  89. package/dist/components/content/Text.js +1 -1
  90. package/dist/components/content/TextItem/TextItem.js +1 -1
  91. package/dist/components/content/Title.js +1 -1
  92. package/dist/components/content/Tree/Tree.js +1 -1
  93. package/dist/components/content/Tree/TreeNode.js +1 -1
  94. package/dist/components/content/Tree/styled.js +1 -1
  95. package/dist/components/content/Tree/tree-index.js +1 -1
  96. package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
  97. package/dist/components/content/Tree/use-load-data.js +1 -1
  98. package/dist/components/content/highlightText.js +1 -1
  99. package/dist/components/content/use-auto-tooltip.js +1 -1
  100. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  101. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  102. package/dist/components/fields/Checkbox/context.js +1 -1
  103. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  104. package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
  105. package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
  106. package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
  107. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  108. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  109. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  110. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  111. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  112. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  113. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  114. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  115. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  116. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  117. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  118. package/dist/components/fields/DatePicker/props.js +1 -1
  119. package/dist/components/fields/DatePicker/utils.js +1 -1
  120. package/dist/components/fields/FileInput/FileInput.js +1 -1
  121. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  122. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  123. package/dist/components/fields/Input/Input.js +1 -1
  124. package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
  125. package/dist/components/fields/ListBox/ListBox.js +1 -1
  126. package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
  127. package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
  128. package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
  129. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  130. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  131. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  132. package/dist/components/fields/Picker/Picker.js +1 -1
  133. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  134. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  135. package/dist/components/fields/RadioGroup/context.js +1 -1
  136. package/dist/components/fields/SearchComboBox/SearchComboBox.js +1 -1
  137. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  138. package/dist/components/fields/Select/Select.js +1 -1
  139. package/dist/components/fields/Slider/Gradation.js +1 -1
  140. package/dist/components/fields/Slider/HueSlider.js +1 -1
  141. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  142. package/dist/components/fields/Slider/Slider.js +1 -1
  143. package/dist/components/fields/Slider/SliderBase.js +1 -1
  144. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  145. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  146. package/dist/components/fields/Slider/elements.js +1 -1
  147. package/dist/components/fields/Slider/index.js +1 -1
  148. package/dist/components/fields/Switch/Switch.js +1 -1
  149. package/dist/components/fields/TextArea/TextArea.js +1 -1
  150. package/dist/components/fields/TextInput/TextInput.js +1 -1
  151. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  152. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  153. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  154. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  155. package/dist/components/form/Form/Field.js +1 -1
  156. package/dist/components/form/Form/Form.js +1 -1
  157. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  158. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  159. package/dist/components/form/Form/SubmitError.js +1 -1
  160. package/dist/components/form/Form/index.js +1 -1
  161. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  162. package/dist/components/form/Form/use-field/use-field.js +1 -1
  163. package/dist/components/form/Form/use-form.js +1 -1
  164. package/dist/components/form/Form/validation.js +1 -1
  165. package/dist/components/form/Label.js +1 -1
  166. package/dist/components/form/wrapper.js +1 -1
  167. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  168. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  169. package/dist/components/layout/Board/Board.js +1 -1
  170. package/dist/components/layout/Board/BoardProvider.js +1 -1
  171. package/dist/components/layout/Board/BoardResponsive.js +1 -1
  172. package/dist/components/layout/Board/Widget.js +1 -1
  173. package/dist/components/layout/Board/WidgetHost.js +1 -1
  174. package/dist/components/layout/Board/board-context.js +1 -1
  175. package/dist/components/layout/Board/board-store.js +1 -1
  176. package/dist/components/layout/Board/grid-core/calculate.js +1 -1
  177. package/dist/components/layout/Board/grid-core/collision.js +1 -1
  178. package/dist/components/layout/Board/grid-core/compactors.js +1 -1
  179. package/dist/components/layout/Board/grid-core/constraints.js +1 -1
  180. package/dist/components/layout/Board/grid-core/layout.js +1 -1
  181. package/dist/components/layout/Board/grid-core/sort.js +1 -1
  182. package/dist/components/layout/Board/index.js +1 -1
  183. package/dist/components/layout/Board/responsive-utils.js +1 -1
  184. package/dist/components/layout/Board/use-board-layout.js +1 -1
  185. package/dist/components/layout/Board/use-board-registry.js +1 -1
  186. package/dist/components/layout/Flex.js +1 -1
  187. package/dist/components/layout/Flow.js +1 -1
  188. package/dist/components/layout/Grid.js +1 -1
  189. package/dist/components/layout/Panel.js +1 -1
  190. package/dist/components/layout/Prefix.js +1 -1
  191. package/dist/components/layout/ResizablePanel.js +1 -1
  192. package/dist/components/layout/Space.js +1 -1
  193. package/dist/components/layout/Suffix.js +1 -1
  194. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  195. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  196. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  197. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  198. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  199. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  200. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  201. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  202. package/dist/components/navigation/Tabs/popover-placement.js +1 -1
  203. package/dist/components/navigation/Tabs/styled.js +1 -1
  204. package/dist/components/navigation/Tabs/types.js +1 -1
  205. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  206. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  207. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  208. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  209. package/dist/components/other/Calendar/Calendar.js +1 -1
  210. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  211. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  212. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  213. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  214. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  215. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  216. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  217. package/dist/components/overlays/Dialog/Dialog.js +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.js +1 -1
  231. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  232. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  233. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  234. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  235. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  236. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  237. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  238. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  239. package/dist/components/overlays/Notifications/index.js +1 -1
  240. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  241. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  242. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  243. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  244. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  245. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  246. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  247. package/dist/components/overlays/Toast/index.js +1 -1
  248. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  249. package/dist/components/overlays/Toast/useToast.js +1 -1
  250. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  251. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  252. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  253. package/dist/components/overlays/Tooltip/context.js +1 -1
  254. package/dist/components/portal/Portal.js +1 -1
  255. package/dist/components/portal/PortalProvider.js +1 -1
  256. package/dist/components/portal/usePortal.js +1 -1
  257. package/dist/components/shared/DraggableCollection.js +1 -1
  258. package/dist/components/shared/InvalidIcon.js +1 -1
  259. package/dist/components/shared/ValidIcon.js +1 -1
  260. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  261. package/dist/components/status/Spin/Cube.js +1 -1
  262. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  263. package/dist/components/status/Spin/Spin.js +1 -1
  264. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  265. package/dist/data/item-themes.js +1 -1
  266. package/dist/data/themes.js +1 -1
  267. package/dist/i18n/I18nProvider.js +1 -1
  268. package/dist/i18n/createFormatter.js +1 -1
  269. package/dist/i18n/index.js +1 -1
  270. package/dist/i18n/instance.js +1 -1
  271. package/dist/i18n/locales/de-DE/uikit.js +1 -1
  272. package/dist/i18n/locales/en-US/uikit.js +1 -1
  273. package/dist/i18n/locales/es-ES/uikit.js +1 -1
  274. package/dist/i18n/locales/es-MX/uikit.js +1 -1
  275. package/dist/i18n/locales/fr-FR/uikit.js +1 -1
  276. package/dist/i18n/locales/it-IT/uikit.js +1 -1
  277. package/dist/i18n/locales/ja-JP/uikit.js +1 -1
  278. package/dist/i18n/locales/nb-NO/uikit.js +1 -1
  279. package/dist/i18n/locales/pt-BR/uikit.js +1 -1
  280. package/dist/i18n/locales/pt-PT/uikit.js +1 -1
  281. package/dist/i18n/locales/sv-SE/uikit.js +1 -1
  282. package/dist/i18n/locales/vi-VN/uikit.js +1 -1
  283. package/dist/i18n/locales.js +1 -1
  284. package/dist/i18n/useFormatter.js +1 -1
  285. package/dist/i18n/useI18n.js +1 -1
  286. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  287. package/dist/icons/AdjustmentsIcon.js +1 -1
  288. package/dist/icons/AiIcon.js +1 -1
  289. package/dist/icons/AreaChartIcon.js +1 -1
  290. package/dist/icons/BackwardIcon.js +1 -1
  291. package/dist/icons/BarChartIcon.js +1 -1
  292. package/dist/icons/BellFilledIcon.js +1 -1
  293. package/dist/icons/BellIcon.js +1 -1
  294. package/dist/icons/BooleanIcon.js +1 -1
  295. package/dist/icons/CalendarEditIcon.js +1 -1
  296. package/dist/icons/CalendarIcon.js +1 -1
  297. package/dist/icons/CaretDownIcon.js +1 -1
  298. package/dist/icons/CaretUpIcon.js +1 -1
  299. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  300. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  301. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  302. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  303. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  304. package/dist/icons/ChartBarLineIcon.js +1 -1
  305. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  306. package/dist/icons/ChartBarStackedIcon.js +1 -1
  307. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  308. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  309. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  310. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  311. package/dist/icons/ChartBubbleIcon.js +1 -1
  312. package/dist/icons/ChartDonut2Icon.js +1 -1
  313. package/dist/icons/ChartFunnelIcon.js +1 -1
  314. package/dist/icons/ChartHeatmapIcon.js +1 -1
  315. package/dist/icons/ChartKPIIcon.js +1 -1
  316. package/dist/icons/ChartPie2Icon.js +1 -1
  317. package/dist/icons/ChartScatterIcon.js +1 -1
  318. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  319. package/dist/icons/CheckCircleIcon.js +1 -1
  320. package/dist/icons/CheckIcon.js +1 -1
  321. package/dist/icons/CircleFilledIcon.js +1 -1
  322. package/dist/icons/ClearIcon.js +1 -1
  323. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  324. package/dist/icons/CloseCircleIcon.js +1 -1
  325. package/dist/icons/CloseIcon.js +1 -1
  326. package/dist/icons/CodeIcon.js +1 -1
  327. package/dist/icons/ColumnTotalIcon.js +1 -1
  328. package/dist/icons/CopyIcon.js +1 -1
  329. package/dist/icons/CountIcon.js +1 -1
  330. package/dist/icons/CubeIcon.js +1 -1
  331. package/dist/icons/CubePauseIcon.js +1 -1
  332. package/dist/icons/CubePlayIcon.js +1 -1
  333. package/dist/icons/CurrencyDollarIcon.js +1 -1
  334. package/dist/icons/DangerIcon.js +1 -1
  335. package/dist/icons/DashboardIcon.js +1 -1
  336. package/dist/icons/DatabaseIcon.js +1 -1
  337. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  338. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  339. package/dist/icons/DirectionIcon.js +1 -1
  340. package/dist/icons/DonutIcon.js +1 -1
  341. package/dist/icons/DownIcon.js +1 -1
  342. package/dist/icons/EditIcon.js +1 -1
  343. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  344. package/dist/icons/ExclamationCircleIcon.js +1 -1
  345. package/dist/icons/ExclamationIcon.js +1 -1
  346. package/dist/icons/EyeIcon.js +1 -1
  347. package/dist/icons/EyeInvisibleIcon.js +1 -1
  348. package/dist/icons/FilterIcon.js +1 -1
  349. package/dist/icons/FolderFilledIcon.js +1 -1
  350. package/dist/icons/FolderIcon.js +1 -1
  351. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  352. package/dist/icons/FolderOpenIcon.js +1 -1
  353. package/dist/icons/ForwardIcon.js +1 -1
  354. package/dist/icons/GripVerticalIcon.js +1 -1
  355. package/dist/icons/HierarchyIcon.js +1 -1
  356. package/dist/icons/HierarchyOpenIcon.js +1 -1
  357. package/dist/icons/Icon.js +1 -1
  358. package/dist/icons/InfoCircleIcon.js +1 -1
  359. package/dist/icons/InfoIcon.js +1 -1
  360. package/dist/icons/KeyIcon.js +1 -1
  361. package/dist/icons/LeftIcon.js +1 -1
  362. package/dist/icons/LineChartIcon.js +1 -1
  363. package/dist/icons/LoadingIcon.js +1 -1
  364. package/dist/icons/LockFilledIcon.js +1 -1
  365. package/dist/icons/LockIcon.js +1 -1
  366. package/dist/icons/MoreIcon.js +1 -1
  367. package/dist/icons/NotAllowedIcon.js +1 -1
  368. package/dist/icons/Number123Icon.js +1 -1
  369. package/dist/icons/NumberIcon.js +1 -1
  370. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  371. package/dist/icons/PauseCircleIcon.js +1 -1
  372. package/dist/icons/PauseIcon.js +1 -1
  373. package/dist/icons/PercentageIcon.js +1 -1
  374. package/dist/icons/PieChartIcon.js +1 -1
  375. package/dist/icons/PlayCircleIcon.js +1 -1
  376. package/dist/icons/PlayIcon.js +1 -1
  377. package/dist/icons/PlusIcon.js +1 -1
  378. package/dist/icons/ProgressBarIcon.js +1 -1
  379. package/dist/icons/ReloadIcon.js +1 -1
  380. package/dist/icons/ReportIcon.js +1 -1
  381. package/dist/icons/ReturnIcon.js +1 -1
  382. package/dist/icons/RightIcon.js +1 -1
  383. package/dist/icons/RowTotalsIcon.js +1 -1
  384. package/dist/icons/SchemeIcon.js +1 -1
  385. package/dist/icons/SearchIcon.js +1 -1
  386. package/dist/icons/SemanticQueryIcon.js +1 -1
  387. package/dist/icons/SettingsIcon.js +1 -1
  388. package/dist/icons/ShieldFilledIcon.js +1 -1
  389. package/dist/icons/ShieldIcon.js +1 -1
  390. package/dist/icons/SlashIcon.js +1 -1
  391. package/dist/icons/SparklesIcon.js +1 -1
  392. package/dist/icons/SqlIcon.js +1 -1
  393. package/dist/icons/StatsIcon.js +1 -1
  394. package/dist/icons/StopIcon.js +1 -1
  395. package/dist/icons/StringIcon.js +1 -1
  396. package/dist/icons/SubtotalsIcon.js +1 -1
  397. package/dist/icons/SwitchIcon.js +1 -1
  398. package/dist/icons/TableIcon.js +1 -1
  399. package/dist/icons/ThumbsDownIcon.js +1 -1
  400. package/dist/icons/ThumbsUpIcon.js +1 -1
  401. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  402. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  403. package/dist/icons/ThunderboltIcon.js +1 -1
  404. package/dist/icons/TimeIcon.js +1 -1
  405. package/dist/icons/TrashIcon.js +1 -1
  406. package/dist/icons/UnlockIcon.js +1 -1
  407. package/dist/icons/UpIcon.js +1 -1
  408. package/dist/icons/UserGroupIcon.js +1 -1
  409. package/dist/icons/UserIcon.js +1 -1
  410. package/dist/icons/UserLockIcon.js +1 -1
  411. package/dist/icons/ViewIcon.js +1 -1
  412. package/dist/icons/WarningFilledIcon.js +1 -1
  413. package/dist/icons/WarningIcon.js +1 -1
  414. package/dist/icons/wrap-icon.js +1 -1
  415. package/dist/index.js +1 -1
  416. package/dist/provider.js +1 -1
  417. package/dist/providers/TrackingProvider.js +1 -1
  418. package/dist/providers/navigationAdapter.default.js +1 -1
  419. package/dist/tokens/base.js +1 -1
  420. package/dist/tokens/colors.js +1 -1
  421. package/dist/tokens/index.js +1 -1
  422. package/dist/tokens/layout.js +1 -1
  423. package/dist/tokens/lazy-styles.js +1 -1
  424. package/dist/tokens/palette.js +8 -8
  425. package/dist/tokens/palette.js.map +1 -1
  426. package/dist/tokens/shadows.js +1 -1
  427. package/dist/tokens/sizes.js +1 -1
  428. package/dist/tokens/spacing.js +1 -1
  429. package/dist/tokens/typography.js +1 -1
  430. package/dist/utils/ResizeSensor.js +1 -1
  431. package/dist/utils/is-dev-env.js +1 -1
  432. package/dist/utils/modules.js +1 -1
  433. package/dist/utils/promise.js +1 -1
  434. package/dist/utils/raf.js +1 -1
  435. package/dist/utils/random.js +1 -1
  436. package/dist/utils/range.js +1 -1
  437. package/dist/utils/react/RenderCache.js +1 -1
  438. package/dist/utils/react/Slots.js +1 -1
  439. package/dist/utils/react/chain.js +1 -1
  440. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  441. package/dist/utils/react/index.js +1 -1
  442. package/dist/utils/react/interactions.js +1 -1
  443. package/dist/utils/react/isTextOnly.js +1 -1
  444. package/dist/utils/react/mapProps.js +1 -1
  445. package/dist/utils/react/mergeProps.js +1 -1
  446. package/dist/utils/react/nullableValue.js +1 -1
  447. package/dist/utils/react/resolveIcon.js +1 -1
  448. package/dist/utils/react/sharedStore.js +1 -1
  449. package/dist/utils/react/useCombinedRefs.js +1 -1
  450. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  451. package/dist/utils/react/useEventBus.js +1 -1
  452. package/dist/utils/react/useId.js +1 -1
  453. package/dist/utils/react/useIsDarwin.js +1 -1
  454. package/dist/utils/react/useKeySymbols.js +1 -1
  455. package/dist/utils/react/useLayoutEffect.js +1 -1
  456. package/dist/utils/react/useLocalStorage.js +1 -1
  457. package/dist/utils/react/useMergeStyles.js +1 -1
  458. package/dist/utils/react/usePopoverSync.js +1 -1
  459. package/dist/utils/react/useQaProps.js +1 -1
  460. package/dist/utils/react/useViewportSize.js +1 -1
  461. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  462. package/dist/utils/selection.js +1 -1
  463. package/dist/utils/styles.js +1 -1
  464. package/dist/utils/tree.js +1 -1
  465. package/dist/utils/warnings.js +1 -1
  466. package/dist/version.js +2 -2
  467. package/docs/Typography.md +1 -1
  468. package/docs/components/content/CopySnippet.md +5 -0
  469. package/docs/components/content/PrismCode.md +2 -2
  470. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"palette.js","names":[],"sources":["../../src/tokens/palette.ts"],"sourcesContent":["import { glaze } from '@tenphi/glaze';\n\nimport { lazyStyles } from './lazy-styles';\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': { '': 'oklch(...)', '@dark': 'oklch(...)', '@hc': 'oklch(...)' }\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 = 100;\n\n// Relative tone ramp from a white surface.\n// Tone is a contrast-uniform 0–100 scale (OKHST). A relative tone delta of -N\n// yields a fixed WCAG contrast step against the base regardless of where the\n// base sits on the scale. These constants form the primary text ramp; the\n// surface-2 / surface-3 variants reuse the same absolute targets via a small\n// offset because their bases are shifted down from `surface`.\nconst TEXT_TONE = -98; // relative tone delta from white surface (~cr 21)\nconst TEXT_SOFT_TONE = -72; // relative tone delta from white surface (~cr 9)\nconst TEXT_SOFT2_TONE = -52; // relative tone delta from white surface (~cr 4.5)\nconst SURFACE_2_TEXT_OFFSET = 2;\nconst SURFACE_3_TEXT_OFFSET = 4;\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 darkTone: [14, 95],\n darkDesaturation: 0,\n});\n\n// ============================================================================\n// Default theme (neutral, primary in palette → exported unprefixed)\n// ============================================================================\n\nconst defaultTheme = glaze(PURPLE_HUE, SEED_SATURATION, { pastel: true });\n\ndefaultTheme.colors({\n // ---- Surfaces (neutral, very low saturation) ----\n surface: { tone: 100, saturation: 0.12 },\n 'surface-2': {\n base: 'surface',\n tone: '-2',\n saturation: 0.1,\n inherit: false,\n },\n 'surface-3': {\n base: 'surface',\n tone: '-4',\n saturation: 0.1,\n inherit: false,\n },\n 'surface-4': {\n base: 'surface',\n tone: '-6',\n saturation: 0.1,\n inherit: false,\n },\n\n // ---- Text on surfaces ----\n // Tone is the contrast-uniform OKHST axis, so a relative tone delta directly\n // encodes a WCAG contrast step. `surface-text` sits at tone 2 (a -98 delta\n // from white), giving the same near-black appearance as the legacy `#dark`.\n // We still keep an `['AA','AAA']` contrast floor on every text-on-surface\n // color so a future low-contrast scale can shift the ramp down without ever\n // breaking readability.\n 'surface-text': {\n base: 'surface',\n tone: `${TEXT_TONE - 2}`,\n saturation: 0.475,\n contrast: ['AA', 'AAA'],\n },\n 'surface-text-soft': {\n base: 'surface',\n tone: `${TEXT_SOFT_TONE - 2}`,\n saturation: 0.375,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-text-soft-2': {\n base: 'surface',\n tone: `${TEXT_SOFT2_TONE - 2}`,\n saturation: 0.24,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-2-text': {\n base: 'surface-2',\n tone: `${TEXT_TONE + SURFACE_2_TEXT_OFFSET}`,\n saturation: 0.475,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-2-text-soft': {\n base: 'surface-2',\n tone: `${TEXT_SOFT_TONE + SURFACE_2_TEXT_OFFSET}`,\n saturation: 0.375,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-3-text': {\n base: 'surface-3',\n tone: `${TEXT_TONE + SURFACE_3_TEXT_OFFSET}`,\n saturation: 0.475,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-3-text-soft': {\n base: 'surface-3',\n tone: `${TEXT_SOFT_TONE + SURFACE_3_TEXT_OFFSET}`,\n saturation: 0.375,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n\n // ---- Other neutral UI primitives (default-only) ----\n border: {\n base: 'surface',\n tone: ['-10', '-20'],\n saturation: 0.175,\n },\n placeholder: {\n base: 'surface',\n tone: '-33',\n saturation: 0.175,\n inherit: false,\n },\n focus: {\n base: 'surface',\n tone: '-29',\n saturation: 0.8625,\n inherit: false,\n },\n disabled: {\n tone: 80.8,\n saturation: 0.4,\n inherit: false,\n },\n // Disabled fill chip + text — both adaptive (mode 'auto') and positioned\n // with relative tone deltas against `surface` so the disabled state has the\n // same perceived intensity in light, dark, and high-contrast schemes. No\n // numeric contrast prop is needed: tone is already on a WCAG-uniform scale.\n //\n // Tone deltas reproduce the legacy palette's disabled appearance exactly:\n // the chip sits ~cr 1.11 vs `surface` (a faint greyed pill for\n // OUTLINE/SECONDARY/item disabled states) and the label ~cr 2.02 vs\n // `surface` — intentionally sub-AA so it reads as disabled while staying the\n // same softness clear/link disabled labels had before. PRIMARY-style buttons\n // use the brand-tinted `accent-disabled-*` variants below instead. Both\n // tokens stay default-only (`inherit: false`) — colored themes inherit their\n // own disabled chip via the accent variants.\n 'disabled-surface': {\n base: 'surface',\n tone: '-3.5',\n saturation: 0.2,\n inherit: false,\n },\n 'disabled-surface-text': {\n base: 'surface',\n tone: '-23',\n saturation: 0.3,\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 tone: 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'` + relative tone deltas, so accent colors stay visually\n // consistent across light/dark/high-contrast schemes (the brand color does\n // not flip). The solid fills are white-text-on-brand backgrounds, so they\n // keep an `['AA','AAA']` contrast floor even though the chosen tone deltas\n // already exceed it. This leaves room for a future low-contrast scale.\n 'accent-surface-text': { tone: 100, mode: 'fixed' },\n 'accent-surface': {\n base: 'accent-surface-text',\n tone: '-49',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-2': {\n base: 'accent-surface-text',\n tone: '-52',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-3': {\n base: 'accent-surface-text',\n tone: '-55',\n contrast: ['AA', 'AAA'],\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. The relative tone\n // lands a few steps darker than the pressed state in both schemes.\n 'accent-surface-hover': {\n base: 'accent-surface-text',\n tone: '-58',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n // Border for accent surfaces — a small relative tone step away from the\n // brand fill so it stays in the brand hue family and does not flip in dark\n // mode. No contrast prop needed; the delta is chosen directly on the tone\n // scale.\n 'accent-surface-border': {\n base: 'accent-surface',\n tone: '+13',\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 color\n // stays readable on the dark surface. Anchoring to the brand fill instead\n // would only enforce contrast against that fill, leaving dark-mode text\n // washed out. The relative tone positions each color; `['AA','AAA']` is the\n // readability floor.\n 'accent-text': {\n base: 'surface',\n tone: '-61',\n saturation: 1,\n contrast: ['AA', 'AAA'],\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 smaller tone delta so it sits visibly less prominent.\n 'accent-text-soft': {\n base: 'surface',\n tone: '-49',\n saturation: 1,\n contrast: ['AA', 'AAA'],\n },\n 'accent-icon': {\n base: 'surface',\n tone: '-38',\n saturation: 0.9375,\n },\n\n // Brand-tinted disabled chip + label for PRIMARY-style buttons (solid brand\n // fill). The chip is adaptive so it tracks the surface in light/dark/HC;\n // saturation is bumped so it reads as a muted brand color. The label uses a\n // relative `+18` tone step against the chip (~cr 1.7 in every scheme): darker\n // muted purple on the light chip, lighter muted purple on the dark chip —\n // same shape as the special theme's fixed disabled pair. Inherited per theme.\n 'accent-disabled-surface': {\n base: 'surface',\n tone: '-13',\n saturation: 0.5,\n mode: 'fixed',\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n tone: '+15',\n autoFlip: false,\n saturation: 0.4,\n mode: 'fixed',\n },\n\n // ---- Code syntax highlighting (PrismCode) ----\n // A small palette of *adaptive* colored tokens for syntax highlighting.\n // Each token is anchored to `surface` with a relative tone plus an `['AA',\n // 'AAA']` readability floor. Hues mirror the long-standing PrismCode\n // reference (pink keywords / pink functions / orange strings / green numbers /\n // gray comments). `code-attribute` keeps a cyan hue for HTML attribute names /\n // CSS properties / selectors. Diff insertion / deletion re-use the existing\n // `success-*` / `danger-*` ramps.\n 'code-comment': {\n base: 'surface',\n hue: 280,\n saturation: 0.1,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-punctuation': {\n base: 'surface',\n hue: 348,\n saturation: 0.4,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-keyword': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n tone: '-54',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-string': {\n base: 'surface',\n hue: PURPLE_HUE,\n saturation: 1,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-number': {\n base: 'surface',\n hue: 156,\n saturation: 0.9,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-function': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n tone: '-54',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-attribute': {\n base: 'surface',\n hue: 200,\n saturation: 1,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n\n // ---- Loading-animation cube faces ----\n // Decorative gradient steps from `surface` to a saturated mid-tone. Tone\n // deltas are chosen directly on the contrast-uniform scale; no contrast prop\n // is needed for a non-text decorative element.\n 'loading-face-1': {\n base: 'surface',\n tone: '-2',\n saturation: 0.3,\n inherit: false,\n },\n 'loading-face-2': {\n base: 'surface',\n tone: '-9',\n saturation: 0.62,\n inherit: false,\n },\n 'loading-face-3': {\n base: 'surface',\n tone: '-21',\n saturation: 0.66,\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: { tone: 10, opacity: 0.5, inherit: false },\n});\n\n// ============================================================================\n// Colored themes\n// ============================================================================\n\nconst TINTED_SURFACE_SATURATION = 0.2;\nconst TINTED_SURFACE_TONE_OFFSET = 2;\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'`, tone 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: {\n tone: 100 - TINTED_SURFACE_TONE_OFFSET,\n saturation: TINTED_SURFACE_SATURATION,\n },\n border: {\n base: 'surface',\n tone: ['-10', '-20'],\n saturation: 0.5,\n },\n 'surface-text': {\n base: 'surface',\n tone: `${TEXT_TONE - TINTED_SURFACE_TONE_OFFSET}`,\n saturation: 0.25,\n contrast: ['AA', 'AAA'],\n },\n 'surface-text-soft': {\n base: 'surface',\n tone: `${TEXT_SOFT_TONE - TINTED_SURFACE_TONE_OFFSET}`,\n saturation: 0.25,\n contrast: ['AA', 'AAA'],\n },\n 'surface-text-soft-2': {\n base: 'surface',\n tone: `${TEXT_SOFT2_TONE - TINTED_SURFACE_TONE_OFFSET}`,\n saturation: 0.25,\n contrast: ['AA', 'AAA'],\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, positioned with relative tone\n * deltas against the fixed dark `surface` so the disabled state is\n * scheme-symmetric.\n */\nconst specialTheme = glaze(PURPLE_HUE, SEED_SATURATION, { pastel: true });\n\nspecialTheme.colors({\n surface: { tone: 12, saturation: 0.475, mode: 'fixed' },\n\n 'accent-surface-text': { tone: 100, mode: 'fixed' },\n 'accent-surface': {\n base: 'accent-surface-text',\n tone: '-49',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-2': {\n base: 'accent-surface-text',\n tone: '-52',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-3': {\n base: 'accent-surface-text',\n tone: '-55',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-border': {\n base: 'accent-surface',\n tone: '+13',\n mode: 'fixed',\n },\n 'accent-surface-hover': {\n base: 'accent-surface-text',\n tone: '-58',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-text': {\n base: 'accent-surface-text',\n tone: '-58',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n\n 'accent-disabled-surface': {\n base: 'surface',\n tone: '+4',\n saturation: 0.5,\n mode: 'fixed',\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n tone: '+18',\n saturation: 0.4,\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 * Resolve Glaze palette tokens against the **live** `glaze` global config.\n *\n * Memoized on first call so subsequent reads are free. Resolution is deferred\n * (not done at module import) so host apps can call `glaze.configure(...)`\n * after importing `@cube-dev/ui-kit` and still affect these tokens — as long as\n * configure runs before the first `getPaletteTokens()` / `<Root>` paint.\n *\n * Keys use `#name` syntax; values are state maps:\n * '#surface': { '': 'oklch(...)', '@dark': 'oklch(...)', '@hc': 'oklch(...)' }\n */\nlet paletteTokensCache: Styles | null = null;\n\nexport function getPaletteTokens(): Styles {\n if (!paletteTokensCache) {\n paletteTokensCache = 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 format: 'oklch',\n }) as Styles;\n }\n return paletteTokensCache;\n}\n\n/**\n * Lazy proxy of {@link getPaletteTokens}. Prefer `getPaletteTokens()` in new\n * code. First property / enumeration access resolves against the live glaze\n * config (same memo as the getter).\n */\nexport const PALETTE_TOKENS: Styles = lazyStyles(getPaletteTokens);\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 { lazyStyles } from './lazy-styles';\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': { '': 'oklch(...)', '@dark': 'oklch(...)', '@hc': 'oklch(...)' }\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 = 100;\n\n// Relative tone ramp from a white surface.\n// Tone is a contrast-uniform 0–100 scale (OKHST). A relative tone delta of -N\n// yields a fixed WCAG contrast step against the base regardless of where the\n// base sits on the scale. These constants form the primary text ramp; the\n// surface-2 / surface-3 variants reuse the same absolute targets via a small\n// offset because their bases are shifted down from `surface`.\nconst TEXT_TONE = -98; // relative tone delta from white surface (~cr 21)\nconst TEXT_SOFT_TONE = -72; // relative tone delta from white surface (~cr 9)\nconst TEXT_SOFT2_TONE = -52; // relative tone delta from white surface (~cr 4.5)\nconst SURFACE_2_TEXT_OFFSET = 2;\nconst SURFACE_3_TEXT_OFFSET = 4;\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 darkTone: [14, 95],\n darkDesaturation: 0,\n});\n\n// ============================================================================\n// Default theme (neutral, primary in palette → exported unprefixed)\n// ============================================================================\n\nconst defaultTheme = glaze(PURPLE_HUE, SEED_SATURATION, { pastel: true });\n\ndefaultTheme.colors({\n // ---- Surfaces (neutral, very low saturation) ----\n surface: { tone: 100, saturation: 0.12 },\n 'surface-2': {\n base: 'surface',\n tone: '-2',\n saturation: 0.1,\n inherit: false,\n },\n 'surface-3': {\n base: 'surface',\n tone: '-4',\n saturation: 0.1,\n inherit: false,\n },\n 'surface-4': {\n base: 'surface',\n tone: '-6',\n saturation: 0.1,\n inherit: false,\n },\n\n // ---- Text on surfaces ----\n // Tone is the contrast-uniform OKHST axis, so a relative tone delta directly\n // encodes a WCAG contrast step. `surface-text` sits at tone 2 (a -98 delta\n // from white), giving the same near-black appearance as the legacy `#dark`.\n // We still keep an `['AA','AAA']` contrast floor on every text-on-surface\n // color so a future low-contrast scale can shift the ramp down without ever\n // breaking readability.\n 'surface-text': {\n base: 'surface',\n tone: `${TEXT_TONE - 2}`,\n saturation: 0.2,\n contrast: ['AA', 'AAA'],\n },\n 'surface-text-soft': {\n base: 'surface',\n tone: `${TEXT_SOFT_TONE - 2}`,\n saturation: 0.2,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-text-soft-2': {\n base: 'surface',\n tone: `${TEXT_SOFT2_TONE - 2}`,\n saturation: 0.2,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-2-text': {\n base: 'surface-2',\n tone: `${TEXT_TONE + SURFACE_2_TEXT_OFFSET}`,\n saturation: 0.2,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-2-text-soft': {\n base: 'surface-2',\n tone: `${TEXT_SOFT_TONE + SURFACE_2_TEXT_OFFSET}`,\n saturation: 0.2,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-3-text': {\n base: 'surface-3',\n tone: `${TEXT_TONE + SURFACE_3_TEXT_OFFSET}`,\n saturation: 0.2,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'surface-3-text-soft': {\n base: 'surface-3',\n tone: `${TEXT_SOFT_TONE + SURFACE_3_TEXT_OFFSET}`,\n saturation: 0.2,\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n\n // ---- Other neutral UI primitives (default-only) ----\n border: {\n base: 'surface',\n tone: ['-10', '-20'],\n saturation: 0.175,\n },\n placeholder: {\n base: 'surface',\n tone: '-33',\n saturation: 0.175,\n inherit: false,\n },\n focus: {\n base: 'surface',\n tone: '-29',\n saturation: 0.8625,\n inherit: false,\n },\n disabled: {\n tone: 80.8,\n saturation: 0.4,\n inherit: false,\n },\n // Disabled fill chip + text — both adaptive (mode 'auto') and positioned\n // with relative tone deltas against `surface` so the disabled state has the\n // same perceived intensity in light, dark, and high-contrast schemes. No\n // numeric contrast prop is needed: tone is already on a WCAG-uniform scale.\n //\n // Tone deltas reproduce the legacy palette's disabled appearance exactly:\n // the chip sits ~cr 1.11 vs `surface` (a faint greyed pill for\n // OUTLINE/SECONDARY/item disabled states) and the label ~cr 2.02 vs\n // `surface` — intentionally sub-AA so it reads as disabled while staying the\n // same softness clear/link disabled labels had before. PRIMARY-style buttons\n // use the brand-tinted `accent-disabled-*` variants below instead. Both\n // tokens stay default-only (`inherit: false`) — colored themes inherit their\n // own disabled chip via the accent variants.\n 'disabled-surface': {\n base: 'surface',\n tone: '-3.5',\n saturation: 0.2,\n inherit: false,\n },\n 'disabled-surface-text': {\n base: 'surface',\n tone: '-23',\n saturation: 0.3,\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 tone: 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'` + relative tone deltas, so accent colors stay visually\n // consistent across light/dark/high-contrast schemes (the brand color does\n // not flip). The solid fills are white-text-on-brand backgrounds, so they\n // keep an `['AA','AAA']` contrast floor even though the chosen tone deltas\n // already exceed it. This leaves room for a future low-contrast scale.\n 'accent-surface-text': { tone: 100, mode: 'fixed' },\n 'accent-surface': {\n base: 'accent-surface-text',\n tone: '-49',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-2': {\n base: 'accent-surface-text',\n tone: '-52',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-3': {\n base: 'accent-surface-text',\n tone: '-55',\n contrast: ['AA', 'AAA'],\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. The relative tone\n // lands a few steps darker than the pressed state in both schemes.\n 'accent-surface-hover': {\n base: 'accent-surface-text',\n tone: '-58',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n // Border for accent surfaces — a small relative tone step away from the\n // brand fill so it stays in the brand hue family and does not flip in dark\n // mode. No contrast prop needed; the delta is chosen directly on the tone\n // scale.\n 'accent-surface-border': {\n base: 'accent-surface',\n tone: '+13',\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 color\n // stays readable on the dark surface. Anchoring to the brand fill instead\n // would only enforce contrast against that fill, leaving dark-mode text\n // washed out. The relative tone positions each color; `['AA','AAA']` is the\n // readability floor.\n 'accent-text': {\n base: 'surface',\n tone: '-61',\n saturation: 1,\n contrast: ['AA', 'AAA'],\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 smaller tone delta so it sits visibly less prominent.\n 'accent-text-soft': {\n base: 'surface',\n tone: '-49',\n saturation: 1,\n contrast: ['AA', 'AAA'],\n },\n 'accent-icon': {\n base: 'surface',\n tone: '-38',\n saturation: 0.9375,\n },\n\n // Brand-tinted disabled chip + label for PRIMARY-style buttons (solid brand\n // fill). The chip is adaptive so it tracks the surface in light/dark/HC;\n // saturation is bumped so it reads as a muted brand color. The label uses a\n // relative `+18` tone step against the chip (~cr 1.7 in every scheme): darker\n // muted purple on the light chip, lighter muted purple on the dark chip —\n // same shape as the special theme's fixed disabled pair. Inherited per theme.\n 'accent-disabled-surface': {\n base: 'surface',\n tone: '-13',\n saturation: 0.5,\n mode: 'fixed',\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n tone: '+15',\n autoFlip: false,\n saturation: 0.4,\n mode: 'fixed',\n },\n\n // ---- Code syntax highlighting (PrismCode) ----\n // A small palette of *adaptive* colored tokens for syntax highlighting.\n // Each token is anchored to `surface` with a relative tone plus an `['AA',\n // 'AAA']` readability floor. Hues mirror the long-standing PrismCode\n // reference (pink keywords / pink functions / orange strings / green numbers /\n // gray comments). `code-attribute` keeps a cyan hue for HTML attribute names /\n // CSS properties / selectors; HTML/XML tag names use `code-keyword`. 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 tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-punctuation': {\n base: 'surface',\n hue: 348,\n saturation: 0.4,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-keyword': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n tone: '-54',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-string': {\n base: 'surface',\n hue: PURPLE_HUE,\n saturation: 1,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-number': {\n base: 'surface',\n hue: 156,\n saturation: 0.9,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-function': {\n base: 'surface',\n hue: 348,\n saturation: 1,\n tone: '-54',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n 'code-attribute': {\n base: 'surface',\n hue: 200,\n saturation: 1,\n tone: '-50',\n contrast: ['AA', 'AAA'],\n inherit: false,\n },\n\n // ---- Loading-animation cube faces ----\n // Decorative gradient steps from `surface` to a saturated mid-tone. Tone\n // deltas are chosen directly on the contrast-uniform scale; no contrast prop\n // is needed for a non-text decorative element.\n 'loading-face-1': {\n base: 'surface',\n tone: '-2',\n saturation: 0.3,\n inherit: false,\n },\n 'loading-face-2': {\n base: 'surface',\n tone: '-9',\n saturation: 0.62,\n inherit: false,\n },\n 'loading-face-3': {\n base: 'surface',\n tone: '-21',\n saturation: 0.66,\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: { tone: 10, opacity: 0.5, inherit: false },\n});\n\n// ============================================================================\n// Colored themes\n// ============================================================================\n\nconst TINTED_SURFACE_SATURATION = 0.2;\nconst TINTED_SURFACE_TONE_OFFSET = 2;\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'`, tone 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: {\n tone: 100 - TINTED_SURFACE_TONE_OFFSET,\n saturation: TINTED_SURFACE_SATURATION,\n },\n border: {\n base: 'surface',\n tone: ['-10', '-20'],\n saturation: 0.5,\n },\n 'surface-text': {\n base: 'surface',\n tone: `${TEXT_TONE - TINTED_SURFACE_TONE_OFFSET}`,\n saturation: 0.25,\n contrast: ['AA', 'AAA'],\n },\n 'surface-text-soft': {\n base: 'surface',\n tone: `${TEXT_SOFT_TONE - TINTED_SURFACE_TONE_OFFSET}`,\n saturation: 0.25,\n contrast: ['AA', 'AAA'],\n },\n 'surface-text-soft-2': {\n base: 'surface',\n tone: `${TEXT_SOFT2_TONE - TINTED_SURFACE_TONE_OFFSET}`,\n saturation: 0.25,\n contrast: ['AA', 'AAA'],\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, positioned with relative tone\n * deltas against the fixed dark `surface` so the disabled state is\n * scheme-symmetric.\n */\nconst specialTheme = glaze(PURPLE_HUE, SEED_SATURATION, { pastel: true });\n\nspecialTheme.colors({\n surface: { tone: 12, saturation: 0.475, mode: 'fixed' },\n\n 'accent-surface-text': { tone: 100, mode: 'fixed' },\n 'accent-surface': {\n base: 'accent-surface-text',\n tone: '-49',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-2': {\n base: 'accent-surface-text',\n tone: '-52',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-3': {\n base: 'accent-surface-text',\n tone: '-55',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-surface-border': {\n base: 'accent-surface',\n tone: '+13',\n mode: 'fixed',\n },\n 'accent-surface-hover': {\n base: 'accent-surface-text',\n tone: '-58',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n 'accent-text': {\n base: 'accent-surface-text',\n tone: '-58',\n contrast: ['AA', 'AAA'],\n mode: 'fixed',\n },\n\n 'accent-disabled-surface': {\n base: 'surface',\n tone: '+4',\n saturation: 0.5,\n mode: 'fixed',\n },\n 'accent-disabled-surface-text': {\n base: 'accent-disabled-surface',\n tone: '+18',\n saturation: 0.4,\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 * Resolve Glaze palette tokens against the **live** `glaze` global config.\n *\n * Memoized on first call so subsequent reads are free. Resolution is deferred\n * (not done at module import) so host apps can call `glaze.configure(...)`\n * after importing `@cube-dev/ui-kit` and still affect these tokens — as long as\n * configure runs before the first `getPaletteTokens()` / `<Root>` paint.\n *\n * Keys use `#name` syntax; values are state maps:\n * '#surface': { '': 'oklch(...)', '@dark': 'oklch(...)', '@hc': 'oklch(...)' }\n */\nlet paletteTokensCache: Styles | null = null;\n\nexport function getPaletteTokens(): Styles {\n if (!paletteTokensCache) {\n paletteTokensCache = 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 format: 'oklch',\n }) as Styles;\n }\n return paletteTokensCache;\n}\n\n/**\n * Lazy proxy of {@link getPaletteTokens}. Prefer `getPaletteTokens()` in new\n * code. First property / enumeration access resolves against the live glaze\n * config (same memo as the getter).\n */\nexport const PALETTE_TOKENS: Styles = lazyStyles(getPaletteTokens);\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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | Cube Dev Team */
2
2
  import React, { createContext, useCallback, useContext, useEffect, useMemo, 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | Cube Dev Team */
2
2
  import { EventBusContext, useEventBus } from "./useEventBus.js";
3
3
  import { useCallback, useContext, useEffect, useRef } from "react";
4
4
 
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | 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.0.0-canary-7c63f24 | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-a2deb22 | Cube Dev Team */
2
2
  //#region src/version.ts
3
- const VERSION = "0.0.0-canary-7c63f24";
3
+ const VERSION = "0.0.0-canary-a2deb22";
4
4
  const TASTY_VERSION = "2.9.1";
5
5
  if (typeof window !== "undefined") {
6
6
  const version = VERSION;
@@ -4,7 +4,7 @@ There are many ways to create typography elements like text labels and headings.
4
4
 
5
5
  ## Typography Components
6
6
 
7
- ### Headings
7
+ ### Presets
8
8
 
9
9
  ### Paragraphs
10
10
 
@@ -54,4 +54,9 @@ These properties allow direct style application without using the `styles` prop:
54
54
  language="json"
55
55
  multiline
56
56
  />
57
+
58
+ <CopySnippet
59
+ code={'<button type="button" class="primary">Save</button>'}
60
+ language="html"
61
+ />
57
62
  ```
@@ -36,11 +36,11 @@ against `#surface` in light, dark, and high-contrast schemes (AAA in HC).
36
36
  | -------------------- | -------------- | -------------------------------------------------------------- |
37
37
  | `#code-comment` | gray | comments, prolog, doctype, cdata |
38
38
  | `#code-punctuation` | muted pink | operators, punctuation |
39
- | `#code-keyword` | pink | keywords, booleans, constants, atrules (`font-weight: 500`) |
39
+ | `#code-keyword` | pink | keywords, booleans, constants, atrules, HTML/XML tag names (`font-weight: 500` on language keywords) |
40
40
  | `#code-string` | primary purple | strings, characters, attribute values, URLs |
41
41
  | `#code-number` | green | numbers, numeric entities |
42
42
  | `#code-function` | pink | functions, class names, regex, variables |
43
- | `#code-attribute` | cyan | tags, attribute names, properties, selectors, built-ins, keys |
43
+ | `#code-attribute` | cyan | attribute names, properties, selectors, built-ins, keys |
44
44
 
45
45
  Diff insertion (`+`) and deletion (`-`) intentionally re-use the existing
46
46
  `#success-*` / `#danger-*` ramps — both the line background tint and the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cube-dev/ui-kit",
3
- "version": "0.0.0-canary-7c63f24",
3
+ "version": "0.0.0-canary-a2deb22",
4
4
  "type": "module",
5
5
  "description": "UIKit for Cube Projects",
6
6
  "repository": {