@cube-dev/ui-kit 0.0.0-canary-c210a8c → 0.0.0-canary-60981ef

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 (462) 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 +1 -1
  13. package/dist/components/GridProvider.js +1 -1
  14. package/dist/components/HiddenInput.js +1 -1
  15. package/dist/components/Root.js +1 -1
  16. package/dist/components/actions/Action/Action.js +1 -1
  17. package/dist/components/actions/Banner/Banner.js +1 -1
  18. package/dist/components/actions/Button/Button.js +1 -1
  19. package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
  20. package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
  21. package/dist/components/actions/ButtonSplit/context.js +1 -1
  22. package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
  23. package/dist/components/actions/CommandMenu/styled.js +1 -1
  24. package/dist/components/actions/ItemAction/ItemAction.js +1 -1
  25. package/dist/components/actions/ItemActionContext.js +1 -1
  26. package/dist/components/actions/ItemButton/ItemButton.js +1 -1
  27. package/dist/components/actions/Link/Link.js +1 -1
  28. package/dist/components/actions/Menu/Menu.js +1 -1
  29. package/dist/components/actions/Menu/MenuItem.js +1 -1
  30. package/dist/components/actions/Menu/MenuSection.js +1 -1
  31. package/dist/components/actions/Menu/MenuTrigger.js +1 -1
  32. package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
  33. package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
  34. package/dist/components/actions/Menu/context.js +1 -1
  35. package/dist/components/actions/Menu/styled.js +1 -1
  36. package/dist/components/actions/index.js +1 -1
  37. package/dist/components/actions/use-action.js +1 -1
  38. package/dist/components/actions/use-anchored-menu.js +1 -1
  39. package/dist/components/actions/use-context-menu.js +1 -1
  40. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  41. package/dist/components/content/Alert/Alert.js +1 -1
  42. package/dist/components/content/Alert/use-alert.js +1 -1
  43. package/dist/components/content/Avatar/Avatar.js +1 -1
  44. package/dist/components/content/Badge/Badge.js +1 -1
  45. package/dist/components/content/Card/Card.js +1 -1
  46. package/dist/components/content/Content.js +1 -1
  47. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  48. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  49. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  50. package/dist/components/content/Divider.js +1 -1
  51. package/dist/components/content/Footer.js +1 -1
  52. package/dist/components/content/Header.js +1 -1
  53. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  54. package/dist/components/content/Item/Item.js +1 -1
  55. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  56. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  57. package/dist/components/content/Layout/GridLayout.js +1 -1
  58. package/dist/components/content/Layout/Layout.js +1 -1
  59. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  60. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  61. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  62. package/dist/components/content/Layout/LayoutContent.js +1 -1
  63. package/dist/components/content/Layout/LayoutContext.js +1 -1
  64. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  65. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  66. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  67. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  68. package/dist/components/content/Layout/LayoutPane.js +1 -1
  69. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  70. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  71. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  72. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  73. package/dist/components/content/Layout/index.js +1 -1
  74. package/dist/components/content/Layout/utils.js +1 -1
  75. package/dist/components/content/Paragraph.js +1 -1
  76. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  77. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  78. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  79. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  80. package/dist/components/content/Result/Result.js +1 -1
  81. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  82. package/dist/components/content/Tag/Tag.js +1 -1
  83. package/dist/components/content/Text.js +1 -1
  84. package/dist/components/content/TextItem/TextItem.js +1 -1
  85. package/dist/components/content/Title.js +1 -1
  86. package/dist/components/content/highlightText.js +1 -1
  87. package/dist/components/content/use-auto-tooltip.js +1 -1
  88. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  89. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  90. package/dist/components/fields/Checkbox/context.js +1 -1
  91. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  92. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  93. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  94. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  95. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  96. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  97. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  98. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  99. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  100. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  101. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  102. package/dist/components/fields/DatePicker/intl.js +1 -1
  103. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  104. package/dist/components/fields/DatePicker/props.js +1 -1
  105. package/dist/components/fields/DatePicker/utils.js +1 -1
  106. package/dist/components/fields/FileInput/FileInput.js +1 -1
  107. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  108. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  109. package/dist/components/fields/Input/Input.js +1 -1
  110. package/dist/components/fields/ListBox/ListBox.js +1 -1
  111. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  112. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  113. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  114. package/dist/components/fields/Picker/Picker.js +1 -1
  115. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  116. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  117. package/dist/components/fields/RadioGroup/context.js +1 -1
  118. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  119. package/dist/components/fields/Select/Select.js +1 -1
  120. package/dist/components/fields/Slider/Gradation.js +1 -1
  121. package/dist/components/fields/Slider/HueSlider.js +1 -1
  122. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  123. package/dist/components/fields/Slider/Slider.js +1 -1
  124. package/dist/components/fields/Slider/SliderBase.js +1 -1
  125. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  126. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  127. package/dist/components/fields/Slider/elements.js +1 -1
  128. package/dist/components/fields/Slider/index.js +1 -1
  129. package/dist/components/fields/Switch/Switch.js +1 -1
  130. package/dist/components/fields/TextArea/TextArea.js +1 -1
  131. package/dist/components/fields/TextInput/TextInput.js +1 -1
  132. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  133. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  134. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  135. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  136. package/dist/components/form/Form/Field.js +1 -1
  137. package/dist/components/form/Form/Form.js +1 -1
  138. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  139. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  140. package/dist/components/form/Form/SubmitError.js +1 -1
  141. package/dist/components/form/Form/index.js +1 -1
  142. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  143. package/dist/components/form/Form/use-field/use-field.js +1 -1
  144. package/dist/components/form/Form/use-form.js +1 -1
  145. package/dist/components/form/Form/validation.js +1 -1
  146. package/dist/components/form/Label.js +1 -1
  147. package/dist/components/form/wrapper.js +1 -1
  148. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  149. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  150. package/dist/components/layout/Flex.js +1 -1
  151. package/dist/components/layout/Flow.js +1 -1
  152. package/dist/components/layout/Grid.js +1 -1
  153. package/dist/components/layout/Panel.js +1 -1
  154. package/dist/components/layout/Prefix.js +1 -1
  155. package/dist/components/layout/ResizablePanel.js +1 -1
  156. package/dist/components/layout/Space.js +1 -1
  157. package/dist/components/layout/Suffix.js +1 -1
  158. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  159. package/dist/components/navigation/Tabs/EditableTitle.js +1 -1
  160. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  161. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  162. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  163. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  164. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  165. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  166. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  167. package/dist/components/navigation/Tabs/styled.js +1 -1
  168. package/dist/components/navigation/Tabs/types.js +1 -1
  169. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  170. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  171. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  172. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  173. package/dist/components/other/Calendar/Calendar.js +1 -1
  174. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  175. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  176. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  177. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  178. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  179. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  180. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  181. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  182. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  183. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  184. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  185. package/dist/components/overlays/Dialog/context.js +1 -1
  186. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  187. package/dist/components/overlays/Modal/Modal.js +1 -1
  188. package/dist/components/overlays/Modal/OpenTransition.js +1 -1
  189. package/dist/components/overlays/Modal/Overlay.js +1 -1
  190. package/dist/components/overlays/Modal/Popover.js +1 -1
  191. package/dist/components/overlays/Modal/Tray.js +1 -1
  192. package/dist/components/overlays/Modal/Underlay.js +1 -1
  193. package/dist/components/overlays/Notifications/Notification.js +1 -1
  194. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  195. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  196. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  197. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  198. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  199. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  200. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  201. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  202. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  203. package/dist/components/overlays/Notifications/index.js +1 -1
  204. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  205. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  206. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  207. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  208. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  209. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  210. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  211. package/dist/components/overlays/Toast/index.js +1 -1
  212. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  213. package/dist/components/overlays/Toast/useToast.js +1 -1
  214. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  215. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  216. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  217. package/dist/components/overlays/Tooltip/context.js +1 -1
  218. package/dist/components/portal/Portal.js +1 -1
  219. package/dist/components/portal/PortalProvider.js +1 -1
  220. package/dist/components/portal/usePortal.js +1 -1
  221. package/dist/components/shared/InvalidIcon.js +1 -1
  222. package/dist/components/shared/ValidIcon.js +1 -1
  223. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  224. package/dist/components/status/Spin/Cube.js +1 -1
  225. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  226. package/dist/components/status/Spin/Spin.js +1 -1
  227. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  228. package/dist/data/item-themes.js +1 -1
  229. package/dist/data/themes.js +1 -1
  230. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  231. package/dist/icons/AdjustmentsIcon.js +1 -1
  232. package/dist/icons/AiIcon.js +1 -1
  233. package/dist/icons/AreaChartIcon.js +1 -1
  234. package/dist/icons/BackwardIcon.js +1 -1
  235. package/dist/icons/BarChartIcon.js +1 -1
  236. package/dist/icons/BellFilledIcon.js +1 -1
  237. package/dist/icons/BellIcon.js +1 -1
  238. package/dist/icons/BooleanIcon.js +1 -1
  239. package/dist/icons/CalendarEditIcon.js +1 -1
  240. package/dist/icons/CalendarIcon.js +1 -1
  241. package/dist/icons/CaretDownIcon.js +1 -1
  242. package/dist/icons/CaretUpIcon.js +1 -1
  243. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  244. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  245. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  246. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  247. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  248. package/dist/icons/ChartBarLineIcon.js +1 -1
  249. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  250. package/dist/icons/ChartBarStackedIcon.js +1 -1
  251. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  252. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  253. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  254. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  255. package/dist/icons/ChartBubbleIcon.js +1 -1
  256. package/dist/icons/ChartDonut2Icon.js +1 -1
  257. package/dist/icons/ChartFunnelIcon.js +1 -1
  258. package/dist/icons/ChartHeatmapIcon.js +1 -1
  259. package/dist/icons/ChartKPIIcon.js +1 -1
  260. package/dist/icons/ChartPie2Icon.js +1 -1
  261. package/dist/icons/ChartScatterIcon.js +1 -1
  262. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  263. package/dist/icons/CheckCircleIcon.js +1 -1
  264. package/dist/icons/CheckIcon.js +1 -1
  265. package/dist/icons/CircleFilledIcon.js +1 -1
  266. package/dist/icons/ClearIcon.js +1 -1
  267. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  268. package/dist/icons/CloseCircleIcon.js +1 -1
  269. package/dist/icons/CloseIcon.js +1 -1
  270. package/dist/icons/CodeIcon.js +1 -1
  271. package/dist/icons/ColumnTotalIcon.js +1 -1
  272. package/dist/icons/CopyIcon.js +1 -1
  273. package/dist/icons/CountIcon.js +1 -1
  274. package/dist/icons/CubeIcon.js +1 -1
  275. package/dist/icons/CubePauseIcon.js +1 -1
  276. package/dist/icons/CubePlayIcon.js +1 -1
  277. package/dist/icons/CurrencyDollarIcon.js +1 -1
  278. package/dist/icons/DangerIcon.js +1 -1
  279. package/dist/icons/DashboardIcon.js +1 -1
  280. package/dist/icons/DatabaseIcon.js +1 -1
  281. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  282. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  283. package/dist/icons/DirectionIcon.js +1 -1
  284. package/dist/icons/DonutIcon.js +1 -1
  285. package/dist/icons/DownIcon.js +1 -1
  286. package/dist/icons/EditIcon.js +1 -1
  287. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  288. package/dist/icons/ExclamationCircleIcon.js +1 -1
  289. package/dist/icons/ExclamationIcon.js +1 -1
  290. package/dist/icons/EyeIcon.js +1 -1
  291. package/dist/icons/EyeInvisibleIcon.js +1 -1
  292. package/dist/icons/FilterIcon.js +1 -1
  293. package/dist/icons/FolderFilledIcon.js +1 -1
  294. package/dist/icons/FolderIcon.js +1 -1
  295. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  296. package/dist/icons/FolderOpenIcon.js +1 -1
  297. package/dist/icons/ForwardIcon.js +1 -1
  298. package/dist/icons/HierarchyIcon.js +1 -1
  299. package/dist/icons/HierarchyOpenIcon.js +1 -1
  300. package/dist/icons/Icon.js +1 -1
  301. package/dist/icons/InfoCircleIcon.js +1 -1
  302. package/dist/icons/InfoIcon.js +1 -1
  303. package/dist/icons/KeyIcon.js +1 -1
  304. package/dist/icons/LeftIcon.js +1 -1
  305. package/dist/icons/LineChartIcon.js +1 -1
  306. package/dist/icons/LoadingIcon.js +1 -1
  307. package/dist/icons/LockFilledIcon.js +1 -1
  308. package/dist/icons/LockIcon.js +1 -1
  309. package/dist/icons/MoreIcon.js +1 -1
  310. package/dist/icons/NotAllowedIcon.js +1 -1
  311. package/dist/icons/Number123Icon.js +1 -1
  312. package/dist/icons/NumberIcon.js +1 -1
  313. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  314. package/dist/icons/PauseCircleIcon.js +1 -1
  315. package/dist/icons/PauseIcon.js +1 -1
  316. package/dist/icons/PercentageIcon.js +1 -1
  317. package/dist/icons/PieChartIcon.js +1 -1
  318. package/dist/icons/PlayCircleIcon.js +1 -1
  319. package/dist/icons/PlayIcon.js +1 -1
  320. package/dist/icons/PlusIcon.js +1 -1
  321. package/dist/icons/ProgressBarIcon.js +1 -1
  322. package/dist/icons/ReloadIcon.js +1 -1
  323. package/dist/icons/ReportIcon.js +1 -1
  324. package/dist/icons/ReturnIcon.js +1 -1
  325. package/dist/icons/RightIcon.js +1 -1
  326. package/dist/icons/RowTotalsIcon.js +1 -1
  327. package/dist/icons/SchemeIcon.js +1 -1
  328. package/dist/icons/SearchIcon.js +1 -1
  329. package/dist/icons/SemanticQueryIcon.js +1 -1
  330. package/dist/icons/SettingsIcon.js +1 -1
  331. package/dist/icons/ShieldFilledIcon.js +1 -1
  332. package/dist/icons/ShieldIcon.js +1 -1
  333. package/dist/icons/SlashIcon.js +1 -1
  334. package/dist/icons/SparklesIcon.js +1 -1
  335. package/dist/icons/SqlIcon.js +1 -1
  336. package/dist/icons/StatsIcon.js +1 -1
  337. package/dist/icons/StopIcon.js +1 -1
  338. package/dist/icons/StringIcon.js +1 -1
  339. package/dist/icons/SubtotalsIcon.js +1 -1
  340. package/dist/icons/SwitchIcon.js +1 -1
  341. package/dist/icons/TableIcon.js +1 -1
  342. package/dist/icons/ThumbsDownIcon.js +1 -1
  343. package/dist/icons/ThumbsUpIcon.js +1 -1
  344. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  345. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  346. package/dist/icons/ThunderboltIcon.js +1 -1
  347. package/dist/icons/TimeIcon.js +1 -1
  348. package/dist/icons/TrashIcon.js +1 -1
  349. package/dist/icons/UnlockIcon.js +1 -1
  350. package/dist/icons/UpIcon.js +1 -1
  351. package/dist/icons/UserGroupIcon.js +1 -1
  352. package/dist/icons/UserIcon.js +1 -1
  353. package/dist/icons/UserLockIcon.js +1 -1
  354. package/dist/icons/ViewIcon.js +1 -1
  355. package/dist/icons/WarningFilledIcon.js +1 -1
  356. package/dist/icons/WarningIcon.js +1 -1
  357. package/dist/icons/wrap-icon.js +1 -1
  358. package/dist/index.js +1 -1
  359. package/dist/provider.js +1 -1
  360. package/dist/providers/TrackingProvider.js +1 -1
  361. package/dist/providers/navigationAdapter.default.js +1 -1
  362. package/dist/tokens/base.js +1 -1
  363. package/dist/tokens/colors.js +1 -1
  364. package/dist/tokens/index.js +1 -1
  365. package/dist/tokens/layout.js +1 -1
  366. package/dist/tokens/shadows.js +1 -1
  367. package/dist/tokens/sizes.js +1 -1
  368. package/dist/tokens/spacing.js +1 -1
  369. package/dist/utils/ResizeSensor.js +1 -1
  370. package/dist/utils/is-dev-env.js +1 -1
  371. package/dist/utils/modules.js +1 -1
  372. package/dist/utils/promise.js +1 -1
  373. package/dist/utils/raf.js +1 -1
  374. package/dist/utils/random.js +1 -1
  375. package/dist/utils/range.js +1 -1
  376. package/dist/utils/react/RenderCache.js +1 -1
  377. package/dist/utils/react/Slots.js +1 -1
  378. package/dist/utils/react/chain.js +1 -1
  379. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  380. package/dist/utils/react/index.js +1 -1
  381. package/dist/utils/react/interactions.js +1 -1
  382. package/dist/utils/react/isTextOnly.js +1 -1
  383. package/dist/utils/react/mapProps.js +1 -1
  384. package/dist/utils/react/mergeProps.js +1 -1
  385. package/dist/utils/react/nullableValue.js +1 -1
  386. package/dist/utils/react/resolveIcon.js +1 -1
  387. package/dist/utils/react/sharedStore.js +1 -1
  388. package/dist/utils/react/useCombinedRefs.js +1 -1
  389. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  390. package/dist/utils/react/useEventBus.js +1 -1
  391. package/dist/utils/react/useId.js +1 -1
  392. package/dist/utils/react/useIsDarwin.js +1 -1
  393. package/dist/utils/react/useKeySymbols.js +1 -1
  394. package/dist/utils/react/useLayoutEffect.js +1 -1
  395. package/dist/utils/react/useLocalStorage.js +1 -1
  396. package/dist/utils/react/useMergeStyles.js +1 -1
  397. package/dist/utils/react/useQaProps.js +1 -1
  398. package/dist/utils/react/useViewportSize.js +1 -1
  399. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  400. package/dist/utils/tree.js +1 -1
  401. package/dist/utils/warnings.js +1 -1
  402. package/dist/version.js +2 -2
  403. package/docs/ComplexLayout.md +469 -0
  404. package/docs/CreateComponent.md +410 -0
  405. package/docs/Introduction.md +122 -0
  406. package/docs/RenderCache.md +172 -0
  407. package/docs/Result.md +35 -0
  408. package/docs/SimpleLayout.md +26 -0
  409. package/docs/Typography.md +38 -0
  410. package/docs/components/CollectionItem.md +299 -0
  411. package/docs/components/actions/Banner.md +189 -0
  412. package/docs/components/actions/Button.md +183 -0
  413. package/docs/components/actions/ButtonSplit.md +189 -0
  414. package/docs/components/actions/CommandMenu.md +430 -0
  415. package/docs/components/actions/ItemButton.md +304 -0
  416. package/docs/components/actions/Link.md +325 -0
  417. package/docs/components/actions/Menu.md +509 -0
  418. package/docs/components/actions/use-anchored-menu.md +211 -0
  419. package/docs/components/actions/use-context-menu.md +220 -0
  420. package/docs/components/content/Badge.md +187 -0
  421. package/docs/components/content/Disclosure.md +177 -0
  422. package/docs/components/content/HotKeys.md +352 -0
  423. package/docs/components/content/Item.md +488 -0
  424. package/docs/components/content/ItemCard.md +125 -0
  425. package/docs/components/content/Layout.md +866 -0
  426. package/docs/components/content/Tag.md +156 -0
  427. package/docs/components/content/TextItem.md +211 -0
  428. package/docs/components/fields/Checkbox.md +180 -0
  429. package/docs/components/fields/ComboBox.md +617 -0
  430. package/docs/components/fields/DatePicker.md +231 -0
  431. package/docs/components/fields/FileInput.md +197 -0
  432. package/docs/components/fields/FilterListBox.md +703 -0
  433. package/docs/components/fields/FilterPicker.md +736 -0
  434. package/docs/components/fields/HueSlider.md +175 -0
  435. package/docs/components/fields/ListBox.md +691 -0
  436. package/docs/components/fields/NumberInput.md +184 -0
  437. package/docs/components/fields/PasswordInput.md +218 -0
  438. package/docs/components/fields/Picker.md +884 -0
  439. package/docs/components/fields/RadioGroup.md +314 -0
  440. package/docs/components/fields/SearchInput.md +227 -0
  441. package/docs/components/fields/Select.md +583 -0
  442. package/docs/components/fields/Slider.md +53 -0
  443. package/docs/components/fields/Switch.md +174 -0
  444. package/docs/components/fields/TextArea.md +61 -0
  445. package/docs/components/fields/TextInput.md +204 -0
  446. package/docs/components/fields/TextInputMapper.md +34 -0
  447. package/docs/components/form/Field.md +341 -0
  448. package/docs/components/form/Form.md +455 -0
  449. package/docs/components/form/FormInstance.md +319 -0
  450. package/docs/components/helpers/DisplayTransition.md +259 -0
  451. package/docs/components/helpers/IconSwitch.md +156 -0
  452. package/docs/components/navigation/Tabs.md +704 -0
  453. package/docs/components/overlays/Dialog.md +202 -0
  454. package/docs/components/overlays/DialogContainer.md +201 -0
  455. package/docs/components/overlays/DialogForm.md +290 -0
  456. package/docs/components/overlays/DialogTrigger.md +191 -0
  457. package/docs/components/overlays/Notifications.md +406 -0
  458. package/docs/components/overlays/Toast.md +285 -0
  459. package/docs/components/overlays/Tooltip.md +371 -0
  460. package/docs/components/overlays/UseDialogContainer.md +603 -0
  461. package/package.json +1 -1
  462. package/docs/.gitignore +0 -3
package/docs/Result.md ADDED
@@ -0,0 +1,35 @@
1
+ # Result
2
+
3
+ Used to feed back the results of a series of operational tasks.
4
+
5
+ ## When To Use
6
+
7
+ Use when important operations need to inform the user to process the results and the feedback is more complicated.
8
+
9
+ ## Examples
10
+
11
+ ### Success
12
+
13
+ ### Info
14
+
15
+ ### Warning
16
+
17
+ ### Error
18
+
19
+ ### Custom Icon
20
+
21
+ ### Custom Title
22
+
23
+ ### Compact
24
+
25
+ ## API
26
+
27
+ ## Differences from Ant Design
28
+
29
+ | There are differences | Ant Design property | Cube UIKit property |
30
+ | :-------------------: | :-----------------: | :-----------------: |
31
+ | No | `status` | `status` |
32
+ | No | `title` | `title` |
33
+ | Yes | `subTitle` | `subtitle` |
34
+ | No | `icon` | `icon` |
35
+ | Yes | `extra` | `children` |
@@ -0,0 +1,26 @@
1
+ # Layout examples
2
+
3
+ ## Flow layout
4
+
5
+ Flow Component is used to create gaps between blocks inside block layout.
6
+
7
+ ## Flex layout
8
+
9
+ Use Space Component to create a row or a column of elements.
10
+
11
+ Use Flex Component for more flexible layouts.
12
+
13
+ ## Grid layout
14
+
15
+ Use Grid Component for grid layouts.
16
+
17
+ ### Simple layout with side bar.
18
+
19
+ ```jsx
20
+ <Grid gridColumns="200px 1fr" gridRows="60px 1fr" height="500px">
21
+ <Card gridColumn="1 / -1">Header</Card>
22
+ <Card>Sidebar</Card>
23
+ <Card>Content</Card>
24
+ </Grid>
25
+ ```
26
+
@@ -0,0 +1,38 @@
1
+ # Typography
2
+
3
+ There are many ways to create typography elements like text labels and headings. You can use complete components, presets or low-level styles to get exact text label you want.
4
+
5
+ ## Typography Components
6
+
7
+ ### Headings
8
+
9
+ ### Paragraphs
10
+
11
+ Paragraphs with gaps between them.
12
+
13
+ ### Text labels
14
+
15
+ ### Links
16
+
17
+ Use `!` prefix to open link in new tab.
18
+
19
+ ```jsx
20
+ (
21
+ <Link to="https://cube-uikit-storybook.netlify.app/">
22
+ Open Cube Cloud UI Kit
23
+ </Link>
24
+ ) |
25
+ (
26
+ <Link to="!https://cube-uikit-storybook.netlify.app/">
27
+ Open Cube Cloud UI Kit in new tab
28
+ </Link>
29
+ );
30
+ ```
31
+
32
+ Use `@` prefix to navigate to the new page without using the Router.
33
+
34
+ ```jsx
35
+ <Link to="@">Reload this page</Link> |
36
+ <Link to="@/">Move to the Main Page</Link>;
37
+ ```
38
+
@@ -0,0 +1,299 @@
1
+ # CollectionItem
2
+
3
+ `CollectionItem` is the building block for all collection-based components in the UI Kit, providing a consistent API for list items, menu options, and selectors.
4
+
5
+ ## Used By
6
+
7
+ ListBox, FilterListBox, Select, ComboBox, FilterPicker, Picker, Menu, CommandMenu
8
+
9
+ ## Usage Patterns
10
+
11
+ There are two ways to provide items to collection components:
12
+
13
+ ### Static JSX
14
+
15
+ Define items directly. You **must** provide `key` props:
16
+
17
+ ```jsx live=false
18
+ <ListBox>
19
+ <ListBox.Item key="apple">Apple</ListBox.Item>
20
+ <ListBox.Item key="banana">Banana</ListBox.Item>
21
+ </ListBox>
22
+ ```
23
+
24
+ ### Data-driven (Recommended)
25
+
26
+ **🚨 IMPORTANT:** The `items` prop **must be an array of objects**, where each object contains at least an `id` or `key` property.
27
+
28
+ ```jsx live=false
29
+ // ✅ Correct: Array of objects with id/key
30
+ const items = [
31
+ { id: 'apple', name: 'Apple' },
32
+ { id: 'banana', name: 'Banana' },
33
+ ];
34
+
35
+ <ListBox items={items}>
36
+ {(item) => <ListBox.Item key={item.id}>{item.name}</ListBox.Item>}
37
+ </ListBox>
38
+ ```
39
+
40
+ ```jsx live=false
41
+ // ❌ Wrong: Array of strings won't work
42
+ const items = ['apple', 'banana']; // Don't do this!
43
+
44
+ // ❌ Wrong: Array of primitives won't work
45
+ const items = [1, 2, 3]; // Don't do this!
46
+ ```
47
+
48
+ ## Item Requirements
49
+
50
+ | Property | Required | Type | Purpose |
51
+ |----------|----------|------|---------|
52
+ | `id` or `key` | ✅ **Required** | `string \| number` | Unique identifier - **critical for selection callbacks** |
53
+ | `textValue` | ⚠️ Recommended | `string` | For filtering & accessibility |
54
+
55
+ **Without `id`/`key`:** React Aria falls back to using order-based keys (e.g., `"0"`, `"1"`), which breaks selection functionality in select components as these values are meaningless for identifying specific items.
56
+
57
+ **Without `textValue`:** Falls back to rendered content, then to key/id.
58
+
59
+ ### Rules
60
+
61
+ ```jsx live=false
62
+ // ✅ Using 'id'
63
+ const items = [
64
+ { id: 'apple', name: 'Apple' },
65
+ { id: 'banana', name: 'Banana' },
66
+ ];
67
+
68
+ // ✅ Using 'key'
69
+ const items = [
70
+ { key: 'apple', name: 'Apple' },
71
+ { key: 'banana', name: 'Banana' },
72
+ ];
73
+
74
+ // ✅ Consistent types
75
+ const items = [
76
+ { id: '1', name: 'First' },
77
+ { id: '2', name: 'Second' },
78
+ ];
79
+
80
+ // ✅ Explicit textValue for complex content
81
+ const items = [{
82
+ id: 'user-1',
83
+ firstName: 'John',
84
+ lastName: 'Smith',
85
+ textValue: 'John Smith',
86
+ }];
87
+ ```
88
+
89
+ **Always provide explicit `textValue` for:**
90
+ - Icons/images without text
91
+ - Formatted/complex content
92
+ - Non-readable keys (UUIDs)
93
+ - Searchable components (ComboBox, FilterListBox, FilterPicker, CommandMenu)
94
+
95
+ ## Properties
96
+
97
+ Extends all [Item component](./content/Item.md) props:
98
+
99
+ - `children` - Item content
100
+ - `icon` / `rightIcon` - Icons
101
+ - `prefix` / `suffix` - Additional content
102
+ - `description` - Secondary text
103
+ - `textValue` - Text for filtering/accessibility
104
+ - `onAction` - Action handler (Menu items)
105
+
106
+ ## Examples
107
+
108
+ ### Basic
109
+
110
+ ```jsx live=false
111
+ const permissions = [
112
+ { id: 'read', name: 'Read' },
113
+ { id: 'write', name: 'Write' },
114
+ ];
115
+
116
+ <ListBox items={permissions}>
117
+ {(item) => <ListBox.Item key={item.id}>{item.name}</ListBox.Item>}
118
+ </ListBox>
119
+ ```
120
+
121
+ ### With Icons
122
+
123
+ ```jsx live=false
124
+ import { IconFile, IconFolder } from '@tabler/icons-react';
125
+
126
+ const items = [
127
+ { id: 'file', name: 'File', icon: <IconFile /> },
128
+ { id: 'folder', name: 'Folder', icon: <IconFolder /> },
129
+ ];
130
+
131
+ <Menu items={items}>
132
+ {(item) => <Menu.Item key={item.id} icon={item.icon}>{item.name}</Menu.Item>}
133
+ </Menu>
134
+ ```
135
+
136
+ ### With Descriptions
137
+
138
+ ```jsx live=false
139
+ const users = [
140
+ {
141
+ id: '1',
142
+ name: 'John Smith',
143
+ email: 'john@example.com',
144
+ textValue: 'John Smith john@example.com',
145
+ },
146
+ ];
147
+
148
+ <ComboBox items={users}>
149
+ {(item) => (
150
+ <ComboBox.Item key={item.id} description={item.email}>
151
+ {item.name}
152
+ </ComboBox.Item>
153
+ )}
154
+ </ComboBox>
155
+ ```
156
+
157
+ ### With Sections
158
+
159
+ ```jsx live=false
160
+ <ListBox>
161
+ <ListBox.Section title="Fruits">
162
+ <ListBox.Item key="apple">Apple</ListBox.Item>
163
+ <ListBox.Item key="banana">Banana</ListBox.Item>
164
+ </ListBox.Section>
165
+ <ListBox.Section title="Vegetables">
166
+ <ListBox.Item key="carrot">Carrot</ListBox.Item>
167
+ </ListBox.Section>
168
+ </ListBox>
169
+ ```
170
+
171
+ ### Disabled Items
172
+
173
+ ```jsx live=false
174
+ const items = [
175
+ { id: 'read', name: 'Read' },
176
+ { id: 'write', name: 'Write' },
177
+ { id: 'delete', name: 'Delete', disabled: true },
178
+ ];
179
+
180
+ <ListBox
181
+ items={items}
182
+ disabledKeys={items.filter(i => i.disabled).map(i => i.id)}
183
+ >
184
+ {(item) => <ListBox.Item key={item.id}>{item.name}</ListBox.Item>}
185
+ </ListBox>
186
+ ```
187
+
188
+ ## Best Practices
189
+
190
+ ```jsx live=false
191
+ // ✅ Items must be an array of objects
192
+ const items = [{ id: 'user-1', name: 'John' }];
193
+
194
+ // ✅ Always provide id/key in each object
195
+ const items = [
196
+ { id: 'apple', name: 'Apple' },
197
+ { id: 'banana', name: 'Banana' },
198
+ ];
199
+
200
+ // ✅ Always pass key prop to Item
201
+ <ListBox items={items}>
202
+ {(item) => <ListBox.Item key={item.id}>{item.name}</ListBox.Item>}
203
+ </ListBox>
204
+
205
+ // ✅ Consistent types for id/key
206
+ const items = [
207
+ { id: '1', name: 'First' },
208
+ { id: '2', name: 'Second' },
209
+ ];
210
+
211
+ // ✅ Explicit textValue for complex content
212
+ const items = [{
213
+ id: 'user-1',
214
+ name: 'John Smith',
215
+ textValue: 'John Smith',
216
+ }];
217
+
218
+ // ✅ Memoize large collections
219
+ const items = useMemo(
220
+ () => data.map(d => ({ id: d.id, name: d.name })),
221
+ [data]
222
+ );
223
+
224
+ // ❌ Don't pass array of strings
225
+ const items = ['apple', 'banana']; // Wrong!
226
+
227
+ // ❌ Don't pass array of numbers
228
+ const items = [1, 2, 3]; // Wrong!
229
+
230
+ // ❌ Don't omit key prop
231
+ <ListBox items={items}>
232
+ {(item) => <ListBox.Item>{item.name}</ListBox.Item>}
233
+ </ListBox>
234
+
235
+ // ❌ Don't omit id/key in objects
236
+ const items = [
237
+ { name: 'First' }, // Missing id!
238
+ { name: 'Second' }, // Missing id!
239
+ ];
240
+
241
+ // ❌ Don't mix types
242
+ const items = [
243
+ { id: 1, name: 'First' },
244
+ { id: '2', name: 'Second' },
245
+ ];
246
+ ```
247
+
248
+ ## TypeScript
249
+
250
+ ```tsx live=false
251
+ interface User {
252
+ id: string; // Required!
253
+ name: string;
254
+ textValue?: string;
255
+ }
256
+
257
+ const items: User[] = [
258
+ { id: '1', name: 'John', textValue: 'John' },
259
+ ];
260
+
261
+ <ListBox items={items}>
262
+ {(item: User) => <ListBox.Item key={item.id}>{item.name}</ListBox.Item>}
263
+ </ListBox>
264
+ ```
265
+
266
+ ## Quick Reference
267
+
268
+ | Approach | Key Prop | Source |
269
+ |----------|----------|--------|
270
+ | Static JSX | ✅ Required | Hardcoded value |
271
+ | Data-driven (`items`) | ✅ Required | Pass `item.key` or `item.id` |
272
+ | Using `.map()` | ✅ Required | Pass `item.key` or `item.id` |
273
+
274
+ | Component | Selection | Search |
275
+ |-----------|-----------|--------|
276
+ | ListBox | Single/Multiple | ❌ |
277
+ | FilterListBox | Single/Multiple | ✅ |
278
+ | Select | Single | ❌ |
279
+ | ComboBox | Single | ✅ |
280
+ | FilterPicker | Single/Multiple | ✅ |
281
+ | Picker | Single/Multiple | ❌ |
282
+ | Menu | Single action | ❌ |
283
+ | CommandMenu | Single action | ✅ |
284
+
285
+ ## Essential Rules
286
+
287
+ 1. **🚨 The `items` prop must be an array of objects** - Never pass arrays of strings, numbers, or other primitives. Each object must have an `id` or `key` property.
288
+ 2. **🚨 Always provide `id` or `key` in each object** - Required for selection callbacks to work properly. Without it, React Aria uses order-based keys which are useless in select components.
289
+ 3. **🚨 Always pass `key` prop to Item** - Must explicitly pass `key={item.id}` or `key={item.key}` in the render function
290
+ 4. **Provide explicit `textValue`** - For icons, complex content, or searchable components
291
+ 5. **Use consistent types** - All strings or all numbers, never mixed
292
+
293
+ ## Related Components
294
+
295
+ - [Item](./content/Item.md) - Base item component
296
+ - [ListBox](./fields/ListBox.md) - List with selection
297
+ - [Select](./fields/Select.md) - Dropdown selector
298
+ - [ComboBox](./fields/ComboBox.md) - Searchable input
299
+ - [Menu](./actions/Menu.md) - Action menu
@@ -0,0 +1,189 @@
1
+ # Banner
2
+
3
+ Banner displays prominent messages and notifications to users. It supports different visual themes with appropriate icons and can include action buttons and inline links.
4
+
5
+ ## When to Use
6
+
7
+ - Display system-wide notifications or alerts that require user attention
8
+ - Show billing, subscription, or account status warnings
9
+ - Communicate deployment errors or operational issues
10
+ - Provide contextual information with optional calls-to-action
11
+
12
+ ## Component
13
+
14
+ ---
15
+
16
+ ### Properties
17
+
18
+ ### Base Properties
19
+
20
+ Supports [Base properties](../../tasty/tasty.md)
21
+
22
+ ### Styling Properties
23
+
24
+ #### styles
25
+
26
+ Customizes the root element of the component.
27
+
28
+ **Sub-elements:**
29
+ - `Label` - The main text content area
30
+ - `Actions` - Container for action buttons
31
+
32
+ ### Modifiers
33
+
34
+ The `mods` property accepts the following modifiers you can override:
35
+
36
+ | Modifier | Type | Description |
37
+ |----------|------|-------------|
38
+ | theme | `'danger' \| 'warning' \| 'note' \| 'success'` | Visual theme of the banner |
39
+
40
+ ## Variants
41
+
42
+ ### Themes
43
+
44
+ - `note` (default) - Informational messages, tips, or neutral notifications
45
+ - `warning` - Alerts that require attention but are not critical
46
+ - `danger` - Critical errors or issues that need immediate action
47
+ - `success` - Confirmation of successful operations
48
+
49
+ ## Sub-components
50
+
51
+ ### Banner.Action
52
+
53
+ Action button styled to match the banner's theme. Use for primary calls-to-action.
54
+
55
+ ```jsx
56
+ <Banner theme="warning" actions={<Banner.Action to="/upgrade">Upgrade Plan</Banner.Action>}>
57
+ You are approaching your monthly API request limit.
58
+ </Banner>
59
+ ```
60
+
61
+ ### Banner.Link
62
+
63
+ Inline link styled with white color and underline. Use for links within the banner's text content.
64
+
65
+ ```jsx
66
+ <Banner theme="danger">
67
+ <Banner.Link to="https://docs.example.com">Daily limit</Banner.Link> exceeded.
68
+ Please contact support.
69
+ </Banner>
70
+ ```
71
+
72
+ ## Examples
73
+
74
+ ### Basic Banner
75
+
76
+ ```jsx
77
+ <Banner theme="note">
78
+ Scheduled maintenance will occur on Sunday at 2:00 AM UTC.
79
+ </Banner>
80
+ ```
81
+
82
+ ### Dismissible Banner
83
+
84
+ ```jsx
85
+ <Banner theme="success" isDismissable onDismiss={() => console.log('Dismissed')}>
86
+ Your deployment has been successfully updated.
87
+ </Banner>
88
+ ```
89
+
90
+ ### Banner with Actions
91
+
92
+ ```jsx
93
+ <Banner
94
+ theme="danger"
95
+ actions={
96
+ <>
97
+ <Banner.Action to="/billing">Go to Billing</Banner.Action>
98
+ <Banner.Action onPress={() => openChat()}>Contact us</Banner.Action>
99
+ </>
100
+ }
101
+ >
102
+ Your account has been suspended due to payment failure.
103
+ </Banner>
104
+ ```
105
+
106
+ ### Banner with Inline Links
107
+
108
+ ```jsx
109
+ <Banner theme="warning" actions={<Banner.Action>Upgrade tier</Banner.Action>}>
110
+ The selected time range exceeds{' '}
111
+ <Banner.Link to="https://docs.example.com/retention">
112
+ the retention period
113
+ </Banner.Link>
114
+ . To extend this period, please upgrade or contact us.
115
+ </Banner>
116
+ ```
117
+
118
+ ### Stacked Banners
119
+
120
+ Use `shape="sharp"` when stacking multiple banners to remove gaps between them.
121
+
122
+ ```jsx
123
+ <Flex flow="column">
124
+ <Banner theme="danger" shape="sharp">Critical alert</Banner>
125
+ <Banner theme="warning" shape="sharp">Warning message</Banner>
126
+ <Banner theme="note" shape="sharp">Information</Banner>
127
+ </Flex>
128
+ ```
129
+
130
+ ### Custom Icon
131
+
132
+ ```jsx
133
+ import { IconBell } from '@tabler/icons-react';
134
+
135
+ <Banner theme="note" icon={<IconBell />} isDismissable>
136
+ You have new notifications.
137
+ </Banner>
138
+ ```
139
+
140
+ ## Accessibility
141
+
142
+ ### Keyboard Navigation
143
+
144
+ - `Tab` - Moves focus to action buttons within the banner
145
+ - `Space/Enter` - Activates focused action button or dismiss button
146
+
147
+ ### Screen Reader Support
148
+
149
+ - Banner has `role="status"` to announce content changes
150
+ - Dismiss button includes tooltip "Hide banner" for accessibility
151
+
152
+ ### ARIA Properties
153
+
154
+ - `role="status"` - Announces the banner as a status message
155
+ - Action buttons inherit proper focus management from Item.Action
156
+
157
+ ## Best Practices
158
+
159
+ 1. **Do**: Use appropriate theme for the message severity
160
+
161
+ ```jsx
162
+ <Banner theme="danger">Critical error requiring immediate action</Banner>
163
+ <Banner theme="warning">Warning that needs attention</Banner>
164
+ <Banner theme="note">Informational message</Banner>
165
+ <Banner theme="success">Success confirmation</Banner>
166
+ ```
167
+
168
+ 2. **Do**: Keep banner messages concise and actionable
169
+
170
+ ```jsx
171
+ <Banner theme="warning" actions={<Banner.Action>Upgrade</Banner.Action>}>
172
+ API usage at 85% of monthly limit.
173
+ </Banner>
174
+ ```
175
+
176
+ 3. **Don't**: Use banners for non-important information that doesn't need prominent display
177
+
178
+ 4. **Do**: Use Banner.Link for inline links within content, Banner.Action for buttons
179
+
180
+ ```jsx
181
+ <Banner theme="danger" actions={<Banner.Action>Contact us</Banner.Action>}>
182
+ <Banner.Link to="/docs/limits">Daily limit</Banner.Link> exceeded.
183
+ </Banner>
184
+ ```
185
+
186
+ ## Related Components
187
+
188
+ - [Item](../content/Item.md) - Base component that Banner extends
189
+ - ItemAction - Action button component used by Banner.Action