altum 0.0.7 → 0.0.9

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 (604) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/README.md +1 -1
  3. package/dist/base/ChartBase/ChartBase.js +1 -1
  4. package/dist/base/ChartBase/ChartBase.module.css.js +1 -1
  5. package/dist/base/ChartBase/ChartCartesian.js +1 -1
  6. package/dist/base/ChartBase/ChartHoverBubble.js +1 -1
  7. package/dist/base/ChartBase/ChartHoverBubble.module.css.js +1 -1
  8. package/dist/base/ChartBase/ChartLegend.js +1 -1
  9. package/dist/base/ChartBase/ChartLegend.module.css.js +1 -1
  10. package/dist/base/ChartBase/ChartPlot.module.css.js +1 -1
  11. package/dist/base/ChartBase/ChartYGrid.js +1 -1
  12. package/dist/base/ChartBase/useChartWidth.js +1 -1
  13. package/dist/base/Flex/Flex.js +1 -1
  14. package/dist/base/Flex/Flex.module.css.js +1 -1
  15. package/dist/base/PeriodHeader/PeriodHeader.js +1 -1
  16. package/dist/base/SelectionGroup/SelectionGroup.js +1 -0
  17. package/dist/base/SelectionGroup/SelectionGroup.module.css.js +1 -0
  18. package/dist/base/SelectionGroup/SelectionGroup.utils.js +1 -0
  19. package/dist/base/SelectionGroup/useSelectionRoot.js +1 -0
  20. package/dist/base/ToggleControlBase/ToggleControlBase.js +1 -1
  21. package/dist/base/ToggleControlBase/ToggleControlBase.module.css.js +1 -1
  22. package/dist/base/ToggleGroupBase/ToggleGroupBase.js +1 -1
  23. package/dist/base/Typography/Typography.js +1 -0
  24. package/dist/components/Accordion/Accordion.js +1 -1
  25. package/dist/components/Accordion/Accordion.module.css.js +1 -1
  26. package/dist/components/ActionList/ActionItem.js +1 -0
  27. package/dist/components/ActionList/ActionItem.module.css.js +1 -0
  28. package/dist/components/ActionList/ActionList.js +1 -1
  29. package/dist/components/ActionList/ActionList.module.css.js +1 -1
  30. package/dist/components/ActionList/actionListFilter.js +1 -0
  31. package/dist/components/ActionSheetTrigger/ActionSheetTrigger.js +1 -1
  32. package/dist/components/ActionSheetTrigger/ActionSheetTrigger.module.css.js +1 -1
  33. package/dist/components/Alert/Alert.js +1 -1
  34. package/dist/components/Alert/Alert.module.css.js +1 -1
  35. package/dist/components/AspectRatio/AspectRatio.js +1 -1
  36. package/dist/components/AspectRatio/AspectRatio.module.css.js +1 -1
  37. package/dist/components/Attachment/Attachment.js +1 -1
  38. package/dist/components/Attachment/Attachment.module.css.js +1 -1
  39. package/dist/components/AutocompleteField/AutocompleteField.js +1 -0
  40. package/dist/components/Avatar/Avatar.js +1 -1
  41. package/dist/components/Avatar/Avatar.module.css.js +1 -1
  42. package/dist/components/Badge/Badge.js +1 -1
  43. package/dist/components/Badge/Badge.module.css.js +1 -1
  44. package/dist/components/BarChart/BarChart.js +1 -1
  45. package/dist/components/BarChart/BarChart.module.css.js +1 -1
  46. package/dist/components/Box/Box.js +1 -1
  47. package/dist/components/Box/Box.module.css.js +1 -1
  48. package/dist/components/Bubble/Bubble.js +1 -1
  49. package/dist/components/Bubble/Bubble.module.css.js +1 -1
  50. package/dist/components/Button/Button.js +1 -1
  51. package/dist/components/Button/Button.module.css.js +1 -1
  52. package/dist/components/Button/overlayCloseControl.js +1 -0
  53. package/dist/components/ButtonGroup/ButtonGroup.js +1 -1
  54. package/dist/components/ButtonGroup/ButtonGroup.module.css.js +1 -1
  55. package/dist/components/ButtonIcon/ButtonIcon.js +1 -1
  56. package/dist/components/Calendar/Calendar.context.js +1 -1
  57. package/dist/components/Calendar/Calendar.js +1 -1
  58. package/dist/components/Calendar/Calendar.module.css.js +1 -1
  59. package/dist/components/Calendar/Calendar.slots.js +1 -1
  60. package/dist/components/Calendar/Calendar.utils.js +1 -1
  61. package/dist/components/Calendar/Calendar.views.js +1 -1
  62. package/dist/components/CalendarBoard/CalendarBoard.Event.js +1 -1
  63. package/dist/components/CalendarBoard/CalendarBoard.Event.module.css.js +1 -1
  64. package/dist/components/CalendarBoard/CalendarBoard.MonthView.js +1 -1
  65. package/dist/components/CalendarBoard/CalendarBoard.Schedule.js +1 -1
  66. package/dist/components/CalendarBoard/CalendarBoard.Schedule.module.css.js +1 -1
  67. package/dist/components/CalendarBoard/CalendarBoard.Schedule.utils.js +1 -1
  68. package/dist/components/CalendarBoard/CalendarBoard.ScheduleView.js +1 -1
  69. package/dist/components/CalendarBoard/CalendarBoard.TaskChip.js +1 -1
  70. package/dist/components/CalendarBoard/CalendarBoard.YearView.js +2 -2
  71. package/dist/components/CalendarBoard/CalendarBoard.chrome.js +1 -1
  72. package/dist/components/CalendarBoard/CalendarBoard.context.js +1 -1
  73. package/dist/components/CalendarBoard/CalendarBoard.module.css.js +1 -1
  74. package/dist/components/CalendarBoard/CalendarBoard.utils.js +1 -1
  75. package/dist/components/CalendarBoard/CalendarBoard.views.js +1 -1
  76. package/dist/components/CalendarBoard/calendar.schedule.js +1 -1
  77. package/dist/components/Card/Card.js +1 -1
  78. package/dist/components/Card/Card.module.css.js +1 -1
  79. package/dist/components/Checkbox/Checkbox.js +1 -1
  80. package/dist/components/Checkbox/Checkbox.module.css.js +1 -1
  81. package/dist/components/Chip/Chip.js +1 -1
  82. package/dist/components/Chip/Chip.module.css.js +1 -1
  83. package/dist/components/Collapse/Collapse.js +1 -1
  84. package/dist/components/Collapse/Collapse.module.css.js +1 -1
  85. package/dist/components/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
  86. package/dist/components/ColorSwatchGroup/ColorSwatchGroup.module.css.js +1 -1
  87. package/dist/components/CommandPalette/CommandPalette.js +1 -1
  88. package/dist/components/CommandPalette/CommandPalette.module.css.js +1 -1
  89. package/dist/components/ConfirmDialog/ConfirmDialog.js +1 -1
  90. package/dist/components/Container/Container.js +1 -1
  91. package/dist/components/Container/Container.module.css.js +1 -1
  92. package/dist/components/DateField/DateField.js +1 -1
  93. package/dist/components/DateField/DateField.module.css.js +1 -0
  94. package/dist/components/DateRangeField/DateRangeField.js +1 -1
  95. package/dist/components/DateRangeField/DateRangeField.module.css.js +1 -1
  96. package/dist/components/DayStripCalendar/DayStripCalendar.js +1 -1
  97. package/dist/components/DayStripCalendar/DayStripCalendar.module.css.js +1 -1
  98. package/dist/components/DescriptionList/DescriptionList.js +1 -1
  99. package/dist/components/DescriptionList/DescriptionList.module.css.js +1 -1
  100. package/dist/components/DialogLayout/DialogLayout.js +1 -1
  101. package/dist/components/DialogLayout/DialogLayout.module.css.js +1 -1
  102. package/dist/components/DonutChart/DonutChart.js +1 -1
  103. package/dist/components/DonutChart/DonutChart.module.css.js +1 -1
  104. package/dist/components/Dropdown/Dropdown.js +1 -1
  105. package/dist/components/Dropdown/Dropdown.module.css.js +1 -1
  106. package/dist/components/EmptyState/EmptyState.js +1 -1
  107. package/dist/components/EmptyState/EmptyState.module.css.js +1 -1
  108. package/dist/components/FieldGroup/FieldGroup.js +1 -1
  109. package/dist/components/FieldGroup/FieldGroup.module.css.js +1 -1
  110. package/dist/components/FieldLabel/FieldLabel.js +1 -1
  111. package/dist/components/FieldLabel/FieldLabel.module.css.js +1 -1
  112. package/dist/components/Fieldset/Fieldset.js +1 -1
  113. package/dist/components/Fieldset/Fieldset.module.css.js +1 -1
  114. package/dist/components/FileList/FileList.js +1 -1
  115. package/dist/components/FileList/FileList.module.css.js +1 -1
  116. package/dist/components/FileUploader/FileUploader.js +1 -0
  117. package/dist/components/FileUploader/FileUploader.module.css.js +1 -0
  118. package/dist/components/FormMessage/FormMessage.js +1 -1
  119. package/dist/components/Gap/Gap.js +1 -0
  120. package/dist/components/Gap/Gap.module.css.js +1 -0
  121. package/dist/components/Grid/Grid.js +1 -1
  122. package/dist/components/Grid/Grid.module.css.js +1 -1
  123. package/dist/components/ImageCrop/ImageCrop.js +1 -1
  124. package/dist/components/ImageCrop/ImageCrop.module.css.js +1 -1
  125. package/dist/components/ImageGallery/ImageGallery.js +1 -1
  126. package/dist/components/ImageGallery/ImageGallery.module.css.js +1 -1
  127. package/dist/components/ImageLightbox/ImageLightbox.js +1 -1
  128. package/dist/components/ImageLightbox/ImageLightbox.module.css.js +1 -1
  129. package/dist/components/Item/Item.js +1 -1
  130. package/dist/components/Item/Item.module.css.js +1 -1
  131. package/dist/components/Kbd/Kbd.js +1 -1
  132. package/dist/components/Kbd/Kbd.module.css.js +1 -1
  133. package/dist/components/Layout/ControlRow.js +1 -1
  134. package/dist/components/Layout/Inline.js +1 -1
  135. package/dist/components/Layout/Layout.js +1 -1
  136. package/dist/components/Layout/Layout.module.css.js +1 -1
  137. package/dist/components/Layout/LayoutItem.js +1 -1
  138. package/dist/components/Layout/LayoutItem.module.css.js +1 -0
  139. package/dist/components/Layout/Split.js +1 -1
  140. package/dist/components/Layout/Stack.js +1 -1
  141. package/dist/components/LineChart/LineChart.js +1 -1
  142. package/dist/components/LineChart/LineChart.module.css.js +1 -1
  143. package/dist/components/Link/Link.js +1 -1
  144. package/dist/components/Link/Link.module.css.js +1 -1
  145. package/dist/components/Listbox/Listbox.js +1 -1
  146. package/dist/components/Listbox/Listbox.module.css.js +1 -1
  147. package/dist/components/Listbox/Listbox.utils.js +1 -0
  148. package/dist/components/Listbox/ListboxGroup.js +1 -0
  149. package/dist/components/Listbox/ListboxRow.js +1 -0
  150. package/dist/components/LiveRegion/LiveRegion.js +1 -1
  151. package/dist/components/LocaleProvider/LocaleProvider.js +1 -1
  152. package/dist/components/Marker/Marker.js +1 -1
  153. package/dist/components/Marker/Marker.module.css.js +1 -1
  154. package/dist/components/MaskedField/MaskedField.js +1 -1
  155. package/dist/components/MaskedField/MaskedField.module.css.js +1 -1
  156. package/dist/components/MaskedField/MaskedField.utils.js +1 -1
  157. package/dist/components/Media/Media.js +1 -1
  158. package/dist/components/Media/Media.module.css.js +1 -1
  159. package/dist/components/Menu/Menu.js +1 -1
  160. package/dist/components/Menu/Menu.module.css.js +1 -1
  161. package/dist/components/Modal/Modal.js +1 -1
  162. package/dist/components/Modal/Modal.module.css.js +1 -1
  163. package/dist/components/MultiSelect/MultiSelect.js +1 -0
  164. package/dist/components/MultiSelect/MultiSelect.module.css.js +1 -0
  165. package/dist/components/Notification/Notification.js +1 -1
  166. package/dist/components/Notification/Notification.module.css.js +1 -1
  167. package/dist/components/Notification/toast.js +1 -1
  168. package/dist/components/Notification/toast.utils.js +1 -0
  169. package/dist/components/NumberField/NumberField.js +1 -1
  170. package/dist/components/NumberField/NumberField.module.css.js +1 -1
  171. package/dist/components/Overflow/Overflow.js +1 -1
  172. package/dist/components/Overflow/Overflow.module.css.js +1 -1
  173. package/dist/components/Overlay/Overlay.js +1 -1
  174. package/dist/components/Overlay/Overlay.module.css.js +1 -1
  175. package/dist/components/Pagination/Pagination.js +1 -1
  176. package/dist/components/Pagination/Pagination.module.css.js +1 -1
  177. package/dist/components/PasswordField/PasswordField.js +1 -1
  178. package/dist/components/PasswordField/PasswordField.module.css.js +1 -1
  179. package/dist/components/PinInput/PinInput.js +1 -1
  180. package/dist/components/PinInput/PinInput.module.css.js +1 -1
  181. package/dist/components/Popover/Popover.js +1 -1
  182. package/dist/components/Popover/Popover.module.css.js +1 -1
  183. package/dist/components/PopupSwitch/PopupSwitch.js +1 -1
  184. package/dist/components/PopupSwitch/PopupSwitch.module.css.js +1 -1
  185. package/dist/components/Progress/Progress.js +1 -1
  186. package/dist/components/Progress/Progress.module.css.js +1 -1
  187. package/dist/components/Progress/Progress.utils.js +1 -0
  188. package/dist/components/PullToRefresh/PullToRefresh.js +1 -1
  189. package/dist/components/PullToRefresh/PullToRefresh.module.css.js +1 -1
  190. package/dist/components/Radio/Radio.js +1 -1
  191. package/dist/components/Radio/Radio.module.css.js +1 -1
  192. package/dist/components/Rating/Rating.js +1 -1
  193. package/dist/components/Rating/Rating.module.css.js +1 -1
  194. package/dist/components/RelativeTime/RelativeTime.js +1 -1
  195. package/dist/components/SafeArea/SafeArea.js +1 -1
  196. package/dist/components/SafeArea/SafeArea.module.css.js +1 -1
  197. package/dist/components/ScrollArea/ScrollArea.js +1 -1
  198. package/dist/components/ScrollArea/ScrollArea.module.css.js +1 -1
  199. package/dist/components/SearchField/SearchField.js +1 -1
  200. package/dist/components/SegmentedControl/SegmentedControl.js +1 -1
  201. package/dist/components/SegmentedControl/SegmentedControl.module.css.js +1 -0
  202. package/dist/components/Select/Select.js +1 -1
  203. package/dist/components/Select/Select.module.css.js +1 -1
  204. package/dist/components/Separator/Separator.js +1 -1
  205. package/dist/components/Separator/Separator.module.css.js +1 -1
  206. package/dist/components/Sheet/Sheet.js +1 -1
  207. package/dist/components/Sheet/Sheet.module.css.js +1 -1
  208. package/dist/components/Sidebar/Sidebar.js +1 -1
  209. package/dist/components/Sidebar/Sidebar.module.css.js +1 -1
  210. package/dist/components/Skeleton/Skeleton.js +1 -1
  211. package/dist/components/Skeleton/Skeleton.module.css.js +1 -1
  212. package/dist/components/SkipLink/SkipLink.js +1 -1
  213. package/dist/components/SkipLink/SkipLink.module.css.js +1 -1
  214. package/dist/components/Slider/Slider.js +1 -1
  215. package/dist/components/Slider/Slider.module.css.js +1 -1
  216. package/dist/components/SortableList/SortableList.drag.js +1 -0
  217. package/dist/components/SortableList/SortableList.js +1 -1
  218. package/dist/components/SortableList/SortableList.module.css.js +1 -1
  219. package/dist/components/Spinner/Spinner.js +1 -1
  220. package/dist/components/Spinner/Spinner.module.css.js +1 -1
  221. package/dist/components/StatBadge/StatBadge.js +1 -1
  222. package/dist/components/StatBadge/StatBadge.module.css.js +1 -1
  223. package/dist/components/Steps/Steps.js +1 -1
  224. package/dist/components/Steps/Steps.module.css.js +1 -1
  225. package/dist/components/SuggestField/SuggestField.js +1 -1
  226. package/dist/components/SwipeToAction/SwipeActionButtons.js +1 -1
  227. package/dist/components/SwipeToAction/SwipeToAction.js +1 -1
  228. package/dist/components/SwipeToAction/SwipeToAction.module.css.js +1 -1
  229. package/dist/components/SwipeToAction/SwipeToAction.utils.js +1 -1
  230. package/dist/components/Switch/Switch.js +1 -1
  231. package/dist/components/Switch/Switch.module.css.js +1 -1
  232. package/dist/components/Table/Table.js +1 -1
  233. package/dist/components/Table/Table.module.css.js +1 -1
  234. package/dist/components/Table/Table.utils.js +1 -0
  235. package/dist/components/Table/TableRow.js +1 -1
  236. package/dist/components/Table/TableRowActions.js +1 -1
  237. package/dist/components/Table/TableView.js +1 -1
  238. package/dist/components/Tabs/Tabs.js +1 -1
  239. package/dist/components/Tabs/Tabs.module.css.js +1 -1
  240. package/dist/components/Tabs/Tabs.utils.js +1 -0
  241. package/dist/components/Text/Text.js +1 -1
  242. package/dist/components/Text/Text.module.css.js +1 -1
  243. package/dist/components/TextField/TextField.js +1 -1
  244. package/dist/components/TextField/TextField.module.css.js +1 -1
  245. package/dist/components/TextareaField/TextareaField.js +1 -1
  246. package/dist/components/TextareaField/TextareaField.module.css.js +1 -1
  247. package/dist/components/ThemeProvider/ThemeProvider.js +1 -1
  248. package/dist/components/ThemeProvider/ThemeProvider.module.css.js +1 -1
  249. package/dist/components/TimeField/TimeField.js +1 -1
  250. package/dist/components/TimeField/TimeField.module.css.js +1 -0
  251. package/dist/components/Timeline/Timeline.js +1 -1
  252. package/dist/components/Timeline/Timeline.module.css.js +1 -1
  253. package/dist/components/Title/Title.js +1 -1
  254. package/dist/components/Title/Title.module.css.js +1 -1
  255. package/dist/components/Tooltip/Tooltip.js +1 -1
  256. package/dist/components/Tooltip/Tooltip.module.css.js +1 -1
  257. package/dist/components/UploadZone/UploadZone.js +1 -1
  258. package/dist/components/UploadZone/UploadZone.module.css.js +1 -1
  259. package/dist/components/VirtualList/VirtualList.js +1 -1
  260. package/dist/components/VirtualList/VirtualList.module.css.js +1 -1
  261. package/dist/components/VirtualList/VirtualList.utils.js +1 -1
  262. package/dist/components/VisuallyHidden/VisuallyHidden.js +1 -1
  263. package/dist/components/WheelTimePicker/WheelTimePicker.js +1 -1
  264. package/dist/components/WheelTimePicker/WheelTimePicker.module.css.js +1 -1
  265. package/dist/core/utils/bundle.js +1 -0
  266. package/dist/core/utils/cssShrinkTokens.js +1 -0
  267. package/dist/core/utils/date.js +1 -0
  268. package/dist/core/utils/dom.js +1 -0
  269. package/dist/core/utils/form.js +1 -0
  270. package/dist/core/utils/injectCss.js +1 -0
  271. package/dist/core/utils/keyboard.js +1 -0
  272. package/dist/core/utils/keyboardShortcut.js +1 -0
  273. package/dist/core/utils/listboxOptions.js +1 -0
  274. package/dist/core/utils/math.js +1 -0
  275. package/dist/core/utils/popover.js +1 -0
  276. package/dist/core/utils/slot.js +1 -0
  277. package/dist/core/utils/spacing.js +1 -0
  278. package/dist/core/utils/transform.js +1 -0
  279. package/dist/core/utils/useFallbackId.js +1 -0
  280. package/dist/core/utils/visitElementTree.js +1 -0
  281. package/dist/entries/hooks.js +1 -1
  282. package/dist/entries/icons.js +1 -1
  283. package/dist/entries/utils.js +1 -1
  284. package/dist/hooks/useFormProvider.js +1 -1
  285. package/dist/hooks/useNow.js +1 -1
  286. package/dist/hooks/useRovingList.js +1 -1
  287. package/dist/icons/IconBase.js +1 -0
  288. package/dist/icons/icons/IconAlarm.js +1 -1
  289. package/dist/icons/icons/IconAlignCenter.js +1 -1
  290. package/dist/icons/icons/IconAlignJustify.js +1 -1
  291. package/dist/icons/icons/IconAlignLeft.js +1 -1
  292. package/dist/icons/icons/IconAlignRight.js +1 -1
  293. package/dist/icons/icons/IconAnchor.js +1 -1
  294. package/dist/icons/icons/IconArchive.js +1 -1
  295. package/dist/icons/icons/IconArrowDown.js +1 -1
  296. package/dist/icons/icons/IconArrowLeft.js +1 -1
  297. package/dist/icons/icons/IconArrowRight.js +1 -1
  298. package/dist/icons/icons/IconArrowThinDown.js +1 -1
  299. package/dist/icons/icons/IconArrowThinLeft.js +1 -1
  300. package/dist/icons/icons/IconArrowThinRight.js +1 -1
  301. package/dist/icons/icons/IconArrowThinUp.js +1 -1
  302. package/dist/icons/icons/IconArrowUp.js +1 -1
  303. package/dist/icons/icons/IconArticle.js +1 -1
  304. package/dist/icons/icons/IconBackspace.js +1 -1
  305. package/dist/icons/icons/IconBasket.js +1 -1
  306. package/dist/icons/icons/IconBasketball.js +1 -1
  307. package/dist/icons/icons/IconBatteryEmpty.js +1 -1
  308. package/dist/icons/icons/IconBatteryFull.js +1 -1
  309. package/dist/icons/icons/IconBatteryLow.js +1 -1
  310. package/dist/icons/icons/IconBatteryMedium.js +1 -1
  311. package/dist/icons/icons/IconBell.js +1 -1
  312. package/dist/icons/icons/IconBlog.js +1 -1
  313. package/dist/icons/icons/IconBluetooth.js +1 -1
  314. package/dist/icons/icons/IconBold.js +1 -1
  315. package/dist/icons/icons/IconBookmark.js +1 -1
  316. package/dist/icons/icons/IconBookmarks.js +1 -1
  317. package/dist/icons/icons/IconBox.js +1 -1
  318. package/dist/icons/icons/IconBriefcase.js +1 -1
  319. package/dist/icons/icons/IconBrightnessLow.js +1 -1
  320. package/dist/icons/icons/IconBrightnessMax.js +1 -1
  321. package/dist/icons/icons/IconBrightnessMedium.js +1 -1
  322. package/dist/icons/icons/IconBroadcast.js +1 -1
  323. package/dist/icons/icons/IconBrowser.js +1 -1
  324. package/dist/icons/icons/IconBrowserUpload.js +1 -1
  325. package/dist/icons/icons/IconBrush.js +1 -1
  326. package/dist/icons/icons/IconCalendar.js +1 -1
  327. package/dist/icons/icons/IconCamcorder.js +1 -1
  328. package/dist/icons/icons/IconCamera.js +1 -1
  329. package/dist/icons/icons/IconCard.js +1 -1
  330. package/dist/icons/icons/IconCart.js +1 -1
  331. package/dist/icons/icons/IconChecklist.js +1 -1
  332. package/dist/icons/icons/IconCheckmark.js +1 -1
  333. package/dist/icons/icons/IconChevronDown.js +1 -1
  334. package/dist/icons/icons/IconChevronLeft.js +1 -1
  335. package/dist/icons/icons/IconChevronRight.js +1 -1
  336. package/dist/icons/icons/IconChevronUp.js +1 -1
  337. package/dist/icons/icons/IconChevronUpDown.js +1 -1
  338. package/dist/icons/icons/IconClipboard.js +1 -1
  339. package/dist/icons/icons/IconClock.js +1 -1
  340. package/dist/icons/icons/IconClockwise.js +1 -1
  341. package/dist/icons/icons/IconCloud.js +1 -1
  342. package/dist/icons/icons/IconCloudDownload.js +1 -1
  343. package/dist/icons/icons/IconCloudUpload.js +1 -1
  344. package/dist/icons/icons/IconCode.js +1 -1
  345. package/dist/icons/icons/IconContract.js +1 -1
  346. package/dist/icons/icons/IconContract2.js +1 -1
  347. package/dist/icons/icons/IconConversation.js +1 -1
  348. package/dist/icons/icons/IconCopy.js +1 -1
  349. package/dist/icons/icons/IconCrop.js +1 -1
  350. package/dist/icons/icons/IconCross.js +1 -1
  351. package/dist/icons/icons/IconCrosshair.js +1 -1
  352. package/dist/icons/icons/IconCutlery.js +1 -1
  353. package/dist/icons/icons/IconDeviceDesktop.js +1 -1
  354. package/dist/icons/icons/IconDeviceMobile.js +1 -1
  355. package/dist/icons/icons/IconDeviceTablet.js +1 -1
  356. package/dist/icons/icons/IconDirection.js +1 -1
  357. package/dist/icons/icons/IconDisc.js +1 -1
  358. package/dist/icons/icons/IconDocument.js +1 -1
  359. package/dist/icons/icons/IconDocumentDelete.js +1 -1
  360. package/dist/icons/icons/IconDocumentEdit.js +1 -1
  361. package/dist/icons/icons/IconDocumentNew.js +1 -1
  362. package/dist/icons/icons/IconDocumentRemove.js +1 -1
  363. package/dist/icons/icons/IconDot.js +1 -1
  364. package/dist/icons/icons/IconDots2.js +1 -1
  365. package/dist/icons/icons/IconDots3.js +1 -1
  366. package/dist/icons/icons/IconDownload.js +1 -1
  367. package/dist/icons/icons/IconDragHandle.js +1 -1
  368. package/dist/icons/icons/IconDuplicate.js +1 -1
  369. package/dist/icons/icons/IconEnter.js +1 -1
  370. package/dist/icons/icons/IconExit.js +1 -1
  371. package/dist/icons/icons/IconExpand.js +1 -1
  372. package/dist/icons/icons/IconExpand2.js +1 -1
  373. package/dist/icons/icons/IconExperiment.js +1 -1
  374. package/dist/icons/icons/IconExport.js +1 -1
  375. package/dist/icons/icons/IconFeed.js +1 -1
  376. package/dist/icons/icons/IconFlag.js +1 -1
  377. package/dist/icons/icons/IconFlashlight.js +1 -1
  378. package/dist/icons/icons/IconFolder.js +1 -1
  379. package/dist/icons/icons/IconFolderOpen.js +1 -1
  380. package/dist/icons/icons/IconForward.js +1 -1
  381. package/dist/icons/icons/IconGaming.js +1 -1
  382. package/dist/icons/icons/IconGear.js +1 -1
  383. package/dist/icons/icons/IconGraduation.js +1 -1
  384. package/dist/icons/icons/IconGraphBar.js +1 -1
  385. package/dist/icons/icons/IconGraphLine.js +1 -1
  386. package/dist/icons/icons/IconGraphPie.js +1 -1
  387. package/dist/icons/icons/IconHeadset.js +1 -1
  388. package/dist/icons/icons/IconHeart.js +1 -1
  389. package/dist/icons/icons/IconHelp.js +1 -1
  390. package/dist/icons/icons/IconHome.js +1 -1
  391. package/dist/icons/icons/IconHourglass.js +1 -1
  392. package/dist/icons/icons/IconInbox.js +1 -1
  393. package/dist/icons/icons/IconInformation.js +1 -1
  394. package/dist/icons/icons/IconItalic.js +1 -1
  395. package/dist/icons/icons/IconJewel.js +1 -1
  396. package/dist/icons/icons/IconLifting.js +1 -1
  397. package/dist/icons/icons/IconLightbulb.js +1 -1
  398. package/dist/icons/icons/IconLink.js +1 -1
  399. package/dist/icons/icons/IconLinkBroken.js +1 -1
  400. package/dist/icons/icons/IconList.js +1 -1
  401. package/dist/icons/icons/IconLoading.js +1 -1
  402. package/dist/icons/icons/IconLocation.js +1 -1
  403. package/dist/icons/icons/IconLock.js +1 -1
  404. package/dist/icons/icons/IconLockOpen.js +1 -1
  405. package/dist/icons/icons/IconMail.js +1 -1
  406. package/dist/icons/icons/IconMap.js +1 -1
  407. package/dist/icons/icons/IconMediaLoop.js +1 -1
  408. package/dist/icons/icons/IconMediaNext.js +1 -1
  409. package/dist/icons/icons/IconMediaPause.js +1 -1
  410. package/dist/icons/icons/IconMediaPlay.js +1 -1
  411. package/dist/icons/icons/IconMediaPrevious.js +1 -1
  412. package/dist/icons/icons/IconMediaRecord.js +1 -1
  413. package/dist/icons/icons/IconMediaShuffle.js +1 -1
  414. package/dist/icons/icons/IconMediaStop.js +1 -1
  415. package/dist/icons/icons/IconMedical.js +1 -1
  416. package/dist/icons/icons/IconMenu.js +1 -1
  417. package/dist/icons/icons/IconMessage.js +1 -1
  418. package/dist/icons/icons/IconMeter.js +1 -1
  419. package/dist/icons/icons/IconMicrophone.js +1 -1
  420. package/dist/icons/icons/IconMinus.js +1 -1
  421. package/dist/icons/icons/IconMonitor.js +1 -1
  422. package/dist/icons/icons/IconMove.js +1 -1
  423. package/dist/icons/icons/IconMusic.js +1 -1
  424. package/dist/icons/icons/IconNetwork1.js +1 -1
  425. package/dist/icons/icons/IconNetwork2.js +1 -1
  426. package/dist/icons/icons/IconNetwork3.js +1 -1
  427. package/dist/icons/icons/IconNetwork4.js +1 -1
  428. package/dist/icons/icons/IconNetwork5.js +1 -1
  429. package/dist/icons/icons/IconPamphlet.js +1 -1
  430. package/dist/icons/icons/IconPaperclip.js +1 -1
  431. package/dist/icons/icons/IconPencil.js +1 -1
  432. package/dist/icons/icons/IconPhone.js +1 -1
  433. package/dist/icons/icons/IconPhoto.js +1 -1
  434. package/dist/icons/icons/IconPhotoGroup.js +1 -1
  435. package/dist/icons/icons/IconPill.js +1 -1
  436. package/dist/icons/icons/IconPin.js +1 -1
  437. package/dist/icons/icons/IconPlus.js +1 -1
  438. package/dist/icons/icons/IconPower.js +1 -1
  439. package/dist/icons/icons/IconPreview.js +1 -1
  440. package/dist/icons/icons/IconPreviewOff.js +1 -1
  441. package/dist/icons/icons/IconPrint.js +1 -1
  442. package/dist/icons/icons/IconPulse.js +1 -1
  443. package/dist/icons/icons/IconQuestion.js +1 -1
  444. package/dist/icons/icons/IconReply.js +1 -1
  445. package/dist/icons/icons/IconReplyAll.js +1 -1
  446. package/dist/icons/icons/IconReturn.js +1 -1
  447. package/dist/icons/icons/IconRetweet.js +1 -1
  448. package/dist/icons/icons/IconRocket.js +1 -1
  449. package/dist/icons/icons/IconScale.js +1 -1
  450. package/dist/icons/icons/IconSearch.js +1 -1
  451. package/dist/icons/icons/IconShoppingBag.js +1 -1
  452. package/dist/icons/icons/IconSkip.js +1 -1
  453. package/dist/icons/icons/IconStack.js +1 -1
  454. package/dist/icons/icons/IconStar.js +1 -1
  455. package/dist/icons/icons/IconStopwatch.js +1 -1
  456. package/dist/icons/icons/IconStore.js +1 -1
  457. package/dist/icons/icons/IconSuitcase.js +1 -1
  458. package/dist/icons/icons/IconSwap.js +1 -1
  459. package/dist/icons/icons/IconTag.js +1 -1
  460. package/dist/icons/icons/IconTagDelete.js +1 -1
  461. package/dist/icons/icons/IconTags.js +1 -1
  462. package/dist/icons/icons/IconThumbsDown.js +1 -1
  463. package/dist/icons/icons/IconThumbsUp.js +1 -1
  464. package/dist/icons/icons/IconTicket.js +1 -1
  465. package/dist/icons/icons/IconTimeReverse.js +1 -1
  466. package/dist/icons/icons/IconToDo.js +1 -1
  467. package/dist/icons/icons/IconToggles.js +1 -1
  468. package/dist/icons/icons/IconTrash.js +1 -1
  469. package/dist/icons/icons/IconTrophy.js +1 -1
  470. package/dist/icons/icons/IconUpload.js +1 -1
  471. package/dist/icons/icons/IconUser.js +1 -1
  472. package/dist/icons/icons/IconUserGroup.js +1 -1
  473. package/dist/icons/icons/IconUserId.js +1 -1
  474. package/dist/icons/icons/IconVibrate.js +1 -1
  475. package/dist/icons/icons/IconViewApps.js +1 -1
  476. package/dist/icons/icons/IconViewList.js +1 -1
  477. package/dist/icons/icons/IconViewListLarge.js +1 -1
  478. package/dist/icons/icons/IconViewThumb.js +1 -1
  479. package/dist/icons/icons/IconVolumeFull.js +1 -1
  480. package/dist/icons/icons/IconVolumeLow.js +1 -1
  481. package/dist/icons/icons/IconVolumeMedium.js +1 -1
  482. package/dist/icons/icons/IconVolumeOff.js +1 -1
  483. package/dist/icons/icons/IconWallet.js +1 -1
  484. package/dist/icons/icons/IconWarning.js +1 -1
  485. package/dist/icons/icons/IconWeb.js +1 -1
  486. package/dist/icons/icons/IconWeight.js +1 -1
  487. package/dist/icons/icons/IconWifi.js +1 -1
  488. package/dist/icons/icons/IconWrong.js +1 -1
  489. package/dist/icons/icons/IconZoomIn.js +1 -1
  490. package/dist/icons/icons/IconZoomOut.js +1 -1
  491. package/dist/icons/registry.js +1 -0
  492. package/dist/index.js +1 -1
  493. package/dist/locales/slices/commandPalette.en.js +1 -1
  494. package/dist/locales/slices/commandPalette.ru.js +1 -1
  495. package/dist/locales/slices/imageGallery.en.js +1 -1
  496. package/dist/locales/slices/imageGallery.ru.js +1 -1
  497. package/dist/locales/translate.js +1 -1
  498. package/dist/styles/MediaItem.module.css.js +1 -1
  499. package/dist/styles/calendarChrome.module.css.js +1 -1
  500. package/dist/styles/fieldMessage.module.css.js +1 -1
  501. package/dist/styles/flexChild.module.css.js +1 -1
  502. package/dist/styles/floating.module.css.js +1 -0
  503. package/dist/styles/overlayClose.module.css.js +1 -1
  504. package/dist/styles/overlayScrim.module.css.js +1 -0
  505. package/dist/styles/overlayTransition.module.css.js +1 -0
  506. package/dist/styles/scrollable.module.css.js +1 -0
  507. package/dist/styles/selectField.module.css.js +1 -0
  508. package/dist/styles/textLink.module.css.js +1 -1
  509. package/dist/styles/toggleBox.module.css.js +1 -1
  510. package/dist/styles/toggleGroup.module.css.js +1 -1
  511. package/dist/styles/unstyledControl.module.css.js +1 -1
  512. package/dist/styles/utilities.module.css.js +1 -0
  513. package/dist/styles/visuallyHidden.module.css.js +1 -1
  514. package/docs/COMPONENTS.md +28 -27
  515. package/docs/ICONS.md +3 -1
  516. package/docs/LAYOUT.md +36 -2
  517. package/docs/THEMING.md +8 -24
  518. package/package.json +1 -1
  519. package/types/entries/hooks.d.ts +8 -67
  520. package/types/entries/icons.d.ts +416 -206
  521. package/types/entries/locales.d.ts +2 -0
  522. package/types/entries/utils.d.ts +41 -74
  523. package/types/index.d.ts +828 -671
  524. package/dist/base/As/As.js +0 -1
  525. package/dist/base/FieldPopup/FieldPopup.js +0 -1
  526. package/dist/base/FieldPopup/FieldPopup.module.css.js +0 -1
  527. package/dist/base/Type/Type.js +0 -1
  528. package/dist/components/ActionSheetTrigger/actionSheetContext.js +0 -1
  529. package/dist/components/Backdrop/Backdrop.js +0 -1
  530. package/dist/components/Backdrop/Backdrop.module.css.js +0 -1
  531. package/dist/components/ButtonIcon/ButtonIcon.module.css.js +0 -1
  532. package/dist/components/ButtonIcon/OverlayCloseButton.js +0 -1
  533. package/dist/components/DateField/DateField.utils.js +0 -1
  534. package/dist/components/Dropdown/DropdownMobileSheet.js +0 -1
  535. package/dist/components/GrabHandle/GrabHandle.js +0 -1
  536. package/dist/components/GrabHandle/GrabHandle.module.css.js +0 -1
  537. package/dist/components/Grid/Grid.utils.js +0 -1
  538. package/dist/components/Overlay/Overlay.frame.js +0 -1
  539. package/dist/components/PopupSwitch/PopupSwitch.utils.js +0 -1
  540. package/dist/components/SelectionGroup/SelectionGroup.js +0 -1
  541. package/dist/components/SuggestField/SuggestField.module.css.js +0 -1
  542. package/dist/components/SuggestField/useSuggestInput.js +0 -1
  543. package/dist/hooks/useAutoResize.js +0 -1
  544. package/dist/hooks/useBodyScrollLock.js +0 -1
  545. package/dist/hooks/useEscapeKey.js +0 -1
  546. package/dist/hooks/useFallbackId.js +0 -1
  547. package/dist/hooks/useFocusRestore.js +0 -1
  548. package/dist/hooks/useFocusTrap.js +0 -1
  549. package/dist/hooks/useInertSiblings.js +0 -1
  550. package/dist/hooks/useMediaQuery.js +0 -1
  551. package/dist/hooks/useOtpInputs.js +0 -1
  552. package/dist/hooks/useOutsideClick.js +0 -1
  553. package/dist/hooks/useOverlay.js +0 -1
  554. package/dist/hooks/useOverlayPanel.js +0 -1
  555. package/dist/hooks/usePrefersReducedMotion.js +0 -1
  556. package/dist/hooks/usePresence.js +0 -1
  557. package/dist/hooks/useTrackThumb.js +0 -1
  558. package/dist/icons/createIcon.js +0 -1
  559. package/dist/styles/chartSeries.module.css.js +0 -1
  560. package/dist/styles/scroll.module.css.js +0 -1
  561. package/dist/styles/status.module.css.js +0 -1
  562. package/dist/styles/type.module.css.js +0 -1
  563. package/dist/utils/anchorPosition.js +0 -1
  564. package/dist/utils/autoHeight.js +0 -1
  565. package/dist/utils/clamp.js +0 -1
  566. package/dist/utils/composeEvents.js +0 -1
  567. package/dist/utils/composeRefs.js +0 -1
  568. package/dist/utils/date.js +0 -1
  569. package/dist/utils/focus.js +0 -1
  570. package/dist/utils/formControl.js +0 -1
  571. package/dist/utils/formatBytes.js +0 -1
  572. package/dist/utils/hoverTriggerGroup.js +0 -1
  573. package/dist/utils/injectCss.js +0 -1
  574. package/dist/utils/keyboard.js +0 -1
  575. package/dist/utils/keyboardShortcut.js +0 -1
  576. package/dist/utils/keyboardShortcut.match.js +0 -1
  577. package/dist/utils/listboxOptions.js +0 -1
  578. package/dist/utils/mergeStyles.js +0 -1
  579. package/dist/utils/overlayDismiss.js +0 -1
  580. package/dist/utils/overlayEscapeStack.js +0 -1
  581. package/dist/utils/overlayPurpose.js +0 -1
  582. package/dist/utils/overlayStack.js +0 -1
  583. package/dist/utils/overlayZIndex.js +0 -1
  584. package/dist/utils/portal.js +0 -1
  585. package/dist/utils/preventWhen.js +0 -1
  586. package/dist/utils/slot.js +0 -1
  587. package/dist/utils/spacing.js +0 -1
  588. package/dist/utils/transform.js +0 -1
  589. package/dist/utils/visitElementTree.js +0 -1
  590. /package/dist/{utils → core/utils}/a11y.js +0 -0
  591. /package/dist/{utils → core/utils}/arrayMove.js +0 -0
  592. /package/dist/{utils → core/utils}/cn.js +0 -0
  593. /package/dist/{utils → core/utils}/commitMaskedValue.js +0 -0
  594. /package/dist/{utils → core/utils}/cssSize.js +0 -0
  595. /package/dist/{utils → core/utils}/duration.js +0 -0
  596. /package/dist/{utils → core/utils}/eventTarget.js +0 -0
  597. /package/dist/{utils → core/utils}/fieldMessage.js +0 -0
  598. /package/dist/{utils → core/utils}/implicitAs.js +0 -0
  599. /package/dist/{utils → core/utils}/liveStatus.js +0 -0
  600. /package/dist/{utils → core/utils}/locale.js +0 -0
  601. /package/dist/{utils → core/utils}/plural.js +0 -0
  602. /package/dist/{utils → core/utils}/renderChildren.js +0 -0
  603. /package/dist/{utils → core/utils}/timezone.js +0 -0
  604. /package/dist/{utils → core/utils}/toggleSet.js +0 -0
@@ -2,7 +2,7 @@
2
2
 
3
3
  Краткий справочник публичного API. Установка и точки входа — [README](../README.md). Токены — [THEMING.md](./THEMING.md). Раскладка — [LAYOUT.md](./LAYOUT.md). Иконки — [ICONS.md](./ICONS.md).
4
4
 
5
- **Link:** единственный элемент-потомок получает стили через Slot (роутерный `Link`). Смена HTML-тега у кнопок — `as` (`button` | `a`). **`Dropdown`** / **`Popover`**: якорь — `renderTrigger(props, ref)`; **`Tooltip`**: элемент-child или render-prop. Без пропа `asChild`.
5
+ **Link:** единственный элемент-потомок получает стили через Slot (роутерный `Link`). Смена HTML-тега у кнопок — `as` (`button` | `a`). **`Dropdown`**: якорь — `trigger` (элемент или render-prop, через `renderChildren`). **`Popover`**: якорь — `trigger` (элемент или render-prop, через `renderChildren`). **`Tooltip`**: элемент-child или render-prop. Без пропа `asChild`.
6
6
 
7
7
  Оверлеи: кнопки — в `Modal.Footer` / `Sheet.Footer`, sibling к `Body`, не внутри скролла. Статус и кнопки в одном ряду — `ControlRow` внутри футера.
8
8
 
@@ -12,13 +12,13 @@
12
12
 
13
13
  | Компонент | Описание |
14
14
  |-----------|----------|
15
- | **Button** | Кнопка: `variant` (`primary` / `tinted` / `secondary` / `danger` / `danger_tinted` / `ghost` / `link`), `prefix` / `postfix`, `loading`, `fullWidth`. |
16
- | **ButtonIcon** | Иконка-кнопка на базе **Button**; `circle` / `square`; по умолчанию `variant="ghost"`. |
17
- | **ButtonGroup** | Составная группа (`ButtonGroup` + `ButtonGroup.Item`): `mode` `button` (независимые, выбранность через `active` на Item) / `toggle` (один выбранный, слайдер) / `multi_toggle` (несколько); `itemFit` `equal` \| `content`; `width` `auto` \| `full`; `variant` / `status` / `size` / `borderless` на Root. |
18
- | **SegmentedControl** | Обёртка над `ButtonGroup` (`mode="toggle"`, `width="full"`): `options` + `value` / `onChange`; `itemFit` `equal` \| `content`; варианты `primary` / `tinted` / `secondary` (по умолчанию) / `ghost` / `plain`. |
19
- | **Overflow** | Лишние пункты за ⋯ в `Dropdown`. `Overflow.Item` — панель действий; прочие дети — измерение ширины. `longPress` открывает меню долгим нажатием (хост — **`ActionSheetTrigger`**). |
20
- | **ActionList** | Список действий: `items` / `groups` (`groupId`), `filterable`, `onAction`. |
21
- | **ActionSheetTrigger** | Хост long-press → `Overflow` на тач-экранах; опциональная кнопка ⋯ на десктопе (`showOverflowTrigger`). |
15
+ | **Button** | Кнопка: `variant` (`primary` / `tinted` / `secondary` / `danger` / `danger_tinted` / `ghost` / `link`), `prefix` / `postfix`, `loading`, `fullWidth`. Icon-only: `data-icon-only` (+ `data-shape="circle"`); закрытие overlay: `overlayClose.close` + `data-appearance="diskClose"`. |
16
+ | **ButtonGroup** | Коробка для независимых **`Button`**: `orientation` `horizontal` / `vertical`, `itemFit` `equal` \| `content`, `width` `auto` \| `full`, `size`. `variant` как у **Button**, кроме `link`: `primary` / `tinted` / `secondary` / `danger` / `danger_tinted` / `ghost`. Группа снимает chrome кнопки и не рисует выбранный пункт. Выбор — **SelectionGroup**. |
17
+ | **SegmentedControl** | Один сегмент: **`SelectionGroup`** `radio`. Выбранный пункт — заливка кнопки, без бегунка. `options` + `value` / `onChange`; `orientation` `horizontal` / `vertical`; `itemFit` `equal` \| `content`; варианты `primary` / `tinted` / `secondary` (по умолчанию) / `ghost` / `plain`. |
18
+ | **Overflow** | Лишние пункты за ⋯. `Overflow.Item` открывает **`Menu`**; прочие дети измеряются по ширине и уходят в **`Dropdown`**. `longPress` открывает меню долгим нажатием (хост — **`ActionSheetTrigger`**). |
19
+ | **ActionList** | Список действий: `items` / `groups` (`groupId`), `filterable`, `onAction`. Подпись пункта — **`ActionItem`**. |
20
+ | **ActionItem** | Подпись пункта: иконка, текст, описание, шорткат. Её рисует **`ActionList`**. |
21
+ | **ActionSheetTrigger** | Long-press host. С `items` — внутренний **`Menu`** + `Button[data-overflow-trigger]`; без `items` — дети с `[data-overflow-trigger]` (`Overflow`). `showOverflowTrigger` показывает ⋯ на touch. Хост — `rootRef`. |
22
22
 
23
23
  ---
24
24
 
@@ -26,7 +26,7 @@
26
26
 
27
27
  | Компонент | Описание |
28
28
  |-----------|----------|
29
- | **TextField** | Примитив поля: chrome + `as` (`input` / `textarea` / `button` / `div`). `label` — floating-лейбл; без `label` — поле без подписи (`aria-label` / `placeholder`). `description` — подсказка или слот под chrome. `keepPlaceholder` — не скрывать placeholder при фокусе пустого поля. |
29
+ | **TextField** | Примитив поля: chrome + `as` (`input` / `textarea` / `button` / `div`). `label` — floating-лейбл внутри chrome (центр → вверх при фокусе/значении); без `label` — поле без подписи (`aria-label` / `placeholder`). `description` — подсказка или слот под chrome. `keepPlaceholder` — не скрывать placeholder при фокусе пустого поля. |
30
30
  | **PasswordField** | Пароль на базе TextField: показать/скрыть, опциональный индикатор сложности. |
31
31
  | **SearchField** | Обёртка над `TextField` с иконкой поиска (`onClear` от TextField). Без `label` — тулбарный вид. |
32
32
  | **TextareaField** | Многострочное поле на **TextField** `as="textarea"`; авто-рост высоты. |
@@ -36,12 +36,12 @@
36
36
  | **Rating** | Оценка звёздами. |
37
37
  | **FormMessage** | Подсказка / ошибка / успех под полем; `variant` `hint` / `error` / `success`. |
38
38
  | **Select** | Поле выбора: `options`, `value` / `onChange`, `label`, `filterable`; `selectionMode="multiple"` рисует chips. Свой триггер — `customTrigger`. |
39
- | **SuggestField** | Автодополнение: `TextField` в `customTrigger` у **`Select`**. Chrome от **`FieldBaseProps`** (`label`, `onClear`, `prefix`, …). |
39
+ | **SuggestField** | Автодополнение: `TextField` в `customTrigger` у **`Select`**. Chrome от **`FieldBaseProps`** (`label`, `onClear`, `prefix`, …). Узел поля — `inputRef`. |
40
40
  | **Checkbox** | `size`, `labelSide`, `indeterminate`, `mode` (`default` \| `task`), `align`, `labelVisibility`, `onCheckedChange(checked)` (native `onChange` сохраняется). |
41
41
  | **Switch** | `size`, `labelSide`; `onChange(checked)` и алиас `onCheckedChange`. |
42
42
  | **CheckboxGroup** | Группа чекбоксов с управляемым `value: string[]`. |
43
43
  | **Radio** / **RadioGroup** | Радиокнопка и группа; `labelSide`, `onCheckedChange` на `Radio`. |
44
- | **SelectionGroup** | Без собственного chrome: составной `Root` / `List` / `Item` / `Panel` (roving focus). На нём собраны **Tabs** и **ColorSwatchGroup**. Внешний вид — через `className`. |
44
+ | **SelectionGroup** | Выбор на **`ButtonGroup`** и **`Button`**: `options` (`value`, `label`), `value`, `onChange`, `disabled`. `type` `radio` (одно значение) / `checkbox` (несколько). Выбранный пункт — заливка кнопки. `children` — узел перед пунктами. `customRenderOption` рисует пункт сам и раскладывает `optionProps`, без трека **`ButtonGroup`**. |
45
45
  | **Slider** | Ползунок: `value: number` или диапазон `value: [from, to]` (два thumb). |
46
46
  | **DateField** | Выбор даты: MaskedField + календарь; по умолчанию prefix — `FieldBaseIcon` + календарь; chrome от **`FieldBaseProps`**. |
47
47
  | **DateRangeField** | Диапазон дат (`value`/`onChange` как `{ start?, end? }`); chrome от **`FieldBaseProps`**; `layout` `single` / `split`. |
@@ -49,9 +49,9 @@
49
49
  | **WheelTimePicker** | Два барабана часов и минут (`TimeValue`); выбор кликом или прокруткой применяется сразу. |
50
50
  | **Calendar** | Составной: `Provider` / `Root` / `Header` / `Title` / `Nav` / `Body`. `selectionMode` `single` \| `range` на Provider. `value` — `Date` или `DateRangeValue`. |
51
51
  | **DayStripCalendar** | Горизонтальная полоса дней: `daysCount`, prev/next выбирают соседний день, `value` / `onChange`, `renderDay`. |
52
- | **ColorSwatchGroup** | Выбор цвета из набора цветных точек. |
52
+ | **ColorSwatchGroup** | Выбор цвета из набора цветных точек. Это **`SelectionGroup`** с `customRenderOption`. |
53
53
  | **UploadZone** | Зона перетаскивания файлов для загрузки. |
54
- | **FieldGroup** | Ряд без своего визуала: поля и `Button` / `ButtonIcon` / `ButtonGroup` / `PopupSwitch` стыкуются одной рамкой, скругление снимается со стороны касания. `width="full"` растягивает поля. |
54
+ | **FieldGroup** | Ряд без своего визуала: поля и `Button` / `ButtonGroup` / `PopupSwitch` стыкуются одной рамкой, скругление снимается со стороны касания. `width="full"` растягивает поля. |
55
55
  | **Fieldset** | Группа полей: `legend` / `description` / `hint` / `footer` / `gap`; содержимое — `children`. Варианты `default` / `card` / `plain`. |
56
56
 
57
57
  ---
@@ -63,12 +63,12 @@
63
63
  | **DialogLayout** | Поверхность `Box` с крестиком в правом верхнем углу поверх контента. `onClose`, `showClose`. |
64
64
  | **Modal** | Составной диалог: корень — **`DialogLayout`**, шапка / тело / футер — **`Layout`**. `Header` / `Body` / `Footer`. Заголовок — **`Title`**. Ряд действий — **`ControlRow`** внутри `Footer`. `open` / `onOpenChange`, `showClose` на корне. |
65
65
  | **ConfirmDialog** | Готовый диалог на **`Modal`**: отмена + подтверждение, `confirmLabel`, `secondaryAction`, `status="danger"`, `onOpenChange`. |
66
- | **Sheet** | Панель: поверхность **`Box`**, шапка / тело / футер — **`Layout`**. `Header` / `Body` / `Footer`. Заголовок — **`Title`**. Крестик — `showClose` на `Header`. `mode` / `direction` / `backdrop` / `showHandle`. |
66
+ | **Sheet** | Панель: поверхность **`Box`**, шапка / тело / футер — **`Layout`**. `Header` / `Body` / `Footer`. Заголовок — **`Title`**. Крестик — `showClose` на `Header`. `mode` / `direction` / `showHandle`. Слой — нативный `<dialog>`. |
67
67
  | **ImageLightbox** | Полноэкранный просмотр; `open` / `onOpenChange`. |
68
- | **Dropdown** | Список или меню у кнопки, на базе **`Popover`**. Стрелки по пунктам, выбор пункта закрывает панель, клик снаружи тоже. `align`, `widthMode`, `triggerMode` `toggle` \| `combobox`. На мобильных — нижний Sheet. Форма и календарь — **`Popover`**. |
69
- | **Menu** | Меню действий: клик по `trigger` (Dropdown + ActionList) или `trigger="context"` (ПКМ / Shift+F10 у курсора). |
70
- | **Tooltip** | Подсказка при наведении / фокусе; триггер — элемент-child или render-prop; `side`, `openDelay` / `closeDelay`, wrap. |
71
- | **Popover** | Немодальная панель для произвольного контента: текст, форма, фильтры, календарь. Клик внутри не закрывает, `Tab` ходит по полям. Якорь — `renderTrigger`, без корневой обёртки. `trigger` click/hover/manual, `variant` panel/plain, `side` / `align` / `widthMode`. Подсказки — **Tooltip**. |
68
+ | **Dropdown** | Список или меню у кнопки, на базе **`Popover`** (`popover="auto"`). Якорь — `trigger`. Выбор пункта закрывает панель, клик снаружи и Escape — браузер. Стрелки — у списка внутри. `align`, `widthMode`, `triggerMode` `toggle` \| `combobox`. На узком экране та же панель — нижняя шторка на CSS. Узел — `rootRef`. Форма и календарь — **`Popover`**. |
69
+ | **Menu** | Меню действий: клик по `trigger` (**`Dropdown`** + **`ActionList`**) или `trigger="context"` (ПКМ / Shift+F10 у курсора). Пункты — **`ActionListItem`** (`id`). Программный показ — `popupRef`. |
70
+ | **Tooltip** | Текстовая подсказка. Ховер и фокус — CSS (`:hover`, `:focus-within`), позиция — CSS Anchor. `side`, `openDelay` / `closeDelay` как задержки CSS, без JS-таймера. |
71
+ | **Popover** | Немодальная панель: текст, форма, фильтры, календарь. Открытие — `popovertarget`, закрытие по клику снаружи и Escape — `popover="auto"`. Клик внутри не закрывает, фокус не запирается. Якорь — `trigger`. Позиция — CSS Anchor (`side` / `align`, `positionArea()`). Подсказки — **Tooltip**. |
72
72
  | **CommandPalette** | Палитра Cmd+K: поверхность **`Box`**, подпись **`Text`**. `items` / `groups`, фильтр — **`ActionList`** с `filterable`. |
73
73
 
74
74
  ---
@@ -79,8 +79,8 @@
79
79
  |-----------|----------|
80
80
  | **Pagination** | Постраничная навигация. Без `children` — `Controls`; опционально `totalItems` / `pageSize` / `onPageSizeChange`. Составной: `Summary`, `Controls`, `PageSize`. |
81
81
  | **Sidebar** | Составной: `Root`, `Header`, `Title`, `Content`, `Group`, `GroupLabel`, `Item`, `Footer`, `MobileTrigger`. Шапка, меню и футер — `Layout`. Кнопка сворачивания — на корне, по центру правой границы. `value` / `onChange`; десктопный rail + мобильный Sheet. |
82
- | **Steps** | Мастер: горизонтальный/вертикальный, статус шага, `onStepClick`. |
83
- | **Tabs** | Составные вкладки: `Tabs.List` / `Tabs.Trigger` / `Tabs.Panel`; `value` / `defaultValue` / `onChange` (без `defaultValue` вкладка не выбирается сама); `line` / `pill`, горизонтальные/вертикальные и бейдж на Trigger. |
82
+ | **Steps** | Мастер: горизонтальный/вертикальный, статус шага. `onStepClick` слушает список. Узел — `rootRef`. Ориентация, размер, соединители и статус — `data-*`. |
83
+ | **Tabs** | Список — **`SegmentedControl`** (`itemRole="tab"`): `Tabs.List` принимает `items` (`value`, `label`, `badge`, `badgeDot`, `disabled`), панели — `Tabs.Panel`; `value` / `defaultValue` / `onChange`. `pill` — заливка выбранной вкладки, `line` — черта у выбранной. |
84
84
 
85
85
  ---
86
86
 
@@ -91,11 +91,11 @@
91
91
  | **Table** | Один компонент: `columns` / `data` / `rowKey`, плюс `toolbar`, `loading`, `empty` (`title` / `description` / `action`) и `footer` (пагинация). Сортировка (клиент/сервер), выбор строк, раскрытие, липкие колонки, `density`, resize и `rowActions` (`ActionListItem[]`). |
92
92
  | **Timeline** | Вертикальный/горизонтальный, сворачиваемые подробности (`<details>`), `currentId`. |
93
93
  | **Card** | `variant` outlined/elevated/ghost; радиус по умолчанию `lg`; `header` / `media` / `actions` (ReactNode), `children` — body; `loading`. |
94
- | **Accordion** | `Accordion.Item` с `title` и содержимым в `children`; `flush` (по умолчанию) / `bordered`; `multiple`, отключённый пункт. |
94
+ | **Accordion** | `Accordion.Item` с `title` и содержимым в `children`; секция — `<details>`. `flush` (по умолчанию) / `bordered`; `multiple`, отключённый пункт. Начальное открытие — `defaultOpenIds`. |
95
95
  | **Badge** | `size` sm/md, `position` overlay/standalone, `variant` включая `error`; overlay — `--altum-badge-overhang`. Числовой `label` ограничивается через `max`; `children` — якорь overlay. |
96
96
  | **Avatar** / **AvatarGroup** | Размеры `xs`…`xl`, кольцо статуса, запасная иконка; группа с наложением. |
97
97
  | **Chip** | Тег / фильтр: `mode` `chip` \| `tag` \| `toggle`, `size`, `onRemove` / `onClick`. **`ChipGroup`**: `mode` `chip` \| `tag`, `gap`. |
98
- | **StatBadge** | Компактный блок статистики: число + подпись; `variant` `default` / `success` / `warning` / `error`; `size` `md` / `sm`. |
98
+ | **StatBadge** | Компактный блок статистики: число + подпись; `variant` `default` / `success` / `warning` / `error`; `size` `md` / `sm`. Узел — `rootRef`. Размер и статус — `data-size` и `data-variant`. |
99
99
  | **EmptyState** | Пустое состояние: иконка (`--altum-color-empty-icon`), заголовок, описание, действие; `size` для вложенных панелей. |
100
100
  | **DescriptionList** | Список «ключ — значение» (`stacked` / `inline`, колонки). |
101
101
  | **RelativeTime** | Относительное время («2 ч назад»). |
@@ -122,12 +122,13 @@
122
122
  |-----------|----------|
123
123
  | **Layout** | Панель: скролл на корне; `Header` / `Footer` sticky; алиасы `Inline` / `Split` / `ControlRow` / `Item`. |
124
124
  | **Stack** / **Inline** / **Split** / **ControlRow** / **LayoutItem** | Flex-примитивы (вертикаль / чипы / края / ряд контролов / `grow`). |
125
- | **Grid** / **GridItem** | CSS Grid; `GRID_BREAKPOINTS`. |
125
+ | **Grid** / **GridItem** | CSS Grid; скалярные `columns` / `span`, `mode` autoFit/autoFill. |
126
126
  | **Container** / **Page** | Колонка с max-width (`sm`…`xl` / `full`) и оболочка страницы. |
127
127
  | **Box** | Поверхность (`outlined` / `elevated` / `floating` / `tinted` / `secondary` / `muted` / `glass` / `overlay` / `ghost` / `plain`). Красит только себя; потомки остаются на глобальных токенах. |
128
128
  | **Collapse** | Плавное сворачивание по высоте (CSS `grid-template-rows`). |
129
129
  | **Separator** | Разделитель: `orientation` horizontal \| vertical, текст (`children`), отступы `start` / `end`. |
130
- | **Item** | Строка: `media` / `mediaVariant`, `title`, `description`, `actions`; поверхность — `Box`. |
130
+ | **Gap** | Пустой зазор: `size` (токен spacing), `orientation` horizontal \| vertical. Ритм группы — `gap` у Stack / Inline. |
131
+ | **Item** | Строка: `media` / `mediaVariant`, `title`, `description`, `actions`; `wrap` переносит длинный текст вместо ellipsis; поверхность — `Box`. |
131
132
  | **AspectRatio** | Обёртка с `aspect-ratio` (16:9 / 1:1). |
132
133
  | **Media** | img/video-превью с `aspect-ratio`. |
133
134
  | **ScrollArea** | Стилизованный скролл (`orientation` y/x/both); `maxHeight` / `maxWidth` без дефолта. |
@@ -139,9 +140,9 @@
139
140
  | Компонент | Описание |
140
141
  |-----------|----------|
141
142
  | **ImageGallery** | Галерея: `images`, chrome `default` \| `none`, `showNav` / `showThumbnails` / `showCounter`. |
142
- | **ImageCrop** | Обрезка изображения. Корень — **`DialogLayout`**, шапка, сцена и кнопки — **`Layout`**, заголовок — **`Title`**. |
143
+ | **ImageCrop** | Обрезка изображения. Корень — **`DialogLayout`**, шапка и кнопки — разметка компонента, заголовок — **`Title`**. |
143
144
  | **FileList** | Список загрузок на **`Item`**: progress / retry / remove через `FileList.Item`. |
144
- | **Attachment** | Карточка файла: `Item` + статус загрузки (`idle` / `uploading` / `error` / `done`). Действия в слоте — **`ButtonIcon`**. |
145
+ | **Attachment** | Карточка файла: `Item` + статус загрузки (`idle` / `uploading` / `error` / `done`). Действия в слоте — icon-only **`Button`**. |
145
146
 
146
147
  ---
147
148
 
@@ -170,7 +171,7 @@
170
171
  |-----------|----------|
171
172
  | **SafeArea** | Отступы под notch / home-indicator (`env(safe-area-inset-*)`). |
172
173
  | **PullToRefresh** | Жест «потянуть, чтобы обновить» для контейнера с прокруткой. |
173
- | **SwipeToAction** | Сенсорная обёртка: свайп раскрывает действия (iOS). |
174
+ | **SwipeToAction** | Сенсорная обёртка: свайп раскрывает действия (iOS). Узел — `rootRef`. Жест пишется в DOM, полный свайп — `data-full-swipe-active`. |
174
175
 
175
176
  ---
176
177
 
package/docs/ICONS.md CHANGED
@@ -9,7 +9,9 @@ import {IconSearch} from 'altum/icons';
9
9
  <ButtonIcon aria-label="Поиск" icon={<IconSearch />} />
10
10
  ```
11
11
 
12
- Набор **не** входит в главный barrel — только `altum/icons`. Просмотр: Storybook → **Icons**. Каталог собран через `createIcon` (`IconProps` тот же: `size`, `color`).
12
+ Набор **не** входит в главный barrel — только `altum/icons`. Просмотр: Storybook → **Icons**.
13
+ Каталог: `ICON_PATHS` + `<IconBase d={…} />` (тонкие `Icon*` обёртки). `IconProps`: `size`, `color`.
14
+ Кастомный path: `<IconBase d="M…" />` (или несколько `d` массивом).
13
15
 
14
16
  ### Контракт для кастомных SVG
15
17
 
package/docs/LAYOUT.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Layout-компоненты altum
2
2
 
3
- Гайд: **что выбрать** и **зачем**, для панели `Layout` и flex-примитивов (`Stack`, `Inline`, `Split`, `ControlRow`, `LayoutItem`).
3
+ Гайд: **что выбрать** и **зачем**, для панели `Layout`, flex-примитивов (`Stack`, `Inline`, `Split`, `ControlRow`, `LayoutItem`) и точечного зазора `Gap`.
4
4
 
5
5
  Стили — CSS Modules + токены `--altum-g-space-*` (8pt).
6
6
 
@@ -16,6 +16,7 @@ import {
16
16
  Grid,
17
17
  Container,
18
18
  Page,
19
+ Gap,
19
20
  } from 'altum';
20
21
  ```
21
22
 
@@ -34,6 +35,7 @@ import {
34
35
  | Поля + Chip + Button в одной строке фильтров | **ControlRow** |
35
36
  | Одному ребёнку — `flex: 1` или «не сжимать» | **LayoutItem** (`ControlRow.Item`) |
36
37
  | Колонки сетки | **Grid** |
38
+ | Один дополнительный шаг между двумя соседями | **Gap** |
37
39
  | Оболочка input (label / prefix / clear) | **TextField** |
38
40
 
39
41
  ---
@@ -83,7 +85,7 @@ import {
83
85
  <Layout.Header sticky>
84
86
  <Split>
85
87
  <h2>Настройки</h2>
86
- <ButtonIcon aria-label="Закрыть" />
88
+ <Button variant="ghost" data-icon-only aria-label="Закрыть" prefix={<IconCross />} />
87
89
  </Split>
88
90
  </Layout.Header>
89
91
  <Layout.Content>
@@ -247,6 +249,38 @@ Flex-ячейка внутри Stack / Inline / Split / ControlRow.
247
249
 
248
250
  ---
249
251
 
252
+ ## Gap
253
+
254
+ Пустой зазор фиксированного размера. Общий ритм группы по-прежнему задаёт `gap` у **Stack** / **Inline**. **Gap** — один дополнительный шаг между двумя соседями или зазор вне flex-примитива. Линия — **Separator**.
255
+
256
+ | Проп | По умолчанию | Смысл |
257
+ |------|--------------|--------|
258
+ | `size` | `md` | Токен `none`…`xl` (как `gap` у Stack), число (px) или CSS-строка |
259
+ | `orientation` | `horizontal` | `horizontal` — высота между блоками; `vertical` — ширина в ряду |
260
+
261
+ **Использовать:** отделить подвал формы от полей сильнее, чем общий `gap`; вставить шаг в разметке, которая не обёрнута в Stack / Inline.
262
+
263
+ **Не использовать:** одинаковый ритм у всех детей → `gap` у **Stack** / **Inline**; линия между секциями → **Separator**.
264
+
265
+ ```tsx
266
+ <Stack gap="md">
267
+ <TextField label="Имя" width="full" />
268
+ <TextField label="Эл. почта" width="full" />
269
+ <Gap size="lg" />
270
+ <Button variant="primary">Сохранить</Button>
271
+ </Stack>
272
+ ```
273
+
274
+ ```tsx
275
+ <Inline gap="none">
276
+ <Text>Профиль</Text>
277
+ <Gap orientation="vertical" size="md" />
278
+ <Text>Настройки</Text>
279
+ </Inline>
280
+ ```
281
+
282
+ ---
283
+
250
284
  ## Типичные композиции
251
285
 
252
286
  ### Тулбар страницы
package/docs/THEMING.md CHANGED
@@ -118,7 +118,7 @@ return (
118
118
  | `--altum-toggle-align-nudge` | `0.15em` | Оптическое выравнивание бокса тоггла относительно лейбла |
119
119
  | `--altum-rating-size-sm` / `md` / `lg` | 16 / 22 / 28 | Размер звезды Rating |
120
120
  | `--altum-command-palette-max-width` / `height` | 560 / 520 | Ограничение панели CommandPalette |
121
- | `--altum-button-group-item-min-sm` / `md` / `lg` | space-6 / 7 / 8 | Мин. ширина ButtonGroup.Item |
121
+ | `--altum-button-group-item-min-sm` / `md` / `lg` | space-6 / 7 / 8 | Мин. ширина кнопки внутри ButtonGroup |
122
122
  | `--altum-focus-ring-width` | 2px | Толщина outline-фокуса (навигация / тогглы / выбор) |
123
123
  | `--altum-focus-ring-offset` | light 1px / dark 2px | Смещение outline-фокуса (согласовано с зазором кольца кнопки) |
124
124
  | `--altum-focus-ring-color` | light → `--altum-color-input-border-focus`; dark `rgba(248,250,252,0.55)` | Общий цвет outline-фокуса (в dark — светлая hairline, не заливка CTA) |
@@ -132,7 +132,7 @@ return (
132
132
  | `--altum-switch-track-off` | смесь ink на ctrl-bg | Заливка трека выключенного Switch |
133
133
  | `--altum-overlay-close-size` | 28px | Хит-зона закрытия Overlay / Alert / Notification |
134
134
  | `--altum-overlay-close-icon-size` | 16px | Кегль × в overlay-close |
135
- | `--altum-overlay-close-fg` / `--altum-overlay-close-fg-hover` / `--altum-overlay-close-bg` / `--altum-overlay-close-bg-hover` | тема | Голый крестик overlay (Modal / Sheet, `ButtonIcon` `diskClose`); chrome только на hover |
135
+ | `--altum-overlay-close-fg` / `--altum-overlay-close-fg-hover` / `--altum-overlay-close-bg` / `--altum-overlay-close-bg-hover` | тема | Голый крестик overlay (Modal / Sheet, `Button` `data-appearance="diskClose"`); chrome только на hover |
136
136
  | `--altum-badge-overhang` | `space-1` + `control-inset` (6px) | Запас раскладки + смещение overlay-бейджа |
137
137
  | `--altum-badge-digit-nudge` | `0.5px` | Сдвиг цифры в круглом **Badge** вниз (оптический центр) |
138
138
  | `--altum-slider-track-height` | `3px` | Высота трека **Slider** |
@@ -168,31 +168,15 @@ return (
168
168
  | Переменная | По умолчанию | Кто использует |
169
169
  |------------|--------------|----------------|
170
170
  | `--altum-g-z-below` | `-1` | Линия-коннектор Steps |
171
- | `--altum-g-z-raised` | `1` | Слайдер ButtonGroup / SegmentedControl |
171
+ | `--altum-g-z-raised` | `1` | Бегунок SegmentedControl |
172
172
  | `--altum-g-z-raised-above` | `2` | Контент кнопки, контролы NumberField |
173
173
  | `--altum-g-z-control` | `5` | Бегунок Slider |
174
174
  | `--altum-g-z-local` | `10` | Badge, липкий заголовок таблицы, маска TextField |
175
175
  | `--altum-g-z-upload` | `50` | Drag-оверлей UploadZone |
176
- | `--altum-g-z-overlay` | `1000` | **Sheet** (по умолчанию), портальные панели между chrome и Modal |
177
- | `--altum-g-z-modal` | `1100` | Modal |
178
- | `--altum-g-z-tooltip` | `1150` | Tooltip (выше модалки, чтобы подсказки работали в диалогах) |
179
- | `--altum-g-z-dropdown` | `1200` | Dropdown (выше Modal) |
180
- | `--altum-g-z-lightbox` | `1250` | ImageLightbox |
181
- | `--altum-g-z-notification` | `1300` | Тосты Notification; Sheet с `zIndexTier="notification"` |
182
-
183
- `Overlay` использует **`purpose`** вместо сырых `zIndex` / `sideOffset`:
184
-
185
- | purpose | z-index | sideOffset |
186
- |---------|---------|------------|
187
- | `tooltip` | `--altum-g-z-tooltip` | `--altum-overlay-offset-tooltip` (8px) |
188
- | `popover` | `--altum-g-z-dropdown` | `--altum-overlay-offset-popover` (8px) |
189
- | `dropdown` | `--altum-g-z-dropdown` | `--altum-overlay-offset-dropdown` (8px) |
190
- | `modal` | `--altum-g-z-modal` | — |
191
- | `sheet` | `--altum-g-z-overlay` | — |
192
- | `lightbox` | `--altum-g-z-lightbox` | — |
193
- | `notification` | `--altum-g-z-notification` | — |
194
-
195
- Переопределение `Sheet`: `zIndexTier` (`overlay` \| `modal` \| `dropdown` \| `lightbox` \| `notification`) или сырой `zIndex`. Меню, открытые внутри приподнятого Sheet, стекаются выше него (`max(--altum-g-z-dropdown, parent + 1)`).
176
+ | `--altum-g-z-dropdown` | `1200` | PopupSwitch, Tooltip |
177
+ | `--altum-g-z-notification` | `1300` | Тосты Notification |
178
+
179
+ Modal, Sheet и ImageLightbox не задают z-index: их держит нативный `<dialog>`. Зазор до якоря есть только у **`Popover`** (`--altum-overlay-offset-popover`, 8px): **`Tooltip`** и **`Dropdown`** стоят на нём и отдельного offset не имеют.
196
180
 
197
181
  ### Акцент (`--altum-color-brand-*`)
198
182
 
@@ -283,7 +267,7 @@ Primary- и danger-кнопки остаются на `--altum-color-brand-*` /
283
267
  | `--altum-color-dropdown-bg` | Modal / Sheet / выпадающие панели (dark: elevated, не overlay полей) |
284
268
  | `--altum-color-option-hover` | Фоны при наведении |
285
269
  | `--altum-color-selection-fill` / `--altum-color-selection-fill-fg` / `--altum-color-selection-fill-emphasis` | Акцентный выбранный chrome (Segmented primary, Chip primary/tinted active) |
286
- | `--altum-color-selection-neutral-fill` / `--altum-color-selection-neutral-border` / `--altum-color-selection-neutral-slider` | Мягкий выбранный chrome: Chip secondary active; slider — приподнятый thumb Segmented / ButtonGroup |
270
+ | `--altum-color-selection-neutral-fill` / `--altum-color-selection-neutral-border` / `--altum-color-selection-neutral-slider` | Мягкий выбранный chrome: Chip secondary active; slider — приподнятый thumb SegmentedControl |
287
271
  | `--altum-color-empty-icon` | Чернила иллюстрации EmptyState (`--altum-color-text-secondary`) |
288
272
 
289
273
  ## Тёмная тема
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "altum",
3
- "version": "0.0.7",
3
+ "version": "0.0.9",
4
4
  "description": "Библиотека React + TypeScript UI-компонентов: CSS Modules, токены ThemeProvider, адаптация overlay/sheet.",
5
5
  "license": "MIT",
6
6
  "author": "Alexander <azeeson@gmail.com>",
@@ -1,11 +1,5 @@
1
1
  import * as react from 'react';
2
- import { RefObject, PointerEvent, MouseEvent as MouseEvent$1, Dispatch, SetStateAction, ReactNode } from 'react';
3
-
4
- interface UseOutsideClickOptions {
5
- enabled?: boolean;
6
- }
7
- type OutsideClickTarget = RefObject<HTMLElement | null>;
8
- declare function useOutsideClick(refs: OutsideClickTarget | OutsideClickTarget[], callback: (event: MouseEvent | TouchEvent) => void, options?: UseOutsideClickOptions): void;
2
+ import { PointerEvent, MouseEvent, Dispatch, SetStateAction, ReactNode } from 'react';
9
3
 
10
4
  type DocumentKeyDownTarget = 'document' | 'window';
11
5
  interface UseDocumentKeyDownOptions {
@@ -14,53 +8,11 @@ interface UseDocumentKeyDownOptions {
14
8
  }
15
9
  declare function useDocumentKeyDown(handler: (event: KeyboardEvent) => void, options?: UseDocumentKeyDownOptions): void;
16
10
 
17
- interface UseEscapeKeyOptions {
18
- enabled?: boolean;
19
- target?: DocumentKeyDownTarget;
20
- layered?: boolean;
21
- }
22
- declare function useEscapeKey(onEscape: () => void, options?: UseEscapeKeyOptions): void;
23
-
24
- declare function useBodyScrollLock(locked: boolean): void;
25
-
26
11
  declare function useControlledState<T>(controlled: T | undefined, defaultValue: T): [T, (next: T) => void, boolean];
27
12
  declare function useControlledStateWithCallback<T>(controlled: T | undefined, defaultValue: T, onChange?: (next: T) => void): [T, (next: T) => void, boolean];
28
13
 
29
14
  declare function useNow(intervalMs: number): Date;
30
15
 
31
- interface UseOverlayOptions {
32
- open: boolean;
33
- closeOnEscape?: boolean;
34
- lockScroll?: boolean;
35
- rootRef?: RefObject<HTMLElement | null>;
36
- restoreFocus?: boolean;
37
- }
38
- declare function useOverlay(onClose: () => void, { open, closeOnEscape, lockScroll, rootRef: rootRefProp, restoreFocus, }: UseOverlayOptions): void;
39
-
40
- declare function useFocusRestore(active: boolean): void;
41
-
42
- declare function useInertSiblings(active: boolean, rootRef: RefObject<HTMLElement | null>): void;
43
-
44
- interface UseOverlayPanelOptions {
45
- active: boolean;
46
- rootRef: RefObject<HTMLElement | null>;
47
- restoreFocus?: boolean;
48
- }
49
- declare function useOverlayPanel({ active, rootRef, restoreFocus, }: UseOverlayPanelOptions): void;
50
-
51
- interface UseFocusTrapOptions {
52
- active: boolean;
53
- containerRef: RefObject<HTMLElement | null>;
54
- initialFocusRef?: RefObject<HTMLElement | null>;
55
- returnFocusRef?: RefObject<HTMLElement | null>;
56
- restoreFocus?: boolean;
57
- onEscape?: () => void;
58
- }
59
- declare function useFocusTrap({ active, containerRef, initialFocusRef, returnFocusRef, restoreFocus, onEscape, }: UseFocusTrapOptions): void;
60
-
61
- declare const MOBILE_MEDIA_QUERY = "(max-width: 768px)";
62
- declare function useMediaQuery(query: string): boolean;
63
-
64
16
  interface UseLongPressOptions {
65
17
  delay?: number;
66
18
  disabled?: boolean;
@@ -70,20 +22,12 @@ interface UseLongPressHandlers {
70
22
  onPointerDown: (event: PointerEvent) => void;
71
23
  onPointerUp: (event: PointerEvent) => void;
72
24
  onPointerCancel: (event: PointerEvent) => void;
73
- onContextMenu: (event: MouseEvent$1) => void;
74
- onClick: (event: MouseEvent$1) => void;
25
+ onContextMenu: (event: MouseEvent) => void;
26
+ onClick: (event: MouseEvent) => void;
75
27
  cancel: () => void;
76
28
  }
77
29
  declare function useLongPress(onLongPress: () => void, options?: UseLongPressOptions): UseLongPressHandlers;
78
30
 
79
- declare const REDUCED_MOTION_QUERY = "(prefers-reduced-motion: reduce)";
80
- declare function usePrefersReducedMotion(): boolean;
81
-
82
- declare function usePresence(open: boolean, durationMs: number): {
83
- shouldRender: boolean;
84
- presented: boolean;
85
- };
86
-
87
31
  type FormErrors<T extends Record<string, unknown>> = Partial<Record<keyof T, string>>;
88
32
  type FieldValidate<T extends Record<string, unknown>, K extends keyof T> = (value: T[K], values: T) => string | undefined;
89
33
  interface RegisterOptions<T extends Record<string, unknown>, K extends keyof T> {
@@ -112,12 +56,9 @@ type UseFormReturn<T extends Record<string, unknown>> = ReturnType<typeof useFor
112
56
 
113
57
  declare function useFormContext<T extends Record<string, unknown>>(): UseFormReturn<T>;
114
58
  declare function useFormProvider<T extends Record<string, unknown>>(initialValues: T): {
115
- FormProvider: {
116
- ({ children }: {
117
- children?: ReactNode;
118
- }): react.FunctionComponentElement<react.ProviderProps<UseFormReturn<Record<string, unknown>> | null>>;
119
- displayName: string;
120
- };
59
+ FormProvider: ({ children }: {
60
+ children?: ReactNode;
61
+ }) => react.FunctionComponentElement<react.ProviderProps<UseFormReturn<Record<string, unknown>> | null>>;
121
62
  values: T;
122
63
  errors: Partial<Record<keyof T, string>>;
123
64
  isDirty: boolean;
@@ -151,5 +92,5 @@ interface ValidationRules {
151
92
  declare function fieldRules(rules: ValidationRules): FormRule;
152
93
  declare function checkedValue(payload: unknown): boolean;
153
94
 
154
- export { MOBILE_MEDIA_QUERY, REDUCED_MOTION_QUERY, checkedValue, compose, fieldRules, pattern, required, useBodyScrollLock, useControlledState, useControlledStateWithCallback, useDocumentKeyDown, useEscapeKey, useFocusRestore, useFocusTrap, useForm, useFormContext, useFormProvider, useInertSiblings, useLongPress, useMediaQuery, useNow, useOutsideClick, useOverlay, useOverlayPanel, usePrefersReducedMotion, usePresence };
155
- export type { DocumentKeyDownTarget, FieldValidate, FormErrors, FormRule, RegisterOptions, UseDocumentKeyDownOptions, UseEscapeKeyOptions, UseFocusTrapOptions, UseFormReturn, UseLongPressHandlers, UseLongPressOptions, UseOutsideClickOptions, UseOverlayOptions, UseOverlayPanelOptions, ValidationRules };
95
+ export { checkedValue, compose, fieldRules, pattern, required, useControlledState, useControlledStateWithCallback, useDocumentKeyDown, useForm, useFormContext, useFormProvider, useLongPress, useNow };
96
+ export type { DocumentKeyDownTarget, FieldValidate, FormErrors, FormRule, RegisterOptions, UseDocumentKeyDownOptions, UseFormReturn, UseLongPressHandlers, UseLongPressOptions, ValidationRules };