@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
@@ -1,4 +1,4 @@
1
- /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-c210a8c | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-60981ef | 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-c210a8c | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-60981ef | 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-c210a8c | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-60981ef | 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-c210a8c | Cube Dev Team */
1
+ /** @license MIT | @cube-dev/ui-kit v0.0.0-canary-60981ef | Cube Dev Team */
2
2
  //#region src/version.ts
3
- const VERSION = "0.0.0-canary-c210a8c";
3
+ const VERSION = "0.0.0-canary-60981ef";
4
4
  if (typeof window !== "undefined") {
5
5
  const version = VERSION;
6
6
  window.CubeUIKit = window.CubeUIKit || { version };
@@ -0,0 +1,469 @@
1
+ # Layout Guide
2
+
3
+ This guide covers how to create layouts using the `Layout` component and its sub-components.
4
+
5
+ > **See also:** [Layout API Reference](./components/content/Layout.md) for detailed props documentation.
6
+
7
+ ## Introduction
8
+
9
+ The `Layout` component provides a structured way to build application layouts with headers, footers, sidebars, and content areas. It handles:
10
+
11
+ - **Overflow management** - Content scrolls properly without breaking the layout
12
+ - **Panel coordination** - Side panels automatically adjust the main content area
13
+ - **Flexible composition** - Mix and match sub-components for any layout pattern
14
+
15
+ ### Two-Element Architecture
16
+
17
+ Internally, Layout uses a wrapper + inner content model. The outer wrapper has `overflow: hidden` while an inner element uses absolute positioning with insets that adjust based on panel sizes. This ensures:
18
+
19
+ - Content never overflows the layout bounds
20
+ - Panels automatically push the content area without overlapping
21
+ - Scrolling is contained within each content area
22
+
23
+ ## Basic Layouts
24
+
25
+ ### Header + Content + Footer
26
+
27
+ A typical layout with header, scrollable content area, and footer.
28
+
29
+ ```jsx live=false
30
+ <Layout height="300px"> {/* block, Inner: flex column ↓ */}
31
+ <Layout.Header title="Dashboard" />
32
+ <Layout.Content> {/* flex column ↓, scrollable, fills remaining space */}
33
+ <Text>Content between header and footer</Text>
34
+ </Layout.Content>
35
+ <Layout.Footer> {/* flex row →, space-between */}
36
+ <Text>Status: Ready</Text>
37
+ <Button type="primary">Save</Button>
38
+ </Layout.Footer>
39
+ </Layout>
40
+ ```
41
+
42
+ ## Navigation Patterns
43
+
44
+ ### Sidebar Layout
45
+
46
+ Use `Layout.Panel` for side navigation. Panels are absolutely positioned and automatically adjust the content area insets.
47
+
48
+ ```jsx live=false
49
+ <Layout height="400px"> {/* block, Inner: flex column ↓ */}
50
+ <Layout.Panel side="left" size={200} isOpen={isOpen}> {/* absolute left, pushes content via insets */}
51
+ <Layout.PanelHeader isClosable title="Menu" onClose={() => setIsOpen(false)} />
52
+ <Layout.Content padding=".5x" gap="1bw"> {/* flex column ↓, scrollable */}
53
+ <ItemButton type="neutral">Dashboard</ItemButton>
54
+ <ItemButton type="neutral">Settings</ItemButton>
55
+ </Layout.Content>
56
+ </Layout.Panel>
57
+ <Layout.Toolbar> {/* flex row →, single item aligns left */}
58
+ <Button onPress={() => setIsOpen(!isOpen)}>Toggle Menu</Button>
59
+ </Layout.Toolbar>
60
+ <Layout.Content> {/* flex column ↓, scrollable, fills remaining space */}
61
+ <Text>Main content area</Text>
62
+ </Layout.Content>
63
+ </Layout>
64
+ ```
65
+
66
+ **Key props:**
67
+ - `side` - Panel position: `"left"`, `"right"`, `"top"`, `"bottom"`
68
+ - `size` - Panel width (for left/right) or height (for top/bottom)
69
+ - `isOpen` / `onOpenChange` - Control panel visibility
70
+
71
+ ### Resizable Panel
72
+
73
+ Add `isResizable` to allow users to resize the panel.
74
+
75
+ ```jsx live=false
76
+ <Layout.Panel
77
+ isResizable
78
+ side="left" {/* absolute left, pushes content via insets */}
79
+ size={size}
80
+ minSize={150}
81
+ maxSize={400}
82
+ onSizeChange={setSize}
83
+ >
84
+ {/* Panel content */}
85
+ </Layout.Panel>
86
+ ```
87
+
88
+ **Resize behavior:**
89
+ - Drag the edge handle to resize
90
+ - Double-click the handle to reset to default size
91
+ - Use `minSize` and `maxSize` to constrain resize range
92
+
93
+ ### Persistent Panel Size
94
+
95
+ Use `sizeStorageKey` to persist the panel size in localStorage. The size will be restored automatically when the component mounts.
96
+
97
+ ```jsx live=false
98
+ <Layout.Panel
99
+ isResizable
100
+ side="left" {/* absolute left, pushes content via insets */}
101
+ sizeStorageKey="my-app-sidebar-size"
102
+ defaultSize={250}
103
+ minSize={150}
104
+ maxSize={400}
105
+ >
106
+ {/* Panel content */}
107
+ </Layout.Panel>
108
+ ```
109
+
110
+ **Notes:**
111
+ - The `sizeStorageKey` must be unique across your application
112
+ - Size is persisted after drag operations complete
113
+ - Double-clicking to reset also updates the stored value
114
+ - If no stored value exists, `defaultSize` is used
115
+
116
+ ## Toolbar Patterns
117
+
118
+ ### Left/Right Toolbar
119
+
120
+ `Layout.Toolbar` uses `space-between` alignment, placing first and last children at opposite ends.
121
+
122
+ ```jsx live=false
123
+ <Layout.Toolbar> {/* flex row →, space-between */}
124
+ <Title level={4}>App Name</Title> {/* left (first item) */}
125
+ <Button type="primary">Action</Button> {/* right (last item) */}
126
+ </Layout.Toolbar>
127
+ ```
128
+
129
+ ### Left/Center/Right Toolbar
130
+
131
+ Use `Space` components to create three sections.
132
+
133
+ ```jsx live=false
134
+ <Layout.Toolbar> {/* flex row →, space-between */}
135
+ <Space> {/* flex row → */}
136
+ <Button>Back</Button>
137
+ </Space>
138
+ <Title level={4}>Page Title</Title>{/* center (middle item) */}
139
+ <Space> {/* flex row → */}
140
+ <Button>Help</Button>
141
+ <Button type="primary">Save</Button>
142
+ </Space>
143
+ </Layout.Toolbar>
144
+ ```
145
+
146
+ ## Header Patterns
147
+
148
+ ### Header with Breadcrumbs
149
+
150
+ `Layout.Header` supports breadcrumbs, subtitle, and extra content.
151
+
152
+ ```jsx live=false
153
+ <Layout.Header {/* grid with named areas: breadcrumbs/title/suffix/extra/subtitle */}
154
+ title="User Details"
155
+ breadcrumbs={[
156
+ ['Home', '/'],
157
+ ['Users', '/users'],
158
+ ]}
159
+ extra={ {/* right side (extra area) */}
160
+ <Space> {/* flex row → */}
161
+ <Button>Edit</Button>
162
+ <Button type="primary">Save</Button>
163
+ </Space>
164
+ }
165
+ />
166
+ ```
167
+
168
+ **Header props:**
169
+ - `title` - Page title
170
+ - `subtitle` - Text below the title
171
+ - `breadcrumbs` - Array of `[label, href]` tuples
172
+ - `extra` - Content on the right side
173
+ - `suffix` - Content next to the title
174
+ - `level` - Heading level (1-6)
175
+
176
+ ## Footer Patterns
177
+
178
+ ### Footer with Actions
179
+
180
+ Use `invertOrder` to place primary actions on the right.
181
+
182
+ ```jsx live=false
183
+ <Layout.Footer invertOrder> {/* flex row-reverse ←, space-between */}
184
+ <Button.Group flow="row-reverse"> {/* flex row-reverse ← */}
185
+ <Button type="primary">Submit</Button>
186
+ <Button>Cancel</Button>
187
+ </Button.Group>
188
+ <Text preset="t4" color="#dark-03">Draft saved</Text> {/* left side due to row-reverse */}
189
+ </Layout.Footer>
190
+ ```
191
+
192
+ ## Panel Patterns
193
+
194
+ ### Panel Modes
195
+
196
+ Panels support four rendering modes via the `mode` prop:
197
+
198
+ | Mode | Content Push | Overlay | Description |
199
+ |------|--------------|---------|-------------|
200
+ | `default` | Yes | No | Standard panel, pushes content |
201
+ | `sticky` | No | No | Floats over content |
202
+ | `overlay` | Yes | Yes | With dismissable backdrop |
203
+ | `dialog` | No | Dialog | Renders as modal dialog |
204
+
205
+ ### Sticky Panel
206
+
207
+ Panels with `mode="sticky"` float over content without pushing it aside.
208
+
209
+ ```jsx live=false
210
+ <Layout.Panel
211
+ mode="sticky" {/* absolute, does NOT push content */}
212
+ side="right"
213
+ size={260}
214
+ isOpen={isOpen}
215
+ onOpenChange={setIsOpen}
216
+ >
217
+ <Layout.PanelHeader isClosable title="Quick Actions" onClose={() => setIsOpen(false)} />
218
+ <Layout.Content>
219
+ <Text>Floating panel content</Text>
220
+ </Layout.Content>
221
+ </Layout.Panel>
222
+ ```
223
+
224
+ ### Overlay Panel
225
+
226
+ Panels with `mode="overlay"` show a backdrop and dismiss on:
227
+ - Clicking the backdrop
228
+ - Pressing Escape anywhere in the Layout
229
+ - Moving focus to the main content area
230
+
231
+ ```jsx live=false
232
+ <Layout.Panel
233
+ mode="overlay" {/* absolute, backdrop behind panel */}
234
+ side="right"
235
+ size={300}
236
+ isOpen={isOpen}
237
+ onOpenChange={setIsOpen}
238
+ overlayStyles={{ fill: '#dark.5' }} {/* optional custom backdrop */}
239
+ >
240
+ <Layout.PanelHeader isClosable title="Details" onClose={() => setIsOpen(false)} />
241
+ <Layout.Content>
242
+ <Text>Panel with backdrop overlay</Text>
243
+ </Layout.Content>
244
+ </Layout.Panel>
245
+ ```
246
+
247
+ Set `isDismissable={false}` to prevent automatic dismissal.
248
+
249
+ ### Dialog Mode Panel
250
+
251
+ Panels with `mode="dialog"` render as a modal dialog instead of inline.
252
+
253
+ ```jsx live=false
254
+ <Layout.Panel
255
+ mode="dialog" {/* renders as modal overlay instead of inline */}
256
+ side="left"
257
+ size={300}
258
+ isDialogOpen={isOpen}
259
+ onDialogOpenChange={setIsOpen}
260
+ >
261
+ <Layout.PanelHeader isClosable title="Settings" onClose={() => setIsOpen(false)} />
262
+ <Layout.Content> {/* flex column ↓, scrollable */}
263
+ <Text>Panel content as dialog overlay</Text>
264
+ </Layout.Content>
265
+ </Layout.Panel>
266
+ ```
267
+
268
+ **Use cases:**
269
+ - Mobile-responsive layouts where sidebars become modal dialogs
270
+ - Settings panels that need full focus
271
+ - Any panel that should overlay rather than push content
272
+
273
+ ## Pane Patterns
274
+
275
+ ### Resizable Panes
276
+
277
+ `Layout.Pane` creates inline resizable sections that participate in the flex flow (unlike `Panel` which is absolutely positioned).
278
+
279
+ ```jsx live=false
280
+ <Layout.Flex> {/* flex row →, scrollable */}
281
+ <Layout.Pane
282
+ isResizable
283
+ resizeEdge="right" {/* inline in flex flow, not absolute */}
284
+ size={leftSize}
285
+ minSize={120}
286
+ maxSize={350}
287
+ onSizeChange={setLeftSize}
288
+ >
289
+ <Title level={5}>Left Pane</Title>
290
+ </Layout.Pane>
291
+ <Layout.Content width="min 150px"> {/* flex column ↓, scrollable, fills remaining space */}
292
+ <Title level={5}>Content</Title>
293
+ </Layout.Content>
294
+ </Layout.Flex>
295
+ ```
296
+
297
+ **Panel vs Pane:**
298
+
299
+ | Feature | Panel | Pane |
300
+ |---------|-------|------|
301
+ | Position | Absolute (overlays layout) | Inline (participates in flex) |
302
+ | Use case | Sidebars, drawers | Split views, code editors |
303
+ | Content adjustment | Pushes content via insets | Takes space in flex container |
304
+ | `resizeEdge` | Based on `side` prop | `"right"` or `"bottom"` |
305
+
306
+ ## Advanced Patterns
307
+
308
+ ### Nested Layouts
309
+
310
+ Layouts can be nested for complex structures.
311
+
312
+ ```jsx live=false
313
+ <Layout height="400px"> {/* block, Inner: flex column ↓ */}
314
+ <Layout.Header title="Outer Layout" />
315
+ <Layout flow="row"> {/* block, Inner: flex row → */}
316
+ <Layout width="180px" border="right"> {/* block, Inner: flex column ↓ */}
317
+ <Layout.Content>Sidebar</Layout.Content> {/* flex column ↓, scrollable */}
318
+ </Layout>
319
+ <Layout> {/* block, Inner: flex column ↓ */}
320
+ <Layout.Toolbar>Inner Toolbar</Layout.Toolbar> {/* flex row →, single item aligns left */}
321
+ <Layout.Content>Inner content</Layout.Content> {/* flex column ↓, scrollable */}
322
+ </Layout>
323
+ </Layout>
324
+ </Layout>
325
+ ```
326
+
327
+ ### Grid Dashboard
328
+
329
+ Use `Layout.Grid` for grid-based layouts.
330
+
331
+ ```jsx live=false
332
+ <Layout.Grid {/* grid 2×2, scrollable */}
333
+ columns="repeat(2, 1fr)"
334
+ rows="repeat(2, 1fr)"
335
+ gap="1x"
336
+ padding="1x"
337
+ >
338
+ <Card>Metrics</Card> {/* grid cell 1,1 */}
339
+ <Card>Charts</Card> {/* grid cell 1,2 */}
340
+ <Card>Activity</Card> {/* grid cell 2,1 */}
341
+ <Card>Stats</Card> {/* grid cell 2,2 */}
342
+ </Layout.Grid>
343
+ ```
344
+
345
+ ### Container Layout
346
+
347
+ Use `Layout.Container` for content that should be horizontally centered with a constrained max-width. Ideal for articles, forms, and focused content.
348
+
349
+ ```jsx live=false
350
+ <Layout.Container> {/* flex column ↓, scrollable, horizontally centered */}
351
+ <Title>Article Title</Title> {/* constrained width: min 40x, max 120x */}
352
+ <Text>Content is centered with a comfortable reading width.</Text>
353
+ <Space>
354
+ <Button>Previous</Button>
355
+ <Button type="primary">Next</Button>
356
+ </Space>
357
+ </Layout.Container>
358
+ ```
359
+
360
+ **Use cases:**
361
+ - Article or documentation pages
362
+ - Forms and settings pages
363
+ - Any content that benefits from constrained width
364
+
365
+ ### Center Layout
366
+
367
+ Use `Layout.Center` for content that should be centered both horizontally and vertically. Ideal for empty states, loading screens, and hero sections.
368
+
369
+ ```jsx live=false
370
+ <Layout.Center> {/* flex column ↓, scrollable, centered both axes */}
371
+ <Title>No Results Found</Title> {/* text-align: center by default */}
372
+ <Text>Try adjusting your search criteria.</Text>
373
+ <Button type="primary">Clear Filters</Button>
374
+ </Layout.Center>
375
+ ```
376
+
377
+ **Use cases:**
378
+ - Empty states ("No items found")
379
+ - Loading screens
380
+ - Welcome/onboarding screens
381
+ - Error pages (404, 500)
382
+
383
+ ### When to Use Container vs Center
384
+
385
+ | Use Case | Component |
386
+ |----------|-----------|
387
+ | Article/documentation content | `Layout.Container` |
388
+ | Forms with top-aligned content | `Layout.Container` |
389
+ | Empty states | `Layout.Center` |
390
+ | Loading/splash screens | `Layout.Center` |
391
+ | Error pages | `Layout.Center` |
392
+
393
+ ## Using Space Component
394
+
395
+ `Space` is a simple flex wrapper for arranging elements inline.
396
+
397
+ ```jsx live=false
398
+ // Horizontal (default)
399
+ <Space gap="1x"> {/* flex row → */}
400
+ <Button>One</Button>
401
+ <Button>Two</Button>
402
+ </Space>
403
+
404
+ // Vertical
405
+ <Space direction="vertical" gap="1x">{/* flex column ↓ */}
406
+ <Button>One</Button>
407
+ <Button>Two</Button>
408
+ </Space>
409
+ ```
410
+
411
+ ### When to Use Space vs Layout.Flex
412
+
413
+ | Use Case | Component |
414
+ |----------|-----------|
415
+ | Inline button groups | `Space` |
416
+ | Quick horizontal/vertical arrangement | `Space` |
417
+ | Scrollable flex container | `Layout.Flex` |
418
+ | Part of Layout structure | `Layout.Flex` |
419
+ | Standalone flex wrapper | `Space` |
420
+
421
+ ## Sub-Components Reference
422
+
423
+ | Component | Purpose |
424
+ |-----------|---------|
425
+ | `Layout` | Root wrapper, provides context |
426
+ | `Layout.Content` | Scrollable content area, fills available space |
427
+ | `Layout.Container` | Horizontally centered content with constrained width |
428
+ | `Layout.Center` | Centered content (both axes) with text-align center |
429
+ | `Layout.Header` | Page header with title, breadcrumbs, actions |
430
+ | `Layout.Footer` | Footer bar, typically for actions |
431
+ | `Layout.Toolbar` | Horizontal bar with space-between layout |
432
+ | `Layout.Panel` | Side panel with modes: default, sticky, overlay, dialog |
433
+ | `Layout.PanelHeader` | Header for panels with close button |
434
+ | `Layout.Pane` | Inline resizable section |
435
+ | `Layout.Flex` | Scrollable flex container |
436
+ | `Layout.Grid` | Scrollable grid container |
437
+ | `Layout.Block` | Simple block container |
438
+
439
+ ## Common Props
440
+
441
+ ### Layout
442
+
443
+ - `height` - Layout height (required for proper containment)
444
+ - `contentPadding` - Default padding for content areas
445
+ - `hasTransition` - Enable slide animations for panels
446
+ - `flow` - Flex direction for inner content
447
+
448
+ ### Content Components
449
+
450
+ All content components (`Content`, `Header`, `Footer`, `Toolbar`, `Flex`, `Grid`) support:
451
+
452
+ - `padding` - Inner padding
453
+ - `scrollbar` - Scrollbar style: `"default"`, `"thin"`, `"tiny"`, `"none"`
454
+ - `gap` - Gap between children
455
+
456
+ ## Recommended Topics
457
+
458
+ The following topics would be valuable additions to this documentation:
459
+
460
+ 1. **Responsive Layouts** - Media query patterns for adapting layouts to different screen sizes
461
+ 2. **Animation Patterns** - Using `hasTransition` effectively, custom transition timing
462
+ 3. **Keyboard Navigation** - Focus management within layouts, panel accessibility
463
+ 4. **State Persistence** - Panel sizes can be persisted using `sizeStorageKey` (see Persistent Panel Size). Open states could be added similarly.
464
+ 5. **Performance Optimization** - Best practices for large content areas, virtualization
465
+ 6. **Testing Layouts** - Strategies for testing layout components
466
+ 7. **Integration with Router** - Layouts with route-based content switching
467
+ 8. **Dark Mode Support** - Theme-aware layout styling
468
+ 9. **Print Layouts** - Adapting layouts for print media
469
+ 10. **Mobile Patterns** - Touch interactions, swipe gestures for panels