@vkontakte/vkui 4.34.1 → 4.35.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.browserslistrc +5 -0
- package/.cache/.eslintcache +1 -1
- package/.cache/.stylelintcache +1 -1
- package/.cache/.tsbuildinfo +256 -229
- package/.cache/ts/src/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
- package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
- package/.cache/ts/src/components/Dropdown/Dropdown.d.ts +46 -5
- package/.cache/ts/src/components/FocusTrap/FocusTrap.d.ts +1 -1
- package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +1 -1
- package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
- package/.cache/ts/src/components/Popper/Popper.d.ts +18 -1
- package/.cache/ts/src/components/PopperArrow/PopperArrow.d.ts +8 -0
- package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +7 -2
- package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +5 -1
- package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +1 -0
- package/.cache/ts/src/components/Tabbar/Tabbar.d.ts +8 -1
- package/.cache/ts/src/components/Tabs/Tabs.d.ts +13 -2
- package/.cache/ts/src/components/TabsItem/TabsItem.d.ts +22 -1
- package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +5 -1
- package/.cache/ts/src/components/Textarea/Textarea.d.ts +3 -0
- package/.cache/ts/src/components/Tooltip/Tooltip.d.ts +18 -1
- package/.cache/ts/src/components/Typography/Headline/Headline.d.ts +3 -3
- package/.cache/ts/src/components/View/View.d.ts +2 -18
- package/.cache/ts/src/components/View/ViewInfinite.d.ts +1 -1
- package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +5 -1
- package/.cache/ts/src/tokenized/index.d.ts +26 -0
- package/.eslintrc.json +14 -4
- package/dist/cjs/components/AppRoot/AppRoot.js +1 -0
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/Button/Button.js +6 -4
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.js +3 -1
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +1 -0
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +7 -1
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.js +477 -554
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/Dropdown/Dropdown.js +147 -26
- package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/cjs/components/Epic/Epic.js +1 -6
- package/dist/cjs/components/Epic/Epic.js.map +1 -1
- package/dist/cjs/components/FocusTrap/FocusTrap.js +9 -10
- package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js +4 -7
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +1 -0
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cjs/components/Input/Input.js +1 -0
- package/dist/cjs/components/Input/Input.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/ModalCardBase/ModalCardBase.js +1 -0
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.js +1 -0
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/Panel/Panel.js +1 -0
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.js +1 -0
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/Popper/Popper.js +16 -22
- package/dist/cjs/components/Popper/Popper.js.map +1 -1
- package/dist/cjs/components/PopperArrow/PopperArrow.js +40 -0
- package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -0
- package/dist/cjs/components/Radio/Radio.js +1 -0
- package/dist/cjs/components/Radio/Radio.js.map +1 -1
- package/dist/cjs/components/RangeSlider/UniversalSlider.js +1 -0
- package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/cjs/components/RichTooltip/RichTooltip.js +6 -15
- package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cjs/components/Select/Select.js +1 -0
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +1 -0
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +21 -31
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.js +7 -11
- package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.js +7 -1
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/SplitLayout/SplitLayout.js +5 -8
- package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cjs/components/Tabbar/Tabbar.js +15 -14
- package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js +8 -10
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.js +23 -5
- package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/TabsItem/TabsItem.js +39 -22
- package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cjs/components/TextTooltip/TextTooltip.js +6 -9
- package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.js +5 -4
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js +94 -71
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/Typography/Headline/Headline.js +11 -2
- package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cjs/components/View/View.js +388 -453
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/WriteBar/WriteBar.js +12 -5
- package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +3 -8
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cjs/hooks/useOrientationChange.js +2 -1
- package/dist/cjs/hooks/useOrientationChange.js.map +1 -1
- package/dist/cjs/tokenized/index.js +104 -0
- package/dist/cjs/tokenized/index.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.js +1 -0
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/Button/Button.js +6 -4
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.js +3 -1
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.js +1 -0
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
- package/dist/components/ConfigProvider/ConfigProviderContext.js +3 -0
- package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
- package/dist/components/CustomSelect/CustomSelect.js +473 -580
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/Dropdown/Dropdown.d.ts +46 -5
- package/dist/components/Dropdown/Dropdown.js +137 -27
- package/dist/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/components/Epic/Epic.js +1 -4
- package/dist/components/Epic/Epic.js.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.d.ts +1 -1
- package/dist/components/FocusTrap/FocusTrap.js +9 -9
- package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.js +3 -5
- package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js +1 -0
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +2 -2
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/components/Input/Input.js +1 -0
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js +2 -2
- package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.js +1 -0
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
- package/dist/components/NativeSelect/NativeSelect.js +1 -0
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/Panel/Panel.js +1 -0
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.js +1 -0
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts +18 -1
- package/dist/components/Popper/Popper.js +15 -22
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/PopperArrow/PopperArrow.d.ts +8 -0
- package/dist/components/PopperArrow/PopperArrow.js +27 -0
- package/dist/components/PopperArrow/PopperArrow.js.map +1 -0
- package/dist/components/Radio/Radio.js +1 -0
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/RangeSlider/UniversalSlider.js +1 -0
- package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/components/RichTooltip/RichTooltip.d.ts +7 -2
- package/dist/components/RichTooltip/RichTooltip.js +5 -10
- package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/components/Select/Select.js +1 -0
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js +1 -0
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +19 -28
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts +5 -1
- package/dist/components/Snackbar/Snackbar.js +8 -11
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts +1 -0
- package/dist/components/SplitCol/SplitCol.js +3 -0
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.js +4 -7
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.d.ts +8 -1
- package/dist/components/Tabbar/Tabbar.js +15 -14
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.js +7 -9
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts +13 -2
- package/dist/components/Tabs/Tabs.js +23 -5
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.d.ts +22 -1
- package/dist/components/TabsItem/TabsItem.js +40 -21
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/TextTooltip/TextTooltip.d.ts +5 -1
- package/dist/components/TextTooltip/TextTooltip.js +5 -7
- package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts +3 -0
- package/dist/components/Textarea/Textarea.js +5 -4
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +18 -1
- package/dist/components/Tooltip/Tooltip.js +89 -68
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Typography/Headline/Headline.d.ts +3 -3
- package/dist/components/Typography/Headline/Headline.js +10 -2
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/View/View.d.ts +2 -18
- package/dist/components/View/View.js +384 -462
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.d.ts +1 -1
- package/dist/components/WriteBar/WriteBar.d.ts +5 -1
- package/dist/components/WriteBar/WriteBar.js +10 -5
- package/dist/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js +3 -6
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components.css +143 -127
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.css +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +1 -1
- package/dist/cssm/components/Alert/Alert.css +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js +1 -0
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.css +3 -5
- package/dist/cssm/components/Badge/Badge.css +3 -3
- package/dist/cssm/components/Banner/Banner.css +5 -5
- package/dist/cssm/components/BaseGallery/BaseGallery.css +1 -1
- package/dist/cssm/components/Button/Button.css +53 -35
- package/dist/cssm/components/Button/Button.js +6 -4
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.css +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.css +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.css +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.css +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.css +1 -1
- package/dist/cssm/components/Card/Card.css +5 -6
- package/dist/cssm/components/CardGrid/CardGrid.css +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.css +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js +3 -1
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.css +3 -3
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
- package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
- package/dist/cssm/components/CellButton/CellButton.css +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.css +1 -1
- package/dist/cssm/components/Chip/Chip.css +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +1 -0
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.d.ts +1 -0
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +3 -0
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.css +1 -1
- package/dist/cssm/components/Counter/Counter.css +31 -31
- package/dist/cssm/components/CustomScrollView/CustomScrollView.css +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js +473 -580
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +3 -3
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.css +3 -3
- package/dist/cssm/components/DateInput/DateInput.css +1 -1
- package/dist/cssm/components/DatePicker/DatePicker.css +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
- package/dist/cssm/components/Dropdown/Dropdown.css +1 -1
- package/dist/cssm/components/Dropdown/Dropdown.d.ts +46 -5
- package/dist/cssm/components/Dropdown/Dropdown.js +137 -27
- package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/cssm/components/Epic/Epic.css +1 -1
- package/dist/cssm/components/Epic/Epic.js +1 -4
- package/dist/cssm/components/Epic/Epic.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.css +1 -1
- package/dist/cssm/components/FocusTrap/FocusTrap.d.ts +1 -1
- package/dist/cssm/components/FocusTrap/FocusTrap.js +9 -9
- package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.css +1 -1
- package/dist/cssm/components/Footer/Footer.css +1 -1
- package/dist/cssm/components/FormField/FormField.css +9 -9
- package/dist/cssm/components/FormItem/FormItem.css +1 -1
- package/dist/cssm/components/FormLayout/FormLayout.css +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.css +1 -1
- package/dist/cssm/components/Gradient/Gradient.css +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
- package/dist/cssm/components/Group/Group.css +1 -1
- package/dist/cssm/components/Header/Header.css +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.css +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -5
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.css +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +1 -0
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.css +3 -3
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +2 -2
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.css +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.css +1 -1
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.css +1 -1
- package/dist/cssm/components/Input/Input.css +1 -1
- package/dist/cssm/components/Input/Input.js +1 -0
- package/dist/cssm/components/Input/Input.js.map +1 -1
- package/dist/cssm/components/InputLike/InputLike.css +1 -1
- package/dist/cssm/components/InputLike/InputLikeDivider.css +1 -1
- package/dist/cssm/components/Link/Link.css +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.css +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.css +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.css +3 -3
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js +1 -0
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.css +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.css +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.d.ts +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.js +1 -0
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.css +1 -1
- package/dist/cssm/components/Panel/Panel.css +1 -1
- package/dist/cssm/components/Panel/Panel.js +1 -0
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js +1 -0
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.css +3 -3
- package/dist/cssm/components/PopoutRoot/PopoutRoot.css +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.css +1 -1
- package/dist/cssm/components/Popper/Popper.css +1 -1
- package/dist/cssm/components/Popper/Popper.d.ts +18 -1
- package/dist/cssm/components/Popper/Popper.js +15 -22
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/PopperArrow/PopperArrow.css +1 -0
- package/dist/cssm/components/PopperArrow/PopperArrow.d.ts +8 -0
- package/dist/cssm/components/PopperArrow/PopperArrow.js +28 -0
- package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -0
- package/dist/cssm/components/Progress/Progress.css +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.css +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.css +3 -3
- package/dist/cssm/components/Radio/Radio.css +1 -1
- package/dist/cssm/components/Radio/Radio.js +1 -0
- package/dist/cssm/components/Radio/Radio.js.map +1 -1
- package/dist/cssm/components/RadioGroup/RadioGroup.css +1 -1
- package/dist/cssm/components/RangeSlider/UniversalSlider.js +1 -0
- package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.css +1 -1
- package/dist/cssm/components/RichCell/RichCell.css +3 -3
- package/dist/cssm/components/RichTooltip/RichTooltip.css +3 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.d.ts +7 -2
- package/dist/cssm/components/RichTooltip/RichTooltip.js +5 -10
- package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cssm/components/Root/Root.css +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.css +1 -1
- package/dist/cssm/components/Search/Search.css +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.css +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
- package/dist/cssm/components/Select/Select.css +1 -1
- package/dist/cssm/components/Select/Select.js +1 -0
- package/dist/cssm/components/Select/Select.js.map +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +1 -0
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/Separator/Separator.css +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +19 -28
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.css +1 -1
- package/dist/cssm/components/Slider/Slider.css +3 -3
- package/dist/cssm/components/SliderSwitch/SliderSwitch.css +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.css +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.d.ts +5 -1
- package/dist/cssm/components/Snackbar/Snackbar.js +8 -11
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Spacing/Spacing.css +1 -1
- package/dist/cssm/components/Spinner/Spinner.css +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.css +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.d.ts +1 -0
- package/dist/cssm/components/SplitCol/SplitCol.js +3 -0
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js +4 -7
- package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
- package/dist/cssm/components/Switch/Switch.css +3 -3
- package/dist/cssm/components/Tabbar/Tabbar.css +5 -3
- package/dist/cssm/components/Tabbar/Tabbar.d.ts +8 -1
- package/dist/cssm/components/Tabbar/Tabbar.js +15 -14
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +7 -9
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.css +1 -1
- package/dist/cssm/components/Tabs/Tabs.d.ts +13 -2
- package/dist/cssm/components/Tabs/Tabs.js +23 -5
- package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.css +5 -1
- package/dist/cssm/components/TabsItem/TabsItem.d.ts +22 -1
- package/dist/cssm/components/TabsItem/TabsItem.js +40 -21
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.css +5 -5
- package/dist/cssm/components/TextTooltip/TextTooltip.css +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.d.ts +5 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.js +5 -7
- package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.css +1 -1
- package/dist/cssm/components/Textarea/Textarea.d.ts +3 -0
- package/dist/cssm/components/Textarea/Textarea.js +5 -4
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.css +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.d.ts +18 -1
- package/dist/cssm/components/Tooltip/Tooltip.js +89 -68
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
- package/dist/cssm/components/Typography/Footnote/Footnote.css +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.d.ts +3 -3
- package/dist/cssm/components/Typography/Headline/Headline.js +10 -2
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
- package/dist/cssm/components/Typography/Text/Text.css +1 -1
- package/dist/cssm/components/Typography/Title/Title.css +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.css +5 -5
- package/dist/cssm/components/View/View.css +1 -1
- package/dist/cssm/components/View/View.d.ts +2 -18
- package/dist/cssm/components/View/View.js +384 -462
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/ViewIOS.css +1 -1
- package/dist/cssm/components/View/ViewInfinite.d.ts +1 -1
- package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.css +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.css +3 -1
- package/dist/cssm/components/WriteBar/WriteBar.d.ts +5 -1
- package/dist/cssm/components/WriteBar/WriteBar.js +10 -5
- package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.css +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +3 -6
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/fonts/fonts.css +1 -1
- package/dist/cssm/hooks/useOrientationChange.js +2 -1
- package/dist/cssm/hooks/useOrientationChange.js.map +1 -1
- package/dist/cssm/lib/calendar.d.ts +2 -2
- package/dist/cssm/styles/animations.css +1 -1
- package/dist/cssm/styles/bright_light.css +1 -1
- package/dist/cssm/styles/common.css +1 -1
- package/dist/cssm/styles/components.css +143 -127
- package/dist/cssm/styles/constants.css +3 -10
- package/dist/cssm/styles/space_gray.css +1 -1
- package/dist/cssm/styles/themes.css +1 -16
- package/dist/cssm/styles/unstable.css +3 -1
- package/dist/cssm/styles/vkcom_dark.css +1 -6
- package/dist/cssm/styles/vkcom_light.css +1 -11
- package/dist/cssm/tokenized/index.d.ts +26 -0
- package/dist/cssm/tokenized/index.js +13 -0
- package/dist/cssm/tokenized/index.js.map +1 -1
- package/dist/default_scheme.css +1 -1
- package/dist/default_scheme.css.map +1 -1
- package/dist/fonts.css +1 -1
- package/dist/fonts.css.map +1 -1
- package/dist/hooks/useOrientationChange.js +2 -1
- package/dist/hooks/useOrientationChange.js.map +1 -1
- package/dist/lib/calendar.d.ts +2 -2
- package/dist/tokenized/index.d.ts +26 -0
- package/dist/tokenized/index.js +13 -0
- package/dist/tokenized/index.js.map +1 -1
- package/dist/unstable.css +3 -1
- package/dist/unstable.css.map +1 -1
- package/dist/vkui.css +144 -143
- package/dist/vkui.css.map +1 -1
- package/package.json +6 -5
- package/src/components/AppRoot/AppRoot.tsx +2 -0
- package/src/components/Badge/Badge.css +0 -5
- package/src/components/Button/Button.css +0 -4
- package/src/components/Button/Button.tsx +4 -2
- package/src/components/Button/Readme.md +30 -59
- package/src/components/CardScroll/CardScroll.tsx +1 -1
- package/src/components/Cell/Cell.css +3 -2
- package/src/components/ChipsInput/ChipsInput.css +2 -0
- package/src/components/ChipsSelect/ChipsSelect.tsx +2 -0
- package/src/components/ConfigProvider/ConfigProviderContext.tsx +2 -0
- package/src/components/Counter/Counter.css +30 -0
- package/src/components/CustomScrollView/CustomScrollView.css +10 -5
- package/src/components/CustomSelect/CustomSelect.tsx +543 -574
- package/src/components/Dropdown/Dropdown.css +12 -0
- package/src/components/Dropdown/Dropdown.tsx +174 -20
- package/src/components/Dropdown/Readme.md +1 -0
- package/src/components/Epic/Epic.tsx +1 -4
- package/src/components/FixedLayout/Readme.md +103 -109
- package/src/components/FocusTrap/FocusTrap.tsx +10 -10
- package/src/components/Group/Group.css +1 -1
- package/src/components/Group/Readme.md +1 -1
- package/src/components/HorizontalCell/HorizontalCell.css +25 -43
- package/src/components/HorizontalCell/HorizontalCell.tsx +3 -9
- package/src/components/HorizontalScroll/HorizontalScroll.css +23 -0
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +2 -0
- package/src/components/HorizontalScroll/HorizontalScrollArrow.tsx +2 -2
- package/src/components/Input/Input.css +2 -0
- package/src/components/Input/Input.tsx +2 -0
- package/src/components/MiniInfoCell/MiniInfoCell.css +13 -3
- package/src/components/MiniInfoCell/MiniInfoCell.tsx +3 -3
- package/src/components/ModalCardBase/ModalCardBase.tsx +2 -0
- package/src/components/NativeSelect/NativeSelect.tsx +2 -0
- package/src/components/Panel/Panel.tsx +2 -0
- package/src/components/PanelHeader/PanelHeader.tsx +2 -0
- package/src/components/Popper/Popper.css +0 -35
- package/src/components/Popper/Popper.tsx +33 -25
- package/src/components/PopperArrow/PopperArrow.css +34 -0
- package/src/components/PopperArrow/PopperArrow.tsx +40 -0
- package/src/components/Radio/Radio.tsx +2 -0
- package/src/components/RangeSlider/UniversalSlider.tsx +2 -0
- package/src/components/RichTooltip/RichTooltip.css +44 -4
- package/src/components/RichTooltip/RichTooltip.tsx +9 -11
- package/src/components/Select/Select.tsx +2 -0
- package/src/components/SelectMimicry/SelectMimicry.tsx +2 -0
- package/src/components/SimpleCell/Readme.md +115 -129
- package/src/components/SimpleCell/SimpleCell.css +30 -68
- package/src/components/SimpleCell/SimpleCell.tsx +23 -25
- package/src/components/Snackbar/Readme.md +95 -123
- package/src/components/Snackbar/Snackbar.css +18 -27
- package/src/components/Snackbar/Snackbar.tsx +17 -11
- package/src/components/SplitCol/SplitCol.tsx +2 -0
- package/src/components/SplitLayout/SplitLayout.css +3 -7
- package/src/components/SplitLayout/SplitLayout.tsx +9 -6
- package/src/components/Switch/Switch.css +6 -2
- package/src/components/Tabbar/Tabbar.css +4 -1
- package/src/components/Tabbar/Tabbar.tsx +23 -12
- package/src/components/TabbarItem/TabbarItem.css +7 -5
- package/src/components/TabbarItem/TabbarItem.tsx +13 -7
- package/src/components/Tabs/Readme.md +191 -251
- package/src/components/Tabs/Tabs.css +27 -80
- package/src/components/Tabs/Tabs.tsx +45 -7
- package/src/components/TabsItem/Readme.md +1 -0
- package/src/components/TabsItem/TabsItem.css +191 -106
- package/src/components/TabsItem/TabsItem.tsx +72 -20
- package/src/components/TextTooltip/TextTooltip.css +41 -11
- package/src/components/TextTooltip/TextTooltip.tsx +9 -13
- package/src/components/Textarea/Textarea.css +2 -0
- package/src/components/Textarea/Textarea.tsx +5 -4
- package/src/components/Tooltip/Readme.md +128 -101
- package/src/components/Tooltip/Tooltip.css +29 -40
- package/src/components/Tooltip/Tooltip.tsx +98 -66
- package/src/components/Typography/Headline/Headline.tsx +15 -1
- package/src/components/View/Readme.md +2 -0
- package/src/components/View/View.tsx +451 -514
- package/src/components/WriteBar/WriteBar.css +27 -33
- package/src/components/WriteBar/WriteBar.tsx +16 -5
- package/src/components/WriteBarIcon/WriteBarIcon.css +6 -19
- package/src/components/WriteBarIcon/WriteBarIcon.tsx +6 -6
- package/src/hooks/useOrientationChange.ts +1 -0
- package/src/styles/components.css +1 -0
- package/src/styles/constants.css +8 -0
- package/src/tokenized/index.ts +39 -0
- package/tsconfig.json +1 -1
- package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +0 -21
- package/dist/cjs/components/ClickPopper/ClickPopper.js +0 -96
- package/dist/cjs/components/ClickPopper/ClickPopper.js.map +0 -1
- package/dist/components/ClickPopper/ClickPopper.d.ts +0 -21
- package/dist/components/ClickPopper/ClickPopper.js +0 -71
- package/dist/components/ClickPopper/ClickPopper.js.map +0 -1
- package/dist/cssm/components/ClickPopper/ClickPopper.d.ts +0 -21
- package/dist/cssm/components/ClickPopper/ClickPopper.js +0 -71
- package/dist/cssm/components/ClickPopper/ClickPopper.js.map +0 -1
- package/src/components/ClickPopper/ClickPopper.tsx +0 -86
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.PopperArrow = void 0;
|
|
9
|
+
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _jsxRuntime = require("../../lib/jsxRuntime");
|
|
13
|
+
|
|
14
|
+
var PopperArrow = function PopperArrow(_ref) {
|
|
15
|
+
var style = _ref.style,
|
|
16
|
+
attributes = _ref.attributes,
|
|
17
|
+
arrowClassName = _ref.arrowClassName;
|
|
18
|
+
return (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({
|
|
19
|
+
style: style
|
|
20
|
+
}, attributes, {
|
|
21
|
+
vkuiClass: "PopperArrow",
|
|
22
|
+
"data-popper-arrow": true
|
|
23
|
+
}), (0, _jsxRuntime.createScopedElement)("svg", {
|
|
24
|
+
vkuiClass: "PopperArrow__in",
|
|
25
|
+
className: arrowClassName,
|
|
26
|
+
width: "20",
|
|
27
|
+
height: "8",
|
|
28
|
+
viewBox: "0 0 20 8",
|
|
29
|
+
fill: "none",
|
|
30
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
31
|
+
}, (0, _jsxRuntime.createScopedElement)("path", {
|
|
32
|
+
fillRule: "evenodd",
|
|
33
|
+
clipRule: "evenodd",
|
|
34
|
+
d: "M10 0C13 0 15.9999 8 20 8H0C3.9749 8 7 0 10 0Z",
|
|
35
|
+
fill: "currentColor"
|
|
36
|
+
})));
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
exports.PopperArrow = PopperArrow;
|
|
40
|
+
//# sourceMappingURL=PopperArrow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/PopperArrow/PopperArrow.tsx"],"names":["PopperArrow","style","attributes","arrowClassName"],"mappings":";;;;;;;;;;;;;AASO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAIH;AAAA,MAHtBC,KAGsB,QAHtBA,KAGsB;AAAA,MAFtBC,UAEsB,QAFtBA,UAEsB;AAAA,MADtBC,cACsB,QADtBA,cACsB;AACtB,SACE;AACE,IAAA,KAAK,EAAEF;AADT,KAEMC,UAFN;AAGE,IAAA,SAAS,EAAC,aAHZ;AAIE,yBAAmB;AAJrB,MAME;AACE,IAAA,SAAS,EAAC,iBADZ;AAEE,IAAA,SAAS,EAAEC,cAFb;AAGE,IAAA,KAAK,EAAC,IAHR;AAIE,IAAA,MAAM,EAAC,GAJT;AAKE,IAAA,OAAO,EAAC,UALV;AAME,IAAA,IAAI,EAAC,MANP;AAOE,IAAA,KAAK,EAAC;AAPR,KASE;AACE,IAAA,QAAQ,EAAC,SADX;AAEE,IAAA,QAAQ,EAAC,SAFX;AAGE,IAAA,CAAC,EAAC,gDAHJ;AAIE,IAAA,IAAI,EAAC;AAJP,IATF,CANF,CADF;AAyBD,CA9BM","sourcesContent":["import * as React from \"react\";\nimport \"./PopperArrow.css\";\n\nexport interface PopperArrowProps {\n style?: React.CSSProperties;\n attributes?: React.HTMLAttributes<HTMLDivElement> | null;\n arrowClassName?: string;\n}\n\nexport const PopperArrow = ({\n style,\n attributes,\n arrowClassName,\n}: PopperArrowProps) => {\n return (\n <div\n style={style}\n {...attributes}\n vkuiClass=\"PopperArrow\"\n data-popper-arrow={true}\n >\n <svg\n vkuiClass=\"PopperArrow__in\"\n className={arrowClassName}\n width=\"20\"\n height=\"8\"\n viewBox=\"0 0 20 8\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M10 0C13 0 15.9999 8 20 8H0C3.9749 8 7 0 10 0Z\"\n fill=\"currentColor\"\n />\n </svg>\n </div>\n );\n};\n"],"file":"PopperArrow.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Radio/Radio.tsx"],"names":["RadioIcon","props","RadioComponent","children","description","style","className","getRootRef","sizeY","restProps","platform","RadioTypography","VKCOM","SizeType","COMPACT","Text","Headline","IOS","ACTIVE_EFFECT_DELAY","disabled","Radio"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;;;AAGA,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAACC,KAAD,EAA0C;AAC1D,SACE;AACE,IAAA,KAAK,EAAC,4BADR;AAEE,IAAA,OAAO,EAAC,WAFV;AAGE;AAHF,KAIMA,KAJN,GAME;AACE,IAAA,EAAE,EAAC,IADL;AAEE,IAAA,EAAE,EAAC,IAFL;AAGE,IAAA,CAAC,EAAC,IAHJ;AAIE,IAAA,MAAM,EAAC,cAJT;AAKE,IAAA,WAAW,EAAC,GALd;AAME,IAAA,IAAI,EAAC;AANP,IANF,EAcE;AACE,IAAA,EAAE,EAAC,IADL;AAEE,IAAA,EAAE,EAAC,IAFL;AAGE,IAAA,CAAC,EAAC,KAHJ;AAIE,IAAA,SAAS,EAAC,YAJZ;AAKE,IAAA,IAAI,EAAC;AALP,IAdF,CADF;AAwBD,CAzBD;;AAmCA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,OAQL;AAAA,MAPhBC,QAOgB,QAPhBA,QAOgB;AAAA,MANhBC,WAMgB,QANhBA,WAMgB;AAAA,MALhBC,KAKgB,QALhBA,KAKgB;AAAA,MAJhBC,SAIgB,QAJhBA,SAIgB;AAAA,MAHhBC,UAGgB,QAHhBA,UAGgB;AAAA,MAFhBC,KAEgB,QAFhBA,KAEgB;AAAA,MADbC,SACa;AAChB,MAAMC,QAAQ,GAAG,+BAAjB;AAEA,MAAMC,eAAe,GACnBD,QAAQ,KAAKE,eAAb,IAAsBJ,KAAK,KAAKK,yBAASC,OAAzC,GAAmDC,UAAnD,GAA0DC,kBAD5D;AAGA,SACE,qCAAC,kBAAD;AACE,IAAA,SAAS,EAAC,OADZ;AAEE,IAAA,KAAK,EAAEX,KAFT;AAGE,IAAA,SAAS,EAAEC,SAHb;AAIE,IAAA,SAAS,EAAE,4BAAW,OAAX,yBAAoCE,KAApC,EAJb;AAKE,IAAA,iBAAiB,EAAEE,QAAQ,KAAKO,aAAb,GAAmB,GAAnB,GAAyBC,6BAL9C;AAME,IAAA,QAAQ,EAAET,SAAS,CAACU,QANtB;AAOE,IAAA,UAAU,EAAEZ;AAPd,KASE,qCAAC,wCAAD,6BACME,SADN;AAEE,IAAA,SAAS,EAAC,cAFZ;AAGE,IAAA,IAAI,EAAC;AAHP,KATF,EAcE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,qCAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,IADF,EAEE,qCAAC,eAAD;AAAiB,IAAA,SAAS,EAAC,gBAA3B;AAA4C,IAAA,SAAS,EAAC;AAAtD,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCN,QAAlC,CADF,EAEG,yBAAaC,WAAb,KACC,qCAAC,gBAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAyCA,WAAzC,CAHJ,CAFF,CAdF,CADF;AA0BD,CAxCD;AA0CA;AACA;AACA;;;AACO,IAAMgB,KAAK,GAAG,oCAAelB,cAAf,EAA+B;AAClDM,EAAAA,KAAK,EAAE;AAD2C,CAA/B,CAAd","sourcesContent":["import * as React from \"react\";\nimport { ACTIVE_EFFECT_DELAY, Tappable } from \"../Tappable/Tappable\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS, VKCOM } from \"../../lib/platform\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n withAdaptivity,\n AdaptivityProps,\n SizeType,\n} from \"../../hoc/withAdaptivity\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { VisuallyHiddenInput } from \"../VisuallyHiddenInput/VisuallyHiddenInput\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Text } from \"../Typography/Text/Text\";\nimport \"./Radio.css\";\n\nconst RadioIcon = (props: React.SVGProps<SVGSVGElement>) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n aria-hidden\n {...props}\n >\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"11\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n fill=\"none\"\n />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"7.5\"\n vkuiClass=\"Radio__pin\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport interface RadioProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLLabelElement>,\n AdaptivityProps {\n description?: React.ReactNode;\n}\n\nconst RadioComponent = ({\n children,\n description,\n style,\n className,\n getRootRef,\n sizeY,\n ...restProps\n}: RadioProps) => {\n const platform = usePlatform();\n\n const RadioTypography =\n platform === VKCOM || sizeY === SizeType.COMPACT ? Text : Headline;\n\n return (\n <Tappable\n Component=\"label\"\n style={style}\n className={className}\n vkuiClass={classNames(\"Radio\", `Radio--sizeY-${sizeY}`)}\n activeEffectDelay={platform === IOS ? 100 : ACTIVE_EFFECT_DELAY}\n disabled={restProps.disabled}\n getRootRef={getRootRef}\n >\n <VisuallyHiddenInput\n {...restProps}\n vkuiClass=\"Radio__input\"\n type=\"radio\"\n />\n <div vkuiClass=\"Radio__container\">\n <RadioIcon vkuiClass=\"Radio__icon\" />\n <RadioTypography vkuiClass=\"Radio__content\" Component=\"div\">\n <div vkuiClass=\"Radio__children\">{children}</div>\n {hasReactNode(description) && (\n <Caption vkuiClass=\"Radio__description\">{description}</Caption>\n )}\n </RadioTypography>\n </div>\n </Tappable>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Radio\n */\nexport const Radio = withAdaptivity(RadioComponent, {\n sizeY: true,\n});\n"],"file":"Radio.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Radio/Radio.tsx"],"names":["RadioIcon","props","RadioComponent","children","description","style","className","getRootRef","sizeY","restProps","platform","RadioTypography","VKCOM","SizeType","COMPACT","Text","Headline","IOS","ACTIVE_EFFECT_DELAY","disabled","Radio","displayName"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;;;AAGA,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAACC,KAAD,EAA0C;AAC1D,SACE;AACE,IAAA,KAAK,EAAC,4BADR;AAEE,IAAA,OAAO,EAAC,WAFV;AAGE;AAHF,KAIMA,KAJN,GAME;AACE,IAAA,EAAE,EAAC,IADL;AAEE,IAAA,EAAE,EAAC,IAFL;AAGE,IAAA,CAAC,EAAC,IAHJ;AAIE,IAAA,MAAM,EAAC,cAJT;AAKE,IAAA,WAAW,EAAC,GALd;AAME,IAAA,IAAI,EAAC;AANP,IANF,EAcE;AACE,IAAA,EAAE,EAAC,IADL;AAEE,IAAA,EAAE,EAAC,IAFL;AAGE,IAAA,CAAC,EAAC,KAHJ;AAIE,IAAA,SAAS,EAAC,YAJZ;AAKE,IAAA,IAAI,EAAC;AALP,IAdF,CADF;AAwBD,CAzBD;;AAmCA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,OAQL;AAAA,MAPhBC,QAOgB,QAPhBA,QAOgB;AAAA,MANhBC,WAMgB,QANhBA,WAMgB;AAAA,MALhBC,KAKgB,QALhBA,KAKgB;AAAA,MAJhBC,SAIgB,QAJhBA,SAIgB;AAAA,MAHhBC,UAGgB,QAHhBA,UAGgB;AAAA,MAFhBC,KAEgB,QAFhBA,KAEgB;AAAA,MADbC,SACa;AAChB,MAAMC,QAAQ,GAAG,+BAAjB;AAEA,MAAMC,eAAe,GACnBD,QAAQ,KAAKE,eAAb,IAAsBJ,KAAK,KAAKK,yBAASC,OAAzC,GAAmDC,UAAnD,GAA0DC,kBAD5D;AAGA,SACE,qCAAC,kBAAD;AACE,IAAA,SAAS,EAAC,OADZ;AAEE,IAAA,KAAK,EAAEX,KAFT;AAGE,IAAA,SAAS,EAAEC,SAHb;AAIE,IAAA,SAAS,EAAE,4BAAW,OAAX,yBAAoCE,KAApC,EAJb;AAKE,IAAA,iBAAiB,EAAEE,QAAQ,KAAKO,aAAb,GAAmB,GAAnB,GAAyBC,6BAL9C;AAME,IAAA,QAAQ,EAAET,SAAS,CAACU,QANtB;AAOE,IAAA,UAAU,EAAEZ;AAPd,KASE,qCAAC,wCAAD,6BACME,SADN;AAEE,IAAA,SAAS,EAAC,cAFZ;AAGE,IAAA,IAAI,EAAC;AAHP,KATF,EAcE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,qCAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,IADF,EAEE,qCAAC,eAAD;AAAiB,IAAA,SAAS,EAAC,gBAA3B;AAA4C,IAAA,SAAS,EAAC;AAAtD,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCN,QAAlC,CADF,EAEG,yBAAaC,WAAb,KACC,qCAAC,gBAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAyCA,WAAzC,CAHJ,CAFF,CAdF,CADF;AA0BD,CAxCD;AA0CA;AACA;AACA;;;AACO,IAAMgB,KAAK,GAAG,oCAAelB,cAAf,EAA+B;AAClDM,EAAAA,KAAK,EAAE;AAD2C,CAA/B,CAAd;;AAIPY,KAAK,CAACC,WAAN,GAAoB,OAApB","sourcesContent":["import * as React from \"react\";\nimport { ACTIVE_EFFECT_DELAY, Tappable } from \"../Tappable/Tappable\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS, VKCOM } from \"../../lib/platform\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n withAdaptivity,\n AdaptivityProps,\n SizeType,\n} from \"../../hoc/withAdaptivity\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { VisuallyHiddenInput } from \"../VisuallyHiddenInput/VisuallyHiddenInput\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Text } from \"../Typography/Text/Text\";\nimport \"./Radio.css\";\n\nconst RadioIcon = (props: React.SVGProps<SVGSVGElement>) => {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n aria-hidden\n {...props}\n >\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"11\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n fill=\"none\"\n />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"7.5\"\n vkuiClass=\"Radio__pin\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n\nexport interface RadioProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLLabelElement>,\n AdaptivityProps {\n description?: React.ReactNode;\n}\n\nconst RadioComponent = ({\n children,\n description,\n style,\n className,\n getRootRef,\n sizeY,\n ...restProps\n}: RadioProps) => {\n const platform = usePlatform();\n\n const RadioTypography =\n platform === VKCOM || sizeY === SizeType.COMPACT ? Text : Headline;\n\n return (\n <Tappable\n Component=\"label\"\n style={style}\n className={className}\n vkuiClass={classNames(\"Radio\", `Radio--sizeY-${sizeY}`)}\n activeEffectDelay={platform === IOS ? 100 : ACTIVE_EFFECT_DELAY}\n disabled={restProps.disabled}\n getRootRef={getRootRef}\n >\n <VisuallyHiddenInput\n {...restProps}\n vkuiClass=\"Radio__input\"\n type=\"radio\"\n />\n <div vkuiClass=\"Radio__container\">\n <RadioIcon vkuiClass=\"Radio__icon\" />\n <RadioTypography vkuiClass=\"Radio__content\" Component=\"div\">\n <div vkuiClass=\"Radio__children\">{children}</div>\n {hasReactNode(description) && (\n <Caption vkuiClass=\"Radio__description\">{description}</Caption>\n )}\n </RadioTypography>\n </div>\n </Tappable>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Radio\n */\nexport const Radio = withAdaptivity(RadioComponent, {\n sizeY: true,\n});\n\nRadio.displayName = \"Radio\";\n"],"file":"Radio.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/RangeSlider/UniversalSlider.tsx"],"names":["UniversalSliderDumb","min","max","step","value","defaultValue","onChange","getRootRef","sizeY","disabled","restProps","start","end","isRange","gesture","React","useRef","dragging","startX","containerWidth","current","container","thumbStart","thumbEnd","offsetToValue","absolute","updateRange","nextValue","snapDirection","pos","target","Math","abs","onStart","e","boundingRect","getBoundingClientRect","width","absolutePosition","left","originalEvent","stopPropagation","onMove","shiftX","preventDefault","onEnd","toPercent","v","draggerStyle","join","UniversalSlider"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchEvent, TouchEventHandler } from \"../Touch/Touch\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRootRef } from \"../../types\";\nimport { rescale } from \"../../helpers/math\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport \"../Slider/Slider.css\";\n\nexport type UniversalValue = [number | null, number];\n\nexport interface UniversalSliderProps<Value>\n extends HasRootRef<HTMLDivElement>,\n Omit<\n React.HTMLAttributes<HTMLDivElement>,\n \"value\" | \"defaultValue\" | \"onChange\"\n >,\n AdaptivityProps {\n min?: number;\n max?: number;\n step?: number;\n value?: Value;\n defaultValue?: Value;\n disabled?: boolean;\n onChange?(value: Value, e: TouchEvent): void;\n}\n\nconst UniversalSliderDumb = ({\n min = 0,\n max = 100,\n step,\n value = [0, 0],\n defaultValue,\n onChange,\n getRootRef,\n sizeY,\n disabled,\n ...restProps\n}: UniversalSliderProps<UniversalValue>) => {\n const [start, end] = value;\n const isRange = start != null;\n const gesture = React.useRef({\n dragging: false as false | \"start\" | \"end\",\n startX: 0,\n containerWidth: 0,\n }).current;\n const container = useExternRef(getRootRef);\n const thumbStart = React.useRef<HTMLDivElement>(null);\n const thumbEnd = React.useRef<HTMLDivElement>(null);\n\n const offsetToValue = (absolute: number) => {\n return rescale(absolute, [0, gesture.containerWidth], [min, max], { step });\n };\n\n const updateRange = (nextValue: number): UniversalValue => {\n if (start == null) {\n return [null, nextValue];\n }\n\n const { dragging } = gesture;\n if (dragging === \"start\") {\n if (nextValue > end) {\n // \"перехватиться\", если перетянули за конец\n gesture.dragging = \"end\";\n return [end, nextValue];\n }\n return [nextValue, end];\n }\n if (dragging === \"end\") {\n if (nextValue < start) {\n // \"перехватиться\", если перетянули за начало\n gesture.dragging = \"start\";\n return [nextValue, start];\n }\n return [start, nextValue];\n }\n\n return value;\n };\n\n const snapDirection = (pos: number, target: EventTarget | null) => {\n if (target === thumbStart.current) {\n return \"start\";\n }\n if (target === thumbEnd.current) {\n return \"end\";\n }\n return Math.abs((start ?? 0) - pos) <= Math.abs(end - pos)\n ? \"start\"\n : \"end\";\n };\n\n const onStart: TouchEventHandler = (e: TouchEvent) => {\n const boundingRect = container.current?.getBoundingClientRect();\n gesture.containerWidth = boundingRect?.width ?? 0;\n\n const absolutePosition = e.startX - (boundingRect?.left ?? 0);\n const pos = offsetToValue(absolutePosition);\n gesture.dragging = snapDirection(pos, e.originalEvent.target);\n gesture.startX = absolutePosition;\n\n onChange?.(updateRange(pos), e);\n e.originalEvent.stopPropagation();\n };\n\n const onMove: TouchEventHandler = (e: TouchEvent) => {\n onChange?.(updateRange(offsetToValue(gesture.startX + (e.shiftX || 0))), e);\n\n e.originalEvent.stopPropagation();\n e.originalEvent.preventDefault();\n };\n\n const onEnd: TouchEventHandler = (e) => {\n gesture.dragging = false;\n e.originalEvent.stopPropagation();\n };\n\n const toPercent = (v: number) => ((v - min) / (max - min)) * 100;\n const draggerStyle = isRange\n ? {\n width: `${toPercent(end) - toPercent(start ?? 0)}%`,\n left: `${toPercent(start ?? 0)}%`,\n }\n : {\n width: `${toPercent(end)}%`,\n };\n\n return (\n <Touch\n data-value={isRange ? value.join(\",\") : value}\n {...restProps}\n {...(disabled ? {} : { onStart, onMove, onEnd })}\n vkuiClass={classNames(\n \"Slider\",\n `Slider--sizeY-${sizeY}`,\n disabled && \"Slider--disabled\"\n )}\n >\n <div ref={container} vkuiClass=\"Slider__in\">\n <div vkuiClass=\"Slider__dragger\" style={draggerStyle}>\n {isRange && (\n <span\n vkuiClass={classNames(\"Slider__thumb\", \"Slider__thumb--start\")}\n ref={thumbStart}\n />\n )}\n <span\n vkuiClass={classNames(\"Slider__thumb\", \"Slider__thumb--end\")}\n ref={thumbEnd}\n />\n </div>\n </div>\n </Touch>\n );\n};\n\nexport const UniversalSlider = withAdaptivity(UniversalSliderDumb, {\n sizeY: true,\n});\n"],"file":"UniversalSlider.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/RangeSlider/UniversalSlider.tsx"],"names":["UniversalSliderDumb","min","max","step","value","defaultValue","onChange","getRootRef","sizeY","disabled","restProps","start","end","isRange","gesture","React","useRef","dragging","startX","containerWidth","current","container","thumbStart","thumbEnd","offsetToValue","absolute","updateRange","nextValue","snapDirection","pos","target","Math","abs","onStart","e","boundingRect","getBoundingClientRect","width","absolutePosition","left","originalEvent","stopPropagation","onMove","shiftX","preventDefault","onEnd","toPercent","v","draggerStyle","join","UniversalSlider","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchEvent, TouchEventHandler } from \"../Touch/Touch\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRootRef } from \"../../types\";\nimport { rescale } from \"../../helpers/math\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport \"../Slider/Slider.css\";\n\nexport type UniversalValue = [number | null, number];\n\nexport interface UniversalSliderProps<Value>\n extends HasRootRef<HTMLDivElement>,\n Omit<\n React.HTMLAttributes<HTMLDivElement>,\n \"value\" | \"defaultValue\" | \"onChange\"\n >,\n AdaptivityProps {\n min?: number;\n max?: number;\n step?: number;\n value?: Value;\n defaultValue?: Value;\n disabled?: boolean;\n onChange?(value: Value, e: TouchEvent): void;\n}\n\nconst UniversalSliderDumb = ({\n min = 0,\n max = 100,\n step,\n value = [0, 0],\n defaultValue,\n onChange,\n getRootRef,\n sizeY,\n disabled,\n ...restProps\n}: UniversalSliderProps<UniversalValue>) => {\n const [start, end] = value;\n const isRange = start != null;\n const gesture = React.useRef({\n dragging: false as false | \"start\" | \"end\",\n startX: 0,\n containerWidth: 0,\n }).current;\n const container = useExternRef(getRootRef);\n const thumbStart = React.useRef<HTMLDivElement>(null);\n const thumbEnd = React.useRef<HTMLDivElement>(null);\n\n const offsetToValue = (absolute: number) => {\n return rescale(absolute, [0, gesture.containerWidth], [min, max], { step });\n };\n\n const updateRange = (nextValue: number): UniversalValue => {\n if (start == null) {\n return [null, nextValue];\n }\n\n const { dragging } = gesture;\n if (dragging === \"start\") {\n if (nextValue > end) {\n // \"перехватиться\", если перетянули за конец\n gesture.dragging = \"end\";\n return [end, nextValue];\n }\n return [nextValue, end];\n }\n if (dragging === \"end\") {\n if (nextValue < start) {\n // \"перехватиться\", если перетянули за начало\n gesture.dragging = \"start\";\n return [nextValue, start];\n }\n return [start, nextValue];\n }\n\n return value;\n };\n\n const snapDirection = (pos: number, target: EventTarget | null) => {\n if (target === thumbStart.current) {\n return \"start\";\n }\n if (target === thumbEnd.current) {\n return \"end\";\n }\n return Math.abs((start ?? 0) - pos) <= Math.abs(end - pos)\n ? \"start\"\n : \"end\";\n };\n\n const onStart: TouchEventHandler = (e: TouchEvent) => {\n const boundingRect = container.current?.getBoundingClientRect();\n gesture.containerWidth = boundingRect?.width ?? 0;\n\n const absolutePosition = e.startX - (boundingRect?.left ?? 0);\n const pos = offsetToValue(absolutePosition);\n gesture.dragging = snapDirection(pos, e.originalEvent.target);\n gesture.startX = absolutePosition;\n\n onChange?.(updateRange(pos), e);\n e.originalEvent.stopPropagation();\n };\n\n const onMove: TouchEventHandler = (e: TouchEvent) => {\n onChange?.(updateRange(offsetToValue(gesture.startX + (e.shiftX || 0))), e);\n\n e.originalEvent.stopPropagation();\n e.originalEvent.preventDefault();\n };\n\n const onEnd: TouchEventHandler = (e) => {\n gesture.dragging = false;\n e.originalEvent.stopPropagation();\n };\n\n const toPercent = (v: number) => ((v - min) / (max - min)) * 100;\n const draggerStyle = isRange\n ? {\n width: `${toPercent(end) - toPercent(start ?? 0)}%`,\n left: `${toPercent(start ?? 0)}%`,\n }\n : {\n width: `${toPercent(end)}%`,\n };\n\n return (\n <Touch\n data-value={isRange ? value.join(\",\") : value}\n {...restProps}\n {...(disabled ? {} : { onStart, onMove, onEnd })}\n vkuiClass={classNames(\n \"Slider\",\n `Slider--sizeY-${sizeY}`,\n disabled && \"Slider--disabled\"\n )}\n >\n <div ref={container} vkuiClass=\"Slider__in\">\n <div vkuiClass=\"Slider__dragger\" style={draggerStyle}>\n {isRange && (\n <span\n vkuiClass={classNames(\"Slider__thumb\", \"Slider__thumb--start\")}\n ref={thumbStart}\n />\n )}\n <span\n vkuiClass={classNames(\"Slider__thumb\", \"Slider__thumb--end\")}\n ref={thumbEnd}\n />\n </div>\n </div>\n </Touch>\n );\n};\n\nexport const UniversalSlider = withAdaptivity(UniversalSliderDumb, {\n sizeY: true,\n});\n\nUniversalSlider.displayName = \"UniversalSlider\";\n"],"file":"UniversalSlider.js"}
|
|
@@ -11,23 +11,15 @@ var _jsxRuntime = require("../../lib/jsxRuntime");
|
|
|
11
11
|
|
|
12
12
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
13
|
|
|
14
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
-
|
|
16
14
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
17
15
|
|
|
18
16
|
var _HoverPopper = require("../HoverPopper/HoverPopper");
|
|
19
17
|
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
var _usePlatform = require("../../hooks/usePlatform");
|
|
23
|
-
|
|
24
|
-
var _useAppearance = require("../../hooks/useAppearance");
|
|
25
|
-
|
|
26
|
-
var _classNames2 = require("../../lib/classNames");
|
|
18
|
+
var _classNames = require("../../lib/classNames");
|
|
27
19
|
|
|
28
20
|
var _prefixClass = require("../../lib/prefixClass");
|
|
29
21
|
|
|
30
|
-
var _excluded = ["children", "arrow"];
|
|
22
|
+
var _excluded = ["children", "arrow", "appearance"];
|
|
31
23
|
|
|
32
24
|
/**
|
|
33
25
|
* @see https://vkcom.github.io/VKUI/#/RichTooltip
|
|
@@ -36,12 +28,11 @@ var RichTooltip = function RichTooltip(_ref) {
|
|
|
36
28
|
var children = _ref.children,
|
|
37
29
|
_ref$arrow = _ref.arrow,
|
|
38
30
|
arrow = _ref$arrow === void 0 ? true : _ref$arrow,
|
|
31
|
+
_ref$appearance = _ref.appearance,
|
|
32
|
+
appearance = _ref$appearance === void 0 ? "neutral" : _ref$appearance,
|
|
39
33
|
popperProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
return (0, _jsxRuntime.createScopedElement)(_HoverPopper.HoverPopper // eslint-disable-next-line vkui/no-object-expression-in-arguments
|
|
43
|
-
, (0, _extends2.default)({
|
|
44
|
-
vkuiClass: (0, _classNames2.classNames)((0, _getClassName.getClassName)("RichTooltip", platform), (0, _defineProperty2.default)({}, "RichTooltip--".concat(appearance), !!appearance)),
|
|
34
|
+
return (0, _jsxRuntime.createScopedElement)(_HoverPopper.HoverPopper, (0, _extends2.default)({
|
|
35
|
+
vkuiClass: (0, _classNames.classNames)("RichTooltip", "RichTooltip--".concat(appearance)),
|
|
45
36
|
arrow: arrow,
|
|
46
37
|
arrowClassName: (0, _prefixClass.prefixClass)("RichTooltip__arrow")
|
|
47
38
|
}, popperProps), children);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/RichTooltip/RichTooltip.tsx"],"names":["RichTooltip","children","arrow","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/RichTooltip/RichTooltip.tsx"],"names":["RichTooltip","children","arrow","appearance","popperProps"],"mappings":";;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;AAWA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAKH;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,wBAHtBC,KAGsB;AAAA,MAHtBA,KAGsB,2BAHd,IAGc;AAAA,6BAFtBC,UAEsB;AAAA,MAFtBA,UAEsB,gCAFT,SAES;AAAA,MADnBC,WACmB;AACtB,SACE,qCAAC,wBAAD;AACE,IAAA,SAAS,EAAE,4BAAW,aAAX,yBAA0CD,UAA1C,EADb;AAEE,IAAA,KAAK,EAAED,KAFT;AAGE,IAAA,cAAc,EAAE,8BAAY,oBAAZ;AAHlB,KAIME,WAJN,GAMGH,QANH,CADF;AAUD,CAhBM","sourcesContent":["import { HoverPopper, HoverPopperProps } from \"../HoverPopper/HoverPopper\";\nimport { classNames } from \"../../lib/classNames\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport \"./RichTooltip.css\";\n\nexport interface RichTooltipProps\n extends Omit<HoverPopperProps, \"arrowClassName\"> {\n /**\n * Стиль отображения подсказки\n */\n appearance?: \"accent\" | \"neutral\" | \"white\" | \"black\" | \"inversion\";\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RichTooltip\n */\nexport const RichTooltip = ({\n children,\n arrow = true,\n appearance = \"neutral\",\n ...popperProps\n}: RichTooltipProps) => {\n return (\n <HoverPopper\n vkuiClass={classNames(\"RichTooltip\", `RichTooltip--${appearance}`)}\n arrow={arrow}\n arrowClassName={prefixClass(\"RichTooltip__arrow\")}\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"file":"RichTooltip.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Select/Select.tsx"],"names":["SelectType","default","plain","accent","SelectTypography","selectType","children","restProps","platform","sizeY","Platform","ANDROID","Component","VKCOM","SizeType","COMPACT","Text","Headline","SelectComponent","hasMouse","props","options","popupDirection","renderOption","map","label","value","Select"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;;;;;AAEO,IAAMA,UAAU,GAAG;AACxBC,EAAAA,OAAO,EAAE,SADe;AAExBC,EAAAA,KAAK,EAAE,OAFiB;AAGxBC,EAAAA,MAAM,EAAE;AAHgB,CAAnB,C,CAMP;;AACA;AACA;AACA;;;;AACO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,OAIsC;AAAA,6BAHpEC,UAGoE;AAAA,MAHpEA,UAGoE,gCAHvDL,UAAU,CAACC,OAG4C;AAAA,MAFpEK,QAEoE,QAFpEA,QAEoE;AAAA,MADjEC,SACiE;AACpE,MAAMC,QAAQ,GAAG,+BAAjB;;AACA,uBAAkB,oCAAlB;AAAA,MAAQC,KAAR,kBAAQA,KAAR;;AAEA,MAAIJ,UAAU,KAAKL,UAAU,CAACG,MAA9B,EAAsC;AACpC,WACE,qCAAC,oBAAD;AACE,MAAA,MAAM,EAAEK,QAAQ,KAAKE,mBAASC,OAAtB,GAAgC,GAAhC,GAAsC;AADhD,OAEMJ,SAFN,GAIGD,QAJH,CADF;AAQD;;AAED,MAAMM,SAAS,GACbJ,QAAQ,KAAKK,eAAb,IAAsBJ,KAAK,KAAKK,4BAASC,OAAzC,GAAmDC,UAAnD,GAA0DC,kBAD5D;AAGA,SACE,qCAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,KAAgCV,SAAhC,GACGD,QADH,CADF;AAKD,CA3BM;;;;AA+BP,IAAMY,eAAe,GAAG,SAAlBA,eAAkB,QAGwB;AAAA,MAF9CC,QAE8C,SAF9CA,QAE8C;AAAA,MAD3CC,KAC2C;;AAC9C;AACA,MAAID,QAAJ,EAAc;AACZ,QAAQb,QAAR,GAAmCc,KAAnC,CAAQd,QAAR;AAAA,QAAqBC,UAArB,0CAAmCa,KAAnC;;AAEA,WAAO,qCAAC,0BAAD,EAAkBb,UAAlB,CAAP;AACD;;AAED,uBAAqEa,KAArE,CAAQC,OAAR;AAAA,MAAQA,OAAR,+BAAkB,EAAlB;AAAA,MAAsBC,cAAtB,GAAqEF,KAArE,CAAsBE,cAAtB;AAAA,MAAsCC,YAAtC,GAAqEH,KAArE,CAAsCG,YAAtC;AAAA,MAAuDhB,SAAvD,0CAAqEa,KAArE;AAEA,SACE,qCAAC,0BAAD,EAAkBb,SAAlB,EACGc,OAAO,CAACG,GAAR,CAAY;AAAA,QAAGC,KAAH,SAAGA,KAAH;AAAA,QAAUC,KAAV,SAAUA,KAAV;AAAA,WACX;AAAQ,MAAA,KAAK,EAAEA,KAAf;AAAsB,MAAA,GAAG,YAAKA,KAAL;AAAzB,OACGD,KADH,CADW;AAAA,GAAZ,CADH,CADF;AASD,CAtBD;AAwBA;AACA;AACA;;;AACO,IAAME,MAAM,GAAG,oCAAeT,eAAf,EAAgC;AACpDC,EAAAA,QAAQ,EAAE;AAD0C,CAAhC,CAAf","sourcesContent":["import * as React from \"react\";\nimport { NativeSelect } from \"../NativeSelect/NativeSelect\";\nimport { CustomSelect, CustomSelectProps } from \"../CustomSelect/CustomSelect\";\nimport { withAdaptivity } from \"../../hoc/withAdaptivity\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { Platform, VKCOM } from \"../../lib/platform\";\nimport {\n AdaptivityContextInterface,\n AdaptivityProps,\n SizeType,\n} from \"../AdaptivityProvider/AdaptivityContext\";\nimport { Paragraph } from \"../Typography/Paragraph/Paragraph\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Headline } from \"../Typography/Headline/Headline\";\n\nexport const SelectType = {\n default: \"default\",\n plain: \"plain\",\n accent: \"accent\",\n} as const;\n\n// TODO v5.0.0 поправить под новую адаптивность\n/**\n * @see https://vkcom.github.io/VKUI/#/SelectTypography\n */\nexport const SelectTypography = ({\n selectType = SelectType.default,\n children,\n ...restProps\n}: React.PropsWithChildren<Pick<CustomSelectProps, \"selectType\">>) => {\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n\n if (selectType === SelectType.accent) {\n return (\n <Paragraph\n weight={platform === Platform.ANDROID ? \"2\" : \"1\"}\n {...restProps}\n >\n {children}\n </Paragraph>\n );\n }\n\n const Component =\n platform === VKCOM || sizeY === SizeType.COMPACT ? Text : Headline;\n\n return (\n <Component Component=\"span\" {...restProps}>\n {children}\n </Component>\n );\n};\n\nexport interface SelectProps extends CustomSelectProps, AdaptivityProps {}\n\nconst SelectComponent = ({\n hasMouse,\n ...props\n}: SelectProps & AdaptivityContextInterface) => {\n // Use custom select if device has connected a mouse\n if (hasMouse) {\n const { children, ...restProps } = props;\n\n return <CustomSelect {...restProps} />;\n }\n\n const { options = [], popupDirection, renderOption, ...restProps } = props;\n\n return (\n <NativeSelect {...restProps}>\n {options.map(({ label, value }) => (\n <option value={value} key={`${value}`}>\n {label}\n </option>\n ))}\n </NativeSelect>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Select\n */\nexport const Select = withAdaptivity(SelectComponent, {\n hasMouse: true,\n});\n"],"file":"Select.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Select/Select.tsx"],"names":["SelectType","default","plain","accent","SelectTypography","selectType","children","restProps","platform","sizeY","Platform","ANDROID","Component","VKCOM","SizeType","COMPACT","Text","Headline","SelectComponent","hasMouse","props","options","popupDirection","renderOption","map","label","value","Select","displayName"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;;;;;AAEO,IAAMA,UAAU,GAAG;AACxBC,EAAAA,OAAO,EAAE,SADe;AAExBC,EAAAA,KAAK,EAAE,OAFiB;AAGxBC,EAAAA,MAAM,EAAE;AAHgB,CAAnB,C,CAMP;;AACA;AACA;AACA;;;;AACO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,OAIsC;AAAA,6BAHpEC,UAGoE;AAAA,MAHpEA,UAGoE,gCAHvDL,UAAU,CAACC,OAG4C;AAAA,MAFpEK,QAEoE,QAFpEA,QAEoE;AAAA,MADjEC,SACiE;AACpE,MAAMC,QAAQ,GAAG,+BAAjB;;AACA,uBAAkB,oCAAlB;AAAA,MAAQC,KAAR,kBAAQA,KAAR;;AAEA,MAAIJ,UAAU,KAAKL,UAAU,CAACG,MAA9B,EAAsC;AACpC,WACE,qCAAC,oBAAD;AACE,MAAA,MAAM,EAAEK,QAAQ,KAAKE,mBAASC,OAAtB,GAAgC,GAAhC,GAAsC;AADhD,OAEMJ,SAFN,GAIGD,QAJH,CADF;AAQD;;AAED,MAAMM,SAAS,GACbJ,QAAQ,KAAKK,eAAb,IAAsBJ,KAAK,KAAKK,4BAASC,OAAzC,GAAmDC,UAAnD,GAA0DC,kBAD5D;AAGA,SACE,qCAAC,SAAD;AAAW,IAAA,SAAS,EAAC;AAArB,KAAgCV,SAAhC,GACGD,QADH,CADF;AAKD,CA3BM;;;;AA+BP,IAAMY,eAAe,GAAG,SAAlBA,eAAkB,QAGwB;AAAA,MAF9CC,QAE8C,SAF9CA,QAE8C;AAAA,MAD3CC,KAC2C;;AAC9C;AACA,MAAID,QAAJ,EAAc;AACZ,QAAQb,QAAR,GAAmCc,KAAnC,CAAQd,QAAR;AAAA,QAAqBC,UAArB,0CAAmCa,KAAnC;;AAEA,WAAO,qCAAC,0BAAD,EAAkBb,UAAlB,CAAP;AACD;;AAED,uBAAqEa,KAArE,CAAQC,OAAR;AAAA,MAAQA,OAAR,+BAAkB,EAAlB;AAAA,MAAsBC,cAAtB,GAAqEF,KAArE,CAAsBE,cAAtB;AAAA,MAAsCC,YAAtC,GAAqEH,KAArE,CAAsCG,YAAtC;AAAA,MAAuDhB,SAAvD,0CAAqEa,KAArE;AAEA,SACE,qCAAC,0BAAD,EAAkBb,SAAlB,EACGc,OAAO,CAACG,GAAR,CAAY;AAAA,QAAGC,KAAH,SAAGA,KAAH;AAAA,QAAUC,KAAV,SAAUA,KAAV;AAAA,WACX;AAAQ,MAAA,KAAK,EAAEA,KAAf;AAAsB,MAAA,GAAG,YAAKA,KAAL;AAAzB,OACGD,KADH,CADW;AAAA,GAAZ,CADH,CADF;AASD,CAtBD;AAwBA;AACA;AACA;;;AACO,IAAME,MAAM,GAAG,oCAAeT,eAAf,EAAgC;AACpDC,EAAAA,QAAQ,EAAE;AAD0C,CAAhC,CAAf;;AAIPQ,MAAM,CAACC,WAAP,GAAqB,QAArB","sourcesContent":["import * as React from \"react\";\nimport { NativeSelect } from \"../NativeSelect/NativeSelect\";\nimport { CustomSelect, CustomSelectProps } from \"../CustomSelect/CustomSelect\";\nimport { withAdaptivity } from \"../../hoc/withAdaptivity\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { Platform, VKCOM } from \"../../lib/platform\";\nimport {\n AdaptivityContextInterface,\n AdaptivityProps,\n SizeType,\n} from \"../AdaptivityProvider/AdaptivityContext\";\nimport { Paragraph } from \"../Typography/Paragraph/Paragraph\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Headline } from \"../Typography/Headline/Headline\";\n\nexport const SelectType = {\n default: \"default\",\n plain: \"plain\",\n accent: \"accent\",\n} as const;\n\n// TODO v5.0.0 поправить под новую адаптивность\n/**\n * @see https://vkcom.github.io/VKUI/#/SelectTypography\n */\nexport const SelectTypography = ({\n selectType = SelectType.default,\n children,\n ...restProps\n}: React.PropsWithChildren<Pick<CustomSelectProps, \"selectType\">>) => {\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n\n if (selectType === SelectType.accent) {\n return (\n <Paragraph\n weight={platform === Platform.ANDROID ? \"2\" : \"1\"}\n {...restProps}\n >\n {children}\n </Paragraph>\n );\n }\n\n const Component =\n platform === VKCOM || sizeY === SizeType.COMPACT ? Text : Headline;\n\n return (\n <Component Component=\"span\" {...restProps}>\n {children}\n </Component>\n );\n};\n\nexport interface SelectProps extends CustomSelectProps, AdaptivityProps {}\n\nconst SelectComponent = ({\n hasMouse,\n ...props\n}: SelectProps & AdaptivityContextInterface) => {\n // Use custom select if device has connected a mouse\n if (hasMouse) {\n const { children, ...restProps } = props;\n\n return <CustomSelect {...restProps} />;\n }\n\n const { options = [], popupDirection, renderOption, ...restProps } = props;\n\n return (\n <NativeSelect {...restProps}>\n {options.map(({ label, value }) => (\n <option value={value} key={`${value}`}>\n {label}\n </option>\n ))}\n </NativeSelect>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Select\n */\nexport const Select = withAdaptivity(SelectComponent, {\n hasMouse: true,\n});\n\nSelect.displayName = \"Select\";\n"],"file":"Select.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SelectMimicry/SelectMimicry.tsx"],"names":["SelectMimicryComponent","tabIndex","placeholder","children","align","getRootRef","multiline","disabled","onClick","sizeX","sizeY","before","after","selectType","SelectType","default","restProps","platform","title","undefined","SelectMimicry"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAcA,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,OAeL;AAAA,2BAdxBC,QAcwB;AAAA,MAdxBA,QAcwB,8BAdb,CAca;AAAA,MAbxBC,WAawB,QAbxBA,WAawB;AAAA,MAZxBC,QAYwB,QAZxBA,QAYwB;AAAA,MAXxBC,KAWwB,QAXxBA,KAWwB;AAAA,MAVxBC,UAUwB,QAVxBA,UAUwB;AAAA,MATxBC,SASwB,QATxBA,SASwB;AAAA,MARxBC,QAQwB,QARxBA,QAQwB;AAAA,MAPxBC,OAOwB,QAPxBA,OAOwB;AAAA,MANxBC,KAMwB,QANxBA,KAMwB;AAAA,MALxBC,KAKwB,QALxBA,KAKwB;AAAA,MAJxBC,MAIwB,QAJxBA,MAIwB;AAAA,wBAHxBC,KAGwB;AAAA,MAHxBA,KAGwB,2BAHhB,qCAAC,0BAAD,OAGgB;AAAA,6BAFxBC,UAEwB;AAAA,MAFxBA,UAEwB,gCAFXC,mBAAWC,OAEA;AAAA,MADrBC,SACqB;AACxB,MAAMC,QAAQ,GAAG,+BAAjB;AACA,MAAMC,KAAK,GAAGf,QAAQ,IAAID,WAA1B;AAEA,SACE,qCAAC,oBAAD,6BACMc,SADN;AAEE,IAAA,QAAQ,EAAET,QAAQ,GAAGY,SAAH,GAAelB,QAFnC;AAGE,IAAA,SAAS,EAAE,4BACT,gCAAa,QAAb,EAAuBgB,QAAvB,CADS,oBAEEJ,UAFF,GAGT,CAACV,QAAD,IAAa,eAHJ,EAITG,SAAS,IAAI,mBAJJ,EAKTF,KAAK,4BAAqBA,KAArB,CALI,0BAMQK,KANR,GAMiB;AANjB,4BAOQC,KAPR,GAOiB;AAC1BC,IAAAA,MAAM,IAAI,mBARD,EASTC,KAAK,IAAI,kBATA,CAHb;AAcE,IAAA,UAAU,EAAEP,UAdd;AAeE,IAAA,OAAO,EAAEE,QAAQ,GAAGY,SAAH,GAAeX,OAflC;AAgBE,IAAA,QAAQ,EAAED,QAhBZ;AAiBE,IAAA,MAAM,EAAEI,MAjBV;AAkBE,IAAA,KAAK,EAAEC,KAlBT;AAmBE,IAAA,IAAI,EAAE,4CAA+BC,UAA/B;AAnBR,MAqBE;AAAK,IAAA,SAAS,EAAC;AAAf,KAEE,qCAAC,wBAAD;AAAkB,IAAA,UAAU,EAAEA,UAA9B;AAA0C,IAAA,SAAS,EAAC;AAApD,KACGK,KADH,CAFF,CArBF,CADF;AA8BD,CAjDD;AAmDA;AACA;AACA;;;AACO,IAAME,aAAa,GAAG,oCAAepB,sBAAf,EAAuC;AAClES,EAAAA,KAAK,EAAE,IAD2D;AAElEC,EAAAA,KAAK,EAAE;AAF2D,CAAvC,CAAtB","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { DropdownIcon } from \"../DropdownIcon/DropdownIcon\";\nimport { FormField, FormFieldProps } from \"../FormField/FormField\";\nimport { HasAlign, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { getFormFieldModeFromSelectType } from \"../../lib/select\";\nimport { SelectType, SelectTypography } from \"../Select/Select\";\nimport \"../Select/Select.css\";\n\nexport interface SelectMimicryProps\n extends React.HTMLAttributes<HTMLElement>,\n HasAlign,\n HasRootRef<HTMLElement>,\n AdaptivityProps,\n Pick<FormFieldProps, \"before\" | \"after\"> {\n multiline?: boolean;\n disabled?: boolean;\n selectType?: keyof typeof SelectType;\n}\n\nconst SelectMimicryComponent = ({\n tabIndex = 0,\n placeholder,\n children,\n align,\n getRootRef,\n multiline,\n disabled,\n onClick,\n sizeX,\n sizeY,\n before,\n after = <DropdownIcon />,\n selectType = SelectType.default,\n ...restProps\n}: SelectMimicryProps) => {\n const platform = usePlatform();\n const title = children || placeholder;\n\n return (\n <FormField\n {...restProps}\n tabIndex={disabled ? undefined : tabIndex}\n vkuiClass={classNames(\n getClassName(\"Select\", platform),\n `Select--${selectType}`,\n !children && \"Select--empty\",\n multiline && \"Select--multiline\",\n align && `Select--align-${align}`,\n `Select--sizeX-${sizeX}`, // TODO v5.0.0 поправить под новую адаптивность\n `Select--sizeY-${sizeY}`, // TODO v5.0.0 поправить под новую адаптивность\n before && \"Select--hasBefore\",\n after && \"Select--hasAfter\"\n )}\n getRootRef={getRootRef}\n onClick={disabled ? undefined : onClick}\n disabled={disabled}\n before={before}\n after={after}\n mode={getFormFieldModeFromSelectType(selectType)}\n >\n <div vkuiClass=\"Select__container\">\n {/* TODO v5.0.0 поправить под новую адаптивность */}\n <SelectTypography selectType={selectType} vkuiClass=\"Select__title\">\n {title}\n </SelectTypography>\n </div>\n </FormField>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/SelectMimicry\n */\nexport const SelectMimicry = withAdaptivity(SelectMimicryComponent, {\n sizeX: true,\n sizeY: true,\n});\n"],"file":"SelectMimicry.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/SelectMimicry/SelectMimicry.tsx"],"names":["SelectMimicryComponent","tabIndex","placeholder","children","align","getRootRef","multiline","disabled","onClick","sizeX","sizeY","before","after","selectType","SelectType","default","restProps","platform","title","undefined","SelectMimicry","displayName"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAcA,IAAMA,sBAAsB,GAAG,SAAzBA,sBAAyB,OAeL;AAAA,2BAdxBC,QAcwB;AAAA,MAdxBA,QAcwB,8BAdb,CAca;AAAA,MAbxBC,WAawB,QAbxBA,WAawB;AAAA,MAZxBC,QAYwB,QAZxBA,QAYwB;AAAA,MAXxBC,KAWwB,QAXxBA,KAWwB;AAAA,MAVxBC,UAUwB,QAVxBA,UAUwB;AAAA,MATxBC,SASwB,QATxBA,SASwB;AAAA,MARxBC,QAQwB,QARxBA,QAQwB;AAAA,MAPxBC,OAOwB,QAPxBA,OAOwB;AAAA,MANxBC,KAMwB,QANxBA,KAMwB;AAAA,MALxBC,KAKwB,QALxBA,KAKwB;AAAA,MAJxBC,MAIwB,QAJxBA,MAIwB;AAAA,wBAHxBC,KAGwB;AAAA,MAHxBA,KAGwB,2BAHhB,qCAAC,0BAAD,OAGgB;AAAA,6BAFxBC,UAEwB;AAAA,MAFxBA,UAEwB,gCAFXC,mBAAWC,OAEA;AAAA,MADrBC,SACqB;AACxB,MAAMC,QAAQ,GAAG,+BAAjB;AACA,MAAMC,KAAK,GAAGf,QAAQ,IAAID,WAA1B;AAEA,SACE,qCAAC,oBAAD,6BACMc,SADN;AAEE,IAAA,QAAQ,EAAET,QAAQ,GAAGY,SAAH,GAAelB,QAFnC;AAGE,IAAA,SAAS,EAAE,4BACT,gCAAa,QAAb,EAAuBgB,QAAvB,CADS,oBAEEJ,UAFF,GAGT,CAACV,QAAD,IAAa,eAHJ,EAITG,SAAS,IAAI,mBAJJ,EAKTF,KAAK,4BAAqBA,KAArB,CALI,0BAMQK,KANR,GAMiB;AANjB,4BAOQC,KAPR,GAOiB;AAC1BC,IAAAA,MAAM,IAAI,mBARD,EASTC,KAAK,IAAI,kBATA,CAHb;AAcE,IAAA,UAAU,EAAEP,UAdd;AAeE,IAAA,OAAO,EAAEE,QAAQ,GAAGY,SAAH,GAAeX,OAflC;AAgBE,IAAA,QAAQ,EAAED,QAhBZ;AAiBE,IAAA,MAAM,EAAEI,MAjBV;AAkBE,IAAA,KAAK,EAAEC,KAlBT;AAmBE,IAAA,IAAI,EAAE,4CAA+BC,UAA/B;AAnBR,MAqBE;AAAK,IAAA,SAAS,EAAC;AAAf,KAEE,qCAAC,wBAAD;AAAkB,IAAA,UAAU,EAAEA,UAA9B;AAA0C,IAAA,SAAS,EAAC;AAApD,KACGK,KADH,CAFF,CArBF,CADF;AA8BD,CAjDD;AAmDA;AACA;AACA;;;AACO,IAAME,aAAa,GAAG,oCAAepB,sBAAf,EAAuC;AAClES,EAAAA,KAAK,EAAE,IAD2D;AAElEC,EAAAA,KAAK,EAAE;AAF2D,CAAvC,CAAtB;;AAKPU,aAAa,CAACC,WAAd,GAA4B,eAA5B","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { DropdownIcon } from \"../DropdownIcon/DropdownIcon\";\nimport { FormField, FormFieldProps } from \"../FormField/FormField\";\nimport { HasAlign, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { getFormFieldModeFromSelectType } from \"../../lib/select\";\nimport { SelectType, SelectTypography } from \"../Select/Select\";\nimport \"../Select/Select.css\";\n\nexport interface SelectMimicryProps\n extends React.HTMLAttributes<HTMLElement>,\n HasAlign,\n HasRootRef<HTMLElement>,\n AdaptivityProps,\n Pick<FormFieldProps, \"before\" | \"after\"> {\n multiline?: boolean;\n disabled?: boolean;\n selectType?: keyof typeof SelectType;\n}\n\nconst SelectMimicryComponent = ({\n tabIndex = 0,\n placeholder,\n children,\n align,\n getRootRef,\n multiline,\n disabled,\n onClick,\n sizeX,\n sizeY,\n before,\n after = <DropdownIcon />,\n selectType = SelectType.default,\n ...restProps\n}: SelectMimicryProps) => {\n const platform = usePlatform();\n const title = children || placeholder;\n\n return (\n <FormField\n {...restProps}\n tabIndex={disabled ? undefined : tabIndex}\n vkuiClass={classNames(\n getClassName(\"Select\", platform),\n `Select--${selectType}`,\n !children && \"Select--empty\",\n multiline && \"Select--multiline\",\n align && `Select--align-${align}`,\n `Select--sizeX-${sizeX}`, // TODO v5.0.0 поправить под новую адаптивность\n `Select--sizeY-${sizeY}`, // TODO v5.0.0 поправить под новую адаптивность\n before && \"Select--hasBefore\",\n after && \"Select--hasAfter\"\n )}\n getRootRef={getRootRef}\n onClick={disabled ? undefined : onClick}\n disabled={disabled}\n before={before}\n after={after}\n mode={getFormFieldModeFromSelectType(selectType)}\n >\n <div vkuiClass=\"Select__container\">\n {/* TODO v5.0.0 поправить под новую адаптивность */}\n <SelectTypography selectType={selectType} vkuiClass=\"Select__title\">\n {title}\n </SelectTypography>\n </div>\n </FormField>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/SelectMimicry\n */\nexport const SelectMimicry = withAdaptivity(SelectMimicryComponent, {\n sizeX: true,\n sizeY: true,\n});\n\nSelectMimicry.displayName = \"SelectMimicry\";\n"],"file":"SelectMimicry.js"}
|
|
@@ -9,10 +9,10 @@ exports.SimpleCell = void 0;
|
|
|
9
9
|
|
|
10
10
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
11
|
|
|
12
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
-
|
|
14
12
|
var _jsxRuntime = require("../../lib/jsxRuntime");
|
|
15
13
|
|
|
14
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
15
|
+
|
|
16
16
|
var _classNames = require("../../lib/classNames");
|
|
17
17
|
|
|
18
18
|
var _getClassName = require("../../helpers/getClassName");
|
|
@@ -31,13 +31,11 @@ var _useAdaptivity2 = require("../../hooks/useAdaptivity");
|
|
|
31
31
|
|
|
32
32
|
var _withAdaptivity = require("../../hoc/withAdaptivity");
|
|
33
33
|
|
|
34
|
-
var
|
|
35
|
-
|
|
36
|
-
var _Text = require("../Typography/Text/Text");
|
|
34
|
+
var _Headline = require("../Typography/Headline/Headline");
|
|
37
35
|
|
|
38
|
-
var
|
|
36
|
+
var _Footnote = require("../Typography/Footnote/Footnote");
|
|
39
37
|
|
|
40
|
-
var
|
|
38
|
+
var _Caption = require("../Typography/Caption/Caption");
|
|
41
39
|
|
|
42
40
|
var _excluded = ["badge", "before", "indicator", "children", "after", "description", "expandable", "multiline", "sizeY"];
|
|
43
41
|
|
|
@@ -45,22 +43,13 @@ var SimpleCellTypography = function SimpleCellTypography(props) {
|
|
|
45
43
|
var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
|
|
46
44
|
sizeY = _useAdaptivity.sizeY;
|
|
47
45
|
|
|
48
|
-
var platform = (0, _usePlatform.usePlatform)();
|
|
49
|
-
|
|
50
46
|
if (sizeY === _withAdaptivity.SizeType.COMPACT) {
|
|
51
|
-
return (0, _jsxRuntime.createScopedElement)(
|
|
52
|
-
|
|
53
|
-
return (0, _jsxRuntime.createScopedElement)(_Headline.Headline, (0, _extends2.default)({
|
|
54
|
-
Component: "span",
|
|
55
|
-
weight: "3"
|
|
56
|
-
}, props));
|
|
57
|
-
} else {
|
|
58
|
-
return (0, _jsxRuntime.createScopedElement)(_Title.Title, (0, _extends2.default)({
|
|
59
|
-
Component: "span",
|
|
60
|
-
level: "3",
|
|
61
|
-
weight: "3"
|
|
47
|
+
return (0, _jsxRuntime.createScopedElement)(_Caption.Caption, (0, _extends2.default)({
|
|
48
|
+
level: "2"
|
|
62
49
|
}, props));
|
|
63
50
|
}
|
|
51
|
+
|
|
52
|
+
return (0, _jsxRuntime.createScopedElement)(_Footnote.Footnote, props);
|
|
64
53
|
};
|
|
65
54
|
|
|
66
55
|
var SimpleCellComponent = function SimpleCellComponent(_ref) {
|
|
@@ -79,24 +68,24 @@ var SimpleCellComponent = function SimpleCellComponent(_ref) {
|
|
|
79
68
|
var hasAfter = (0, _utils.hasReactNode)(after) || expandable && platform === _platform.IOS;
|
|
80
69
|
|
|
81
70
|
return (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, (0, _extends2.default)({}, restProps, {
|
|
82
|
-
|
|
83
|
-
vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("SimpleCell", platform), {
|
|
84
|
-
"SimpleCell--exp": expandable,
|
|
85
|
-
"SimpleCell--mult": multiline
|
|
86
|
-
}, "SimpleCell--sizeY-".concat(sizeY))
|
|
71
|
+
vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("SimpleCell", platform), expandable && "SimpleCell--exp", multiline && "SimpleCell--mult", "SimpleCell--sizeY-".concat(sizeY))
|
|
87
72
|
}), before, (0, _jsxRuntime.createScopedElement)("div", {
|
|
88
73
|
vkuiClass: "SimpleCell__main"
|
|
89
74
|
}, (0, _jsxRuntime.createScopedElement)("div", {
|
|
90
75
|
vkuiClass: "SimpleCell__content"
|
|
91
|
-
}, (0, _jsxRuntime.createScopedElement)(
|
|
92
|
-
|
|
76
|
+
}, (0, _jsxRuntime.createScopedElement)(_Headline.Headline, {
|
|
77
|
+
Component: "span",
|
|
78
|
+
vkuiClass: "SimpleCell__children",
|
|
79
|
+
weight: "3"
|
|
93
80
|
}, children), (0, _utils.hasReactNode)(badge) && (0, _jsxRuntime.createScopedElement)("span", {
|
|
94
81
|
vkuiClass: "SimpleCell__badge"
|
|
95
|
-
}, badge)), description && (0, _jsxRuntime.createScopedElement)(
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
82
|
+
}, badge)), description && (0, _jsxRuntime.createScopedElement)("div", {
|
|
83
|
+
vkuiClass: "SimpleCell__content"
|
|
84
|
+
}, (0, _jsxRuntime.createScopedElement)(SimpleCellTypography, {
|
|
85
|
+
vkuiClass: "SimpleCell__text SimpleCell__subtitle"
|
|
86
|
+
}, description))), (0, _utils.hasReactNode)(indicator) && (0, _jsxRuntime.createScopedElement)(_Headline.Headline, {
|
|
99
87
|
Component: "span",
|
|
88
|
+
weight: "3",
|
|
100
89
|
vkuiClass: "SimpleCell__indicator"
|
|
101
90
|
}, indicator), hasAfter && (0, _jsxRuntime.createScopedElement)("div", {
|
|
102
91
|
vkuiClass: "SimpleCell__after"
|
|
@@ -111,4 +100,5 @@ var SimpleCell = (0, _withAdaptivity.withAdaptivity)(SimpleCellComponent, {
|
|
|
111
100
|
sizeY: true
|
|
112
101
|
});
|
|
113
102
|
exports.SimpleCell = SimpleCell;
|
|
103
|
+
SimpleCell.displayName = "SimpleCell";
|
|
114
104
|
//# sourceMappingURL=SimpleCell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SimpleCell/SimpleCell.tsx"],"names":["SimpleCellTypography","props","sizeY","
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/SimpleCell/SimpleCell.tsx"],"names":["SimpleCellTypography","props","sizeY","SizeType","COMPACT","SimpleCellComponent","badge","before","indicator","children","after","description","expandable","multiline","restProps","platform","hasAfter","IOS","SimpleCell","displayName"],"mappings":";;;;;;;;;;;;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAwCA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,KAAD,EAAsC;AACjE,uBAAkB,oCAAlB;AAAA,MAAQC,KAAR,kBAAQA,KAAR;;AAEA,MAAIA,KAAK,KAAKC,yBAASC,OAAvB,EAAgC;AAC9B,WAAO,qCAAC,gBAAD;AAAS,MAAA,KAAK,EAAC;AAAf,OAAuBH,KAAvB,EAAP;AACD;;AAED,SAAO,qCAAC,kBAAD,EAAcA,KAAd,CAAP;AACD,CARD;;AAUA,IAAMI,mBAAmB,GAAG,SAAtBA,mBAAsB,OAWL;AAAA,MAVrBC,KAUqB,QAVrBA,KAUqB;AAAA,MATrBC,MASqB,QATrBA,MASqB;AAAA,MARrBC,SAQqB,QARrBA,SAQqB;AAAA,MAPrBC,QAOqB,QAPrBA,QAOqB;AAAA,MANrBC,KAMqB,QANrBA,KAMqB;AAAA,MALrBC,WAKqB,QALrBA,WAKqB;AAAA,MAJrBC,UAIqB,QAJrBA,UAIqB;AAAA,MAHrBC,SAGqB,QAHrBA,SAGqB;AAAA,MAFrBX,KAEqB,QAFrBA,KAEqB;AAAA,MADlBY,SACkB;AACrB,MAAMC,QAAQ,GAAG,+BAAjB;;AACA,MAAMC,QAAQ,GAAG,yBAAaN,KAAb,KAAwBE,UAAU,IAAIG,QAAQ,KAAKE,aAApE;;AAEA,SACE,qCAAC,kBAAD,6BACMH,SADN;AAEE,IAAA,SAAS,EAAE,4BACT,gCAAa,YAAb,EAA2BC,QAA3B,CADS,EAETH,UAAU,IAAI,iBAFL,EAGTC,SAAS,IAAI,kBAHJ,8BAIYX,KAJZ;AAFb,MASGK,MATH,EAUE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,qCAAC,kBAAD;AACE,IAAA,SAAS,EAAC,MADZ;AAEE,IAAA,SAAS,EAAC,sBAFZ;AAGE,IAAA,MAAM,EAAC;AAHT,KAKGE,QALH,CADF,EAQG,yBAAaH,KAAb,KACC;AAAM,IAAA,SAAS,EAAC;AAAhB,KAAqCA,KAArC,CATJ,CADF,EAaGK,WAAW,IACV;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,qCAAC,oBAAD;AAAsB,IAAA,SAAS,EAAC;AAAhC,KACGA,WADH,CADF,CAdJ,CAVF,EA+BG,yBAAaH,SAAb,KACC,qCAAC,kBAAD;AAAU,IAAA,SAAS,EAAC,MAApB;AAA2B,IAAA,MAAM,EAAC,GAAlC;AAAsC,IAAA,SAAS,EAAC;AAAhD,KACGA,SADH,CAhCJ,EAoCGQ,QAAQ,IACP;AAAK,IAAA,SAAS,EAAC;AAAf,KACGN,KADH,EAEGE,UAAU,IAAIG,QAAQ,KAAKE,aAA3B,IAAkC,qCAAC,oBAAD,OAFrC,CArCJ,CADF;AA6CD,CA5DD;AA8DA;AACA;AACA;;;AACO,IAAMC,UAAU,GAAG,oCAAeb,mBAAf,EAAoC;AAAEH,EAAAA,KAAK,EAAE;AAAT,CAApC,CAAnB;;AAEPgB,UAAU,CAACC,WAAX,GAAyB,YAAzB","sourcesContent":["import * as React from \"react\";\nimport { HasComponent } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { TappableProps, Tappable } from \"../Tappable/Tappable\";\nimport { Icon24Chevron } from \"@vkontakte/icons\";\nimport { IOS } from \"../../lib/platform\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { withAdaptivity, SizeType } from \"../../hoc/withAdaptivity\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Footnote } from \"../Typography/Footnote/Footnote\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport \"./SimpleCell.css\";\n\nexport interface SimpleCellOwnProps extends HasComponent {\n /**\n * Иконка 28 или `<Avatar size={28|32|40|48|72} />`\n */\n before?: React.ReactNode;\n /**\n * Иконка 12 или `<Badge />`. Добавится справа от текста `children`.\n */\n badge?: React.ReactNode;\n /**\n * Контейнер для текста справа от `children`.\n */\n indicator?: React.ReactNode;\n /**\n * Иконка 24|28 или `<Switch />`. Располагается справа от `indicator`.\n */\n after?: React.ReactNode;\n /**\n * Контейнер для текста под `children`.\n */\n description?: React.ReactNode;\n /**\n * Убирает анимацию нажатия\n */\n disabled?: boolean;\n /**\n * В iOS добавляет chevron справа. Передавать `true`, если предполагается переход при клике по ячейке.\n */\n expandable?: boolean;\n multiline?: boolean;\n}\n\nexport interface SimpleCellProps extends SimpleCellOwnProps, TappableProps {}\n\ntype SimpleCellTypographyProps = React.HTMLAttributes<HTMLDivElement> &\n HasComponent;\n\nconst SimpleCellTypography = (props: SimpleCellTypographyProps) => {\n const { sizeY } = useAdaptivity();\n\n if (sizeY === SizeType.COMPACT) {\n return <Caption level=\"2\" {...props} />;\n }\n\n return <Footnote {...props} />;\n};\n\nconst SimpleCellComponent = ({\n badge,\n before,\n indicator,\n children,\n after,\n description,\n expandable,\n multiline,\n sizeY,\n ...restProps\n}: SimpleCellProps) => {\n const platform = usePlatform();\n const hasAfter = hasReactNode(after) || (expandable && platform === IOS);\n\n return (\n <Tappable\n {...restProps}\n vkuiClass={classNames(\n getClassName(\"SimpleCell\", platform),\n expandable && \"SimpleCell--exp\",\n multiline && \"SimpleCell--mult\",\n `SimpleCell--sizeY-${sizeY}`\n )}\n >\n {before}\n <div vkuiClass=\"SimpleCell__main\">\n <div vkuiClass=\"SimpleCell__content\">\n <Headline\n Component=\"span\"\n vkuiClass=\"SimpleCell__children\"\n weight=\"3\"\n >\n {children}\n </Headline>\n {hasReactNode(badge) && (\n <span vkuiClass=\"SimpleCell__badge\">{badge}</span>\n )}\n </div>\n {description && (\n <div vkuiClass=\"SimpleCell__content\">\n <SimpleCellTypography vkuiClass=\"SimpleCell__text SimpleCell__subtitle\">\n {description}\n </SimpleCellTypography>\n </div>\n )}\n </div>\n {hasReactNode(indicator) && (\n <Headline Component=\"span\" weight=\"3\" vkuiClass=\"SimpleCell__indicator\">\n {indicator}\n </Headline>\n )}\n {hasAfter && (\n <div vkuiClass=\"SimpleCell__after\">\n {after}\n {expandable && platform === IOS && <Icon24Chevron />}\n </div>\n )}\n </Tappable>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/SimpleCell\n */\nexport const SimpleCell = withAdaptivity(SimpleCellComponent, { sizeY: true });\n\nSimpleCell.displayName = \"SimpleCell\";\n"],"file":"SimpleCell.js"}
|
|
@@ -23,15 +23,13 @@ var _Touch = require("../Touch/Touch");
|
|
|
23
23
|
|
|
24
24
|
var _classNames = require("../../lib/classNames");
|
|
25
25
|
|
|
26
|
-
var _getClassName = require("../../helpers/getClassName");
|
|
27
|
-
|
|
28
26
|
var _platform = require("../../lib/platform");
|
|
29
27
|
|
|
30
28
|
var _touch = require("../../lib/touch");
|
|
31
29
|
|
|
32
30
|
var _withAdaptivity = require("../../hoc/withAdaptivity");
|
|
33
31
|
|
|
34
|
-
var
|
|
32
|
+
var _Paragraph = require("../Typography/Paragraph/Paragraph");
|
|
35
33
|
|
|
36
34
|
var _Button = require("../Button/Button");
|
|
37
35
|
|
|
@@ -43,7 +41,7 @@ var _usePlatform = require("../../hooks/usePlatform");
|
|
|
43
41
|
|
|
44
42
|
var _useTimeout = require("../../hooks/useTimeout");
|
|
45
43
|
|
|
46
|
-
var _excluded = ["children", "layout", "action", "before", "after", "viewWidth", "duration", "onActionClick", "onClose"];
|
|
44
|
+
var _excluded = ["children", "layout", "action", "before", "after", "viewWidth", "duration", "onActionClick", "onClose", "mode"];
|
|
47
45
|
|
|
48
46
|
var SnackbarComponent = function SnackbarComponent(_ref) {
|
|
49
47
|
var children = _ref.children,
|
|
@@ -57,6 +55,8 @@ var SnackbarComponent = function SnackbarComponent(_ref) {
|
|
|
57
55
|
duration = _ref$duration === void 0 ? 4000 : _ref$duration,
|
|
58
56
|
onActionClick = _ref.onActionClick,
|
|
59
57
|
onClose = _ref.onClose,
|
|
58
|
+
_ref$mode = _ref.mode,
|
|
59
|
+
mode = _ref$mode === void 0 ? "default" : _ref$mode,
|
|
60
60
|
restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
61
61
|
var platform = (0, _usePlatform.usePlatform)();
|
|
62
62
|
|
|
@@ -167,12 +167,7 @@ var SnackbarComponent = function SnackbarComponent(_ref) {
|
|
|
167
167
|
}, [closeTimeout]);
|
|
168
168
|
var resolvedLayout = after || isDesktop ? "vertical" : layout;
|
|
169
169
|
return (0, _jsxRuntime.createScopedElement)(_AppRootPortal.AppRootPortal, null, (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({}, restProps, {
|
|
170
|
-
|
|
171
|
-
vkuiClass: (0, _classNames.classNames)((0, _getClassName.getClassName)("Snackbar", platform), "Snackbar--l-".concat(resolvedLayout), {
|
|
172
|
-
"Snackbar--closing": closing,
|
|
173
|
-
"Snackbar--touched": touched,
|
|
174
|
-
"Snackbar--desktop": isDesktop
|
|
175
|
-
})
|
|
170
|
+
vkuiClass: (0, _classNames.classNames)("Snackbar", platform === _platform.IOS && "Snackbar--ios", "Snackbar--l-".concat(resolvedLayout), "Snackbar--".concat(mode), closing && "Snackbar--closing", touched && "Snackbar--touched", isDesktop && "Snackbar--desktop")
|
|
176
171
|
}), (0, _jsxRuntime.createScopedElement)(_Touch.Touch, {
|
|
177
172
|
vkuiClass: "Snackbar__in",
|
|
178
173
|
getRootRef: innerElRef,
|
|
@@ -186,12 +181,13 @@ var SnackbarComponent = function SnackbarComponent(_ref) {
|
|
|
186
181
|
vkuiClass: "Snackbar__before"
|
|
187
182
|
}, before), (0, _jsxRuntime.createScopedElement)("div", {
|
|
188
183
|
vkuiClass: "Snackbar__content"
|
|
189
|
-
}, (0, _jsxRuntime.createScopedElement)(
|
|
184
|
+
}, (0, _jsxRuntime.createScopedElement)(_Paragraph.Paragraph, {
|
|
190
185
|
vkuiClass: "Snackbar__content-text"
|
|
191
186
|
}, children), action && (0, _jsxRuntime.createScopedElement)(_Button.Button, {
|
|
192
187
|
align: "left",
|
|
193
188
|
hasHover: false,
|
|
194
189
|
mode: "tertiary",
|
|
190
|
+
appearance: mode === "dark" ? "overlay" : "accent",
|
|
195
191
|
size: "s",
|
|
196
192
|
vkuiClass: "Snackbar__action",
|
|
197
193
|
onClick: handleActionClick
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Snackbar/Snackbar.tsx"],"names":["SnackbarComponent","children","layout","action","before","after","viewWidth","duration","onActionClick","onClose","restProps","platform","waitTransitionFinish","React","useState","closing","setClosing","touched","setTouched","shiftXPercentRef","useRef","shiftXCurrentRef","bodyElRef","innerElRef","animationFrameRef","isDesktop","ViewWidth","SMALL_TABLET","transitionFinishDurationFallback","ANDROID","VKCOM","close","current","handleActionClick","e","closeTimeout","setBodyTransform","percent","cancelAnimationFrame","requestAnimationFrame","style","transform","onTouchStart","clear","onTouchMoveX","event","shiftX","originalEvent","preventDefault","offsetWidth","onTouchEnd","callback","shiftXCurrent","expectTranslateY","set","useEffect","resolvedLayout","displayName","Snackbar"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasPlatform } from \"../../types\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { ANDROID, VKCOM } from \"../../lib/platform\";\nimport { rubber } from \"../../lib/touch\";\nimport { withAdaptivity, ViewWidth } from \"../../hoc/withAdaptivity\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Button } from \"../Button/Button\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { useWaitTransitionFinish } from \"../../hooks/useWaitTransitionFinish\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport {\n AdaptivityContextInterface,\n AdaptivityProps,\n} from \"../AdaptivityProvider/AdaptivityContext\";\nimport \"./Snackbar.css\";\n\nexport interface SnackbarProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n AdaptivityProps {\n /**\n * Название кнопки действия в уведомлении\n */\n action?: React.ReactNode;\n\n /**\n * Будет вызвано при клике на кнопку действия\n */\n onActionClick?: (e: React.MouseEvent) => void;\n\n /**\n * Цветная иконка 24x24 пикселя\n */\n before?: React.ReactNode;\n /**\n * Контент в правой части, может быть `<Avatar size={32} />`\n */\n after?: React.ReactNode;\n /**\n * Варианты расположения кнопки\n */\n layout?: \"vertical\" | \"horizontal\";\n /**\n * Время в миллисекундах, через которое плашка скроется\n */\n duration?: number;\n /**\n * Обработчик закрытия уведомления\n */\n onClose: () => void;\n}\n\nconst SnackbarComponent = ({\n children,\n layout = \"horizontal\",\n action,\n before,\n after,\n viewWidth,\n duration = 4000,\n onActionClick,\n onClose,\n ...restProps\n}: SnackbarProps & AdaptivityContextInterface) => {\n const platform = usePlatform();\n\n const { waitTransitionFinish } = useWaitTransitionFinish();\n\n const [closing, setClosing] = React.useState(false);\n const [touched, setTouched] = React.useState(false);\n\n const shiftXPercentRef = React.useRef<number>(0);\n const shiftXCurrentRef = React.useRef<number>(0);\n\n const bodyElRef = React.useRef<HTMLDivElement | null>(null);\n const innerElRef = React.useRef<HTMLDivElement | null>(null);\n\n const animationFrameRef = React.useRef<ReturnType<\n typeof requestAnimationFrame\n > | null>(null);\n\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n const transitionFinishDurationFallback =\n platform === ANDROID || platform === VKCOM ? 400 : 320;\n\n const close = () => {\n setClosing(true);\n waitTransitionFinish(\n innerElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n };\n\n const handleActionClick: React.MouseEventHandler<HTMLElement> = (e) => {\n close();\n\n if (action && typeof onActionClick === \"function\") {\n onActionClick(e);\n }\n };\n\n const closeTimeout = useTimeout(close, duration);\n\n const setBodyTransform = (percent: number) => {\n if (animationFrameRef.current !== null) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n animationFrameRef.current = requestAnimationFrame(() => {\n if (bodyElRef.current) {\n bodyElRef.current.style.transform = `translate3d(${percent}%, 0, 0)`;\n }\n });\n };\n\n const onTouchStart = closeTimeout.clear;\n\n const onTouchMoveX = (event: TouchEvent) => {\n const { shiftX, originalEvent } = event;\n originalEvent.preventDefault();\n\n if (!touched) {\n setTouched(true);\n }\n\n shiftXPercentRef.current =\n (shiftX / (bodyElRef.current?.offsetWidth ?? 0)) * 100;\n shiftXCurrentRef.current = rubber(\n shiftXPercentRef.current,\n 72,\n 1.2,\n platform === ANDROID || platform === VKCOM\n );\n\n setBodyTransform(shiftXCurrentRef.current);\n };\n\n const onTouchEnd = (e: TouchEvent) => {\n let callback: VoidFunction | undefined;\n\n if (touched) {\n let shiftXCurrent = shiftXCurrentRef.current;\n const expectTranslateY = (shiftXCurrent / e.duration) * 240 * 0.6;\n shiftXCurrent = shiftXCurrent + expectTranslateY;\n\n if (isDesktop && shiftXCurrent <= -50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(-120);\n } else if (!isDesktop && shiftXCurrent >= 50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(120);\n } else {\n callback = () => {\n closeTimeout.set();\n setBodyTransform(0);\n };\n }\n } else {\n closeTimeout.set();\n }\n\n setTouched(false);\n callback && requestAnimationFrame(callback);\n };\n\n React.useEffect(() => closeTimeout.set(), [closeTimeout]);\n\n const resolvedLayout = after || isDesktop ? \"vertical\" : layout;\n\n return (\n <AppRootPortal>\n <div\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\n getClassName(\"Snackbar\", platform),\n `Snackbar--l-${resolvedLayout}`,\n {\n \"Snackbar--closing\": closing,\n \"Snackbar--touched\": touched,\n \"Snackbar--desktop\": isDesktop,\n }\n )}\n >\n <Touch\n vkuiClass=\"Snackbar__in\"\n getRootRef={innerElRef}\n onStart={onTouchStart}\n onMoveX={onTouchMoveX}\n onEnd={onTouchEnd}\n >\n <div vkuiClass=\"Snackbar__body\" ref={bodyElRef}>\n {before && <div vkuiClass=\"Snackbar__before\">{before}</div>}\n\n <div vkuiClass=\"Snackbar__content\">\n <Text vkuiClass=\"Snackbar__content-text\">{children}</Text>\n\n {action && (\n <Button\n align=\"left\"\n hasHover={false}\n mode=\"tertiary\"\n size=\"s\"\n vkuiClass=\"Snackbar__action\"\n onClick={handleActionClick}\n >\n {action}\n </Button>\n )}\n </div>\n\n {after && <div vkuiClass=\"Snackbar__after\">{after}</div>}\n </div>\n </Touch>\n </div>\n </AppRootPortal>\n );\n};\n\nSnackbarComponent.displayName = \"Snackbar\";\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Snackbar\n */\nexport const Snackbar = withAdaptivity(SnackbarComponent, {\n viewWidth: true,\n});\n"],"file":"Snackbar.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Snackbar/Snackbar.tsx"],"names":["SnackbarComponent","children","layout","action","before","after","viewWidth","duration","onActionClick","onClose","mode","restProps","platform","waitTransitionFinish","React","useState","closing","setClosing","touched","setTouched","shiftXPercentRef","useRef","shiftXCurrentRef","bodyElRef","innerElRef","animationFrameRef","isDesktop","ViewWidth","SMALL_TABLET","transitionFinishDurationFallback","ANDROID","VKCOM","close","current","handleActionClick","e","closeTimeout","setBodyTransform","percent","cancelAnimationFrame","requestAnimationFrame","style","transform","onTouchStart","clear","onTouchMoveX","event","shiftX","originalEvent","preventDefault","offsetWidth","onTouchEnd","callback","shiftXCurrent","expectTranslateY","set","useEffect","resolvedLayout","IOS","displayName","Snackbar"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasPlatform } from \"../../types\";\nimport { ANDROID, IOS, VKCOM } from \"../../lib/platform\";\nimport { rubber } from \"../../lib/touch\";\nimport { withAdaptivity, ViewWidth } from \"../../hoc/withAdaptivity\";\nimport { Paragraph } from \"../Typography/Paragraph/Paragraph\";\nimport { Button } from \"../Button/Button\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { useWaitTransitionFinish } from \"../../hooks/useWaitTransitionFinish\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport {\n AdaptivityContextInterface,\n AdaptivityProps,\n} from \"../AdaptivityProvider/AdaptivityContext\";\nimport \"./Snackbar.css\";\n\nexport interface SnackbarProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n AdaptivityProps {\n /**\n * Название кнопки действия в уведомлении\n */\n action?: React.ReactNode;\n\n /**\n * Будет вызвано при клике на кнопку действия\n */\n onActionClick?: (e: React.MouseEvent) => void;\n\n /**\n * Цветная иконка 24x24 пикселя\n */\n before?: React.ReactNode;\n /**\n * Контент в правой части, может быть `<Avatar size={32} />`\n */\n after?: React.ReactNode;\n /**\n * Варианты расположения кнопки\n */\n layout?: \"vertical\" | \"horizontal\";\n /**\n * Время в миллисекундах, через которое плашка скроется\n */\n duration?: number;\n /**\n * Обработчик закрытия уведомления\n */\n onClose: () => void;\n /**\n * Задает стиль снекбара\n */\n mode?: \"default\" | \"dark\";\n}\n\nconst SnackbarComponent = ({\n children,\n layout = \"horizontal\",\n action,\n before,\n after,\n viewWidth,\n duration = 4000,\n onActionClick,\n onClose,\n mode = \"default\",\n ...restProps\n}: SnackbarProps & AdaptivityContextInterface) => {\n const platform = usePlatform();\n\n const { waitTransitionFinish } = useWaitTransitionFinish();\n\n const [closing, setClosing] = React.useState(false);\n const [touched, setTouched] = React.useState(false);\n\n const shiftXPercentRef = React.useRef<number>(0);\n const shiftXCurrentRef = React.useRef<number>(0);\n\n const bodyElRef = React.useRef<HTMLDivElement | null>(null);\n const innerElRef = React.useRef<HTMLDivElement | null>(null);\n\n const animationFrameRef = React.useRef<ReturnType<\n typeof requestAnimationFrame\n > | null>(null);\n\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n const transitionFinishDurationFallback =\n platform === ANDROID || platform === VKCOM ? 400 : 320;\n\n const close = () => {\n setClosing(true);\n waitTransitionFinish(\n innerElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n };\n\n const handleActionClick: React.MouseEventHandler<HTMLElement> = (e) => {\n close();\n\n if (action && typeof onActionClick === \"function\") {\n onActionClick(e);\n }\n };\n\n const closeTimeout = useTimeout(close, duration);\n\n const setBodyTransform = (percent: number) => {\n if (animationFrameRef.current !== null) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n animationFrameRef.current = requestAnimationFrame(() => {\n if (bodyElRef.current) {\n bodyElRef.current.style.transform = `translate3d(${percent}%, 0, 0)`;\n }\n });\n };\n\n const onTouchStart = closeTimeout.clear;\n\n const onTouchMoveX = (event: TouchEvent) => {\n const { shiftX, originalEvent } = event;\n originalEvent.preventDefault();\n\n if (!touched) {\n setTouched(true);\n }\n\n shiftXPercentRef.current =\n (shiftX / (bodyElRef.current?.offsetWidth ?? 0)) * 100;\n shiftXCurrentRef.current = rubber(\n shiftXPercentRef.current,\n 72,\n 1.2,\n platform === ANDROID || platform === VKCOM\n );\n\n setBodyTransform(shiftXCurrentRef.current);\n };\n\n const onTouchEnd = (e: TouchEvent) => {\n let callback: VoidFunction | undefined;\n\n if (touched) {\n let shiftXCurrent = shiftXCurrentRef.current;\n const expectTranslateY = (shiftXCurrent / e.duration) * 240 * 0.6;\n shiftXCurrent = shiftXCurrent + expectTranslateY;\n\n if (isDesktop && shiftXCurrent <= -50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(-120);\n } else if (!isDesktop && shiftXCurrent >= 50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(120);\n } else {\n callback = () => {\n closeTimeout.set();\n setBodyTransform(0);\n };\n }\n } else {\n closeTimeout.set();\n }\n\n setTouched(false);\n callback && requestAnimationFrame(callback);\n };\n\n React.useEffect(() => closeTimeout.set(), [closeTimeout]);\n\n const resolvedLayout = after || isDesktop ? \"vertical\" : layout;\n\n return (\n <AppRootPortal>\n <div\n {...restProps}\n vkuiClass={classNames(\n \"Snackbar\",\n platform === IOS && \"Snackbar--ios\",\n `Snackbar--l-${resolvedLayout}`,\n `Snackbar--${mode}`,\n closing && \"Snackbar--closing\",\n touched && \"Snackbar--touched\",\n isDesktop && \"Snackbar--desktop\"\n )}\n >\n <Touch\n vkuiClass=\"Snackbar__in\"\n getRootRef={innerElRef}\n onStart={onTouchStart}\n onMoveX={onTouchMoveX}\n onEnd={onTouchEnd}\n >\n <div vkuiClass=\"Snackbar__body\" ref={bodyElRef}>\n {before && <div vkuiClass=\"Snackbar__before\">{before}</div>}\n\n <div vkuiClass=\"Snackbar__content\">\n <Paragraph vkuiClass=\"Snackbar__content-text\">\n {children}\n </Paragraph>\n\n {action && (\n <Button\n align=\"left\"\n hasHover={false}\n mode=\"tertiary\"\n appearance={mode === \"dark\" ? \"overlay\" : \"accent\"}\n size=\"s\"\n vkuiClass=\"Snackbar__action\"\n onClick={handleActionClick}\n >\n {action}\n </Button>\n )}\n </div>\n\n {after && <div vkuiClass=\"Snackbar__after\">{after}</div>}\n </div>\n </Touch>\n </div>\n </AppRootPortal>\n );\n};\n\nSnackbarComponent.displayName = \"Snackbar\";\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Snackbar\n */\nexport const Snackbar = withAdaptivity(SnackbarComponent, {\n viewWidth: true,\n});\n"],"file":"Snackbar.js"}
|
|
@@ -7,7 +7,7 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
|
-
exports.SplitColContext = exports.SplitCol = void 0;
|
|
10
|
+
exports.useSplitCol = exports.SplitColContext = exports.SplitCol = void 0;
|
|
11
11
|
|
|
12
12
|
var _jsxRuntime = require("../../lib/jsxRuntime");
|
|
13
13
|
|
|
@@ -32,6 +32,12 @@ var SplitColContext = /*#__PURE__*/React.createContext({
|
|
|
32
32
|
});
|
|
33
33
|
exports.SplitColContext = SplitColContext;
|
|
34
34
|
|
|
35
|
+
var useSplitCol = function useSplitCol() {
|
|
36
|
+
return React.useContext(SplitColContext);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
exports.useSplitCol = useSplitCol;
|
|
40
|
+
|
|
35
41
|
/**
|
|
36
42
|
* @see https://vkcom.github.io/VKUI/#/SplitCol
|
|
37
43
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SplitCol/SplitCol.tsx"],"names":["SplitColContext","React","createContext","colRef","animate","SplitCol","children","width","maxWidth","minWidth","spaced","fixed","style","restProps","baseRef","useRef","fixedInnerRef","contextValue","useMemo","fixedInner","current","noop","top","offsetTop"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;AAQO,IAAMA,eAAe,gBAAGC,KAAK,CAACC,aAAN,CAA0C;AACvEC,EAAAA,MAAM,EAAE,IAD+D;AAEvEC,EAAAA,OAAO,EAAE;AAF8D,CAA1C,CAAxB;;;
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/SplitCol/SplitCol.tsx"],"names":["SplitColContext","React","createContext","colRef","animate","useSplitCol","useContext","SplitCol","children","width","maxWidth","minWidth","spaced","fixed","style","restProps","baseRef","useRef","fixedInnerRef","contextValue","useMemo","fixedInner","current","noop","top","offsetTop"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;AAQO,IAAMA,eAAe,gBAAGC,KAAK,CAACC,aAAN,CAA0C;AACvEC,EAAAA,MAAM,EAAE,IAD+D;AAEvEC,EAAAA,OAAO,EAAE;AAF8D,CAA1C,CAAxB;;;AAKA,IAAMC,WAAW,GAAG,SAAdA,WAAc;AAAA,SAAMJ,KAAK,CAACK,UAAN,CAAiBN,eAAjB,CAAN;AAAA,CAApB;;;;AAiBP;AACA;AACA;AACO,IAAMO,QAAQ,GAAG,SAAXA,QAAW,OAUH;AAAA,MATnBC,QASmB,QATnBA,QASmB;AAAA,MARnBC,KAQmB,QARnBA,KAQmB;AAAA,MAPnBC,QAOmB,QAPnBA,QAOmB;AAAA,MANnBC,QAMmB,QANnBA,QAMmB;AAAA,MALnBC,MAKmB,QALnBA,MAKmB;AAAA,0BAJnBR,OAImB;AAAA,MAJnBA,OAImB,6BAJT,KAIS;AAAA,MAHnBS,KAGmB,QAHnBA,KAGmB;AAAA,MAFnBC,KAEmB,QAFnBA,KAEmB;AAAA,MADhBC,SACgB;AACnB,MAAMC,OAAO,GAAGf,KAAK,CAACgB,MAAN,CAA6B,IAA7B,CAAhB;AAEA,MAAMC,aAAa,GAAGjB,KAAK,CAACgB,MAAN,CAA6B,IAA7B,CAAtB;AAEA,MAAME,YAAY,GAAGlB,KAAK,CAACmB,OAAN,CAAc,YAAM;AACvC,WAAO;AACLjB,MAAAA,MAAM,EAAEa,OADH;AAELZ,MAAAA,OAAO,EAAPA;AAFK,KAAP;AAID,GALoB,EAKlB,CAACY,OAAD,EAAUZ,OAAV,CALkB,CAArB;AAOA,0CAAoB,YAAM;AACxB,QAAMiB,UAAU,GAAGH,aAAa,CAACI,OAAjC;;AACA,QAAI,CAACD,UAAL,EAAiB;AACf,aAAOE,WAAP;AACD;;AAEDF,IAAAA,UAAU,CAACP,KAAX,CAAiBU,GAAjB,aAA0BH,UAAU,CAACI,SAArC;AAEA,WAAO,YAAM;AACXJ,MAAAA,UAAU,CAACP,KAAX,CAAiBU,GAAjB,GAAuB,EAAvB;AACD,KAFD;AAGD,GAXD,EAWG,CAACN,aAAa,CAACI,OAAf,CAXH;AAaA,SACE,uEACMP,SADN;AAEE,IAAA,KAAK,8DACAD,KADA;AAEHL,MAAAA,KAAK,EAAEA,KAFJ;AAGHC,MAAAA,QAAQ,EAAEA,QAHP;AAIHC,MAAAA,QAAQ,EAAEA;AAJP,MAFP;AAQE,IAAA,GAAG,EAAEK,OARP;AASE,IAAA,SAAS,EAAE,4BACT,UADS,EAETJ,MAAM,IAAI,kBAFD,EAGTC,KAAK,IAAI,iBAHA;AATb,MAeE,qCAAC,eAAD,CAAiB,QAAjB;AAA0B,IAAA,KAAK,EAAEM;AAAjC,KACGN,KAAK,GACJ;AAAK,IAAA,GAAG,EAAEK,aAAV;AAAyB,IAAA,SAAS,EAAC;AAAnC,KACGV,QADH,CADI,GAKJA,QANJ,CAfF,CADF;AA2BD,CA9DM","sourcesContent":["import * as React from \"react\";\nimport { useScrollLockEffect } from \"../AppRoot/ScrollContext\";\nimport { classNames } from \"../../lib/classNames\";\nimport { noop } from \"../../lib/utils\";\nimport \"./SplitCol.css\";\n\nexport interface SplitColContextProps {\n colRef: React.RefObject<HTMLDivElement> | null;\n animate: boolean;\n}\n\nexport const SplitColContext = React.createContext<SplitColContextProps>({\n colRef: null,\n animate: true,\n});\n\nexport const useSplitCol = () => React.useContext(SplitColContext);\n\nexport interface SplitColProps extends React.HTMLAttributes<HTMLDivElement> {\n width?: number | string;\n maxWidth?: number | string;\n minWidth?: number | string;\n /**\n * Если false, то переходы между Panel происходят без анимации\n */\n animate?: boolean;\n /**\n * Если true, то добавляются боковые отступы фиксированной величины\n */\n spaced?: boolean;\n fixed?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/SplitCol\n */\nexport const SplitCol = ({\n children,\n width,\n maxWidth,\n minWidth,\n spaced,\n animate = false,\n fixed,\n style,\n ...restProps\n}: SplitColProps) => {\n const baseRef = React.useRef<HTMLDivElement>(null);\n\n const fixedInnerRef = React.useRef<HTMLDivElement>(null);\n\n const contextValue = React.useMemo(() => {\n return {\n colRef: baseRef,\n animate,\n };\n }, [baseRef, animate]);\n\n useScrollLockEffect(() => {\n const fixedInner = fixedInnerRef.current;\n if (!fixedInner) {\n return noop;\n }\n\n fixedInner.style.top = `${fixedInner.offsetTop}px`;\n\n return () => {\n fixedInner.style.top = \"\";\n };\n }, [fixedInnerRef.current]);\n\n return (\n <div\n {...restProps}\n style={{\n ...style,\n width: width,\n maxWidth: maxWidth,\n minWidth: minWidth,\n }}\n ref={baseRef}\n vkuiClass={classNames(\n \"SplitCol\",\n spaced && \"SplitCol--spaced\",\n fixed && \"SplitCol--fixed\"\n )}\n >\n <SplitColContext.Provider value={contextValue}>\n {fixed ? (\n <div ref={fixedInnerRef} vkuiClass=\"SplitCol__fixedInner\">\n {children}\n </div>\n ) : (\n children\n )}\n </SplitColContext.Provider>\n </div>\n );\n};\n"],"file":"SplitCol.js"}
|