@vkontakte/vkui 7.4.3 → 7.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/components/Accordion/Accordion.d.ts +8 -1
- package/dist/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/components/Accordion/Accordion.js +9 -4
- package/dist/components/Accordion/Accordion.js.map +1 -1
- package/dist/components/Accordion/AccordionContent.d.ts +1 -1
- package/dist/components/Accordion/AccordionContent.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionContent.js +4 -1
- package/dist/components/Accordion/AccordionContent.js.map +1 -1
- package/dist/components/Accordion/AccordionContext.d.ts +5 -0
- package/dist/components/Accordion/AccordionContext.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionContext.js +12 -0
- package/dist/components/Accordion/AccordionContext.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.d.ts +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +1 -1
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.d.ts +1 -1
- package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js +1 -1
- package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/Alert/Alert.d.ts +1 -1
- package/dist/components/Alert/Alert.js +1 -1
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.d.ts +3 -3
- package/dist/components/AppRoot/AppRoot.js +1 -1
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AspectRatio/AspectRatio.d.ts +1 -1
- package/dist/components/AspectRatio/AspectRatio.js +1 -1
- package/dist/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/components/Avatar/Avatar.d.ts +1 -1
- package/dist/components/Avatar/Avatar.js +1 -1
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Badge/Badge.d.ts +1 -1
- package/dist/components/Badge/Badge.js +1 -1
- package/dist/components/Badge/Badge.js.map +1 -1
- package/dist/components/Banner/Banner.d.ts +3 -3
- package/dist/components/Banner/Banner.js +1 -1
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Button/Button.d.ts +1 -1
- package/dist/components/Button/Button.js +1 -1
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.js +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +1 -1
- package/dist/components/Calendar/Calendar.js +1 -1
- package/dist/components/Calendar/Calendar.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.d.ts +1 -1
- package/dist/components/CalendarRange/CalendarRange.js +1 -1
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/Card/Card.d.ts +1 -1
- package/dist/components/Card/Card.js +1 -1
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/CardGrid/CardGrid.d.ts +1 -1
- package/dist/components/CardGrid/CardGrid.js +1 -1
- package/dist/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.d.ts +1 -1
- package/dist/components/CardScroll/CardScroll.js +1 -1
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Cell/Cell.d.ts +1 -1
- package/dist/components/Cell/Cell.js +1 -1
- package/dist/components/Cell/Cell.js.map +1 -1
- package/dist/components/CellButton/CellButton.d.ts +1 -1
- package/dist/components/CellButton/CellButton.js +1 -1
- package/dist/components/CellButton/CellButton.js.map +1 -1
- package/dist/components/CellButtonGroup/CellButtonGroup.d.ts +1 -1
- package/dist/components/CellButtonGroup/CellButtonGroup.js +1 -1
- package/dist/components/CellButtonGroup/CellButtonGroup.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts +1 -1
- package/dist/components/Checkbox/Checkbox.js +1 -1
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/ChipsInput/ChipsInput.d.ts +1 -1
- package/dist/components/ChipsInput/ChipsInput.js +1 -1
- package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/components/ChipsInputBase/Chip/Chip.d.ts +1 -1
- package/dist/components/ChipsInputBase/Chip/Chip.js +1 -1
- package/dist/components/ChipsInputBase/Chip/Chip.js.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.js +64 -37
- package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/components/ChipsInputBase/helpers.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/helpers.js +2 -0
- package/dist/components/ChipsInputBase/helpers.js.map +1 -1
- package/dist/components/ChipsInputBase/types.d.ts +5 -1
- package/dist/components/ChipsInputBase/types.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/types.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.d.ts +2 -2
- package/dist/components/ChipsSelect/ChipsSelect.d.ts.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.js +7 -5
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ColorSchemeProvider/ColorSchemeProvider.d.ts +1 -1
- package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
- package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.d.ts +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ContentBadge/ContentBadge.d.ts +1 -1
- package/dist/components/ContentBadge/ContentBadge.js +1 -1
- package/dist/components/ContentBadge/ContentBadge.js.map +1 -1
- package/dist/components/ContentCard/ContentCard.d.ts +1 -1
- package/dist/components/ContentCard/ContentCard.js +1 -1
- package/dist/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/components/Counter/Counter.d.ts +1 -1
- package/dist/components/Counter/Counter.js +1 -1
- package/dist/components/Counter/Counter.js.map +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.d.ts +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.js +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/dist/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.d.ts +3 -3
- package/dist/components/CustomSelectOption/CustomSelectOption.js +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/components/DateInput/DateInput.d.ts +1 -1
- package/dist/components/DateInput/DateInput.js +2 -3
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.d.ts +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/DirectionProvider/DirectionProvider.d.ts +1 -1
- package/dist/components/DirectionProvider/DirectionProvider.js +1 -1
- package/dist/components/DirectionProvider/DirectionProvider.js.map +1 -1
- package/dist/components/Div/Div.d.ts +1 -1
- package/dist/components/Div/Div.js +1 -1
- package/dist/components/Div/Div.js.map +1 -1
- package/dist/components/DropZone/DropZone.d.ts +1 -1
- package/dist/components/DropZone/DropZone.js +1 -1
- package/dist/components/DropZone/DropZone.js.map +1 -1
- package/dist/components/Epic/Epic.d.ts +1 -1
- package/dist/components/Epic/Epic.js +1 -1
- package/dist/components/Epic/Epic.js.map +1 -1
- package/dist/components/Epic/ScrollSaver.d.ts +0 -3
- package/dist/components/Epic/ScrollSaver.d.ts.map +1 -1
- package/dist/components/Epic/ScrollSaver.js +1 -3
- package/dist/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/components/File/File.d.ts +1 -1
- package/dist/components/File/File.js +1 -1
- package/dist/components/File/File.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.d.ts +1 -1
- package/dist/components/FixedLayout/FixedLayout.js +1 -1
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/Flex/Flex.d.ts +3 -0
- package/dist/components/Flex/Flex.d.ts.map +1 -1
- package/dist/components/Flex/Flex.js +3 -1
- package/dist/components/Flex/Flex.js.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.d.ts +0 -3
- package/dist/components/FocusTrap/FocusTrap.d.ts.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.js +1 -3
- package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/components/Footer/Footer.d.ts +1 -1
- package/dist/components/Footer/Footer.js +1 -1
- package/dist/components/Footer/Footer.js.map +1 -1
- package/dist/components/FormField/FormField.d.ts +3 -3
- package/dist/components/FormField/FormField.js +1 -1
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormItem/FormItem.d.ts +1 -1
- package/dist/components/FormItem/FormItem.js +1 -1
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/FormStatus/FormStatus.d.ts +1 -1
- package/dist/components/FormStatus/FormStatus.js +1 -1
- package/dist/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/components/Gallery/Gallery.d.ts +1 -1
- package/dist/components/Gallery/Gallery.js +1 -1
- package/dist/components/Gallery/Gallery.js.map +1 -1
- package/dist/components/Gradient/Gradient.d.ts +1 -1
- package/dist/components/Gradient/Gradient.js +1 -1
- package/dist/components/Gradient/Gradient.js.map +1 -1
- package/dist/components/GridAvatar/GridAvatar.d.ts +1 -1
- package/dist/components/GridAvatar/GridAvatar.js +1 -1
- package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/components/Group/Group.d.ts +1 -1
- package/dist/components/Group/Group.js +1 -1
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/Header/Header.d.ts +1 -1
- package/dist/components/Header/Header.js +1 -1
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.d.ts +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.js +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.d.ts +3 -0
- package/dist/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.d.ts.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.js +3 -1
- package/dist/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/IconButton/IconButton.d.ts +1 -1
- package/dist/components/IconButton/IconButton.js +1 -1
- package/dist/components/IconButton/IconButton.js.map +1 -1
- package/dist/components/Image/Image.d.ts +1 -1
- package/dist/components/Image/Image.js +1 -1
- package/dist/components/Image/Image.js.map +1 -1
- package/dist/components/ImageBase/ImageBase.d.ts +1 -1
- package/dist/components/ImageBase/ImageBase.js +1 -1
- package/dist/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/components/InfoRow/InfoRow.d.ts +1 -1
- package/dist/components/InfoRow/InfoRow.js +1 -1
- package/dist/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/components/Input/Input.d.ts +1 -1
- package/dist/components/Input/Input.js +1 -1
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/Link/Link.d.ts +1 -1
- package/dist/components/Link/Link.js +1 -1
- package/dist/components/Link/Link.js.map +1 -1
- package/dist/components/List/List.d.ts +1 -1
- package/dist/components/List/List.js +1 -1
- package/dist/components/List/List.js.map +1 -1
- package/dist/components/LocaleProvider/LocaleProvider.d.ts +1 -1
- package/dist/components/LocaleProvider/LocaleProvider.js +1 -1
- package/dist/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/components/Mark/Mark.d.ts +1 -1
- package/dist/components/Mark/Mark.js +1 -1
- package/dist/components/Mark/Mark.js.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.d.ts +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/components/ModalCard/ModalCard.js +1 -1
- package/dist/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.d.ts +3 -3
- package/dist/components/ModalCardBase/ModalCardBase.js +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/components/ModalOutsideButton/ModalOutsideButton.d.ts +1 -1
- package/dist/components/ModalOutsideButton/ModalOutsideButton.js +1 -1
- package/dist/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.d.ts +1 -1
- package/dist/components/ModalPage/ModalPage.js +1 -1
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.d.ts +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.js +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +1 -1
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts +1 -1
- package/dist/components/NativeSelect/NativeSelect.js +1 -1
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltip.js +6 -14
- package/dist/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js +3 -12
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
- package/dist/components/Pagination/Pagination.d.ts +3 -3
- package/dist/components/Pagination/Pagination.js +1 -1
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Panel/Panel.d.ts +3 -3
- package/dist/components/Panel/Panel.js +1 -1
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.d.ts +1 -1
- package/dist/components/PanelHeader/PanelHeader.js +1 -1
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.d.ts +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.d.ts +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/components/PanelSpinner/PanelSpinner.d.ts +1 -1
- package/dist/components/PanelSpinner/PanelSpinner.js +1 -1
- package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/components/Placeholder/Placeholder.d.ts +1 -1
- package/dist/components/Placeholder/Placeholder.js +1 -1
- package/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.d.ts +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.js +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.d.ts +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.js +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popover/Popover.d.ts +1 -1
- package/dist/components/Popover/Popover.js +1 -1
- package/dist/components/Popover/Popover.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts +1 -1
- package/dist/components/Popper/Popper.js +1 -1
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/Progress/Progress.d.ts +1 -1
- package/dist/components/Progress/Progress.js +1 -1
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/Radio/Radio.d.ts +1 -1
- package/dist/components/Radio/Radio.js +1 -1
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.d.ts +1 -1
- package/dist/components/RadioGroup/RadioGroup.js +1 -1
- package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/RichCell/RichCell.d.ts +3 -3
- package/dist/components/RichCell/RichCell.js +1 -1
- package/dist/components/RichCell/RichCell.js.map +1 -1
- package/dist/components/Root/Root.d.ts +1 -1
- package/dist/components/Root/Root.js +1 -1
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.d.ts +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/components/ScrollArrow/ScrollArrow.d.ts +1 -1
- package/dist/components/ScrollArrow/ScrollArrow.js +1 -1
- package/dist/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/components/Search/Search.d.ts +1 -1
- package/dist/components/Search/Search.js +1 -1
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.d.ts +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +0 -3
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +1 -3
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/components/Select/Select.d.ts +1 -1
- package/dist/components/Select/Select.js +1 -1
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/SelectionControl/SelectionControl.d.ts +1 -1
- package/dist/components/SelectionControl/SelectionControl.js +1 -1
- package/dist/components/SelectionControl/SelectionControl.js.map +1 -1
- package/dist/components/Separator/Separator.d.ts +1 -1
- package/dist/components/Separator/Separator.js +1 -1
- package/dist/components/Separator/Separator.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +1 -1
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/SimpleGrid/SimpleGrid.d.ts +3 -0
- package/dist/components/SimpleGrid/SimpleGrid.d.ts.map +1 -1
- package/dist/components/SimpleGrid/SimpleGrid.js +3 -1
- package/dist/components/SimpleGrid/SimpleGrid.js.map +1 -1
- package/dist/components/Skeleton/Skeleton.d.ts +3 -0
- package/dist/components/Skeleton/Skeleton.d.ts.map +1 -1
- package/dist/components/Skeleton/Skeleton.js +3 -0
- package/dist/components/Skeleton/Skeleton.js.map +1 -1
- package/dist/components/Slider/Slider.d.ts +1 -1
- package/dist/components/Slider/Slider.js +1 -1
- package/dist/components/Slider/Slider.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts +1 -1
- package/dist/components/Snackbar/Snackbar.js +1 -1
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/Spacing/Spacing.d.ts +1 -1
- package/dist/components/Spacing/Spacing.js +1 -1
- package/dist/components/Spacing/Spacing.js.map +1 -1
- package/dist/components/Spinner/Spinner.d.ts +1 -1
- package/dist/components/Spinner/Spinner.js +1 -1
- package/dist/components/Spinner/Spinner.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts +1 -1
- package/dist/components/SplitCol/SplitCol.js +1 -1
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.d.ts +1 -1
- package/dist/components/SplitLayout/SplitLayout.js +1 -1
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.d.ts +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.d.ts +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Switch/Switch.d.ts +1 -1
- package/dist/components/Switch/Switch.js +1 -1
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.d.ts +1 -1
- package/dist/components/Tabbar/Tabbar.js +1 -1
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/dist/components/TabbarItem/TabbarItem.js +1 -1
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts +1 -1
- package/dist/components/Tabs/Tabs.js +1 -1
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.d.ts +3 -3
- package/dist/components/TabsItem/TabsItem.js +1 -1
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts +1 -1
- package/dist/components/Textarea/Textarea.js +1 -1
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/ToolButton/ToolButton.d.ts +1 -1
- package/dist/components/ToolButton/ToolButton.js +1 -1
- package/dist/components/ToolButton/ToolButton.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/components/Tooltip/Tooltip.js +1 -1
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/TooltipBase/TooltipBase.d.ts +0 -2
- package/dist/components/TooltipBase/TooltipBase.d.ts.map +1 -1
- package/dist/components/TooltipBase/TooltipBase.js +0 -2
- package/dist/components/TooltipBase/TooltipBase.js.map +1 -1
- package/dist/components/Touch/Touch.d.ts +1 -1
- package/dist/components/Touch/Touch.js +1 -1
- package/dist/components/Touch/Touch.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.d.ts +1 -1
- package/dist/components/Typography/Caption/Caption.js +1 -1
- package/dist/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/components/Typography/DisplayTitle/DisplayTitle.d.ts +1 -1
- package/dist/components/Typography/DisplayTitle/DisplayTitle.js +1 -1
- package/dist/components/Typography/DisplayTitle/DisplayTitle.js.map +1 -1
- package/dist/components/Typography/EllipsisText/EllipsisText.d.ts +1 -1
- package/dist/components/Typography/EllipsisText/EllipsisText.js +1 -1
- package/dist/components/Typography/EllipsisText/EllipsisText.js.map +1 -1
- package/dist/components/Typography/Footnote/Footnote.d.ts +1 -1
- package/dist/components/Typography/Footnote/Footnote.js +1 -1
- package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/components/Typography/Headline/Headline.d.ts +1 -1
- package/dist/components/Typography/Headline/Headline.js +1 -1
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/Typography/Paragraph/Paragraph.d.ts +1 -1
- package/dist/components/Typography/Paragraph/Paragraph.js +1 -1
- package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/components/Typography/Subhead/Subhead.d.ts +1 -1
- package/dist/components/Typography/Subhead/Subhead.js +1 -1
- package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/components/Typography/Text/Text.d.ts +1 -1
- package/dist/components/Typography/Text/Text.js +1 -1
- package/dist/components/Typography/Text/Text.js.map +1 -1
- package/dist/components/Typography/Title/Title.d.ts +1 -1
- package/dist/components/Typography/Title/Title.js +1 -1
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/UnstyledTextField/UnstyledTextField.d.ts +4 -1
- package/dist/components/UnstyledTextField/UnstyledTextField.d.ts.map +1 -1
- package/dist/components/UnstyledTextField/UnstyledTextField.js +4 -1
- package/dist/components/UnstyledTextField/UnstyledTextField.js.map +1 -1
- package/dist/components/UsersStack/UsersStack.d.ts +1 -1
- package/dist/components/UsersStack/UsersStack.js +1 -1
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/View.d.ts +1 -1
- package/dist/components/View/View.js +1 -1
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.js +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/components/WriteBar/WriteBar.d.ts +1 -1
- package/dist/components/WriteBar/WriteBar.js +1 -1
- package/dist/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.d.ts +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components.css +1 -1
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/Accordion/Accordion.js +6 -2
- package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
- package/dist/cssm/components/Accordion/AccordionContent.js +4 -1
- package/dist/cssm/components/Accordion/AccordionContent.js.map +1 -1
- package/dist/cssm/components/Accordion/AccordionContext.js +12 -0
- package/dist/cssm/components/Accordion/AccordionContext.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js +1 -1
- package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.js +1 -1
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AspectRatio/AspectRatio.js +1 -1
- package/dist/cssm/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.js +1 -1
- package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
- package/dist/cssm/components/Badge/Badge.js +1 -1
- package/dist/cssm/components/Badge/Badge.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.js +1 -1
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/Button/Button.js +1 -1
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.js +1 -1
- package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.js +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/Card/Card.js +1 -1
- package/dist/cssm/components/Card/Card.js.map +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.js +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.js +1 -1
- package/dist/cssm/components/Cell/Cell.js.map +1 -1
- package/dist/cssm/components/CellButton/CellButton.js +1 -1
- package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
- package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js +1 -1
- package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.js +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.js +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/Chip/Chip.js +1 -1
- package/dist/cssm/components/ChipsInputBase/Chip/Chip.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +59 -34
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +17 -3
- package/dist/cssm/components/ChipsInputBase/helpers.js +2 -0
- package/dist/cssm/components/ChipsInputBase/helpers.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/types.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +5 -4
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
- package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ContentBadge/ContentBadge.js +1 -1
- package/dist/cssm/components/ContentBadge/ContentBadge.js.map +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.js +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.js +1 -1
- package/dist/cssm/components/Counter/Counter.js.map +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.js +2 -3
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/DirectionProvider/DirectionProvider.js +1 -1
- package/dist/cssm/components/DirectionProvider/DirectionProvider.js.map +1 -1
- package/dist/cssm/components/Div/Div.js +1 -1
- package/dist/cssm/components/Div/Div.js.map +1 -1
- package/dist/cssm/components/DropZone/DropZone.js +1 -1
- package/dist/cssm/components/DropZone/DropZone.js.map +1 -1
- package/dist/cssm/components/Epic/Epic.js +1 -1
- package/dist/cssm/components/Epic/Epic.js.map +1 -1
- package/dist/cssm/components/Epic/ScrollSaver.js +1 -3
- package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cssm/components/File/File.js +1 -1
- package/dist/cssm/components/File/File.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cssm/components/Flex/Flex.js +3 -1
- package/dist/cssm/components/Flex/Flex.js.map +1 -1
- package/dist/cssm/components/FocusTrap/FocusTrap.js +1 -3
- package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cssm/components/Footer/Footer.js +1 -1
- package/dist/cssm/components/Footer/Footer.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.js +1 -1
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.js +1 -1
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.js +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/cssm/components/Gallery/Gallery.js +1 -1
- package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
- package/dist/cssm/components/Gradient/Gradient.js +1 -1
- package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.js +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cssm/components/Group/Group.js +1 -1
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Header/Header.js +1 -1
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.js +3 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.js +1 -1
- package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
- package/dist/cssm/components/Image/Image.js +1 -1
- package/dist/cssm/components/Image/Image.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.js +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cssm/components/Input/Input.js +1 -1
- package/dist/cssm/components/Input/Input.js.map +1 -1
- package/dist/cssm/components/Link/Link.js +1 -1
- package/dist/cssm/components/Link/Link.js.map +1 -1
- package/dist/cssm/components/List/List.js +1 -1
- package/dist/cssm/components/List/List.js.map +1 -1
- package/dist/cssm/components/LocaleProvider/LocaleProvider.js +1 -1
- package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/cssm/components/Mark/Mark.js +1 -1
- package/dist/cssm/components/Mark/Mark.js.map +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.js +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js +1 -1
- package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.js +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.js +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.js +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js +6 -14
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js +4 -13
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.js +1 -1
- package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.js +1 -1
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cssm/components/PanelSpinner/PanelSpinner.js +1 -1
- package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.js +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js +1 -1
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/Popover/Popover.js +1 -1
- package/dist/cssm/components/Popover/Popover.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.js +1 -1
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/Progress/Progress.js +1 -1
- package/dist/cssm/components/Progress/Progress.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.js +1 -1
- package/dist/cssm/components/Radio/Radio.js.map +1 -1
- package/dist/cssm/components/RadioGroup/RadioGroup.js +1 -1
- package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/cssm/components/RichCell/RichCell.js +1 -1
- package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
- package/dist/cssm/components/Root/Root.js +1 -1
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js +1 -1
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/cssm/components/Search/Search.js +1 -1
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +1 -3
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cssm/components/Select/Select.js +1 -1
- package/dist/cssm/components/Select/Select.js.map +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/SelectionControl/SelectionControl.js +1 -1
- package/dist/cssm/components/SelectionControl/SelectionControl.js.map +1 -1
- package/dist/cssm/components/Separator/Separator.js +1 -1
- package/dist/cssm/components/Separator/Separator.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleGrid/SimpleGrid.js +3 -1
- package/dist/cssm/components/SimpleGrid/SimpleGrid.js.map +1 -1
- package/dist/cssm/components/Skeleton/Skeleton.js +3 -0
- package/dist/cssm/components/Skeleton/Skeleton.js.map +1 -1
- package/dist/cssm/components/Slider/Slider.js +1 -1
- package/dist/cssm/components/Slider/Slider.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.js +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Spacing/Spacing.js +1 -1
- package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
- package/dist/cssm/components/Spinner/Spinner.js +1 -1
- package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/Switch/Switch.js +1 -1
- package/dist/cssm/components/Switch/Switch.js.map +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.js +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.js +1 -1
- package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.js +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.js +1 -1
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/ToolButton/ToolButton.js +1 -1
- package/dist/cssm/components/ToolButton/ToolButton.js.map +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.js +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/TooltipBase/TooltipBase.js +0 -2
- package/dist/cssm/components/TooltipBase/TooltipBase.js.map +1 -1
- package/dist/cssm/components/Touch/Touch.js +1 -1
- package/dist/cssm/components/Touch/Touch.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.js +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cssm/components/Typography/DisplayTitle/DisplayTitle.js +1 -1
- package/dist/cssm/components/Typography/DisplayTitle/DisplayTitle.js.map +1 -1
- package/dist/cssm/components/Typography/EllipsisText/EllipsisText.js +1 -1
- package/dist/cssm/components/Typography/EllipsisText/EllipsisText.js.map +1 -1
- package/dist/cssm/components/Typography/Footnote/Footnote.js +1 -1
- package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.js +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js +1 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.js +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cssm/components/Typography/Text/Text.js +1 -1
- package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
- package/dist/cssm/components/Typography/Title/Title.js +1 -1
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/UnstyledTextField/UnstyledTextField.js +4 -1
- package/dist/cssm/components/UnstyledTextField/UnstyledTextField.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.js +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/View/View.js +1 -1
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.js +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivity.js +1 -1
- package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
- package/dist/cssm/index.js +1 -1
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/SSR.js +1 -1
- package/dist/cssm/lib/SSR.js.map +1 -1
- package/dist/cssm/lib/accessibility.js +4 -0
- package/dist/cssm/lib/accessibility.js.map +1 -1
- package/dist/hooks/useAdaptivity.d.ts +1 -1
- package/dist/hooks/useAdaptivity.js +1 -1
- package/dist/hooks/useAdaptivity.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/SSR.d.ts +1 -1
- package/dist/lib/SSR.js +1 -1
- package/dist/lib/SSR.js.map +1 -1
- package/dist/lib/accessibility.d.ts +1 -1
- package/dist/lib/accessibility.d.ts.map +1 -1
- package/dist/lib/accessibility.js +4 -0
- package/dist/lib/accessibility.js.map +1 -1
- package/dist/vkui.css +1 -1
- package/dist/vkui.css.map +1 -1
- package/package.json +5 -4
- package/src/components/Accordion/Accordion.tsx +13 -4
- package/src/components/Accordion/AccordionContent.tsx +5 -1
- package/src/components/Accordion/AccordionContext.tsx +17 -0
- package/src/components/ActionSheet/ActionSheet.tsx +1 -1
- package/src/components/ActionSheetItem/ActionSheetItem.tsx +1 -1
- package/src/components/AdaptiveIconRenderer/AdaptiveIconRenderer.tsx +1 -1
- package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +1 -1
- package/src/components/Alert/Alert.tsx +1 -1
- package/src/components/AppRoot/AppRoot.mdx +1 -1
- package/src/components/AppRoot/AppRoot.tsx +3 -3
- package/src/components/AspectRatio/AspectRatio.tsx +1 -1
- package/src/components/Avatar/Avatar.tsx +1 -1
- package/src/components/Badge/Badge.tsx +1 -1
- package/src/components/Banner/Banner.tsx +3 -3
- package/src/components/Button/Button.tsx +1 -1
- package/src/components/ButtonGroup/ButtonGroup.tsx +1 -1
- package/src/components/Calendar/Calendar.tsx +1 -1
- package/src/components/CalendarRange/CalendarRange.tsx +1 -1
- package/src/components/Card/Card.tsx +1 -1
- package/src/components/CardGrid/CardGrid.tsx +1 -1
- package/src/components/CardScroll/CardScroll.tsx +1 -1
- package/src/components/Cell/Cell.tsx +1 -1
- package/src/components/CellButton/CellButton.tsx +1 -1
- package/src/components/CellButtonGroup/CellButtonGroup.tsx +1 -1
- package/src/components/Checkbox/Checkbox.tsx +1 -1
- package/src/components/ChipsInput/ChipsInput.tsx +1 -1
- package/src/components/ChipsInputBase/Chip/Chip.tsx +1 -1
- package/src/components/ChipsInputBase/ChipsInputBase.module.css +15 -3
- package/src/components/ChipsInputBase/ChipsInputBase.module.css.d.ts.map +1 -1
- package/src/components/ChipsInputBase/ChipsInputBase.tsx +68 -37
- package/src/components/ChipsInputBase/helpers.ts +2 -0
- package/src/components/ChipsInputBase/types.ts +5 -1
- package/src/components/ChipsSelect/ChipsSelect.tsx +5 -2
- package/src/components/ColorSchemeProvider/ColorSchemeProvider.tsx +1 -1
- package/src/components/ConfigProvider/ConfigProvider.tsx +1 -1
- package/src/components/ContentBadge/ContentBadge.tsx +1 -1
- package/src/components/ContentCard/ContentCard.tsx +1 -1
- package/src/components/Counter/Counter.tsx +1 -1
- package/src/components/CustomScrollView/CustomScrollView.tsx +1 -1
- package/src/components/CustomSelect/CustomSelect.tsx +2 -2
- package/src/components/CustomSelectOption/CustomSelectOption.tsx +3 -3
- package/src/components/DateInput/DateInput.tsx +1 -1
- package/src/components/DateRangeInput/DateRangeInput.tsx +1 -1
- package/src/components/DirectionProvider/DirectionProvider.tsx +1 -1
- package/src/components/Div/Div.tsx +1 -1
- package/src/components/DropZone/DropZone.tsx +1 -1
- package/src/components/Epic/Epic.tsx +1 -1
- package/src/components/Epic/ScrollSaver.tsx +0 -3
- package/src/components/File/File.tsx +1 -1
- package/src/components/FixedLayout/FixedLayout.tsx +1 -1
- package/src/components/Flex/Flex.tsx +3 -0
- package/src/components/FocusTrap/FocusTrap.tsx +0 -3
- package/src/components/Footer/Footer.tsx +1 -1
- package/src/components/FormField/FormField.tsx +3 -3
- package/src/components/FormItem/FormItem.tsx +1 -1
- package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +1 -1
- package/src/components/FormStatus/FormStatus.tsx +1 -1
- package/src/components/Gallery/Gallery.tsx +1 -1
- package/src/components/Gradient/Gradient.tsx +1 -1
- package/src/components/GridAvatar/GridAvatar.tsx +1 -1
- package/src/components/Group/Group.tsx +1 -1
- package/src/components/Header/Header.tsx +1 -1
- package/src/components/HorizontalCell/HorizontalCell.tsx +1 -1
- package/src/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.tsx +3 -0
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +1 -1
- package/src/components/IconButton/IconButton.tsx +1 -1
- package/src/components/Image/Image.tsx +1 -1
- package/src/components/ImageBase/ImageBase.tsx +1 -1
- package/src/components/InfoRow/InfoRow.tsx +1 -1
- package/src/components/Input/Input.tsx +1 -1
- package/src/components/Link/Link.tsx +1 -1
- package/src/components/List/List.tsx +1 -1
- package/src/components/LocaleProvider/LocaleProvider.tsx +1 -1
- package/src/components/Mark/Mark.tsx +1 -1
- package/src/components/MiniInfoCell/MiniInfoCell.tsx +1 -1
- package/src/components/ModalCard/ModalCard.tsx +1 -1
- package/src/components/ModalCardBase/ModalCardBase.tsx +3 -3
- package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -1
- package/src/components/ModalOutsideButton/ModalOutsideButton.tsx +1 -1
- package/src/components/ModalPage/ModalPage.tsx +1 -1
- package/src/components/ModalPageHeader/ModalPageHeader.tsx +1 -1
- package/src/components/ModalRoot/ModalRoot.tsx +1 -1
- package/src/components/NativeSelect/NativeSelect.tsx +1 -1
- package/src/components/OnboardingTooltip/OnboardingTooltip.tsx +8 -14
- package/src/components/OnboardingTooltip/OnboardingTooltipContainer.tsx +1 -10
- package/src/components/Pagination/Pagination.tsx +3 -3
- package/src/components/Panel/Panel.tsx +3 -3
- package/src/components/PanelHeader/PanelHeader.tsx +1 -1
- package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +1 -1
- package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +1 -1
- package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +1 -1
- package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +1 -1
- package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +1 -1
- package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +1 -1
- package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +1 -1
- package/src/components/PanelSpinner/PanelSpinner.tsx +1 -1
- package/src/components/Placeholder/Placeholder.tsx +1 -1
- package/src/components/PlatformProvider/PlatformProvider.tsx +1 -1
- package/src/components/PopoutWrapper/PopoutWrapper.tsx +1 -1
- package/src/components/Popover/Popover.tsx +1 -1
- package/src/components/Popper/Popper.tsx +1 -1
- package/src/components/Progress/Progress.tsx +1 -1
- package/src/components/PullToRefresh/PullToRefresh.tsx +1 -1
- package/src/components/Radio/Radio.tsx +1 -1
- package/src/components/RadioGroup/RadioGroup.tsx +1 -1
- package/src/components/RichCell/RichCell.tsx +3 -3
- package/src/components/Root/Root.tsx +1 -1
- package/src/components/ScreenSpinner/ScreenSpinner.tsx +1 -1
- package/src/components/ScrollArrow/ScrollArrow.tsx +1 -1
- package/src/components/Search/Search.tsx +1 -1
- package/src/components/SegmentedControl/SegmentedControl.tsx +1 -1
- package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.tsx +0 -3
- package/src/components/Select/Select.tsx +1 -1
- package/src/components/SelectMimicry/SelectMimicry.tsx +1 -1
- package/src/components/SelectionControl/SelectionControl.tsx +1 -1
- package/src/components/Separator/Separator.tsx +1 -1
- package/src/components/SimpleCell/SimpleCell.tsx +1 -1
- package/src/components/SimpleGrid/SimpleGrid.tsx +3 -0
- package/src/components/Skeleton/Skeleton.tsx +3 -0
- package/src/components/Slider/Slider.tsx +1 -1
- package/src/components/Snackbar/Snackbar.tsx +1 -1
- package/src/components/Spacing/Spacing.tsx +1 -1
- package/src/components/Spinner/Spinner.tsx +1 -1
- package/src/components/SplitCol/SplitCol.tsx +1 -1
- package/src/components/SplitLayout/SplitLayout.tsx +1 -1
- package/src/components/SubnavigationBar/SubnavigationBar.tsx +1 -1
- package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -1
- package/src/components/Switch/Switch.tsx +1 -1
- package/src/components/Tabbar/Tabbar.tsx +1 -1
- package/src/components/TabbarItem/TabbarItem.tsx +1 -1
- package/src/components/Tabs/Tabs.tsx +1 -1
- package/src/components/TabsItem/TabsItem.tsx +3 -3
- package/src/components/Textarea/Textarea.tsx +1 -1
- package/src/components/ToolButton/ToolButton.tsx +1 -1
- package/src/components/Tooltip/Tooltip.tsx +1 -1
- package/src/components/TooltipBase/TooltipBase.tsx +0 -2
- package/src/components/Touch/Touch.tsx +1 -1
- package/src/components/Typography/Caption/Caption.tsx +1 -1
- package/src/components/Typography/DisplayTitle/DisplayTitle.tsx +1 -1
- package/src/components/Typography/EllipsisText/EllipsisText.tsx +1 -1
- package/src/components/Typography/Footnote/Footnote.tsx +1 -1
- package/src/components/Typography/Headline/Headline.tsx +1 -1
- package/src/components/Typography/Paragraph/Paragraph.tsx +1 -1
- package/src/components/Typography/Subhead/Subhead.tsx +1 -1
- package/src/components/Typography/Text/Text.tsx +1 -1
- package/src/components/Typography/Title/Title.tsx +1 -1
- package/src/components/UnstyledTextField/UnstyledTextField.mdx +1 -1
- package/src/components/UnstyledTextField/UnstyledTextField.tsx +4 -1
- package/src/components/UsersStack/UsersStack.tsx +1 -1
- package/src/components/View/View.tsx +1 -1
- package/src/components/VisuallyHidden/VisuallyHidden.tsx +1 -1
- package/src/components/WriteBar/WriteBar.tsx +1 -1
- package/src/components/WriteBarIcon/WriteBarIcon.tsx +1 -1
- package/src/hooks/useAdaptivity.ts +1 -1
- package/src/index.ts +1 -1
- package/src/lib/SSR.tsx +1 -1
- package/src/lib/accessibility.ts +6 -2
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts +0 -7
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts.map +0 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js +0 -9
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js.map +0 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js +0 -9
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js.map +0 -1
- package/src/components/OnboardingTooltip/OnboardingTooltipContext.tsx +0 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { mergeStyle } from '../../helpers/mergeStyle';\nimport { defineComponentDisplayNames } from '../../lib/react/defineComponentDisplayNames';\nimport { type CSSCustomProperties } from '../../types';\nimport { ImageBase, type ImageBaseOverlayProps, type ImageBaseProps } from '../ImageBase/ImageBase';\nimport { ImageBadge, type ImageBadgeProps } from './ImageBadge/ImageBadge';\nimport styles from './Image.module.css';\n\nexport type { ImageBadgeProps, ImageBaseOverlayProps as ImageOverlayProps };\n\nconst IMAGE_DEFAULT_SIZE = 48;\n\nexport interface ImageProps extends Omit<ImageBaseProps, 'badge'> {\n /**\n * Размер закругления.\n */\n borderRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между сторонами начала блока и строки.\n */\n borderStartStartRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между стороной начала блока и стороной конца строки.\n */\n borderStartEndRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между стороной конца блока и стороной начала строки.\n */\n borderEndStartRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между сторонами конца блока и строки.\n */\n borderEndEndRadius?: 's' | 'l' | 'm';\n}\n\nconst getBorderRadiusBySize = (\n size: Exclude<ImageBaseProps['size'], undefined>,\n borderRadius: Exclude<ImageProps['borderRadius'], undefined>,\n) => {\n switch (borderRadius) {\n case 's': {\n if (size <= 32) {\n return 2;\n }\n if (size <= 56) {\n return 3;\n }\n return 4;\n }\n case 'm': {\n if (size <= 32) {\n return 3;\n }\n if (size <= 48) {\n return 4;\n }\n if (size <= 72) {\n return 6;\n }\n if (size <= 80) {\n return 8;\n }\n return 10;\n }\n case 'l': {\n if (size <= 16) {\n return 4;\n }\n if (size <= 20) {\n return 5;\n }\n if (size <= 32) {\n return 6;\n }\n if (size <= 40) {\n return 8;\n }\n if (size <= 48) {\n return 10;\n }\n if (size <= 56) {\n return 12;\n }\n if (size <= 64) {\n return 14;\n }\n return 16;\n }\n }\n};\n\nconst getBorderRadiusBySizeInPx = (\n size: Exclude<ImageBaseProps['size'], undefined>,\n borderRadius: ImageProps['borderRadius'],\n) => {\n if (!borderRadius) {\n return undefined;\n }\n\n return `${getBorderRadiusBySize(size, borderRadius)}px`;\n};\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { mergeStyle } from '../../helpers/mergeStyle';\nimport { defineComponentDisplayNames } from '../../lib/react/defineComponentDisplayNames';\nimport { type CSSCustomProperties } from '../../types';\nimport { ImageBase, type ImageBaseOverlayProps, type ImageBaseProps } from '../ImageBase/ImageBase';\nimport { ImageBadge, type ImageBadgeProps } from './ImageBadge/ImageBadge';\nimport styles from './Image.module.css';\n\nexport type { ImageBadgeProps, ImageBaseOverlayProps as ImageOverlayProps };\n\nconst IMAGE_DEFAULT_SIZE = 48;\n\nexport interface ImageProps extends Omit<ImageBaseProps, 'badge'> {\n /**\n * Размер закругления.\n */\n borderRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между сторонами начала блока и строки.\n */\n borderStartStartRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между стороной начала блока и стороной конца строки.\n */\n borderStartEndRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между стороной конца блока и стороной начала строки.\n */\n borderEndStartRadius?: 's' | 'l' | 'm';\n /**\n * Размер закругления угла между сторонами конца блока и строки.\n */\n borderEndEndRadius?: 's' | 'l' | 'm';\n}\n\nconst getBorderRadiusBySize = (\n size: Exclude<ImageBaseProps['size'], undefined>,\n borderRadius: Exclude<ImageProps['borderRadius'], undefined>,\n) => {\n switch (borderRadius) {\n case 's': {\n if (size <= 32) {\n return 2;\n }\n if (size <= 56) {\n return 3;\n }\n return 4;\n }\n case 'm': {\n if (size <= 32) {\n return 3;\n }\n if (size <= 48) {\n return 4;\n }\n if (size <= 72) {\n return 6;\n }\n if (size <= 80) {\n return 8;\n }\n return 10;\n }\n case 'l': {\n if (size <= 16) {\n return 4;\n }\n if (size <= 20) {\n return 5;\n }\n if (size <= 32) {\n return 6;\n }\n if (size <= 40) {\n return 8;\n }\n if (size <= 48) {\n return 10;\n }\n if (size <= 56) {\n return 12;\n }\n if (size <= 64) {\n return 14;\n }\n return 16;\n }\n }\n};\n\nconst getBorderRadiusBySizeInPx = (\n size: Exclude<ImageBaseProps['size'], undefined>,\n borderRadius: ImageProps['borderRadius'],\n) => {\n if (!borderRadius) {\n return undefined;\n }\n\n return `${getBorderRadiusBySize(size, borderRadius)}px`;\n};\n\n/**\n * @see https://vkui.io/components/image\n */\nexport const Image: React.FC<ImageProps> & {\n Badge: typeof ImageBadge;\n Overlay: typeof ImageBase.Overlay;\n FloatElement: typeof ImageBase.FloatElement;\n} = ({\n size = IMAGE_DEFAULT_SIZE,\n borderRadius = 'm',\n borderStartStartRadius,\n borderStartEndRadius,\n borderEndStartRadius,\n borderEndEndRadius,\n style,\n className,\n objectFit = 'cover',\n ...restProps\n}: ImageProps) => {\n const borderStyles: CSSCustomProperties<string | undefined> = React.useMemo(\n () => ({\n '--vkui_internal--Image_border_radius': getBorderRadiusBySizeInPx(size, borderRadius),\n '--vkui_internal--Image_border_start_start_radius': getBorderRadiusBySizeInPx(\n size,\n borderStartStartRadius,\n ),\n '--vkui_internal--Image_border_start_end_radius': getBorderRadiusBySizeInPx(\n size,\n borderStartEndRadius,\n ),\n '--vkui_internal--Image_border_end_start_radius': getBorderRadiusBySizeInPx(\n size,\n borderEndStartRadius,\n ),\n '--vkui_internal--Image_border_end_end_radius': getBorderRadiusBySizeInPx(\n size,\n borderEndEndRadius,\n ),\n }),\n [\n borderRadius,\n borderStartStartRadius,\n borderStartEndRadius,\n borderEndStartRadius,\n borderEndEndRadius,\n size,\n ],\n );\n\n return (\n <ImageBase\n {...restProps}\n objectFit={objectFit}\n size={size}\n style={mergeStyle(borderStyles, style)}\n className={classNames(\n className,\n styles.host,\n borderStartStartRadius && styles.borderStartStartRadius,\n borderStartEndRadius && styles.borderStartEndRadius,\n borderEndStartRadius && styles.borderEndStartRadius,\n borderEndEndRadius && styles.borderEndEndRadius,\n )}\n />\n );\n};\n\nImage.Badge = ImageBadge;\nImage.Overlay = ImageBase.Overlay;\nImage.FloatElement = ImageBase.FloatElement;\n\nif (process.env.NODE_ENV !== 'production') {\n defineComponentDisplayNames(Image.Badge, 'Image.Badge');\n defineComponentDisplayNames(Image.Overlay, 'Image.Overlay');\n defineComponentDisplayNames(Image.FloatElement, 'Image.FloatElement');\n}\n"],"names":["React","classNames","mergeStyle","defineComponentDisplayNames","ImageBase","ImageBadge","styles","IMAGE_DEFAULT_SIZE","getBorderRadiusBySize","size","borderRadius","getBorderRadiusBySizeInPx","undefined","Image","borderStartStartRadius","borderStartEndRadius","borderEndStartRadius","borderEndEndRadius","style","className","objectFit","restProps","borderStyles","useMemo","host","Badge","Overlay","FloatElement","process","env","NODE_ENV"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,UAAU,QAAQ,8BAA2B;AACtD,SAASC,2BAA2B,QAAQ,iDAA8C;AAE1F,SAASC,SAAS,QAAyD,4BAAyB;AACpG,SAASC,UAAU,QAA8B,6BAA0B;AAC3E,OAAOC,YAAY,qBAAqB;AAIxC,MAAMC,qBAAqB;AAyB3B,MAAMC,wBAAwB,CAC5BC,MACAC;IAEA,OAAQA;QACN,KAAK;YAAK;gBACR,IAAID,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,OAAO;YACT;QACA,KAAK;YAAK;gBACR,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,OAAO;YACT;QACA,KAAK;YAAK;gBACR,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,IAAIA,QAAQ,IAAI;oBACd,OAAO;gBACT;gBACA,OAAO;YACT;IACF;AACF;AAEA,MAAME,4BAA4B,CAChCF,MACAC;IAEA,IAAI,CAACA,cAAc;QACjB,OAAOE;IACT;IAEA,OAAO,GAAGJ,sBAAsBC,MAAMC,cAAc,EAAE,CAAC;AACzD;AAEA;;CAEC,GACD,OAAO,MAAMG,QAIT,CAAC,EACHJ,OAAOF,kBAAkB,EACzBG,eAAe,GAAG,EAClBI,sBAAsB,EACtBC,oBAAoB,EACpBC,oBAAoB,EACpBC,kBAAkB,EAClBC,KAAK,EACLC,SAAS,EACTC,YAAY,OAAO,EACnB,GAAGC,WACQ;IACX,MAAMC,eAAwDtB,MAAMuB,OAAO,CACzE,IAAO,CAAA;YACL,wCAAwCZ,0BAA0BF,MAAMC;YACxE,oDAAoDC,0BAClDF,MACAK;YAEF,kDAAkDH,0BAChDF,MACAM;YAEF,kDAAkDJ,0BAChDF,MACAO;YAEF,gDAAgDL,0BAC9CF,MACAQ;QAEJ,CAAA,GACA;QACEP;QACAI;QACAC;QACAC;QACAC;QACAR;KACD;IAGH,qBACE,KAACL;QACE,GAAGiB,SAAS;QACbD,WAAWA;QACXX,MAAMA;QACNS,OAAOhB,WAAWoB,cAAcJ;QAChCC,WAAWlB,WACTkB,WACAb,OAAOkB,IAAI,EACXV,0BAA0BR,OAAOQ,sBAAsB,EACvDC,wBAAwBT,OAAOS,oBAAoB,EACnDC,wBAAwBV,OAAOU,oBAAoB,EACnDC,sBAAsBX,OAAOW,kBAAkB;;AAIvD,EAAE;AAEFJ,MAAMY,KAAK,GAAGpB;AACdQ,MAAMa,OAAO,GAAGtB,UAAUsB,OAAO;AACjCb,MAAMc,YAAY,GAAGvB,UAAUuB,YAAY;AAE3C,IAAIC,QAAQC,GAAG,CAACC,QAAQ,KAAK,cAAc;IACzC3B,4BAA4BU,MAAMY,KAAK,EAAE;IACzCtB,4BAA4BU,MAAMa,OAAO,EAAE;IAC3CvB,4BAA4BU,MAAMc,YAAY,EAAE;AAClD"}
|
|
@@ -46,7 +46,7 @@ const sizeToNumber = (size)=>{
|
|
|
46
46
|
return size;
|
|
47
47
|
};
|
|
48
48
|
/**
|
|
49
|
-
* @see https://
|
|
49
|
+
* @see https://vkui.io/components/image-base
|
|
50
50
|
*/ export const ImageBase = ({ alt, crossOrigin, decoding, loading, referrerPolicy, sizes, src, srcSet, useMap, fetchPriority, getRef, size: sizeProp, width: widthImg, height: heightImg, widthSize, heightSize, noBorder = false, fallbackIcon: fallbackIconProp, children, onLoad, onError, withTransparentBackground, objectFit = 'cover', objectPosition, filter, keepAspectRatio = false, getRootRef, elementTiming, ...restProps })=>{
|
|
51
51
|
const size = sizeProp ?? minOr([
|
|
52
52
|
sizeToNumber(widthSize),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ImageBase/ImageBase.tsx"],"sourcesContent":["'use client';\n\nimport { useRef } from 'react';\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { mergeStyle } from '../../helpers/mergeStyle';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { minOr } from '../../lib/comparing';\nimport { defineComponentDisplayNames } from '../../lib/react/defineComponentDisplayNames';\nimport { getFetchPriorityProp } from '../../lib/utils';\nimport type {\n AnchorHTMLAttributesOnly,\n CSSCustomProperties,\n HasRef,\n HasRootRef,\n LiteralUnion,\n} from '../../types';\nimport { Clickable } from '../Clickable/Clickable';\nimport { ImageBaseBadge, type ImageBaseBadgeProps } from './ImageBaseBadge/ImageBaseBadge';\nimport {\n type FloatElementIndentation,\n type FloatElementPlacement,\n ImageBaseFloatElement,\n type ImageBaseFloatElementProps,\n} from './ImageBaseFloatElement/ImageBaseFloatElement';\nimport { ImageBaseOverlay, type ImageBaseOverlayProps } from './ImageBaseOverlay/ImageBaseOverlay';\nimport { ImageBaseContext } from './context';\nimport type { ImageBaseContextProps, ImageBaseExpectedIconProps, ImageBaseSize } from './types';\nimport { validateFallbackIcon, validateSize } from './validators';\nimport styles from './ImageBase.module.css';\n\nexport type {\n ImageBaseSize,\n ImageBaseExpectedIconProps,\n ImageBaseBadgeProps,\n ImageBaseOverlayProps,\n ImageBaseContextProps,\n ImageBaseFloatElementProps,\n FloatElementPlacement,\n FloatElementIndentation,\n};\n\nexport {\n getBadgeIconSizeByImageBaseSize,\n getFallbackIconSizeByImageBaseSize,\n getOverlayIconSizeByImageBaseSize,\n} from './helpers';\n\nexport { ImageBaseContext };\n\n/**\n * Размер по умолчанию.\n */\nconst defaultSize = 24;\n\nexport interface ImageBaseProps\n extends React.ImgHTMLAttributes<HTMLElement>,\n AnchorHTMLAttributesOnly,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLImageElement> {\n /**\n * Задаёт размер картинки.\n *\n * Используйте размеры заданные дизайн-системой `16 | 20 | 24 | 28 | 32 | 36 | 40 | 44 | 48 | 56 | 64 | 72 | 80 | 88 | 96`.\n *\n * > ⚠️ Использование кастомного размера – это пограничный кейс.\n */\n size?: LiteralUnion<ImageBaseSize, number>;\n /**\n * Ширина изображения.\n */\n widthSize?: number | string;\n /**\n * Высота изображения.\n */\n heightSize?: number | string;\n /**\n * Отключает обводку.\n */\n noBorder?: boolean;\n /**\n * Фолбек на случай, если картинка не прогрузилась.\n *\n * > 📝 Нужный для `<ImageBase size={...} />` размер можно узнать из функции `getFallbackIconSizeByImageBaseSize()`.\n *\n * > Предпочтительней использовать иконки из `@vkontakte/icons`.\n *\n * > 📊️ Если вы хотите передать кастомную иконку, то следует именовать её по шаблону `Icon<size><name>`. Или же\n * > чтобы в неё был передан параметр `width`. Тогда мы сможем выводить в консоль подсказку правильного ли размера вы\n * > использовали иконку.\n *\n * > ⚠️ Может перекрывать `children`.\n */\n fallbackIcon?: React.ReactElement<ImageBaseExpectedIconProps>;\n /**\n * Отключает фон, заданный по умолчанию. Полезен для отображения картинок с прозрачностью.\n * @since 5.10.0\n */\n withTransparentBackground?: boolean;\n /**\n * Пользовательское значения стиля object-fit\n * Подробнее можно почитать в [документации](https://developer.mozilla.org/ru/docs/Web/CSS/object-fit).\n */\n objectFit?: React.CSSProperties['objectFit'];\n /**\n * Пользовательское значения стиля object-position\n * Подробнее можно почитать в [документации](https://developer.mozilla.org/ru/docs/Web/CSS/object-position).\n */\n objectPosition?: React.CSSProperties['objectPosition'];\n /**\n * Флаг для сохранения пропорций картинки.\n * Для корректной работы необходимо задать размеры хотя бы одной стороны картинки.\n */\n keepAspectRatio?: boolean;\n /**\n * Смотри https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/elementtiming.\n */\n elementTiming?: string;\n /**\n * Пользовательское значения стиля filter\n * Подробнее можно почитать в [документации](https://developer.mozilla.org/ru/docs/Web/CSS/filter).\n */\n filter?: React.CSSProperties['filter'];\n}\n\nconst getObjectFitClassName = (objectFit: React.CSSProperties['objectFit']) => {\n switch (objectFit) {\n case 'contain':\n return styles.imgObjectFitContain;\n case 'cover':\n return styles.imgObjectFitCover;\n case 'none':\n return styles.imgObjectFitNone;\n case 'scale-down':\n return styles.imgObjectFitScaleDown;\n }\n return undefined;\n};\n\nconst parsePx = (value: string): number | undefined => {\n if (value.endsWith('px')) {\n return parseInt(value);\n }\n return undefined;\n};\n\nconst sizeToNumber = (size: number | string | undefined): number | undefined => {\n if (typeof size === 'string') {\n return parsePx(size);\n }\n return size;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ImageBase\n */\nexport const ImageBase: React.FC<ImageBaseProps> & {\n Badge: typeof ImageBaseBadge;\n Overlay: typeof ImageBaseOverlay;\n FloatElement: typeof ImageBaseFloatElement;\n} = ({\n alt,\n crossOrigin,\n decoding,\n loading,\n referrerPolicy,\n sizes,\n src,\n srcSet,\n useMap,\n fetchPriority,\n getRef,\n size: sizeProp,\n width: widthImg,\n height: heightImg,\n widthSize,\n heightSize,\n noBorder = false,\n fallbackIcon: fallbackIconProp,\n children,\n onLoad,\n onError,\n withTransparentBackground,\n objectFit = 'cover',\n objectPosition,\n filter,\n keepAspectRatio = false,\n getRootRef,\n elementTiming,\n ...restProps\n}: ImageBaseProps) => {\n const size = sizeProp ?? minOr([sizeToNumber(widthSize), sizeToNumber(heightSize)], defaultSize);\n const wrapperRef = useExternRef(getRootRef);\n\n const width = widthSize ?? (keepAspectRatio ? undefined : size);\n const height = heightSize ?? (keepAspectRatio ? undefined : size);\n\n const [loaded, setLoaded] = React.useState(false);\n const [failed, setFailed] = React.useState(false);\n\n const mouseOverHandlersRef = useRef<VoidFunction[]>([]);\n const mouseOutHandlersRef = useRef<VoidFunction[]>([]);\n\n const hasSrc = src || srcSet;\n const needShowFallbackIcon = (failed || !hasSrc) && React.isValidElement(fallbackIconProp);\n\n const fallbackIcon = needShowFallbackIcon ? fallbackIconProp : null;\n\n if (process.env.NODE_ENV === 'development') {\n validateSize(size);\n if (fallbackIcon) {\n validateFallbackIcon(size, { name: 'fallbackIcon', value: fallbackIcon });\n }\n }\n\n const handleImageLoad = (event: React.SyntheticEvent<HTMLImageElement>) => {\n if (loaded) {\n return;\n }\n\n setLoaded(true);\n setFailed(false);\n onLoad?.(event);\n };\n\n const handleImageError = (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoaded(false);\n setFailed(true);\n onError?.(event);\n };\n\n const imgRef = useExternRef(getRef);\n const isOnLoadStatusCheckedRef = React.useRef(false);\n React.useEffect(\n function dispatchLoadEventForAlreadyLoadedResourceIfReactInitializedLater() {\n if (isOnLoadStatusCheckedRef.current) {\n return;\n }\n isOnLoadStatusCheckedRef.current = true;\n\n if (imgRef.current && imgRef.current.complete && !loaded) {\n const event = new Event('load');\n imgRef.current.dispatchEvent(event);\n }\n },\n [imgRef, loaded],\n );\n\n const onMouseOver = () => {\n mouseOverHandlersRef.current.forEach((fn) => fn());\n };\n\n const onMouseOut = () => {\n mouseOutHandlersRef.current.forEach((fn) => fn());\n };\n\n const contextValue = React.useMemo(\n () => ({\n size,\n onMouseOverHandlers: mouseOverHandlersRef.current,\n onMouseOutHandlers: mouseOutHandlersRef.current,\n }),\n [size],\n );\n\n const imgStyles:\n | CSSCustomProperties<React.CSSProperties['objectPosition'] | React.CSSProperties['filter']>\n | undefined =\n objectPosition || filter\n ? {\n '--vkui_internal--ImageBase_object_position': objectPosition,\n '--vkui_internal--ImageBase_object_filter': filter,\n }\n : undefined;\n\n const keepAspectRationStyles = keepAspectRatio\n ? {\n width: widthImg || width,\n height: heightImg || height,\n }\n : undefined;\n\n return (\n <ImageBaseContext.Provider value={contextValue}>\n <Clickable\n baseStyle={{ width, height }}\n baseClassName={classNames(\n styles.host,\n hasSrc && loaded && styles.loaded,\n withTransparentBackground && styles.transparentBackground,\n )}\n getRootRef={wrapperRef}\n onMouseOver={onMouseOver}\n onMouseOut={onMouseOut}\n {...restProps}\n >\n {hasSrc && (\n <img\n ref={imgRef}\n alt={alt}\n className={classNames(\n styles.img,\n getObjectFitClassName(objectFit),\n objectPosition && styles.withObjectPosition,\n filter && styles.withFilter,\n keepAspectRatio && styles.imgKeepRatio,\n )}\n crossOrigin={crossOrigin}\n decoding={decoding}\n loading={loading}\n referrerPolicy={referrerPolicy}\n style={mergeStyle(keepAspectRationStyles, imgStyles)}\n sizes={sizes}\n src={src}\n srcSet={srcSet}\n useMap={useMap}\n width={widthImg}\n height={heightImg}\n onLoad={handleImageLoad}\n onError={handleImageError}\n // @ts-expect-error: TS2322 отсутствует в @types/react\n elementtiming={elementTiming} // eslint-disable-line react/no-unknown-property\n {...getFetchPriorityProp(fetchPriority)}\n />\n )}\n {fallbackIcon && <div className={styles.fallback}>{fallbackIcon}</div>}\n {children && <div className={styles.children}>{children}</div>}\n {!noBorder && <div aria-hidden className={styles.border} />}\n </Clickable>\n </ImageBaseContext.Provider>\n );\n};\nImageBase.Badge = ImageBaseBadge;\nImageBase.Overlay = ImageBaseOverlay;\nImageBase.FloatElement = ImageBaseFloatElement;\n\nif (process.env.NODE_ENV !== 'production') {\n defineComponentDisplayNames(ImageBase.Badge, 'ImageBase.Badge');\n defineComponentDisplayNames(ImageBase.Overlay, 'ImageBase.Overlay');\n defineComponentDisplayNames(ImageBase.FloatElement, 'ImageBase.FloatElement');\n}\n"],"names":["useRef","React","classNames","mergeStyle","useExternRef","minOr","defineComponentDisplayNames","getFetchPriorityProp","Clickable","ImageBaseBadge","ImageBaseFloatElement","ImageBaseOverlay","ImageBaseContext","validateFallbackIcon","validateSize","styles","getBadgeIconSizeByImageBaseSize","getFallbackIconSizeByImageBaseSize","getOverlayIconSizeByImageBaseSize","defaultSize","getObjectFitClassName","objectFit","imgObjectFitContain","imgObjectFitCover","imgObjectFitNone","imgObjectFitScaleDown","undefined","parsePx","value","endsWith","parseInt","sizeToNumber","size","ImageBase","alt","crossOrigin","decoding","loading","referrerPolicy","sizes","src","srcSet","useMap","fetchPriority","getRef","sizeProp","width","widthImg","height","heightImg","widthSize","heightSize","noBorder","fallbackIcon","fallbackIconProp","children","onLoad","onError","withTransparentBackground","objectPosition","filter","keepAspectRatio","getRootRef","elementTiming","restProps","wrapperRef","loaded","setLoaded","useState","failed","setFailed","mouseOverHandlersRef","mouseOutHandlersRef","hasSrc","needShowFallbackIcon","isValidElement","process","env","NODE_ENV","name","handleImageLoad","event","handleImageError","imgRef","isOnLoadStatusCheckedRef","useEffect","dispatchLoadEventForAlreadyLoadedResourceIfReactInitializedLater","current","complete","Event","dispatchEvent","onMouseOver","forEach","fn","onMouseOut","contextValue","useMemo","onMouseOverHandlers","onMouseOutHandlers","imgStyles","keepAspectRationStyles","Provider","baseStyle","baseClassName","host","transparentBackground","img","ref","className","withObjectPosition","withFilter","imgKeepRatio","style","elementtiming","div","fallback","aria-hidden","border","Badge","Overlay","FloatElement"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ImageBase/ImageBase.tsx"],"sourcesContent":["'use client';\n\nimport { useRef } from 'react';\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { mergeStyle } from '../../helpers/mergeStyle';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { minOr } from '../../lib/comparing';\nimport { defineComponentDisplayNames } from '../../lib/react/defineComponentDisplayNames';\nimport { getFetchPriorityProp } from '../../lib/utils';\nimport type {\n AnchorHTMLAttributesOnly,\n CSSCustomProperties,\n HasRef,\n HasRootRef,\n LiteralUnion,\n} from '../../types';\nimport { Clickable } from '../Clickable/Clickable';\nimport { ImageBaseBadge, type ImageBaseBadgeProps } from './ImageBaseBadge/ImageBaseBadge';\nimport {\n type FloatElementIndentation,\n type FloatElementPlacement,\n ImageBaseFloatElement,\n type ImageBaseFloatElementProps,\n} from './ImageBaseFloatElement/ImageBaseFloatElement';\nimport { ImageBaseOverlay, type ImageBaseOverlayProps } from './ImageBaseOverlay/ImageBaseOverlay';\nimport { ImageBaseContext } from './context';\nimport type { ImageBaseContextProps, ImageBaseExpectedIconProps, ImageBaseSize } from './types';\nimport { validateFallbackIcon, validateSize } from './validators';\nimport styles from './ImageBase.module.css';\n\nexport type {\n ImageBaseSize,\n ImageBaseExpectedIconProps,\n ImageBaseBadgeProps,\n ImageBaseOverlayProps,\n ImageBaseContextProps,\n ImageBaseFloatElementProps,\n FloatElementPlacement,\n FloatElementIndentation,\n};\n\nexport {\n getBadgeIconSizeByImageBaseSize,\n getFallbackIconSizeByImageBaseSize,\n getOverlayIconSizeByImageBaseSize,\n} from './helpers';\n\nexport { ImageBaseContext };\n\n/**\n * Размер по умолчанию.\n */\nconst defaultSize = 24;\n\nexport interface ImageBaseProps\n extends React.ImgHTMLAttributes<HTMLElement>,\n AnchorHTMLAttributesOnly,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLImageElement> {\n /**\n * Задаёт размер картинки.\n *\n * Используйте размеры заданные дизайн-системой `16 | 20 | 24 | 28 | 32 | 36 | 40 | 44 | 48 | 56 | 64 | 72 | 80 | 88 | 96`.\n *\n * > ⚠️ Использование кастомного размера – это пограничный кейс.\n */\n size?: LiteralUnion<ImageBaseSize, number>;\n /**\n * Ширина изображения.\n */\n widthSize?: number | string;\n /**\n * Высота изображения.\n */\n heightSize?: number | string;\n /**\n * Отключает обводку.\n */\n noBorder?: boolean;\n /**\n * Фолбек на случай, если картинка не прогрузилась.\n *\n * > 📝 Нужный для `<ImageBase size={...} />` размер можно узнать из функции `getFallbackIconSizeByImageBaseSize()`.\n *\n * > Предпочтительней использовать иконки из `@vkontakte/icons`.\n *\n * > 📊️ Если вы хотите передать кастомную иконку, то следует именовать её по шаблону `Icon<size><name>`. Или же\n * > чтобы в неё был передан параметр `width`. Тогда мы сможем выводить в консоль подсказку правильного ли размера вы\n * > использовали иконку.\n *\n * > ⚠️ Может перекрывать `children`.\n */\n fallbackIcon?: React.ReactElement<ImageBaseExpectedIconProps>;\n /**\n * Отключает фон, заданный по умолчанию. Полезен для отображения картинок с прозрачностью.\n * @since 5.10.0\n */\n withTransparentBackground?: boolean;\n /**\n * Пользовательское значения стиля object-fit\n * Подробнее можно почитать в [документации](https://developer.mozilla.org/ru/docs/Web/CSS/object-fit).\n */\n objectFit?: React.CSSProperties['objectFit'];\n /**\n * Пользовательское значения стиля object-position\n * Подробнее можно почитать в [документации](https://developer.mozilla.org/ru/docs/Web/CSS/object-position).\n */\n objectPosition?: React.CSSProperties['objectPosition'];\n /**\n * Флаг для сохранения пропорций картинки.\n * Для корректной работы необходимо задать размеры хотя бы одной стороны картинки.\n */\n keepAspectRatio?: boolean;\n /**\n * Смотри https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/elementtiming.\n */\n elementTiming?: string;\n /**\n * Пользовательское значения стиля filter\n * Подробнее можно почитать в [документации](https://developer.mozilla.org/ru/docs/Web/CSS/filter).\n */\n filter?: React.CSSProperties['filter'];\n}\n\nconst getObjectFitClassName = (objectFit: React.CSSProperties['objectFit']) => {\n switch (objectFit) {\n case 'contain':\n return styles.imgObjectFitContain;\n case 'cover':\n return styles.imgObjectFitCover;\n case 'none':\n return styles.imgObjectFitNone;\n case 'scale-down':\n return styles.imgObjectFitScaleDown;\n }\n return undefined;\n};\n\nconst parsePx = (value: string): number | undefined => {\n if (value.endsWith('px')) {\n return parseInt(value);\n }\n return undefined;\n};\n\nconst sizeToNumber = (size: number | string | undefined): number | undefined => {\n if (typeof size === 'string') {\n return parsePx(size);\n }\n return size;\n};\n\n/**\n * @see https://vkui.io/components/image-base\n */\nexport const ImageBase: React.FC<ImageBaseProps> & {\n Badge: typeof ImageBaseBadge;\n Overlay: typeof ImageBaseOverlay;\n FloatElement: typeof ImageBaseFloatElement;\n} = ({\n alt,\n crossOrigin,\n decoding,\n loading,\n referrerPolicy,\n sizes,\n src,\n srcSet,\n useMap,\n fetchPriority,\n getRef,\n size: sizeProp,\n width: widthImg,\n height: heightImg,\n widthSize,\n heightSize,\n noBorder = false,\n fallbackIcon: fallbackIconProp,\n children,\n onLoad,\n onError,\n withTransparentBackground,\n objectFit = 'cover',\n objectPosition,\n filter,\n keepAspectRatio = false,\n getRootRef,\n elementTiming,\n ...restProps\n}: ImageBaseProps) => {\n const size = sizeProp ?? minOr([sizeToNumber(widthSize), sizeToNumber(heightSize)], defaultSize);\n const wrapperRef = useExternRef(getRootRef);\n\n const width = widthSize ?? (keepAspectRatio ? undefined : size);\n const height = heightSize ?? (keepAspectRatio ? undefined : size);\n\n const [loaded, setLoaded] = React.useState(false);\n const [failed, setFailed] = React.useState(false);\n\n const mouseOverHandlersRef = useRef<VoidFunction[]>([]);\n const mouseOutHandlersRef = useRef<VoidFunction[]>([]);\n\n const hasSrc = src || srcSet;\n const needShowFallbackIcon = (failed || !hasSrc) && React.isValidElement(fallbackIconProp);\n\n const fallbackIcon = needShowFallbackIcon ? fallbackIconProp : null;\n\n if (process.env.NODE_ENV === 'development') {\n validateSize(size);\n if (fallbackIcon) {\n validateFallbackIcon(size, { name: 'fallbackIcon', value: fallbackIcon });\n }\n }\n\n const handleImageLoad = (event: React.SyntheticEvent<HTMLImageElement>) => {\n if (loaded) {\n return;\n }\n\n setLoaded(true);\n setFailed(false);\n onLoad?.(event);\n };\n\n const handleImageError = (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoaded(false);\n setFailed(true);\n onError?.(event);\n };\n\n const imgRef = useExternRef(getRef);\n const isOnLoadStatusCheckedRef = React.useRef(false);\n React.useEffect(\n function dispatchLoadEventForAlreadyLoadedResourceIfReactInitializedLater() {\n if (isOnLoadStatusCheckedRef.current) {\n return;\n }\n isOnLoadStatusCheckedRef.current = true;\n\n if (imgRef.current && imgRef.current.complete && !loaded) {\n const event = new Event('load');\n imgRef.current.dispatchEvent(event);\n }\n },\n [imgRef, loaded],\n );\n\n const onMouseOver = () => {\n mouseOverHandlersRef.current.forEach((fn) => fn());\n };\n\n const onMouseOut = () => {\n mouseOutHandlersRef.current.forEach((fn) => fn());\n };\n\n const contextValue = React.useMemo(\n () => ({\n size,\n onMouseOverHandlers: mouseOverHandlersRef.current,\n onMouseOutHandlers: mouseOutHandlersRef.current,\n }),\n [size],\n );\n\n const imgStyles:\n | CSSCustomProperties<React.CSSProperties['objectPosition'] | React.CSSProperties['filter']>\n | undefined =\n objectPosition || filter\n ? {\n '--vkui_internal--ImageBase_object_position': objectPosition,\n '--vkui_internal--ImageBase_object_filter': filter,\n }\n : undefined;\n\n const keepAspectRationStyles = keepAspectRatio\n ? {\n width: widthImg || width,\n height: heightImg || height,\n }\n : undefined;\n\n return (\n <ImageBaseContext.Provider value={contextValue}>\n <Clickable\n baseStyle={{ width, height }}\n baseClassName={classNames(\n styles.host,\n hasSrc && loaded && styles.loaded,\n withTransparentBackground && styles.transparentBackground,\n )}\n getRootRef={wrapperRef}\n onMouseOver={onMouseOver}\n onMouseOut={onMouseOut}\n {...restProps}\n >\n {hasSrc && (\n <img\n ref={imgRef}\n alt={alt}\n className={classNames(\n styles.img,\n getObjectFitClassName(objectFit),\n objectPosition && styles.withObjectPosition,\n filter && styles.withFilter,\n keepAspectRatio && styles.imgKeepRatio,\n )}\n crossOrigin={crossOrigin}\n decoding={decoding}\n loading={loading}\n referrerPolicy={referrerPolicy}\n style={mergeStyle(keepAspectRationStyles, imgStyles)}\n sizes={sizes}\n src={src}\n srcSet={srcSet}\n useMap={useMap}\n width={widthImg}\n height={heightImg}\n onLoad={handleImageLoad}\n onError={handleImageError}\n // @ts-expect-error: TS2322 отсутствует в @types/react\n elementtiming={elementTiming} // eslint-disable-line react/no-unknown-property\n {...getFetchPriorityProp(fetchPriority)}\n />\n )}\n {fallbackIcon && <div className={styles.fallback}>{fallbackIcon}</div>}\n {children && <div className={styles.children}>{children}</div>}\n {!noBorder && <div aria-hidden className={styles.border} />}\n </Clickable>\n </ImageBaseContext.Provider>\n );\n};\nImageBase.Badge = ImageBaseBadge;\nImageBase.Overlay = ImageBaseOverlay;\nImageBase.FloatElement = ImageBaseFloatElement;\n\nif (process.env.NODE_ENV !== 'production') {\n defineComponentDisplayNames(ImageBase.Badge, 'ImageBase.Badge');\n defineComponentDisplayNames(ImageBase.Overlay, 'ImageBase.Overlay');\n defineComponentDisplayNames(ImageBase.FloatElement, 'ImageBase.FloatElement');\n}\n"],"names":["useRef","React","classNames","mergeStyle","useExternRef","minOr","defineComponentDisplayNames","getFetchPriorityProp","Clickable","ImageBaseBadge","ImageBaseFloatElement","ImageBaseOverlay","ImageBaseContext","validateFallbackIcon","validateSize","styles","getBadgeIconSizeByImageBaseSize","getFallbackIconSizeByImageBaseSize","getOverlayIconSizeByImageBaseSize","defaultSize","getObjectFitClassName","objectFit","imgObjectFitContain","imgObjectFitCover","imgObjectFitNone","imgObjectFitScaleDown","undefined","parsePx","value","endsWith","parseInt","sizeToNumber","size","ImageBase","alt","crossOrigin","decoding","loading","referrerPolicy","sizes","src","srcSet","useMap","fetchPriority","getRef","sizeProp","width","widthImg","height","heightImg","widthSize","heightSize","noBorder","fallbackIcon","fallbackIconProp","children","onLoad","onError","withTransparentBackground","objectPosition","filter","keepAspectRatio","getRootRef","elementTiming","restProps","wrapperRef","loaded","setLoaded","useState","failed","setFailed","mouseOverHandlersRef","mouseOutHandlersRef","hasSrc","needShowFallbackIcon","isValidElement","process","env","NODE_ENV","name","handleImageLoad","event","handleImageError","imgRef","isOnLoadStatusCheckedRef","useEffect","dispatchLoadEventForAlreadyLoadedResourceIfReactInitializedLater","current","complete","Event","dispatchEvent","onMouseOver","forEach","fn","onMouseOut","contextValue","useMemo","onMouseOverHandlers","onMouseOutHandlers","imgStyles","keepAspectRationStyles","Provider","baseStyle","baseClassName","host","transparentBackground","img","ref","className","withObjectPosition","withFilter","imgKeepRatio","style","elementtiming","div","fallback","aria-hidden","border","Badge","Overlay","FloatElement"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { Subhead } from "../Typography/Subhead/Subhead.js";
|
|
|
6
6
|
import { VisuallyHidden } from "../VisuallyHidden/VisuallyHidden.js";
|
|
7
7
|
import styles from "./InfoRow.module.css";
|
|
8
8
|
/**
|
|
9
|
-
* @see https://
|
|
9
|
+
* @see https://vkui.io/components/info-row
|
|
10
10
|
*/ export const InfoRow = ({ header, children, className, ...restProps })=>/*#__PURE__*/ _jsxs(Headline, {
|
|
11
11
|
...restProps,
|
|
12
12
|
Component: "span",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/InfoRow/InfoRow.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './InfoRow.module.css';\n\nexport interface InfoRowProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Элемент, отображаемый над содержимым.\n */\n header: React.ReactNode;\n}\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/InfoRow/InfoRow.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './InfoRow.module.css';\n\nexport interface InfoRowProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Элемент, отображаемый над содержимым.\n */\n header: React.ReactNode;\n}\n\n/**\n * @see https://vkui.io/components/info-row\n */\nexport const InfoRow = ({\n header,\n children,\n className,\n ...restProps\n}: InfoRowProps): React.ReactNode => (\n <Headline\n {...restProps}\n Component=\"span\"\n className={classNames(styles.host, className)}\n weight=\"3\"\n >\n {hasReactNode(header) && (\n <Subhead Component=\"strong\" className={styles.header}>\n {header}\n <VisuallyHidden> </VisuallyHidden>\n </Subhead>\n )}\n {children}\n </Headline>\n);\n"],"names":["React","classNames","hasReactNode","Headline","Subhead","VisuallyHidden","styles","InfoRow","header","children","className","restProps","Component","host","weight"],"mappings":";AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,EAAEC,YAAY,QAAQ,kBAAkB;AAE3D,SAASC,QAAQ,QAAQ,qCAAkC;AAC3D,SAASC,OAAO,QAAQ,mCAAgC;AACxD,SAASC,cAAc,QAAQ,sCAAmC;AAClE,OAAOC,YAAY,uBAAuB;AAS1C;;CAEC,GACD,OAAO,MAAMC,UAAU,CAAC,EACtBC,MAAM,EACNC,QAAQ,EACRC,SAAS,EACT,GAAGC,WACU,iBACb,MAACR;QACE,GAAGQ,SAAS;QACbC,WAAU;QACVF,WAAWT,WAAWK,OAAOO,IAAI,EAAEH;QACnCI,QAAO;;YAENZ,aAAaM,yBACZ,MAACJ;gBAAQQ,WAAU;gBAASF,WAAWJ,OAAOE,MAAM;;oBACjDA;kCACD,KAACH;kCAAe;;;;YAGnBI;;OAEH"}
|
|
@@ -11,7 +11,7 @@ const sizeYClassNames = {
|
|
|
11
11
|
compact: styles.sizeYCompact
|
|
12
12
|
};
|
|
13
13
|
/**
|
|
14
|
-
* @see https://
|
|
14
|
+
* @see https://vkui.io/components/input
|
|
15
15
|
*/ export const Input = ({ type = 'text', align = 'left', getRef, className, getRootRef, style, before, after, status, mode, ...restProps })=>{
|
|
16
16
|
const { sizeY = 'none' } = useAdaptivity();
|
|
17
17
|
return /*#__PURE__*/ _jsx(FormField, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Input/Input.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport type { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { FormField, type FormFieldProps } from '../FormField/FormField';\nimport { UnstyledTextField } from '../UnstyledTextField/UnstyledTextField';\nimport styles from './Input.module.css';\n\nconst sizeYClassNames = {\n none: styles.sizeYNone,\n compact: styles.sizeYCompact,\n};\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign,\n Omit<FormFieldProps, 'maxHeight'> {}\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Input/Input.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport type { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { FormField, type FormFieldProps } from '../FormField/FormField';\nimport { UnstyledTextField } from '../UnstyledTextField/UnstyledTextField';\nimport styles from './Input.module.css';\n\nconst sizeYClassNames = {\n none: styles.sizeYNone,\n compact: styles.sizeYCompact,\n};\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign,\n Omit<FormFieldProps, 'maxHeight'> {}\n\n/**\n * @see https://vkui.io/components/input\n */\nexport const Input = ({\n type = 'text',\n align = 'left',\n getRef,\n className,\n getRootRef,\n style,\n before,\n after,\n status,\n mode,\n ...restProps\n}: InputProps): React.ReactNode => {\n const { sizeY = 'none' } = useAdaptivity();\n\n return (\n <FormField\n style={style}\n className={classNames(\n styles.host,\n align === 'right' && styles.alignRight,\n align === 'center' && styles.alignCenter,\n sizeY !== 'regular' && sizeYClassNames[sizeY],\n before && styles.hasBefore,\n after && styles.hasAfter,\n className,\n )}\n getRootRef={getRootRef}\n before={before}\n after={after}\n disabled={restProps.disabled}\n mode={mode}\n status={status}\n >\n <UnstyledTextField\n {...restProps}\n as=\"input\"\n type={type}\n className={styles.el}\n getRootRef={getRef}\n />\n </FormField>\n );\n};\n"],"names":["React","classNames","useAdaptivity","FormField","UnstyledTextField","styles","sizeYClassNames","none","sizeYNone","compact","sizeYCompact","Input","type","align","getRef","className","getRootRef","style","before","after","status","mode","restProps","sizeY","host","alignRight","alignCenter","hasBefore","hasAfter","disabled","as","el"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,aAAa,QAAQ,+BAA4B;AAE1D,SAASC,SAAS,QAA6B,4BAAyB;AACxE,SAASC,iBAAiB,QAAQ,4CAAyC;AAC3E,OAAOC,YAAY,qBAAqB;AAExC,MAAMC,kBAAkB;IACtBC,MAAMF,OAAOG,SAAS;IACtBC,SAASJ,OAAOK,YAAY;AAC9B;AASA;;CAEC,GACD,OAAO,MAAMC,QAAQ,CAAC,EACpBC,OAAO,MAAM,EACbC,QAAQ,MAAM,EACdC,MAAM,EACNC,SAAS,EACTC,UAAU,EACVC,KAAK,EACLC,MAAM,EACNC,KAAK,EACLC,MAAM,EACNC,IAAI,EACJ,GAAGC,WACQ;IACX,MAAM,EAAEC,QAAQ,MAAM,EAAE,GAAGrB;IAE3B,qBACE,KAACC;QACCc,OAAOA;QACPF,WAAWd,WACTI,OAAOmB,IAAI,EACXX,UAAU,WAAWR,OAAOoB,UAAU,EACtCZ,UAAU,YAAYR,OAAOqB,WAAW,EACxCH,UAAU,aAAajB,eAAe,CAACiB,MAAM,EAC7CL,UAAUb,OAAOsB,SAAS,EAC1BR,SAASd,OAAOuB,QAAQ,EACxBb;QAEFC,YAAYA;QACZE,QAAQA;QACRC,OAAOA;QACPU,UAAUP,UAAUO,QAAQ;QAC5BR,MAAMA;QACND,QAAQA;kBAER,cAAA,KAAChB;YACE,GAAGkB,SAAS;YACbQ,IAAG;YACHlB,MAAMA;YACNG,WAAWV,OAAO0B,EAAE;YACpBf,YAAYF;;;AAIpB,EAAE"}
|
|
@@ -3,7 +3,7 @@ import { classNames } from "@vkontakte/vkjs";
|
|
|
3
3
|
import { Tappable } from "../Tappable/Tappable.js";
|
|
4
4
|
import styles from "./Link.module.css";
|
|
5
5
|
/**
|
|
6
|
-
* @see https://
|
|
6
|
+
* @see https://vkui.io/components/link
|
|
7
7
|
*/ export const Link = ({ before: beforeProp, after: afterProp, noUnderline, hasVisited, children, ...restProps })=>{
|
|
8
8
|
const before = beforeProp ? /*#__PURE__*/ _jsx("span", {
|
|
9
9
|
className: styles.before,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Link/Link.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Tappable, type TappableOmitProps } from '../Tappable/Tappable';\nimport styles from './Link.module.css';\n\nexport interface LinkProps extends TappableOmitProps {\n /**\n * Иконка слева.\n */\n before?: ReactElement;\n /**\n * Иконка справа.\n */\n after?: ReactElement;\n /**\n * Выключает появления нижнего подчеркивания при наведении.\n */\n noUnderline?: boolean;\n /**\n * Включает состояние `visited`, которое позволяет пользователю понять посещал ли он ссылку или нет.\n */\n hasVisited?: boolean;\n}\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Link/Link.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Tappable, type TappableOmitProps } from '../Tappable/Tappable';\nimport styles from './Link.module.css';\n\nexport interface LinkProps extends TappableOmitProps {\n /**\n * Иконка слева.\n */\n before?: ReactElement;\n /**\n * Иконка справа.\n */\n after?: ReactElement;\n /**\n * Выключает появления нижнего подчеркивания при наведении.\n */\n noUnderline?: boolean;\n /**\n * Включает состояние `visited`, которое позволяет пользователю понять посещал ли он ссылку или нет.\n */\n hasVisited?: boolean;\n}\n\n/**\n * @see https://vkui.io/components/link\n */\nexport const Link = ({\n before: beforeProp,\n after: afterProp,\n noUnderline,\n hasVisited,\n children,\n ...restProps\n}: LinkProps): React.ReactNode => {\n const before = beforeProp ? <span className={styles.before}>{beforeProp}</span> : null;\n const after = afterProp ? <span className={styles.after}>{afterProp}</span> : null;\n\n return (\n <Tappable\n activeMode=\"opacity\"\n hoverMode={styles.hover}\n focusVisibleMode=\"outside\"\n DefaultComponent=\"span\"\n {...restProps}\n baseClassName={classNames(\n styles.host,\n hasVisited && styles.hasVisited,\n !noUnderline && styles.withUnderline,\n )}\n >\n {before}\n {children}\n {after}\n </Tappable>\n );\n};\n"],"names":["classNames","Tappable","styles","Link","before","beforeProp","after","afterProp","noUnderline","hasVisited","children","restProps","span","className","activeMode","hoverMode","hover","focusVisibleMode","DefaultComponent","baseClassName","host","withUnderline"],"mappings":";AACA,SAASA,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,QAAQ,QAAgC,0BAAuB;AACxE,OAAOC,YAAY,oBAAoB;AAqBvC;;CAEC,GACD,OAAO,MAAMC,OAAO,CAAC,EACnBC,QAAQC,UAAU,EAClBC,OAAOC,SAAS,EAChBC,WAAW,EACXC,UAAU,EACVC,QAAQ,EACR,GAAGC,WACO;IACV,MAAMP,SAASC,2BAAa,KAACO;QAAKC,WAAWX,OAAOE,MAAM;kBAAGC;SAAqB;IAClF,MAAMC,QAAQC,0BAAY,KAACK;QAAKC,WAAWX,OAAOI,KAAK;kBAAGC;SAAoB;IAE9E,qBACE,MAACN;QACCa,YAAW;QACXC,WAAWb,OAAOc,KAAK;QACvBC,kBAAiB;QACjBC,kBAAiB;QAChB,GAAGP,SAAS;QACbQ,eAAenB,WACbE,OAAOkB,IAAI,EACXX,cAAcP,OAAOO,UAAU,EAC/B,CAACD,eAAeN,OAAOmB,aAAa;;YAGrCjB;YACAM;YACAJ;;;AAGP,EAAE"}
|
|
@@ -4,7 +4,7 @@ import { DATA_DRAGGABLE_PLACEHOLDER_REACT_PROP } from "../../hooks/useDraggableW
|
|
|
4
4
|
import { RootComponent } from "../RootComponent/RootComponent.js";
|
|
5
5
|
import styles from "./List.module.css";
|
|
6
6
|
/**
|
|
7
|
-
* @see https://
|
|
7
|
+
* @see https://vkui.io/components/cell#list
|
|
8
8
|
*/ export const List = ({ children, gap = 0, ...restProps })=>{
|
|
9
9
|
return /*#__PURE__*/ _jsxs(RootComponent, {
|
|
10
10
|
role: "list",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/List/List.tsx"],"sourcesContent":["import * as React from 'react';\nimport { DATA_DRAGGABLE_PLACEHOLDER_REACT_PROP } from '../../hooks/useDraggableWithDomApi';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './List.module.css';\n\nexport type ListProps = HTMLAttributesWithRootRef<HTMLDivElement> & {\n /**\n * Задает отступ между элементами.\n */\n gap?: number;\n};\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/List/List.tsx"],"sourcesContent":["import * as React from 'react';\nimport { DATA_DRAGGABLE_PLACEHOLDER_REACT_PROP } from '../../hooks/useDraggableWithDomApi';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './List.module.css';\n\nexport type ListProps = HTMLAttributesWithRootRef<HTMLDivElement> & {\n /**\n * Задает отступ между элементами.\n */\n gap?: number;\n};\n\n/**\n * @see https://vkui.io/components/cell#list\n */\nexport const List = ({ children, gap = 0, ...restProps }: ListProps): React.ReactNode => {\n return (\n <RootComponent\n role=\"list\"\n baseClassName={styles.host}\n baseStyle={{\n gridGap: gap,\n }}\n {...restProps}\n >\n {children}\n <div\n aria-hidden\n {...DATA_DRAGGABLE_PLACEHOLDER_REACT_PROP}\n className={styles.placeholder}\n ></div>\n </RootComponent>\n );\n};\n"],"names":["React","DATA_DRAGGABLE_PLACEHOLDER_REACT_PROP","RootComponent","styles","List","children","gap","restProps","role","baseClassName","host","baseStyle","gridGap","div","aria-hidden","className","placeholder"],"mappings":";AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,qCAAqC,QAAQ,8CAAqC;AAE3F,SAASC,aAAa,QAAQ,oCAAiC;AAC/D,OAAOC,YAAY,oBAAoB;AASvC;;CAEC,GACD,OAAO,MAAMC,OAAO,CAAC,EAAEC,QAAQ,EAAEC,MAAM,CAAC,EAAE,GAAGC,WAAsB;IACjE,qBACE,MAACL;QACCM,MAAK;QACLC,eAAeN,OAAOO,IAAI;QAC1BC,WAAW;YACTC,SAASN;QACX;QACC,GAAGC,SAAS;;YAEZF;0BACD,KAACQ;gBACCC,aAAW;gBACV,GAAGb,qCAAqC;gBACzCc,WAAWZ,OAAOa,WAAW;;;;AAIrC,EAAE"}
|
|
@@ -6,7 +6,7 @@ import { ConfigProviderOverride } from "../ConfigProvider/ConfigProviderOverride
|
|
|
6
6
|
* [реестре языковых подметок IANA](https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry).
|
|
7
7
|
*
|
|
8
8
|
* @since 5.0.0
|
|
9
|
-
* @see https://
|
|
9
|
+
* @see https://vkui.io/components/locale-provider
|
|
10
10
|
*/ export function LocaleProvider({ value, children }) {
|
|
11
11
|
return /*#__PURE__*/ _jsx(ConfigProviderOverride, {
|
|
12
12
|
locale: value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/LocaleProvider/LocaleProvider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { type ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext';\nimport { ConfigProviderOverride } from '../ConfigProvider/ConfigProviderOverride';\n\nexport interface LocaleProviderProps {\n /**\n * Строка с языковой меткой BCP 47.\n */\n value: ConfigProviderContextInterface['locale'];\n /**\n * Содержимое.\n */\n children: React.ReactNode;\n}\n\n/**\n * Компонент, прокидывающий локаль. Список можно найти в\n * [реестре языковых подметок IANA](https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry).\n *\n * @since 5.0.0\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/LocaleProvider/LocaleProvider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { type ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext';\nimport { ConfigProviderOverride } from '../ConfigProvider/ConfigProviderOverride';\n\nexport interface LocaleProviderProps {\n /**\n * Строка с языковой меткой BCP 47.\n */\n value: ConfigProviderContextInterface['locale'];\n /**\n * Содержимое.\n */\n children: React.ReactNode;\n}\n\n/**\n * Компонент, прокидывающий локаль. Список можно найти в\n * [реестре языковых подметок IANA](https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry).\n *\n * @since 5.0.0\n * @see https://vkui.io/components/locale-provider\n */\nexport function LocaleProvider({ value, children }: LocaleProviderProps): React.ReactNode {\n return <ConfigProviderOverride locale={value}>{children}</ConfigProviderOverride>;\n}\n"],"names":["React","ConfigProviderOverride","LocaleProvider","value","children","locale"],"mappings":";AAAA,YAAYA,WAAW,QAAQ;AAE/B,SAASC,sBAAsB,QAAQ,8CAA2C;AAalF;;;;;;CAMC,GACD,OAAO,SAASC,eAAe,EAAEC,KAAK,EAAEC,QAAQ,EAAuB;IACrE,qBAAO,KAACH;QAAuBI,QAAQF;kBAAQC;;AACjD"}
|
|
@@ -7,7 +7,7 @@ import styles from "./Mark.module.css";
|
|
|
7
7
|
* например при поиске определенных слов или выделения текста в цитате.
|
|
8
8
|
*
|
|
9
9
|
* @since 6.1.0
|
|
10
|
-
* @see https://
|
|
10
|
+
* @see https://vkui.io/components/mark
|
|
11
11
|
*/ export const Mark = (props)=>/*#__PURE__*/ _jsx(RootComponent, {
|
|
12
12
|
baseClassName: styles.host,
|
|
13
13
|
Component: "mark",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Mark/Mark.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './Mark.module.css';\n\nexport type MarkProps = HTMLAttributesWithRootRef<HTMLDivElement>;\n\n/**\n * Компонент используется для выделения фрагментов текста,\n * например при поиске определенных слов или выделения текста в цитате.\n *\n * @since 6.1.0\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Mark/Mark.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './Mark.module.css';\n\nexport type MarkProps = HTMLAttributesWithRootRef<HTMLDivElement>;\n\n/**\n * Компонент используется для выделения фрагментов текста,\n * например при поиске определенных слов или выделения текста в цитате.\n *\n * @since 6.1.0\n * @see https://vkui.io/components/mark\n */\nexport const Mark = (props: MarkProps): React.ReactNode => (\n <RootComponent baseClassName={styles.host} Component=\"mark\" {...props} />\n);\n"],"names":["React","RootComponent","styles","Mark","props","baseClassName","host","Component"],"mappings":";AAAA,YAAYA,WAAW,QAAQ;AAE/B,SAASC,aAAa,QAAQ,oCAAiC;AAC/D,OAAOC,YAAY,oBAAoB;AAIvC;;;;;;CAMC,GACD,OAAO,MAAMC,OAAO,CAACC,sBACnB,KAACH;QAAcI,eAAeH,OAAOI,IAAI;QAAEC,WAAU;QAAQ,GAAGH,KAAK;OACrE"}
|
|
@@ -16,7 +16,7 @@ const stylesTextWrap = {
|
|
|
16
16
|
short: styles.textWrapShort
|
|
17
17
|
};
|
|
18
18
|
/**
|
|
19
|
-
* @see https://
|
|
19
|
+
* @see https://vkui.io/components/mini-info-cell
|
|
20
20
|
*/ export const MiniInfoCell = ({ before, after, children, mode = 'base', textWrap = 'nowrap', chevron = false, ...restProps })=>{
|
|
21
21
|
const cellClasses = classNames(styles.host, stylesTextWrap[textWrap], mode !== 'base' && stylesMode[mode]);
|
|
22
22
|
const cellContent = /*#__PURE__*/ _jsxs(React.Fragment, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/MiniInfoCell/MiniInfoCell.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Chevron } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Paragraph } from '../Typography/Paragraph/Paragraph';\nimport styles from './MiniInfoCell.module.css';\n\nconst stylesMode = {\n add: styles.modeAdd,\n accent: styles.modeAccent,\n more: styles.modeMore,\n};\n\nconst stylesTextWrap = {\n nowrap: styles.textWrapNowrap,\n full: styles.textWrapFull,\n short: styles.textWrapShort,\n};\n\nexport interface MiniInfoCellProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Иконка слева.<br />\n * Рекомендуется использовать иконки размера 20.\n */\n before?: React.ReactNode;\n\n /**\n * Содержимое справа.<br />\n * `<UsersStack size=\"s\" />` или `<Avatar size={24} />`.\n */\n after?: React.ReactNode;\n\n /**\n * Тип ячейки:\n *\n * - `base` – базовая ячейка с серой иконкой и серым текстом.<br />\n * В компонент можно передать `Link`, чтобы визуально сделать часть текста ссылкой.\n * - `add` – тип ячейки, который показывает, что взаимодействие с ней должно вызывать действие добавления чего-то.\n * - `more` – взаимодействие с такой ячейкой должно открывать какую-то подробную информацию.\n */\n mode?: 'base' | 'accent' | 'add' | 'more';\n\n /**\n * Тип отображения текста:\n *\n * - `nowrap` – в одну строку, текст не переносится и обрезается.\n * - `short` – максимально отображается 3 строки, остальное обрезается.\n * - `full` – текст отображается полностью. В дизайне это свойство `multiline`.\n */\n textWrap?: 'nowrap' | 'short' | 'full';\n\n /**\n * Передавать `true`, если предполагается переход при нажатии на ячейку.\n */\n chevron?: boolean;\n}\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/MiniInfoCell/MiniInfoCell.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Chevron } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Paragraph } from '../Typography/Paragraph/Paragraph';\nimport styles from './MiniInfoCell.module.css';\n\nconst stylesMode = {\n add: styles.modeAdd,\n accent: styles.modeAccent,\n more: styles.modeMore,\n};\n\nconst stylesTextWrap = {\n nowrap: styles.textWrapNowrap,\n full: styles.textWrapFull,\n short: styles.textWrapShort,\n};\n\nexport interface MiniInfoCellProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Иконка слева.<br />\n * Рекомендуется использовать иконки размера 20.\n */\n before?: React.ReactNode;\n\n /**\n * Содержимое справа.<br />\n * `<UsersStack size=\"s\" />` или `<Avatar size={24} />`.\n */\n after?: React.ReactNode;\n\n /**\n * Тип ячейки:\n *\n * - `base` – базовая ячейка с серой иконкой и серым текстом.<br />\n * В компонент можно передать `Link`, чтобы визуально сделать часть текста ссылкой.\n * - `add` – тип ячейки, который показывает, что взаимодействие с ней должно вызывать действие добавления чего-то.\n * - `more` – взаимодействие с такой ячейкой должно открывать какую-то подробную информацию.\n */\n mode?: 'base' | 'accent' | 'add' | 'more';\n\n /**\n * Тип отображения текста:\n *\n * - `nowrap` – в одну строку, текст не переносится и обрезается.\n * - `short` – максимально отображается 3 строки, остальное обрезается.\n * - `full` – текст отображается полностью. В дизайне это свойство `multiline`.\n */\n textWrap?: 'nowrap' | 'short' | 'full';\n\n /**\n * Передавать `true`, если предполагается переход при нажатии на ячейку.\n */\n chevron?: boolean;\n}\n\n/**\n * @see https://vkui.io/components/mini-info-cell\n */\nexport const MiniInfoCell = ({\n before,\n after,\n children,\n mode = 'base',\n textWrap = 'nowrap',\n chevron = false,\n ...restProps\n}: MiniInfoCellProps): React.ReactNode => {\n const cellClasses = classNames(\n styles.host,\n stylesTextWrap[textWrap],\n mode !== 'base' && stylesMode[mode],\n );\n\n const cellContent = (\n <React.Fragment>\n {hasReactNode(before) && <span className={styles.before}>{before}</span>}\n <div className={styles.middle}>\n <Paragraph className={styles.content} weight={mode === 'more' ? '2' : undefined}>\n {children}\n </Paragraph>\n {chevron && <Icon16Chevron />}\n </div>\n {hasReactNode(after) && <span className={styles.after}>{after}</span>}\n </React.Fragment>\n );\n\n return (\n <Tappable {...restProps} baseClassName={cellClasses}>\n {cellContent}\n </Tappable>\n );\n};\n"],"names":["React","Icon16Chevron","classNames","hasReactNode","Tappable","Paragraph","styles","stylesMode","add","modeAdd","accent","modeAccent","more","modeMore","stylesTextWrap","nowrap","textWrapNowrap","full","textWrapFull","short","textWrapShort","MiniInfoCell","before","after","children","mode","textWrap","chevron","restProps","cellClasses","host","cellContent","Fragment","span","className","div","middle","content","weight","undefined","baseClassName"],"mappings":";AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,aAAa,QAAQ,mBAAmB;AACjD,SAASC,UAAU,EAAEC,YAAY,QAAQ,kBAAkB;AAE3D,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASC,SAAS,QAAQ,uCAAoC;AAC9D,OAAOC,YAAY,4BAA4B;AAE/C,MAAMC,aAAa;IACjBC,KAAKF,OAAOG,OAAO;IACnBC,QAAQJ,OAAOK,UAAU;IACzBC,MAAMN,OAAOO,QAAQ;AACvB;AAEA,MAAMC,iBAAiB;IACrBC,QAAQT,OAAOU,cAAc;IAC7BC,MAAMX,OAAOY,YAAY;IACzBC,OAAOb,OAAOc,aAAa;AAC7B;AAwCA;;CAEC,GACD,OAAO,MAAMC,eAAe,CAAC,EAC3BC,MAAM,EACNC,KAAK,EACLC,QAAQ,EACRC,OAAO,MAAM,EACbC,WAAW,QAAQ,EACnBC,UAAU,KAAK,EACf,GAAGC,WACe;IAClB,MAAMC,cAAc3B,WAClBI,OAAOwB,IAAI,EACXhB,cAAc,CAACY,SAAS,EACxBD,SAAS,UAAUlB,UAAU,CAACkB,KAAK;IAGrC,MAAMM,4BACJ,MAAC/B,MAAMgC,QAAQ;;YACZ7B,aAAamB,yBAAW,KAACW;gBAAKC,WAAW5B,OAAOgB,MAAM;0BAAGA;;0BAC1D,MAACa;gBAAID,WAAW5B,OAAO8B,MAAM;;kCAC3B,KAAC/B;wBAAU6B,WAAW5B,OAAO+B,OAAO;wBAAEC,QAAQb,SAAS,SAAS,MAAMc;kCACnEf;;oBAEFG,yBAAW,KAAC1B;;;YAEdE,aAAaoB,wBAAU,KAACU;gBAAKC,WAAW5B,OAAOiB,KAAK;0BAAGA;;;;IAI5D,qBACE,KAACnB;QAAU,GAAGwB,SAAS;QAAEY,eAAeX;kBACrCE;;AAGP,EAAE"}
|
|
@@ -4,7 +4,7 @@ import { ModalContext } from "../../context/ModalContext.js";
|
|
|
4
4
|
import { useModalManager } from "../ModalRoot/useModalManager.js";
|
|
5
5
|
import { ModalCardInternal } from "./ModalCardInternal.js";
|
|
6
6
|
/**
|
|
7
|
-
* @see https://
|
|
7
|
+
* @see https://vkui.io/components/modal-card
|
|
8
8
|
*/ export const ModalCard = ({ id: idProp, nav, open = false, modalOverlayTestId, noFocusToDialog, onOpen, onOpened, onClose, onClosed, keepMounted = false, ...restProps })=>{
|
|
9
9
|
const { mounted, shouldPreserveSnapPoint: excludedProp, id, ...resolvedProps } = useModalManager({
|
|
10
10
|
id: nav || idProp,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ModalCard/ModalCard.tsx"],"sourcesContent":["'use client';\n\nimport { ModalContext } from '../../context/ModalContext';\nimport { useModalManager } from '../ModalRoot/useModalManager';\nimport { ModalCardInternal } from './ModalCardInternal';\nimport type { ModalCardProps } from './types';\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ModalCard/ModalCard.tsx"],"sourcesContent":["'use client';\n\nimport { ModalContext } from '../../context/ModalContext';\nimport { useModalManager } from '../ModalRoot/useModalManager';\nimport { ModalCardInternal } from './ModalCardInternal';\nimport type { ModalCardProps } from './types';\n\n/**\n * @see https://vkui.io/components/modal-card\n */\nexport const ModalCard = ({\n id: idProp,\n nav,\n open = false,\n modalOverlayTestId,\n noFocusToDialog,\n onOpen,\n onOpened,\n onClose,\n onClosed,\n keepMounted = false,\n ...restProps\n}: ModalCardProps): React.ReactNode => {\n const {\n mounted,\n shouldPreserveSnapPoint: excludedProp,\n id,\n ...resolvedProps\n } = useModalManager({\n id: nav || idProp,\n open,\n keepMounted,\n modalOverlayTestId,\n noFocusToDialog,\n onOpen,\n onOpened,\n onClose,\n onClosed,\n });\n\n if (mounted === false) {\n return null;\n }\n\n return (\n <ModalContext.Provider value={id}>\n <ModalCardInternal\n id={id}\n aria-labelledby={`${id}-label`}\n titleId={`${id}-label`}\n {...resolvedProps}\n {...restProps}\n />\n </ModalContext.Provider>\n );\n};\n"],"names":["ModalContext","useModalManager","ModalCardInternal","ModalCard","id","idProp","nav","open","modalOverlayTestId","noFocusToDialog","onOpen","onOpened","onClose","onClosed","keepMounted","restProps","mounted","shouldPreserveSnapPoint","excludedProp","resolvedProps","Provider","value","aria-labelledby","titleId"],"mappings":"AAAA;;AAEA,SAASA,YAAY,QAAQ,gCAA6B;AAC1D,SAASC,eAAe,QAAQ,kCAA+B;AAC/D,SAASC,iBAAiB,QAAQ,yBAAsB;AAGxD;;CAEC,GACD,OAAO,MAAMC,YAAY,CAAC,EACxBC,IAAIC,MAAM,EACVC,GAAG,EACHC,OAAO,KAAK,EACZC,kBAAkB,EAClBC,eAAe,EACfC,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,QAAQ,EACRC,cAAc,KAAK,EACnB,GAAGC,WACY;IACf,MAAM,EACJC,OAAO,EACPC,yBAAyBC,YAAY,EACrCd,EAAE,EACF,GAAGe,eACJ,GAAGlB,gBAAgB;QAClBG,IAAIE,OAAOD;QACXE;QACAO;QACAN;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,IAAIG,YAAY,OAAO;QACrB,OAAO;IACT;IAEA,qBACE,KAAChB,aAAaoB,QAAQ;QAACC,OAAOjB;kBAC5B,cAAA,KAACF;YACCE,IAAIA;YACJkB,mBAAiB,GAAGlB,GAAG,MAAM,CAAC;YAC9BmB,SAAS,GAAGnB,GAAG,MAAM,CAAC;YACrB,GAAGe,aAAa;YAChB,GAAGJ,SAAS;;;AAIrB,EAAE"}
|
|
@@ -16,7 +16,7 @@ import { Title } from "../Typography/Title/Title.js";
|
|
|
16
16
|
import { VisuallyHidden } from "../VisuallyHidden/VisuallyHidden.js";
|
|
17
17
|
import styles from "./ModalCardBase.module.css";
|
|
18
18
|
/**
|
|
19
|
-
* @see https://
|
|
19
|
+
* @see https://vkui.io/components/modal-card-base
|
|
20
20
|
*/ export const ModalCardBase = ({ icon, title, titleComponent = 'span', description, descriptionComponent = 'span', children, actions, onClose, dismissLabel = 'Закрыть', size: sizeProp, modalDismissButtonTestId, dismissButtonMode = 'outside', preventClose, outsideButtons, titleId, ...restProps })=>{
|
|
21
21
|
const platform = usePlatform();
|
|
22
22
|
const { isDesktop } = useAdaptivityWithJSMediaQueries();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ModalCardBase/ModalCardBase.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Icon20Cancel, Icon24Dismiss } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { AdaptivityContext } from '../AdaptivityProvider/AdaptivityContext';\nimport { ModalOutsideButton } from '../ModalOutsideButton/ModalOutsideButton';\nimport { ModalOutsideButtons } from '../ModalOutsideButtons/ModalOutsideButtons';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { Spacing } from '../Spacing/Spacing';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Title } from '../Typography/Title/Title';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './ModalCardBase.module.css';\n\nexport interface ModalCardBaseProps\n extends Omit<HTMLAttributesWithRootRef<HTMLDivElement>, 'title'> {\n /**\n * Иконка.\n *\n * Может быть компонентом иконки, например, `<Icon56MoneyTransferOutline />`, или `<Avatar size={72} src=\"\" />`.\n */\n icon?: React.ReactNode;\n\n /**\n * Заголовок карточки.\n */\n title?: React.ReactNode;\n /**\n * Позволяет поменять тег используемый для заголовка.\n */\n titleComponent?: React.ElementType;\n /**\n * Позволяет задать id для заголовка. Используется, чтобы связать модальное окно и title через aria-labelledby, тем самым задав модальному окну имя через title.\n */\n titleId?: string;\n\n /**\n * Описание.\n */\n description?: React.ReactNode;\n /**\n * Позволяет поменять тег используемый для описания.\n */\n descriptionComponent?: React.ElementType;\n\n /**\n * Кнопки-действия. Принимает [`Button`](https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ModalCardBase/ModalCardBase.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Icon20Cancel, Icon24Dismiss } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport type { HTMLAttributesWithRootRef } from '../../types';\nimport { AdaptivityContext } from '../AdaptivityProvider/AdaptivityContext';\nimport { ModalOutsideButton } from '../ModalOutsideButton/ModalOutsideButton';\nimport { ModalOutsideButtons } from '../ModalOutsideButtons/ModalOutsideButtons';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { Spacing } from '../Spacing/Spacing';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Title } from '../Typography/Title/Title';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './ModalCardBase.module.css';\n\nexport interface ModalCardBaseProps\n extends Omit<HTMLAttributesWithRootRef<HTMLDivElement>, 'title'> {\n /**\n * Иконка.\n *\n * Может быть компонентом иконки, например, `<Icon56MoneyTransferOutline />`, или `<Avatar size={72} src=\"\" />`.\n */\n icon?: React.ReactNode;\n\n /**\n * Заголовок карточки.\n */\n title?: React.ReactNode;\n /**\n * Позволяет поменять тег используемый для заголовка.\n */\n titleComponent?: React.ElementType;\n /**\n * Позволяет задать id для заголовка. Используется, чтобы связать модальное окно и title через aria-labelledby, тем самым задав модальному окну имя через title.\n */\n titleId?: string;\n\n /**\n * Описание.\n */\n description?: React.ReactNode;\n /**\n * Позволяет поменять тег используемый для описания.\n */\n descriptionComponent?: React.ElementType;\n\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkui.io/components/button) с параметрами:\n *\n * - `size=\"l\" mode=\"primary\" stretched`\n * - `size=\"l\" mode=\"secondary\" stretched`.\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkui.io/components/button-group) с параметрами:\n *\n * - `gap=\"s\" mode=\"horizontal\" stretched`\n * - `gap=\"m\" mode=\"vertical\" stretched`.\n */\n actions?: React.ReactNode;\n /**\n * Обработчик закрытия модального окна.\n */\n onClose?: VoidFunction;\n\n /**\n * Текст кнопки закрытия. Делает ее доступной для ассистивных технологий.\n */\n dismissLabel?: string;\n\n /**\n * Задаёт контенту максимальную ширину для десктопной версии.\n */\n size?: number;\n\n /**\n * Передает атрибут `data-testid` для кнопки закрытия.\n */\n modalDismissButtonTestId?: string;\n /**\n * Расположение кнопки закрытия (внутри и вне `popout'a`).\n *\n * Доступно только в `compact`-режиме.\n *\n * На `iOS` в `regular`-режиме всегда включен `inside`.\n *\n * ⚠️ ВНИМАНИЕ: использование `none` скрывает крестик, это негативно сказывается на пользовательском опыте.\n */\n dismissButtonMode?: 'inside' | 'outside' | 'none';\n /**\n * Позволяет отключить возможность закрытия модальной страницы (смахивание, клавиша `ESC`, нажатие на подложку).\n *\n * ⚠️ ВНИМАНИЕ: использование этой опции негативно сказывается на пользовательском опыте.\n */\n preventClose?: boolean;\n /**\n * Управляющие элементы под кнопкой закрытия.\n *\n * Доступно только в `compact`-режиме. Рекомендуется размещать иконки размера 20, обернутые в ModalOutsideButton.\n *\n */\n outsideButtons?: React.ReactNode;\n}\n\n/**\n * @see https://vkui.io/components/modal-card-base\n */\nexport const ModalCardBase = ({\n icon,\n title,\n titleComponent = 'span',\n description,\n descriptionComponent = 'span',\n children,\n actions,\n onClose,\n dismissLabel = 'Закрыть',\n size: sizeProp,\n modalDismissButtonTestId,\n dismissButtonMode = 'outside',\n preventClose,\n outsideButtons,\n titleId,\n ...restProps\n}: ModalCardBaseProps): React.ReactNode => {\n const platform = usePlatform();\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n const size = isDesktop ? sizeProp : undefined;\n const withSafeZone =\n !icon &&\n (dismissButtonMode === 'inside' ||\n (platform === 'ios' && !isDesktop && dismissButtonMode !== 'none'));\n\n const hasTitle = hasReactNode(title);\n const hasDescription = hasReactNode(description);\n return (\n <RootComponent\n {...restProps}\n baseClassName={classNames(\n 'vkuiInternalModalCardBase',\n platform === 'ios' && styles.ios,\n isDesktop && styles.desktop,\n withSafeZone && styles.withSafeZone,\n )}\n baseStyle={{\n maxWidth: size,\n }}\n >\n <div className={styles.container}>\n {hasReactNode(icon) && <div className={styles.icon}>{icon}</div>}\n {hasReactNode(title) && (\n <Title\n id={titleId}\n level=\"2\"\n weight=\"2\"\n className={styles.title}\n Component={titleComponent}\n >\n {title}\n </Title>\n )}\n {hasTitle && hasDescription && <Spacing size={8} />}\n {hasDescription && (\n <AdaptivityContext.Provider value={{ sizeY: 'regular' }}>\n <Subhead className={styles.description} Component={descriptionComponent}>\n {description}\n </Subhead>\n </AdaptivityContext.Provider>\n )}\n\n {children}\n\n {hasReactNode(actions) && <div className={styles.actions}>{actions}</div>}\n\n {isDesktop && (dismissButtonMode === 'outside' || outsideButtons) && (\n <ModalOutsideButtons>\n {dismissButtonMode === 'outside' && (\n <ModalOutsideButton\n aria-label={dismissLabel}\n data-testid={modalDismissButtonTestId}\n onClick={onClose}\n >\n <Icon20Cancel />\n </ModalOutsideButton>\n )}\n {outsideButtons}\n </ModalOutsideButtons>\n )}\n\n {(dismissButtonMode === 'inside' ||\n (platform === 'ios' && !isDesktop && dismissButtonMode !== 'none')) && (\n <Tappable\n className={styles.dismiss}\n onClick={onClose}\n hoverMode=\"opacity\"\n activeMode=\"opacity\"\n data-testid={modalDismissButtonTestId}\n >\n <VisuallyHidden>{dismissLabel}</VisuallyHidden>\n {platform === 'ios' ? <Icon24Dismiss /> : <Icon20Cancel />}\n </Tappable>\n )}\n </div>\n </RootComponent>\n );\n};\n"],"names":["React","Icon20Cancel","Icon24Dismiss","classNames","hasReactNode","useAdaptivityWithJSMediaQueries","usePlatform","AdaptivityContext","ModalOutsideButton","ModalOutsideButtons","RootComponent","Spacing","Tappable","Subhead","Title","VisuallyHidden","styles","ModalCardBase","icon","title","titleComponent","description","descriptionComponent","children","actions","onClose","dismissLabel","size","sizeProp","modalDismissButtonTestId","dismissButtonMode","preventClose","outsideButtons","titleId","restProps","platform","isDesktop","undefined","withSafeZone","hasTitle","hasDescription","baseClassName","ios","desktop","baseStyle","maxWidth","div","className","container","id","level","weight","Component","Provider","value","sizeY","aria-label","data-testid","onClick","dismiss","hoverMode","activeMode"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,YAAY,EAAEC,aAAa,QAAQ,mBAAmB;AAC/D,SAASC,UAAU,EAAEC,YAAY,QAAQ,kBAAkB;AAC3D,SAASC,+BAA+B,QAAQ,iDAA8C;AAC9F,SAASC,WAAW,QAAQ,6BAA0B;AAEtD,SAASC,iBAAiB,QAAQ,6CAA0C;AAC5E,SAASC,kBAAkB,QAAQ,8CAA2C;AAC9E,SAASC,mBAAmB,QAAQ,gDAA6C;AACjF,SAASC,aAAa,QAAQ,oCAAiC;AAC/D,SAASC,OAAO,QAAQ,wBAAqB;AAC7C,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASC,OAAO,QAAQ,mCAAgC;AACxD,SAASC,KAAK,QAAQ,+BAA4B;AAClD,SAASC,cAAc,QAAQ,sCAAmC;AAClE,OAAOC,YAAY,6BAA6B;AAyFhD;;CAEC,GACD,OAAO,MAAMC,gBAAgB,CAAC,EAC5BC,IAAI,EACJC,KAAK,EACLC,iBAAiB,MAAM,EACvBC,WAAW,EACXC,uBAAuB,MAAM,EAC7BC,QAAQ,EACRC,OAAO,EACPC,OAAO,EACPC,eAAe,SAAS,EACxBC,MAAMC,QAAQ,EACdC,wBAAwB,EACxBC,oBAAoB,SAAS,EAC7BC,YAAY,EACZC,cAAc,EACdC,OAAO,EACP,GAAGC,WACgB;IACnB,MAAMC,WAAW7B;IACjB,MAAM,EAAE8B,SAAS,EAAE,GAAG/B;IAEtB,MAAMsB,OAAOS,YAAYR,WAAWS;IACpC,MAAMC,eACJ,CAACpB,QACAY,CAAAA,sBAAsB,YACpBK,aAAa,SAAS,CAACC,aAAaN,sBAAsB,MAAM;IAErE,MAAMS,WAAWnC,aAAae;IAC9B,MAAMqB,iBAAiBpC,aAAaiB;IACpC,qBACE,KAACX;QACE,GAAGwB,SAAS;QACbO,eAAetC,WACb,6BACAgC,aAAa,SAASnB,OAAO0B,GAAG,EAChCN,aAAapB,OAAO2B,OAAO,EAC3BL,gBAAgBtB,OAAOsB,YAAY;QAErCM,WAAW;YACTC,UAAUlB;QACZ;kBAEA,cAAA,MAACmB;YAAIC,WAAW/B,OAAOgC,SAAS;;gBAC7B5C,aAAac,uBAAS,KAAC4B;oBAAIC,WAAW/B,OAAOE,IAAI;8BAAGA;;gBACpDd,aAAae,wBACZ,KAACL;oBACCmC,IAAIhB;oBACJiB,OAAM;oBACNC,QAAO;oBACPJ,WAAW/B,OAAOG,KAAK;oBACvBiC,WAAWhC;8BAEVD;;gBAGJoB,YAAYC,gCAAkB,KAAC7B;oBAAQgB,MAAM;;gBAC7Ca,gCACC,KAACjC,kBAAkB8C,QAAQ;oBAACC,OAAO;wBAAEC,OAAO;oBAAU;8BACpD,cAAA,KAAC1C;wBAAQkC,WAAW/B,OAAOK,WAAW;wBAAE+B,WAAW9B;kCAChDD;;;gBAKNE;gBAEAnB,aAAaoB,0BAAY,KAACsB;oBAAIC,WAAW/B,OAAOQ,OAAO;8BAAGA;;gBAE1DY,aAAcN,CAAAA,sBAAsB,aAAaE,cAAa,mBAC7D,MAACvB;;wBACEqB,sBAAsB,2BACrB,KAACtB;4BACCgD,cAAY9B;4BACZ+B,eAAa5B;4BACb6B,SAASjC;sCAET,cAAA,KAACxB;;wBAGJ+B;;;gBAIHF,CAAAA,sBAAsB,YACrBK,aAAa,SAAS,CAACC,aAAaN,sBAAsB,MAAM,mBACjE,MAAClB;oBACCmC,WAAW/B,OAAO2C,OAAO;oBACzBD,SAASjC;oBACTmC,WAAU;oBACVC,YAAW;oBACXJ,eAAa5B;;sCAEb,KAACd;sCAAgBW;;wBAChBS,aAAa,sBAAQ,KAACjC,mCAAmB,KAACD;;;;;;AAMvD,EAAE"}
|
|
@@ -6,7 +6,7 @@ import { ModalOutsideButton } from "../ModalOutsideButton/ModalOutsideButton.js"
|
|
|
6
6
|
import { VisuallyHidden } from "../VisuallyHidden/VisuallyHidden.js";
|
|
7
7
|
import styles from "./ModalDismissButton.module.css";
|
|
8
8
|
/**
|
|
9
|
-
* @see https://
|
|
9
|
+
* @see https://vkui.io/components/modal-dismiss-button
|
|
10
10
|
*/ export const ModalDismissButton = ({ children = 'Закрыть', className, ...restProps })=>{
|
|
11
11
|
return /*#__PURE__*/ _jsxs(ModalOutsideButton, {
|
|
12
12
|
className: classNames(styles.host, className),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ModalDismissButton/ModalDismissButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon20Cancel } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport {\n ModalOutsideButton,\n type ModalOutsideButtonProps,\n} from '../ModalOutsideButton/ModalOutsideButton';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './ModalDismissButton.module.css';\n\nexport interface ModalDismissButtonProps extends Omit<ModalOutsideButtonProps, 'children'> {\n /**\n * Содержимое кнопки.\n */\n children?: React.ReactNode;\n}\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ModalDismissButton/ModalDismissButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon20Cancel } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport {\n ModalOutsideButton,\n type ModalOutsideButtonProps,\n} from '../ModalOutsideButton/ModalOutsideButton';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './ModalDismissButton.module.css';\n\nexport interface ModalDismissButtonProps extends Omit<ModalOutsideButtonProps, 'children'> {\n /**\n * Содержимое кнопки.\n */\n children?: React.ReactNode;\n}\n\n/**\n * @see https://vkui.io/components/modal-dismiss-button\n */\nexport const ModalDismissButton = ({\n children = 'Закрыть',\n className,\n ...restProps\n}: ModalDismissButtonProps): React.ReactNode => {\n return (\n <ModalOutsideButton className={classNames(styles.host, className)} {...restProps}>\n {children && <VisuallyHidden>{children}</VisuallyHidden>}\n <Icon20Cancel />\n </ModalOutsideButton>\n );\n};\n"],"names":["React","Icon20Cancel","classNames","ModalOutsideButton","VisuallyHidden","styles","ModalDismissButton","children","className","restProps","host"],"mappings":";AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SACEC,kBAAkB,QAEb,8CAA2C;AAClD,SAASC,cAAc,QAAQ,sCAAmC;AAClE,OAAOC,YAAY,kCAAkC;AASrD;;CAEC,GACD,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,WAAW,SAAS,EACpBC,SAAS,EACT,GAAGC,WACqB;IACxB,qBACE,MAACN;QAAmBK,WAAWN,WAAWG,OAAOK,IAAI,EAAEF;QAAa,GAAGC,SAAS;;YAC7EF,0BAAY,KAACH;0BAAgBG;;0BAC9B,KAACN;;;AAGP,EAAE"}
|
|
@@ -5,7 +5,7 @@ import { Tappable } from "../Tappable/Tappable.js";
|
|
|
5
5
|
import { VisuallyHidden } from "../VisuallyHidden/VisuallyHidden.js";
|
|
6
6
|
import styles from "./ModalOutsideButton.module.css";
|
|
7
7
|
/**
|
|
8
|
-
* @see https://
|
|
8
|
+
* @see https://vkui.io/components/modal-outside-button
|
|
9
9
|
*/ export const ModalOutsideButton = ({ children, 'aria-label': ariaLabel, ...restProps })=>{
|
|
10
10
|
return /*#__PURE__*/ _jsxs(Tappable, {
|
|
11
11
|
baseClassName: styles.host,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ModalOutsideButton/ModalOutsideButton.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Tappable, type TappableOmitProps } from '../Tappable/Tappable';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './ModalOutsideButton.module.css';\n\nexport interface ModalOutsideButtonProps extends TappableOmitProps {\n /**\n * Текст для скринридера.\n */\n 'aria-label'?: string;\n /**\n * Рекомендуется использовать иконки размером `20px`.\n */\n 'children': React.ReactNode;\n}\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ModalOutsideButton/ModalOutsideButton.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Tappable, type TappableOmitProps } from '../Tappable/Tappable';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport styles from './ModalOutsideButton.module.css';\n\nexport interface ModalOutsideButtonProps extends TappableOmitProps {\n /**\n * Текст для скринридера.\n */\n 'aria-label'?: string;\n /**\n * Рекомендуется использовать иконки размером `20px`.\n */\n 'children': React.ReactNode;\n}\n\n/**\n * @see https://vkui.io/components/modal-outside-button\n */\nexport const ModalOutsideButton = ({\n children,\n 'aria-label': ariaLabel,\n ...restProps\n}: ModalOutsideButtonProps) => {\n return (\n <Tappable\n baseClassName={styles.host}\n activeMode={styles.active}\n hoverMode={styles.hover}\n {...restProps}\n >\n {ariaLabel && <VisuallyHidden>{ariaLabel}</VisuallyHidden>}\n {children}\n </Tappable>\n );\n};\n"],"names":["React","Tappable","VisuallyHidden","styles","ModalOutsideButton","children","ariaLabel","restProps","baseClassName","host","activeMode","active","hoverMode","hover"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,QAAQ,QAAgC,0BAAuB;AACxE,SAASC,cAAc,QAAQ,sCAAmC;AAClE,OAAOC,YAAY,kCAAkC;AAarD;;CAEC,GACD,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,QAAQ,EACR,cAAcC,SAAS,EACvB,GAAGC,WACqB;IACxB,qBACE,MAACN;QACCO,eAAeL,OAAOM,IAAI;QAC1BC,YAAYP,OAAOQ,MAAM;QACzBC,WAAWT,OAAOU,KAAK;QACtB,GAAGN,SAAS;;YAEZD,2BAAa,KAACJ;0BAAgBI;;YAC9BD;;;AAGP,EAAE"}
|
|
@@ -8,7 +8,7 @@ import { useModalManager } from "../ModalRoot/useModalManager.js";
|
|
|
8
8
|
import { ModalPageInternal } from "./ModalPageInternal.js";
|
|
9
9
|
const snapPointCache = new Map();
|
|
10
10
|
/**
|
|
11
|
-
* @see https://
|
|
11
|
+
* @see https://vkui.io/components/modal-page
|
|
12
12
|
*/ export const ModalPage = ({ id: idProp, nav, open = false, modalOverlayTestId, noFocusToDialog, onOpen, onOpened, onClose, onClosed, size = 's', settlingHeight = 50, dynamicContentHeight, keepMounted = false, ...restProps })=>{
|
|
13
13
|
const { mounted, shouldPreserveSnapPoint, id, ...resolvedProps } = useModalManager({
|
|
14
14
|
id: nav || idProp,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ModalPage/ModalPage.tsx"],"sourcesContent":["'use client';\n\nimport { useMemo } from 'react';\nimport { ModalContext } from '../../context/ModalContext';\nimport { inRange } from '../../helpers/range';\nimport { SNAP_POINT_DETENTS, SNAP_POINT_SAFE_RANGE, type SnapPoint } from '../../lib/sheet';\nimport { useModalManager } from '../ModalRoot/useModalManager';\nimport { ModalPageInternal } from './ModalPageInternal';\nimport type { ModalPageProps } from './types';\n\nconst snapPointCache = new Map<string, Exclude<SnapPoint, 'auto'>>();\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ModalPage/ModalPage.tsx"],"sourcesContent":["'use client';\n\nimport { useMemo } from 'react';\nimport { ModalContext } from '../../context/ModalContext';\nimport { inRange } from '../../helpers/range';\nimport { SNAP_POINT_DETENTS, SNAP_POINT_SAFE_RANGE, type SnapPoint } from '../../lib/sheet';\nimport { useModalManager } from '../ModalRoot/useModalManager';\nimport { ModalPageInternal } from './ModalPageInternal';\nimport type { ModalPageProps } from './types';\n\nconst snapPointCache = new Map<string, Exclude<SnapPoint, 'auto'>>();\n\n/**\n * @see https://vkui.io/components/modal-page\n */\nexport const ModalPage = ({\n id: idProp,\n nav,\n open = false,\n modalOverlayTestId,\n noFocusToDialog,\n onOpen,\n onOpened,\n onClose,\n onClosed,\n size = 's',\n settlingHeight = 50,\n dynamicContentHeight,\n keepMounted = false,\n ...restProps\n}: ModalPageProps) => {\n const { mounted, shouldPreserveSnapPoint, id, ...resolvedProps } = useModalManager({\n id: nav || idProp,\n open,\n keepMounted,\n modalOverlayTestId,\n noFocusToDialog,\n onOpen,\n onOpened,\n onClose,\n onClosed,\n });\n\n const snapPoint = useMemo((): SnapPoint => {\n if (dynamicContentHeight) {\n return 'auto';\n }\n\n if (shouldPreserveSnapPoint) {\n const snapPointCached = snapPointCache.get(id);\n\n if (snapPointCached) {\n return snapPointCached;\n }\n\n const nextSnapPoint = transformSettlingHeightToSnapPoint(settlingHeight);\n snapPointCache.set(id, nextSnapPoint);\n\n return nextSnapPoint;\n } else {\n snapPointCache.delete(id);\n }\n\n return transformSettlingHeightToSnapPoint(settlingHeight);\n }, [id, shouldPreserveSnapPoint, dynamicContentHeight, settlingHeight]);\n\n if (!mounted) {\n return null;\n }\n\n return (\n <ModalContext.Provider value={id}>\n <ModalPageInternal\n id={id}\n size={size}\n aria-labelledby={`${id}-label`}\n snapPoint={snapPoint}\n onSnapPointChange={\n snapPoint !== 'auto' && shouldPreserveSnapPoint\n ? (snapPoint) => {\n const snapPointCached = snapPointCache.get(id);\n\n if (snapPointCached) {\n snapPointCached.initial = snapPoint;\n snapPointCache.set(id, snapPointCached);\n }\n }\n : undefined\n }\n {...resolvedProps}\n {...restProps}\n />\n </ModalContext.Provider>\n );\n};\n\nfunction transformSettlingHeightToSnapPoint(settlingHeight: number): Exclude<SnapPoint, 'auto'> {\n const currentSnapPoint = Math.min(\n Math.max(settlingHeight, SNAP_POINT_SAFE_RANGE.LOWER),\n SNAP_POINT_DETENTS.LARGE,\n );\n\n return {\n initial: currentSnapPoint,\n detents: inRange(currentSnapPoint, SNAP_POINT_SAFE_RANGE.LOWER, SNAP_POINT_SAFE_RANGE.HIGHEST)\n ? [SNAP_POINT_DETENTS.MIN, currentSnapPoint, SNAP_POINT_DETENTS.LARGE]\n : [SNAP_POINT_DETENTS.MIN, currentSnapPoint],\n };\n}\n"],"names":["useMemo","ModalContext","inRange","SNAP_POINT_DETENTS","SNAP_POINT_SAFE_RANGE","useModalManager","ModalPageInternal","snapPointCache","Map","ModalPage","id","idProp","nav","open","modalOverlayTestId","noFocusToDialog","onOpen","onOpened","onClose","onClosed","size","settlingHeight","dynamicContentHeight","keepMounted","restProps","mounted","shouldPreserveSnapPoint","resolvedProps","snapPoint","snapPointCached","get","nextSnapPoint","transformSettlingHeightToSnapPoint","set","delete","Provider","value","aria-labelledby","onSnapPointChange","initial","undefined","currentSnapPoint","Math","min","max","LOWER","LARGE","detents","HIGHEST","MIN"],"mappings":"AAAA;;AAEA,SAASA,OAAO,QAAQ,QAAQ;AAChC,SAASC,YAAY,QAAQ,gCAA6B;AAC1D,SAASC,OAAO,QAAQ,yBAAsB;AAC9C,SAASC,kBAAkB,EAAEC,qBAAqB,QAAwB,2BAAkB;AAC5F,SAASC,eAAe,QAAQ,kCAA+B;AAC/D,SAASC,iBAAiB,QAAQ,yBAAsB;AAGxD,MAAMC,iBAAiB,IAAIC;AAE3B;;CAEC,GACD,OAAO,MAAMC,YAAY,CAAC,EACxBC,IAAIC,MAAM,EACVC,GAAG,EACHC,OAAO,KAAK,EACZC,kBAAkB,EAClBC,eAAe,EACfC,MAAM,EACNC,QAAQ,EACRC,OAAO,EACPC,QAAQ,EACRC,OAAO,GAAG,EACVC,iBAAiB,EAAE,EACnBC,oBAAoB,EACpBC,cAAc,KAAK,EACnB,GAAGC,WACY;IACf,MAAM,EAAEC,OAAO,EAAEC,uBAAuB,EAAEhB,EAAE,EAAE,GAAGiB,eAAe,GAAGtB,gBAAgB;QACjFK,IAAIE,OAAOD;QACXE;QACAU;QACAT;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,MAAMS,YAAY5B,QAAQ;QACxB,IAAIsB,sBAAsB;YACxB,OAAO;QACT;QAEA,IAAII,yBAAyB;YAC3B,MAAMG,kBAAkBtB,eAAeuB,GAAG,CAACpB;YAE3C,IAAImB,iBAAiB;gBACnB,OAAOA;YACT;YAEA,MAAME,gBAAgBC,mCAAmCX;YACzDd,eAAe0B,GAAG,CAACvB,IAAIqB;YAEvB,OAAOA;QACT,OAAO;YACLxB,eAAe2B,MAAM,CAACxB;QACxB;QAEA,OAAOsB,mCAAmCX;IAC5C,GAAG;QAACX;QAAIgB;QAAyBJ;QAAsBD;KAAe;IAEtE,IAAI,CAACI,SAAS;QACZ,OAAO;IACT;IAEA,qBACE,KAACxB,aAAakC,QAAQ;QAACC,OAAO1B;kBAC5B,cAAA,KAACJ;YACCI,IAAIA;YACJU,MAAMA;YACNiB,mBAAiB,GAAG3B,GAAG,MAAM,CAAC;YAC9BkB,WAAWA;YACXU,mBACEV,cAAc,UAAUF,0BACpB,CAACE;gBACC,MAAMC,kBAAkBtB,eAAeuB,GAAG,CAACpB;gBAE3C,IAAImB,iBAAiB;oBACnBA,gBAAgBU,OAAO,GAAGX;oBAC1BrB,eAAe0B,GAAG,CAACvB,IAAImB;gBACzB;YACF,IACAW;YAEL,GAAGb,aAAa;YAChB,GAAGH,SAAS;;;AAIrB,EAAE;AAEF,SAASQ,mCAAmCX,cAAsB;IAChE,MAAMoB,mBAAmBC,KAAKC,GAAG,CAC/BD,KAAKE,GAAG,CAACvB,gBAAgBjB,sBAAsByC,KAAK,GACpD1C,mBAAmB2C,KAAK;IAG1B,OAAO;QACLP,SAASE;QACTM,SAAS7C,QAAQuC,kBAAkBrC,sBAAsByC,KAAK,EAAEzC,sBAAsB4C,OAAO,IACzF;YAAC7C,mBAAmB8C,GAAG;YAAER;YAAkBtC,mBAAmB2C,KAAK;SAAC,GACpE;YAAC3C,mBAAmB8C,GAAG;YAAER;SAAiB;IAChD;AACF"}
|
|
@@ -9,7 +9,7 @@ import { PanelHeader } from "../PanelHeader/PanelHeader.js";
|
|
|
9
9
|
import { Separator } from "../Separator/Separator.js";
|
|
10
10
|
import styles from "./ModalPageHeader.module.css";
|
|
11
11
|
/**
|
|
12
|
-
* @see https://
|
|
12
|
+
* @see https://vkui.io/components/modal-page-header
|
|
13
13
|
*/ export const ModalPageHeader = ({ children, noSeparator = false, getRootRef, className, typographyProps, ...restProps })=>{
|
|
14
14
|
const platform = usePlatform();
|
|
15
15
|
const { isDesktop, sizeX } = useAdaptivityWithJSMediaQueries();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ModalPageHeader/ModalPageHeader.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useModalContext } from '../../context/ModalContext';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport type { HasRef, HasRootRef } from '../../types';\nimport { PanelHeader, type PanelHeaderProps } from '../PanelHeader/PanelHeader';\nimport { Separator } from '../Separator/Separator';\nimport styles from './ModalPageHeader.module.css';\n\nexport interface ModalPageHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Omit<PanelHeaderProps, 'fixed' | 'shadow' | 'delimiter'>,\n HasRef<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Отключение разделителя.\n */\n noSeparator?: boolean;\n}\n\n/**\n * @see https://
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ModalPageHeader/ModalPageHeader.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useModalContext } from '../../context/ModalContext';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport type { HasRef, HasRootRef } from '../../types';\nimport { PanelHeader, type PanelHeaderProps } from '../PanelHeader/PanelHeader';\nimport { Separator } from '../Separator/Separator';\nimport styles from './ModalPageHeader.module.css';\n\nexport interface ModalPageHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Omit<PanelHeaderProps, 'fixed' | 'shadow' | 'delimiter'>,\n HasRef<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Отключение разделителя.\n */\n noSeparator?: boolean;\n}\n\n/**\n * @see https://vkui.io/components/modal-page-header\n */\nexport const ModalPageHeader = ({\n children,\n noSeparator = false,\n getRootRef,\n className,\n typographyProps,\n ...restProps\n}: ModalPageHeaderProps): React.ReactNode => {\n const platform = usePlatform();\n const { isDesktop, sizeX } = useAdaptivityWithJSMediaQueries();\n const modalContext = useModalContext();\n\n return (\n <>\n <div\n className={classNames(\n styles.host,\n platform !== 'vkcom' && styles.hostWithGaps,\n isDesktop && styles.hostDesktop,\n )}\n ref={getRootRef}\n >\n <PanelHeader\n className={classNames('vkuiInternalModalPageHeader__in', className)}\n typographyProps={{\n Component: 'h2',\n id: modalContext.labelId,\n ...typographyProps,\n }}\n {...restProps}\n fixed={false}\n delimiter=\"none\"\n transparent\n >\n {children}\n </PanelHeader>\n </div>\n {!noSeparator && <Separator padding={sizeX !== 'regular'} />}\n </>\n );\n};\n"],"names":["React","classNames","useModalContext","useAdaptivityWithJSMediaQueries","usePlatform","PanelHeader","Separator","styles","ModalPageHeader","children","noSeparator","getRootRef","className","typographyProps","restProps","platform","isDesktop","sizeX","modalContext","div","host","hostWithGaps","hostDesktop","ref","Component","id","labelId","fixed","delimiter","transparent","padding"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,eAAe,QAAQ,gCAA6B;AAC7D,SAASC,+BAA+B,QAAQ,iDAA8C;AAC9F,SAASC,WAAW,QAAQ,6BAA0B;AAEtD,SAASC,WAAW,QAA+B,gCAA6B;AAChF,SAASC,SAAS,QAAQ,4BAAyB;AACnD,OAAOC,YAAY,+BAA+B;AAalD;;CAEC,GACD,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,QAAQ,EACRC,cAAc,KAAK,EACnBC,UAAU,EACVC,SAAS,EACTC,eAAe,EACf,GAAGC,WACkB;IACrB,MAAMC,WAAWX;IACjB,MAAM,EAAEY,SAAS,EAAEC,KAAK,EAAE,GAAGd;IAC7B,MAAMe,eAAehB;IAErB,qBACE;;0BACE,KAACiB;gBACCP,WAAWX,WACTM,OAAOa,IAAI,EACXL,aAAa,WAAWR,OAAOc,YAAY,EAC3CL,aAAaT,OAAOe,WAAW;gBAEjCC,KAAKZ;0BAEL,cAAA,KAACN;oBACCO,WAAWX,WAAW,mCAAmCW;oBACzDC,iBAAiB;wBACfW,WAAW;wBACXC,IAAIP,aAAaQ,OAAO;wBACxB,GAAGb,eAAe;oBACpB;oBACC,GAAGC,SAAS;oBACba,OAAO;oBACPC,WAAU;oBACVC,WAAW;8BAEVpB;;;YAGJ,CAACC,6BAAe,KAACJ;gBAAUwB,SAASb,UAAU;;;;AAGrD,EAAE"}
|
|
@@ -8,7 +8,7 @@ import { ModalOverlay } from "../ModalOverlay/ModalOverlay.js";
|
|
|
8
8
|
import { ModalRootContext, ModalRootOverlayContext } from "./ModalRootContext.js";
|
|
9
9
|
const warn = warnOnce('ModalRoot');
|
|
10
10
|
/**
|
|
11
|
-
* @see https://
|
|
11
|
+
* @see https://vkui.io/components/modal-root
|
|
12
12
|
*/ export const ModalRoot = ({ activeModal, children, modalOverlayTestId, noFocusToDialog, usePortal, onOpen, onOpened, onClose, onClosed })=>{
|
|
13
13
|
const contextValue = React.useMemo(()=>({
|
|
14
14
|
isInsideModal: true,
|