@vkontakte/vkui 5.8.0-beta.0 → 5.8.1-alpha.0
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/README.md +3 -3
- package/dist/cjs/components/Accordion/Accordion.d.ts +1 -1
- package/dist/cjs/components/Accordion/Accordion.js +6 -11
- package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheet.d.ts +6 -1
- package/dist/cjs/components/ActionSheet/ActionSheet.js +12 -9
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetContext.d.ts +6 -1
- package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +2 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts +6 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +15 -4
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.d.ts +6 -1
- package/dist/cjs/components/Alert/Alert.js +15 -5
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.d.ts +12 -2
- package/dist/cjs/components/AppRoot/AppRoot.js +47 -19
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRootContext.d.ts +1 -0
- package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/cjs/components/AspectRatio/AspectRatio.d.ts +3 -3
- package/dist/cjs/components/AspectRatio/AspectRatio.js +6 -8
- package/dist/cjs/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/cjs/components/Badge/Badge.d.ts +3 -2
- package/dist/cjs/components/Badge/Badge.js +10 -8
- package/dist/cjs/components/Badge/Badge.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.d.ts +3 -3
- package/dist/cjs/components/Banner/Banner.js +11 -10
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/BaseGallery/BaseGallery.d.ts +1 -1
- package/dist/cjs/components/BaseGallery/BaseGallery.js +10 -9
- package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/cjs/components/BaseGallery/types.d.ts +2 -2
- package/dist/cjs/components/BaseGallery/types.js.map +1 -1
- package/dist/cjs/components/Button/Button.d.ts +2 -1
- package/dist/cjs/components/Button/Button.js +29 -24
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/ButtonGroup/ButtonGroup.d.ts +3 -3
- package/dist/cjs/components/ButtonGroup/ButtonGroup.js +21 -21
- package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cjs/components/Calendar/Calendar.d.ts +3 -3
- package/dist/cjs/components/Calendar/Calendar.js +4 -6
- package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
- package/dist/cjs/components/CalendarDays/CalendarDays.d.ts +3 -2
- package/dist/cjs/components/CalendarDays/CalendarDays.js +11 -8
- package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cjs/components/CalendarHeader/CalendarHeader.d.ts +3 -2
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js +24 -7
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +3 -3
- package/dist/cjs/components/CalendarRange/CalendarRange.js +4 -6
- package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cjs/components/Card/Card.d.ts +4 -4
- package/dist/cjs/components/Card/Card.js +7 -9
- package/dist/cjs/components/Card/Card.js.map +1 -1
- package/dist/cjs/components/CardGrid/CardGrid.d.ts +3 -2
- package/dist/cjs/components/CardGrid/CardGrid.js +11 -11
- package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.d.ts +3 -2
- package/dist/cjs/components/CardScroll/CardScroll.js +10 -9
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/Cell/CellDragger/CellDragger.d.ts +2 -1
- package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.js +6 -5
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/Chip/Chip.d.ts +3 -2
- package/dist/cjs/components/Chip/Chip.js +6 -7
- package/dist/cjs/components/Chip/Chip.js.map +1 -1
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +4 -2
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +4 -2
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js +8 -5
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cjs/components/Counter/Counter.d.ts +2 -1
- package/dist/cjs/components/Counter/Counter.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.d.ts +2 -1
- package/dist/cjs/components/DatePicker/DatePicker.js +5 -5
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/Div/Div.d.ts +3 -4
- package/dist/cjs/components/Div/Div.js +5 -13
- package/dist/cjs/components/Div/Div.js.map +1 -1
- package/dist/cjs/components/DropdownIcon/DropdownIcon.d.ts +2 -1
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cjs/components/Epic/Epic.d.ts +3 -2
- package/dist/cjs/components/Epic/Epic.js +7 -7
- package/dist/cjs/components/Epic/Epic.js.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.d.ts +2 -2
- package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -4
- package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cjs/components/FocusTrap/FocusTrap.d.ts +2 -2
- package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cjs/components/FocusVisible/FocusVisible.d.ts +2 -1
- package/dist/cjs/components/FocusVisible/FocusVisible.js +8 -6
- package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/cjs/components/FormField/FormField.js +5 -4
- package/dist/cjs/components/FormField/FormField.js.map +1 -1
- package/dist/cjs/components/FormItem/FormItem.d.ts +6 -1
- package/dist/cjs/components/FormItem/FormItem.js +11 -10
- package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -3
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +6 -6
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/FormStatus/FormStatus.d.ts +2 -2
- package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/cjs/components/Gradient/Gradient.d.ts +3 -2
- package/dist/cjs/components/Gradient/Gradient.js +15 -14
- package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
- package/dist/cjs/components/Group/Group.d.ts +3 -3
- package/dist/cjs/components/Group/Group.js +37 -24
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/Header/Header.d.ts +3 -3
- package/dist/cjs/components/Header/Header.js +12 -11
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js +6 -5
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +3 -3
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +16 -14
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/Image/Image.js +52 -37
- package/dist/cjs/components/Image/Image.js.map +1 -1
- package/dist/cjs/components/ImageBase/ImageBase.d.ts +2 -2
- package/dist/cjs/components/ImageBase/ImageBase.js +25 -8
- package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.d.ts +3 -2
- package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +8 -9
- package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
- package/dist/cjs/components/InfoRow/InfoRow.d.ts +2 -1
- package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cjs/components/InputLike/InputLike.d.ts +3 -3
- package/dist/cjs/components/InputLike/InputLike.js +6 -8
- package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
- package/dist/cjs/components/List/List.d.ts +3 -2
- package/dist/cjs/components/List/List.js +5 -5
- package/dist/cjs/components/List/List.js.map +1 -1
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.d.ts +2 -1
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +15 -12
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.js +5 -7
- package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +3 -3
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js +4 -6
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.d.ts +2 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.d.ts +3 -2
- package/dist/cjs/components/ModalPage/ModalPage.js +9 -6
- package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.js +5 -3
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootContext.js +3 -0
- package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/cjs/components/ModalRoot/types.d.ts +1 -0
- package/dist/cjs/components/ModalRoot/types.js.map +1 -1
- package/dist/cjs/components/NavIdContext/NavIdContext.d.ts +3 -0
- package/dist/cjs/components/NavIdContext/NavIdContext.js +24 -0
- package/dist/cjs/components/NavIdContext/NavIdContext.js.map +1 -0
- package/dist/cjs/components/NavIdContext/useNavId.d.ts +4 -0
- package/dist/cjs/components/NavIdContext/useNavId.js +21 -0
- package/dist/cjs/components/NavIdContext/useNavId.js.map +1 -0
- package/dist/cjs/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts +8 -0
- package/dist/cjs/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js +43 -0
- package/dist/cjs/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js.map +1 -0
- package/dist/cjs/components/Pagination/Pagination.d.ts +3 -3
- package/dist/cjs/components/Pagination/Pagination.js +17 -33
- package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
- package/dist/cjs/components/Pagination/PaginationPage/PaginationPageButton.d.ts +12 -0
- package/dist/cjs/components/Pagination/PaginationPage/PaginationPageButton.js +48 -0
- package/dist/cjs/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -0
- package/dist/cjs/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts +6 -0
- package/dist/cjs/components/Pagination/PaginationPage/PaginationPageEllipsis.js +32 -0
- package/dist/cjs/components/Pagination/PaginationPage/PaginationPageEllipsis.js.map +1 -0
- package/dist/cjs/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts +5 -0
- package/dist/cjs/components/Pagination/PaginationPage/usePaginationPageClasses.js +20 -0
- package/dist/cjs/components/Pagination/PaginationPage/usePaginationPageClasses.js.map +1 -0
- package/dist/cjs/components/Pagination/utils.d.ts +1 -0
- package/dist/cjs/components/Pagination/utils.js +15 -0
- package/dist/cjs/components/Pagination/utils.js.map +1 -0
- package/dist/cjs/components/Panel/Panel.d.ts +3 -3
- package/dist/cjs/components/Panel/Panel.js +11 -8
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.d.ts +3 -3
- package/dist/cjs/components/PanelHeader/PanelHeader.js +5 -5
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -2
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +4 -6
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.d.ts +2 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cjs/components/Placeholder/Placeholder.d.ts +24 -11
- package/dist/cjs/components/Placeholder/Placeholder.js +49 -21
- package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cjs/components/PopoutRoot/PopoutRoot.d.ts +3 -3
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js +12 -19
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.d.ts +3 -2
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +17 -17
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cjs/components/Popper/Popper.d.ts +7 -3
- package/dist/cjs/components/Popper/Popper.js +19 -10
- package/dist/cjs/components/Popper/Popper.js.map +1 -1
- package/dist/cjs/components/Progress/Progress.d.ts +3 -3
- package/dist/cjs/components/Progress/Progress.js +9 -10
- package/dist/cjs/components/Progress/Progress.js.map +1 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.d.ts +3 -2
- package/dist/cjs/components/PromoBanner/PromoBanner.js +5 -6
- package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.d.ts +7 -7
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +14 -6
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cjs/components/RadioGroup/RadioGroup.d.ts +3 -2
- package/dist/cjs/components/RadioGroup/RadioGroup.js +6 -7
- package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/cjs/components/Removable/Removable.d.ts +3 -3
- package/dist/cjs/components/Removable/Removable.js +4 -8
- package/dist/cjs/components/Removable/Removable.js.map +1 -1
- package/dist/cjs/components/RichCell/RichCell.d.ts +1 -1
- package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.d.ts +3 -1
- package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js +5 -11
- package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
- package/dist/cjs/components/RichTooltip/RichTooltip.js +7 -6
- package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cjs/components/Root/Root.d.ts +3 -2
- package/dist/cjs/components/Root/Root.js +13 -10
- package/dist/cjs/components/Root/Root.js.map +1 -1
- package/dist/cjs/components/RootComponent/RootComponent.d.ts +9 -0
- package/dist/cjs/components/RootComponent/RootComponent.js +29 -0
- package/dist/cjs/components/RootComponent/RootComponent.js.map +1 -0
- package/dist/cjs/components/ScrollArrow/ScrollArrow.d.ts +1 -1
- package/dist/cjs/components/ScrollArrow/ScrollArrow.js +13 -12
- package/dist/cjs/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/cjs/components/Search/Search.d.ts +3 -3
- package/dist/cjs/components/Search/Search.js +4 -2
- package/dist/cjs/components/Search/Search.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControl.d.ts +3 -3
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js +4 -6
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -3
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +4 -2
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +3 -3
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +8 -3
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/SelectTypography/SelectTypography.d.ts +2 -2
- package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/cjs/components/Separator/Separator.d.ts +3 -2
- package/dist/cjs/components/Separator/Separator.js +5 -5
- package/dist/cjs/components/Separator/Separator.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +0 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/Slider/Slider.d.ts +4 -3
- package/dist/cjs/components/Slider/Slider.js +5 -2
- package/dist/cjs/components/Slider/Slider.js.map +1 -1
- package/dist/cjs/components/Slider/SliderThumb/SliderThumb.d.ts +2 -1
- package/dist/cjs/components/Slider/SliderThumb/SliderThumb.js +56 -5
- package/dist/cjs/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.d.ts +3 -2
- package/dist/cjs/components/Snackbar/Snackbar.js +8 -7
- package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/components/Spacing/Spacing.d.ts +3 -3
- package/dist/cjs/components/Spacing/Spacing.js +5 -6
- package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
- package/dist/cjs/components/Spinner/Spinner.d.ts +3 -2
- package/dist/cjs/components/Spinner/Spinner.js +6 -6
- package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.d.ts +2 -1
- package/dist/cjs/components/SplitCol/SplitCol.js +8 -6
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/SplitLayout/SplitLayout.d.ts +2 -2
- package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.d.ts +3 -2
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +7 -9
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cjs/components/Tabbar/Tabbar.d.ts +3 -2
- package/dist/cjs/components/Tabbar/Tabbar.js +6 -7
- package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js +7 -7
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.d.ts +3 -3
- package/dist/cjs/components/Tabs/Tabs.js +4 -6
- package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/TabsItem/TabsItem.d.ts +2 -1
- package/dist/cjs/components/TabsItem/TabsItem.js +6 -5
- package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.d.ts +6 -1
- package/dist/cjs/components/Tappable/Tappable.js +12 -9
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/TextTooltip/TextTooltip.js +7 -6
- package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js +5 -3
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/TooltipBase/TooltipBase.d.ts +8 -1
- package/dist/cjs/components/TooltipBase/TooltipBase.js +21 -8
- package/dist/cjs/components/TooltipBase/TooltipBase.js.map +1 -1
- package/dist/cjs/components/Typography/Caption/Caption.js +6 -5
- package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cjs/components/Typography/Headline/Headline.js +5 -4
- package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cjs/components/Typography/Title/Title.js +6 -5
- package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
- package/dist/cjs/components/Typography/Typography.d.ts +1 -1
- package/dist/cjs/components/Typography/Typography.js +12 -13
- package/dist/cjs/components/Typography/Typography.js.map +1 -1
- package/dist/cjs/components/UsersStack/UsersStack.d.ts +3 -2
- package/dist/cjs/components/UsersStack/UsersStack.js +14 -12
- package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cjs/components/View/View.d.ts +2 -1
- package/dist/cjs/components/View/View.js +19 -15
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.d.ts +10 -3
- package/dist/cjs/components/View/ViewInfinite.js +26 -12
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js +8 -9
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivityHasHover.js +4 -3
- package/dist/cjs/hooks/useAdaptivityHasHover.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivityHasPointer.js +5 -5
- package/dist/cjs/hooks/useAdaptivityHasPointer.js.map +1 -1
- package/dist/cjs/hooks/useAutoFocus.d.ts +2 -0
- package/dist/cjs/hooks/useAutoFocus.js +23 -0
- package/dist/cjs/hooks/useAutoFocus.js.map +1 -0
- package/dist/cjs/hooks/useChipsSelect.js +5 -4
- package/dist/cjs/hooks/useChipsSelect.js.map +1 -1
- package/dist/cjs/hooks/useFocusWithin.js +3 -0
- package/dist/cjs/hooks/useFocusWithin.js.map +1 -1
- package/dist/cjs/hooks/useIsClient.js +2 -1
- package/dist/cjs/hooks/useIsClient.js.map +1 -1
- package/dist/cjs/index.d.ts +6 -2
- package/dist/cjs/index.js +12 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/floating/index.d.ts +1 -1
- package/dist/cjs/lib/floating/index.js +3 -0
- package/dist/cjs/lib/floating/index.js.map +1 -1
- package/dist/cjs/lib/select.d.ts +1 -1
- package/dist/cjs/lib/utils.d.ts +2 -0
- package/dist/cjs/lib/utils.js +22 -0
- package/dist/cjs/lib/utils.js.map +1 -1
- package/dist/cjs/types.d.ts +1 -0
- package/dist/cjs/types.js.map +1 -1
- package/dist/components/Accordion/Accordion.d.ts +1 -1
- package/dist/components/Accordion/Accordion.js +6 -11
- package/dist/components/Accordion/Accordion.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.d.ts +6 -1
- package/dist/components/ActionSheet/ActionSheet.js +12 -9
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetContext.d.ts +6 -1
- package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +2 -1
- package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +6 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +15 -4
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/Alert/Alert.d.ts +6 -1
- package/dist/components/Alert/Alert.js +15 -5
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.d.ts +12 -2
- package/dist/components/AppRoot/AppRoot.js +47 -19
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AppRoot/AppRootContext.d.ts +1 -0
- package/dist/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/components/AspectRatio/AspectRatio.d.ts +3 -3
- package/dist/components/AspectRatio/AspectRatio.js +6 -8
- package/dist/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/components/Badge/Badge.d.ts +3 -2
- package/dist/components/Badge/Badge.js +10 -8
- package/dist/components/Badge/Badge.js.map +1 -1
- package/dist/components/Banner/Banner.d.ts +3 -3
- package/dist/components/Banner/Banner.js +12 -11
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/BaseGallery/BaseGallery.d.ts +1 -1
- package/dist/components/BaseGallery/BaseGallery.js +10 -9
- package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/components/BaseGallery/types.d.ts +2 -2
- package/dist/components/BaseGallery/types.js.map +1 -1
- package/dist/components/Button/Button.d.ts +2 -1
- package/dist/components/Button/Button.js +29 -24
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +3 -3
- package/dist/components/ButtonGroup/ButtonGroup.js +21 -21
- package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +3 -3
- package/dist/components/Calendar/Calendar.js +4 -6
- package/dist/components/Calendar/Calendar.js.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.d.ts +3 -2
- package/dist/components/CalendarDays/CalendarDays.js +11 -8
- package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.d.ts +3 -2
- package/dist/components/CalendarHeader/CalendarHeader.js +24 -7
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.d.ts +3 -3
- package/dist/components/CalendarRange/CalendarRange.js +4 -6
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/Card/Card.d.ts +4 -4
- package/dist/components/Card/Card.js +7 -9
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/CardGrid/CardGrid.d.ts +3 -2
- package/dist/components/CardGrid/CardGrid.js +11 -11
- package/dist/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.d.ts +3 -2
- package/dist/components/CardScroll/CardScroll.js +10 -9
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Cell/CellDragger/CellDragger.d.ts +2 -1
- package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.js +6 -5
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/Chip/Chip.d.ts +3 -2
- package/dist/components/Chip/Chip.js +6 -7
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.js +4 -2
- package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.js +4 -2
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js +8 -5
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/Counter/Counter.d.ts +2 -1
- package/dist/components/Counter/Counter.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
- package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.d.ts +2 -1
- package/dist/components/DatePicker/DatePicker.js +6 -6
- package/dist/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/Div/Div.d.ts +3 -4
- package/dist/components/Div/Div.js +5 -13
- package/dist/components/Div/Div.js.map +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.d.ts +2 -1
- package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/components/Epic/Epic.d.ts +3 -2
- package/dist/components/Epic/Epic.js +7 -7
- package/dist/components/Epic/Epic.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.d.ts +2 -2
- package/dist/components/FixedLayout/FixedLayout.js +5 -4
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.d.ts +2 -2
- package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/components/FocusVisible/FocusVisible.d.ts +2 -1
- package/dist/components/FocusVisible/FocusVisible.js +8 -6
- package/dist/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/components/FormField/FormField.js +5 -4
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormItem/FormItem.d.ts +6 -1
- package/dist/components/FormItem/FormItem.js +11 -10
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -3
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +6 -6
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/FormStatus/FormStatus.d.ts +2 -2
- package/dist/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/components/Gradient/Gradient.d.ts +3 -2
- package/dist/components/Gradient/Gradient.js +15 -14
- package/dist/components/Gradient/Gradient.js.map +1 -1
- package/dist/components/Group/Group.d.ts +3 -3
- package/dist/components/Group/Group.js +37 -24
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/Header/Header.d.ts +3 -3
- package/dist/components/Header/Header.js +12 -11
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.js +6 -5
- package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +3 -3
- package/dist/components/HorizontalScroll/HorizontalScroll.js +16 -14
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/Image/Image.js +54 -39
- package/dist/components/Image/Image.js.map +1 -1
- package/dist/components/ImageBase/ImageBase.d.ts +2 -2
- package/dist/components/ImageBase/ImageBase.js +25 -8
- package/dist/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.d.ts +3 -2
- package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +8 -9
- package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
- package/dist/components/InfoRow/InfoRow.d.ts +2 -1
- package/dist/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/components/InputLike/InputLike.d.ts +3 -3
- package/dist/components/InputLike/InputLike.js +6 -8
- package/dist/components/InputLike/InputLike.js.map +1 -1
- package/dist/components/List/List.d.ts +3 -2
- package/dist/components/List/List.js +5 -5
- package/dist/components/List/List.js.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.d.ts +2 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js +15 -12
- package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/components/ModalCard/ModalCard.js +5 -7
- package/dist/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.d.ts +3 -3
- package/dist/components/ModalCardBase/ModalCardBase.js +4 -6
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +2 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.d.ts +3 -2
- package/dist/components/ModalPage/ModalPage.js +9 -6
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +5 -3
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootContext.js +3 -0
- package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/components/ModalRoot/types.d.ts +1 -0
- package/dist/components/ModalRoot/types.js.map +1 -1
- package/dist/components/NavIdContext/NavIdContext.d.ts +3 -0
- package/dist/components/NavIdContext/NavIdContext.js +5 -0
- package/dist/components/NavIdContext/NavIdContext.js.map +1 -0
- package/dist/components/NavIdContext/useNavId.d.ts +4 -0
- package/dist/components/NavIdContext/useNavId.js +10 -0
- package/dist/components/NavIdContext/useNavId.js.map +1 -0
- package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts +8 -0
- package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js +24 -0
- package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js.map +1 -0
- package/dist/components/Pagination/Pagination.d.ts +3 -3
- package/dist/components/Pagination/Pagination.js +17 -33
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Pagination/PaginationPage/PaginationPageButton.d.ts +12 -0
- package/dist/components/Pagination/PaginationPage/PaginationPageButton.js +37 -0
- package/dist/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -0
- package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts +6 -0
- package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.js +21 -0
- package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.js.map +1 -0
- package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts +5 -0
- package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.js +10 -0
- package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.js.map +1 -0
- package/dist/components/Pagination/utils.d.ts +1 -0
- package/dist/components/Pagination/utils.js +5 -0
- package/dist/components/Pagination/utils.js.map +1 -0
- package/dist/components/Panel/Panel.d.ts +3 -3
- package/dist/components/Panel/Panel.js +11 -8
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.d.ts +3 -3
- package/dist/components/PanelHeader/PanelHeader.js +5 -5
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -2
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js +4 -6
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.d.ts +2 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/Placeholder/Placeholder.d.ts +24 -11
- package/dist/components/Placeholder/Placeholder.js +49 -21
- package/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/PopoutRoot/PopoutRoot.d.ts +3 -3
- package/dist/components/PopoutRoot/PopoutRoot.js +12 -19
- package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.d.ts +3 -2
- package/dist/components/PopoutWrapper/PopoutWrapper.js +17 -17
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts +7 -3
- package/dist/components/Popper/Popper.js +20 -11
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/Progress/Progress.d.ts +3 -3
- package/dist/components/Progress/Progress.js +9 -10
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/PromoBanner/PromoBanner.d.ts +3 -2
- package/dist/components/PromoBanner/PromoBanner.js +5 -6
- package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefreshSpinner.d.ts +7 -7
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js +14 -6
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.d.ts +3 -2
- package/dist/components/RadioGroup/RadioGroup.js +6 -7
- package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/Removable/Removable.d.ts +3 -3
- package/dist/components/Removable/Removable.js +4 -8
- package/dist/components/Removable/Removable.js.map +1 -1
- package/dist/components/RichCell/RichCell.d.ts +1 -1
- package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts +3 -1
- package/dist/components/RichCell/RichCellIcon/RichCellIcon.js +5 -11
- package/dist/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
- package/dist/components/RichTooltip/RichTooltip.js +7 -6
- package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/components/Root/Root.d.ts +3 -2
- package/dist/components/Root/Root.js +13 -10
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/RootComponent/RootComponent.d.ts +9 -0
- package/dist/components/RootComponent/RootComponent.js +20 -0
- package/dist/components/RootComponent/RootComponent.js.map +1 -0
- package/dist/components/ScrollArrow/ScrollArrow.d.ts +1 -1
- package/dist/components/ScrollArrow/ScrollArrow.js +13 -12
- package/dist/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/components/Search/Search.d.ts +3 -3
- package/dist/components/Search/Search.js +4 -2
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.d.ts +3 -3
- package/dist/components/SegmentedControl/SegmentedControl.js +4 -6
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -3
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +4 -2
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts +3 -3
- package/dist/components/SelectMimicry/SelectMimicry.js +8 -3
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/SelectTypography/SelectTypography.d.ts +2 -2
- package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/components/Separator/Separator.d.ts +3 -2
- package/dist/components/Separator/Separator.js +5 -5
- package/dist/components/Separator/Separator.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +0 -1
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/Slider/Slider.d.ts +4 -3
- package/dist/components/Slider/Slider.js +5 -2
- package/dist/components/Slider/Slider.js.map +1 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.d.ts +2 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.js +56 -5
- package/dist/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts +3 -2
- package/dist/components/Snackbar/Snackbar.js +8 -7
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/Spacing/Spacing.d.ts +3 -3
- package/dist/components/Spacing/Spacing.js +5 -6
- package/dist/components/Spacing/Spacing.js.map +1 -1
- package/dist/components/Spinner/Spinner.d.ts +3 -2
- package/dist/components/Spinner/Spinner.js +6 -6
- package/dist/components/Spinner/Spinner.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts +2 -1
- package/dist/components/SplitCol/SplitCol.js +8 -6
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.d.ts +2 -2
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.d.ts +3 -2
- package/dist/components/SubnavigationBar/SubnavigationBar.js +7 -9
- package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.d.ts +3 -2
- package/dist/components/Tabbar/Tabbar.js +6 -7
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/dist/components/TabbarItem/TabbarItem.js +7 -7
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts +3 -3
- package/dist/components/Tabs/Tabs.js +4 -6
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.d.ts +2 -1
- package/dist/components/TabsItem/TabsItem.js +6 -5
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.d.ts +6 -1
- package/dist/components/Tappable/Tappable.js +12 -9
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/TextTooltip/TextTooltip.js +7 -6
- package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/components/Tooltip/Tooltip.js +6 -4
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/TooltipBase/TooltipBase.d.ts +8 -1
- package/dist/components/TooltipBase/TooltipBase.js +10 -5
- package/dist/components/TooltipBase/TooltipBase.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.js +6 -5
- package/dist/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/components/Typography/Headline/Headline.js +5 -4
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/Typography/Title/Title.js +6 -5
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/Typography/Typography.d.ts +1 -1
- package/dist/components/Typography/Typography.js +12 -13
- package/dist/components/Typography/Typography.js.map +1 -1
- package/dist/components/UsersStack/UsersStack.d.ts +3 -2
- package/dist/components/UsersStack/UsersStack.js +14 -12
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/View.d.ts +2 -1
- package/dist/components/View/View.js +19 -15
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.d.ts +10 -3
- package/dist/components/View/ViewInfinite.js +16 -10
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.js +8 -9
- package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/components.css +37 -36
- package/dist/components.css.map +1 -1
- package/dist/components.js.tmp +6805 -4236
- package/dist/cssm/components/Accordion/Accordion.d.ts +1 -1
- package/dist/cssm/components/Accordion/Accordion.js +5 -5
- package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
- package/dist/cssm/components/Accordion/Accordion.module.css +2 -0
- package/dist/cssm/components/ActionSheet/ActionSheet.d.ts +6 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js +11 -9
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.module.css +3 -3
- package/dist/cssm/components/ActionSheet/ActionSheetContext.d.ts +6 -1
- package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +1 -0
- package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +6 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +13 -3
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.d.ts +6 -1
- package/dist/cssm/components/Alert/Alert.js +13 -4
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.module.css +17 -8
- package/dist/cssm/components/AppRoot/AppRoot.d.ts +12 -2
- package/dist/cssm/components/AppRoot/AppRoot.js +39 -14
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRootContext.d.ts +1 -0
- package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/cssm/components/AspectRatio/AspectRatio.d.ts +3 -3
- package/dist/cssm/components/AspectRatio/AspectRatio.js +5 -5
- package/dist/cssm/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/cssm/components/AspectRatio/AspectRatio.module.css +6 -0
- package/dist/cssm/components/Badge/Badge.d.ts +3 -2
- package/dist/cssm/components/Badge/Badge.js +8 -5
- package/dist/cssm/components/Badge/Badge.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.d.ts +3 -3
- package/dist/cssm/components/Banner/Banner.js +11 -9
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.module.css +4 -2
- package/dist/cssm/components/BaseGallery/BaseGallery.d.ts +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.js +10 -8
- package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.module.css +2 -0
- package/dist/cssm/components/BaseGallery/types.d.ts +2 -2
- package/dist/cssm/components/BaseGallery/types.js.map +1 -1
- package/dist/cssm/components/Button/Button.d.ts +2 -1
- package/dist/cssm/components/Button/Button.js +27 -23
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/Button/Button.module.css +4 -0
- package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +3 -3
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js +19 -16
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.module.css +2 -2
- package/dist/cssm/components/Calendar/Calendar.d.ts +3 -3
- package/dist/cssm/components/Calendar/Calendar.js +4 -4
- package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.d.ts +3 -2
- package/dist/cssm/components/CalendarDays/CalendarDays.js +9 -6
- package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.d.ts +3 -2
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +6 -4
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +3 -3
- package/dist/cssm/components/CalendarRange/CalendarRange.js +4 -5
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/Card/Card.d.ts +4 -4
- package/dist/cssm/components/Card/Card.js +6 -5
- package/dist/cssm/components/Card/Card.js.map +1 -1
- package/dist/cssm/components/Card/Card.module.css +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.d.ts +3 -2
- package/dist/cssm/components/CardGrid/CardGrid.js +10 -8
- package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.module.css +0 -7
- package/dist/cssm/components/CardScroll/CardScroll.d.ts +3 -2
- package/dist/cssm/components/CardScroll/CardScroll.js +9 -7
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/CellDragger/CellDragger.d.ts +2 -1
- package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.js +5 -4
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.module.css +8 -0
- package/dist/cssm/components/Chip/Chip.d.ts +3 -2
- package/dist/cssm/components/Chip/Chip.js +5 -5
- package/dist/cssm/components/Chip/Chip.js.map +1 -1
- package/dist/cssm/components/Chip/Chip.module.css +24 -0
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +4 -2
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +1 -4
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +3 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +8 -5
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.d.ts +2 -1
- package/dist/cssm/components/Counter/Counter.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cssm/components/DatePicker/DatePicker.d.ts +2 -1
- package/dist/cssm/components/DatePicker/DatePicker.js +5 -4
- package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cssm/components/Div/Div.d.ts +3 -4
- package/dist/cssm/components/Div/Div.js +5 -8
- package/dist/cssm/components/Div/Div.js.map +1 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +2 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cssm/components/Epic/Epic.d.ts +3 -2
- package/dist/cssm/components/Epic/Epic.js +4 -4
- package/dist/cssm/components/Epic/Epic.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.d.ts +2 -2
- package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -4
- package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.module.css +2 -0
- package/dist/cssm/components/FocusTrap/FocusTrap.d.ts +2 -2
- package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.d.ts +2 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.js +8 -6
- package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.module.css +4 -4
- package/dist/cssm/components/FormField/FormField.js +5 -4
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.module.css +4 -2
- package/dist/cssm/components/FormItem/FormItem.d.ts +6 -1
- package/dist/cssm/components/FormItem/FormItem.js +9 -7
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.module.css +3 -0
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -3
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +5 -4
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +3 -1
- package/dist/cssm/components/FormStatus/FormStatus.d.ts +2 -2
- package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/cssm/components/Gradient/Gradient.d.ts +3 -2
- package/dist/cssm/components/Gradient/Gradient.js +14 -11
- package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
- package/dist/cssm/components/Group/Group.d.ts +3 -3
- package/dist/cssm/components/Group/Group.js +36 -22
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Group/Group.module.css +41 -4
- package/dist/cssm/components/Header/Header.d.ts +3 -3
- package/dist/cssm/components/Header/Header.js +10 -8
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js +6 -5
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +3 -3
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +16 -13
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.module.css +10 -0
- package/dist/cssm/components/Image/Image.js +46 -33
- package/dist/cssm/components/Image/Image.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.d.ts +2 -2
- package/dist/cssm/components/ImageBase/ImageBase.js +25 -6
- package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.d.ts +3 -2
- package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +7 -6
- package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.d.ts +2 -1
- package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cssm/components/Input/Input.module.css +15 -0
- package/dist/cssm/components/InputLike/InputLike.d.ts +3 -3
- package/dist/cssm/components/InputLike/InputLike.js +5 -5
- package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
- package/dist/cssm/components/List/List.d.ts +3 -2
- package/dist/cssm/components/List/List.js +4 -3
- package/dist/cssm/components/List/List.js.map +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.d.ts +2 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +15 -12
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.js +4 -4
- package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.d.ts +3 -3
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js +4 -4
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.d.ts +2 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.d.ts +3 -2
- package/dist/cssm/components/ModalPage/ModalPage.js +8 -4
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.module.css +6 -6
- package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -2
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.module.css +2 -2
- package/dist/cssm/components/ModalRoot/ModalRootContext.js +2 -1
- package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/cssm/components/ModalRoot/types.d.ts +1 -0
- package/dist/cssm/components/ModalRoot/types.js.map +1 -1
- package/dist/cssm/components/NavIdContext/NavIdContext.d.ts +3 -0
- package/dist/cssm/components/NavIdContext/NavIdContext.js +5 -0
- package/dist/cssm/components/NavIdContext/NavIdContext.js.map +1 -0
- package/dist/cssm/components/NavIdContext/useNavId.d.ts +4 -0
- package/dist/cssm/components/NavIdContext/useNavId.js +8 -0
- package/dist/cssm/components/NavIdContext/useNavId.js.map +1 -0
- package/dist/cssm/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts +8 -0
- package/dist/cssm/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js +22 -0
- package/dist/cssm/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js.map +1 -0
- package/dist/cssm/components/Pagination/Pagination.d.ts +3 -3
- package/dist/cssm/components/Pagination/Pagination.js +16 -31
- package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.module.css +0 -51
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPage.module.css +43 -0
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.d.ts +12 -0
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.js +30 -0
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -0
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts +6 -0
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPageEllipsis.js +17 -0
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPageEllipsis.js.map +1 -0
- package/dist/cssm/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts +5 -0
- package/dist/cssm/components/Pagination/PaginationPage/usePaginationPageClasses.js +10 -0
- package/dist/cssm/components/Pagination/PaginationPage/usePaginationPageClasses.js.map +1 -0
- package/dist/cssm/components/Pagination/utils.d.ts +1 -0
- package/dist/cssm/components/Pagination/utils.js +5 -0
- package/dist/cssm/components/Pagination/utils.js.map +1 -0
- package/dist/cssm/components/Panel/Panel.d.ts +3 -3
- package/dist/cssm/components/Panel/Panel.js +10 -5
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.module.css +13 -2
- package/dist/cssm/components/PanelHeader/PanelHeader.d.ts +3 -3
- package/dist/cssm/components/PanelHeader/PanelHeader.js +5 -4
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.module.css +17 -3
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -2
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +4 -4
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.d.ts +2 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +8 -8
- package/dist/cssm/components/Placeholder/Placeholder.d.ts +24 -11
- package/dist/cssm/components/Placeholder/Placeholder.js +32 -15
- package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.module.css +1 -0
- package/dist/cssm/components/PopoutRoot/PopoutRoot.d.ts +3 -3
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js +12 -17
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cssm/components/PopoutRoot/PopoutRoot.module.css +0 -4
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.d.ts +3 -2
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +16 -15
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.module.css +4 -2
- package/dist/cssm/components/Popover/Popover.module.css +2 -2
- package/dist/cssm/components/Popper/Popper.d.ts +7 -3
- package/dist/cssm/components/Popper/Popper.js +18 -10
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/Progress/Progress.d.ts +3 -3
- package/dist/cssm/components/Progress/Progress.js +9 -8
- package/dist/cssm/components/Progress/Progress.js.map +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.d.ts +3 -2
- package/dist/cssm/components/PromoBanner/PromoBanner.js +4 -4
- package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.module.css +4 -4
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.d.ts +7 -7
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +6 -5
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cssm/components/RadioGroup/RadioGroup.d.ts +3 -2
- package/dist/cssm/components/RadioGroup/RadioGroup.js +4 -3
- package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.d.ts +3 -3
- package/dist/cssm/components/Removable/Removable.js +4 -6
- package/dist/cssm/components/Removable/Removable.js.map +1 -1
- package/dist/cssm/components/RichCell/RichCell.d.ts +1 -1
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.d.ts +3 -1
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js +6 -6
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.js +7 -6
- package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.module.css +2 -2
- package/dist/cssm/components/Root/Root.d.ts +3 -2
- package/dist/cssm/components/Root/Root.js +12 -8
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/Root/Root.module.css +12 -13
- package/dist/cssm/components/RootComponent/RootComponent.d.ts +9 -0
- package/dist/cssm/components/RootComponent/RootComponent.js +11 -0
- package/dist/cssm/components/RootComponent/RootComponent.js.map +1 -0
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.module.css +7 -5
- package/dist/cssm/components/ScrollArrow/ScrollArrow.d.ts +1 -1
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js +13 -10
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/cssm/components/Search/Search.d.ts +3 -3
- package/dist/cssm/components/Search/Search.js +2 -1
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.d.ts +3 -3
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js +4 -4
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -3
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +3 -3
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +6 -2
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/SelectTypography/SelectTypography.d.ts +2 -2
- package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/cssm/components/Separator/Separator.d.ts +3 -2
- package/dist/cssm/components/Separator/Separator.js +3 -2
- package/dist/cssm/components/Separator/Separator.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +0 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.module.css +4 -0
- package/dist/cssm/components/Slider/Slider.d.ts +4 -3
- package/dist/cssm/components/Slider/Slider.js +3 -1
- package/dist/cssm/components/Slider/Slider.js.map +1 -1
- package/dist/cssm/components/Slider/SliderThumb/SliderThumb.d.ts +2 -1
- package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js +54 -5
- package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.d.ts +3 -2
- package/dist/cssm/components/Snackbar/Snackbar.js +8 -6
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.module.css +4 -4
- package/dist/cssm/components/Spacing/Spacing.d.ts +3 -3
- package/dist/cssm/components/Spacing/Spacing.js +4 -4
- package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
- package/dist/cssm/components/Spinner/Spinner.d.ts +3 -2
- package/dist/cssm/components/Spinner/Spinner.js +5 -4
- package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.d.ts +2 -1
- package/dist/cssm/components/SplitCol/SplitCol.js +7 -5
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.d.ts +2 -2
- package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.d.ts +3 -2
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +6 -6
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.d.ts +3 -2
- package/dist/cssm/components/Tabbar/Tabbar.js +5 -4
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +5 -4
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.d.ts +3 -3
- package/dist/cssm/components/Tabs/Tabs.js +4 -4
- package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.d.ts +2 -1
- package/dist/cssm/components/TabsItem/TabsItem.js +6 -5
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.d.ts +6 -1
- package/dist/cssm/components/Tappable/Tappable.js +10 -8
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.module.css +7 -3
- package/dist/cssm/components/TextTooltip/TextTooltip.js +7 -6
- package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.module.css +2 -2
- package/dist/cssm/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.js +4 -3
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/TooltipBase/TooltipBase.d.ts +8 -1
- package/dist/cssm/components/TooltipBase/TooltipBase.js +9 -4
- package/dist/cssm/components/TooltipBase/TooltipBase.js.map +1 -1
- package/dist/cssm/components/TooltipBase/TooltipBase.module.css +0 -1
- package/dist/cssm/components/Typography/Caption/Caption.js +6 -5
- package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.js +5 -4
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Title/Title.js +6 -5
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/Typography/Typography.d.ts +1 -1
- package/dist/cssm/components/Typography/Typography.js +10 -8
- package/dist/cssm/components/Typography/Typography.js.map +1 -1
- package/dist/cssm/components/Typography/Typography.module.css +6 -0
- package/dist/cssm/components/UsersStack/UsersStack.d.ts +3 -2
- package/dist/cssm/components/UsersStack/UsersStack.js +14 -11
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/View/View.d.ts +2 -1
- package/dist/cssm/components/View/View.js +19 -15
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/View.module.css +16 -16
- package/dist/cssm/components/View/ViewInfinite.d.ts +10 -3
- package/dist/cssm/components/View/ViewInfinite.js +16 -10
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js +4 -6
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivityHasHover.js +4 -3
- package/dist/cssm/hooks/useAdaptivityHasHover.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivityHasPointer.js +5 -5
- package/dist/cssm/hooks/useAdaptivityHasPointer.js.map +1 -1
- package/dist/cssm/hooks/useAutoFocus.d.ts +2 -0
- package/dist/cssm/hooks/useAutoFocus.js +12 -0
- package/dist/cssm/hooks/useAutoFocus.js.map +1 -0
- package/dist/cssm/hooks/useChipsSelect.js +5 -4
- package/dist/cssm/hooks/useChipsSelect.js.map +1 -1
- package/dist/cssm/hooks/useFocusWithin.js +3 -0
- package/dist/cssm/hooks/useFocusWithin.js.map +1 -1
- package/dist/cssm/hooks/useIsClient.js +2 -1
- package/dist/cssm/hooks/useIsClient.js.map +1 -1
- package/dist/cssm/index.d.ts +6 -2
- package/dist/cssm/index.js +3 -0
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/floating/index.d.ts +1 -1
- package/dist/cssm/lib/floating/index.js +1 -1
- package/dist/cssm/lib/floating/index.js.map +1 -1
- package/dist/cssm/lib/select.d.ts +1 -1
- package/dist/cssm/lib/utils.d.ts +2 -0
- package/dist/cssm/lib/utils.js +14 -0
- package/dist/cssm/lib/utils.js.map +1 -1
- package/dist/cssm/styles/common.css +9 -7
- package/dist/cssm/styles/constants.css +1 -1
- package/dist/cssm/styles/themes.css +226 -133
- package/dist/cssm/types.d.ts +1 -0
- package/dist/cssm/types.js.map +1 -1
- package/dist/hooks/useAdaptivityHasHover.js +4 -3
- package/dist/hooks/useAdaptivityHasHover.js.map +1 -1
- package/dist/hooks/useAdaptivityHasPointer.js +5 -5
- package/dist/hooks/useAdaptivityHasPointer.js.map +1 -1
- package/dist/hooks/useAutoFocus.d.ts +2 -0
- package/dist/hooks/useAutoFocus.js +12 -0
- package/dist/hooks/useAutoFocus.js.map +1 -0
- package/dist/hooks/useChipsSelect.js +5 -4
- package/dist/hooks/useChipsSelect.js.map +1 -1
- package/dist/hooks/useFocusWithin.js +3 -0
- package/dist/hooks/useFocusWithin.js.map +1 -1
- package/dist/hooks/useIsClient.js +2 -1
- package/dist/hooks/useIsClient.js.map +1 -1
- package/dist/index.d.ts +6 -2
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/floating/index.d.ts +1 -1
- package/dist/lib/floating/index.js +1 -1
- package/dist/lib/floating/index.js.map +1 -1
- package/dist/lib/select.d.ts +1 -1
- package/dist/lib/utils.d.ts +2 -0
- package/dist/lib/utils.js +16 -0
- package/dist/lib/utils.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.js.map +1 -1
- package/dist/vkui.css +38 -37
- package/dist/vkui.css.map +1 -1
- package/dist/vkui.js.tmp +6687 -4118
- package/package.json +24 -23
|
@@ -7,15 +7,15 @@ import { classNames, hasReactNode, noop } from "@vkontakte/vkjs";
|
|
|
7
7
|
import { useAdaptivity } from "../../hooks/useAdaptivity";
|
|
8
8
|
import { SizeType } from "../../lib/adaptivity";
|
|
9
9
|
import { getTitleFromChildren } from "../../lib/utils";
|
|
10
|
+
import { RootComponent } from "../RootComponent/RootComponent";
|
|
10
11
|
import { Tappable } from "../Tappable/Tappable";
|
|
11
|
-
import { Footnote } from "../Typography/Footnote/Footnote";
|
|
12
12
|
var sizeYClassNames = _define_property({
|
|
13
13
|
none: "vkuiChip--sizeY-none"
|
|
14
14
|
}, SizeType.COMPACT, "vkuiChip--sizeY-compact");
|
|
15
15
|
/**
|
|
16
16
|
* @see https://vkcom.github.io/VKUI/#/Chip
|
|
17
17
|
*/ export var Chip = function(_param) {
|
|
18
|
-
var _param_value = _param.value, value = _param_value === void 0 ? "" : _param_value, option = _param.option, _param_removable = _param.removable, removable = _param_removable === void 0 ? true : _param_removable, _param_onRemove = _param.onRemove, onRemove = _param_onRemove === void 0 ? noop : _param_onRemove, _param_removeAriaLabel = _param.removeAriaLabel, removeAriaLabel = _param_removeAriaLabel === void 0 ? "Удалить" : _param_removeAriaLabel, _param_before = _param.before, before = _param_before === void 0 ? null : _param_before, after = _param.after, children = _param.children,
|
|
18
|
+
var _param_value = _param.value, value = _param_value === void 0 ? "" : _param_value, option = _param.option, _param_removable = _param.removable, removable = _param_removable === void 0 ? true : _param_removable, _param_onRemove = _param.onRemove, onRemove = _param_onRemove === void 0 ? noop : _param_onRemove, _param_removeAriaLabel = _param.removeAriaLabel, removeAriaLabel = _param_removeAriaLabel === void 0 ? "Удалить" : _param_removeAriaLabel, _param_before = _param.before, before = _param_before === void 0 ? null : _param_before, after = _param.after, children = _param.children, restProps = _object_without_properties(_param, [
|
|
19
19
|
"value",
|
|
20
20
|
"option",
|
|
21
21
|
"removable",
|
|
@@ -23,8 +23,7 @@ var sizeYClassNames = _define_property({
|
|
|
23
23
|
"removeAriaLabel",
|
|
24
24
|
"before",
|
|
25
25
|
"after",
|
|
26
|
-
"children"
|
|
27
|
-
"className"
|
|
26
|
+
"children"
|
|
28
27
|
]);
|
|
29
28
|
var _useAdaptivity = useAdaptivity(), _useAdaptivity_sizeY = _useAdaptivity.sizeY, sizeY = _useAdaptivity_sizeY === void 0 ? "none" : _useAdaptivity_sizeY;
|
|
30
29
|
var onRemoveWrapper = React.useCallback(function(event) {
|
|
@@ -34,8 +33,8 @@ var sizeYClassNames = _define_property({
|
|
|
34
33
|
value
|
|
35
34
|
]);
|
|
36
35
|
var title = getTitleFromChildren(children);
|
|
37
|
-
return /*#__PURE__*/ React.createElement(
|
|
38
|
-
|
|
36
|
+
return /*#__PURE__*/ React.createElement(RootComponent, _object_spread({
|
|
37
|
+
baseClassName: classNames("vkuiChip", sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY], removable && "vkuiChip--removable"),
|
|
39
38
|
role: "option",
|
|
40
39
|
"aria-label": title
|
|
41
40
|
}, restProps), /*#__PURE__*/ React.createElement("div", {
|
|
@@ -43,7 +42,7 @@ var sizeYClassNames = _define_property({
|
|
|
43
42
|
role: "presentation"
|
|
44
43
|
}, hasReactNode(before) && /*#__PURE__*/ React.createElement("div", {
|
|
45
44
|
className: "vkuiChip__before"
|
|
46
|
-
}, before), /*#__PURE__*/ React.createElement(
|
|
45
|
+
}, before), /*#__PURE__*/ React.createElement("span", {
|
|
47
46
|
className: "vkuiChip__content",
|
|
48
47
|
title: title,
|
|
49
48
|
"aria-hidden": true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Chip/Chip.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Cancel } from '@vkontakte/icons';\nimport { classNames, hasReactNode, noop } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { SizeType } from '../../lib/adaptivity';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Chip/Chip.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Cancel } from '@vkontakte/icons';\nimport { classNames, hasReactNode, noop } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { SizeType } from '../../lib/adaptivity';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { Tappable } from '../Tappable/Tappable';\nimport styles from './Chip.module.css';\n\nconst sizeYClassNames = {\n none: styles['Chip--sizeY-none'],\n [SizeType.COMPACT]: styles['Chip--sizeY-compact'],\n};\n\nexport type ChipValue = string | number;\n\nexport interface ChipOption {\n value?: ChipValue;\n label?: string;\n [otherProp: string]: any;\n}\n\nexport interface ChipProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n value: ChipValue;\n option?: ChipOption;\n onRemove?: (event?: React.MouseEvent, value?: ChipValue) => void;\n removable?: boolean;\n removeAriaLabel?: string;\n before?: React.ReactNode;\n after?: React.ReactNode;\n}\n\nexport interface RenderChip<T extends ChipOption> extends ChipProps {\n label: string;\n option: T;\n disabled: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Chip\n */\nexport const Chip = ({\n value = '',\n option,\n removable = true,\n onRemove = noop,\n removeAriaLabel = 'Удалить',\n before = null,\n after,\n children,\n ...restProps\n}: ChipProps) => {\n const { sizeY = 'none' } = useAdaptivity();\n const onRemoveWrapper = React.useCallback(\n (event: React.MouseEvent) => {\n onRemove(event, value);\n },\n [onRemove, value],\n );\n const title = getTitleFromChildren(children);\n\n return (\n <RootComponent\n baseClassName={classNames(\n styles['Chip'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n removable && styles['Chip--removable'],\n )}\n role=\"option\"\n aria-label={title}\n {...restProps}\n >\n <div className={styles['Chip__in']} role=\"presentation\">\n {hasReactNode(before) && <div className={styles['Chip__before']}>{before}</div>}\n <span className={styles['Chip__content']} title={title} aria-hidden>\n {children}\n </span>\n {hasReactNode(after) && <div className={styles['Chip__after']}>{after}</div>}\n\n {removable && (\n <Tappable\n Component=\"button\"\n className={styles['Chip__remove']}\n onClick={onRemoveWrapper}\n hasHover={false}\n hasActive={false}\n aria-label={`${removeAriaLabel} ${title}`}\n >\n <Icon16Cancel />\n </Tappable>\n )}\n </div>\n </RootComponent>\n );\n};\n"],"names":["React","Icon16Cancel","classNames","hasReactNode","noop","useAdaptivity","SizeType","getTitleFromChildren","RootComponent","Tappable","sizeYClassNames","none","COMPACT","Chip","value","option","removable","onRemove","removeAriaLabel","before","after","children","restProps","sizeY","onRemoveWrapper","useCallback","event","title","baseClassName","REGULAR","role","aria-label","div","className","span","aria-hidden","Component","onClick","hasHover","hasActive"],"mappings":";;;AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,UAAU,EAAEC,YAAY,EAAEC,IAAI,QAAQ,kBAAkB;AACjE,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,QAAQ,QAAQ,uBAAuB;AAChD,SAASC,oBAAoB,QAAQ,kBAAkB;AAEvD,SAASC,aAAa,QAAQ,iCAAiC;AAC/D,SAASC,QAAQ,QAAQ,uBAAuB;AAGhD,IAAMC;IACJC,IAAI;GACHL,SAASM,OAAO;AA2BnB;;CAEC,GACD,OAAO,IAAMC,OAAO;8BAClBC,OAAAA,kCAAQ,mBACRC,gBAAAA,kCACAC,WAAAA,0CAAY,kDACZC,UAAAA,wCAAWb,wDACXc,iBAAAA,sDAAkB,2DAClBC,QAAAA,oCAAS,sBACTC,eAAAA,OACAC,kBAAAA,UACGC;QARHR;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;IAGA,IAA2BhB,iBAAAA,wCAAAA,eAAnBkB,OAAAA,0CAAQ;IAChB,IAAMC,kBAAkBxB,MAAMyB,WAAW,CACvC,SAACC;QACCT,SAASS,OAAOZ;IAClB,GACA;QAACG;QAAUH;KAAM;IAEnB,IAAMa,QAAQpB,qBAAqBc;IAEnC,qBACE,oBAACb;QACCoB,eAAe1B,uBAEbqB,UAAUjB,SAASuB,OAAO,IAAInB,eAAe,CAACa,MAAM,EACpDP;QAEFc,MAAK;QACLC,cAAYJ;OACRL,0BAEJ,oBAACU;QAAIC,SAAS;QAAsBH,MAAK;OACtC3B,aAAagB,yBAAW,oBAACa;QAAIC,SAAS;OAA2Bd,uBAClE,oBAACe;QAAKD,SAAS;QAA2BN,OAAOA;QAAOQ,eAAAA;OACrDd,WAEFlB,aAAaiB,wBAAU,oBAACY;QAAIC,SAAS;OAA0Bb,QAE/DJ,2BACC,oBAACP;QACC2B,WAAU;QACVH,SAAS;QACTI,SAASb;QACTc,UAAU;QACVC,WAAW;QACXR,cAAY,AAAC,GAAqBJ,OAAnBT,iBAAgB,KAAS,OAANS;qBAElC,oBAAC1B;AAMb,EAAE"}
|
|
@@ -10,6 +10,7 @@ import { useChipsInput } from "../../hooks/useChipsInput";
|
|
|
10
10
|
import { useExternRef } from "../../hooks/useExternRef";
|
|
11
11
|
import { SizeType } from "../../lib/adaptivity";
|
|
12
12
|
import { Chip } from "../Chip/Chip";
|
|
13
|
+
import { Text } from "../Typography/Text/Text";
|
|
13
14
|
export var chipsInputDefaultProps = {
|
|
14
15
|
onChange: noop,
|
|
15
16
|
onInputChange: noop,
|
|
@@ -142,7 +143,8 @@ export var ChipsInputBase = function(props) {
|
|
|
142
143
|
}), /*#__PURE__*/ React.createElement("label", {
|
|
143
144
|
className: "vkuiChipsInputBase__label",
|
|
144
145
|
"aria-label": inputAriaLabel
|
|
145
|
-
}, /*#__PURE__*/ React.createElement(
|
|
146
|
+
}, /*#__PURE__*/ React.createElement(Text, _object_spread_props(_object_spread({
|
|
147
|
+
Component: "input",
|
|
146
148
|
type: "text",
|
|
147
149
|
autoCapitalize: "none",
|
|
148
150
|
autoComplete: "off",
|
|
@@ -151,7 +153,7 @@ export var ChipsInputBase = function(props) {
|
|
|
151
153
|
"aria-autocomplete": "list",
|
|
152
154
|
className: "vkuiChipsInputBase__el"
|
|
153
155
|
}, restProps), {
|
|
154
|
-
|
|
156
|
+
getRootRef: inputRef,
|
|
155
157
|
value: fieldValue,
|
|
156
158
|
onChange: handleInputChange,
|
|
157
159
|
onKeyDown: handleKeyDown,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ChipsInputBase/ChipsInputBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useChipsInput } from '../../hooks/useChipsInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { Chip, ChipOption, ChipValue, RenderChip } from '../Chip/Chip';\nimport styles from './ChipsInputBase.module.css';\n\nexport interface ChipsInputBaseProps<Option extends ChipOption>\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'onChange'>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign {\n value: Option[];\n inputValue?: string;\n onChange?: (o: Option[]) => void;\n onInputChange?: (e?: React.ChangeEvent<HTMLInputElement>) => void;\n getOptionValue?: (o?: Option) => ChipValue;\n getOptionLabel?: (o?: Option) => string;\n getNewOptionData?: (v?: ChipValue, l?: string) => Option;\n renderChip?: (props?: RenderChip<Option>) => React.ReactNode;\n inputAriaLabel?: string;\n /**\n * Добавляет значение в список на событие `onBlur`\n */\n addOnBlur?: boolean;\n}\n\nexport const chipsInputDefaultProps: ChipsInputBaseProps<any> = {\n onChange: noop,\n onInputChange: noop,\n onKeyDown: noop,\n onBlur: noop,\n onFocus: noop,\n value: [],\n inputValue: '',\n inputAriaLabel: 'Введите ваше значение...',\n getOptionValue: (option) => option.value,\n getOptionLabel: (option) => option.label,\n getNewOptionData: (_, label) => ({\n value: label,\n label,\n }),\n renderChip(props) {\n if (!props) {\n return null;\n }\n\n const { disabled, value, label, ...rest } = props;\n return (\n <Chip value={value} removable={!disabled} {...rest}>\n {label}\n </Chip>\n );\n },\n addOnBlur: false,\n};\n\nexport const ChipsInputBase = <Option extends ChipOption>(props: ChipsInputBaseProps<Option>) => {\n const propsWithDefault = { ...chipsInputDefaultProps, ...props };\n const {\n style,\n className,\n getRootRef,\n value,\n onChange,\n onInputChange,\n onKeyDown,\n onBlur,\n onFocus,\n children,\n inputValue,\n getRef,\n placeholder,\n getOptionValue,\n getOptionLabel,\n getNewOptionData,\n renderChip,\n inputAriaLabel,\n addOnBlur,\n ...restProps\n } = propsWithDefault;\n const { sizeY } = useAdaptivity();\n\n const [focused, setFocused] = React.useState(false);\n const { fieldValue, addOptionFromInput, removeOption, selectedOptions, handleInputChange } =\n useChipsInput(propsWithDefault);\n const inputRef = useExternRef(getRef);\n\n const isDisabled = restProps.disabled || restProps.readOnly;\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (isDisabled) {\n e.preventDefault();\n return;\n }\n\n onKeyDown!(e);\n\n if (e.key === 'Backspace' && !e.defaultPrevented && !fieldValue && selectedOptions.length) {\n removeOption(getOptionValue!(selectedOptions[selectedOptions.length - 1]));\n e.preventDefault();\n }\n\n if (e.key === 'Enter' && !e.defaultPrevented && fieldValue) {\n addOptionFromInput();\n e.preventDefault();\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n if (focused) {\n setFocused(false);\n }\n onBlur!(e);\n\n if (addOnBlur && !e.defaultPrevented) {\n addOptionFromInput();\n }\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (!focused) {\n setFocused(true);\n }\n onFocus!(e);\n };\n\n const handleChipRemove = (_: React.MouseEvent | undefined, value: ChipValue | undefined) => {\n if (value !== undefined) {\n removeOption(value);\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLDivElement>) => {\n if (isDisabled) {\n e.preventDefault();\n return;\n }\n\n if (inputRef?.current !== null && !focused) {\n inputRef.current.focus();\n }\n };\n\n return (\n <div\n onClick={handleClick}\n role=\"presentation\"\n style={style}\n className={classNames(\n styles['ChipsInputBase'],\n sizeY === SizeType.COMPACT && styles['ChipsInputBase--sizeY-compact'],\n !selectedOptions.length && styles['ChipsInputBase--hasPlaceholder'],\n className,\n )}\n ref={getRootRef}\n >\n {selectedOptions.map((option: Option) => {\n const value = getOptionValue!(option);\n const label = getOptionLabel!(option);\n\n return (\n <React.Fragment key={`${typeof value}-${value}`}>\n {renderChip!({\n option,\n value,\n label,\n onRemove: handleChipRemove,\n disabled: Boolean(restProps.disabled),\n className: styles['ChipsInputBase__chip'],\n })}\n </React.Fragment>\n );\n })}\n <label className={styles['ChipsInputBase__label']} aria-label={inputAriaLabel}>\n <input\n type=\"text\"\n autoCapitalize=\"none\"\n autoComplete=\"off\"\n autoCorrect=\"off\"\n spellCheck={false}\n aria-autocomplete=\"list\"\n className={styles['ChipsInputBase__el']}\n {...restProps}\n ref={inputRef}\n value={fieldValue}\n onChange={handleInputChange}\n onKeyDown={handleKeyDown}\n onFocus={handleFocus}\n onBlur={handleBlur}\n placeholder={selectedOptions.length ? undefined : placeholder}\n />\n </label>\n </div>\n );\n};\n"],"names":["React","classNames","noop","useAdaptivity","useChipsInput","useExternRef","SizeType","Chip","chipsInputDefaultProps","onChange","onInputChange","onKeyDown","onBlur","onFocus","value","inputValue","inputAriaLabel","getOptionValue","option","getOptionLabel","label","getNewOptionData","_","renderChip","props","disabled","rest","removable","addOnBlur","ChipsInputBase","propsWithDefault","style","className","getRootRef","children","getRef","placeholder","restProps","sizeY","useState","focused","setFocused","fieldValue","addOptionFromInput","removeOption","selectedOptions","handleInputChange","inputRef","isDisabled","readOnly","handleKeyDown","e","preventDefault","key","defaultPrevented","length","handleBlur","handleFocus","handleChipRemove","undefined","handleClick","current","focus","div","onClick","role","COMPACT","ref","map","Fragment","onRemove","Boolean","aria-label","input","type","autoCapitalize","autoComplete","autoCorrect","spellCheck","aria-autocomplete"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ChipsInputBase/ChipsInputBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useChipsInput } from '../../hooks/useChipsInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { Chip, ChipOption, ChipValue, RenderChip } from '../Chip/Chip';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './ChipsInputBase.module.css';\n\nexport interface ChipsInputBaseProps<Option extends ChipOption>\n extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'onChange'>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign {\n value: Option[];\n inputValue?: string;\n onChange?: (o: Option[]) => void;\n onInputChange?: (e?: React.ChangeEvent<HTMLInputElement>) => void;\n getOptionValue?: (o?: Option) => ChipValue;\n getOptionLabel?: (o?: Option) => string;\n getNewOptionData?: (v?: ChipValue, l?: string) => Option;\n renderChip?: (props?: RenderChip<Option>) => React.ReactNode;\n inputAriaLabel?: string;\n /**\n * Добавляет значение в список на событие `onBlur`\n */\n addOnBlur?: boolean;\n}\n\nexport const chipsInputDefaultProps: ChipsInputBaseProps<any> = {\n onChange: noop,\n onInputChange: noop,\n onKeyDown: noop,\n onBlur: noop,\n onFocus: noop,\n value: [],\n inputValue: '',\n inputAriaLabel: 'Введите ваше значение...',\n getOptionValue: (option) => option.value,\n getOptionLabel: (option) => option.label,\n getNewOptionData: (_, label) => ({\n value: label,\n label,\n }),\n renderChip(props) {\n if (!props) {\n return null;\n }\n\n const { disabled, value, label, ...rest } = props;\n return (\n <Chip value={value} removable={!disabled} {...rest}>\n {label}\n </Chip>\n );\n },\n addOnBlur: false,\n};\n\nexport const ChipsInputBase = <Option extends ChipOption>(props: ChipsInputBaseProps<Option>) => {\n const propsWithDefault = { ...chipsInputDefaultProps, ...props };\n const {\n style,\n className,\n getRootRef,\n value,\n onChange,\n onInputChange,\n onKeyDown,\n onBlur,\n onFocus,\n children,\n inputValue,\n getRef,\n placeholder,\n getOptionValue,\n getOptionLabel,\n getNewOptionData,\n renderChip,\n inputAriaLabel,\n addOnBlur,\n ...restProps\n } = propsWithDefault;\n const { sizeY } = useAdaptivity();\n\n const [focused, setFocused] = React.useState(false);\n const { fieldValue, addOptionFromInput, removeOption, selectedOptions, handleInputChange } =\n useChipsInput(propsWithDefault);\n const inputRef = useExternRef(getRef);\n\n const isDisabled = restProps.disabled || restProps.readOnly;\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (isDisabled) {\n e.preventDefault();\n return;\n }\n\n onKeyDown!(e);\n\n if (e.key === 'Backspace' && !e.defaultPrevented && !fieldValue && selectedOptions.length) {\n removeOption(getOptionValue!(selectedOptions[selectedOptions.length - 1]));\n e.preventDefault();\n }\n\n if (e.key === 'Enter' && !e.defaultPrevented && fieldValue) {\n addOptionFromInput();\n e.preventDefault();\n }\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n if (focused) {\n setFocused(false);\n }\n onBlur!(e);\n\n if (addOnBlur && !e.defaultPrevented) {\n addOptionFromInput();\n }\n };\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n if (!focused) {\n setFocused(true);\n }\n onFocus!(e);\n };\n\n const handleChipRemove = (_: React.MouseEvent | undefined, value: ChipValue | undefined) => {\n if (value !== undefined) {\n removeOption(value);\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLDivElement>) => {\n if (isDisabled) {\n e.preventDefault();\n return;\n }\n\n if (inputRef?.current !== null && !focused) {\n inputRef.current.focus();\n }\n };\n\n return (\n <div\n onClick={handleClick}\n role=\"presentation\"\n style={style}\n className={classNames(\n styles['ChipsInputBase'],\n sizeY === SizeType.COMPACT && styles['ChipsInputBase--sizeY-compact'],\n !selectedOptions.length && styles['ChipsInputBase--hasPlaceholder'],\n className,\n )}\n ref={getRootRef}\n >\n {selectedOptions.map((option: Option) => {\n const value = getOptionValue!(option);\n const label = getOptionLabel!(option);\n\n return (\n <React.Fragment key={`${typeof value}-${value}`}>\n {renderChip!({\n option,\n value,\n label,\n onRemove: handleChipRemove,\n disabled: Boolean(restProps.disabled),\n className: styles['ChipsInputBase__chip'],\n })}\n </React.Fragment>\n );\n })}\n <label className={styles['ChipsInputBase__label']} aria-label={inputAriaLabel}>\n <Text\n Component=\"input\"\n type=\"text\"\n autoCapitalize=\"none\"\n autoComplete=\"off\"\n autoCorrect=\"off\"\n spellCheck={false}\n aria-autocomplete=\"list\"\n className={styles['ChipsInputBase__el']}\n {...restProps}\n getRootRef={inputRef}\n value={fieldValue}\n onChange={handleInputChange}\n onKeyDown={handleKeyDown}\n onFocus={handleFocus}\n onBlur={handleBlur}\n placeholder={selectedOptions.length ? undefined : placeholder}\n />\n </label>\n </div>\n );\n};\n"],"names":["React","classNames","noop","useAdaptivity","useChipsInput","useExternRef","SizeType","Chip","Text","chipsInputDefaultProps","onChange","onInputChange","onKeyDown","onBlur","onFocus","value","inputValue","inputAriaLabel","getOptionValue","option","getOptionLabel","label","getNewOptionData","_","renderChip","props","disabled","rest","removable","addOnBlur","ChipsInputBase","propsWithDefault","style","className","getRootRef","children","getRef","placeholder","restProps","sizeY","useState","focused","setFocused","fieldValue","addOptionFromInput","removeOption","selectedOptions","handleInputChange","inputRef","isDisabled","readOnly","handleKeyDown","e","preventDefault","key","defaultPrevented","length","handleBlur","handleFocus","handleChipRemove","undefined","handleClick","current","focus","div","onClick","role","COMPACT","ref","map","Fragment","onRemove","Boolean","aria-label","Component","type","autoCapitalize","autoComplete","autoCorrect","spellCheck","aria-autocomplete"],"mappings":"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"}
|
|
@@ -89,8 +89,10 @@ var chipsSelectDefaultProps = _object_spread_props(_object_spread({}, chipsInput
|
|
|
89
89
|
}
|
|
90
90
|
};
|
|
91
91
|
var handleClickOutside = function(e) {
|
|
92
|
-
var _rootRef_current;
|
|
93
|
-
|
|
92
|
+
var _rootRef_current, _scrollBoxRef_current;
|
|
93
|
+
var isClickOutsideFormField = !((_rootRef_current = rootRef.current) === null || _rootRef_current === void 0 ? void 0 : _rootRef_current.contains(e.target));
|
|
94
|
+
var isClickOutsideDropdown = !((_scrollBoxRef_current = scrollBoxRef.current) === null || _scrollBoxRef_current === void 0 ? void 0 : _scrollBoxRef_current.contains(e.target));
|
|
95
|
+
if (isClickOutsideFormField && isClickOutsideDropdown) {
|
|
94
96
|
setOpened(false);
|
|
95
97
|
}
|
|
96
98
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ChipsSelect/ChipsSelect.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useChipsSelect } from '../../hooks/useChipsSelect';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { useDOM } from '../../lib/dom';\nimport type { Placement } from '../../lib/floating';\nimport { defaultFilterFn } from '../../lib/select';\nimport { ChipOption, ChipValue, RenderChip } from '../Chip/Chip';\nimport { ChipsInputProps } from '../ChipsInput/ChipsInput';\nimport { ChipsInputBase, chipsInputDefaultProps } from '../ChipsInputBase/ChipsInputBase';\nimport { CustomSelectDropdown } from '../CustomSelectDropdown/CustomSelectDropdown';\nimport {\n CustomSelectOption,\n CustomSelectOptionProps,\n} from '../CustomSelectOption/CustomSelectOption';\nimport { DropdownIcon } from '../DropdownIcon/DropdownIcon';\nimport { FormField } from '../FormField/FormField';\nimport { IconButton } from '../IconButton/IconButton';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport styles from './ChipsSelect.module.css';\n\nexport interface ChipsSelectProps<Option extends ChipOption>\n extends Omit<ChipsInputProps<Option>, 'after'> {\n popupDirection?: 'top' | 'bottom';\n options?: Option[];\n filterFn?:\n | false\n | ((\n value?: string,\n option?: Option,\n getOptionLabel?: Pick<ChipsInputProps<Option>, 'getOptionLabel'>['getOptionLabel'],\n ) => boolean);\n /**\n * Возможность создавать чипы которых нет в списке (по enter или с помощью пункта в меню, см creatableText)\n */\n creatable?: boolean;\n /**\n * Отрисовка лоадера вместо списка опций в выпадающем списке\n */\n fetching?: boolean;\n renderOption?: (props: CustomSelectOptionProps) => React.ReactNode;\n /**\n * Показывать или скрывать уже выбранные опции\n */\n showSelected?: boolean;\n /**\n * Текст для пункта создающего чипы при клике, так же отвечает за то будет ли показан этот пункт (показывается после того как в списке не отсанется опций)\n */\n creatableText?: string;\n /**\n * Текст который показывается если список опций пуст\n */\n emptyText?: string;\n /**\n * Событие срабатывающее перед onChange\n */\n onChangeStart?: (e: React.MouseEvent | React.KeyboardEvent, option: Option) => void;\n /**\n * Закрытие выпадающего списка после выбора элемента\n */\n closeAfterSelect?: boolean;\n fixDropdownWidth?: boolean;\n forceDropdownPortal?: boolean;\n /**\n * Иконка раскрывающегося списка\n */\n icon?: React.ReactNode;\n /**\n * Добавляет значение в список на событие `onBlur` (использовать вместе с `creatable`)\n */\n addOnBlur?: boolean;\n}\n\ntype FocusActionType = 'next' | 'prev';\n\nconst FOCUS_ACTION_NEXT: FocusActionType = 'next';\nconst FOCUS_ACTION_PREV: FocusActionType = 'prev';\n\nconst chipsSelectDefaultProps: ChipsSelectProps<any> = {\n ...chipsInputDefaultProps,\n emptyText: 'Ничего не найдено',\n creatableText: 'Создать значение',\n onChangeStart: noop,\n creatable: false,\n fetching: false,\n showSelected: true,\n closeAfterSelect: true,\n options: [],\n filterFn: defaultFilterFn,\n renderOption(props) {\n return <CustomSelectOption {...props} />;\n },\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ChipsSelect\n */\nexport const ChipsSelect = <Option extends ChipOption>(props: ChipsSelectProps<Option>) => {\n const propsWithDefault = { ...chipsSelectDefaultProps, ...props };\n const {\n style,\n onFocus,\n onBlur,\n onKeyDown,\n className,\n fetching,\n renderOption,\n emptyText,\n getRef,\n getRootRef,\n disabled,\n placeholder,\n tabIndex,\n getOptionValue,\n getOptionLabel,\n showSelected,\n getNewOptionData,\n renderChip,\n popupDirection,\n creatable,\n filterFn,\n inputValue,\n creatableText,\n closeAfterSelect,\n onChangeStart,\n before,\n icon,\n options,\n fixDropdownWidth,\n forceDropdownPortal,\n ...restProps\n } = propsWithDefault;\n\n const { document } = useDOM();\n\n const [popperPlacement, setPopperPlacement] = React.useState<Placement | undefined>(undefined);\n\n const scrollBoxRef = React.useRef<HTMLDivElement>(null);\n const rootRef = useExternRef(getRef);\n const {\n fieldValue,\n selectedOptions = [],\n opened,\n setOpened,\n addOptionFromInput,\n filteredOptions,\n addOption,\n handleInputChange,\n clearInput,\n focusedOption,\n setFocusedOption,\n focusedOptionIndex,\n setFocusedOptionIndex,\n } = useChipsSelect(propsWithDefault);\n\n const showCreatable = Boolean(\n creatable && creatableText && !filteredOptions.length && fieldValue,\n );\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setOpened(true);\n setFocusedOptionIndex(null);\n onFocus!(e);\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n onBlur!(e);\n\n // Не добавляем значение, если его нужно выбрать строго из списка\n if (!e.defaultPrevented && !creatable) {\n e.preventDefault();\n }\n };\n\n const handleClickOutside = (e: MouseEvent) => {\n if (e.target !== rootRef.current && !rootRef.current?.contains(e.target as Node)) {\n setOpened(false);\n }\n };\n\n const chipsSelectOptions = React.useRef<HTMLElement[]>([]).current;\n\n const scrollToElement = (index: number, center = false) => {\n const dropdown = scrollBoxRef.current;\n const item = chipsSelectOptions[index];\n\n if (!item || !dropdown) {\n return;\n }\n\n const dropdownHeight = dropdown.offsetHeight;\n const scrollTop = dropdown.scrollTop;\n const itemTop = item.offsetTop;\n const itemHeight = item.offsetHeight;\n\n if (center) {\n dropdown.scrollTop = itemTop - dropdownHeight / 2 + itemHeight / 2;\n } else if (itemTop + itemHeight > dropdownHeight + scrollTop) {\n dropdown.scrollTop = itemTop - dropdownHeight + itemHeight;\n } else if (itemTop < scrollTop) {\n dropdown.scrollTop = itemTop;\n }\n };\n\n const focusOptionByIndex = (index: number, oldIndex: number | null) => {\n const { length } = filteredOptions;\n\n if (index < 0) {\n index = length - 1;\n } else if (index >= length) {\n index = 0;\n }\n\n if (index === oldIndex) {\n return;\n }\n\n scrollToElement(index);\n setFocusedOptionIndex(index);\n };\n\n const focusOption = (nextIndex: number | null, type: FocusActionType) => {\n let index = nextIndex === null ? -1 : nextIndex;\n\n if (type === FOCUS_ACTION_NEXT) {\n index = index + 1;\n } else if (type === FOCUS_ACTION_PREV) {\n index = index - 1;\n }\n\n focusOptionByIndex(index, focusedOptionIndex);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown!(e);\n\n if (e.key === 'ArrowUp' && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_PREV);\n }\n }\n\n if (e.key === 'ArrowDown' && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_NEXT);\n }\n }\n\n if (e.key === 'Enter' && !e.defaultPrevented && opened) {\n if (focusedOptionIndex != null) {\n const option = filteredOptions[focusedOptionIndex];\n\n if (option) {\n onChangeStart!(e, option);\n\n if (!e.defaultPrevented) {\n addOption(option);\n setFocusedOptionIndex(null);\n clearInput();\n closeAfterSelect && setOpened(false);\n e.preventDefault();\n }\n } else if (!creatable) {\n e.preventDefault();\n }\n } else if (!creatable) {\n e.preventDefault();\n }\n }\n\n if (['Escape', 'Tab'].includes(e.key) && !e.defaultPrevented && opened) {\n setOpened(false);\n }\n };\n\n React.useEffect(() => {\n if (focusedOptionIndex != null && filteredOptions[focusedOptionIndex]) {\n setFocusedOption(filteredOptions[focusedOptionIndex]);\n } else if (focusedOptionIndex === null || focusedOptionIndex === 0) {\n setFocusedOption(null);\n }\n }, [focusedOptionIndex, filteredOptions, setFocusedOption]);\n\n useGlobalEventListener(document, 'click', handleClickOutside);\n\n const renderChipWrapper = (renderChipProps: RenderChip<Option> | undefined) => {\n if (renderChipProps === undefined) {\n return null;\n }\n const onRemoveWrapper = (e: React.MouseEvent | undefined, value: ChipValue | undefined) => {\n e?.preventDefault();\n e?.stopPropagation();\n\n renderChipProps.onRemove?.(e, value);\n };\n\n return renderChip!({\n ...renderChipProps,\n onRemove: onRemoveWrapper,\n });\n };\n\n const isPopperDirectionTop = popperPlacement?.includes('top');\n\n const onPlacementChange = React.useCallback(\n (placement?: Placement) => {\n setPopperPlacement(placement);\n },\n [setPopperPlacement],\n );\n\n const onDropdownMouseLeave = React.useCallback(() => {\n setFocusedOptionIndex(null);\n }, [setFocusedOptionIndex]);\n\n const toggleOpened = () => {\n setOpened((prevOpened) => !prevOpened);\n };\n\n return (\n <>\n <FormField\n getRootRef={rootRef}\n style={style}\n className={classNames(\n styles['ChipsSelect'],\n opened &&\n (isPopperDirectionTop\n ? styles['ChipsSelect--pop-up']\n : styles['ChipsSelect--pop-down']),\n className,\n )}\n disabled={disabled}\n role=\"application\"\n aria-disabled={disabled}\n aria-readonly={restProps.readOnly}\n after={\n <IconButton\n className={styles['ChipsSelect__dropdown']}\n activeMode=\"\"\n hoverMode=\"\"\n // TODO [>=6]: add label customization\n aria-label={opened ? 'Скрыть' : 'Развернуть'}\n onClick={toggleOpened}\n >\n {icon ?? <DropdownIcon className={styles['ChipsSelect__icon']} opened={opened} />}\n </IconButton>\n }\n before={before}\n >\n <ChipsInputBase\n {...restProps}\n tabIndex={tabIndex}\n value={selectedOptions}\n inputValue={fieldValue}\n getNewOptionData={getNewOptionData}\n getOptionLabel={getOptionLabel}\n getOptionValue={getOptionValue}\n renderChip={renderChipWrapper}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n getRef={getRef}\n disabled={disabled}\n onInputChange={handleInputChange}\n />\n </FormField>\n {opened && (\n <CustomSelectDropdown\n targetRef={rootRef}\n placement={popupDirection}\n scrollBoxRef={scrollBoxRef}\n onPlacementChange={onPlacementChange}\n onMouseLeave={onDropdownMouseLeave}\n fetching={fetching}\n sameWidth={fixDropdownWidth}\n forcePortal={forceDropdownPortal}\n >\n {showCreatable && (\n <CustomSelectOption\n hovered={focusedOptionIndex === 0}\n onMouseDown={addOptionFromInput}\n onMouseEnter={() => setFocusedOptionIndex(0)}\n >\n {creatableText}\n </CustomSelectOption>\n )}\n {!filteredOptions?.length && !showCreatable && emptyText ? (\n <Footnote className={styles['ChipsSelect__empty']}>{emptyText}</Footnote>\n ) : (\n filteredOptions.map((option: Option, index: number) => {\n const label = getOptionLabel!(option);\n const hovered =\n focusedOption && getOptionValue!(option) === getOptionValue!(focusedOption);\n const selected = selectedOptions.find((selectedOption: Option) => {\n return getOptionValue!(selectedOption) === getOptionValue!(option);\n });\n const value = getOptionValue!(option);\n\n return (\n <React.Fragment key={`${typeof value}-${value}`}>\n {renderOption!({\n option,\n hovered: Boolean(hovered),\n children: label,\n selected: !!selected,\n getRootRef: (e) => {\n if (e) {\n return (chipsSelectOptions[index] = e);\n }\n return undefined;\n },\n onMouseDown: (e: React.MouseEvent<HTMLDivElement>) => {\n onChangeStart?.(e, option);\n\n if (!e.defaultPrevented) {\n closeAfterSelect && setOpened(false);\n addOption(option);\n clearInput();\n }\n },\n onMouseEnter: () => setFocusedOptionIndex(index),\n })}\n </React.Fragment>\n );\n })\n )}\n </CustomSelectDropdown>\n )}\n </>\n );\n};\n"],"names":["React","classNames","noop","useChipsSelect","useExternRef","useGlobalEventListener","useDOM","defaultFilterFn","ChipsInputBase","chipsInputDefaultProps","CustomSelectDropdown","CustomSelectOption","DropdownIcon","FormField","IconButton","Footnote","FOCUS_ACTION_NEXT","FOCUS_ACTION_PREV","chipsSelectDefaultProps","emptyText","creatableText","onChangeStart","creatable","fetching","showSelected","closeAfterSelect","options","filterFn","renderOption","props","ChipsSelect","popperPlacement","filteredOptions","propsWithDefault","style","onFocus","onBlur","onKeyDown","className","getRef","getRootRef","disabled","placeholder","tabIndex","getOptionValue","getOptionLabel","getNewOptionData","renderChip","popupDirection","inputValue","before","icon","fixDropdownWidth","forceDropdownPortal","restProps","document","useState","undefined","setPopperPlacement","scrollBoxRef","useRef","rootRef","fieldValue","selectedOptions","opened","setOpened","addOptionFromInput","addOption","handleInputChange","clearInput","focusedOption","setFocusedOption","focusedOptionIndex","setFocusedOptionIndex","showCreatable","Boolean","length","handleFocus","e","handleBlur","defaultPrevented","preventDefault","handleClickOutside","target","current","contains","chipsSelectOptions","scrollToElement","index","center","dropdown","item","dropdownHeight","offsetHeight","scrollTop","itemTop","offsetTop","itemHeight","focusOptionByIndex","oldIndex","focusOption","nextIndex","type","handleKeyDown","key","option","includes","useEffect","renderChipWrapper","renderChipProps","onRemoveWrapper","value","stopPropagation","onRemove","isPopperDirectionTop","onPlacementChange","useCallback","placement","onDropdownMouseLeave","toggleOpened","prevOpened","role","aria-disabled","aria-readonly","readOnly","after","activeMode","hoverMode","aria-label","onClick","onInputChange","targetRef","onMouseLeave","sameWidth","forcePortal","hovered","onMouseDown","onMouseEnter","map","label","selected","find","selectedOption","Fragment","children"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ChipsSelect/ChipsSelect.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useChipsSelect } from '../../hooks/useChipsSelect';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { useDOM } from '../../lib/dom';\nimport type { Placement } from '../../lib/floating';\nimport { defaultFilterFn } from '../../lib/select';\nimport { ChipOption, ChipValue, RenderChip } from '../Chip/Chip';\nimport { ChipsInputProps } from '../ChipsInput/ChipsInput';\nimport { ChipsInputBase, chipsInputDefaultProps } from '../ChipsInputBase/ChipsInputBase';\nimport { CustomSelectDropdown } from '../CustomSelectDropdown/CustomSelectDropdown';\nimport {\n CustomSelectOption,\n CustomSelectOptionProps,\n} from '../CustomSelectOption/CustomSelectOption';\nimport { DropdownIcon } from '../DropdownIcon/DropdownIcon';\nimport { FormField } from '../FormField/FormField';\nimport { IconButton } from '../IconButton/IconButton';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport styles from './ChipsSelect.module.css';\n\nexport interface ChipsSelectProps<Option extends ChipOption>\n extends Omit<ChipsInputProps<Option>, 'after'> {\n popupDirection?: 'top' | 'bottom';\n options?: Option[];\n filterFn?:\n | false\n | ((\n value?: string,\n option?: Option,\n getOptionLabel?: Pick<ChipsInputProps<Option>, 'getOptionLabel'>['getOptionLabel'],\n ) => boolean);\n /**\n * Возможность создавать чипы которых нет в списке (по enter или с помощью пункта в меню, см creatableText)\n */\n creatable?: boolean;\n /**\n * Отрисовка лоадера вместо списка опций в выпадающем списке\n */\n fetching?: boolean;\n renderOption?: (props: CustomSelectOptionProps) => React.ReactNode;\n /**\n * Показывать или скрывать уже выбранные опции\n */\n showSelected?: boolean;\n /**\n * Текст для пункта создающего чипы при клике, так же отвечает за то будет ли показан этот пункт (показывается после того как в списке не отсанется опций)\n */\n creatableText?: string;\n /**\n * Текст который показывается если список опций пуст\n */\n emptyText?: string;\n /**\n * Событие срабатывающее перед onChange\n */\n onChangeStart?: (e: React.MouseEvent | React.KeyboardEvent, option: Option) => void;\n /**\n * Закрытие выпадающего списка после выбора элемента\n */\n closeAfterSelect?: boolean;\n fixDropdownWidth?: boolean;\n forceDropdownPortal?: boolean;\n /**\n * Иконка раскрывающегося списка\n */\n icon?: React.ReactNode;\n /**\n * Добавляет значение в список на событие `onBlur` (использовать вместе с `creatable`)\n */\n addOnBlur?: boolean;\n}\n\ntype FocusActionType = 'next' | 'prev';\n\nconst FOCUS_ACTION_NEXT: FocusActionType = 'next';\nconst FOCUS_ACTION_PREV: FocusActionType = 'prev';\n\nconst chipsSelectDefaultProps: ChipsSelectProps<any> = {\n ...chipsInputDefaultProps,\n emptyText: 'Ничего не найдено',\n creatableText: 'Создать значение',\n onChangeStart: noop,\n creatable: false,\n fetching: false,\n showSelected: true,\n closeAfterSelect: true,\n options: [],\n filterFn: defaultFilterFn,\n renderOption(props) {\n return <CustomSelectOption {...props} />;\n },\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ChipsSelect\n */\nexport const ChipsSelect = <Option extends ChipOption>(props: ChipsSelectProps<Option>) => {\n const propsWithDefault = { ...chipsSelectDefaultProps, ...props };\n const {\n style,\n onFocus,\n onBlur,\n onKeyDown,\n className,\n fetching,\n renderOption,\n emptyText,\n getRef,\n getRootRef,\n disabled,\n placeholder,\n tabIndex,\n getOptionValue,\n getOptionLabel,\n showSelected,\n getNewOptionData,\n renderChip,\n popupDirection,\n creatable,\n filterFn,\n inputValue,\n creatableText,\n closeAfterSelect,\n onChangeStart,\n before,\n icon,\n options,\n fixDropdownWidth,\n forceDropdownPortal,\n ...restProps\n } = propsWithDefault;\n\n const { document } = useDOM();\n\n const [popperPlacement, setPopperPlacement] = React.useState<Placement | undefined>(undefined);\n\n const scrollBoxRef = React.useRef<HTMLDivElement>(null);\n const rootRef = useExternRef(getRef);\n const {\n fieldValue,\n selectedOptions = [],\n opened,\n setOpened,\n addOptionFromInput,\n filteredOptions,\n addOption,\n handleInputChange,\n clearInput,\n focusedOption,\n setFocusedOption,\n focusedOptionIndex,\n setFocusedOptionIndex,\n } = useChipsSelect(propsWithDefault);\n\n const showCreatable = Boolean(\n creatable && creatableText && !filteredOptions.length && fieldValue,\n );\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setOpened(true);\n setFocusedOptionIndex(null);\n onFocus!(e);\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n onBlur!(e);\n\n // Не добавляем значение, если его нужно выбрать строго из списка\n if (!e.defaultPrevented && !creatable) {\n e.preventDefault();\n }\n };\n\n const handleClickOutside = (e: MouseEvent) => {\n const isClickOutsideFormField = !rootRef.current?.contains(e.target as Node);\n const isClickOutsideDropdown = !scrollBoxRef.current?.contains(e.target as Node);\n\n if (isClickOutsideFormField && isClickOutsideDropdown) {\n setOpened(false);\n }\n };\n\n const chipsSelectOptions = React.useRef<HTMLElement[]>([]).current;\n\n const scrollToElement = (index: number, center = false) => {\n const dropdown = scrollBoxRef.current;\n const item = chipsSelectOptions[index];\n\n if (!item || !dropdown) {\n return;\n }\n\n const dropdownHeight = dropdown.offsetHeight;\n const scrollTop = dropdown.scrollTop;\n const itemTop = item.offsetTop;\n const itemHeight = item.offsetHeight;\n\n if (center) {\n dropdown.scrollTop = itemTop - dropdownHeight / 2 + itemHeight / 2;\n } else if (itemTop + itemHeight > dropdownHeight + scrollTop) {\n dropdown.scrollTop = itemTop - dropdownHeight + itemHeight;\n } else if (itemTop < scrollTop) {\n dropdown.scrollTop = itemTop;\n }\n };\n\n const focusOptionByIndex = (index: number, oldIndex: number | null) => {\n const { length } = filteredOptions;\n\n if (index < 0) {\n index = length - 1;\n } else if (index >= length) {\n index = 0;\n }\n\n if (index === oldIndex) {\n return;\n }\n\n scrollToElement(index);\n setFocusedOptionIndex(index);\n };\n\n const focusOption = (nextIndex: number | null, type: FocusActionType) => {\n let index = nextIndex === null ? -1 : nextIndex;\n\n if (type === FOCUS_ACTION_NEXT) {\n index = index + 1;\n } else if (type === FOCUS_ACTION_PREV) {\n index = index - 1;\n }\n\n focusOptionByIndex(index, focusedOptionIndex);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown!(e);\n\n if (e.key === 'ArrowUp' && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_PREV);\n }\n }\n\n if (e.key === 'ArrowDown' && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_NEXT);\n }\n }\n\n if (e.key === 'Enter' && !e.defaultPrevented && opened) {\n if (focusedOptionIndex != null) {\n const option = filteredOptions[focusedOptionIndex];\n\n if (option) {\n onChangeStart!(e, option);\n\n if (!e.defaultPrevented) {\n addOption(option);\n setFocusedOptionIndex(null);\n clearInput();\n closeAfterSelect && setOpened(false);\n e.preventDefault();\n }\n } else if (!creatable) {\n e.preventDefault();\n }\n } else if (!creatable) {\n e.preventDefault();\n }\n }\n\n if (['Escape', 'Tab'].includes(e.key) && !e.defaultPrevented && opened) {\n setOpened(false);\n }\n };\n\n React.useEffect(() => {\n if (focusedOptionIndex != null && filteredOptions[focusedOptionIndex]) {\n setFocusedOption(filteredOptions[focusedOptionIndex]);\n } else if (focusedOptionIndex === null || focusedOptionIndex === 0) {\n setFocusedOption(null);\n }\n }, [focusedOptionIndex, filteredOptions, setFocusedOption]);\n\n useGlobalEventListener(document, 'click', handleClickOutside);\n\n const renderChipWrapper = (renderChipProps: RenderChip<Option> | undefined) => {\n if (renderChipProps === undefined) {\n return null;\n }\n const onRemoveWrapper = (e: React.MouseEvent | undefined, value: ChipValue | undefined) => {\n e?.preventDefault();\n e?.stopPropagation();\n\n renderChipProps.onRemove?.(e, value);\n };\n\n return renderChip!({\n ...renderChipProps,\n onRemove: onRemoveWrapper,\n });\n };\n\n const isPopperDirectionTop = popperPlacement?.includes('top');\n\n const onPlacementChange = React.useCallback(\n (placement?: Placement) => {\n setPopperPlacement(placement);\n },\n [setPopperPlacement],\n );\n\n const onDropdownMouseLeave = React.useCallback(() => {\n setFocusedOptionIndex(null);\n }, [setFocusedOptionIndex]);\n\n const toggleOpened = () => {\n setOpened((prevOpened) => !prevOpened);\n };\n\n return (\n <>\n <FormField\n getRootRef={rootRef}\n style={style}\n className={classNames(\n styles['ChipsSelect'],\n opened &&\n (isPopperDirectionTop\n ? styles['ChipsSelect--pop-up']\n : styles['ChipsSelect--pop-down']),\n className,\n )}\n disabled={disabled}\n role=\"application\"\n aria-disabled={disabled}\n aria-readonly={restProps.readOnly}\n after={\n <IconButton\n className={styles['ChipsSelect__dropdown']}\n activeMode=\"\"\n hoverMode=\"\"\n // TODO [>=6]: add label customization\n aria-label={opened ? 'Скрыть' : 'Развернуть'}\n onClick={toggleOpened}\n >\n {icon ?? <DropdownIcon className={styles['ChipsSelect__icon']} opened={opened} />}\n </IconButton>\n }\n before={before}\n >\n <ChipsInputBase\n {...restProps}\n tabIndex={tabIndex}\n value={selectedOptions}\n inputValue={fieldValue}\n getNewOptionData={getNewOptionData}\n getOptionLabel={getOptionLabel}\n getOptionValue={getOptionValue}\n renderChip={renderChipWrapper}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n getRef={getRef}\n disabled={disabled}\n onInputChange={handleInputChange}\n />\n </FormField>\n {opened && (\n <CustomSelectDropdown\n targetRef={rootRef}\n placement={popupDirection}\n scrollBoxRef={scrollBoxRef}\n onPlacementChange={onPlacementChange}\n onMouseLeave={onDropdownMouseLeave}\n fetching={fetching}\n sameWidth={fixDropdownWidth}\n forcePortal={forceDropdownPortal}\n >\n {showCreatable && (\n <CustomSelectOption\n hovered={focusedOptionIndex === 0}\n onMouseDown={addOptionFromInput}\n onMouseEnter={() => setFocusedOptionIndex(0)}\n >\n {creatableText}\n </CustomSelectOption>\n )}\n {!filteredOptions?.length && !showCreatable && emptyText ? (\n <Footnote className={styles['ChipsSelect__empty']}>{emptyText}</Footnote>\n ) : (\n filteredOptions.map((option: Option, index: number) => {\n const label = getOptionLabel!(option);\n const hovered =\n focusedOption && getOptionValue!(option) === getOptionValue!(focusedOption);\n const selected = selectedOptions.find((selectedOption: Option) => {\n return getOptionValue!(selectedOption) === getOptionValue!(option);\n });\n const value = getOptionValue!(option);\n\n return (\n <React.Fragment key={`${typeof value}-${value}`}>\n {renderOption!({\n option,\n hovered: Boolean(hovered),\n children: label,\n selected: !!selected,\n getRootRef: (e) => {\n if (e) {\n return (chipsSelectOptions[index] = e);\n }\n return undefined;\n },\n onMouseDown: (e: React.MouseEvent<HTMLDivElement>) => {\n onChangeStart?.(e, option);\n\n if (!e.defaultPrevented) {\n closeAfterSelect && setOpened(false);\n addOption(option);\n clearInput();\n }\n },\n onMouseEnter: () => setFocusedOptionIndex(index),\n })}\n </React.Fragment>\n );\n })\n )}\n </CustomSelectDropdown>\n )}\n </>\n );\n};\n"],"names":["React","classNames","noop","useChipsSelect","useExternRef","useGlobalEventListener","useDOM","defaultFilterFn","ChipsInputBase","chipsInputDefaultProps","CustomSelectDropdown","CustomSelectOption","DropdownIcon","FormField","IconButton","Footnote","FOCUS_ACTION_NEXT","FOCUS_ACTION_PREV","chipsSelectDefaultProps","emptyText","creatableText","onChangeStart","creatable","fetching","showSelected","closeAfterSelect","options","filterFn","renderOption","props","ChipsSelect","popperPlacement","filteredOptions","propsWithDefault","style","onFocus","onBlur","onKeyDown","className","getRef","getRootRef","disabled","placeholder","tabIndex","getOptionValue","getOptionLabel","getNewOptionData","renderChip","popupDirection","inputValue","before","icon","fixDropdownWidth","forceDropdownPortal","restProps","document","useState","undefined","setPopperPlacement","scrollBoxRef","useRef","rootRef","fieldValue","selectedOptions","opened","setOpened","addOptionFromInput","addOption","handleInputChange","clearInput","focusedOption","setFocusedOption","focusedOptionIndex","setFocusedOptionIndex","showCreatable","Boolean","length","handleFocus","e","handleBlur","defaultPrevented","preventDefault","handleClickOutside","isClickOutsideFormField","current","contains","target","isClickOutsideDropdown","chipsSelectOptions","scrollToElement","index","center","dropdown","item","dropdownHeight","offsetHeight","scrollTop","itemTop","offsetTop","itemHeight","focusOptionByIndex","oldIndex","focusOption","nextIndex","type","handleKeyDown","key","option","includes","useEffect","renderChipWrapper","renderChipProps","onRemoveWrapper","value","stopPropagation","onRemove","isPopperDirectionTop","onPlacementChange","useCallback","placement","onDropdownMouseLeave","toggleOpened","prevOpened","role","aria-disabled","aria-readonly","readOnly","after","activeMode","hoverMode","aria-label","onClick","onInputChange","targetRef","onMouseLeave","sameWidth","forcePortal","hovered","onMouseDown","onMouseEnter","map","label","selected","find","selectedOption","Fragment","children"],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ import { useObjectMemo } from "../../hooks/useObjectMemo";
|
|
|
7
7
|
import { useDOM } from "../../lib/dom";
|
|
8
8
|
import { TokensClassProvider } from "../../lib/tokensClassProvider";
|
|
9
9
|
import { useIsomorphicLayoutEffect } from "../../lib/useIsomorphicLayoutEffect";
|
|
10
|
+
import { addClassNameToElement, removeClassNameFromElement } from "../../lib/utils";
|
|
10
11
|
import { warnOnce } from "../../lib/warnOnce";
|
|
11
12
|
import { ConfigProviderContext, useConfigProvider, WebviewType } from "./ConfigProviderContext";
|
|
12
13
|
var warn = warnOnce("ConfigProvider");
|
|
@@ -28,13 +29,15 @@ var warn = warnOnce("ConfigProvider");
|
|
|
28
29
|
// TODO [>=6]: удалить использование хука
|
|
29
30
|
var appearance = useAutoDetectAppearance(appearanceProp, onDetectAppearanceByBridge);
|
|
30
31
|
var document = useDOM().document;
|
|
31
|
-
|
|
32
|
+
// TODO [>=6]: переместить хук в AppRoot (см. https://github.com/VKCOM/VKUI/issues/4810).
|
|
33
|
+
useIsomorphicLayoutEffect(function attachVKUITokensClassNameToBody() {
|
|
34
|
+
if (!document) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
32
37
|
var VKUITokensClassName = generateVKUITokensClassName(platform, appearance);
|
|
33
|
-
|
|
34
|
-
document.body.classList.add(VKUITokensClassName);
|
|
38
|
+
addClassNameToElement(document.body, VKUITokensClassName);
|
|
35
39
|
return function() {
|
|
36
|
-
|
|
37
|
-
document.body.classList.remove(VKUITokensClassName);
|
|
40
|
+
removeClassNameFromElement(document.body, VKUITokensClassName);
|
|
38
41
|
};
|
|
39
42
|
}, [
|
|
40
43
|
platform,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ConfigProvider/ConfigProvider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { generateVKUITokensClassName } from '../../helpers/generateVKUITokensClassName';\nimport { useAutoDetectAppearance } from '../../hooks/useAutoDetectAppearance';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\nimport { useDOM } from '../../lib/dom';\nimport { TokensClassProvider } from '../../lib/tokensClassProvider';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { warnOnce } from '../../lib/warnOnce';\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n useConfigProvider,\n WebviewType,\n} from './ConfigProviderContext';\n\nconst warn = warnOnce('ConfigProvider');\n\nexport interface ConfigProviderProps extends Partial<ConfigProviderContextInterface> {\n /**\n * > ⚠️ В **v6** метод будет удалён (см. https://github.com/VKCOM/VKUI/issues/5049).\n * > Используйте хук `useAppearance()` из библиотеки `@vkontakte/vk-bridge-react`, если вам нужно\n * > определять, что `appearance` был передан через VK Bridge.\n *\n * @deprecated v5.8.0\n */\n onDetectAppearanceByBridge?: () => void; // TODO [>=6]: удалить\n children: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ConfigProvider\n */\nexport const ConfigProvider = (props: ConfigProviderProps) => {\n const parentConfig = useConfigProvider();\n\n const {\n children,\n webviewType,\n hasCustomPanelHeaderAfter: hasCustomPanelHeaderAfterMerged,\n customPanelHeaderAfterMinWidth,\n isWebView,\n transitionMotionEnabled,\n platform,\n locale,\n appearance: appearanceProp,\n onDetectAppearanceByBridge = noop,\n } = {\n ...parentConfig,\n ...props,\n };\n\n // TODO [>=6]: Удалить данный бэкпорт\n const hasCustomPanelHeaderAfter =\n props.webviewType && props.hasCustomPanelHeaderAfter === undefined\n ? props.webviewType === WebviewType.VKAPPS\n : hasCustomPanelHeaderAfterMerged;\n\n if (process.env.NODE_ENVIRONMENT === 'development') {\n // TODO [>=6]: удалить warn\n let webviewTypeRule = '';\n if (props.webviewType) {\n webviewTypeRule =\n props.webviewType === WebviewType.INTERNAL\n ? '3. замените webviewType={WebviewType.INTERNAL} на hasCustomPanelHeaderAfterProp={false}'\n : '3. замените webviewType={WebviewType.VKAPPS} на hasCustomPanelHeaderAfterProp={true}';\n }\n warn(`[@vkontakte/vk-bridge's deprecated] Если вы используете VK Bridge, то:\n\n1. используйте хук useAppearance() из @vkontakte/vk-bridge-react и результат передайте в параметр appearance;\n2. передайте bridge.isWebView() в параметр isWebView;\n${webviewTypeRule}\n\nПодробности см. https://github.com/VKCOM/VKUI/issues/5049\n`);\n }\n\n // TODO [>=6]: удалить использование хука\n const appearance = useAutoDetectAppearance(appearanceProp, onDetectAppearanceByBridge);\n\n const { document } = useDOM();\n\n useIsomorphicLayoutEffect(()
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ConfigProvider/ConfigProvider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { generateVKUITokensClassName } from '../../helpers/generateVKUITokensClassName';\nimport { useAutoDetectAppearance } from '../../hooks/useAutoDetectAppearance';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\nimport { useDOM } from '../../lib/dom';\nimport { TokensClassProvider } from '../../lib/tokensClassProvider';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { addClassNameToElement, removeClassNameFromElement } from '../../lib/utils';\nimport { warnOnce } from '../../lib/warnOnce';\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n useConfigProvider,\n WebviewType,\n} from './ConfigProviderContext';\n\nconst warn = warnOnce('ConfigProvider');\n\nexport interface ConfigProviderProps extends Partial<ConfigProviderContextInterface> {\n /**\n * > ⚠️ В **v6** метод будет удалён (см. https://github.com/VKCOM/VKUI/issues/5049).\n * > Используйте хук `useAppearance()` из библиотеки `@vkontakte/vk-bridge-react`, если вам нужно\n * > определять, что `appearance` был передан через VK Bridge.\n *\n * @deprecated v5.8.0\n */\n onDetectAppearanceByBridge?: () => void; // TODO [>=6]: удалить\n children: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ConfigProvider\n */\nexport const ConfigProvider = (props: ConfigProviderProps) => {\n const parentConfig = useConfigProvider();\n\n const {\n children,\n webviewType,\n hasCustomPanelHeaderAfter: hasCustomPanelHeaderAfterMerged,\n customPanelHeaderAfterMinWidth,\n isWebView,\n transitionMotionEnabled,\n platform,\n locale,\n appearance: appearanceProp,\n onDetectAppearanceByBridge = noop,\n } = {\n ...parentConfig,\n ...props,\n };\n\n // TODO [>=6]: Удалить данный бэкпорт\n const hasCustomPanelHeaderAfter =\n props.webviewType && props.hasCustomPanelHeaderAfter === undefined\n ? props.webviewType === WebviewType.VKAPPS\n : hasCustomPanelHeaderAfterMerged;\n\n if (process.env.NODE_ENVIRONMENT === 'development') {\n // TODO [>=6]: удалить warn\n let webviewTypeRule = '';\n if (props.webviewType) {\n webviewTypeRule =\n props.webviewType === WebviewType.INTERNAL\n ? '3. замените webviewType={WebviewType.INTERNAL} на hasCustomPanelHeaderAfterProp={false}'\n : '3. замените webviewType={WebviewType.VKAPPS} на hasCustomPanelHeaderAfterProp={true}';\n }\n warn(`[@vkontakte/vk-bridge's deprecated] Если вы используете VK Bridge, то:\n\n1. используйте хук useAppearance() из @vkontakte/vk-bridge-react и результат передайте в параметр appearance;\n2. передайте bridge.isWebView() в параметр isWebView;\n${webviewTypeRule}\n\nПодробности см. https://github.com/VKCOM/VKUI/issues/5049\n`);\n }\n\n // TODO [>=6]: удалить использование хука\n const appearance = useAutoDetectAppearance(appearanceProp, onDetectAppearanceByBridge);\n\n const { document } = useDOM();\n\n // TODO [>=6]: переместить хук в AppRoot (см. https://github.com/VKCOM/VKUI/issues/4810).\n useIsomorphicLayoutEffect(\n function attachVKUITokensClassNameToBody() {\n if (!document) {\n return;\n }\n\n const VKUITokensClassName = generateVKUITokensClassName(platform, appearance);\n\n addClassNameToElement(document.body, VKUITokensClassName);\n return () => {\n removeClassNameFromElement(document.body, VKUITokensClassName);\n };\n },\n [platform, appearance],\n );\n\n const configContext = useObjectMemo({\n webviewType,\n hasCustomPanelHeaderAfter,\n customPanelHeaderAfterMinWidth,\n isWebView,\n transitionMotionEnabled,\n platform,\n locale,\n appearance,\n });\n\n return (\n <ConfigProviderContext.Provider value={configContext}>\n <TokensClassProvider platform={platform} appearance={appearance}>\n {children}\n </TokensClassProvider>\n </ConfigProviderContext.Provider>\n );\n};\n"],"names":["React","noop","generateVKUITokensClassName","useAutoDetectAppearance","useObjectMemo","useDOM","TokensClassProvider","useIsomorphicLayoutEffect","addClassNameToElement","removeClassNameFromElement","warnOnce","ConfigProviderContext","useConfigProvider","WebviewType","warn","ConfigProvider","props","parentConfig","children","webviewType","hasCustomPanelHeaderAfter","hasCustomPanelHeaderAfterMerged","customPanelHeaderAfterMinWidth","isWebView","transitionMotionEnabled","platform","locale","appearance","appearanceProp","onDetectAppearanceByBridge","undefined","VKAPPS","process","env","NODE_ENVIRONMENT","webviewTypeRule","INTERNAL","document","attachVKUITokensClassNameToBody","VKUITokensClassName","body","configContext","Provider","value"],"mappings":";AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,2BAA2B,QAAQ,4CAA4C;AACxF,SAASC,uBAAuB,QAAQ,sCAAsC;AAC9E,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,MAAM,QAAQ,gBAAgB;AACvC,SAASC,mBAAmB,QAAQ,gCAAgC;AACpE,SAASC,yBAAyB,QAAQ,sCAAsC;AAChF,SAASC,qBAAqB,EAAEC,0BAA0B,QAAQ,kBAAkB;AACpF,SAASC,QAAQ,QAAQ,qBAAqB;AAC9C,SACEC,qBAAqB,EAErBC,iBAAiB,EACjBC,WAAW,QACN,0BAA0B;AAEjC,IAAMC,OAAOJ,SAAS;AActB;;CAEC,GACD,OAAO,IAAMK,iBAAiB,SAACC;IAC7B,IAAMC,eAAeL;IAErB,IAWI,mBAAA,mBACCK,cACAD,QAZHE,WAUE,iBAVFA,UACAC,cASE,iBATFA,aACAC,AAA2BC,kCAQzB,iBARFD,2BACAE,iCAOE,iBAPFA,gCACAC,YAME,iBANFA,WACAC,0BAKE,iBALFA,yBACAC,WAIE,iBAJFA,UACAC,SAGE,iBAHFA,QACAC,AAAYC,iBAEV,iBAFFD,wDAEE,iBADFE,4BAAAA,oFAA6B5B;IAM/B,qCAAqC;IACrC,IAAMmB,4BACJJ,MAAMG,WAAW,IAAIH,MAAMI,yBAAyB,KAAKU,YACrDd,MAAMG,WAAW,KAAKN,YAAYkB,MAAM,GACxCV;IAEN,IAAIW,QAAQC,GAAG,CAACC,gBAAgB,KAAK,eAAe;QAClD,2BAA2B;QAC3B,IAAIC,kBAAkB;QACtB,IAAInB,MAAMG,WAAW,EAAE;YACrBgB,kBACEnB,MAAMG,WAAW,KAAKN,YAAYuB,QAAQ,GACtC,4FACA;QACR;QACAtB,KAAK,AAAC,mPAIQ,OAAhBqB,iBAAgB;IAIhB;IAEA,yCAAyC;IACzC,IAAMR,aAAaxB,wBAAwByB,gBAAgBC;IAE3D,IAAM,AAAEQ,WAAahC,SAAbgC;IAER,yFAAyF;IACzF9B,0BACE,SAAS+B;QACP,IAAI,CAACD,UAAU;YACb;QACF;QAEA,IAAME,sBAAsBrC,4BAA4BuB,UAAUE;QAElEnB,sBAAsB6B,SAASG,IAAI,EAAED;QACrC,OAAO;YACL9B,2BAA2B4B,SAASG,IAAI,EAAED;QAC5C;IACF,GACA;QAACd;QAAUE;KAAW;IAGxB,IAAMc,gBAAgBrC,cAAc;QAClCe,aAAAA;QACAC,2BAAAA;QACAE,gCAAAA;QACAC,WAAAA;QACAC,yBAAAA;QACAC,UAAAA;QACAC,QAAAA;QACAC,YAAAA;IACF;IAEA,qBACE,oBAAChB,sBAAsB+B,QAAQ;QAACC,OAAOF;qBACrC,oBAACnC;QAAoBmB,UAAUA;QAAUE,YAAYA;OAClDT;AAIT,EAAE"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
|
|
2
|
+
import { HTMLAttributesWithRootRef } from '../../types';
|
|
3
|
+
export interface CounterProps extends HTMLAttributesWithRootRef<HTMLSpanElement> {
|
|
3
4
|
/**
|
|
4
5
|
* Тип счетчика. В режиме `inherit` если компонент находится в кнопке, то
|
|
5
6
|
* цвета зависят от кнопки. Если компонент находится вне кнопки, применяется
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Counter/Counter.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Caption } from '../Typography/Caption/Caption';\nimport { Headline } from '../Typography/Headline/Headline';\nimport styles from './Counter.module.css';\n\nconst modeClassNames = {\n secondary: styles['Counter--mode-secondary'],\n primary: styles['Counter--mode-primary'],\n prominent: styles['Counter--mode-prominent'],\n contrast: styles['Counter--mode-contrast'],\n inherit: styles['Counter--mode-inherit'],\n};\n\nconst sizeClassNames = {\n s: styles['Counter--size-s'],\n m: styles['Counter--size-m'],\n};\n\nexport interface CounterProps extends
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Counter/Counter.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { Caption } from '../Typography/Caption/Caption';\nimport { Headline } from '../Typography/Headline/Headline';\nimport styles from './Counter.module.css';\n\nconst modeClassNames = {\n secondary: styles['Counter--mode-secondary'],\n primary: styles['Counter--mode-primary'],\n prominent: styles['Counter--mode-prominent'],\n contrast: styles['Counter--mode-contrast'],\n inherit: styles['Counter--mode-inherit'],\n};\n\nconst sizeClassNames = {\n s: styles['Counter--size-s'],\n m: styles['Counter--size-m'],\n};\n\nexport interface CounterProps extends HTMLAttributesWithRootRef<HTMLSpanElement> {\n /**\n * Тип счетчика. В режиме `inherit` если компонент находится в кнопке, то\n * цвета зависят от кнопки. Если компонент находится вне кнопки, применяется\n * режим `secondary`\n */\n mode?: 'secondary' | 'primary' | 'prominent' | 'contrast' | 'inherit';\n size?: 's' | 'm';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Counter\n */\nexport const Counter = ({\n mode = 'inherit',\n size = 'm',\n children,\n className,\n ...restProps\n}: CounterProps) => {\n if (React.Children.count(children) === 0) {\n return null;\n }\n\n const CounterTypography = size === 's' ? Caption : Headline;\n const counterLevel = size === 's' ? '1' : '2';\n\n return (\n <CounterTypography\n {...restProps}\n Component=\"span\"\n className={classNames(\n 'vkuiInternalCounter',\n styles['Counter'],\n modeClassNames[mode],\n sizeClassNames[size],\n className,\n )}\n level={counterLevel}\n >\n {children}\n </CounterTypography>\n );\n};\n"],"names":["React","classNames","Caption","Headline","modeClassNames","secondary","primary","prominent","contrast","inherit","sizeClassNames","s","m","Counter","mode","size","children","className","restProps","Children","count","CounterTypography","counterLevel","Component","level"],"mappings":";;;AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAE7C,SAASC,OAAO,QAAQ,gCAAgC;AACxD,SAASC,QAAQ,QAAQ,kCAAkC;AAG3D,IAAMC,iBAAiB;IACrBC,SAAS;IACTC,OAAO;IACPC,SAAS;IACTC,QAAQ;IACRC,OAAO;AACT;AAEA,IAAMC,iBAAiB;IACrBC,CAAC;IACDC,CAAC;AACH;AAYA;;CAEC,GACD,OAAO,IAAMC,UAAU;6BACrBC,MAAAA,gCAAO,8CACPC,MAAAA,gCAAO,mBACPC,kBAAAA,UACAC,mBAAAA,WACGC;QAJHJ;QACAC;QACAC;QACAC;;IAGA,IAAIjB,MAAMmB,QAAQ,CAACC,KAAK,CAACJ,cAAc,GAAG;QACxC,OAAO;IACT;IAEA,IAAMK,oBAAoBN,SAAS,MAAMb,UAAUC;IACnD,IAAMmB,eAAeP,SAAS,MAAM,MAAM;IAE1C,qBACE,oBAACM,2DACKH;QACJK,WAAU;QACVN,WAAWhB,WACT,sCAEAG,cAAc,CAACU,KAAK,EACpBJ,cAAc,CAACK,KAAK,EACpBE;QAEFO,OAAOF;QAENN;AAGP,EAAE"}
|
|
@@ -169,7 +169,7 @@ var defaultOptions = [];
|
|
|
169
169
|
]);
|
|
170
170
|
var openedClassNames = React.useMemo(function() {
|
|
171
171
|
var _popperPlacement;
|
|
172
|
-
return
|
|
172
|
+
return opened && dropdownOffsetDistance === 0 && (((_popperPlacement = popperPlacement) === null || _popperPlacement === void 0 ? void 0 : _popperPlacement.includes("top")) ? "vkuiCustomSelect--pop-up" : "vkuiCustomSelect--pop-down") || undefined;
|
|
173
173
|
}, [
|
|
174
174
|
dropdownOffsetDistance,
|
|
175
175
|
opened,
|