altum 0.0.1
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.
- package/CHANGELOG.md +24 -0
- package/LICENSE +21 -0
- package/README.md +53 -0
- package/dist/base/ButtonBase/ButtonBase.js +1 -0
- package/dist/base/ButtonBase/ButtonBase.module.css.js +1 -0
- package/dist/base/ChartBase/ChartBase.js +1 -0
- package/dist/base/ChartBase/ChartBase.module.css.js +1 -0
- package/dist/base/ChartBase/ChartBase.utils.js +1 -0
- package/dist/base/DialogBase/DialogBase.js +1 -0
- package/dist/base/DialogBase/DialogBase.module.css.js +1 -0
- package/dist/base/FieldBase/FieldBase.js +1 -0
- package/dist/base/FieldBase/FieldBase.module.css.js +1 -0
- package/dist/base/ListOptionBase/ListOptionBase.js +1 -0
- package/dist/base/ListOptionBase/ListOptionBase.module.css.js +1 -0
- package/dist/base/MediaRowBase/MediaRowBase.js +1 -0
- package/dist/base/MediaRowBase/MediaRowBase.module.css.js +1 -0
- package/dist/base/ToggleControlBase/ToggleControlBase.js +1 -0
- package/dist/base/ToggleControlBase/ToggleControlBase.module.css.js +1 -0
- package/dist/components/Accordion/Accordion.js +1 -0
- package/dist/components/Accordion/Accordion.module.css.js +1 -0
- package/dist/components/ActionList/ActionList.js +1 -0
- package/dist/components/ActionList/ActionList.module.css.js +1 -0
- package/dist/components/ActionSheetTrigger/ActionSheetTrigger.js +1 -0
- package/dist/components/ActionSheetTrigger/ActionSheetTrigger.module.css.js +1 -0
- package/dist/components/ActionSheetTrigger/actionSheetContext.js +1 -0
- package/dist/components/Alert/Alert.js +1 -0
- package/dist/components/Alert/Alert.module.css.js +1 -0
- package/dist/components/AspectRatio/AspectRatio.js +1 -0
- package/dist/components/AspectRatio/AspectRatio.module.css.js +1 -0
- package/dist/components/Attachment/Attachment.js +1 -0
- package/dist/components/Attachment/Attachment.module.css.js +1 -0
- package/dist/components/Avatar/Avatar.js +1 -0
- package/dist/components/Avatar/Avatar.module.css.js +1 -0
- package/dist/components/Backdrop/Backdrop.js +1 -0
- package/dist/components/Backdrop/Backdrop.module.css.js +1 -0
- package/dist/components/Badge/Badge.js +1 -0
- package/dist/components/Badge/Badge.module.css.js +1 -0
- package/dist/components/BarChart/BarChart.js +1 -0
- package/dist/components/BarChart/BarChart.module.css.js +1 -0
- package/dist/components/Box/Box.js +1 -0
- package/dist/components/Box/Box.module.css.js +1 -0
- package/dist/components/Bubble/Bubble.js +1 -0
- package/dist/components/Bubble/Bubble.module.css.js +1 -0
- package/dist/components/Button/Button.js +1 -0
- package/dist/components/Button/Button.module.css.js +1 -0
- package/dist/components/ButtonGroup/ButtonGroup.js +1 -0
- package/dist/components/ButtonGroup/ButtonGroup.module.css.js +1 -0
- package/dist/components/ButtonIcon/ButtonIcon.js +1 -0
- package/dist/components/ButtonIcon/ButtonIcon.module.css.js +1 -0
- package/dist/components/Calendar/Calendar.context.js +1 -0
- package/dist/components/Calendar/Calendar.js +1 -0
- package/dist/components/Calendar/Calendar.module.css.js +1 -0
- package/dist/components/Calendar/Calendar.slots.js +1 -0
- package/dist/components/Calendar/Calendar.types.js +1 -0
- package/dist/components/Calendar/Calendar.utils.js +1 -0
- package/dist/components/Calendar/Calendar.views.js +1 -0
- package/dist/components/Calendar/calendar.schedule.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.EventBar.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.EventBar.module.css.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.MonthView.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.Schedule.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.Schedule.module.css.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.Schedule.types.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.Schedule.utils.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.ScheduleView.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.TaskChip.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.TimedEvent.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.TimedEvent.module.css.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.YearView.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.chrome.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.context.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.module.css.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.utils.js +1 -0
- package/dist/components/CalendarBoard/CalendarBoard.views.js +1 -0
- package/dist/components/CalendarBoard/calendarBoardHoverStore.js +1 -0
- package/dist/components/Card/Card.js +1 -0
- package/dist/components/Card/Card.module.css.js +1 -0
- package/dist/components/Checkbox/Checkbox.js +1 -0
- package/dist/components/Chip/Chip.js +1 -0
- package/dist/components/Chip/Chip.module.css.js +1 -0
- package/dist/components/Collapse/Collapse.js +1 -0
- package/dist/components/Collapse/Collapse.module.css.js +1 -0
- package/dist/components/ColorSwatchGroup/ColorSwatchGroup.js +1 -0
- package/dist/components/ColorSwatchGroup/ColorSwatchGroup.module.css.js +1 -0
- package/dist/components/CommandPalette/CommandPalette.js +1 -0
- package/dist/components/CommandPalette/CommandPalette.module.css.js +1 -0
- package/dist/components/ConfirmDialog/ConfirmDialog.js +1 -0
- package/dist/components/ConfirmDialog/ConfirmDialog.module.css.js +1 -0
- package/dist/components/Container/Container.js +1 -0
- package/dist/components/Container/Container.module.css.js +1 -0
- package/dist/components/ContextMenu/ContextMenu.js +1 -0
- package/dist/components/ContextMenu/ContextMenu.module.css.js +1 -0
- package/dist/components/CustomSelect/CustomSelect.Filter.js +1 -0
- package/dist/components/CustomSelect/CustomSelect.List.js +1 -0
- package/dist/components/CustomSelect/CustomSelect.Shell.js +1 -0
- package/dist/components/CustomSelect/CustomSelect.Shell.module.css.js +1 -0
- package/dist/components/CustomSelect/CustomSelect.context.js +1 -0
- package/dist/components/CustomSelect/CustomSelect.js +1 -0
- package/dist/components/CustomSelect/CustomSelect.module.css.js +1 -0
- package/dist/components/CustomSelect/useCustomSelectComboboxKeyboard.js +1 -0
- package/dist/components/DatePicker/DatePicker.js +1 -0
- package/dist/components/DatePicker/DatePicker.utils.js +1 -0
- package/dist/components/DateRangePicker/DateRangePicker.js +1 -0
- package/dist/components/DateRangePicker/DateRangePicker.module.css.js +1 -0
- package/dist/components/DayStripCalendar/DayStripCalendar.js +1 -0
- package/dist/components/DayStripCalendar/DayStripCalendar.module.css.js +1 -0
- package/dist/components/DescriptionList/DescriptionList.js +1 -0
- package/dist/components/DescriptionList/DescriptionList.module.css.js +1 -0
- package/dist/components/DonutChart/DonutChart.js +1 -0
- package/dist/components/DonutChart/DonutChart.module.css.js +1 -0
- package/dist/components/Dropdown/Dropdown.js +1 -0
- package/dist/components/Dropdown/Dropdown.module.css.js +1 -0
- package/dist/components/Dropdown/DropdownMobileSheet.js +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.js +1 -0
- package/dist/components/EmptyState/EmptyState.js +1 -0
- package/dist/components/EmptyState/EmptyState.module.css.js +1 -0
- package/dist/components/FieldLabel/FieldLabel.js +1 -0
- package/dist/components/FieldLabel/FieldLabel.module.css.js +1 -0
- package/dist/components/Fieldset/Fieldset.js +1 -0
- package/dist/components/Fieldset/Fieldset.module.css.js +1 -0
- package/dist/components/FileList/FileList.js +1 -0
- package/dist/components/FileList/FileList.module.css.js +1 -0
- package/dist/components/FocusTrap/FocusTrap.js +1 -0
- package/dist/components/FormMessage/FormMessage.js +1 -0
- package/dist/components/FormMessage/FormMessage.module.css.js +1 -0
- package/dist/components/GrabHandle/GrabHandle.js +1 -0
- package/dist/components/GrabHandle/GrabHandle.module.css.js +1 -0
- package/dist/components/Grid/Grid.js +1 -0
- package/dist/components/Grid/Grid.module.css.js +1 -0
- package/dist/components/Grid/Grid.utils.js +1 -0
- package/dist/components/ImageCrop/ImageCrop.js +1 -0
- package/dist/components/ImageCrop/ImageCrop.module.css.js +1 -0
- package/dist/components/ImageCrop/ImageCrop.utils.js +1 -0
- package/dist/components/ImageGallery/ImageGallery.js +1 -0
- package/dist/components/ImageGallery/ImageGallery.module.css.js +1 -0
- package/dist/components/ImageLightbox/ImageLightbox.js +1 -0
- package/dist/components/ImageLightbox/ImageLightbox.module.css.js +1 -0
- package/dist/components/Item/Item.js +1 -0
- package/dist/components/Item/Item.module.css.js +1 -0
- package/dist/components/Kbd/Kbd.js +1 -0
- package/dist/components/Kbd/Kbd.module.css.js +1 -0
- package/dist/components/Layout/ControlRow.js +1 -0
- package/dist/components/Layout/Inline.js +1 -0
- package/dist/components/Layout/Layout.js +1 -0
- package/dist/components/Layout/Layout.module.css.js +1 -0
- package/dist/components/Layout/Layout.types.js +1 -0
- package/dist/components/Layout/LayoutItem.js +1 -0
- package/dist/components/Layout/Split.js +1 -0
- package/dist/components/Layout/Stack.js +1 -0
- package/dist/components/Layout/flexPrimitives.module.css.js +1 -0
- package/dist/components/Layout/layoutClasses.js +1 -0
- package/dist/components/LineChart/LineChart.js +1 -0
- package/dist/components/LineChart/LineChart.module.css.js +1 -0
- package/dist/components/Link/Link.js +1 -0
- package/dist/components/Link/Link.module.css.js +1 -0
- package/dist/components/Listbox/Listbox.js +1 -0
- package/dist/components/Listbox/Listbox.module.css.js +1 -0
- package/dist/components/LocaleProvider/LocaleProvider.js +1 -0
- package/dist/components/Marker/Marker.js +1 -0
- package/dist/components/Marker/Marker.module.css.js +1 -0
- package/dist/components/MaskedField/MaskedField.js +1 -0
- package/dist/components/MaskedField/MaskedField.module.css.js +1 -0
- package/dist/components/MaskedField/MaskedField.utils.js +1 -0
- package/dist/components/Media/Media.js +1 -0
- package/dist/components/Media/Media.module.css.js +1 -0
- package/dist/components/Modal/Modal.js +1 -0
- package/dist/components/Modal/Modal.module.css.js +1 -0
- package/dist/components/Notification/Notification.js +1 -0
- package/dist/components/Notification/Notification.module.css.js +1 -0
- package/dist/components/Notification/toast.js +1 -0
- package/dist/components/NumberField/NumberField.js +1 -0
- package/dist/components/NumberField/NumberField.module.css.js +1 -0
- package/dist/components/OverflowActions/OverflowActions.js +1 -0
- package/dist/components/OverflowActions/OverflowActions.module.css.js +1 -0
- package/dist/components/OverflowGroup/OverflowGroup.js +1 -0
- package/dist/components/OverflowGroup/OverflowGroup.module.css.js +1 -0
- package/dist/components/Overlay/Overlay.Dismiss.js +1 -0
- package/dist/components/Overlay/Overlay.Focus.js +1 -0
- package/dist/components/Overlay/Overlay.Positioner.js +1 -0
- package/dist/components/Overlay/Overlay.Root.js +1 -0
- package/dist/components/Overlay/Overlay.js +1 -0
- package/dist/components/Overlay/Overlay.module.css.js +1 -0
- package/dist/components/Overlay/Overlay.types.js +1 -0
- package/dist/components/Pagination/Pagination.js +1 -0
- package/dist/components/Pagination/Pagination.module.css.js +1 -0
- package/dist/components/PasswordField/PasswordField.js +1 -0
- package/dist/components/PasswordField/PasswordField.module.css.js +1 -0
- package/dist/components/PinInput/PinInput.js +1 -0
- package/dist/components/PinInput/PinInput.module.css.js +1 -0
- package/dist/components/Popover/Popover.js +1 -0
- package/dist/components/Popover/Popover.module.css.js +1 -0
- package/dist/components/Progress/Progress.js +1 -0
- package/dist/components/Progress/Progress.module.css.js +1 -0
- package/dist/components/PullToRefresh/PullToRefresh.js +1 -0
- package/dist/components/PullToRefresh/PullToRefresh.module.css.js +1 -0
- package/dist/components/Radio/Radio.js +1 -0
- package/dist/components/Rating/Rating.js +1 -0
- package/dist/components/Rating/Rating.module.css.js +1 -0
- package/dist/components/RelativeTime/RelativeTime.js +1 -0
- package/dist/components/SafeArea/SafeArea.js +1 -0
- package/dist/components/SafeArea/SafeArea.module.css.js +1 -0
- package/dist/components/ScrollArea/ScrollArea.js +1 -0
- package/dist/components/ScrollArea/ScrollArea.module.css.js +1 -0
- package/dist/components/SearchField/SearchField.js +1 -0
- package/dist/components/SearchField/SearchField.module.css.js +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.js +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.module.css.js +1 -0
- package/dist/components/Select/Select.js +1 -0
- package/dist/components/Select/Select.module.css.js +1 -0
- package/dist/components/SelectionGroup/SelectionGroup.js +1 -0
- package/dist/components/SelectionGroup/SelectionGroup.module.css.js +1 -0
- package/dist/components/Separator/Separator.js +1 -0
- package/dist/components/Separator/Separator.module.css.js +1 -0
- package/dist/components/Sheet/Sheet.js +1 -0
- package/dist/components/Sheet/Sheet.module.css.js +1 -0
- package/dist/components/Sidebar/Sidebar.js +1 -0
- package/dist/components/Sidebar/Sidebar.module.css.js +1 -0
- package/dist/components/Skeleton/Skeleton.js +1 -0
- package/dist/components/Skeleton/Skeleton.module.css.js +1 -0
- package/dist/components/SkipLink/SkipLink.js +1 -0
- package/dist/components/SkipLink/SkipLink.module.css.js +1 -0
- package/dist/components/Slider/Slider.js +1 -0
- package/dist/components/Slider/Slider.module.css.js +1 -0
- package/dist/components/SortableList/SortableList.js +1 -0
- package/dist/components/SortableList/SortableList.module.css.js +1 -0
- package/dist/components/SortableList/SortableList.types.js +1 -0
- package/dist/components/SortableList/useSortableListDnD.js +1 -0
- package/dist/components/Spinner/Spinner.js +1 -0
- package/dist/components/Spinner/Spinner.module.css.js +1 -0
- package/dist/components/StatBadge/StatBadge.js +1 -0
- package/dist/components/StatBadge/StatBadge.module.css.js +1 -0
- package/dist/components/Steps/Steps.js +1 -0
- package/dist/components/Steps/Steps.module.css.js +1 -0
- package/dist/components/SuggestField/SuggestField.js +1 -0
- package/dist/components/SuggestField/SuggestField.module.css.js +1 -0
- package/dist/components/SwipeToAction/SwipeActionButtons.js +1 -0
- package/dist/components/SwipeToAction/SwipeToAction.js +1 -0
- package/dist/components/SwipeToAction/SwipeToAction.module.css.js +1 -0
- package/dist/components/SwipeToAction/SwipeToAction.utils.js +1 -0
- package/dist/components/Switch/Switch.js +1 -0
- package/dist/components/Switch/Switch.module.css.js +1 -0
- package/dist/components/Table/Table.js +1 -0
- package/dist/components/Table/Table.module.css.js +1 -0
- package/dist/components/Table/Table.slots.js +1 -0
- package/dist/components/Table/TableContext.js +1 -0
- package/dist/components/Table/TableRow.js +1 -0
- package/dist/components/Table/TableRowActions.js +1 -0
- package/dist/components/Table/TableView.js +1 -0
- package/dist/components/Tabs/Tabs.js +1 -0
- package/dist/components/Tabs/Tabs.module.css.js +1 -0
- package/dist/components/Text/Text.js +1 -0
- package/dist/components/Text/Text.module.css.js +1 -0
- package/dist/components/TextField/TextField.js +1 -0
- package/dist/components/TextField/TextField.module.css.js +1 -0
- package/dist/components/TextareaField/TextareaField.js +1 -0
- package/dist/components/TextareaField/TextareaField.module.css.js +1 -0
- package/dist/components/ThemeProvider/ThemeProvider.js +1 -0
- package/dist/components/ThemeProvider/ThemeProvider.module.css.js +1 -0
- package/dist/components/TimePicker/TimePicker.js +1 -0
- package/dist/components/TimePicker/TimePicker.module.css.js +1 -0
- package/dist/components/Timeline/Timeline.js +1 -0
- package/dist/components/Timeline/Timeline.module.css.js +1 -0
- package/dist/components/Title/Title.js +1 -0
- package/dist/components/Title/Title.module.css.js +1 -0
- package/dist/components/Tooltip/Tooltip.js +1 -0
- package/dist/components/Tooltip/Tooltip.module.css.js +1 -0
- package/dist/components/UploadZone/UploadZone.js +1 -0
- package/dist/components/UploadZone/UploadZone.module.css.js +1 -0
- package/dist/components/VirtualList/VirtualList.js +1 -0
- package/dist/components/VirtualList/VirtualList.module.css.js +1 -0
- package/dist/components/VirtualList/VirtualList.utils.js +1 -0
- package/dist/components/VirtualList/VirtualListInner.js +1 -0
- package/dist/components/VirtualList/VirtualListItemCell.js +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.js +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.module.css.js +1 -0
- package/dist/entries/hooks.js +1 -0
- package/dist/entries/icons.js +1 -0
- package/dist/entries/utils.js +1 -0
- package/dist/hooks/useBodyScrollLock.js +1 -0
- package/dist/hooks/useControlledState.js +1 -0
- package/dist/hooks/useDocumentKeyDown.js +1 -0
- package/dist/hooks/useEscapeKey.js +1 -0
- package/dist/hooks/useFocusRestore.js +1 -0
- package/dist/hooks/useFocusTrap.js +1 -0
- package/dist/hooks/useForm.js +1 -0
- package/dist/hooks/useInertSiblings.js +1 -0
- package/dist/hooks/useLongPress.js +1 -0
- package/dist/hooks/useMediaQuery.js +1 -0
- package/dist/hooks/useOutsideClick.js +1 -0
- package/dist/hooks/useOverlay.js +1 -0
- package/dist/hooks/useOverlayPanel.js +1 -0
- package/dist/hooks/usePrefersReducedMotion.js +1 -0
- package/dist/icons/icons/IconAlarm.js +10 -0
- package/dist/icons/icons/IconAlignCenter.js +3 -0
- package/dist/icons/icons/IconAlignJustify.js +3 -0
- package/dist/icons/icons/IconAlignLeft.js +3 -0
- package/dist/icons/icons/IconAlignRight.js +3 -0
- package/dist/icons/icons/IconAnchor.js +5 -0
- package/dist/icons/icons/IconArchive.js +5 -0
- package/dist/icons/icons/IconArrowDown.js +3 -0
- package/dist/icons/icons/IconArrowLeft.js +3 -0
- package/dist/icons/icons/IconArrowRight.js +3 -0
- package/dist/icons/icons/IconArrowThinDown.js +3 -0
- package/dist/icons/icons/IconArrowThinLeft.js +2 -0
- package/dist/icons/icons/IconArrowThinRight.js +3 -0
- package/dist/icons/icons/IconArrowThinUp.js +2 -0
- package/dist/icons/icons/IconArrowUp.js +3 -0
- package/dist/icons/icons/IconArticle.js +4 -0
- package/dist/icons/icons/IconBackspace.js +3 -0
- package/dist/icons/icons/IconBasket.js +4 -0
- package/dist/icons/icons/IconBasketball.js +7 -0
- package/dist/icons/icons/IconBatteryEmpty.js +2 -0
- package/dist/icons/icons/IconBatteryFull.js +4 -0
- package/dist/icons/icons/IconBatteryLow.js +3 -0
- package/dist/icons/icons/IconBatteryMedium.js +3 -0
- package/dist/icons/icons/IconBell.js +8 -0
- package/dist/icons/icons/IconBlog.js +4 -0
- package/dist/icons/icons/IconBluetooth.js +4 -0
- package/dist/icons/icons/IconBold.js +3 -0
- package/dist/icons/icons/IconBookmark.js +3 -0
- package/dist/icons/icons/IconBookmarks.js +4 -0
- package/dist/icons/icons/IconBox.js +5 -0
- package/dist/icons/icons/IconBriefcase.js +4 -0
- package/dist/icons/icons/IconBrightnessLow.js +10 -0
- package/dist/icons/icons/IconBrightnessMax.js +9 -0
- package/dist/icons/icons/IconBrightnessMedium.js +9 -0
- package/dist/icons/icons/IconBroadcast.js +10 -0
- package/dist/icons/icons/IconBrowser.js +2 -0
- package/dist/icons/icons/IconBrowserUpload.js +5 -0
- package/dist/icons/icons/IconBrush.js +7 -0
- package/dist/icons/icons/IconCalendar.js +4 -0
- package/dist/icons/icons/IconCamcorder.js +3 -0
- package/dist/icons/icons/IconCamera.js +8 -0
- package/dist/icons/icons/IconCard.js +3 -0
- package/dist/icons/icons/IconCart.js +6 -0
- package/dist/icons/icons/IconChecklist.js +6 -0
- package/dist/icons/icons/IconCheckmark.js +2 -0
- package/dist/icons/icons/IconChevronDown.js +2 -0
- package/dist/icons/icons/IconChevronLeft.js +2 -0
- package/dist/icons/icons/IconChevronRight.js +2 -0
- package/dist/icons/icons/IconChevronUp.js +2 -0
- package/dist/icons/icons/IconClipboard.js +4 -0
- package/dist/icons/icons/IconClock.js +3 -0
- package/dist/icons/icons/IconClockwise.js +4 -0
- package/dist/icons/icons/IconCloud.js +6 -0
- package/dist/icons/icons/IconCloudDownload.js +9 -0
- package/dist/icons/icons/IconCloudUpload.js +9 -0
- package/dist/icons/icons/IconCode.js +4 -0
- package/dist/icons/icons/IconContract.js +8 -0
- package/dist/icons/icons/IconContract2.js +4 -0
- package/dist/icons/icons/IconConversation.js +7 -0
- package/dist/icons/icons/IconCopy.js +5 -0
- package/dist/icons/icons/IconCrop.js +6 -0
- package/dist/icons/icons/IconCross.js +3 -0
- package/dist/icons/icons/IconCrosshair.js +4 -0
- package/dist/icons/icons/IconCutlery.js +7 -0
- package/dist/icons/icons/IconDeviceDesktop.js +4 -0
- package/dist/icons/icons/IconDeviceMobile.js +3 -0
- package/dist/icons/icons/IconDeviceTablet.js +3 -0
- package/dist/icons/icons/IconDirection.js +3 -0
- package/dist/icons/icons/IconDisc.js +8 -0
- package/dist/icons/icons/IconDocument.js +5 -0
- package/dist/icons/icons/IconDocumentDelete.js +5 -0
- package/dist/icons/icons/IconDocumentEdit.js +4 -0
- package/dist/icons/icons/IconDocumentNew.js +2 -0
- package/dist/icons/icons/IconDocumentRemove.js +3 -0
- package/dist/icons/icons/IconDot.js +2 -0
- package/dist/icons/icons/IconDots2.js +4 -0
- package/dist/icons/icons/IconDots3.js +5 -0
- package/dist/icons/icons/IconDownload.js +3 -0
- package/dist/icons/icons/IconDragHandle.js +1 -0
- package/dist/icons/icons/IconDuplicate.js +3 -0
- package/dist/icons/icons/IconEnter.js +4 -0
- package/dist/icons/icons/IconExit.js +4 -0
- package/dist/icons/icons/IconExpand.js +8 -0
- package/dist/icons/icons/IconExpand2.js +4 -0
- package/dist/icons/icons/IconExperiment.js +7 -0
- package/dist/icons/icons/IconExport.js +6 -0
- package/dist/icons/icons/IconFeed.js +6 -0
- package/dist/icons/icons/IconFlag.js +6 -0
- package/dist/icons/icons/IconFlashlight.js +4 -0
- package/dist/icons/icons/IconFolder.js +2 -0
- package/dist/icons/icons/IconFolderOpen.js +3 -0
- package/dist/icons/icons/IconForward.js +5 -0
- package/dist/icons/icons/IconGaming.js +14 -0
- package/dist/icons/icons/IconGear.js +21 -0
- package/dist/icons/icons/IconGraduation.js +6 -0
- package/dist/icons/icons/IconGraphBar.js +3 -0
- package/dist/icons/icons/IconGraphLine.js +4 -0
- package/dist/icons/icons/IconGraphPie.js +4 -0
- package/dist/icons/icons/IconHeadset.js +8 -0
- package/dist/icons/icons/IconHeart.js +8 -0
- package/dist/icons/icons/IconHelp.js +12 -0
- package/dist/icons/icons/IconHome.js +4 -0
- package/dist/icons/icons/IconHourglass.js +6 -0
- package/dist/icons/icons/IconInbox.js +6 -0
- package/dist/icons/icons/IconInformation.js +6 -0
- package/dist/icons/icons/IconItalic.js +3 -0
- package/dist/icons/icons/IconJewel.js +4 -0
- package/dist/icons/icons/IconLifting.js +3 -0
- package/dist/icons/icons/IconLightbulb.js +7 -0
- package/dist/icons/icons/IconLink.js +6 -0
- package/dist/icons/icons/IconLinkBroken.js +8 -0
- package/dist/icons/icons/IconList.js +7 -0
- package/dist/icons/icons/IconLoading.js +12 -0
- package/dist/icons/icons/IconLocation.js +5 -0
- package/dist/icons/icons/IconLock.js +2 -0
- package/dist/icons/icons/IconLockOpen.js +3 -0
- package/dist/icons/icons/IconMail.js +9 -0
- package/dist/icons/icons/IconMap.js +8 -0
- package/dist/icons/icons/IconMediaLoop.js +3 -0
- package/dist/icons/icons/IconMediaNext.js +3 -0
- package/dist/icons/icons/IconMediaPause.js +2 -0
- package/dist/icons/icons/IconMediaPlay.js +2 -0
- package/dist/icons/icons/IconMediaPrevious.js +3 -0
- package/dist/icons/icons/IconMediaRecord.js +3 -0
- package/dist/icons/icons/IconMediaShuffle.js +8 -0
- package/dist/icons/icons/IconMediaStop.js +2 -0
- package/dist/icons/icons/IconMedical.js +4 -0
- package/dist/icons/icons/IconMenu.js +3 -0
- package/dist/icons/icons/IconMessage.js +5 -0
- package/dist/icons/icons/IconMeter.js +5 -0
- package/dist/icons/icons/IconMicrophone.js +8 -0
- package/dist/icons/icons/IconMinus.js +1 -0
- package/dist/icons/icons/IconMonitor.js +2 -0
- package/dist/icons/icons/IconMove.js +7 -0
- package/dist/icons/icons/IconMusic.js +8 -0
- package/dist/icons/icons/IconNetwork1.js +6 -0
- package/dist/icons/icons/IconNetwork2.js +6 -0
- package/dist/icons/icons/IconNetwork3.js +8 -0
- package/dist/icons/icons/IconNetwork4.js +7 -0
- package/dist/icons/icons/IconNetwork5.js +4 -0
- package/dist/icons/icons/IconPamphlet.js +6 -0
- package/dist/icons/icons/IconPaperclip.js +5 -0
- package/dist/icons/icons/IconPencil.js +4 -0
- package/dist/icons/icons/IconPhone.js +7 -0
- package/dist/icons/icons/IconPhoto.js +4 -0
- package/dist/icons/icons/IconPhotoGroup.js +6 -0
- package/dist/icons/icons/IconPill.js +8 -0
- package/dist/icons/icons/IconPin.js +8 -0
- package/dist/icons/icons/IconPlus.js +2 -0
- package/dist/icons/icons/IconPower.js +4 -0
- package/dist/icons/icons/IconPreview.js +8 -0
- package/dist/icons/icons/IconPreviewOff.js +8 -0
- package/dist/icons/icons/IconPrint.js +5 -0
- package/dist/icons/icons/IconPulse.js +4 -0
- package/dist/icons/icons/IconQuestion.js +6 -0
- package/dist/icons/icons/IconReply.js +4 -0
- package/dist/icons/icons/IconReplyAll.js +6 -0
- package/dist/icons/icons/IconReturn.js +3 -0
- package/dist/icons/icons/IconRetweet.js +5 -0
- package/dist/icons/icons/IconRocket.js +11 -0
- package/dist/icons/icons/IconScale.js +6 -0
- package/dist/icons/icons/IconSearch.js +6 -0
- package/dist/icons/icons/IconShoppingBag.js +3 -0
- package/dist/icons/icons/IconSkip.js +5 -0
- package/dist/icons/icons/IconStack.js +5 -0
- package/dist/icons/icons/IconStar.js +5 -0
- package/dist/icons/icons/IconStopwatch.js +6 -0
- package/dist/icons/icons/IconStore.js +6 -0
- package/dist/icons/icons/IconSuitcase.js +3 -0
- package/dist/icons/icons/IconSwap.js +5 -0
- package/dist/icons/icons/IconTag.js +4 -0
- package/dist/icons/icons/IconTagDelete.js +5 -0
- package/dist/icons/icons/IconTags.js +7 -0
- package/dist/icons/icons/IconThumbsDown.js +7 -0
- package/dist/icons/icons/IconThumbsUp.js +7 -0
- package/dist/icons/icons/IconTicket.js +8 -0
- package/dist/icons/icons/IconTimeReverse.js +5 -0
- package/dist/icons/icons/IconToDo.js +5 -0
- package/dist/icons/icons/IconToggles.js +9 -0
- package/dist/icons/icons/IconTrash.js +6 -0
- package/dist/icons/icons/IconTrophy.js +7 -0
- package/dist/icons/icons/IconUpload.js +4 -0
- package/dist/icons/icons/IconUser.js +5 -0
- package/dist/icons/icons/IconUserGroup.js +9 -0
- package/dist/icons/icons/IconUserId.js +7 -0
- package/dist/icons/icons/IconVibrate.js +7 -0
- package/dist/icons/icons/IconViewApps.js +14 -0
- package/dist/icons/icons/IconViewList.js +5 -0
- package/dist/icons/icons/IconViewListLarge.js +6 -0
- package/dist/icons/icons/IconViewThumb.js +6 -0
- package/dist/icons/icons/IconVolumeFull.js +8 -0
- package/dist/icons/icons/IconVolumeLow.js +5 -0
- package/dist/icons/icons/IconVolumeMedium.js +6 -0
- package/dist/icons/icons/IconVolumeOff.js +6 -0
- package/dist/icons/icons/IconWallet.js +5 -0
- package/dist/icons/icons/IconWarning.js +4 -0
- package/dist/icons/icons/IconWeb.js +12 -0
- package/dist/icons/icons/IconWeight.js +3 -0
- package/dist/icons/icons/IconWifi.js +7 -0
- package/dist/icons/icons/IconWrong.js +3 -0
- package/dist/icons/icons/IconZoomIn.js +5 -0
- package/dist/icons/icons/IconZoomOut.js +4 -0
- package/dist/index.js +1 -0
- package/dist/locales/en.js +1 -0
- package/dist/locales/localeContext.js +1 -0
- package/dist/locales/ru.js +1 -0
- package/dist/locales/translate.js +1 -0
- package/dist/utils/a11y.js +1 -0
- package/dist/utils/anchorPosition.js +1 -0
- package/dist/utils/arrayMove.js +1 -0
- package/dist/utils/autoHeight.js +1 -0
- package/dist/utils/cn.js +1 -0
- package/dist/utils/composeEvents.js +1 -0
- package/dist/utils/composeRefs.js +1 -0
- package/dist/utils/controlTrack.js +1 -0
- package/dist/utils/controlTrack.module.css.js +1 -0
- package/dist/utils/cssSize.js +1 -0
- package/dist/utils/focus.js +1 -0
- package/dist/utils/formControl.js +1 -0
- package/dist/utils/hoverTriggerGroup.js +1 -0
- package/dist/utils/keyboard.js +1 -0
- package/dist/utils/keyboardShortcut.js +1 -0
- package/dist/utils/listboxOptions.js +1 -0
- package/dist/utils/mergeStyles.js +1 -0
- package/dist/utils/overlayDismiss.js +1 -0
- package/dist/utils/overlayEscapeStack.js +1 -0
- package/dist/utils/overlayPurpose.js +1 -0
- package/dist/utils/overlayStack.js +1 -0
- package/dist/utils/overlayZIndex.js +1 -0
- package/dist/utils/portal.js +1 -0
- package/dist/utils/renderChildren.js +1 -0
- package/dist/utils/slot.js +1 -0
- package/dist/utils/spacing.js +1 -0
- package/dist/utils/transform.js +1 -0
- package/docs/COMPONENTS.md +207 -0
- package/docs/ICONS.md +22 -0
- package/docs/LAYOUT.md +282 -0
- package/docs/THEMING.md +308 -0
- package/package.json +127 -0
- package/types/entries/hooks.d.ts +329 -0
- package/types/entries/icons.d.ts +1621 -0
- package/types/entries/utils.d.ts +519 -0
- package/types/index.d.ts +6083 -0
|
@@ -0,0 +1,329 @@
|
|
|
1
|
+
import * as react from 'react';
|
|
2
|
+
import { RefObject, PointerEvent, MouseEvent as MouseEvent$1 } from 'react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Опции хука `useOutsideClick`.
|
|
6
|
+
*/
|
|
7
|
+
interface UseOutsideClickOptions {
|
|
8
|
+
/** Подписываться только пока `true` (`true` по умолчанию) */
|
|
9
|
+
enabled?: boolean;
|
|
10
|
+
}
|
|
11
|
+
type OutsideClickTarget = RefObject<HTMLElement | null>;
|
|
12
|
+
/**
|
|
13
|
+
* Вызывает callback при mousedown/touchstart вне одного или нескольких ref.
|
|
14
|
+
* Игнорирует клики, пока активен «suppress overlay dismiss» (см. `overlayDismiss`).
|
|
15
|
+
* Подписка снимается при `enabled: false` и при размонтировании.
|
|
16
|
+
*
|
|
17
|
+
* @param refs - Контейнер(ы), клик внутри которых не считается «снаружи».
|
|
18
|
+
* @param callback - Обработчик внешнего клика.
|
|
19
|
+
* @param options.enabled - Выключить слушатели без размонтирования.
|
|
20
|
+
*
|
|
21
|
+
* @returns Ничего — подписка на mousedown/touchstart вне ref.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* const panelRef = useRef<HTMLDivElement>(null);
|
|
25
|
+
* useOutsideClick(panelRef, () => setOpen(false), {enabled: open});
|
|
26
|
+
*/
|
|
27
|
+
declare function useOutsideClick(refs: OutsideClickTarget | OutsideClickTarget[], callback: (event: MouseEvent | TouchEvent) => void, options?: UseOutsideClickOptions): void;
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Публичный тип `DocumentKeyDownTarget`.
|
|
31
|
+
*/
|
|
32
|
+
type DocumentKeyDownTarget = 'document' | 'window';
|
|
33
|
+
/**
|
|
34
|
+
* Опции хука `useDocumentKeyDown`.
|
|
35
|
+
*/
|
|
36
|
+
interface UseDocumentKeyDownOptions {
|
|
37
|
+
/** Слушать события только пока `true` (`true` по умолчанию) */
|
|
38
|
+
enabled?: boolean;
|
|
39
|
+
/** `document` или `window` — где вешать `keydown` (`document` по умолчанию) */
|
|
40
|
+
target?: DocumentKeyDownTarget;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Подписка на глобальный `keydown` с актуальным handler через ref
|
|
44
|
+
* (не нужно мемоизировать handler ради стабильности подписки).
|
|
45
|
+
*
|
|
46
|
+
* @param handler - Обработчик клавиатуры.
|
|
47
|
+
* @param options - `enabled` / `target`.
|
|
48
|
+
*
|
|
49
|
+
* @returns Ничего — подписка на глобальный keydown.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* useDocumentKeyDown((event) => {
|
|
53
|
+
* if (event.key === 'ArrowDown') moveFocus(1);
|
|
54
|
+
* }, {enabled: isOpen});
|
|
55
|
+
*/
|
|
56
|
+
declare function useDocumentKeyDown(handler: (event: KeyboardEvent) => void, options?: UseDocumentKeyDownOptions): void;
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Опции хука `useEscapeKey`.
|
|
60
|
+
*/
|
|
61
|
+
interface UseEscapeKeyOptions {
|
|
62
|
+
enabled?: boolean;
|
|
63
|
+
target?: DocumentKeyDownTarget;
|
|
64
|
+
/**
|
|
65
|
+
* Участвовать в стеке overlay: Escape закрывает только верхний слой.
|
|
66
|
+
* @default true
|
|
67
|
+
*/
|
|
68
|
+
layered?: boolean;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Вызывает `onEscape` на клавишу Escape (с `preventDefault`).
|
|
72
|
+
* При `layered` (дефолт) закрывается только верхний overlay в стеке.
|
|
73
|
+
*
|
|
74
|
+
* @param onEscape - Действие закрытия.
|
|
75
|
+
* @param options.enabled - Пока `false`, слушатель не активен.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* useEscapeKey(() => setOpen(false), {enabled: open});
|
|
79
|
+
*/
|
|
80
|
+
declare function useEscapeKey(onEscape: () => void, options?: UseEscapeKeyOptions): void;
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Блокирует scroll `document.body` со счётчиком вложений
|
|
84
|
+
* (несколько Modal / Sheet / ImageCrop одновременно).
|
|
85
|
+
* Снимает lock при `locked === false` и при размонтировании.
|
|
86
|
+
*
|
|
87
|
+
* @param locked - Активна ли блокировка для этого экземпляра.
|
|
88
|
+
*
|
|
89
|
+
* @returns Ничего — lock scroll на document.body.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* useBodyScrollLock(isOpen);
|
|
93
|
+
*/
|
|
94
|
+
declare function useBodyScrollLock(locked: boolean): void;
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Контролируемое / неконтролируемое состояние для компонентов с опциональными `value` + `defaultValue`.
|
|
98
|
+
*
|
|
99
|
+
* @returns `[value, setValue, isControlled]`
|
|
100
|
+
*/
|
|
101
|
+
declare function useControlledState<T>(controlled: T | undefined, defaultValue: T): [T, (next: T) => void, boolean];
|
|
102
|
+
/**
|
|
103
|
+
* Контролируемое / неконтролируемое состояние с колбэком при изменении (onChange / onOpenChange).
|
|
104
|
+
*/
|
|
105
|
+
declare function useControlledStateWithCallback<T>(controlled: T | undefined, defaultValue: T, onChange?: (next: T) => void): [T, (next: T) => void, boolean];
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Опции хука `useOverlay`.
|
|
109
|
+
*/
|
|
110
|
+
interface UseOverlayOptions {
|
|
111
|
+
/** Overlay открыт. */
|
|
112
|
+
open: boolean;
|
|
113
|
+
/** Закрытие по Escape. @default true */
|
|
114
|
+
closeOnEscape?: boolean;
|
|
115
|
+
/** Блокировать scroll body. @default true */
|
|
116
|
+
lockScroll?: boolean;
|
|
117
|
+
/** Корень портала для inert фона. */
|
|
118
|
+
rootRef?: RefObject<HTMLElement | null>;
|
|
119
|
+
/** Возврат фокуса при закрытии. @default true */
|
|
120
|
+
restoreFocus?: boolean;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Композиция overlay-паттерна: scroll lock + Escape + inert + restore focus.
|
|
124
|
+
* Используется в Modal, Sheet, CommandPalette, ImageLightbox, ImageCrop.
|
|
125
|
+
*/
|
|
126
|
+
declare function useOverlay(onClose: () => void, { open, closeOnEscape, lockScroll, rootRef: rootRefProp, restoreFocus, }: UseOverlayOptions): void;
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Сохраняет фокус при активации (в `useLayoutEffect` — до ловушек в `useEffect`)
|
|
130
|
+
* и возвращает его только при переходе `true` → `false`.
|
|
131
|
+
* Используйте для overlay, где FocusTrap сам restore не делает.
|
|
132
|
+
*
|
|
133
|
+
* @param active - Панель открыта.
|
|
134
|
+
*
|
|
135
|
+
* @returns Ничего — сохранение и возврат фокуса.
|
|
136
|
+
*
|
|
137
|
+
* @example
|
|
138
|
+
* useFocusRestore(isOpen);
|
|
139
|
+
*/
|
|
140
|
+
declare function useFocusRestore(active: boolean): void;
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Помечает соседние узлы родителя `rootRef` как `inert`,
|
|
144
|
+
* пока overlay-панель открыта (фон недоступен для фокуса / AT).
|
|
145
|
+
* Снимает `inert` при деактивации / размонтировании (если атрибут ставил этот хук).
|
|
146
|
+
*
|
|
147
|
+
* @param active - Панель открыта.
|
|
148
|
+
* @param rootRef - Корень портала панели (sibling'и получают `inert`).
|
|
149
|
+
*
|
|
150
|
+
* @returns Ничего — атрибут inert на соседних узлах.
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* useInertSiblings(isOpen, portalRootRef);
|
|
154
|
+
*/
|
|
155
|
+
declare function useInertSiblings(active: boolean, rootRef: RefObject<HTMLElement | null>): void;
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Опции хука `useOverlayPanel`.
|
|
159
|
+
*/
|
|
160
|
+
interface UseOverlayPanelOptions {
|
|
161
|
+
active: boolean;
|
|
162
|
+
/** Корень портала панели (sibling'и родителя получат `inert`) */
|
|
163
|
+
rootRef: RefObject<HTMLElement | null>;
|
|
164
|
+
/**
|
|
165
|
+
* Возврат фокуса при закрытии.
|
|
166
|
+
* Выключайте, если restore уже делает FocusTrap / useFocusTrap.
|
|
167
|
+
* @default true
|
|
168
|
+
*/
|
|
169
|
+
restoreFocus?: boolean;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Единый паттерн для overlay-панелей: inert фона + опционально restore focus.
|
|
173
|
+
* Комбинирует `useInertSiblings` и `useFocusRestore`.
|
|
174
|
+
*
|
|
175
|
+
* @param options.active - Панель открыта.
|
|
176
|
+
* @param options.rootRef - Корень портала.
|
|
177
|
+
* @param options.restoreFocus - Возврат фокуса при закрытии (`true` по умолчанию).
|
|
178
|
+
*
|
|
179
|
+
* @returns Ничего — inert фона и опциональный restore focus.
|
|
180
|
+
*
|
|
181
|
+
* @example
|
|
182
|
+
* useOverlayPanel({active: isOpen, rootRef, restoreFocus: true});
|
|
183
|
+
*/
|
|
184
|
+
declare function useOverlayPanel({ active, rootRef, restoreFocus, }: UseOverlayPanelOptions): void;
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* Опции хука `useFocusTrap`.
|
|
188
|
+
*/
|
|
189
|
+
interface UseFocusTrapOptions {
|
|
190
|
+
active: boolean;
|
|
191
|
+
/** Контейнер, внутри которого крутится Tab */
|
|
192
|
+
containerRef: RefObject<HTMLElement | null>;
|
|
193
|
+
/** Элемент для начального фокуса (иначе — первый focusable) */
|
|
194
|
+
initialFocusRef?: RefObject<HTMLElement | null>;
|
|
195
|
+
/** Куда вернуть фокус при деактивации (иначе — элемент до активации) */
|
|
196
|
+
returnFocusRef?: RefObject<HTMLElement | null>;
|
|
197
|
+
/**
|
|
198
|
+
* Возвращать фокус при деактивации.
|
|
199
|
+
* Выключайте, если restore делает `useOverlayPanel` / `useFocusRestore`.
|
|
200
|
+
* @default true
|
|
201
|
+
*/
|
|
202
|
+
restoreFocus?: boolean;
|
|
203
|
+
/** Escape внутри ловушки */
|
|
204
|
+
onEscape?: () => void;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Ловушка фокуса без обёртки-компонента: Tab циклится внутри `containerRef`.
|
|
208
|
+
* Подходит для уже существующего DOM (CommandPalette, кастомные панели).
|
|
209
|
+
* Escape опционально через `onEscape`.
|
|
210
|
+
*
|
|
211
|
+
* @param options - `active`, `containerRef`, focus refs, `restoreFocus`, `onEscape`.
|
|
212
|
+
*
|
|
213
|
+
* @returns Ничего — ловушка Tab и опциональный Escape.
|
|
214
|
+
*
|
|
215
|
+
* @example
|
|
216
|
+
* useFocusTrap({
|
|
217
|
+
* active: open,
|
|
218
|
+
* containerRef,
|
|
219
|
+
* initialFocusRef: inputRef,
|
|
220
|
+
* onEscape: () => setOpen(false),
|
|
221
|
+
* });
|
|
222
|
+
*/
|
|
223
|
+
declare function useFocusTrap({ active, containerRef, initialFocusRef, returnFocusRef, restoreFocus, onEscape, }: UseFocusTrapOptions): void;
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* Media query для «мобильной» ширины (breakpoint 768px).
|
|
227
|
+
* Используйте с `useMediaQuery(MOBILE_MEDIA_QUERY)`.
|
|
228
|
+
*/
|
|
229
|
+
declare const MOBILE_MEDIA_QUERY = "(max-width: 768px)";
|
|
230
|
+
/**
|
|
231
|
+
* Подписка на CSS media query через `matchMedia`.
|
|
232
|
+
* На SSR / первом кадре может быть `false`, пока нет `window`.
|
|
233
|
+
*
|
|
234
|
+
* @param query - Строка media query (например `(min-width: 1024px)`).
|
|
235
|
+
* @returns `true`, если query сейчас совпадает.
|
|
236
|
+
*
|
|
237
|
+
* @example
|
|
238
|
+
* const isMobile = useMediaQuery(MOBILE_MEDIA_QUERY);
|
|
239
|
+
* if (isMobile) return <Sheet />;
|
|
240
|
+
*/
|
|
241
|
+
declare function useMediaQuery(query: string): boolean;
|
|
242
|
+
|
|
243
|
+
interface UseLongPressOptions {
|
|
244
|
+
/** Задержка до срабатывания, мс. @default 500 */
|
|
245
|
+
delay?: number;
|
|
246
|
+
/** Не запускать long-press. */
|
|
247
|
+
disabled?: boolean;
|
|
248
|
+
/**
|
|
249
|
+
* Смещение (px), после которого жест отменяется.
|
|
250
|
+
* Слушается на `window`, чтобы срабатывать даже при nested touch/swipe.
|
|
251
|
+
* @default 10
|
|
252
|
+
*/
|
|
253
|
+
moveThreshold?: number;
|
|
254
|
+
}
|
|
255
|
+
interface UseLongPressHandlers {
|
|
256
|
+
onPointerDown: (event: PointerEvent) => void;
|
|
257
|
+
onPointerUp: (event: PointerEvent) => void;
|
|
258
|
+
onPointerCancel: (event: PointerEvent) => void;
|
|
259
|
+
onContextMenu: (event: MouseEvent$1) => void;
|
|
260
|
+
onClick: (event: MouseEvent$1) => void;
|
|
261
|
+
/** Сбросить таймер (например, при начале горизонтального свайпа). */
|
|
262
|
+
cancel: () => void;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Long-press (удержание): вызывает `onLongPress` после `delay` мс.
|
|
266
|
+
* Движение отслеживается на `window` (pointer + touch), чтобы nested
|
|
267
|
+
* `touchmove` / `preventDefault` у свайпа не оставляли таймер живым.
|
|
268
|
+
* После срабатывания подавляет следующий `click` (capture + `onClick`).
|
|
269
|
+
*/
|
|
270
|
+
declare function useLongPress(onLongPress: () => void, options?: UseLongPressOptions): UseLongPressHandlers;
|
|
271
|
+
|
|
272
|
+
/** CSS media query для `prefers-reduced-motion: reduce`. */
|
|
273
|
+
declare const REDUCED_MOTION_QUERY = "(prefers-reduced-motion: reduce)";
|
|
274
|
+
/**
|
|
275
|
+
* Отслеживает системную настройку «уменьшить движение».
|
|
276
|
+
* Подписывается на `matchMedia` через `useMediaQuery`.
|
|
277
|
+
*
|
|
278
|
+
* @returns `true`, если пользователь просит уменьшить анимации.
|
|
279
|
+
*
|
|
280
|
+
* @example
|
|
281
|
+
* const reduceMotion = usePrefersReducedMotion();
|
|
282
|
+
* <motion.div animate={reduceMotion ? false : {opacity: 1}} />
|
|
283
|
+
*/
|
|
284
|
+
declare function usePrefersReducedMotion(): boolean;
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Правила валидации поля формы для `useForm.register`.
|
|
288
|
+
* При нескольких правилах ошибка берётся по приоритету: required → pattern → validate.
|
|
289
|
+
*/
|
|
290
|
+
interface ValidationRules {
|
|
291
|
+
/** Текст ошибки, если значение пустое (`undefined` / `null` / `''`; `0` — не пустое) */
|
|
292
|
+
required?: string;
|
|
293
|
+
pattern?: {
|
|
294
|
+
value: RegExp;
|
|
295
|
+
message: string;
|
|
296
|
+
};
|
|
297
|
+
/**
|
|
298
|
+
* Верните строку ошибки, `true` (ок) или `false`.
|
|
299
|
+
* `false` — провал: текст `required`, иначе `'Invalid'`.
|
|
300
|
+
*/
|
|
301
|
+
validate?: (val: unknown) => string | boolean;
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Лёгкий хелпер контролируемых форм: хранит values/errors и фабрику `register`.
|
|
305
|
+
* Не делает submit — только локальный стейт и валидацию на change.
|
|
306
|
+
*
|
|
307
|
+
* @template T - Форма как объект полей (ключи → значения).
|
|
308
|
+
* @param initialValues - Начальные значения; ключи = имена полей.
|
|
309
|
+
* @returns `values`, `errors`, `register`, `hasErrors`, `setValues`.
|
|
310
|
+
*
|
|
311
|
+
* @example
|
|
312
|
+
* import {useForm} from 'altum-ui/hooks';
|
|
313
|
+
*
|
|
314
|
+
* const {values, errors, register, hasErrors} = useForm({email: ''});
|
|
315
|
+
* <TextField {...register('email', {required: 'Обязательно'})} error={errors.email} />
|
|
316
|
+
*/
|
|
317
|
+
declare function useForm<T extends Record<string, unknown>>(initialValues: T): {
|
|
318
|
+
values: T;
|
|
319
|
+
errors: Record<string, string>;
|
|
320
|
+
register: (name: keyof T, rules?: ValidationRules) => {
|
|
321
|
+
value: T[keyof T];
|
|
322
|
+
onChange: (val: unknown) => void;
|
|
323
|
+
};
|
|
324
|
+
hasErrors: boolean;
|
|
325
|
+
setValues: react.Dispatch<react.SetStateAction<T>>;
|
|
326
|
+
};
|
|
327
|
+
|
|
328
|
+
export { MOBILE_MEDIA_QUERY, REDUCED_MOTION_QUERY, useBodyScrollLock, useControlledState, useControlledStateWithCallback, useDocumentKeyDown, useEscapeKey, useFocusRestore, useFocusTrap, useForm, useInertSiblings, useLongPress, useMediaQuery, useOutsideClick, useOverlay, useOverlayPanel, usePrefersReducedMotion };
|
|
329
|
+
export type { DocumentKeyDownTarget, UseDocumentKeyDownOptions, UseEscapeKeyOptions, UseFocusTrapOptions, UseLongPressHandlers, UseLongPressOptions, UseOutsideClickOptions, UseOverlayOptions, UseOverlayPanelOptions, ValidationRules };
|