@vkontakte/vkui 5.2.0 → 5.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -1
- package/dist/cjs/components/ActionSheet/ActionSheet.js +8 -8
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +4 -4
- package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +8 -8
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.d.ts +1 -1
- package/dist/cjs/components/Alert/Alert.js +13 -15
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.js +20 -12
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRootPortal.js +2 -2
- package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
- package/dist/cjs/components/AppRoot/ScrollContext.js +1 -1
- package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.d.ts +1 -1
- package/dist/cjs/components/Avatar/Avatar.js +1 -1
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
- package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.js +2 -2
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/BaseGallery/BaseGallery.js +4 -4
- package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/cjs/components/BaseGallery/helpers.d.ts +1 -1
- package/dist/cjs/components/BaseGallery/helpers.js.map +1 -1
- package/dist/cjs/components/BaseGallery/types.d.ts +1 -1
- package/dist/cjs/components/BaseGallery/types.js.map +1 -1
- package/dist/cjs/components/Button/Button.d.ts +2 -2
- package/dist/cjs/components/Button/Button.js +15 -11
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cjs/components/Calendar/Calendar.d.ts +2 -2
- package/dist/cjs/components/Calendar/Calendar.js +6 -6
- package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
- package/dist/cjs/components/CalendarDay/CalendarDay.js +1 -1
- package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cjs/components/CalendarDays/CalendarDays.js +3 -3
- package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js +4 -4
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +2 -2
- package/dist/cjs/components/CalendarRange/CalendarRange.js +3 -3
- package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cjs/components/CalendarTime/CalendarTime.js +3 -3
- package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cjs/components/CardGrid/CardGrid.js +8 -3
- package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.js +2 -6
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/Cell/Cell.d.ts +1 -1
- package/dist/cjs/components/Cell/Cell.js +6 -6
- package/dist/cjs/components/Cell/Cell.js.map +1 -1
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
- package/dist/cjs/components/Cell/CellDragger/CellDragger.js +1 -1
- package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.d.ts +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.js +16 -10
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/Chip/Chip.js +11 -6
- package/dist/cjs/components/Chip/Chip.js.map +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.js +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +4 -4
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +5 -5
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js +5 -5
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
- package/dist/cjs/components/ContentCard/ContentCard.d.ts +1 -1
- package/dist/cjs/components/ContentCard/ContentCard.js +2 -2
- package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js +4 -4
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/dist/cjs/components/CustomSelect/CustomSelect.js +8 -8
- 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 +1 -1
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +10 -5
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cjs/components/DateInput/DateInput.d.ts +2 -2
- package/dist/cjs/components/DateInput/DateInput.js +15 -10
- package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.js +2 -2
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts +2 -2
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js +15 -10
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cjs/components/Epic/Epic.js +1 -1
- package/dist/cjs/components/Epic/Epic.js.map +1 -1
- package/dist/cjs/components/Epic/ScrollSaver.js +1 -1
- package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cjs/components/File/File.d.ts +1 -1
- package/dist/cjs/components/File/File.js +2 -2
- package/dist/cjs/components/File/File.js.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -5
- package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cjs/components/FormField/FormField.js +8 -3
- package/dist/cjs/components/FormField/FormField.js.map +1 -1
- package/dist/cjs/components/FormItem/FormItem.js +11 -6
- package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cjs/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
- package/dist/cjs/components/Group/Group.js +14 -8
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/Header/Header.js +3 -3
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js +3 -3
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +3 -3
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cjs/components/HoverPopper/HoverPopper.js +2 -2
- package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/cjs/components/IconButton/IconButton.d.ts +1 -1
- package/dist/cjs/components/IconButton/IconButton.js +13 -10
- package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
- package/dist/cjs/components/Image/Image.d.ts +1 -1
- package/dist/cjs/components/Image/Image.js.map +1 -1
- package/dist/cjs/components/Image/ImageBadge/ImageBadge.js.map +1 -1
- package/dist/cjs/components/ImageBase/ImageBase.d.ts +1 -1
- package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
- package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/cjs/components/ImageBase/validators.js +1 -1
- package/dist/cjs/components/ImageBase/validators.js.map +1 -1
- package/dist/cjs/components/InfoRow/InfoRow.js +1 -1
- package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cjs/components/Input/Input.d.ts +2 -2
- package/dist/cjs/components/Input/Input.js +12 -5
- package/dist/cjs/components/Input/Input.js.map +1 -1
- package/dist/cjs/components/InputLike/InputLike.js +1 -1
- package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
- package/dist/cjs/components/Link/Link.js.map +1 -1
- package/dist/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +2 -2
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.js +5 -5
- package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js +6 -6
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.js +9 -12
- package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +4 -4
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.js +12 -12
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js +2 -2
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +6 -6
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/ModalRoot/useModalManager.js +3 -3
- package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.js +12 -9
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/Pagination/Pagination.js +12 -6
- package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
- package/dist/cjs/components/Panel/Panel.d.ts +1 -1
- package/dist/cjs/components/Panel/Panel.js +13 -7
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.js +12 -11
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +7 -6
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cjs/components/Placeholder/Placeholder.js +1 -1
- package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cjs/components/PlatformProvider/PlatformProvider.js +2 -2
- package/dist/cjs/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js +2 -2
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +3 -3
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cjs/components/Popover/Popover.js +5 -5
- package/dist/cjs/components/Popover/Popover.js.map +1 -1
- package/dist/cjs/components/Popper/Popper.d.ts +1 -1
- package/dist/cjs/components/Popper/Popper.js +3 -3
- package/dist/cjs/components/Popper/Popper.js.map +1 -1
- package/dist/cjs/components/PopperArrow/PopperArrow.d.ts +1 -1
- package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
- package/dist/cjs/components/Progress/Progress.js +1 -1
- package/dist/cjs/components/Progress/Progress.js.map +1 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -2
- package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js +8 -8
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cjs/components/Radio/Radio.js +12 -7
- package/dist/cjs/components/Radio/Radio.js.map +1 -1
- package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/cjs/components/RangeSlider/UniversalSlider.d.ts +1 -1
- package/dist/cjs/components/RangeSlider/UniversalSlider.js +10 -5
- package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
- 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 +5 -2
- package/dist/cjs/components/RichCell/RichCell.js +11 -4
- package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
- package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
- package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js +23 -0
- package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
- package/dist/cjs/components/RichTooltip/RichTooltip.js +1 -1
- package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cjs/components/Root/Root.js +8 -8
- package/dist/cjs/components/Root/Root.js.map +1 -1
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +5 -5
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cjs/components/Search/Search.d.ts +1 -1
- package/dist/cjs/components/Search/Search.js +13 -8
- package/dist/cjs/components/Search/Search.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js +18 -18
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cjs/components/Select/Select.js +3 -3
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +12 -9
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/SelectTypography/SelectTypography.js +4 -4
- package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +13 -7
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.d.ts +5 -2
- package/dist/cjs/components/Snackbar/Snackbar.js +8 -8
- package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/components/Spinner/Spinner.js +1 -1
- package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.js +9 -7
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/SplitLayout/SplitLayout.js +1 -1
- package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +10 -5
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cjs/components/Switch/Switch.js +12 -7
- package/dist/cjs/components/Switch/Switch.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -2
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.js +3 -3
- package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/TabsItem/TabsItem.js +10 -5
- package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.d.ts +1 -1
- package/dist/cjs/components/Tappable/Tappable.js +14 -14
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/TextTooltip/TextTooltip.js +1 -1
- package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.d.ts +1 -1
- package/dist/cjs/components/Textarea/Textarea.js +10 -5
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js +6 -6
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/Touch/Touch.js +3 -3
- package/dist/cjs/components/Touch/Touch.js.map +1 -1
- package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/cjs/components/Typography/Headline/Headline.js +9 -4
- package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cjs/components/Typography/Subhead/Subhead.js +8 -3
- package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cjs/components/Typography/Text/Text.js +9 -4
- package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
- package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
- package/dist/cjs/components/UsersStack/UsersStack.js +2 -2
- package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cjs/components/View/View.js +12 -12
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.d.ts +2 -2
- package/dist/cjs/components/View/ViewInfinite.js +9 -9
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/components/WriteBar/WriteBar.js +4 -4
- package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +17 -7
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
- package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.js +22 -0
- package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
- package/dist/cjs/helpers/getPlatformClassName.js.map +1 -1
- package/dist/cjs/hoc/withPlatform.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
- package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js +1 -1
- package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
- package/dist/cjs/hooks/useAutoDetectAppearance.js +1 -1
- package/dist/cjs/hooks/useAutoDetectAppearance.js.map +1 -1
- package/dist/cjs/hooks/useCalendar.js.map +1 -1
- package/dist/cjs/hooks/useChipsSelect.d.ts +1 -1
- package/dist/cjs/hooks/useChipsSelect.js.map +1 -1
- package/dist/cjs/hooks/useDateInput.js +1 -1
- package/dist/cjs/hooks/useDateInput.js.map +1 -1
- package/dist/cjs/hooks/useFocusVisible.js.map +1 -1
- package/dist/cjs/hooks/useMediaQueries.js.map +1 -1
- package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
- package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/cjs/hooks/useTimeout.js +1 -1
- package/dist/cjs/hooks/useTimeout.js.map +1 -1
- package/dist/cjs/hooks/useTodayDate.js.map +1 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.js +1 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cjs/lib/SSR.js +3 -3
- package/dist/cjs/lib/SSR.js.map +1 -1
- package/dist/cjs/lib/adaptivity/constants.d.ts +7 -0
- package/dist/cjs/lib/adaptivity/constants.js +6 -1
- package/dist/cjs/lib/adaptivity/constants.js.map +1 -1
- package/dist/cjs/lib/adaptivity/functions.d.ts +9 -1
- package/dist/cjs/lib/adaptivity/functions.js +43 -0
- package/dist/cjs/lib/adaptivity/functions.js.map +1 -1
- package/dist/cjs/lib/adaptivity/types.d.ts +2 -1
- package/dist/cjs/lib/adaptivity/types.js.map +1 -1
- package/dist/cjs/lib/calendar.js.map +1 -1
- package/dist/cjs/lib/floating/adapters.d.ts +1 -1
- package/dist/cjs/lib/floating/adapters.js.map +1 -1
- package/dist/cjs/lib/floating/functions.d.ts +1 -1
- package/dist/cjs/lib/floating/functions.js.map +1 -1
- package/dist/cjs/lib/platform.js +1 -1
- package/dist/cjs/lib/platform.js.map +1 -1
- package/dist/cjs/lib/select.js.map +1 -1
- package/dist/cjs/shared/breakpoints.d.ts +44 -0
- package/dist/cjs/shared/breakpoints.js +79 -13
- package/dist/cjs/shared/breakpoints.js.map +1 -1
- package/dist/cjs/types.d.ts +9 -1
- package/dist/cjs/types.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +8 -8
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdown.js +4 -4
- package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +8 -8
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/Alert/Alert.d.ts +1 -1
- package/dist/components/Alert/Alert.js +13 -15
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.js +20 -12
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AppRoot/AppRootPortal.js +2 -2
- package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
- package/dist/components/AppRoot/ScrollContext.js +1 -1
- package/dist/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/components/Avatar/Avatar.d.ts +1 -1
- package/dist/components/Avatar/Avatar.js +1 -1
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
- package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +1 -1
- package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
- package/dist/components/Banner/Banner.js +2 -2
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/BaseGallery/BaseGallery.js +4 -4
- package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/components/BaseGallery/helpers.d.ts +1 -1
- package/dist/components/BaseGallery/helpers.js.map +1 -1
- package/dist/components/BaseGallery/types.d.ts +1 -1
- package/dist/components/BaseGallery/types.js.map +1 -1
- package/dist/components/Button/Button.d.ts +2 -2
- package/dist/components/Button/Button.js +15 -11
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +2 -2
- package/dist/components/Calendar/Calendar.js +7 -7
- package/dist/components/Calendar/Calendar.js.map +1 -1
- package/dist/components/CalendarDay/CalendarDay.js +1 -1
- package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.js +3 -3
- package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.js +5 -5
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.d.ts +2 -2
- package/dist/components/CalendarRange/CalendarRange.js +4 -4
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/CalendarTime/CalendarTime.js +3 -3
- package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/components/CardGrid/CardGrid.js +8 -3
- package/dist/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.js +2 -6
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Cell/Cell.d.ts +1 -1
- package/dist/components/Cell/Cell.js +6 -6
- package/dist/components/Cell/Cell.js.map +1 -1
- package/dist/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
- package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
- package/dist/components/Cell/CellDragger/CellDragger.js +1 -1
- package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts +1 -1
- package/dist/components/Checkbox/Checkbox.js +16 -10
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/Chip/Chip.js +11 -6
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/ChipsInput/ChipsInput.d.ts +1 -1
- package/dist/components/ChipsInput/ChipsInput.js +1 -1
- package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.js +4 -4
- package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.js +5 -5
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js +5 -5
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderOverride.js +1 -1
- package/dist/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
- package/dist/components/ContentCard/ContentCard.d.ts +1 -1
- package/dist/components/ContentCard/ContentCard.js +2 -2
- package/dist/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.js +4 -4
- package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/dist/components/CustomSelect/CustomSelect.js +8 -8
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.js +10 -5
- package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/components/DateInput/DateInput.d.ts +2 -2
- package/dist/components/DateInput/DateInput.js +15 -10
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.js +2 -2
- package/dist/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.d.ts +2 -2
- package/dist/components/DateRangeInput/DateRangeInput.js +15 -10
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.js +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/components/Epic/Epic.js +1 -1
- package/dist/components/Epic/Epic.js.map +1 -1
- package/dist/components/Epic/ScrollSaver.js +1 -1
- package/dist/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/components/File/File.d.ts +1 -1
- package/dist/components/File/File.js +2 -2
- package/dist/components/File/File.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.js +5 -5
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/FormField/FormField.js +8 -3
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormItem/FormItem.js +11 -6
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
- package/dist/components/Group/Group.js +14 -8
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/Header/Header.js +3 -3
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.js +3 -3
- package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js +3 -3
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/components/HoverPopper/HoverPopper.js +2 -2
- package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/components/IconButton/IconButton.d.ts +1 -1
- package/dist/components/IconButton/IconButton.js +13 -10
- package/dist/components/IconButton/IconButton.js.map +1 -1
- package/dist/components/Image/Image.d.ts +1 -1
- package/dist/components/Image/Image.js.map +1 -1
- package/dist/components/Image/ImageBadge/ImageBadge.js.map +1 -1
- package/dist/components/ImageBase/ImageBase.d.ts +1 -1
- package/dist/components/ImageBase/ImageBase.js +1 -1
- package/dist/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/components/ImageBase/validators.js +1 -1
- package/dist/components/ImageBase/validators.js.map +1 -1
- package/dist/components/InfoRow/InfoRow.js +1 -1
- package/dist/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/components/Input/Input.d.ts +2 -2
- package/dist/components/Input/Input.js +12 -5
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/InputLike/InputLike.js +1 -1
- package/dist/components/InputLike/InputLike.js.map +1 -1
- package/dist/components/Link/Link.js.map +1 -1
- package/dist/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js +2 -2
- package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/components/ModalCard/ModalCard.js +5 -5
- package/dist/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.js +6 -6
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.js +9 -12
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.js +4 -4
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +12 -12
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootAdaptive.js +2 -2
- package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.js +6 -6
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/ModalRoot/useModalManager.js +3 -3
- package/dist/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts +1 -1
- package/dist/components/NativeSelect/NativeSelect.js +12 -9
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/Pagination/Pagination.js +12 -6
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Panel/Panel.d.ts +1 -1
- package/dist/components/Panel/Panel.js +13 -7
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.js +12 -11
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +8 -7
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -3
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/components/Placeholder/Placeholder.js +1 -1
- package/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.js +2 -2
- package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/components/PopoutRoot/PopoutRoot.js +2 -2
- package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.js +3 -3
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popover/Popover.js +5 -5
- package/dist/components/Popover/Popover.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts +1 -1
- package/dist/components/Popper/Popper.js +4 -4
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/PopperArrow/PopperArrow.d.ts +1 -1
- package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
- package/dist/components/Progress/Progress.js +1 -1
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/PromoBanner/PromoBanner.js +2 -2
- package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js +8 -8
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/Radio/Radio.js +12 -7
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/components/RangeSlider/UniversalSlider.d.ts +1 -1
- package/dist/components/RangeSlider/UniversalSlider.js +10 -5
- package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/components/Removable/Removable.js +4 -8
- package/dist/components/Removable/Removable.js.map +1 -1
- package/dist/components/RichCell/RichCell.d.ts +5 -2
- package/dist/components/RichCell/RichCell.js +11 -4
- package/dist/components/RichCell/RichCell.js.map +1 -1
- package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
- package/dist/components/RichCell/RichCellIcon/RichCellIcon.js +14 -0
- package/dist/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
- package/dist/components/RichTooltip/RichTooltip.js +1 -1
- package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/components/Root/Root.js +8 -8
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js +5 -5
- package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/components/Search/Search.d.ts +1 -1
- package/dist/components/Search/Search.js +13 -8
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js +18 -18
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/components/Select/Select.js +3 -3
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js +12 -9
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/SelectTypography/SelectTypography.js +4 -4
- package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +13 -7
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts +5 -2
- package/dist/components/Snackbar/Snackbar.js +8 -8
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/Spinner/Spinner.js +1 -1
- package/dist/components/Spinner/Spinner.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.js +9 -7
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.js +1 -1
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js +10 -5
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Switch/Switch.js +12 -7
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.js +2 -2
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tabs/Tabs.js +3 -3
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.js +10 -5
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.d.ts +1 -1
- package/dist/components/Tappable/Tappable.js +14 -14
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/TextTooltip/TextTooltip.js +1 -1
- package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts +1 -1
- package/dist/components/Textarea/Textarea.js +10 -5
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +6 -6
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Touch/Touch.js +3 -3
- package/dist/components/Touch/Touch.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/components/Typography/Headline/Headline.js +9 -4
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/Typography/Subhead/Subhead.js +8 -3
- package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/components/Typography/Text/Text.js +9 -4
- package/dist/components/Typography/Text/Text.js.map +1 -1
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/UsersStack/UsersStack.js +2 -2
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/View.js +12 -12
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.d.ts +2 -2
- package/dist/components/View/ViewInfinite.js +9 -9
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/WriteBar/WriteBar.js +4 -4
- package/dist/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js +18 -8
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
- package/dist/components/WriteBarIcon/WriteBarIconRenderer.js +14 -0
- package/dist/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
- package/dist/components.css +45 -44
- package/dist/components.css.map +1 -1
- package/dist/components.js.tmp +3177 -2863
- package/dist/cssm/components/ActionSheet/ActionSheet.js +8 -8
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +4 -4
- package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +8 -8
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.d.ts +1 -1
- package/dist/cssm/components/Alert/Alert.js +13 -15
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js +20 -12
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRootPortal.js +2 -2
- package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
- package/dist/cssm/components/AppRoot/ScrollContext.js +1 -1
- package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.d.ts +1 -1
- package/dist/cssm/components/Avatar/Avatar.js +1 -1
- package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
- package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
- package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +1 -1
- package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.js +2 -2
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.js +4 -4
- package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/cssm/components/BaseGallery/helpers.d.ts +1 -1
- package/dist/cssm/components/BaseGallery/helpers.js.map +1 -1
- package/dist/cssm/components/BaseGallery/types.d.ts +1 -1
- package/dist/cssm/components/BaseGallery/types.js.map +1 -1
- package/dist/cssm/components/Button/Button.d.ts +2 -2
- package/dist/cssm/components/Button/Button.js +15 -11
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/Button/Button.module.css +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.d.ts +2 -2
- package/dist/cssm/components/Calendar/Calendar.js +7 -7
- package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.js +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.js +3 -3
- package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +5 -5
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +2 -2
- package/dist/cssm/components/CalendarRange/CalendarRange.js +4 -4
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.js +3 -3
- package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.js +8 -3
- package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.module.css +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js +2 -6
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.d.ts +1 -1
- package/dist/cssm/components/Cell/Cell.js +6 -6
- package/dist/cssm/components/Cell/Cell.js.map +1 -1
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
- package/dist/cssm/components/Cell/CellDragger/CellDragger.js +1 -1
- package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.d.ts +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.js +16 -10
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.module.css +1 -1
- package/dist/cssm/components/Chip/Chip.js +11 -6
- package/dist/cssm/components/Chip/Chip.js.map +1 -1
- package/dist/cssm/components/Chip/Chip.module.css +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.js +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +4 -4
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +5 -5
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +5 -5
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.d.ts +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.js +2 -2
- package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.module.css +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js +4 -4
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/dist/cssm/components/CustomSelect/CustomSelect.js +8 -8
- 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 +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +10 -5
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.module.css +1 -1
- package/dist/cssm/components/DateInput/DateInput.d.ts +2 -2
- package/dist/cssm/components/DateInput/DateInput.js +15 -10
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.module.css +1 -1
- package/dist/cssm/components/DatePicker/DatePicker.js +2 -2
- package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +2 -2
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +15 -10
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.module.css +1 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js +1 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cssm/components/Epic/Epic.js +1 -1
- package/dist/cssm/components/Epic/Epic.js.map +1 -1
- package/dist/cssm/components/Epic/ScrollSaver.js +1 -1
- package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cssm/components/File/File.d.ts +1 -1
- package/dist/cssm/components/File/File.js +2 -2
- package/dist/cssm/components/File/File.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -5
- package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.js +8 -3
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.module.css +1 -1
- package/dist/cssm/components/FormItem/FormItem.js +11 -6
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.module.css +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
- package/dist/cssm/components/Group/Group.js +14 -8
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Group/Group.module.css +1 -1
- package/dist/cssm/components/Header/Header.js +3 -3
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/Header/Header.module.css +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -3
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +3 -3
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cssm/components/HoverPopper/HoverPopper.js +2 -2
- package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.d.ts +1 -1
- package/dist/cssm/components/IconButton/IconButton.js +13 -10
- package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.module.css +1 -1
- package/dist/cssm/components/Image/Image.d.ts +1 -1
- package/dist/cssm/components/Image/Image.js.map +1 -1
- package/dist/cssm/components/Image/ImageBadge/ImageBadge.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.d.ts +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.js +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.module.css +1 -1
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/cssm/components/ImageBase/validators.js +1 -1
- package/dist/cssm/components/ImageBase/validators.js.map +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cssm/components/Input/Input.d.ts +2 -2
- package/dist/cssm/components/Input/Input.js +12 -5
- package/dist/cssm/components/Input/Input.js.map +1 -1
- package/dist/cssm/components/Input/Input.module.css +1 -1
- package/dist/cssm/components/InputLike/InputLike.js +1 -1
- package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
- package/dist/cssm/components/Link/Link.js.map +1 -1
- package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +2 -2
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.js +5 -5
- package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js +6 -6
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.js +9 -12
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +4 -4
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.js +12 -12
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +2 -2
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +6 -6
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/ModalRoot/useModalManager.js +3 -3
- package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.js +12 -9
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.js +12 -6
- package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.module.css +1 -1
- package/dist/cssm/components/Panel/Panel.d.ts +1 -1
- package/dist/cssm/components/Panel/Panel.js +13 -7
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.module.css +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js +12 -11
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.module.css +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +8 -7
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.module.css +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -3
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.js +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js +2 -2
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js +2 -2
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +3 -3
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/Popover/Popover.js +5 -5
- package/dist/cssm/components/Popover/Popover.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.d.ts +1 -1
- package/dist/cssm/components/Popper/Popper.js +4 -4
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/PopperArrow/PopperArrow.d.ts +1 -1
- package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
- package/dist/cssm/components/Progress/Progress.js +1 -1
- package/dist/cssm/components/Progress/Progress.js.map +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.js +2 -2
- package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.d.ts +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +8 -8
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.js +12 -7
- package/dist/cssm/components/Radio/Radio.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.module.css +1 -1
- package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/cssm/components/RangeSlider/UniversalSlider.d.ts +1 -1
- package/dist/cssm/components/RangeSlider/UniversalSlider.js +10 -5
- package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.js +4 -8
- package/dist/cssm/components/Removable/Removable.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.module.css +1 -1
- package/dist/cssm/components/RichCell/RichCell.d.ts +5 -2
- package/dist/cssm/components/RichCell/RichCell.js +11 -4
- package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
- package/dist/cssm/components/RichCell/RichCell.module.css +1 -1
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js +15 -0
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.module.css +1 -0
- package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cssm/components/Root/Root.js +8 -8
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +5 -5
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cssm/components/Search/Search.d.ts +1 -1
- package/dist/cssm/components/Search/Search.js +13 -8
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/Search/Search.module.css +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js +18 -18
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +1 -1
- package/dist/cssm/components/Select/Select.js +3 -3
- package/dist/cssm/components/Select/Select.js.map +1 -1
- package/dist/cssm/components/Select/Select.module.css +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +12 -9
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/SelectTypography/SelectTypography.js +4 -4
- package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/cssm/components/SelectTypography/SelectTypography.module.css +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +13 -7
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.module.css +1 -1
- package/dist/cssm/components/Slider/Slider.module.css +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.d.ts +5 -2
- package/dist/cssm/components/Snackbar/Snackbar.js +8 -8
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.module.css +1 -1
- package/dist/cssm/components/Spinner/Spinner.js +1 -1
- package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js +9 -7
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.module.css +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +10 -5
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.module.css +1 -1
- package/dist/cssm/components/Switch/Switch.js +12 -7
- package/dist/cssm/components/Switch/Switch.js.map +1 -1
- package/dist/cssm/components/Switch/Switch.module.css +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -2
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.js +3 -3
- package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.js +10 -5
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.module.css +1 -1
- package/dist/cssm/components/Tappable/Tappable.d.ts +1 -1
- package/dist/cssm/components/Tappable/Tappable.js +14 -14
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.module.css +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.d.ts +1 -1
- package/dist/cssm/components/Textarea/Textarea.js +10 -5
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.module.css +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.js +6 -6
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/Touch/Touch.js +3 -3
- package/dist/cssm/components/Touch/Touch.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.js +9 -4
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.module.css +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.js +8 -3
- package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.module.css +1 -1
- package/dist/cssm/components/Typography/Text/Text.js +9 -4
- package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
- package/dist/cssm/components/Typography/Text/Text.module.css +1 -1
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.js +2 -2
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.module.css +1 -1
- package/dist/cssm/components/View/View.js +12 -12
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/ViewInfinite.d.ts +2 -2
- package/dist/cssm/components/View/ViewInfinite.js +9 -9
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.js +4 -4
- package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +18 -8
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
- package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.js +14 -0
- package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
- package/dist/cssm/helpers/getPlatformClassName.js.map +1 -1
- package/dist/cssm/hoc/withPlatform.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
- package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js +1 -1
- package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +2 -2
- package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js +3 -3
- package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
- package/dist/cssm/hooks/useAutoDetectAppearance.js +1 -1
- package/dist/cssm/hooks/useAutoDetectAppearance.js.map +1 -1
- package/dist/cssm/hooks/useCalendar.js +1 -1
- package/dist/cssm/hooks/useCalendar.js.map +1 -1
- package/dist/cssm/hooks/useChipsSelect.d.ts +1 -1
- package/dist/cssm/hooks/useChipsSelect.js.map +1 -1
- package/dist/cssm/hooks/useDateInput.js +1 -1
- package/dist/cssm/hooks/useDateInput.js.map +1 -1
- package/dist/cssm/hooks/useFocusVisible.js +1 -1
- package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
- package/dist/cssm/hooks/useMediaQueries.js.map +1 -1
- package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
- package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/cssm/hooks/useTimeout.js +1 -1
- package/dist/cssm/hooks/useTimeout.js.map +1 -1
- package/dist/cssm/hooks/useTodayDate.js.map +1 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.js +1 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cssm/lib/SSR.js +3 -3
- package/dist/cssm/lib/SSR.js.map +1 -1
- package/dist/cssm/lib/adaptivity/constants.d.ts +7 -0
- package/dist/cssm/lib/adaptivity/constants.js +3 -0
- package/dist/cssm/lib/adaptivity/constants.js.map +1 -1
- package/dist/cssm/lib/adaptivity/functions.d.ts +9 -1
- package/dist/cssm/lib/adaptivity/functions.js +43 -1
- package/dist/cssm/lib/adaptivity/functions.js.map +1 -1
- package/dist/cssm/lib/adaptivity/types.d.ts +2 -1
- package/dist/cssm/lib/adaptivity/types.js.map +1 -1
- package/dist/cssm/lib/calendar.js +1 -1
- package/dist/cssm/lib/calendar.js.map +1 -1
- package/dist/cssm/lib/floating/adapters.d.ts +1 -1
- package/dist/cssm/lib/floating/adapters.js.map +1 -1
- package/dist/cssm/lib/floating/functions.d.ts +1 -1
- package/dist/cssm/lib/floating/functions.js.map +1 -1
- package/dist/cssm/lib/platform.js +1 -1
- package/dist/cssm/lib/platform.js.map +1 -1
- package/dist/cssm/lib/select.js.map +1 -1
- package/dist/cssm/shared/breakpoints.d.ts +44 -0
- package/dist/cssm/shared/breakpoints.js +79 -13
- package/dist/cssm/shared/breakpoints.js.map +1 -1
- package/dist/cssm/styles/adaptivity.module.css +1 -1
- package/dist/cssm/types.d.ts +9 -1
- package/dist/cssm/types.js.map +1 -1
- package/dist/helpers/getPlatformClassName.js.map +1 -1
- package/dist/hoc/withPlatform.js.map +1 -1
- package/dist/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
- package/dist/hooks/useAdaptivityConditionalRender/helpers.js +1 -1
- package/dist/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
- package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +2 -2
- package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
- package/dist/hooks/useAdaptivityWithJSMediaQueries.js +3 -3
- package/dist/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
- package/dist/hooks/useAutoDetectAppearance.js +1 -1
- package/dist/hooks/useAutoDetectAppearance.js.map +1 -1
- package/dist/hooks/useCalendar.js +1 -1
- package/dist/hooks/useCalendar.js.map +1 -1
- package/dist/hooks/useChipsSelect.d.ts +1 -1
- package/dist/hooks/useChipsSelect.js.map +1 -1
- package/dist/hooks/useDateInput.js +1 -1
- package/dist/hooks/useDateInput.js.map +1 -1
- package/dist/hooks/useFocusVisible.js +1 -1
- package/dist/hooks/useFocusVisible.js.map +1 -1
- package/dist/hooks/useMediaQueries.js.map +1 -1
- package/dist/hooks/usePatchChildrenRef.js +1 -1
- package/dist/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/hooks/useTimeout.js +1 -1
- package/dist/hooks/useTimeout.js.map +1 -1
- package/dist/hooks/useTodayDate.js.map +1 -1
- package/dist/hooks/useWaitTransitionFinish.js +1 -1
- package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/lib/SSR.js +3 -3
- package/dist/lib/SSR.js.map +1 -1
- package/dist/lib/adaptivity/constants.d.ts +7 -0
- package/dist/lib/adaptivity/constants.js +3 -0
- package/dist/lib/adaptivity/constants.js.map +1 -1
- package/dist/lib/adaptivity/functions.d.ts +9 -1
- package/dist/lib/adaptivity/functions.js +43 -1
- package/dist/lib/adaptivity/functions.js.map +1 -1
- package/dist/lib/adaptivity/types.d.ts +2 -1
- package/dist/lib/adaptivity/types.js.map +1 -1
- package/dist/lib/calendar.js +1 -1
- package/dist/lib/calendar.js.map +1 -1
- package/dist/lib/floating/adapters.d.ts +1 -1
- package/dist/lib/floating/adapters.js.map +1 -1
- package/dist/lib/floating/functions.d.ts +1 -1
- package/dist/lib/floating/functions.js.map +1 -1
- package/dist/lib/platform.js +1 -1
- package/dist/lib/platform.js.map +1 -1
- package/dist/lib/select.js.map +1 -1
- package/dist/shared/breakpoints.d.ts +44 -0
- package/dist/shared/breakpoints.js +79 -13
- package/dist/shared/breakpoints.js.map +1 -1
- package/dist/types.d.ts +9 -1
- package/dist/types.js.map +1 -1
- package/dist/vkui.css +45 -44
- package/dist/vkui.css.map +1 -1
- package/dist/vkui.js.tmp +3177 -2863
- package/package.json +1 -1
- package/dist/cjs/helpers/getHoverClassName.d.ts +0 -2
- package/dist/cjs/helpers/getHoverClassName.js +0 -22
- package/dist/cjs/helpers/getHoverClassName.js.map +0 -1
- package/dist/cjs/helpers/getPointerClassName.d.ts +0 -2
- package/dist/cjs/helpers/getPointerClassName.js +0 -22
- package/dist/cjs/helpers/getPointerClassName.js.map +0 -1
- package/dist/cjs/helpers/getSizeXClassName.d.ts +0 -5
- package/dist/cjs/helpers/getSizeXClassName.js +0 -18
- package/dist/cjs/helpers/getSizeXClassName.js.map +0 -1
- package/dist/cjs/helpers/getSizeYClassName.d.ts +0 -5
- package/dist/cjs/helpers/getSizeYClassName.js +0 -18
- package/dist/cjs/helpers/getSizeYClassName.js.map +0 -1
- package/dist/cjs/helpers/getViewHeightClassName.d.ts +0 -3
- package/dist/cjs/helpers/getViewHeightClassName.js +0 -31
- package/dist/cjs/helpers/getViewHeightClassName.js.map +0 -1
- package/dist/cjs/helpers/getViewWidthClassName.d.ts +0 -3
- package/dist/cjs/helpers/getViewWidthClassName.js +0 -52
- package/dist/cjs/helpers/getViewWidthClassName.js.map +0 -1
- package/dist/cssm/helpers/getHoverClassName.d.ts +0 -2
- package/dist/cssm/helpers/getHoverClassName.js +0 -16
- package/dist/cssm/helpers/getHoverClassName.js.map +0 -1
- package/dist/cssm/helpers/getPointerClassName.d.ts +0 -2
- package/dist/cssm/helpers/getPointerClassName.js +0 -16
- package/dist/cssm/helpers/getPointerClassName.js.map +0 -1
- package/dist/cssm/helpers/getSizeXClassName.d.ts +0 -5
- package/dist/cssm/helpers/getSizeXClassName.js +0 -12
- package/dist/cssm/helpers/getSizeXClassName.js.map +0 -1
- package/dist/cssm/helpers/getSizeYClassName.d.ts +0 -5
- package/dist/cssm/helpers/getSizeYClassName.js +0 -12
- package/dist/cssm/helpers/getSizeYClassName.js.map +0 -1
- package/dist/cssm/helpers/getViewHeightClassName.d.ts +0 -3
- package/dist/cssm/helpers/getViewHeightClassName.js +0 -25
- package/dist/cssm/helpers/getViewHeightClassName.js.map +0 -1
- package/dist/cssm/helpers/getViewWidthClassName.d.ts +0 -3
- package/dist/cssm/helpers/getViewWidthClassName.js +0 -46
- package/dist/cssm/helpers/getViewWidthClassName.js.map +0 -1
- package/dist/helpers/getHoverClassName.d.ts +0 -2
- package/dist/helpers/getHoverClassName.js +0 -16
- package/dist/helpers/getHoverClassName.js.map +0 -1
- package/dist/helpers/getPointerClassName.d.ts +0 -2
- package/dist/helpers/getPointerClassName.js +0 -16
- package/dist/helpers/getPointerClassName.js.map +0 -1
- package/dist/helpers/getSizeXClassName.d.ts +0 -5
- package/dist/helpers/getSizeXClassName.js +0 -12
- package/dist/helpers/getSizeXClassName.js.map +0 -1
- package/dist/helpers/getSizeYClassName.d.ts +0 -5
- package/dist/helpers/getSizeYClassName.js +0 -12
- package/dist/helpers/getSizeYClassName.js.map +0 -1
- package/dist/helpers/getViewHeightClassName.d.ts +0 -3
- package/dist/helpers/getViewHeightClassName.js +0 -25
- package/dist/helpers/getViewHeightClassName.js.map +0 -1
- package/dist/helpers/getViewWidthClassName.d.ts +0 -3
- package/dist/helpers/getViewWidthClassName.js +0 -46
- package/dist/helpers/getViewWidthClassName.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppRoot.js","names":["INSET_CUSTOM_PROPERTY_PREFIX","AppRoot","children","mode","scroll","portalRoot","portalRootProp","disablePortal","className","props","isKeyboardInputActive","useKeyboardInputTracker","rootRef","React","useRef","useState","setPortalRoot","useDOM","document","insets","useInsets","appearance","useAppearance","useAdaptivity","hasPointer","sizeX","useIsomorphicLayoutEffect","portal","isRefObject","current","createElement","body","appendChild","parentElement","removeChild","noop","parent","classes","concat","classList","add","remove","documentElement","undefined","key","hasOwnProperty","inset","style","setProperty","removeProperty","getSizeXClassName","container","ScrollController","useMemo","ElementScrollController","GlobalScrollController","content","appRoot","embedded","keyboardInput","classNames"],"sources":["../../../../src/components/AppRoot/AppRoot.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useDOM } from '../../lib/dom';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { AppRootContext } from './AppRootContext';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { IconSettingsProvider } from '@vkontakte/icons';\nimport { ElementScrollController, GlobalScrollController } from './ScrollContext';\nimport { useKeyboardInputTracker } from '../../hooks/useKeyboardInputTracker';\nimport { useInsets } from '../../hooks/useInsets';\nimport { Insets } from '@vkontakte/vk-bridge';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useAppearance } from '../../hooks/useAppearance';\nimport { isRefObject } from '../../lib/isRefObject';\nimport { getSizeXClassName } from '../../helpers/getSizeXClassName';\nimport styles from './AppRoot.module.css';\n\nconst INSET_CUSTOM_PROPERTY_PREFIX = `--vkui_internal--safe_area_inset_`;\n\n// Используйте classList, но будьте осторожны\n/* eslint-disable no-restricted-properties */\n\nexport interface AppRootProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Режим встраивания */\n mode?: 'partial' | 'embedded' | 'full';\n window?: Window;\n scroll?: 'global' | 'contain';\n /**\n * Кастомный root-элемент портала\n */\n portalRoot?: HTMLElement | React.RefObject<HTMLElement> | null;\n /** Disable portal for components */\n disablePortal?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AppRoot\n */\nexport const AppRoot = ({\n children,\n mode = 'full',\n scroll = 'global',\n portalRoot: portalRootProp = null,\n disablePortal,\n className,\n ...props\n}: AppRootProps) => {\n const isKeyboardInputActive = useKeyboardInputTracker();\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const [portalRoot, setPortalRoot] = React.useState<HTMLElement | null>(null);\n const { document } = useDOM();\n const insets = useInsets();\n const appearance = useAppearance();\n\n const { hasPointer, sizeX } = useAdaptivity();\n\n // setup portal\n useIsomorphicLayoutEffect(() => {\n let portal: HTMLElement | null = null;\n if (portalRootProp) {\n if (isRefObject(portalRootProp)) {\n portal = portalRootProp.current;\n } else {\n portal = portalRootProp;\n }\n }\n if (!portal) {\n portal = document!.createElement('div');\n document!.body.appendChild(portal);\n }\n setPortalRoot(portal);\n return () => {\n portal?.parentElement?.removeChild(portal);\n };\n }, [portalRootProp]);\n\n // setup root classes\n useIsomorphicLayoutEffect(() => {\n if (mode === 'partial') {\n return noop;\n }\n\n const parent = rootRef.current?.parentElement;\n const classes = ['vkui__root'].concat(mode === 'embedded' ? 'vkui__root--embedded' : []);\n parent?.classList.add(...classes);\n\n return () => {\n parent?.classList.remove(...classes);\n };\n }, []);\n\n useIsomorphicLayoutEffect(() => {\n if (mode === 'full') {\n document!.documentElement.classList.add('vkui');\n\n return () => {\n document!.documentElement.classList.remove('vkui');\n };\n }\n\n return undefined;\n }, [document, mode]);\n\n // setup insets\n useIsomorphicLayoutEffect(() => {\n if (mode === 'partial' || !rootRef.current?.parentElement) {\n return noop;\n }\n\n const parent = rootRef.current.parentElement;\n\n let key: keyof Insets;\n for (key in insets) {\n if (insets.hasOwnProperty(key) && typeof insets[key] === 'number') {\n const inset = insets[key];\n parent.style.setProperty(INSET_CUSTOM_PROPERTY_PREFIX + key, `${inset}px`);\n portalRoot &&\n portalRoot.style.setProperty(INSET_CUSTOM_PROPERTY_PREFIX + key, `${inset}px`);\n }\n }\n\n return () => {\n let key: keyof Insets;\n for (key in insets) {\n if (insets.hasOwnProperty(key)) {\n parent.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);\n portalRoot && portalRoot.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);\n }\n }\n };\n }, [insets, portalRoot]);\n\n // adaptivity handler\n useIsomorphicLayoutEffect(() => {\n if (mode === 'partial') {\n return noop;\n }\n const className = getSizeXClassName('vkui', sizeX);\n const container = mode === 'embedded' ? rootRef.current?.parentElement : document!.body;\n container?.classList.add(className);\n return () => container?.classList.remove(className);\n }, [sizeX]);\n\n useIsomorphicLayoutEffect(() => {\n if (mode !== 'full' || appearance === undefined) {\n return noop;\n }\n document!.documentElement.style.setProperty('color-scheme', appearance);\n\n return () => document!.documentElement.style.removeProperty('color-scheme');\n }, [appearance]);\n\n const ScrollController = React.useMemo(\n () => (scroll === 'contain' ? ElementScrollController : GlobalScrollController),\n [scroll],\n );\n\n const content = (\n <AppRootContext.Provider\n value={{\n appRoot: rootRef,\n portalRoot,\n embedded: mode === 'embedded',\n keyboardInput: isKeyboardInputActive,\n mode,\n disablePortal,\n }}\n >\n <ScrollController elRef={rootRef}>\n <IconSettingsProvider classPrefix=\"vkui\">{children}</IconSettingsProvider>\n </ScrollController>\n </AppRootContext.Provider>\n );\n\n return mode === 'partial' ? (\n content\n ) : (\n <div\n ref={rootRef}\n className={classNames(\n styles['AppRoot'],\n hasPointer === undefined\n ? styles['AppRoot--pointer-none']\n : !hasPointer && styles['AppRoot--pointer-has-not'],\n className,\n )}\n {...props}\n >\n {content}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AppRoot.js","names":["vkuiSizeXClassNames","none","SizeType","REGULAR","INSET_CUSTOM_PROPERTY_PREFIX","AppRoot","children","mode","scroll","portalRoot","portalRootProp","disablePortal","className","props","isKeyboardInputActive","useKeyboardInputTracker","rootRef","React","useRef","useState","setPortalRoot","useDOM","document","insets","useInsets","appearance","useAppearance","useAdaptivity","hasPointer","sizeX","useIsomorphicLayoutEffect","portal","isRefObject","current","createElement","body","appendChild","parentElement","removeChild","noop","parent","classes","concat","classList","add","remove","documentElement","undefined","key","hasOwnProperty","inset","style","setProperty","removeProperty","COMPACT","container","ScrollController","useMemo","ElementScrollController","GlobalScrollController","content","appRoot","embedded","keyboardInput","classNames"],"sources":["../../../../src/components/AppRoot/AppRoot.tsx"],"sourcesContent":["import * as React from 'react';\nimport { IconSettingsProvider } from '@vkontakte/icons';\nimport { Insets } from '@vkontakte/vk-bridge';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useAppearance } from '../../hooks/useAppearance';\nimport { useInsets } from '../../hooks/useInsets';\nimport { useKeyboardInputTracker } from '../../hooks/useKeyboardInputTracker';\nimport { SizeType } from '../../lib/adaptivity';\nimport { useDOM } from '../../lib/dom';\nimport { isRefObject } from '../../lib/isRefObject';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { AppRootContext } from './AppRootContext';\nimport { ElementScrollController, GlobalScrollController } from './ScrollContext';\nimport styles from './AppRoot.module.css';\n\nconst vkuiSizeXClassNames = {\n none: 'vkui--sizeX-none',\n [SizeType.REGULAR]: 'vkui--sizeX-regular',\n};\n\nconst INSET_CUSTOM_PROPERTY_PREFIX = `--vkui_internal--safe_area_inset_`;\n\n// Используйте classList, но будьте осторожны\n/* eslint-disable no-restricted-properties */\n\nexport interface AppRootProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Режим встраивания */\n mode?: 'partial' | 'embedded' | 'full';\n window?: Window;\n scroll?: 'global' | 'contain';\n /**\n * Кастомный root-элемент портала\n */\n portalRoot?: HTMLElement | React.RefObject<HTMLElement> | null;\n /** Disable portal for components */\n disablePortal?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AppRoot\n */\nexport const AppRoot = ({\n children,\n mode = 'full',\n scroll = 'global',\n portalRoot: portalRootProp = null,\n disablePortal,\n className,\n ...props\n}: AppRootProps) => {\n const isKeyboardInputActive = useKeyboardInputTracker();\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const [portalRoot, setPortalRoot] = React.useState<HTMLElement | null>(null);\n const { document } = useDOM();\n const insets = useInsets();\n const appearance = useAppearance();\n\n const { hasPointer, sizeX = 'none' } = useAdaptivity();\n\n // setup portal\n useIsomorphicLayoutEffect(() => {\n let portal: HTMLElement | null = null;\n if (portalRootProp) {\n if (isRefObject(portalRootProp)) {\n portal = portalRootProp.current;\n } else {\n portal = portalRootProp;\n }\n }\n if (!portal) {\n portal = document!.createElement('div');\n document!.body.appendChild(portal);\n }\n setPortalRoot(portal);\n return () => {\n portal?.parentElement?.removeChild(portal);\n };\n }, [portalRootProp]);\n\n // setup root classes\n useIsomorphicLayoutEffect(() => {\n if (mode === 'partial') {\n return noop;\n }\n\n const parent = rootRef.current?.parentElement;\n const classes = ['vkui__root'].concat(mode === 'embedded' ? 'vkui__root--embedded' : []);\n parent?.classList.add(...classes);\n\n return () => {\n parent?.classList.remove(...classes);\n };\n }, []);\n\n useIsomorphicLayoutEffect(() => {\n if (mode === 'full') {\n document!.documentElement.classList.add('vkui');\n\n return () => {\n document!.documentElement.classList.remove('vkui');\n };\n }\n\n return undefined;\n }, [document, mode]);\n\n // setup insets\n useIsomorphicLayoutEffect(() => {\n if (mode === 'partial' || !rootRef.current?.parentElement) {\n return noop;\n }\n\n const parent = rootRef.current.parentElement;\n\n let key: keyof Insets;\n for (key in insets) {\n if (insets.hasOwnProperty(key) && typeof insets[key] === 'number') {\n const inset = insets[key];\n parent.style.setProperty(INSET_CUSTOM_PROPERTY_PREFIX + key, `${inset}px`);\n portalRoot &&\n portalRoot.style.setProperty(INSET_CUSTOM_PROPERTY_PREFIX + key, `${inset}px`);\n }\n }\n\n return () => {\n let key: keyof Insets;\n for (key in insets) {\n if (insets.hasOwnProperty(key)) {\n parent.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);\n portalRoot && portalRoot.style.removeProperty(INSET_CUSTOM_PROPERTY_PREFIX + key);\n }\n }\n };\n }, [insets, portalRoot]);\n\n // adaptivity handler\n useIsomorphicLayoutEffect(() => {\n if (mode === 'partial') {\n return noop;\n }\n const className = sizeX !== SizeType.COMPACT ? vkuiSizeXClassNames[sizeX] : null;\n const container = mode === 'embedded' ? rootRef.current?.parentElement : document!.body;\n\n if (className === null || !container) {\n return noop;\n }\n\n container.classList.add(className);\n return () => {\n container.classList.remove(className);\n };\n }, [sizeX]);\n\n useIsomorphicLayoutEffect(() => {\n if (mode !== 'full' || appearance === undefined) {\n return noop;\n }\n document!.documentElement.style.setProperty('color-scheme', appearance);\n\n return () => document!.documentElement.style.removeProperty('color-scheme');\n }, [appearance]);\n\n const ScrollController = React.useMemo(\n () => (scroll === 'contain' ? ElementScrollController : GlobalScrollController),\n [scroll],\n );\n\n const content = (\n <AppRootContext.Provider\n value={{\n appRoot: rootRef,\n portalRoot,\n embedded: mode === 'embedded',\n keyboardInput: isKeyboardInputActive,\n mode,\n disablePortal,\n }}\n >\n <ScrollController elRef={rootRef}>\n <IconSettingsProvider classPrefix=\"vkui\">{children}</IconSettingsProvider>\n </ScrollController>\n </AppRootContext.Provider>\n );\n\n return mode === 'partial' ? (\n content\n ) : (\n <div\n ref={rootRef}\n className={classNames(\n styles['AppRoot'],\n hasPointer === undefined\n ? styles['AppRoot--pointer-none']\n : !hasPointer && styles['AppRoot--pointer-has-not'],\n className,\n )}\n {...props}\n >\n {content}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
@@ -7,10 +7,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.AppRootPortal = void 0;
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _reactDom = require("react-dom");
|
|
10
|
-
var _AppRootContext = require("./AppRootContext");
|
|
11
|
-
var _AppearanceProvider = require("../AppearanceProvider/AppearanceProvider");
|
|
12
10
|
var _useAppearance = require("../../hooks/useAppearance");
|
|
13
11
|
var _useIsClient = require("../../hooks/useIsClient");
|
|
12
|
+
var _AppearanceProvider = require("../AppearanceProvider/AppearanceProvider");
|
|
13
|
+
var _AppRootContext = require("./AppRootContext");
|
|
14
14
|
var AppRootPortal = function AppRootPortal(_ref) {
|
|
15
15
|
var children = _ref.children,
|
|
16
16
|
className = _ref.className,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppRootPortal.js","names":["AppRootPortal","children","className","forcePortalProp","forcePortal","React","useContext","AppRootContext","portalRoot","mode","disablePortal","appearance","useAppearance","isClient","useIsClient","createPortal"],"sources":["../../../../src/components/AppRoot/AppRootPortal.tsx"],"sourcesContent":["import * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport {
|
|
1
|
+
{"version":3,"file":"AppRootPortal.js","names":["AppRootPortal","children","className","forcePortalProp","forcePortal","React","useContext","AppRootContext","portalRoot","mode","disablePortal","appearance","useAppearance","isClient","useIsClient","createPortal"],"sources":["../../../../src/components/AppRoot/AppRootPortal.tsx"],"sourcesContent":["import * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport { useAppearance } from '../../hooks/useAppearance';\nimport { useIsClient } from '../../hooks/useIsClient';\nimport { AppearanceProvider } from '../AppearanceProvider/AppearanceProvider';\nimport { AppRootContext } from './AppRootContext';\n\nexport interface AppRootPortalProps {\n className?: string;\n forcePortal?: boolean;\n children?: React.ReactNode;\n}\n\nexport const AppRootPortal = ({\n children,\n className,\n forcePortal: forcePortalProp,\n}: AppRootPortalProps) => {\n const { portalRoot, mode, disablePortal } = React.useContext(AppRootContext);\n const appearance = useAppearance();\n\n const isClient = useIsClient();\n if (!isClient) {\n return null;\n }\n\n const forcePortal = forcePortalProp ?? mode !== 'full';\n\n return !disablePortal && portalRoot && forcePortal ? (\n createPortal(\n <AppearanceProvider appearance={appearance}>\n <div className={className}>{children}</div>\n </AppearanceProvider>,\n portalRoot,\n )\n ) : (\n <React.Fragment>{children}</React.Fragment>\n );\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAQO,IAAMA,aAAa,GAAG,SAAhBA,aAAa,OAIA;EAAA,IAHxBC,QAAQ,QAARA,QAAQ;IACRC,SAAS,QAATA,SAAS;IACIC,eAAe,QAA5BC,WAAW;EAEX,wBAA4CC,KAAK,CAACC,UAAU,CAACC,8BAAc,CAAC;IAApEC,UAAU,qBAAVA,UAAU;IAAEC,IAAI,qBAAJA,IAAI;IAAEC,aAAa,qBAAbA,aAAa;EACvC,IAAMC,UAAU,GAAG,IAAAC,4BAAa,GAAE;EAElC,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAC9B,IAAI,CAACD,QAAQ,EAAE;IACb,OAAO,IAAI;EACb;EAEA,IAAMT,WAAW,GAAGD,eAAe,aAAfA,eAAe,cAAfA,eAAe,GAAIM,IAAI,KAAK,MAAM;EAEtD,OAAO,CAACC,aAAa,IAAIF,UAAU,IAAIJ,WAAW,gBAChD,IAAAW,sBAAY,gBACV,oBAAC,sCAAkB;IAAC,UAAU,EAAEJ;EAAW,gBACzC;IAAK,SAAS,EAAET;EAAU,GAAED,QAAQ,CAAO,CACxB,EACrBO,UAAU,CACX,gBAED,oBAAC,KAAK,CAAC,QAAQ,QAAEP,QAAQ,CAC1B;AACH,CAAC;AAAC"}
|
|
@@ -9,9 +9,9 @@ exports.useScrollLockEffect = exports.useScrollLock = exports.useScroll = export
|
|
|
9
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
10
|
var React = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _vkjs = require("@vkontakte/vkjs");
|
|
12
|
-
var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
|
|
13
12
|
var _math = require("../../helpers/math");
|
|
14
13
|
var _dom = require("../../lib/dom");
|
|
14
|
+
var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
|
|
15
15
|
var clearDisableScrollStyle = function clearDisableScrollStyle(node) {
|
|
16
16
|
Object.assign(node.style, {
|
|
17
17
|
position: '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollContext.js","names":["clearDisableScrollStyle","node","Object","assign","style","position","top","left","right","overflowY","overflowX","getPageYOffsetWithoutKeyboardHeight","window","diffOfClientHeightAndViewportHeight","document","documentElement","clientHeight","innerHeight","pageYOffset","ScrollContext","React","createContext","getScroll","x","y","scrollTo","noop","isScrollLock","enableScrollLock","disableScrollLock","useScroll","useContext","GlobalScrollController","children","useDOM","useState","setScrollLock","beforeScrollLockFnSetRef","useRef","Set","useCallback","pageXOffset","clamp","body","scrollWidth","innerWidth","scrollHeight","current","forEach","fn","scrollY","scrollX","clientWidth","parseInt","scrollController","useMemo","ElementScrollController","elRef","scrollLeft","scrollTop","el","useScrollLockEffect","effect","deps","destructorRef","effectCallback","useEffect","beforeSet","add","delete","useScrollLock","enabled","useIsomorphicLayoutEffect"],"sources":["../../../../src/components/AppRoot/ScrollContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { clamp } from '../../helpers/math';\nimport { useDOM } from '../../lib/dom';\n\nconst clearDisableScrollStyle = (node: HTMLElement) => {\n Object.assign(node.style, {\n position: '',\n top: '',\n left: '',\n right: '',\n overflowY: '',\n overflowX: '',\n });\n};\n\nconst getPageYOffsetWithoutKeyboardHeight = (window: Window) => {\n // Note: здесь расчёт на то, что `clientHeight` равен `window.innerHeight`.\n // Это достигается тем, что тегу `html` задали`height: 100%` и у него нет отступов сверху и снизу. Если есть отступы,\n // то надо задать `box-sizing: border-box`, чтобы они не учитывались.\n const diffOfClientHeightAndViewportHeight =\n window.document.documentElement.clientHeight - window.innerHeight;\n return window.pageYOffset - diffOfClientHeightAndViewportHeight;\n};\n\nexport interface ScrollContextInterface {\n getScroll(this: void): { x: number; y: number };\n scrollTo(this: void, x?: number, y?: number): void;\n isScrollLock: boolean;\n enableScrollLock(this: void): void;\n disableScrollLock(this: void): void;\n beforeScrollLockFnSetRef?: React.RefObject<Set<() => void>>;\n}\n\nexport const ScrollContext = React.createContext<ScrollContextInterface>({\n getScroll: () => ({ x: 0, y: 0 }),\n scrollTo: noop,\n isScrollLock: false,\n enableScrollLock: noop,\n disableScrollLock: noop,\n});\n\nexport const useScroll = () => React.useContext(ScrollContext);\n\nexport interface ScrollControllerProps {\n elRef: React.RefObject<HTMLElement>;\n children?: React.ReactNode;\n}\n\nexport const GlobalScrollController = ({ children }: ScrollControllerProps) => {\n const { window, document } = useDOM();\n const [isScrollLock, setScrollLock] = React.useState(false);\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(\n () => ({\n x: window!.pageXOffset,\n y: getPageYOffsetWithoutKeyboardHeight(window!),\n }),\n [window],\n );\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n // Some iOS versions do not normalize scroll — do it manually.\n window!.scrollTo(\n x ? clamp(x, 0, document!.body.scrollWidth - window!.innerWidth) : 0,\n y ? clamp(y, 0, document!.body.scrollHeight - window!.innerHeight) : 0,\n );\n },\n [document, window],\n );\n\n const enableScrollLock = React.useCallback<ScrollContextInterface['enableScrollLock']>(() => {\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = window!.pageYOffset;\n const scrollX = window!.pageXOffset;\n const overflowY = window!.innerWidth > document!.documentElement.clientWidth ? 'scroll' : '';\n const overflowX = window!.innerHeight > document!.documentElement.clientHeight ? 'scroll' : '';\n\n Object.assign(document!.body.style, {\n position: 'fixed',\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: '0',\n overflowY,\n overflowX,\n });\n setScrollLock(true);\n }, [document, window]);\n\n const disableScrollLock = React.useCallback<ScrollContextInterface['disableScrollLock']>(() => {\n const scrollY = document!.body.style.top;\n const scrollX = document!.body.style.left;\n\n clearDisableScrollStyle(document!.body);\n window!.scrollTo(-parseInt(scrollX || '0'), -parseInt(scrollY || '0'));\n setScrollLock(false);\n }, [document, window]);\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n isScrollLock,\n disableScrollLock,\n enableScrollLock,\n\n beforeScrollLockFnSetRef: beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\nexport const ElementScrollController = ({ elRef, children }: ScrollControllerProps) => {\n const [isScrollLock, setScrollLock] = React.useState(false);\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(\n () => ({\n x: elRef.current?.scrollLeft ?? 0,\n y: elRef.current?.scrollTop ?? 0,\n }),\n [elRef],\n );\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n const el = elRef.current;\n // Some iOS versions do not normalize scroll — do it manually.\n el?.scrollTo(\n x ? clamp(x, 0, el.scrollWidth - el.clientWidth) : 0,\n y ? clamp(y, 0, el.scrollHeight - el.clientHeight) : 0,\n );\n },\n [elRef],\n );\n\n const enableScrollLock = React.useCallback<ScrollContextInterface['enableScrollLock']>(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = el.scrollTop;\n const scrollX = el.scrollLeft;\n const overflowY = el.scrollWidth > el.clientWidth ? 'scroll' : '';\n const overflowX = el.scrollHeight > el.clientHeight ? 'scroll' : '';\n\n Object.assign(el.style, {\n position: 'absolute',\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: '0',\n overflowY,\n overflowX,\n });\n setScrollLock(true);\n }, [elRef]);\n\n const disableScrollLock = React.useCallback<ScrollContextInterface['disableScrollLock']>(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n\n const scrollY = el.style.top;\n const scrollX = el.style.left;\n\n clearDisableScrollStyle(el);\n el.scrollTo(-parseInt(scrollX || '0'), -parseInt(scrollY || '0'));\n setScrollLock(false);\n }, [elRef]);\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n isScrollLock,\n disableScrollLock,\n enableScrollLock,\n beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\n/**\n * Вызывает функцию effect, до блокировки прокрутки\n * @param effect функция, которая может возвращать функцию очистки\n * @param deps effect обновится только при изменении значений в списке.\n */\nexport const useScrollLockEffect = (effect: React.EffectCallback, deps: React.DependencyList) => {\n const destructorRef = React.useRef<ReturnType<React.EffectCallback>>(noop);\n const { isScrollLock, beforeScrollLockFnSetRef } = useScroll();\n\n // Изменяем effectCallback только при изменении deps\n const effectCallback = React.useCallback(() => {\n destructorRef.current = effect();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n\n // Добавляем effectCallback в список функций, которые необходимо вызвать\n // до блокировки\n React.useEffect(() => {\n const beforeSet = beforeScrollLockFnSetRef?.current;\n if (!beforeSet) {\n return noop;\n }\n\n beforeSet.add(effectCallback);\n\n return () => {\n beforeSet.delete(effectCallback);\n };\n }, [beforeScrollLockFnSetRef, effectCallback]);\n\n // Вызываем сбрасывающую функцию, после отключения блокировки\n React.useEffect(() => {\n if (!isScrollLock && destructorRef.current) {\n destructorRef.current();\n }\n }, [isScrollLock]);\n};\n\nexport const useScrollLock = (enabled = true) => {\n const { enableScrollLock, disableScrollLock } = useScroll();\n useIsomorphicLayoutEffect(() => {\n if (enabled) {\n enableScrollLock();\n return disableScrollLock;\n }\n return noop;\n }, [enableScrollLock, disableScrollLock, enabled]);\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ScrollContext.js","names":["clearDisableScrollStyle","node","Object","assign","style","position","top","left","right","overflowY","overflowX","getPageYOffsetWithoutKeyboardHeight","window","diffOfClientHeightAndViewportHeight","document","documentElement","clientHeight","innerHeight","pageYOffset","ScrollContext","React","createContext","getScroll","x","y","scrollTo","noop","isScrollLock","enableScrollLock","disableScrollLock","useScroll","useContext","GlobalScrollController","children","useDOM","useState","setScrollLock","beforeScrollLockFnSetRef","useRef","Set","useCallback","pageXOffset","clamp","body","scrollWidth","innerWidth","scrollHeight","current","forEach","fn","scrollY","scrollX","clientWidth","parseInt","scrollController","useMemo","ElementScrollController","elRef","scrollLeft","scrollTop","el","useScrollLockEffect","effect","deps","destructorRef","effectCallback","useEffect","beforeSet","add","delete","useScrollLock","enabled","useIsomorphicLayoutEffect"],"sources":["../../../../src/components/AppRoot/ScrollContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { useDOM } from '../../lib/dom';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\n\nconst clearDisableScrollStyle = (node: HTMLElement) => {\n Object.assign(node.style, {\n position: '',\n top: '',\n left: '',\n right: '',\n overflowY: '',\n overflowX: '',\n });\n};\n\nconst getPageYOffsetWithoutKeyboardHeight = (window: Window) => {\n // Note: здесь расчёт на то, что `clientHeight` равен `window.innerHeight`.\n // Это достигается тем, что тегу `html` задали`height: 100%` и у него нет отступов сверху и снизу. Если есть отступы,\n // то надо задать `box-sizing: border-box`, чтобы они не учитывались.\n const diffOfClientHeightAndViewportHeight =\n window.document.documentElement.clientHeight - window.innerHeight;\n return window.pageYOffset - diffOfClientHeightAndViewportHeight;\n};\n\nexport interface ScrollContextInterface {\n getScroll(this: void): { x: number; y: number };\n scrollTo(this: void, x?: number, y?: number): void;\n isScrollLock: boolean;\n enableScrollLock(this: void): void;\n disableScrollLock(this: void): void;\n beforeScrollLockFnSetRef?: React.RefObject<Set<() => void>>;\n}\n\nexport const ScrollContext = React.createContext<ScrollContextInterface>({\n getScroll: () => ({ x: 0, y: 0 }),\n scrollTo: noop,\n isScrollLock: false,\n enableScrollLock: noop,\n disableScrollLock: noop,\n});\n\nexport const useScroll = () => React.useContext(ScrollContext);\n\nexport interface ScrollControllerProps {\n elRef: React.RefObject<HTMLElement>;\n children?: React.ReactNode;\n}\n\nexport const GlobalScrollController = ({ children }: ScrollControllerProps) => {\n const { window, document } = useDOM();\n const [isScrollLock, setScrollLock] = React.useState(false);\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(\n () => ({\n x: window!.pageXOffset,\n y: getPageYOffsetWithoutKeyboardHeight(window!),\n }),\n [window],\n );\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n // Some iOS versions do not normalize scroll — do it manually.\n window!.scrollTo(\n x ? clamp(x, 0, document!.body.scrollWidth - window!.innerWidth) : 0,\n y ? clamp(y, 0, document!.body.scrollHeight - window!.innerHeight) : 0,\n );\n },\n [document, window],\n );\n\n const enableScrollLock = React.useCallback<ScrollContextInterface['enableScrollLock']>(() => {\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = window!.pageYOffset;\n const scrollX = window!.pageXOffset;\n const overflowY = window!.innerWidth > document!.documentElement.clientWidth ? 'scroll' : '';\n const overflowX = window!.innerHeight > document!.documentElement.clientHeight ? 'scroll' : '';\n\n Object.assign(document!.body.style, {\n position: 'fixed',\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: '0',\n overflowY,\n overflowX,\n });\n setScrollLock(true);\n }, [document, window]);\n\n const disableScrollLock = React.useCallback<ScrollContextInterface['disableScrollLock']>(() => {\n const scrollY = document!.body.style.top;\n const scrollX = document!.body.style.left;\n\n clearDisableScrollStyle(document!.body);\n window!.scrollTo(-parseInt(scrollX || '0'), -parseInt(scrollY || '0'));\n setScrollLock(false);\n }, [document, window]);\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n isScrollLock,\n disableScrollLock,\n enableScrollLock,\n\n beforeScrollLockFnSetRef: beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\nexport const ElementScrollController = ({ elRef, children }: ScrollControllerProps) => {\n const [isScrollLock, setScrollLock] = React.useState(false);\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(\n () => ({\n x: elRef.current?.scrollLeft ?? 0,\n y: elRef.current?.scrollTop ?? 0,\n }),\n [elRef],\n );\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n const el = elRef.current;\n // Some iOS versions do not normalize scroll — do it manually.\n el?.scrollTo(\n x ? clamp(x, 0, el.scrollWidth - el.clientWidth) : 0,\n y ? clamp(y, 0, el.scrollHeight - el.clientHeight) : 0,\n );\n },\n [elRef],\n );\n\n const enableScrollLock = React.useCallback<ScrollContextInterface['enableScrollLock']>(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = el.scrollTop;\n const scrollX = el.scrollLeft;\n const overflowY = el.scrollWidth > el.clientWidth ? 'scroll' : '';\n const overflowX = el.scrollHeight > el.clientHeight ? 'scroll' : '';\n\n Object.assign(el.style, {\n position: 'absolute',\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: '0',\n overflowY,\n overflowX,\n });\n setScrollLock(true);\n }, [elRef]);\n\n const disableScrollLock = React.useCallback<ScrollContextInterface['disableScrollLock']>(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n\n const scrollY = el.style.top;\n const scrollX = el.style.left;\n\n clearDisableScrollStyle(el);\n el.scrollTo(-parseInt(scrollX || '0'), -parseInt(scrollY || '0'));\n setScrollLock(false);\n }, [elRef]);\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n isScrollLock,\n disableScrollLock,\n enableScrollLock,\n beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\n/**\n * Вызывает функцию effect, до блокировки прокрутки\n * @param effect функция, которая может возвращать функцию очистки\n * @param deps effect обновится только при изменении значений в списке.\n */\nexport const useScrollLockEffect = (effect: React.EffectCallback, deps: React.DependencyList) => {\n const destructorRef = React.useRef<ReturnType<React.EffectCallback>>(noop);\n const { isScrollLock, beforeScrollLockFnSetRef } = useScroll();\n\n // Изменяем effectCallback только при изменении deps\n const effectCallback = React.useCallback(() => {\n destructorRef.current = effect();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n\n // Добавляем effectCallback в список функций, которые необходимо вызвать\n // до блокировки\n React.useEffect(() => {\n const beforeSet = beforeScrollLockFnSetRef?.current;\n if (!beforeSet) {\n return noop;\n }\n\n beforeSet.add(effectCallback);\n\n return () => {\n beforeSet.delete(effectCallback);\n };\n }, [beforeScrollLockFnSetRef, effectCallback]);\n\n // Вызываем сбрасывающую функцию, после отключения блокировки\n React.useEffect(() => {\n if (!isScrollLock && destructorRef.current) {\n destructorRef.current();\n }\n }, [isScrollLock]);\n};\n\nexport const useScrollLock = (enabled = true) => {\n const { enableScrollLock, disableScrollLock } = useScroll();\n useIsomorphicLayoutEffect(() => {\n if (enabled) {\n enableScrollLock();\n return disableScrollLock;\n }\n return noop;\n }, [enableScrollLock, disableScrollLock, enabled]);\n};\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { type
|
|
2
|
+
import { type ImageBaseOverlayProps, type ImageBaseProps } from '../ImageBase/ImageBase';
|
|
3
3
|
import { type AvatarBadgeProps } from './AvatarBadge/AvatarBadge';
|
|
4
4
|
import { type AvatarBadgeWithPresetProps } from './AvatarBadge/AvatarBadgeWithPreset';
|
|
5
5
|
export type { AvatarBadgeProps, AvatarBadgeWithPresetProps, ImageBaseOverlayProps as AvatarOverlayProps, };
|
|
@@ -11,9 +11,9 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
|
|
|
11
11
|
var React = _interopRequireWildcard(require("react"));
|
|
12
12
|
var _vkjs = require("@vkontakte/vkjs");
|
|
13
13
|
var _ImageBase = require("../ImageBase/ImageBase");
|
|
14
|
-
var _helpers = require("./helpers");
|
|
15
14
|
var _AvatarBadge = require("./AvatarBadge/AvatarBadge");
|
|
16
15
|
var _AvatarBadgeWithPreset = require("./AvatarBadge/AvatarBadgeWithPreset");
|
|
16
|
+
var _helpers = require("./helpers");
|
|
17
17
|
var _excluded = ["size", "className", "gradientColor", "initials", "fallbackIcon", "children"];
|
|
18
18
|
var AVATAR_DEFAULT_SIZE = 48;
|
|
19
19
|
exports.AVATAR_DEFAULT_SIZE = AVATAR_DEFAULT_SIZE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","names":["AVATAR_DEFAULT_SIZE","COLORS_NUMBER_TO_TEXT_MAP","gradientStyles","Avatar","size","className","gradientColor","initials","fallbackIcon","children","restProps","gradientName","isGradientNotCustom","rewrittenFallbackIcon","undefined","classNames","fontSize","getInitialsFontSize","Badge","AvatarBadge","BadgeWithPreset","AvatarBadgeWithPreset","Overlay","ImageBase"],"sources":["../../../../src/components/Avatar/Avatar.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport {
|
|
1
|
+
{"version":3,"file":"Avatar.js","names":["AVATAR_DEFAULT_SIZE","COLORS_NUMBER_TO_TEXT_MAP","gradientStyles","Avatar","size","className","gradientColor","initials","fallbackIcon","children","restProps","gradientName","isGradientNotCustom","rewrittenFallbackIcon","undefined","classNames","fontSize","getInitialsFontSize","Badge","AvatarBadge","BadgeWithPreset","AvatarBadgeWithPreset","Overlay","ImageBase"],"sources":["../../../../src/components/Avatar/Avatar.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { ImageBase, type ImageBaseOverlayProps, type ImageBaseProps } from '../ImageBase/ImageBase';\nimport { AvatarBadge, type AvatarBadgeProps } from './AvatarBadge/AvatarBadge';\nimport {\n AvatarBadgeWithPreset,\n type AvatarBadgeWithPresetProps,\n} from './AvatarBadge/AvatarBadgeWithPreset';\nimport { getInitialsFontSize } from './helpers';\nimport styles from './Avatar.module.css';\n\nexport type {\n AvatarBadgeProps,\n AvatarBadgeWithPresetProps,\n ImageBaseOverlayProps as AvatarOverlayProps,\n};\n\nexport const AVATAR_DEFAULT_SIZE = 48;\n\nconst COLORS_NUMBER_TO_TEXT_MAP = {\n 1: 'red',\n 2: 'orange',\n 3: 'yellow',\n 4: 'green',\n 5: 'l-blue',\n 6: 'violet',\n} as const;\n\n/**\n * Градиенты, которые можно использовать в алгоритме поиска градиентов по числовому идентификатору пользователя.\n * @example user.id % 6 + 1\n */\nexport type InitialsAvatarNumberGradients = keyof typeof COLORS_NUMBER_TO_TEXT_MAP;\n\nexport type InitialsAvatarTextGradients =\n | (typeof COLORS_NUMBER_TO_TEXT_MAP)[InitialsAvatarNumberGradients]\n | 'blue';\n\nconst gradientStyles = {\n 'red': styles['Avatar--gradient-red'],\n 'orange': styles['Avatar--gradient-orange'],\n 'yellow': styles['Avatar--gradient-yellow'],\n 'green': styles['Avatar--gradient-green'],\n 'blue': styles['Avatar--gradient-blue'],\n 'l-blue': styles['Avatar--gradient-l-blue'],\n 'violet': styles['Avatar--gradient-violet'],\n};\n\nexport interface AvatarProps extends ImageBaseProps {\n /**\n * Инициалы пользователя.\n *\n * > Note: Если аватарка не прогрузится, то пользователь увидит инициалы.\n *\n * > ⚠️ Перебивает `fallbackIcon`.\n */\n initials?: string;\n /**\n * Задаёт градиент для фона.\n *\n * Если передано число, то оно будет сконвертировано в строчное представление цвета по следующей схеме:\n *\n * 1: 'red'\n * 2: 'orange'\n * 3: 'yellow'\n * 4: 'green'\n * 5: 'l-blue'\n * 6: 'violet'\n *\n * > Если необходимо задать свой градиент, то используйте значение `\"custom\"` и определите цвет градиента либо через\n * > свой класс в `className`, либо через `style={{ backgroundImage: \"...\" }}`.\n */\n gradientColor?: InitialsAvatarNumberGradients | InitialsAvatarTextGradients | 'custom';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Avatar\n */\nexport const Avatar = ({\n size = AVATAR_DEFAULT_SIZE,\n className,\n gradientColor,\n initials,\n fallbackIcon,\n children,\n ...restProps\n}: AvatarProps) => {\n const gradientName =\n typeof gradientColor === 'number' ? COLORS_NUMBER_TO_TEXT_MAP[gradientColor] : gradientColor;\n const isGradientNotCustom = gradientName && gradientName !== 'custom';\n const rewrittenFallbackIcon = initials ? undefined : fallbackIcon;\n\n return (\n <ImageBase\n {...restProps}\n size={size}\n fallbackIcon={rewrittenFallbackIcon}\n className={classNames(\n styles['Avatar'],\n gradientName && styles[`Avatar--has-gradient`],\n isGradientNotCustom && gradientStyles[gradientName],\n className,\n )}\n >\n {initials && (\n <div\n className={styles['Avatar__initials']}\n style={{\n fontSize: getInitialsFontSize(size),\n }}\n >\n {initials}\n </div>\n )}\n {children}\n </ImageBase>\n );\n};\n\nAvatar.Badge = AvatarBadge;\n\nAvatar.BadgeWithPreset = AvatarBadgeWithPreset;\n\nAvatar.Overlay = ImageBase.Overlay;\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAIA;AAAgD;AASzC,IAAMA,mBAAmB,GAAG,EAAE;AAAC;AAEtC,IAAMC,yBAAyB,GAAG;EAChC,CAAC,EAAE,KAAK;EACR,CAAC,EAAE,QAAQ;EACX,CAAC,EAAE,QAAQ;EACX,CAAC,EAAE,OAAO;EACV,CAAC,EAAE,QAAQ;EACX,CAAC,EAAE;AACL,CAAU;;AAEV;AACA;AACA;AACA;;AAOA,IAAMC,cAAc,GAAG;EACrB,KAAK,4BAAgC;EACrC,QAAQ,+BAAmC;EAC3C,QAAQ,+BAAmC;EAC3C,OAAO,8BAAkC;EACzC,MAAM,6BAAiC;EACvC,QAAQ,+BAAmC;EAC3C,QAAQ;AACV,CAAC;AA6BD;AACA;AACA;AACO,IAAMC,MAAM,GAAG,SAATA,MAAM,OAQA;EAAA,qBAPjBC,IAAI;IAAJA,IAAI,0BAAGJ,mBAAmB;IAC1BK,SAAS,QAATA,SAAS;IACTC,aAAa,QAAbA,aAAa;IACbC,QAAQ,QAARA,QAAQ;IACRC,YAAY,QAAZA,YAAY;IACZC,QAAQ,QAARA,QAAQ;IACLC,SAAS;EAEZ,IAAMC,YAAY,GAChB,OAAOL,aAAa,KAAK,QAAQ,GAAGL,yBAAyB,CAACK,aAAa,CAAC,GAAGA,aAAa;EAC9F,IAAMM,mBAAmB,GAAGD,YAAY,IAAIA,YAAY,KAAK,QAAQ;EACrE,IAAME,qBAAqB,GAAGN,QAAQ,GAAGO,SAAS,GAAGN,YAAY;EAEjE,oBACE,oBAAC,oBAAS,6BACJE,SAAS;IACb,IAAI,EAAEN,IAAK;IACX,YAAY,EAAES,qBAAsB;IACpC,SAAS,EAAE,IAAAE,gBAAU,gBAEnBJ,YAAY,8BAAkC,EAC9CC,mBAAmB,IAAIV,cAAc,CAACS,YAAY,CAAC,EACnDN,SAAS;EACT,IAEDE,QAAQ,iBACP;IACE,SAAS,wBAA6B;IACtC,KAAK,EAAE;MACLS,QAAQ,EAAE,IAAAC,4BAAmB,EAACb,IAAI;IACpC;EAAE,GAEDG,QAAQ,CAEZ,EACAE,QAAQ,CACC;AAEhB,CAAC;AAAC;AAEFN,MAAM,CAACe,KAAK,GAAGC,wBAAW;AAE1BhB,MAAM,CAACiB,eAAe,GAAGC,4CAAqB;AAE9ClB,MAAM,CAACmB,OAAO,GAAGC,oBAAS,CAACD,OAAO"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AvatarBadge.js","names":["AvatarBadge","className","restProps","React","useContext","ImageBaseContext","size","classNames"],"sources":["../../../../../src/components/Avatar/AvatarBadge/AvatarBadge.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { type ImageBaseBadgeProps,
|
|
1
|
+
{"version":3,"file":"AvatarBadge.js","names":["AvatarBadge","className","restProps","React","useContext","ImageBaseContext","size","classNames"],"sources":["../../../../../src/components/Avatar/AvatarBadge/AvatarBadge.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { ImageBase, type ImageBaseBadgeProps, ImageBaseContext } from '../../ImageBase/ImageBase';\nimport styles from './AvatarBadge.module.css';\n\nexport type AvatarBadgeProps = ImageBaseBadgeProps;\n\nexport const AvatarBadge = ({ className, ...restProps }: AvatarBadgeProps) => {\n const { size } = React.useContext(ImageBaseContext);\n return (\n <ImageBase.Badge\n {...restProps}\n className={classNames(\n styles['AvatarBadge'],\n size < 96 && styles['AvatarBadge--shifted'],\n className,\n )}\n />\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AAAkG;AAK3F,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAAsD;EAAA,IAAhDC,SAAS,QAATA,SAAS;IAAKC,SAAS;EACnD,wBAAiBC,KAAK,CAACC,UAAU,CAACC,2BAAgB,CAAC;IAA3CC,IAAI,qBAAJA,IAAI;EACZ,oBACE,oBAAC,oBAAS,CAAC,KAAK,6BACVJ,SAAS;IACb,SAAS,EAAE,IAAAK,gBAAU,qBAEnBD,IAAI,GAAG,EAAE,8BAAkC,EAC3CL,SAAS;EACT,GACF;AAEN,CAAC;AAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AvatarBadgeWithPreset.js","names":["AvatarBadgeWithPreset","preset","className","restProps","React","useContext","ImageBaseContext","size","badgeSize","getBadgeIconSizeByImageBaseSize","isOnlinePreset","presetClassName","Icon","Icon12Circle","Icon12OnlineMobile","classNames"],"sources":["../../../../../src/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport {\n
|
|
1
|
+
{"version":3,"file":"AvatarBadgeWithPreset.js","names":["AvatarBadgeWithPreset","preset","className","restProps","React","useContext","ImageBaseContext","size","badgeSize","getBadgeIconSizeByImageBaseSize","isOnlinePreset","presetClassName","Icon","Icon12Circle","Icon12OnlineMobile","classNames"],"sources":["../../../../../src/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport {\n getBadgeIconSizeByImageBaseSize,\n ImageBase,\n type ImageBaseBadgeProps,\n ImageBaseContext,\n} from '../../ImageBase/ImageBase';\nimport { Icon12Circle, Icon12OnlineMobile } from './icons';\nimport styles from './AvatarBadge.module.css';\n\nexport interface AvatarBadgeWithPresetProps\n extends Omit<ImageBaseBadgeProps, 'background' | 'children'> {\n /**\n * Использует предзаданные настройки.\n *\n * За каждым пресетом закреплена своя иконка и стили.\n */\n preset?: 'online' | 'online-mobile';\n}\n\nexport const AvatarBadgeWithPreset = ({\n preset = 'online',\n className,\n ...restProps\n}: AvatarBadgeWithPresetProps) => {\n const { size } = React.useContext(ImageBaseContext);\n const badgeSize = getBadgeIconSizeByImageBaseSize(size);\n const isOnlinePreset = preset === 'online';\n const presetClassName = isOnlinePreset\n ? styles[`AvatarBadge--preset-online`]\n : styles[`AvatarBadge--preset-onlineMobile`];\n const Icon = isOnlinePreset ? Icon12Circle : Icon12OnlineMobile;\n\n return (\n <ImageBase.Badge\n background=\"stroke\"\n className={classNames(styles['AvatarBadge'], presetClassName, className)}\n {...restProps}\n >\n <Icon width={badgeSize} height={badgeSize} />\n </ImageBase.Badge>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AAMA;AAA2D;AAapD,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqB,OAIA;EAAA,uBAHhCC,MAAM;IAANA,MAAM,4BAAG,QAAQ;IACjBC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,wBAAiBC,KAAK,CAACC,UAAU,CAACC,2BAAgB,CAAC;IAA3CC,IAAI,qBAAJA,IAAI;EACZ,IAAMC,SAAS,GAAG,IAAAC,0CAA+B,EAACF,IAAI,CAAC;EACvD,IAAMG,cAAc,GAAGT,MAAM,KAAK,QAAQ;EAC1C,IAAMU,eAAe,GAAGD,cAAc,4EAEQ;EAC9C,IAAME,IAAI,GAAGF,cAAc,GAAGG,mBAAY,GAAGC,yBAAkB;EAE/D,oBACE,oBAAC,oBAAS,CAAC,KAAK;IACd,UAAU,EAAC,QAAQ;IACnB,SAAS,EAAE,IAAAC,gBAAU,qBAAwBJ,eAAe,EAAET,SAAS;EAAE,GACrEC,SAAS,gBAEb,oBAAC,IAAI;IAAC,KAAK,EAAEK,SAAU;IAAC,MAAM,EAAEA;EAAU,EAAG,CAC7B;AAEtB,CAAC;AAAC"}
|
|
@@ -9,12 +9,12 @@ exports.Banner = void 0;
|
|
|
9
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
11
|
var React = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _icons = require("@vkontakte/icons");
|
|
12
13
|
var _vkjs = require("@vkontakte/vkjs");
|
|
13
14
|
var _usePlatform = require("../../hooks/usePlatform");
|
|
14
15
|
var _platform = require("../../lib/platform");
|
|
15
|
-
var _icons = require("@vkontakte/icons");
|
|
16
|
-
var _Tappable = require("../Tappable/Tappable");
|
|
17
16
|
var _IconButton = require("../IconButton/IconButton");
|
|
17
|
+
var _Tappable = require("../Tappable/Tappable");
|
|
18
18
|
var _Headline = require("../Typography/Headline/Headline");
|
|
19
19
|
var _Subhead = require("../Typography/Subhead/Subhead");
|
|
20
20
|
var _Text = require("../Typography/Text/Text");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Banner.js","names":["Banner","mode","imageTheme","size","before","asideMode","header","subheader","text","children","background","actions","onDismiss","dismissLabel","className","restProps","platform","usePlatform","HeaderTypography","Title","Headline","SubheaderTypography","Text","Subhead","IconDismissIOS","Icon24DismissDark","Icon24DismissSubstract","content","hasReactNode","React","Children","count","classNames","Platform","IOS","styles"],"sources":["../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport {
|
|
1
|
+
{"version":3,"file":"Banner.js","names":["Banner","mode","imageTheme","size","before","asideMode","header","subheader","text","children","background","actions","onDismiss","dismissLabel","className","restProps","platform","usePlatform","HeaderTypography","Title","Headline","SubheaderTypography","Text","Subhead","IconDismissIOS","Icon24DismissDark","Icon24DismissSubstract","content","hasReactNode","React","Children","count","classNames","Platform","IOS","styles"],"sources":["../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon24Cancel,\n Icon24Chevron,\n Icon24DismissDark,\n Icon24DismissSubstract,\n} from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { IconButton } from '../IconButton/IconButton';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Text } from '../Typography/Text/Text';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './Banner.module.css';\n\nexport interface BannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Тип баннера.\n */\n mode?: 'tint' | 'image';\n size?: 's' | 'm';\n /**\n * Тип действия в правой части баннера.\n *\n * - `dismiss` – отображается иконка крестика, при клике на неё сработает свойство `onDismiss`.\n * - `expand` – отображается иконка шеврона, которая подразумевает, что при клике на баннер можно куда-то перейти.\n */\n asideMode?: 'dismiss' | 'expand';\n /**\n * Срабатывает при клике на иконку крестика при `asideMode=\"dismiss\"`.\n */\n onDismiss?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * `aria-label` для кнопки при `asideMode=\"dismiss\". Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n /**\n * Содержимое, отображаемое в левой части баннера.\n */\n before?: React.ReactNode;\n /**\n * Заголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n header?: React.ReactNode;\n /**\n * Подзаголовок. <br />\n * При использовании этого свойства рекомендуется не указывать `text`.\n */\n subheader?: React.ReactNode;\n /**\n * Текст баннера. <br />\n * Это свойство следует использовать без указания `header` и `subheader`.\n */\n text?: React.ReactNode;\n /**\n * При использовании `mode=\"image\"`.\n *\n * - `light` – в качестве фона используется светлое изображение, цвет текста в баннере будет тёмным.\n * - `dark` – в качестве фона используется тёмное изображение, цвет текста будет светлым.\n */\n imageTheme?: 'light' | 'dark';\n /**\n * При использовании `mode=\"image\"`.\n *\n * Элемент, который нужно стилизовать цветом и/или фоном. Этот элемент будет растянут на 100% ширины и высоты баннера.\n */\n background?: React.ReactNode;\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button).\n *\n * - В режиме `tint` или `image` со светлым фоном используйте только с параметрами:\n * - `mode=\"primary\"`\n * - `mode=\"secondary\"`\n * - В режиме `image` с тёмным фоном используйте с параметрами:\n * - `appearance=\"overlay\"`.\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `gap=\"m\" mode=\"horizontal\" stretched`\n * - `gap=\"m\" mode=\"vertical\" stretched`\n */\n actions?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Banner\n */\nexport const Banner = ({\n mode = 'tint',\n imageTheme = 'dark',\n size = 's',\n before,\n asideMode,\n header,\n subheader,\n text,\n children,\n background,\n actions,\n onDismiss,\n dismissLabel = 'Скрыть',\n className,\n ...restProps\n}: BannerProps) => {\n const platform = usePlatform();\n\n const HeaderTypography = size === 'm' ? Title : Headline;\n const SubheaderTypography = size === 'm' ? Text : Subhead;\n\n const IconDismissIOS = mode === 'image' ? Icon24DismissDark : Icon24DismissSubstract;\n\n const content = (\n <React.Fragment>\n {mode === 'image' && background && (\n <div aria-hidden className={styles['Banner__bg']}>\n {background}\n </div>\n )}\n\n {before && <div className={styles['Banner__before']}>{before}</div>}\n\n <div className={styles['Banner__content']}>\n {hasReactNode(header) && (\n <HeaderTypography\n Component=\"span\"\n className={styles['Banner__header']}\n weight=\"2\"\n level={size === 'm' ? '2' : '1'}\n >\n {header}\n </HeaderTypography>\n )}\n {hasReactNode(subheader) && (\n <SubheaderTypography Component=\"span\" className={styles['Banner__subheader']}>\n {subheader}\n </SubheaderTypography>\n )}\n {hasReactNode(text) && <Text className={styles['Banner__text']}>{text}</Text>}\n {hasReactNode(actions) && React.Children.count(actions) > 0 && (\n <div className={styles['Banner__actions']}>{actions}</div>\n )}\n </div>\n </React.Fragment>\n );\n\n return (\n <section\n {...restProps}\n className={classNames(\n styles['Banner'],\n platform === Platform.IOS && styles['Banner--ios'],\n styles[`Banner--mode-${mode}`],\n styles[`Banner--size-${size}`],\n mode === 'image' && imageTheme === 'dark' && styles['Banner--inverted'],\n className,\n )}\n >\n {asideMode === 'expand' ? (\n <Tappable\n className={styles['Banner__in']}\n activeMode={platform === Platform.IOS ? 'opacity' : 'background'}\n role=\"button\"\n >\n {content}\n\n <div className={styles['Banner__aside']}>\n <Icon24Chevron />\n </div>\n </Tappable>\n ) : (\n <div className={styles['Banner__in']}>\n {content}\n\n {asideMode === 'dismiss' && (\n <div className={styles['Banner__aside']}>\n <IconButton\n aria-label={dismissLabel}\n className={styles['Banner__dismiss']}\n onClick={onDismiss}\n hoverMode=\"opacity\"\n hasActive={false}\n >\n {platform === Platform.IOS ? <IconDismissIOS /> : <Icon24Cancel />}\n </IconButton>\n </div>\n )}\n </div>\n )}\n </section>\n );\n};\n"],"mappings":"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"}
|
|
@@ -12,13 +12,13 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
12
12
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
13
|
var React = _interopRequireWildcard(require("react"));
|
|
14
14
|
var _vkjs = require("@vkontakte/vkjs");
|
|
15
|
-
var
|
|
16
|
-
var _HorizontalScrollArrow = require("../HorizontalScroll/HorizontalScrollArrow");
|
|
15
|
+
var _useAdaptivityHasPointer = require("../../hooks/useAdaptivityHasPointer");
|
|
17
16
|
var _useExternRef = require("../../hooks/useExternRef");
|
|
17
|
+
var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
|
|
18
18
|
var _dom = require("../../lib/dom");
|
|
19
|
-
var _useAdaptivityHasPointer = require("../../hooks/useAdaptivityHasPointer");
|
|
20
19
|
var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
|
|
21
|
-
var
|
|
20
|
+
var _HorizontalScrollArrow = require("../HorizontalScroll/HorizontalScrollArrow");
|
|
21
|
+
var _Touch = require("../Touch/Touch");
|
|
22
22
|
var _helpers = require("./helpers");
|
|
23
23
|
var _excluded = ["bullets", "getRootRef", "children", "slideWidth", "slideIndex", "isDraggable", "onDragStart", "onDragEnd", "onChange", "onPrevClick", "onNextClick", "align", "showArrows", "getRef", "className", "arrowSize"];
|
|
24
24
|
var ANIMATION_DURATION = 0.24;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseGallery.js","names":["ANIMATION_DURATION","LAYOUT_DEFAULT_STATE","containerWidth","viewportOffsetWidth","layerWidth","min","max","slides","isFullyVisible","SHIFT_DEFAULT_STATE","animation","undefined","shiftX","dragging","deltaX","indent","BaseGallery","bullets","getRootRef","children","slideWidth","slideIndex","isDraggable","isDraggableProp","onDragStart","onDragEnd","onChange","onPrevClick","onNextClick","align","showArrows","getRef","className","arrowSize","restProps","slidesStore","React","useRef","layoutState","useState","shiftState","setShiftState","rootRef","useExternRef","viewportRef","useDOM","window","hasPointer","useAdaptivityHasPointer","isCenterWithCustomWidth","validateIndent","value","localMax","current","localMin","calculateIndent","targetIndex","targetSlide","length","coordX","width","viewportWidth","calculateDragIndent","Number","initializeSlides","options","localSlides","Children","map","_item","i","elem","offsetLeft","offsetWidth","localContainerWidth","localViewportOffsetWidth","localLayerWidth","reduce","val","slide","adjustShiftX","calcMax","calcMin","prevState","onResize","useGlobalEventListener","useIsomorphicLayoutEffect","slideLeft","event","slideRight","getTarget","e","expectDeltaX","duration","shift","direction","item","index","previousValue","Math","abs","currentValue","onStart","onMoveX","originalEvent","preventDefault","isSlideX","onEnd","isSlide","nextShiftState","shiftXStick","layerStyle","WebkitTransform","transform","WebkitTransition","transition","setSlideRef","slideRef","canSlideLeft","canSlideRight","classNames","styles","el"],"sources":["../../../../src/components/BaseGallery/BaseGallery.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Touch, TouchEvent } from '../Touch/Touch';\nimport { HorizontalScrollArrow } from '../HorizontalScroll/HorizontalScrollArrow';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useDOM } from '../../lib/dom';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { calcMax, calcMin } from './helpers';\nimport { BaseGalleryProps, GallerySlidesState, LayoutState, ShiftingState } from './types';\nimport styles from './BaseGallery.module.css';\n\nconst ANIMATION_DURATION = 0.24;\n\nconst LAYOUT_DEFAULT_STATE = {\n containerWidth: 0,\n viewportOffsetWidth: 0,\n layerWidth: 0,\n min: 0,\n max: 0,\n slides: [],\n isFullyVisible: true,\n};\n\nconst SHIFT_DEFAULT_STATE = {\n animation: undefined,\n shiftX: 0,\n dragging: false,\n deltaX: 0,\n indent: 0,\n};\n\nexport const BaseGallery = ({\n bullets = false,\n getRootRef,\n children,\n slideWidth = '100%',\n slideIndex = 0,\n isDraggable: isDraggableProp = true,\n onDragStart,\n onDragEnd,\n onChange,\n onPrevClick,\n onNextClick,\n align = 'left',\n showArrows,\n getRef,\n className,\n arrowSize = 'l',\n ...restProps\n}: BaseGalleryProps) => {\n const slidesStore = React.useRef<Record<string, HTMLDivElement | null>>({});\n const layoutState = React.useRef<LayoutState>(LAYOUT_DEFAULT_STATE);\n const [shiftState, setShiftState] = React.useState<ShiftingState>(SHIFT_DEFAULT_STATE);\n\n const rootRef = useExternRef(getRootRef);\n const viewportRef = useExternRef(getRef);\n\n const { window } = useDOM();\n const hasPointer = useAdaptivityHasPointer();\n\n const isCenterWithCustomWidth = slideWidth === 'custom' && align === 'center';\n\n const validateIndent = (value: number) => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n\n if (value < localMin) {\n return localMin;\n } else if (value > localMax) {\n return localMax;\n }\n\n return value;\n };\n\n /*\n * Считает отступ слоя галереи\n */\n const calculateIndent = (targetIndex: number) => {\n if (layoutState.current.isFullyVisible) {\n return 0;\n }\n\n const targetSlide = layoutState.current.slides?.length\n ? layoutState.current.slides[targetIndex]\n : null;\n\n if (targetSlide) {\n const { coordX, width } = targetSlide;\n\n if (isCenterWithCustomWidth) {\n const viewportWidth = layoutState.current.viewportOffsetWidth ?? 0;\n return viewportWidth / 2 - coordX - width / 2;\n }\n\n return validateIndent(-1 * coordX);\n }\n\n return 0;\n };\n\n /*\n * Считает отступ слоя галереи во время драга\n */\n const calculateDragIndent = () => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n const indent = shiftState.shiftX + shiftState.deltaX;\n\n if (indent > localMax) {\n return localMax + Number((indent - localMax) / 3);\n } else if (indent < localMin) {\n return localMin + Number((indent - localMin) / 3);\n }\n\n return indent;\n };\n\n const initializeSlides = (options: { animation?: boolean } = {}) => {\n const localSlides =\n React.Children.map(children, (_item: React.ReactNode, i: number): GallerySlidesState => {\n const elem = slidesStore.current[`slide-${i}`];\n return {\n coordX: elem?.offsetLeft ?? 0,\n width: elem?.offsetWidth ?? 0,\n };\n }) ?? [];\n\n const localContainerWidth = rootRef.current?.offsetWidth ?? 0;\n const localViewportOffsetWidth = viewportRef.current?.offsetWidth ?? 0;\n const localLayerWidth = localSlides.reduce(\n (val: number, slide: GallerySlidesState) => slide.width + val,\n 0,\n );\n const adjustShiftX =\n localSlides.length <= layoutState.current.slides.length ||\n layoutState.current.slides[slideIndex]?.coordX !== localSlides[slideIndex]?.coordX;\n\n layoutState.current = {\n containerWidth: localContainerWidth,\n viewportOffsetWidth: localViewportOffsetWidth,\n layerWidth: localLayerWidth,\n max: calcMax({\n slides: localSlides,\n viewportOffsetWidth: localViewportOffsetWidth,\n isCenterWithCustomWidth,\n }),\n min: calcMin({\n containerWidth: localContainerWidth,\n layerWidth: localLayerWidth,\n slides: localSlides,\n viewportOffsetWidth: localViewportOffsetWidth,\n isCenterWithCustomWidth,\n align,\n }),\n slides: localSlides,\n isFullyVisible: localLayerWidth <= localContainerWidth,\n };\n\n setShiftState((prevState) => ({\n ...prevState,\n shiftX: adjustShiftX ? calculateIndent(slideIndex) : prevState.shiftX,\n animation: options.animation ?? prevState.shiftX === validateIndent(prevState.shiftX),\n }));\n };\n\n const onResize = () => {\n if (shiftState.animation !== undefined) {\n initializeSlides({ animation: false });\n }\n };\n\n useGlobalEventListener(window, 'resize', onResize);\n\n useIsomorphicLayoutEffect(() => {\n initializeSlides({ animation: false });\n }, [children, align, slideWidth]);\n\n useIsomorphicLayoutEffect(() => {\n if (shiftState.animation !== undefined) {\n setShiftState((prevState) => ({\n ...prevState,\n animation: true,\n deltaX: 0,\n shiftX: calculateIndent(slideIndex ?? 0),\n }));\n }\n }, [slideIndex]);\n\n const slideLeft = (event: React.MouseEvent) => {\n onChange?.(slideIndex - 1);\n onPrevClick?.(event);\n };\n\n const slideRight = (event: React.MouseEvent) => {\n onChange?.(slideIndex + 1);\n onNextClick?.(event);\n };\n\n /*\n * Получает индекс слайда, к которому будет осуществлен переход\n */\n const getTarget = (e: TouchEvent) => {\n const expectDeltaX = (shiftState.deltaX / e.duration) * 240 * 0.6;\n const shift =\n shiftState.shiftX + shiftState.deltaX + expectDeltaX - (layoutState.current.max ?? 0);\n const direction = shiftState.deltaX < 0 ? 1 : -1;\n\n // Находим ближайшую границу слайда к текущему отступу\n let targetIndex = layoutState.current.slides.reduce(\n (val: number, item: GallerySlidesState, index: number) => {\n const previousValue = Math.abs(layoutState.current.slides[val].coordX + shift);\n const currentValue = Math.abs(item.coordX + shift);\n\n return previousValue < currentValue ? val : index;\n },\n slideIndex,\n );\n\n if (targetIndex === slideIndex) {\n let targetSlide = slideIndex + direction;\n\n if (targetSlide >= 0 && targetSlide < layoutState.current.slides.length) {\n if (Math.abs(shiftState.deltaX) > layoutState.current.slides[targetSlide].width * 0.05) {\n targetIndex = targetSlide;\n }\n }\n }\n\n return targetIndex;\n };\n\n const onStart = (e: TouchEvent) => {\n onDragStart?.(e);\n setShiftState((prevState) => ({ ...prevState, animation: false }));\n };\n\n const onMoveX = (e: TouchEvent) => {\n if (isDraggableProp && !layoutState.current.isFullyVisible) {\n e.originalEvent.preventDefault();\n\n if (e.isSlideX) {\n if (shiftState.deltaX !== e.shiftX) {\n setShiftState((prevState) => ({\n ...prevState,\n deltaX: e.shiftX,\n dragging: e.isSlideX,\n }));\n }\n }\n }\n };\n\n const onEnd = (e: TouchEvent) => {\n const targetIndex = e.isSlide ? getTarget(e) : slideIndex ?? 0;\n onDragEnd?.(e, targetIndex);\n\n const nextShiftState: Partial<ShiftingState> = {\n animation: true,\n dragging: false,\n deltaX: 0,\n };\n\n const shiftXStick = calculateDragIndent();\n if (targetIndex !== slideIndex) {\n // Сохраняем сдвиг слайда в том положении, в каком его оставили после драга (fix issue #2185)\n nextShiftState.shiftX = shiftXStick;\n }\n\n setShiftState((prevState) => ({ ...prevState, ...nextShiftState }));\n if (targetIndex !== slideIndex) {\n onChange?.(targetIndex);\n }\n };\n\n const indent = shiftState.dragging ? calculateDragIndent() : shiftState.shiftX;\n\n const layerStyle = {\n WebkitTransform: `translateX(${indent}px)`,\n transform: `translateX(${indent}px)`,\n WebkitTransition: shiftState.animation\n ? `-webkit-transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : 'none',\n transition: shiftState.animation\n ? `transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : 'none',\n };\n\n const setSlideRef = (slideRef: HTMLDivElement | null, slideIndex: number) => {\n slidesStore.current[`slide-${slideIndex}`] = slideRef;\n };\n\n // shiftX is negative number <= 0, we can swipe back only if it is < 0\n const canSlideLeft = !layoutState.current.isFullyVisible && shiftState.shiftX < 0;\n\n const canSlideRight =\n !layoutState.current.isFullyVisible &&\n // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side\n ((align === 'left' &&\n layoutState.current.containerWidth - shiftState.shiftX <\n (layoutState.current.layerWidth ?? 0)) ||\n // otherwise we need to check current slide index (align = right or align = center)\n (align !== 'left' && slideIndex < layoutState.current.slides.length - 1));\n\n const isDraggable = isDraggableProp && !layoutState.current.isFullyVisible;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['BaseGallery'],\n styles[`BaseGallery--align-${align}`],\n shiftState.dragging && styles['BaseGallery--dragging'],\n slideWidth === 'custom' && styles['BaseGallery--custom-width'],\n isDraggable && styles['BaseGallery--draggable'],\n className,\n )}\n ref={rootRef}\n >\n <Touch\n className={styles['BaseGallery__viewport']}\n onStartX={onStart}\n onMoveX={onMoveX}\n onEnd={onEnd}\n style={{ width: slideWidth === 'custom' ? '100%' : slideWidth }}\n getRootRef={viewportRef}\n noSlideClick\n >\n <div className={styles['BaseGallery__layer']} style={layerStyle}>\n {React.Children.map(children, (item: React.ReactNode, i: number) => (\n <div\n className={styles['BaseGallery__slide']}\n key={`slide-${i}`}\n ref={(el) => setSlideRef(el, i)}\n >\n {item}\n </div>\n ))}\n </div>\n </Touch>\n\n {bullets && (\n <div\n aria-hidden\n className={classNames(\n styles['BaseGallery__bullets'],\n styles[`BaseGallery__bullets--${bullets}`],\n )}\n >\n {React.Children.map(children, (_item: React.ReactNode, index: number) => (\n <div\n className={classNames(\n styles['BaseGallery__bullet'],\n index === slideIndex && styles['BaseGallery__bullet--active'],\n )}\n key={index}\n />\n ))}\n </div>\n )}\n\n {showArrows && hasPointer && canSlideLeft && (\n <HorizontalScrollArrow direction=\"left\" onClick={slideLeft} size={arrowSize} />\n )}\n {showArrows && hasPointer && canSlideRight && (\n <HorizontalScrollArrow direction=\"right\" onClick={slideRight} size={arrowSize} />\n )}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseGallery.js","names":["ANIMATION_DURATION","LAYOUT_DEFAULT_STATE","containerWidth","viewportOffsetWidth","layerWidth","min","max","slides","isFullyVisible","SHIFT_DEFAULT_STATE","animation","undefined","shiftX","dragging","deltaX","indent","BaseGallery","bullets","getRootRef","children","slideWidth","slideIndex","isDraggable","isDraggableProp","onDragStart","onDragEnd","onChange","onPrevClick","onNextClick","align","showArrows","getRef","className","arrowSize","restProps","slidesStore","React","useRef","layoutState","useState","shiftState","setShiftState","rootRef","useExternRef","viewportRef","useDOM","window","hasPointer","useAdaptivityHasPointer","isCenterWithCustomWidth","validateIndent","value","localMax","current","localMin","calculateIndent","targetIndex","targetSlide","length","coordX","width","viewportWidth","calculateDragIndent","Number","initializeSlides","options","localSlides","Children","map","_item","i","elem","offsetLeft","offsetWidth","localContainerWidth","localViewportOffsetWidth","localLayerWidth","reduce","val","slide","adjustShiftX","calcMax","calcMin","prevState","onResize","useGlobalEventListener","useIsomorphicLayoutEffect","slideLeft","event","slideRight","getTarget","e","expectDeltaX","duration","shift","direction","item","index","previousValue","Math","abs","currentValue","onStart","onMoveX","originalEvent","preventDefault","isSlideX","onEnd","isSlide","nextShiftState","shiftXStick","layerStyle","WebkitTransform","transform","WebkitTransition","transition","setSlideRef","slideRef","canSlideLeft","canSlideRight","classNames","styles","el"],"sources":["../../../../src/components/BaseGallery/BaseGallery.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { useDOM } from '../../lib/dom';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HorizontalScrollArrow } from '../HorizontalScroll/HorizontalScrollArrow';\nimport { Touch, TouchEvent } from '../Touch/Touch';\nimport { calcMax, calcMin } from './helpers';\nimport { BaseGalleryProps, GallerySlidesState, LayoutState, ShiftingState } from './types';\nimport styles from './BaseGallery.module.css';\n\nconst ANIMATION_DURATION = 0.24;\n\nconst LAYOUT_DEFAULT_STATE = {\n containerWidth: 0,\n viewportOffsetWidth: 0,\n layerWidth: 0,\n min: 0,\n max: 0,\n slides: [],\n isFullyVisible: true,\n};\n\nconst SHIFT_DEFAULT_STATE = {\n animation: undefined,\n shiftX: 0,\n dragging: false,\n deltaX: 0,\n indent: 0,\n};\n\nexport const BaseGallery = ({\n bullets = false,\n getRootRef,\n children,\n slideWidth = '100%',\n slideIndex = 0,\n isDraggable: isDraggableProp = true,\n onDragStart,\n onDragEnd,\n onChange,\n onPrevClick,\n onNextClick,\n align = 'left',\n showArrows,\n getRef,\n className,\n arrowSize = 'l',\n ...restProps\n}: BaseGalleryProps) => {\n const slidesStore = React.useRef<Record<string, HTMLDivElement | null>>({});\n const layoutState = React.useRef<LayoutState>(LAYOUT_DEFAULT_STATE);\n const [shiftState, setShiftState] = React.useState<ShiftingState>(SHIFT_DEFAULT_STATE);\n\n const rootRef = useExternRef(getRootRef);\n const viewportRef = useExternRef(getRef);\n\n const { window } = useDOM();\n const hasPointer = useAdaptivityHasPointer();\n\n const isCenterWithCustomWidth = slideWidth === 'custom' && align === 'center';\n\n const validateIndent = (value: number) => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n\n if (value < localMin) {\n return localMin;\n } else if (value > localMax) {\n return localMax;\n }\n\n return value;\n };\n\n /*\n * Считает отступ слоя галереи\n */\n const calculateIndent = (targetIndex: number) => {\n if (layoutState.current.isFullyVisible) {\n return 0;\n }\n\n const targetSlide = layoutState.current.slides?.length\n ? layoutState.current.slides[targetIndex]\n : null;\n\n if (targetSlide) {\n const { coordX, width } = targetSlide;\n\n if (isCenterWithCustomWidth) {\n const viewportWidth = layoutState.current.viewportOffsetWidth ?? 0;\n return viewportWidth / 2 - coordX - width / 2;\n }\n\n return validateIndent(-1 * coordX);\n }\n\n return 0;\n };\n\n /*\n * Считает отступ слоя галереи во время драга\n */\n const calculateDragIndent = () => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n const indent = shiftState.shiftX + shiftState.deltaX;\n\n if (indent > localMax) {\n return localMax + Number((indent - localMax) / 3);\n } else if (indent < localMin) {\n return localMin + Number((indent - localMin) / 3);\n }\n\n return indent;\n };\n\n const initializeSlides = (options: { animation?: boolean } = {}) => {\n const localSlides =\n React.Children.map(children, (_item: React.ReactNode, i: number): GallerySlidesState => {\n const elem = slidesStore.current[`slide-${i}`];\n return {\n coordX: elem?.offsetLeft ?? 0,\n width: elem?.offsetWidth ?? 0,\n };\n }) ?? [];\n\n const localContainerWidth = rootRef.current?.offsetWidth ?? 0;\n const localViewportOffsetWidth = viewportRef.current?.offsetWidth ?? 0;\n const localLayerWidth = localSlides.reduce(\n (val: number, slide: GallerySlidesState) => slide.width + val,\n 0,\n );\n const adjustShiftX =\n localSlides.length <= layoutState.current.slides.length ||\n layoutState.current.slides[slideIndex]?.coordX !== localSlides[slideIndex]?.coordX;\n\n layoutState.current = {\n containerWidth: localContainerWidth,\n viewportOffsetWidth: localViewportOffsetWidth,\n layerWidth: localLayerWidth,\n max: calcMax({\n slides: localSlides,\n viewportOffsetWidth: localViewportOffsetWidth,\n isCenterWithCustomWidth,\n }),\n min: calcMin({\n containerWidth: localContainerWidth,\n layerWidth: localLayerWidth,\n slides: localSlides,\n viewportOffsetWidth: localViewportOffsetWidth,\n isCenterWithCustomWidth,\n align,\n }),\n slides: localSlides,\n isFullyVisible: localLayerWidth <= localContainerWidth,\n };\n\n setShiftState((prevState) => ({\n ...prevState,\n shiftX: adjustShiftX ? calculateIndent(slideIndex) : prevState.shiftX,\n animation: options.animation ?? prevState.shiftX === validateIndent(prevState.shiftX),\n }));\n };\n\n const onResize = () => {\n if (shiftState.animation !== undefined) {\n initializeSlides({ animation: false });\n }\n };\n\n useGlobalEventListener(window, 'resize', onResize);\n\n useIsomorphicLayoutEffect(() => {\n initializeSlides({ animation: false });\n }, [children, align, slideWidth]);\n\n useIsomorphicLayoutEffect(() => {\n if (shiftState.animation !== undefined) {\n setShiftState((prevState) => ({\n ...prevState,\n animation: true,\n deltaX: 0,\n shiftX: calculateIndent(slideIndex ?? 0),\n }));\n }\n }, [slideIndex]);\n\n const slideLeft = (event: React.MouseEvent) => {\n onChange?.(slideIndex - 1);\n onPrevClick?.(event);\n };\n\n const slideRight = (event: React.MouseEvent) => {\n onChange?.(slideIndex + 1);\n onNextClick?.(event);\n };\n\n /*\n * Получает индекс слайда, к которому будет осуществлен переход\n */\n const getTarget = (e: TouchEvent) => {\n const expectDeltaX = (shiftState.deltaX / e.duration) * 240 * 0.6;\n const shift =\n shiftState.shiftX + shiftState.deltaX + expectDeltaX - (layoutState.current.max ?? 0);\n const direction = shiftState.deltaX < 0 ? 1 : -1;\n\n // Находим ближайшую границу слайда к текущему отступу\n let targetIndex = layoutState.current.slides.reduce(\n (val: number, item: GallerySlidesState, index: number) => {\n const previousValue = Math.abs(layoutState.current.slides[val].coordX + shift);\n const currentValue = Math.abs(item.coordX + shift);\n\n return previousValue < currentValue ? val : index;\n },\n slideIndex,\n );\n\n if (targetIndex === slideIndex) {\n let targetSlide = slideIndex + direction;\n\n if (targetSlide >= 0 && targetSlide < layoutState.current.slides.length) {\n if (Math.abs(shiftState.deltaX) > layoutState.current.slides[targetSlide].width * 0.05) {\n targetIndex = targetSlide;\n }\n }\n }\n\n return targetIndex;\n };\n\n const onStart = (e: TouchEvent) => {\n onDragStart?.(e);\n setShiftState((prevState) => ({ ...prevState, animation: false }));\n };\n\n const onMoveX = (e: TouchEvent) => {\n if (isDraggableProp && !layoutState.current.isFullyVisible) {\n e.originalEvent.preventDefault();\n\n if (e.isSlideX) {\n if (shiftState.deltaX !== e.shiftX) {\n setShiftState((prevState) => ({\n ...prevState,\n deltaX: e.shiftX,\n dragging: e.isSlideX,\n }));\n }\n }\n }\n };\n\n const onEnd = (e: TouchEvent) => {\n const targetIndex = e.isSlide ? getTarget(e) : slideIndex ?? 0;\n onDragEnd?.(e, targetIndex);\n\n const nextShiftState: Partial<ShiftingState> = {\n animation: true,\n dragging: false,\n deltaX: 0,\n };\n\n const shiftXStick = calculateDragIndent();\n if (targetIndex !== slideIndex) {\n // Сохраняем сдвиг слайда в том положении, в каком его оставили после драга (fix issue #2185)\n nextShiftState.shiftX = shiftXStick;\n }\n\n setShiftState((prevState) => ({ ...prevState, ...nextShiftState }));\n if (targetIndex !== slideIndex) {\n onChange?.(targetIndex);\n }\n };\n\n const indent = shiftState.dragging ? calculateDragIndent() : shiftState.shiftX;\n\n const layerStyle = {\n WebkitTransform: `translateX(${indent}px)`,\n transform: `translateX(${indent}px)`,\n WebkitTransition: shiftState.animation\n ? `-webkit-transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : 'none',\n transition: shiftState.animation\n ? `transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : 'none',\n };\n\n const setSlideRef = (slideRef: HTMLDivElement | null, slideIndex: number) => {\n slidesStore.current[`slide-${slideIndex}`] = slideRef;\n };\n\n // shiftX is negative number <= 0, we can swipe back only if it is < 0\n const canSlideLeft = !layoutState.current.isFullyVisible && shiftState.shiftX < 0;\n\n const canSlideRight =\n !layoutState.current.isFullyVisible &&\n // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side\n ((align === 'left' &&\n layoutState.current.containerWidth - shiftState.shiftX <\n (layoutState.current.layerWidth ?? 0)) ||\n // otherwise we need to check current slide index (align = right or align = center)\n (align !== 'left' && slideIndex < layoutState.current.slides.length - 1));\n\n const isDraggable = isDraggableProp && !layoutState.current.isFullyVisible;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['BaseGallery'],\n styles[`BaseGallery--align-${align}`],\n shiftState.dragging && styles['BaseGallery--dragging'],\n slideWidth === 'custom' && styles['BaseGallery--custom-width'],\n isDraggable && styles['BaseGallery--draggable'],\n className,\n )}\n ref={rootRef}\n >\n <Touch\n className={styles['BaseGallery__viewport']}\n onStartX={onStart}\n onMoveX={onMoveX}\n onEnd={onEnd}\n style={{ width: slideWidth === 'custom' ? '100%' : slideWidth }}\n getRootRef={viewportRef}\n noSlideClick\n >\n <div className={styles['BaseGallery__layer']} style={layerStyle}>\n {React.Children.map(children, (item: React.ReactNode, i: number) => (\n <div\n className={styles['BaseGallery__slide']}\n key={`slide-${i}`}\n ref={(el) => setSlideRef(el, i)}\n >\n {item}\n </div>\n ))}\n </div>\n </Touch>\n\n {bullets && (\n <div\n aria-hidden\n className={classNames(\n styles['BaseGallery__bullets'],\n styles[`BaseGallery__bullets--${bullets}`],\n )}\n >\n {React.Children.map(children, (_item: React.ReactNode, index: number) => (\n <div\n className={classNames(\n styles['BaseGallery__bullet'],\n index === slideIndex && styles['BaseGallery__bullet--active'],\n )}\n key={index}\n />\n ))}\n </div>\n )}\n\n {showArrows && hasPointer && canSlideLeft && (\n <HorizontalScrollArrow direction=\"left\" onClick={slideLeft} size={arrowSize} />\n )}\n {showArrows && hasPointer && canSlideRight && (\n <HorizontalScrollArrow direction=\"right\" onClick={slideRight} size={arrowSize} />\n )}\n </div>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","names":["calcMin","containerWidth","layerWidth","slides","viewportOffsetWidth","align","isCenterWithCustomWidth","length","coordX","width","undefined","calcMax"],"sources":["../../../../src/components/BaseGallery/helpers.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"helpers.js","names":["calcMin","containerWidth","layerWidth","slides","viewportOffsetWidth","align","isCenterWithCustomWidth","length","coordX","width","undefined","calcMax"],"sources":["../../../../src/components/BaseGallery/helpers.ts"],"sourcesContent":["import { HasAlign } from '../../types';\nimport { LayoutState } from './types';\n\ninterface CalcMin extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n align: HasAlign['align'];\n}\n\nexport const calcMin = ({\n containerWidth = 0,\n layerWidth = 0,\n slides = [],\n viewportOffsetWidth = 0,\n align,\n isCenterWithCustomWidth,\n}: CalcMin) => {\n switch (align) {\n case 'left':\n return containerWidth - layerWidth;\n case 'right':\n return viewportOffsetWidth - layerWidth;\n case 'center':\n if (isCenterWithCustomWidth && slides.length) {\n const { coordX, width } = slides[slides.length - 1];\n return viewportOffsetWidth / 2 - coordX - width / 2;\n } else {\n return viewportOffsetWidth - (containerWidth - viewportOffsetWidth) / 2 - layerWidth;\n }\n }\n return undefined;\n};\n\ninterface CalcMax extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n}\n\nexport const calcMax = ({\n slides = [],\n viewportOffsetWidth = 0,\n isCenterWithCustomWidth,\n}: CalcMax) => {\n if (isCenterWithCustomWidth && slides.length) {\n const { width, coordX } = slides[0];\n return viewportOffsetWidth / 2 - coordX - width / 2;\n }\n return 0;\n};\n"],"mappings":";;;;;;AAQO,IAAMA,OAAO,GAAG,SAAVA,OAAO,OAOL;EAAA,+BANbC,cAAc;IAAdA,cAAc,oCAAG,CAAC;IAAA,uBAClBC,UAAU;IAAVA,UAAU,gCAAG,CAAC;IAAA,mBACdC,MAAM;IAANA,MAAM,4BAAG,EAAE;IAAA,6BACXC,mBAAmB;IAAnBA,mBAAmB,sCAAG,CAAC;IACvBC,KAAK,QAALA,KAAK;IACLC,uBAAuB,QAAvBA,uBAAuB;EAEvB,QAAQD,KAAK;IACX,KAAK,MAAM;MACT,OAAOJ,cAAc,GAAGC,UAAU;IACpC,KAAK,OAAO;MACV,OAAOE,mBAAmB,GAAGF,UAAU;IACzC,KAAK,QAAQ;MACX,IAAII,uBAAuB,IAAIH,MAAM,CAACI,MAAM,EAAE;QAC5C,cAA0BJ,MAAM,CAACA,MAAM,CAACI,MAAM,GAAG,CAAC,CAAC;UAA3CC,MAAM,WAANA,MAAM;UAAEC,KAAK,WAALA,KAAK;QACrB,OAAOL,mBAAmB,GAAG,CAAC,GAAGI,MAAM,GAAGC,KAAK,GAAG,CAAC;MACrD,CAAC,MAAM;QACL,OAAOL,mBAAmB,GAAG,CAACH,cAAc,GAAGG,mBAAmB,IAAI,CAAC,GAAGF,UAAU;MACtF;EAAC;EAEL,OAAOQ,SAAS;AAClB,CAAC;AAAC;AAMK,IAAMC,OAAO,GAAG,SAAVA,OAAO,QAIL;EAAA,yBAHbR,MAAM;IAANA,MAAM,6BAAG,EAAE;IAAA,8BACXC,mBAAmB;IAAnBA,mBAAmB,sCAAG,CAAC;IACvBE,uBAAuB,SAAvBA,uBAAuB;EAEvB,IAAIA,uBAAuB,IAAIH,MAAM,CAACI,MAAM,EAAE;IAC5C,eAA0BJ,MAAM,CAAC,CAAC,CAAC;MAA3BM,KAAK,YAALA,KAAK;MAAED,MAAM,YAANA,MAAM;IACrB,OAAOJ,mBAAmB,GAAG,CAAC,GAAGI,MAAM,GAAGC,KAAK,GAAG,CAAC;EACrD;EACA,OAAO,CAAC;AACV,CAAC;AAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { HasAlign, HasRef, HasRootRef } from '../../types';
|
|
3
|
-
import { TouchEvent, TouchEventHandler } from '../Touch/Touch';
|
|
4
3
|
import { HorizontalScrollArrowProps } from '../HorizontalScroll/HorizontalScrollArrow';
|
|
4
|
+
import { TouchEvent, TouchEventHandler } from '../Touch/Touch';
|
|
5
5
|
export interface GallerySlidesState {
|
|
6
6
|
coordX: number;
|
|
7
7
|
width: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/BaseGallery/types.ts"],"sourcesContent":["import * as React from 'react';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport {
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/BaseGallery/types.ts"],"sourcesContent":["import * as React from 'react';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { HorizontalScrollArrowProps } from '../HorizontalScroll/HorizontalScrollArrow';\nimport { TouchEvent, TouchEventHandler } from '../Touch/Touch';\n\nexport interface GallerySlidesState {\n coordX: number;\n width: number;\n}\n\nexport interface ShiftingState {\n deltaX: number;\n shiftX: number;\n animation?: boolean;\n dragging: boolean;\n}\n\nexport interface LayoutState {\n containerWidth: number;\n viewportOffsetWidth: number;\n layerWidth: number;\n min?: number;\n max: number;\n slides: GallerySlidesState[];\n isFullyVisible: boolean;\n}\n\nexport interface BaseGalleryProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'onDragStart' | 'onDragEnd'>,\n HasAlign,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLElement> {\n slideWidth?: string | number;\n slideIndex?: number;\n onDragStart?: TouchEventHandler;\n onDragEnd?(e: TouchEvent, targetIndex: number): void;\n onChange?(current: number): void;\n /**\n * Будет вызвано при клике на кнопку-стрелку влево\n */\n onPrevClick?(event: React.MouseEvent): void;\n /**\n * Будет вызвано при клике на кнопку-стрелку вправо\n */\n onNextClick?(event: React.MouseEvent): void;\n bullets?: 'dark' | 'light' | false;\n isDraggable?: boolean;\n showArrows?: boolean;\n hasPointer?: boolean;\n arrowSize?: HorizontalScrollArrowProps['size'];\n}\n"],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { TappableProps } from '../Tappable/Tappable';
|
|
3
2
|
import { HasAlign } from '../../types';
|
|
3
|
+
import { TappableProps } from '../Tappable/Tappable';
|
|
4
4
|
export interface VKUIButtonProps extends HasAlign {
|
|
5
5
|
mode?: 'primary' | 'secondary' | 'tertiary' | 'outline' | 'link';
|
|
6
6
|
appearance?: 'accent' | 'positive' | 'negative' | 'neutral' | 'overlay' | 'accent-invariable';
|
|
@@ -15,4 +15,4 @@ export interface ButtonProps extends Omit<TappableProps, 'size'>, VKUIButtonProp
|
|
|
15
15
|
/**
|
|
16
16
|
* @see https://vkcom.github.io/VKUI/#/Button
|
|
17
17
|
*/
|
|
18
|
-
export declare const Button: ({ size, mode, appearance, stretched, align, children, before, after, getRootRef,
|
|
18
|
+
export declare const Button: ({ size, mode, appearance, stretched, align, children, before, after, getRootRef, loading, onClick, stopPropagation, className, ...restProps }: ButtonProps) => JSX.Element;
|