@cube-dev/ui-kit 0.121.0 → 0.121.2

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 (516) hide show
  1. package/dist/CHANGELOG.md +12 -0
  2. package/dist/_internal/hooks/use-chained-callback.js +1 -1
  3. package/dist/_internal/hooks/use-debounced-value.js +1 -1
  4. package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
  5. package/dist/_internal/hooks/use-event.js +1 -1
  6. package/dist/_internal/hooks/use-is-first-render.js +1 -1
  7. package/dist/_internal/hooks/use-sync-ref.js +1 -1
  8. package/dist/_internal/hooks/use-timer/timer.js +1 -1
  9. package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
  10. package/dist/_internal/hooks/use-warn.js +1 -1
  11. package/dist/components/Block.js +1 -1
  12. package/dist/components/CollectionItem.js +1 -1
  13. package/dist/components/GlobalStyles.js +1 -1
  14. package/dist/components/GridProvider.js +1 -1
  15. package/dist/components/HiddenInput.js +1 -1
  16. package/dist/components/Root.js +1 -1
  17. package/dist/components/actions/Action/Action.js +1 -1
  18. package/dist/components/actions/Banner/Banner.js +1 -1
  19. package/dist/components/actions/Button/Button.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-anchored-menu.js +1 -1
  40. package/dist/components/actions/use-context-menu.js +1 -1
  41. package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
  42. package/dist/components/content/Alert/Alert.js +1 -1
  43. package/dist/components/content/Alert/use-alert.js +1 -1
  44. package/dist/components/content/Avatar/Avatar.js +1 -1
  45. package/dist/components/content/Badge/Badge.js +1 -1
  46. package/dist/components/content/Card/Card.js +1 -1
  47. package/dist/components/content/Content.js +1 -1
  48. package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
  49. package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
  50. package/dist/components/content/Disclosure/Disclosure.js +1 -1
  51. package/dist/components/content/Divider.js +1 -1
  52. package/dist/components/content/Footer.js +1 -1
  53. package/dist/components/content/Header.js +1 -1
  54. package/dist/components/content/HotKeys/HotKeys.js +1 -1
  55. package/dist/components/content/Item/Item.js +1 -1
  56. package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
  57. package/dist/components/content/ItemCard/ItemCard.js +1 -1
  58. package/dist/components/content/Layout/GridLayout.js +1 -1
  59. package/dist/components/content/Layout/Layout.js +1 -1
  60. package/dist/components/content/Layout/LayoutBlock.js +1 -1
  61. package/dist/components/content/Layout/LayoutCenter.js +1 -1
  62. package/dist/components/content/Layout/LayoutContainer.js +1 -1
  63. package/dist/components/content/Layout/LayoutContent.js +1 -1
  64. package/dist/components/content/Layout/LayoutContext.js +1 -1
  65. package/dist/components/content/Layout/LayoutFlex.js +1 -1
  66. package/dist/components/content/Layout/LayoutFooter.js +1 -1
  67. package/dist/components/content/Layout/LayoutGrid.js +1 -1
  68. package/dist/components/content/Layout/LayoutHeader.js +1 -1
  69. package/dist/components/content/Layout/LayoutPane.js +1 -1
  70. package/dist/components/content/Layout/LayoutPanel.js +1 -1
  71. package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
  72. package/dist/components/content/Layout/LayoutToolbar.js +1 -1
  73. package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
  74. package/dist/components/content/Layout/index.js +1 -1
  75. package/dist/components/content/Layout/utils.js +1 -1
  76. package/dist/components/content/Paragraph.js +1 -1
  77. package/dist/components/content/Placeholder/Placeholder.js +1 -1
  78. package/dist/components/content/PrismCode/PrismCode.js +1 -1
  79. package/dist/components/content/PrismCode/prismSetup.js +1 -1
  80. package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
  81. package/dist/components/content/Result/Result.js +1 -1
  82. package/dist/components/content/Skeleton/Skeleton.js +1 -1
  83. package/dist/components/content/Tag/Tag.js +1 -1
  84. package/dist/components/content/Text.js +1 -1
  85. package/dist/components/content/TextItem/TextItem.js +1 -1
  86. package/dist/components/content/Title.js +1 -1
  87. package/dist/components/content/highlightText.js +1 -1
  88. package/dist/components/content/use-auto-tooltip.js +1 -1
  89. package/dist/components/fields/Checkbox/Checkbox.js +1 -1
  90. package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
  91. package/dist/components/fields/Checkbox/context.js +1 -1
  92. package/dist/components/fields/ComboBox/ComboBox.js +1 -1
  93. package/dist/components/fields/DatePicker/DateInput.js +1 -1
  94. package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
  95. package/dist/components/fields/DatePicker/DatePicker.js +1 -1
  96. package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
  97. package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
  98. package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
  99. package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
  100. package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
  101. package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
  102. package/dist/components/fields/DatePicker/TimeInput.js +1 -1
  103. package/dist/components/fields/DatePicker/intl.js +1 -1
  104. package/dist/components/fields/DatePicker/parseDate.js +1 -1
  105. package/dist/components/fields/DatePicker/props.js +1 -1
  106. package/dist/components/fields/DatePicker/utils.js +1 -1
  107. package/dist/components/fields/FileInput/FileInput.js +1 -1
  108. package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
  109. package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
  110. package/dist/components/fields/Input/Input.js +1 -1
  111. package/dist/components/fields/ListBox/ListBox.js +1 -1
  112. package/dist/components/fields/NumberInput/NumberInput.js +1 -1
  113. package/dist/components/fields/NumberInput/StepButton.js +1 -1
  114. package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
  115. package/dist/components/fields/Picker/Picker.js +1 -1
  116. package/dist/components/fields/RadioGroup/Radio.js +1 -1
  117. package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
  118. package/dist/components/fields/RadioGroup/context.js +1 -1
  119. package/dist/components/fields/SearchInput/SearchInput.js +1 -1
  120. package/dist/components/fields/Select/Select.d.ts +8 -2
  121. package/dist/components/fields/Select/Select.js +1 -1
  122. package/dist/components/fields/Select/Select.js.map +1 -1
  123. package/dist/components/fields/Slider/Gradation.js +1 -1
  124. package/dist/components/fields/Slider/HueSlider.js +1 -1
  125. package/dist/components/fields/Slider/RangeSlider.js +1 -1
  126. package/dist/components/fields/Slider/Slider.js +1 -1
  127. package/dist/components/fields/Slider/SliderBase.js +1 -1
  128. package/dist/components/fields/Slider/SliderThumb.js +1 -1
  129. package/dist/components/fields/Slider/SliderTrack.js +1 -1
  130. package/dist/components/fields/Slider/elements.js +1 -1
  131. package/dist/components/fields/Slider/index.js +1 -1
  132. package/dist/components/fields/Switch/Switch.js +1 -1
  133. package/dist/components/fields/TextArea/TextArea.js +1 -1
  134. package/dist/components/fields/TextInput/TextInput.js +1 -1
  135. package/dist/components/fields/TextInput/TextInputBase.js +1 -1
  136. package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
  137. package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
  138. package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
  139. package/dist/components/form/Form/Field.js +1 -1
  140. package/dist/components/form/Form/Form.js +1 -1
  141. package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
  142. package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
  143. package/dist/components/form/Form/SubmitError.js +1 -1
  144. package/dist/components/form/Form/index.js +1 -1
  145. package/dist/components/form/Form/use-field/use-field-props.js +1 -1
  146. package/dist/components/form/Form/use-field/use-field.js +1 -1
  147. package/dist/components/form/Form/use-form.js +1 -1
  148. package/dist/components/form/Form/validation.js +1 -1
  149. package/dist/components/form/Label.js +1 -1
  150. package/dist/components/form/wrapper.js +1 -1
  151. package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
  152. package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
  153. package/dist/components/layout/Flex.js +1 -1
  154. package/dist/components/layout/Flow.js +1 -1
  155. package/dist/components/layout/Grid.js +1 -1
  156. package/dist/components/layout/Panel.js +1 -1
  157. package/dist/components/layout/Prefix.js +1 -1
  158. package/dist/components/layout/ResizablePanel.js +1 -1
  159. package/dist/components/layout/Space.js +1 -1
  160. package/dist/components/layout/Suffix.js +1 -1
  161. package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
  162. package/dist/components/navigation/Tabs/EditableTitle.js +1 -1
  163. package/dist/components/navigation/Tabs/TabButton.js +1 -1
  164. package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
  165. package/dist/components/navigation/Tabs/TabPanel.js +1 -1
  166. package/dist/components/navigation/Tabs/TabPicker.js +1 -1
  167. package/dist/components/navigation/Tabs/Tabs.js +1 -1
  168. package/dist/components/navigation/Tabs/TabsAction.js +1 -1
  169. package/dist/components/navigation/Tabs/TabsContext.js +1 -1
  170. package/dist/components/navigation/Tabs/styled.js +1 -1
  171. package/dist/components/navigation/Tabs/types.js +1 -1
  172. package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
  173. package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
  174. package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
  175. package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
  176. package/dist/components/other/Calendar/Calendar.js +1 -1
  177. package/dist/components/other/Calendar/CalendarCell.js +1 -1
  178. package/dist/components/other/Calendar/CalendarGrid.js +1 -1
  179. package/dist/components/other/Calendar/RangeCalendar.js +1 -1
  180. package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
  181. package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
  182. package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
  183. package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
  184. package/dist/components/overlays/Dialog/Dialog.js +1 -1
  185. package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
  186. package/dist/components/overlays/Dialog/DialogForm.js +1 -1
  187. package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
  188. package/dist/components/overlays/Dialog/context.js +1 -1
  189. package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
  190. package/dist/components/overlays/Modal/Modal.js +1 -1
  191. package/dist/components/overlays/Modal/OpenTransition.js +1 -1
  192. package/dist/components/overlays/Modal/Overlay.js +1 -1
  193. package/dist/components/overlays/Modal/Popover.js +1 -1
  194. package/dist/components/overlays/Modal/Tray.js +1 -1
  195. package/dist/components/overlays/Modal/Underlay.js +1 -1
  196. package/dist/components/overlays/Notifications/Notification.js +1 -1
  197. package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
  198. package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
  199. package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
  200. package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
  201. package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
  202. package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
  203. package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
  204. package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
  205. package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
  206. package/dist/components/overlays/Notifications/index.js +1 -1
  207. package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
  208. package/dist/components/overlays/Notifications/use-notifications.js +1 -1
  209. package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
  210. package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
  211. package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
  212. package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
  213. package/dist/components/overlays/Toast/ToastItem.js +1 -1
  214. package/dist/components/overlays/Toast/index.js +1 -1
  215. package/dist/components/overlays/Toast/useProgressToast.js +1 -1
  216. package/dist/components/overlays/Toast/useToast.js +1 -1
  217. package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
  218. package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
  219. package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
  220. package/dist/components/overlays/Tooltip/context.js +1 -1
  221. package/dist/components/portal/Portal.js +1 -1
  222. package/dist/components/portal/PortalProvider.js +1 -1
  223. package/dist/components/portal/usePortal.js +1 -1
  224. package/dist/components/shared/InvalidIcon.js +1 -1
  225. package/dist/components/shared/ValidIcon.js +1 -1
  226. package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
  227. package/dist/components/status/Spin/Cube.js +1 -1
  228. package/dist/components/status/Spin/InternalSpinner.js +1 -1
  229. package/dist/components/status/Spin/Spin.js +1 -1
  230. package/dist/components/status/Spin/SpinsContainer.js +1 -1
  231. package/dist/data/item-themes.js +1 -1
  232. package/dist/data/themes.js +1 -1
  233. package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
  234. package/dist/icons/AdjustmentsIcon.js +1 -1
  235. package/dist/icons/AiIcon.js +1 -1
  236. package/dist/icons/AreaChartIcon.js +1 -1
  237. package/dist/icons/BackwardIcon.js +1 -1
  238. package/dist/icons/BarChartIcon.js +1 -1
  239. package/dist/icons/BellFilledIcon.js +1 -1
  240. package/dist/icons/BellIcon.js +1 -1
  241. package/dist/icons/BooleanIcon.js +1 -1
  242. package/dist/icons/CalendarEditIcon.js +1 -1
  243. package/dist/icons/CalendarIcon.js +1 -1
  244. package/dist/icons/CaretDownIcon.js +1 -1
  245. package/dist/icons/CaretUpIcon.js +1 -1
  246. package/dist/icons/ChartAreaStackedIcon.js +1 -1
  247. package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
  248. package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
  249. package/dist/icons/ChartBarGroupedIcon.js +1 -1
  250. package/dist/icons/ChartBarHorizontalIcon.js +1 -1
  251. package/dist/icons/ChartBarLineIcon.js +1 -1
  252. package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
  253. package/dist/icons/ChartBarStackedIcon.js +1 -1
  254. package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
  255. package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
  256. package/dist/icons/ChartBoxPlot2Icon.js +1 -1
  257. package/dist/icons/ChartBoxPlotIcon.js +1 -1
  258. package/dist/icons/ChartBubbleIcon.js +1 -1
  259. package/dist/icons/ChartDonut2Icon.js +1 -1
  260. package/dist/icons/ChartFunnelIcon.js +1 -1
  261. package/dist/icons/ChartHeatmapIcon.js +1 -1
  262. package/dist/icons/ChartKPIIcon.js +1 -1
  263. package/dist/icons/ChartPie2Icon.js +1 -1
  264. package/dist/icons/ChartScatterIcon.js +1 -1
  265. package/dist/icons/CheckCircleFilledIcon.js +1 -1
  266. package/dist/icons/CheckCircleIcon.js +1 -1
  267. package/dist/icons/CheckIcon.js +1 -1
  268. package/dist/icons/CircleFilledIcon.js +1 -1
  269. package/dist/icons/ClearIcon.js +1 -1
  270. package/dist/icons/CloseCircleFilledIcon.js +1 -1
  271. package/dist/icons/CloseCircleIcon.js +1 -1
  272. package/dist/icons/CloseIcon.js +1 -1
  273. package/dist/icons/CodeIcon.js +1 -1
  274. package/dist/icons/ColumnTotalIcon.js +1 -1
  275. package/dist/icons/CopyIcon.js +1 -1
  276. package/dist/icons/CountIcon.js +1 -1
  277. package/dist/icons/CubeIcon.js +1 -1
  278. package/dist/icons/CubePauseIcon.js +1 -1
  279. package/dist/icons/CubePlayIcon.js +1 -1
  280. package/dist/icons/CurrencyDollarIcon.js +1 -1
  281. package/dist/icons/DangerIcon.js +1 -1
  282. package/dist/icons/DashboardIcon.js +1 -1
  283. package/dist/icons/DatabaseIcon.js +1 -1
  284. package/dist/icons/DecimalDecreaseIcon.js +1 -1
  285. package/dist/icons/DecimalIncreaseIcon.js +1 -1
  286. package/dist/icons/DirectionIcon.js +1 -1
  287. package/dist/icons/DonutIcon.js +1 -1
  288. package/dist/icons/DownIcon.js +1 -1
  289. package/dist/icons/EditIcon.js +1 -1
  290. package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
  291. package/dist/icons/ExclamationCircleIcon.js +1 -1
  292. package/dist/icons/ExclamationIcon.js +1 -1
  293. package/dist/icons/EyeIcon.js +1 -1
  294. package/dist/icons/EyeInvisibleIcon.js +1 -1
  295. package/dist/icons/FilterIcon.js +1 -1
  296. package/dist/icons/FolderFilledIcon.js +1 -1
  297. package/dist/icons/FolderIcon.js +1 -1
  298. package/dist/icons/FolderOpenFilledIcon.js +1 -1
  299. package/dist/icons/FolderOpenIcon.js +1 -1
  300. package/dist/icons/ForwardIcon.js +1 -1
  301. package/dist/icons/HierarchyIcon.js +1 -1
  302. package/dist/icons/HierarchyOpenIcon.js +1 -1
  303. package/dist/icons/Icon.js +1 -1
  304. package/dist/icons/InfoCircleIcon.js +1 -1
  305. package/dist/icons/InfoIcon.js +1 -1
  306. package/dist/icons/KeyIcon.js +1 -1
  307. package/dist/icons/LeftIcon.js +1 -1
  308. package/dist/icons/LineChartIcon.js +1 -1
  309. package/dist/icons/LoadingIcon.js +1 -1
  310. package/dist/icons/LockFilledIcon.js +1 -1
  311. package/dist/icons/LockIcon.js +1 -1
  312. package/dist/icons/MoreIcon.js +1 -1
  313. package/dist/icons/NotAllowedIcon.js +1 -1
  314. package/dist/icons/Number123Icon.js +1 -1
  315. package/dist/icons/NumberIcon.js +1 -1
  316. package/dist/icons/PauseCircleFilledIcon.js +1 -1
  317. package/dist/icons/PauseCircleIcon.js +1 -1
  318. package/dist/icons/PauseIcon.js +1 -1
  319. package/dist/icons/PercentageIcon.js +1 -1
  320. package/dist/icons/PieChartIcon.js +1 -1
  321. package/dist/icons/PlayCircleIcon.js +1 -1
  322. package/dist/icons/PlayIcon.js +1 -1
  323. package/dist/icons/PlusIcon.js +1 -1
  324. package/dist/icons/ProgressBarIcon.js +1 -1
  325. package/dist/icons/ReloadIcon.js +1 -1
  326. package/dist/icons/ReportIcon.js +1 -1
  327. package/dist/icons/ReturnIcon.js +1 -1
  328. package/dist/icons/RightIcon.js +1 -1
  329. package/dist/icons/RowTotalsIcon.js +1 -1
  330. package/dist/icons/SchemeIcon.js +1 -1
  331. package/dist/icons/SearchIcon.js +1 -1
  332. package/dist/icons/SemanticQueryIcon.js +1 -1
  333. package/dist/icons/SettingsIcon.js +1 -1
  334. package/dist/icons/ShieldFilledIcon.js +1 -1
  335. package/dist/icons/ShieldIcon.js +1 -1
  336. package/dist/icons/SlashIcon.js +1 -1
  337. package/dist/icons/SparklesIcon.js +1 -1
  338. package/dist/icons/SqlIcon.js +1 -1
  339. package/dist/icons/StatsIcon.js +1 -1
  340. package/dist/icons/StopIcon.js +1 -1
  341. package/dist/icons/StringIcon.js +1 -1
  342. package/dist/icons/SubtotalsIcon.js +1 -1
  343. package/dist/icons/SwitchIcon.js +1 -1
  344. package/dist/icons/TableIcon.js +1 -1
  345. package/dist/icons/ThumbsDownIcon.js +1 -1
  346. package/dist/icons/ThumbsUpIcon.js +1 -1
  347. package/dist/icons/ThunderboltCrossedIcon.js +1 -1
  348. package/dist/icons/ThunderboltFilledIcon.js +1 -1
  349. package/dist/icons/ThunderboltIcon.js +1 -1
  350. package/dist/icons/TimeIcon.js +1 -1
  351. package/dist/icons/TrashIcon.js +1 -1
  352. package/dist/icons/UnlockIcon.js +1 -1
  353. package/dist/icons/UpIcon.js +1 -1
  354. package/dist/icons/UserGroupIcon.js +1 -1
  355. package/dist/icons/UserIcon.js +1 -1
  356. package/dist/icons/UserLockIcon.js +1 -1
  357. package/dist/icons/ViewIcon.js +1 -1
  358. package/dist/icons/WarningFilledIcon.js +1 -1
  359. package/dist/icons/WarningIcon.js +1 -1
  360. package/dist/icons/wrap-icon.js +1 -1
  361. package/dist/index.js +1 -1
  362. package/dist/provider.js +1 -1
  363. package/dist/providers/TrackingProvider.js +1 -1
  364. package/dist/providers/navigationAdapter.default.js +1 -1
  365. package/dist/tokens/base.js +1 -1
  366. package/dist/tokens/colors.js +1 -1
  367. package/dist/tokens/index.js +1 -1
  368. package/dist/tokens/layout.js +1 -1
  369. package/dist/tokens/shadows.js +1 -1
  370. package/dist/tokens/sizes.js +1 -1
  371. package/dist/tokens/spacing.js +1 -1
  372. package/dist/utils/ResizeSensor.js +1 -1
  373. package/dist/utils/is-dev-env.js +1 -1
  374. package/dist/utils/modules.js +1 -1
  375. package/dist/utils/promise.js +1 -1
  376. package/dist/utils/raf.js +1 -1
  377. package/dist/utils/random.js +1 -1
  378. package/dist/utils/range.js +1 -1
  379. package/dist/utils/react/RenderCache.js +1 -1
  380. package/dist/utils/react/Slots.js +1 -1
  381. package/dist/utils/react/chain.js +1 -1
  382. package/dist/utils/react/forwardRefWithGenerics.js +1 -1
  383. package/dist/utils/react/index.js +1 -1
  384. package/dist/utils/react/interactions.js +1 -1
  385. package/dist/utils/react/isTextOnly.js +1 -1
  386. package/dist/utils/react/mapProps.js +1 -1
  387. package/dist/utils/react/mergeProps.js +1 -1
  388. package/dist/utils/react/nullableValue.js +1 -1
  389. package/dist/utils/react/resolveIcon.js +1 -1
  390. package/dist/utils/react/sharedStore.js +1 -1
  391. package/dist/utils/react/useCombinedRefs.js +1 -1
  392. package/dist/utils/react/useControlledFocusVisible.js +1 -1
  393. package/dist/utils/react/useEventBus.js +1 -1
  394. package/dist/utils/react/useId.js +1 -1
  395. package/dist/utils/react/useIsDarwin.js +1 -1
  396. package/dist/utils/react/useKeySymbols.js +1 -1
  397. package/dist/utils/react/useLayoutEffect.js +1 -1
  398. package/dist/utils/react/useLocalStorage.js +1 -1
  399. package/dist/utils/react/useMergeStyles.js +1 -1
  400. package/dist/utils/react/useQaProps.js +1 -1
  401. package/dist/utils/react/useViewportSize.js +1 -1
  402. package/dist/utils/react/wrapNodeIfPlain.js +1 -1
  403. package/dist/utils/tree.js +1 -1
  404. package/dist/utils/warnings.js +1 -1
  405. package/dist/version.js +2 -2
  406. package/docs/BaseProperties.md +78 -0
  407. package/docs/ComplexLayout.md +459 -0
  408. package/docs/CreateComponent.md +410 -0
  409. package/docs/FieldProperties.md +117 -0
  410. package/docs/Introduction.md +122 -0
  411. package/docs/RenderCache.md +177 -0
  412. package/docs/Result.md +42 -0
  413. package/docs/SimpleLayout.md +26 -0
  414. package/docs/Typography.md +38 -0
  415. package/docs/components/Block.md +33 -0
  416. package/docs/components/CollectionItem.md +293 -0
  417. package/docs/components/GridProvider.md +38 -0
  418. package/docs/components/Root.md +50 -0
  419. package/docs/components/actions/Action.md +47 -0
  420. package/docs/components/actions/Banner.md +195 -0
  421. package/docs/components/actions/Button.md +209 -0
  422. package/docs/components/actions/ButtonGroup.md +46 -0
  423. package/docs/components/actions/ButtonSplit.md +199 -0
  424. package/docs/components/actions/CommandMenu.md +422 -0
  425. package/docs/components/actions/ItemAction.md +60 -0
  426. package/docs/components/actions/ItemButton.md +316 -0
  427. package/docs/components/actions/Link.md +325 -0
  428. package/docs/components/actions/Menu.md +485 -0
  429. package/docs/components/actions/MenuTrigger.md +47 -0
  430. package/docs/components/actions/SubMenuTrigger.md +38 -0
  431. package/docs/components/actions/use-anchored-menu.md +209 -0
  432. package/docs/components/actions/use-context-menu.md +218 -0
  433. package/docs/components/content/ActiveZone.md +37 -0
  434. package/docs/components/content/Alert.md +40 -0
  435. package/docs/components/content/Avatar.md +37 -0
  436. package/docs/components/content/Badge.md +194 -0
  437. package/docs/components/content/Card.md +40 -0
  438. package/docs/components/content/Content.md +44 -0
  439. package/docs/components/content/CopyPasteBlock.md +36 -0
  440. package/docs/components/content/CopySnippet.md +43 -0
  441. package/docs/components/content/Disclosure.md +181 -0
  442. package/docs/components/content/Divider.md +39 -0
  443. package/docs/components/content/Footer.md +35 -0
  444. package/docs/components/content/Header.md +35 -0
  445. package/docs/components/content/HotKeys.md +352 -0
  446. package/docs/components/content/Item.md +499 -0
  447. package/docs/components/content/ItemBadge.md +31 -0
  448. package/docs/components/content/ItemCard.md +131 -0
  449. package/docs/components/content/Layout.md +843 -0
  450. package/docs/components/content/Paragraph.md +32 -0
  451. package/docs/components/content/Placeholder.md +37 -0
  452. package/docs/components/content/PrismCode.md +36 -0
  453. package/docs/components/content/PrismDiffCode.md +29 -0
  454. package/docs/components/content/Result.md +46 -0
  455. package/docs/components/content/Skeleton.md +35 -0
  456. package/docs/components/content/Tag.md +165 -0
  457. package/docs/components/content/Text.md +54 -0
  458. package/docs/components/content/TextItem.md +217 -0
  459. package/docs/components/content/Title.md +45 -0
  460. package/docs/components/fields/Checkbox.md +176 -0
  461. package/docs/components/fields/ComboBox.md +651 -0
  462. package/docs/components/fields/DatePicker.md +227 -0
  463. package/docs/components/fields/FileInput.md +194 -0
  464. package/docs/components/fields/FilterListBox.md +726 -0
  465. package/docs/components/fields/FilterPicker.md +776 -0
  466. package/docs/components/fields/HueSlider.md +175 -0
  467. package/docs/components/fields/ListBox.md +714 -0
  468. package/docs/components/fields/NumberInput.md +180 -0
  469. package/docs/components/fields/PasswordInput.md +214 -0
  470. package/docs/components/fields/Picker.md +906 -0
  471. package/docs/components/fields/RadioGroup.md +310 -0
  472. package/docs/components/fields/SearchInput.md +224 -0
  473. package/docs/components/fields/Select.md +576 -0
  474. package/docs/components/fields/Slider.md +53 -0
  475. package/docs/components/fields/Switch.md +169 -0
  476. package/docs/components/fields/TextArea.md +61 -0
  477. package/docs/components/fields/TextInput.md +205 -0
  478. package/docs/components/fields/TextInputMapper.md +34 -0
  479. package/docs/components/form/Field.md +333 -0
  480. package/docs/components/form/Form.md +644 -0
  481. package/docs/components/form/FormInstance.md +307 -0
  482. package/docs/components/helpers/DisplayTransition.md +268 -0
  483. package/docs/components/helpers/IconSwitch.md +160 -0
  484. package/docs/components/layout/Flex.md +51 -0
  485. package/docs/components/layout/Flow.md +32 -0
  486. package/docs/components/layout/Grid.md +46 -0
  487. package/docs/components/layout/Panel.md +65 -0
  488. package/docs/components/layout/Prefix.md +37 -0
  489. package/docs/components/layout/ResizablePanel.md +69 -0
  490. package/docs/components/layout/Space.md +44 -0
  491. package/docs/components/layout/Suffix.md +39 -0
  492. package/docs/components/navigation/Tabs.md +726 -0
  493. package/docs/components/organisms/FileTabs.md +39 -0
  494. package/docs/components/organisms/StatsCard.md +40 -0
  495. package/docs/components/other/CloudLogo.md +33 -0
  496. package/docs/components/overlays/AlertDialog.md +51 -0
  497. package/docs/components/overlays/Dialog.md +200 -0
  498. package/docs/components/overlays/DialogContainer.md +201 -0
  499. package/docs/components/overlays/DialogForm.md +295 -0
  500. package/docs/components/overlays/DialogTrigger.md +191 -0
  501. package/docs/components/overlays/Notifications.md +402 -0
  502. package/docs/components/overlays/Toast.md +289 -0
  503. package/docs/components/overlays/Tooltip.md +400 -0
  504. package/docs/components/overlays/TooltipProvider.md +42 -0
  505. package/docs/components/overlays/TooltipTrigger.md +42 -0
  506. package/docs/components/overlays/UseDialogContainer.md +597 -0
  507. package/docs/components/portal/Portal.md +29 -0
  508. package/docs/components/status/LoadingAnimation.md +27 -0
  509. package/docs/components/status/Spin.md +35 -0
  510. package/docs/tasty/configuration.md +211 -0
  511. package/docs/tasty/debug.md +505 -0
  512. package/docs/tasty/injector.md +528 -0
  513. package/docs/tasty/styles.md +567 -0
  514. package/docs/tasty/tasty-static.md +376 -0
  515. package/docs/tasty/usage.md +695 -0
  516. package/package.json +4 -8
@@ -0,0 +1,459 @@
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
+ - **`default`** — Standard panel, pushes content (Content Push: Yes, Overlay: No)
199
+ - **`sticky`** — Floats over content (Content Push: No, Overlay: No)
200
+ - **`overlay`** — With dismissable backdrop (Content Push: Yes, Overlay: Yes)
201
+ - **`dialog`** — Renders as modal dialog (Content Push: No, Overlay: Dialog)
202
+
203
+ ### Sticky Panel
204
+
205
+ Panels with `mode="sticky"` float over content without pushing it aside.
206
+
207
+ ```jsx live=false
208
+ <Layout.Panel
209
+ mode="sticky" {/* absolute, does NOT push content */}
210
+ side="right"
211
+ size={260}
212
+ isOpen={isOpen}
213
+ onOpenChange={setIsOpen}
214
+ >
215
+ <Layout.PanelHeader isClosable title="Quick Actions" onClose={() => setIsOpen(false)} />
216
+ <Layout.Content>
217
+ <Text>Floating panel content</Text>
218
+ </Layout.Content>
219
+ </Layout.Panel>
220
+ ```
221
+
222
+ ### Overlay Panel
223
+
224
+ Panels with `mode="overlay"` show a backdrop and dismiss on:
225
+ - Clicking the backdrop
226
+ - Pressing Escape anywhere in the Layout
227
+ - Moving focus to the main content area
228
+
229
+ ```jsx live=false
230
+ <Layout.Panel
231
+ mode="overlay" {/* absolute, backdrop behind panel */}
232
+ side="right"
233
+ size={300}
234
+ isOpen={isOpen}
235
+ onOpenChange={setIsOpen}
236
+ overlayStyles={{ fill: '#dark.5' }} {/* optional custom backdrop */}
237
+ >
238
+ <Layout.PanelHeader isClosable title="Details" onClose={() => setIsOpen(false)} />
239
+ <Layout.Content>
240
+ <Text>Panel with backdrop overlay</Text>
241
+ </Layout.Content>
242
+ </Layout.Panel>
243
+ ```
244
+
245
+ Set `isDismissable={false}` to prevent automatic dismissal.
246
+
247
+ ### Dialog Mode Panel
248
+
249
+ Panels with `mode="dialog"` render as a modal dialog instead of inline.
250
+
251
+ ```jsx live=false
252
+ <Layout.Panel
253
+ mode="dialog" {/* renders as modal overlay instead of inline */}
254
+ side="left"
255
+ size={300}
256
+ isDialogOpen={isOpen}
257
+ onDialogOpenChange={setIsOpen}
258
+ >
259
+ <Layout.PanelHeader isClosable title="Settings" onClose={() => setIsOpen(false)} />
260
+ <Layout.Content> {/* flex column ↓, scrollable */}
261
+ <Text>Panel content as dialog overlay</Text>
262
+ </Layout.Content>
263
+ </Layout.Panel>
264
+ ```
265
+
266
+ **Use cases:**
267
+ - Mobile-responsive layouts where sidebars become modal dialogs
268
+ - Settings panels that need full focus
269
+ - Any panel that should overlay rather than push content
270
+
271
+ ## Pane Patterns
272
+
273
+ ### Resizable Panes
274
+
275
+ `Layout.Pane` creates inline resizable sections that participate in the flex flow (unlike `Panel` which is absolutely positioned).
276
+
277
+ ```jsx live=false
278
+ <Layout.Flex> {/* flex row →, scrollable */}
279
+ <Layout.Pane
280
+ isResizable
281
+ resizeEdge="right" {/* inline in flex flow, not absolute */}
282
+ size={leftSize}
283
+ minSize={120}
284
+ maxSize={350}
285
+ onSizeChange={setLeftSize}
286
+ >
287
+ <Title level={5}>Left Pane</Title>
288
+ </Layout.Pane>
289
+ <Layout.Content width="min 150px"> {/* flex column ↓, scrollable, fills remaining space */}
290
+ <Title level={5}>Content</Title>
291
+ </Layout.Content>
292
+ </Layout.Flex>
293
+ ```
294
+
295
+ **Panel vs Pane:**
296
+
297
+ - **`Position`** — Panel: Absolute (overlays layout); Pane: Inline (participates in flex)
298
+ - **`Use case`** — Panel: Sidebars, drawers; Pane: Split views, code editors
299
+ - **`Content adjustment`** — Panel: Pushes content via insets; Pane: Takes space in flex container
300
+ - **`resizeEdge`** — Panel: Based on `side` prop; Pane: `"right"` or `"bottom"`
301
+
302
+ ## Advanced Patterns
303
+
304
+ ### Nested Layouts
305
+
306
+ Layouts can be nested for complex structures.
307
+
308
+ ```jsx live=false
309
+ <Layout height="400px"> {/* block, Inner: flex column ↓ */}
310
+ <Layout.Header title="Outer Layout" />
311
+ <Layout flow="row"> {/* block, Inner: flex row → */}
312
+ <Layout width="180px" border="right"> {/* block, Inner: flex column ↓ */}
313
+ <Layout.Content>Sidebar</Layout.Content> {/* flex column ↓, scrollable */}
314
+ </Layout>
315
+ <Layout> {/* block, Inner: flex column ↓ */}
316
+ <Layout.Toolbar>Inner Toolbar</Layout.Toolbar> {/* flex row →, single item aligns left */}
317
+ <Layout.Content>Inner content</Layout.Content> {/* flex column ↓, scrollable */}
318
+ </Layout>
319
+ </Layout>
320
+ </Layout>
321
+ ```
322
+
323
+ ### Grid Dashboard
324
+
325
+ Use `Layout.Grid` for grid-based layouts.
326
+
327
+ ```jsx live=false
328
+ <Layout.Grid {/* grid 2×2, scrollable */}
329
+ columns="repeat(2, 1fr)"
330
+ rows="repeat(2, 1fr)"
331
+ gap="1x"
332
+ padding="1x"
333
+ >
334
+ <Card>Metrics</Card> {/* grid cell 1,1 */}
335
+ <Card>Charts</Card> {/* grid cell 1,2 */}
336
+ <Card>Activity</Card> {/* grid cell 2,1 */}
337
+ <Card>Stats</Card> {/* grid cell 2,2 */}
338
+ </Layout.Grid>
339
+ ```
340
+
341
+ ### Container Layout
342
+
343
+ Use `Layout.Container` for content that should be horizontally centered with a constrained max-width. Ideal for articles, forms, and focused content.
344
+
345
+ ```jsx live=false
346
+ <Layout.Container> {/* flex column ↓, scrollable, horizontally centered */}
347
+ <Title>Article Title</Title> {/* constrained width: min 40x, max 120x */}
348
+ <Text>Content is centered with a comfortable reading width.</Text>
349
+ <Space>
350
+ <Button>Previous</Button>
351
+ <Button type="primary">Next</Button>
352
+ </Space>
353
+ </Layout.Container>
354
+ ```
355
+
356
+ **Use cases:**
357
+ - Article or documentation pages
358
+ - Forms and settings pages
359
+ - Any content that benefits from constrained width
360
+
361
+ ### Center Layout
362
+
363
+ Use `Layout.Center` for content that should be centered both horizontally and vertically. Ideal for empty states, loading screens, and hero sections.
364
+
365
+ ```jsx live=false
366
+ <Layout.Center> {/* flex column ↓, scrollable, centered both axes */}
367
+ <Title>No Results Found</Title> {/* text-align: center by default */}
368
+ <Text>Try adjusting your search criteria.</Text>
369
+ <Button type="primary">Clear Filters</Button>
370
+ </Layout.Center>
371
+ ```
372
+
373
+ **Use cases:**
374
+ - Empty states ("No items found")
375
+ - Loading screens
376
+ - Welcome/onboarding screens
377
+ - Error pages (404, 500)
378
+
379
+ ### When to Use Container vs Center
380
+
381
+ - **Article/documentation content** — `Layout.Container`
382
+ - **Forms with top-aligned content** — `Layout.Container`
383
+ - **Empty states** — `Layout.Center`
384
+ - **Loading/splash screens** — `Layout.Center`
385
+ - **Error pages** — `Layout.Center`
386
+
387
+ ## Using Space Component
388
+
389
+ `Space` is a simple flex wrapper for arranging elements inline.
390
+
391
+ ```jsx live=false
392
+ // Horizontal (default)
393
+ <Space gap="1x"> {/* flex row → */}
394
+ <Button>One</Button>
395
+ <Button>Two</Button>
396
+ </Space>
397
+
398
+ // Vertical
399
+ <Space direction="vertical" gap="1x">{/* flex column ↓ */}
400
+ <Button>One</Button>
401
+ <Button>Two</Button>
402
+ </Space>
403
+ ```
404
+
405
+ ### When to Use Space vs Layout.Flex
406
+
407
+ - **Inline button groups** — `Space`
408
+ - **Quick horizontal/vertical arrangement** — `Space`
409
+ - **Scrollable flex container** — `Layout.Flex`
410
+ - **Part of Layout structure** — `Layout.Flex`
411
+ - **Standalone flex wrapper** — `Space`
412
+
413
+ ## Sub-Components Reference
414
+
415
+ - **`Layout`** — Root wrapper, provides context
416
+ - **`Layout.Content`** — Scrollable content area, fills available space
417
+ - **`Layout.Container`** — Horizontally centered content with constrained width
418
+ - **`Layout.Center`** — Centered content (both axes) with text-align center
419
+ - **`Layout.Header`** — Page header with title, breadcrumbs, actions
420
+ - **`Layout.Footer`** — Footer bar, typically for actions
421
+ - **`Layout.Toolbar`** — Horizontal bar with space-between layout
422
+ - **`Layout.Panel`** — Side panel with modes: default, sticky, overlay, dialog
423
+ - **`Layout.PanelHeader`** — Header for panels with close button
424
+ - **`Layout.Pane`** — Inline resizable section
425
+ - **`Layout.Flex`** — Scrollable flex container
426
+ - **`Layout.Grid`** — Scrollable grid container
427
+ - **`Layout.Block`** — Simple block container
428
+
429
+ ## Common Props
430
+
431
+ ### Layout
432
+
433
+ - `height` - Layout height (required for proper containment)
434
+ - `contentPadding` - Default padding for content areas
435
+ - `hasTransition` - Enable slide animations for panels
436
+ - `flow` - Flex direction for inner content
437
+
438
+ ### Content Components
439
+
440
+ All content components (`Content`, `Header`, `Footer`, `Toolbar`, `Flex`, `Grid`) support:
441
+
442
+ - `padding` - Inner padding
443
+ - `scrollbar` - Scrollbar style: `"default"`, `"thin"`, `"tiny"`, `"none"`
444
+ - `gap` - Gap between children
445
+
446
+ ## Recommended Topics
447
+
448
+ The following topics would be valuable additions to this documentation:
449
+
450
+ 1. **Responsive Layouts** - Media query patterns for adapting layouts to different screen sizes
451
+ 2. **Animation Patterns** - Using `hasTransition` effectively, custom transition timing
452
+ 3. **Keyboard Navigation** - Focus management within layouts, panel accessibility
453
+ 4. **State Persistence** - Panel sizes can be persisted using `sizeStorageKey` (see Persistent Panel Size). Open states could be added similarly.
454
+ 5. **Performance Optimization** - Best practices for large content areas, virtualization
455
+ 6. **Testing Layouts** - Strategies for testing layout components
456
+ 7. **Integration with Router** - Layouts with route-based content switching
457
+ 8. **Dark Mode Support** - Theme-aware layout styling
458
+ 9. **Print Layouts** - Adapting layouts for print media
459
+ 10. **Mobile Patterns** - Touch interactions, swipe gestures for panels