@vkontakte/vkui 6.4.0 → 6.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/dist/cjs/components/ActionSheet/ActionSheet.js +2 -1
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetContext.d.ts +1 -0
- package/dist/cjs/components/ActionSheet/ActionSheetContext.d.ts.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +38 -12
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/helpers.d.ts +10 -0
- package/dist/cjs/components/ActionSheetItem/helpers.d.ts.map +1 -0
- package/dist/cjs/components/ActionSheetItem/helpers.js +22 -0
- package/dist/cjs/components/ActionSheetItem/helpers.js.map +1 -0
- package/dist/cjs/components/Alert/Alert.js +1 -1
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.d.ts +0 -1
- package/dist/cjs/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.js +3 -11
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Avatar/AvatarBadge/icons.d.ts +8 -3
- package/dist/cjs/components/Avatar/AvatarBadge/icons.d.ts.map +1 -1
- package/dist/cjs/components/Avatar/AvatarBadge/icons.js +2 -2
- package/dist/cjs/components/Avatar/AvatarBadge/icons.js.map +1 -1
- package/dist/cjs/components/BaseGallery/BaseGallery.d.ts.map +1 -1
- package/dist/cjs/components/BaseGallery/BaseGallery.js +0 -2
- package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/cjs/components/Calendar/Calendar.js +3 -3
- package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
- package/dist/cjs/components/CalendarDays/CalendarDays.js +3 -3
- package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js +5 -5
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cjs/components/CalendarRange/CalendarRange.d.ts.map +1 -1
- package/dist/cjs/components/CalendarRange/CalendarRange.js +17 -15
- package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cjs/components/CalendarTime/CalendarTime.js +5 -5
- package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cjs/components/Cell/Cell.d.ts.map +1 -1
- package/dist/cjs/components/Cell/Cell.js +2 -2
- package/dist/cjs/components/Cell/Cell.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.d.ts +7 -5
- package/dist/cjs/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.js +21 -143
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/Checkbox/CheckboxInput/CheckboxInput.d.ts +8 -0
- package/dist/cjs/components/Checkbox/CheckboxInput/CheckboxInput.d.ts.map +1 -0
- package/dist/cjs/components/Checkbox/CheckboxInput/CheckboxInput.js +134 -0
- package/dist/cjs/components/Checkbox/CheckboxInput/CheckboxInput.js.map +1 -0
- package/dist/cjs/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts +3 -0
- package/dist/cjs/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts.map +1 -0
- package/dist/cjs/components/Checkbox/CheckboxSimple/CheckboxSimple.js +52 -0
- package/dist/cjs/components/Checkbox/CheckboxSimple/CheckboxSimple.js.map +1 -0
- package/dist/cjs/components/ChipsInput/ChipsInput.d.ts.map +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.js +1 -2
- package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +1 -1
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cjs/components/ChipsInputBase/helpers.d.ts.map +1 -1
- package/dist/cjs/components/ChipsInputBase/helpers.js +0 -3
- package/dist/cjs/components/ChipsInputBase/helpers.js.map +1 -1
- package/dist/cjs/components/ChipsInputBase/types.d.ts +1 -1
- package/dist/cjs/components/ChipsInputBase/types.d.ts.map +1 -1
- package/dist/cjs/components/ChipsInputBase/types.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +1 -7
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/Clickable/useState.d.ts +0 -5
- package/dist/cjs/components/Clickable/useState.d.ts.map +1 -1
- package/dist/cjs/components/Clickable/useState.js +3 -7
- package/dist/cjs/components/Clickable/useState.js.map +1 -1
- package/dist/cjs/components/CustomScrollView/CustomScrollView.d.ts +10 -1
- package/dist/cjs/components/CustomScrollView/CustomScrollView.d.ts.map +1 -1
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js +41 -132
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cjs/components/CustomScrollView/ScrollX.d.ts +3 -0
- package/dist/cjs/components/CustomScrollView/ScrollX.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/ScrollX.js +42 -0
- package/dist/cjs/components/CustomScrollView/ScrollX.js.map +1 -0
- package/dist/cjs/components/CustomScrollView/ScrollY.d.ts +3 -0
- package/dist/cjs/components/CustomScrollView/ScrollY.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/ScrollY.js +42 -0
- package/dist/cjs/components/CustomScrollView/ScrollY.js.map +1 -0
- package/dist/cjs/components/CustomScrollView/types.d.ts +21 -0
- package/dist/cjs/components/CustomScrollView/types.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/types.js +8 -0
- package/dist/cjs/components/CustomScrollView/types.js.map +1 -0
- package/dist/cjs/components/CustomScrollView/useCustomScrollViewResize.d.ts +8 -0
- package/dist/cjs/components/CustomScrollView/useCustomScrollViewResize.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/useCustomScrollViewResize.js +32 -0
- package/dist/cjs/components/CustomScrollView/useCustomScrollViewResize.js.map +1 -0
- package/dist/cjs/components/CustomScrollView/useDetectScrollDirection.d.ts +6 -0
- package/dist/cjs/components/CustomScrollView/useDetectScrollDirection.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/useDetectScrollDirection.js +29 -0
- package/dist/cjs/components/CustomScrollView/useDetectScrollDirection.js.map +1 -0
- package/dist/cjs/components/CustomScrollView/useDragAndDrop.d.ts +5 -0
- package/dist/cjs/components/CustomScrollView/useDragAndDrop.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/useDragAndDrop.js +57 -0
- package/dist/cjs/components/CustomScrollView/useDragAndDrop.js.map +1 -0
- package/dist/cjs/components/CustomScrollView/useHorizontalScrollController.d.ts +4 -0
- package/dist/cjs/components/CustomScrollView/useHorizontalScrollController.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/useHorizontalScrollController.js +102 -0
- package/dist/cjs/components/CustomScrollView/useHorizontalScrollController.js.map +1 -0
- package/dist/cjs/components/CustomScrollView/useTrackerVisibility.d.ts.map +1 -1
- package/dist/cjs/components/CustomScrollView/useTrackerVisibility.js +5 -0
- package/dist/cjs/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
- package/dist/cjs/components/CustomScrollView/useVerticalScrollController.d.ts +4 -0
- package/dist/cjs/components/CustomScrollView/useVerticalScrollController.d.ts.map +1 -0
- package/dist/cjs/components/CustomScrollView/useVerticalScrollController.js +102 -0
- package/dist/cjs/components/CustomScrollView/useVerticalScrollController.js.map +1 -0
- package/dist/cjs/components/CustomSelect/CustomSelect.d.ts.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.js +3 -4
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/DateInput/DateInput.js +2 -2
- package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -3
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.d.ts +2 -2
- package/dist/cjs/components/FixedLayout/FixedLayout.d.ts.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cjs/components/Flex/FlexItem/FlexItem.d.ts +3 -3
- package/dist/cjs/components/Flex/FlexItem/FlexItem.d.ts.map +1 -1
- package/dist/cjs/components/Flex/FlexItem/FlexItem.js.map +1 -1
- package/dist/cjs/components/FocusTrap/FocusTrap.js +1 -1
- package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cjs/components/GridAvatar/GridAvatar.d.ts +0 -1
- package/dist/cjs/components/GridAvatar/GridAvatar.d.ts.map +1 -1
- package/dist/cjs/components/GridAvatar/GridAvatar.js +0 -3
- package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cjs/components/Group/Group.d.ts +1 -1
- package/dist/cjs/components/Group/Group.d.ts.map +1 -1
- package/dist/cjs/components/Group/Group.js +17 -12
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +7 -10
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/Image/Image.d.ts +0 -1
- package/dist/cjs/components/Image/Image.d.ts.map +1 -1
- package/dist/cjs/components/Image/Image.js +3 -11
- package/dist/cjs/components/Image/Image.js.map +1 -1
- package/dist/cjs/components/ImageBase/validators.js +1 -1
- package/dist/cjs/components/ImageBase/validators.js.map +1 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.d.ts.map +1 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +17 -15
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.d.ts.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.js +4 -28
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts +2 -2
- package/dist/cjs/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts.map +1 -1
- package/dist/cjs/components/OnboardingTooltip/OnboardingTooltipContainer.js +4 -3
- package/dist/cjs/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js +1 -3
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cjs/components/Radio/Radio.d.ts +5 -1
- package/dist/cjs/components/Radio/Radio.d.ts.map +1 -1
- package/dist/cjs/components/Radio/Radio.js +12 -75
- package/dist/cjs/components/Radio/Radio.js.map +1 -1
- package/dist/cjs/components/Radio/RadioInput/RadioInput.d.ts +6 -0
- package/dist/cjs/components/Radio/RadioInput/RadioInput.d.ts.map +1 -0
- package/dist/cjs/components/Radio/RadioInput/RadioInput.js +104 -0
- package/dist/cjs/components/Radio/RadioInput/RadioInput.js.map +1 -0
- package/dist/cjs/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js +1 -2
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cjs/components/SelectionControl/SelectionControl.d.ts +14 -0
- package/dist/cjs/components/SelectionControl/SelectionControl.d.ts.map +1 -0
- package/dist/cjs/components/SelectionControl/SelectionControl.js +36 -0
- package/dist/cjs/components/SelectionControl/SelectionControl.js.map +1 -0
- package/dist/cjs/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.d.ts +7 -0
- package/dist/cjs/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.d.ts.map +1 -0
- package/dist/cjs/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js +56 -0
- package/dist/cjs/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js.map +1 -0
- package/dist/cjs/components/Textarea/Textarea.d.ts +1 -1
- package/dist/cjs/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.js +13 -3
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/Textarea/useResizeTextarea.d.ts +1 -1
- package/dist/cjs/components/Textarea/useResizeTextarea.d.ts.map +1 -1
- package/dist/cjs/components/Textarea/useResizeTextarea.js +2 -2
- package/dist/cjs/components/Textarea/useResizeTextarea.js.map +1 -1
- package/dist/cjs/components/View/View.d.ts.map +1 -1
- package/dist/cjs/components/View/View.js +2 -4
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.d.ts.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.js +1 -3
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js +4 -3
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/cjs/hooks/useCalendar.d.ts.map +1 -1
- package/dist/cjs/hooks/useCalendar.js +6 -6
- package/dist/cjs/hooks/useCalendar.js.map +1 -1
- package/dist/cjs/hooks/useTodayDate.js +3 -3
- package/dist/cjs/hooks/useTodayDate.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +8 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/calendar.d.ts.map +1 -1
- package/dist/cjs/lib/calendar.js +27 -16
- package/dist/cjs/lib/calendar.js.map +1 -1
- package/dist/cjs/lib/date.d.ts +1 -28
- package/dist/cjs/lib/date.d.ts.map +1 -1
- package/dist/cjs/lib/date.js +8 -180
- package/dist/cjs/lib/date.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +2 -1
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetContext.d.ts +1 -0
- package/dist/components/ActionSheet/ActionSheetContext.d.ts.map +1 -1
- package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +38 -12
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/ActionSheetItem/helpers.d.ts +10 -0
- package/dist/components/ActionSheetItem/helpers.d.ts.map +1 -0
- package/dist/components/ActionSheetItem/helpers.js +12 -0
- package/dist/components/ActionSheetItem/helpers.js.map +1 -0
- package/dist/components/Alert/Alert.js +1 -1
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/Avatar/Avatar.d.ts +0 -1
- package/dist/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/components/Avatar/Avatar.js +1 -1
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Avatar/AvatarBadge/icons.d.ts +8 -3
- package/dist/components/Avatar/AvatarBadge/icons.d.ts.map +1 -1
- package/dist/components/Avatar/AvatarBadge/icons.js +2 -2
- package/dist/components/Avatar/AvatarBadge/icons.js.map +1 -1
- package/dist/components/BaseGallery/BaseGallery.d.ts.map +1 -1
- package/dist/components/BaseGallery/BaseGallery.js +0 -2
- package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
- package/dist/components/Calendar/Calendar.js +1 -1
- package/dist/components/Calendar/Calendar.js.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.js +1 -1
- package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.js +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.d.ts.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.js +6 -4
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/CalendarTime/CalendarTime.js +1 -1
- package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/components/Cell/Cell.d.ts.map +1 -1
- package/dist/components/Cell/Cell.js +2 -2
- package/dist/components/Cell/Cell.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts +7 -5
- package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/components/Checkbox/Checkbox.js +24 -146
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/Checkbox/CheckboxInput/CheckboxInput.d.ts +8 -0
- package/dist/components/Checkbox/CheckboxInput/CheckboxInput.d.ts.map +1 -0
- package/dist/components/Checkbox/CheckboxInput/CheckboxInput.js +123 -0
- package/dist/components/Checkbox/CheckboxInput/CheckboxInput.js.map +1 -0
- package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts +3 -0
- package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts.map +1 -0
- package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.js +42 -0
- package/dist/components/Checkbox/CheckboxSimple/CheckboxSimple.js.map +1 -0
- package/dist/components/ChipsInput/ChipsInput.d.ts.map +1 -1
- package/dist/components/ChipsInput/ChipsInput.js +1 -2
- package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.js +1 -1
- 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 +0 -3
- package/dist/components/ChipsInputBase/helpers.js.map +1 -1
- package/dist/components/ChipsInputBase/types.d.ts +1 -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.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.js +1 -7
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/Clickable/useState.d.ts +0 -5
- package/dist/components/Clickable/useState.d.ts.map +1 -1
- package/dist/components/Clickable/useState.js +2 -2
- package/dist/components/Clickable/useState.js.map +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.d.ts +10 -1
- package/dist/components/CustomScrollView/CustomScrollView.d.ts.map +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.js +44 -133
- package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/components/CustomScrollView/ScrollX.d.ts +3 -0
- package/dist/components/CustomScrollView/ScrollX.d.ts.map +1 -0
- package/dist/components/CustomScrollView/ScrollX.js +31 -0
- package/dist/components/CustomScrollView/ScrollX.js.map +1 -0
- package/dist/components/CustomScrollView/ScrollY.d.ts +3 -0
- package/dist/components/CustomScrollView/ScrollY.d.ts.map +1 -0
- package/dist/components/CustomScrollView/ScrollY.js +31 -0
- package/dist/components/CustomScrollView/ScrollY.js.map +1 -0
- package/dist/components/CustomScrollView/types.d.ts +21 -0
- package/dist/components/CustomScrollView/types.d.ts.map +1 -0
- package/dist/components/CustomScrollView/types.js +3 -0
- package/dist/components/CustomScrollView/types.js.map +1 -0
- package/dist/components/CustomScrollView/useCustomScrollViewResize.d.ts +8 -0
- package/dist/components/CustomScrollView/useCustomScrollViewResize.d.ts.map +1 -0
- package/dist/components/CustomScrollView/useCustomScrollViewResize.js +22 -0
- package/dist/components/CustomScrollView/useCustomScrollViewResize.js.map +1 -0
- package/dist/components/CustomScrollView/useDetectScrollDirection.d.ts +6 -0
- package/dist/components/CustomScrollView/useDetectScrollDirection.d.ts.map +1 -0
- package/dist/components/CustomScrollView/useDetectScrollDirection.js +20 -0
- package/dist/components/CustomScrollView/useDetectScrollDirection.js.map +1 -0
- package/dist/components/CustomScrollView/useDragAndDrop.d.ts +5 -0
- package/dist/components/CustomScrollView/useDragAndDrop.d.ts.map +1 -0
- package/dist/components/CustomScrollView/useDragAndDrop.js +46 -0
- package/dist/components/CustomScrollView/useDragAndDrop.js.map +1 -0
- package/dist/components/CustomScrollView/useHorizontalScrollController.d.ts +4 -0
- package/dist/components/CustomScrollView/useHorizontalScrollController.d.ts.map +1 -0
- package/dist/components/CustomScrollView/useHorizontalScrollController.js +91 -0
- package/dist/components/CustomScrollView/useHorizontalScrollController.js.map +1 -0
- package/dist/components/CustomScrollView/useTrackerVisibility.d.ts.map +1 -1
- package/dist/components/CustomScrollView/useTrackerVisibility.js +5 -0
- package/dist/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
- package/dist/components/CustomScrollView/useVerticalScrollController.d.ts +4 -0
- package/dist/components/CustomScrollView/useVerticalScrollController.d.ts.map +1 -0
- package/dist/components/CustomScrollView/useVerticalScrollController.js +91 -0
- package/dist/components/CustomScrollView/useVerticalScrollController.js.map +1 -0
- package/dist/components/CustomSelect/CustomSelect.d.ts.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.js +3 -4
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/DateInput/DateInput.js +2 -2
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js +4 -3
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.d.ts +2 -2
- package/dist/components/FixedLayout/FixedLayout.d.ts.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.js +1 -1
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/Flex/FlexItem/FlexItem.d.ts +3 -3
- package/dist/components/Flex/FlexItem/FlexItem.d.ts.map +1 -1
- package/dist/components/Flex/FlexItem/FlexItem.js.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.js +1 -1
- package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/components/GridAvatar/GridAvatar.d.ts +0 -1
- package/dist/components/GridAvatar/GridAvatar.d.ts.map +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.d.ts.map +1 -1
- package/dist/components/Group/Group.js +17 -12
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js +7 -10
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/Image/Image.d.ts +0 -1
- package/dist/components/Image/Image.d.ts.map +1 -1
- package/dist/components/Image/Image.js +1 -1
- package/dist/components/Image/Image.js.map +1 -1
- package/dist/components/ImageBase/validators.js +1 -1
- package/dist/components/ImageBase/validators.js.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.d.ts.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.js +18 -16
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.d.ts.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +4 -28
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts +2 -2
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js +4 -3
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js +1 -3
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/Radio/Radio.d.ts +5 -1
- package/dist/components/Radio/Radio.d.ts.map +1 -1
- package/dist/components/Radio/Radio.js +13 -76
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/Radio/RadioInput/RadioInput.d.ts +6 -0
- package/dist/components/Radio/RadioInput/RadioInput.d.ts.map +1 -0
- package/dist/components/Radio/RadioInput/RadioInput.js +93 -0
- package/dist/components/Radio/RadioInput/RadioInput.js.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js +1 -2
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SelectionControl/SelectionControl.d.ts +14 -0
- package/dist/components/SelectionControl/SelectionControl.d.ts.map +1 -0
- package/dist/components/SelectionControl/SelectionControl.js +27 -0
- package/dist/components/SelectionControl/SelectionControl.js.map +1 -0
- package/dist/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.d.ts +7 -0
- package/dist/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.d.ts.map +1 -0
- package/dist/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js +46 -0
- package/dist/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js.map +1 -0
- package/dist/components/Textarea/Textarea.d.ts +1 -1
- package/dist/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/components/Textarea/Textarea.js +13 -3
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Textarea/useResizeTextarea.d.ts +1 -1
- package/dist/components/Textarea/useResizeTextarea.d.ts.map +1 -1
- package/dist/components/Textarea/useResizeTextarea.js +2 -2
- package/dist/components/Textarea/useResizeTextarea.js.map +1 -1
- package/dist/components/View/View.d.ts.map +1 -1
- package/dist/components/View/View.js +2 -4
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.d.ts.map +1 -1
- package/dist/components/View/ViewInfinite.js +1 -3
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.js +4 -3
- package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/components.css +2 -2
- package/dist/components.css.map +1 -1
- package/dist/components.js.tmp +1584 -1013
- package/dist/cssm/components/ActionSheet/ActionSheet.js +2 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetContext.d.ts +1 -0
- package/dist/cssm/components/ActionSheet/ActionSheetContext.d.ts.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +38 -13
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/helpers.d.ts +10 -0
- package/dist/cssm/components/ActionSheetItem/helpers.d.ts.map +1 -0
- package/dist/cssm/components/ActionSheetItem/helpers.js +12 -0
- package/dist/cssm/components/ActionSheetItem/helpers.js.map +1 -0
- package/dist/cssm/components/Alert/Alert.js +1 -1
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.d.ts +0 -1
- package/dist/cssm/components/Avatar/Avatar.d.ts.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/Avatar/AvatarBadge/icons.d.ts +8 -3
- package/dist/cssm/components/Avatar/AvatarBadge/icons.d.ts.map +1 -1
- package/dist/cssm/components/Avatar/AvatarBadge/icons.js +2 -2
- package/dist/cssm/components/Avatar/AvatarBadge/icons.js.map +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.d.ts.map +1 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.js +0 -2
- package/dist/cssm/components/BaseGallery/BaseGallery.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/CalendarDays/CalendarDays.js +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.d.ts.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.js +6 -4
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.js +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.d.ts.map +1 -1
- package/dist/cssm/components/Cell/Cell.js +2 -2
- package/dist/cssm/components/Cell/Cell.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.module.css +12 -0
- package/dist/cssm/components/CellButton/CellButton.module.css +2 -2
- package/dist/cssm/components/Checkbox/Checkbox.d.ts +7 -5
- package/dist/cssm/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.js +28 -141
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/Checkbox/CheckboxInput/CheckboxInput.d.ts +8 -0
- package/dist/cssm/components/Checkbox/CheckboxInput/CheckboxInput.d.ts.map +1 -0
- package/dist/cssm/components/Checkbox/CheckboxInput/CheckboxInput.js +113 -0
- package/dist/cssm/components/Checkbox/CheckboxInput/CheckboxInput.js.map +1 -0
- package/dist/cssm/components/Checkbox/CheckboxInput/CheckboxInput.module.css +30 -0
- package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts +3 -0
- package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.d.ts.map +1 -0
- package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.js +30 -0
- package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.js.map +1 -0
- package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +28 -0
- package/dist/cssm/components/ChipsInput/ChipsInput.d.ts.map +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.js +1 -2
- package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/helpers.d.ts.map +1 -1
- package/dist/cssm/components/ChipsInputBase/helpers.js +0 -3
- package/dist/cssm/components/ChipsInputBase/helpers.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/types.d.ts +1 -1
- package/dist/cssm/components/ChipsInputBase/types.d.ts.map +1 -1
- package/dist/cssm/components/ChipsInputBase/types.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +1 -7
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/Clickable/useState.d.ts +0 -5
- package/dist/cssm/components/Clickable/useState.d.ts.map +1 -1
- package/dist/cssm/components/Clickable/useState.js +2 -2
- package/dist/cssm/components/Clickable/useState.js.map +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.d.ts +10 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.d.ts.map +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js +39 -131
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.module.css +52 -13
- package/dist/cssm/components/CustomScrollView/ScrollX.d.ts +3 -0
- package/dist/cssm/components/CustomScrollView/ScrollX.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/ScrollX.js +32 -0
- package/dist/cssm/components/CustomScrollView/ScrollX.js.map +1 -0
- package/dist/cssm/components/CustomScrollView/ScrollY.d.ts +3 -0
- package/dist/cssm/components/CustomScrollView/ScrollY.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/ScrollY.js +32 -0
- package/dist/cssm/components/CustomScrollView/ScrollY.js.map +1 -0
- package/dist/cssm/components/CustomScrollView/types.d.ts +21 -0
- package/dist/cssm/components/CustomScrollView/types.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/types.js +3 -0
- package/dist/cssm/components/CustomScrollView/types.js.map +1 -0
- package/dist/cssm/components/CustomScrollView/useCustomScrollViewResize.d.ts +8 -0
- package/dist/cssm/components/CustomScrollView/useCustomScrollViewResize.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/useCustomScrollViewResize.js +22 -0
- package/dist/cssm/components/CustomScrollView/useCustomScrollViewResize.js.map +1 -0
- package/dist/cssm/components/CustomScrollView/useDetectScrollDirection.d.ts +6 -0
- package/dist/cssm/components/CustomScrollView/useDetectScrollDirection.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/useDetectScrollDirection.js +20 -0
- package/dist/cssm/components/CustomScrollView/useDetectScrollDirection.js.map +1 -0
- package/dist/cssm/components/CustomScrollView/useDragAndDrop.d.ts +5 -0
- package/dist/cssm/components/CustomScrollView/useDragAndDrop.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/useDragAndDrop.js +46 -0
- package/dist/cssm/components/CustomScrollView/useDragAndDrop.js.map +1 -0
- package/dist/cssm/components/CustomScrollView/useHorizontalScrollController.d.ts +4 -0
- package/dist/cssm/components/CustomScrollView/useHorizontalScrollController.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/useHorizontalScrollController.js +91 -0
- package/dist/cssm/components/CustomScrollView/useHorizontalScrollController.js.map +1 -0
- package/dist/cssm/components/CustomScrollView/useTrackerVisibility.d.ts.map +1 -1
- package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js +5 -0
- package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
- package/dist/cssm/components/CustomScrollView/useVerticalScrollController.d.ts +4 -0
- package/dist/cssm/components/CustomScrollView/useVerticalScrollController.d.ts.map +1 -0
- package/dist/cssm/components/CustomScrollView/useVerticalScrollController.js +91 -0
- package/dist/cssm/components/CustomScrollView/useVerticalScrollController.js.map +1 -0
- package/dist/cssm/components/CustomSelect/CustomSelect.d.ts.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js +3 -4
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.js +2 -2
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -3
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.d.ts +2 -2
- package/dist/cssm/components/FixedLayout/FixedLayout.d.ts.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/FlexItem/FlexItem.d.ts +3 -3
- package/dist/cssm/components/Flex/FlexItem/FlexItem.d.ts.map +1 -1
- package/dist/cssm/components/Flex/FlexItem/FlexItem.js.map +1 -1
- package/dist/cssm/components/FocusTrap/FocusTrap.js +1 -1
- package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.module.css +0 -3
- package/dist/cssm/components/GridAvatar/GridAvatar.d.ts +0 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.d.ts.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.d.ts +1 -1
- package/dist/cssm/components/Group/Group.d.ts.map +1 -1
- package/dist/cssm/components/Group/Group.js +17 -12
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Group/Group.module.css +166 -139
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +7 -10
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/Image/Image.d.ts +0 -1
- package/dist/cssm/components/Image/Image.d.ts.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/validators.js +1 -1
- package/dist/cssm/components/ImageBase/validators.js.map +1 -1
- package/dist/cssm/components/List/List.module.css +1 -0
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.d.ts.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +18 -16
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.d.ts.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -28
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts +2 -2
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js +2 -2
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.d.ts.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +1 -3
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.d.ts +5 -1
- package/dist/cssm/components/Radio/Radio.d.ts.map +1 -1
- package/dist/cssm/components/Radio/Radio.js +13 -76
- package/dist/cssm/components/Radio/Radio.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.module.css +0 -145
- package/dist/cssm/components/Radio/RadioInput/RadioInput.d.ts +6 -0
- package/dist/cssm/components/Radio/RadioInput/RadioInput.d.ts.map +1 -0
- package/dist/cssm/components/Radio/RadioInput/RadioInput.js +86 -0
- package/dist/cssm/components/Radio/RadioInput/RadioInput.js.map +1 -0
- package/dist/cssm/components/Radio/RadioInput/RadioInput.module.css +20 -0
- package/dist/cssm/components/Search/Search.module.css +3 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js +1 -2
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cssm/components/SelectionControl/SelectionControl.d.ts +14 -0
- package/dist/cssm/components/SelectionControl/SelectionControl.d.ts.map +1 -0
- package/dist/cssm/components/SelectionControl/SelectionControl.js +28 -0
- package/dist/cssm/components/SelectionControl/SelectionControl.js.map +1 -0
- package/dist/cssm/components/SelectionControl/SelectionControl.module.css +35 -0
- package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.d.ts +7 -0
- package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.d.ts.map +1 -0
- package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js +39 -0
- package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.js.map +1 -0
- package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +48 -0
- package/dist/cssm/components/Textarea/Textarea.d.ts +1 -1
- package/dist/cssm/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.js +11 -2
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.module.css +3 -3
- package/dist/cssm/components/Textarea/useResizeTextarea.d.ts +1 -1
- package/dist/cssm/components/Textarea/useResizeTextarea.d.ts.map +1 -1
- package/dist/cssm/components/Textarea/useResizeTextarea.js +2 -2
- package/dist/cssm/components/Textarea/useResizeTextarea.js.map +1 -1
- package/dist/cssm/components/View/View.d.ts.map +1 -1
- package/dist/cssm/components/View/View.js +2 -4
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/ViewInfinite.d.ts.map +1 -1
- package/dist/cssm/components/View/ViewInfinite.js +1 -3
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js +2 -2
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.module.css +2 -0
- package/dist/cssm/hooks/useCalendar.d.ts.map +1 -1
- package/dist/cssm/hooks/useCalendar.js +1 -1
- package/dist/cssm/hooks/useCalendar.js.map +1 -1
- package/dist/cssm/hooks/useTodayDate.js +2 -2
- package/dist/cssm/hooks/useTodayDate.js.map +1 -1
- package/dist/cssm/index.d.ts +3 -0
- package/dist/cssm/index.d.ts.map +1 -1
- package/dist/cssm/index.js +2 -0
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/calendar.d.ts.map +1 -1
- package/dist/cssm/lib/calendar.js +15 -4
- package/dist/cssm/lib/calendar.js.map +1 -1
- package/dist/cssm/lib/date.d.ts +1 -28
- package/dist/cssm/lib/date.d.ts.map +1 -1
- package/dist/cssm/lib/date.js +8 -105
- package/dist/cssm/lib/date.js.map +1 -1
- package/dist/cssm/styles/themes.css +63 -19
- package/dist/hooks/useCalendar.d.ts.map +1 -1
- package/dist/hooks/useCalendar.js +1 -1
- package/dist/hooks/useCalendar.js.map +1 -1
- package/dist/hooks/useTodayDate.js +2 -2
- package/dist/hooks/useTodayDate.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/calendar.d.ts.map +1 -1
- package/dist/lib/calendar.js +15 -4
- package/dist/lib/calendar.js.map +1 -1
- package/dist/lib/date.d.ts +1 -28
- package/dist/lib/date.d.ts.map +1 -1
- package/dist/lib/date.js +8 -105
- package/dist/lib/date.js.map +1 -1
- package/dist/vkui.css +3 -3
- package/dist/vkui.css.map +1 -1
- package/dist/vkui.js.tmp +1586 -1012
- package/package.json +3 -4
- package/src/components/ActionSheet/ActionSheet.tsx +1 -1
- package/src/components/ActionSheet/ActionSheetContext.ts +1 -0
- package/src/components/ActionSheetItem/ActionSheetItem.tsx +43 -18
- package/src/components/ActionSheetItem/helpers.ts +11 -0
- package/src/components/Alert/Alert.tsx +1 -1
- package/src/components/Avatar/Avatar.tsx +1 -1
- package/src/components/Avatar/AvatarBadge/icons.tsx +9 -8
- package/src/components/BaseGallery/BaseGallery.tsx +0 -4
- package/src/components/Calendar/Calendar.tsx +1 -1
- package/src/components/CalendarDays/CalendarDays.tsx +1 -1
- package/src/components/CalendarHeader/CalendarHeader.tsx +1 -1
- package/src/components/CalendarRange/CalendarRange.tsx +5 -6
- package/src/components/CalendarTime/CalendarTime.tsx +1 -1
- package/src/components/Cell/Cell.module.css +10 -0
- package/src/components/Cell/Cell.tsx +13 -2
- package/src/components/CellButton/CellButton.module.css +2 -2
- package/src/components/Checkbox/Checkbox.tsx +30 -166
- package/src/components/Checkbox/CheckboxInput/CheckboxInput.module.css +30 -0
- package/src/components/Checkbox/CheckboxInput/CheckboxInput.tsx +174 -0
- package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +28 -0
- package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.tsx +49 -0
- package/src/components/ChipsInput/ChipsInput.tsx +3 -8
- package/src/components/ChipsInputBase/ChipsInputBase.tsx +1 -1
- package/src/components/ChipsInputBase/helpers.ts +0 -3
- package/src/components/ChipsInputBase/types.ts +1 -1
- package/src/components/ChipsSelect/ChipsSelect.tsx +1 -9
- package/src/components/Clickable/useState.tsx +2 -2
- package/src/components/CustomScrollView/CustomScrollView.module.css +49 -11
- package/src/components/CustomScrollView/CustomScrollView.tsx +56 -164
- package/src/components/CustomScrollView/ScrollX.tsx +57 -0
- package/src/components/CustomScrollView/ScrollY.tsx +57 -0
- package/src/components/CustomScrollView/types.ts +23 -0
- package/src/components/CustomScrollView/useCustomScrollViewResize.ts +32 -0
- package/src/components/CustomScrollView/useDetectScrollDirection.ts +21 -0
- package/src/components/CustomScrollView/useDragAndDrop.tsx +55 -0
- package/src/components/CustomScrollView/useHorizontalScrollController.tsx +120 -0
- package/src/components/CustomScrollView/useTrackerVisibility.ts +4 -0
- package/src/components/CustomScrollView/useVerticalScrollController.tsx +122 -0
- package/src/components/CustomSelect/CustomSelect.tsx +3 -5
- package/src/components/DateInput/DateInput.tsx +2 -2
- package/src/components/DateRangeInput/DateRangeInput.tsx +5 -4
- package/src/components/FixedLayout/FixedLayout.tsx +4 -4
- package/src/components/Flex/FlexItem/FlexItem.tsx +3 -3
- package/src/components/FocusTrap/FocusTrap.tsx +1 -1
- package/src/components/FormField/FormField.module.css +0 -3
- package/src/components/GridAvatar/GridAvatar.tsx +1 -1
- package/src/components/Group/Group.module.css +155 -132
- package/src/components/Group/Group.tsx +25 -19
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +7 -12
- package/src/components/Image/Image.tsx +1 -1
- package/src/components/ImageBase/validators.ts +1 -1
- package/src/components/List/List.module.css +1 -0
- package/src/components/ModalPageHeader/ModalPageHeader.tsx +24 -22
- package/src/components/ModalRoot/ModalRoot.tsx +4 -32
- package/src/components/OnboardingTooltip/OnboardingTooltipContainer.tsx +4 -3
- package/src/components/PullToRefresh/PullToRefresh.tsx +0 -2
- package/src/components/Radio/Radio.module.css +0 -131
- package/src/components/Radio/Radio.tsx +14 -53
- package/src/components/Radio/RadioInput/RadioInput.module.css +20 -0
- package/src/components/Radio/RadioInput/RadioInput.tsx +58 -0
- package/src/components/Search/Search.module.css +1 -1
- package/src/components/SegmentedControl/SegmentedControl.tsx +0 -1
- package/src/components/SelectionControl/SelectionControl.module.css +33 -0
- package/src/components/SelectionControl/SelectionControl.tsx +44 -0
- package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +44 -0
- package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.tsx +43 -0
- package/src/components/Textarea/Textarea.module.css +3 -3
- package/src/components/Textarea/Textarea.tsx +9 -1
- package/src/components/Textarea/useResizeTextarea.ts +2 -1
- package/src/components/View/View.tsx +0 -2
- package/src/components/View/ViewInfinite.tsx +0 -2
- package/src/components/VisuallyHidden/VisuallyHidden.tsx +2 -0
- package/src/components/WriteBar/WriteBar.module.css +1 -1
- package/src/hooks/useCalendar.ts +1 -9
- package/src/hooks/useTodayDate.ts +2 -2
- package/src/index.ts +3 -0
- package/src/lib/calendar.ts +8 -7
- package/src/lib/date.ts +9 -140
- package/dist/cjs/lib/styles.d.ts +0 -2
- package/dist/cjs/lib/styles.d.ts.map +0 -1
- package/dist/cjs/lib/styles.js +0 -20
- package/dist/cjs/lib/styles.js.map +0 -1
- package/dist/cssm/components/Checkbox/Checkbox.module.css +0 -183
- package/dist/cssm/lib/styles.d.ts +0 -2
- package/dist/cssm/lib/styles.d.ts.map +0 -1
- package/dist/cssm/lib/styles.js +0 -10
- package/dist/cssm/lib/styles.js.map +0 -1
- package/dist/lib/styles.d.ts +0 -2
- package/dist/lib/styles.d.ts.map +0 -1
- package/dist/lib/styles.js +0 -10
- package/dist/lib/styles.js.map +0 -1
- package/src/components/Checkbox/Checkbox.module.css +0 -170
- package/src/lib/styles.ts +0 -12
package/dist/cjs/lib/date.js
CHANGED
|
@@ -9,195 +9,23 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
addDays: function() {
|
|
13
|
-
return addDays;
|
|
14
|
-
},
|
|
15
|
-
addMonths: function() {
|
|
16
|
-
return addMonths;
|
|
17
|
-
},
|
|
18
|
-
addWeeks: function() {
|
|
19
|
-
return addWeeks;
|
|
20
|
-
},
|
|
21
|
-
eachDayOfInterval: function() {
|
|
22
|
-
return eachDayOfInterval;
|
|
23
|
-
},
|
|
24
|
-
endOfDay: function() {
|
|
25
|
-
return endOfDay;
|
|
26
|
-
},
|
|
27
|
-
endOfMonth: function() {
|
|
28
|
-
return endOfMonth;
|
|
29
|
-
},
|
|
30
|
-
endOfWeek: function() {
|
|
31
|
-
return endOfWeek;
|
|
32
|
-
},
|
|
33
12
|
format: function() {
|
|
34
13
|
return format;
|
|
35
14
|
},
|
|
36
|
-
getMillisecondsToTomorrow: function() {
|
|
37
|
-
return getMillisecondsToTomorrow;
|
|
38
|
-
},
|
|
39
|
-
isAfter: function() {
|
|
40
|
-
return isAfter;
|
|
41
|
-
},
|
|
42
|
-
isBefore: function() {
|
|
43
|
-
return isBefore;
|
|
44
|
-
},
|
|
45
|
-
isFirstDayOfMonth: function() {
|
|
46
|
-
return isFirstDayOfMonth;
|
|
47
|
-
},
|
|
48
|
-
isLastDayOfMonth: function() {
|
|
49
|
-
return isLastDayOfMonth;
|
|
50
|
-
},
|
|
51
15
|
isMatch: function() {
|
|
52
16
|
return isMatch;
|
|
53
17
|
},
|
|
54
|
-
isSameDay: function() {
|
|
55
|
-
return isSameDay;
|
|
56
|
-
},
|
|
57
|
-
isSameMonth: function() {
|
|
58
|
-
return isSameMonth;
|
|
59
|
-
},
|
|
60
|
-
isWithinInterval: function() {
|
|
61
|
-
return isWithinInterval;
|
|
62
|
-
},
|
|
63
18
|
parse: function() {
|
|
64
19
|
return parse;
|
|
65
|
-
},
|
|
66
|
-
setHours: function() {
|
|
67
|
-
return setHours;
|
|
68
|
-
},
|
|
69
|
-
setMinutes: function() {
|
|
70
|
-
return setMinutes;
|
|
71
|
-
},
|
|
72
|
-
setMonth: function() {
|
|
73
|
-
return setMonth;
|
|
74
|
-
},
|
|
75
|
-
setYear: function() {
|
|
76
|
-
return setYear;
|
|
77
|
-
},
|
|
78
|
-
startOfDay: function() {
|
|
79
|
-
return startOfDay;
|
|
80
|
-
},
|
|
81
|
-
startOfMonth: function() {
|
|
82
|
-
return startOfMonth;
|
|
83
|
-
},
|
|
84
|
-
startOfWeek: function() {
|
|
85
|
-
return startOfWeek;
|
|
86
|
-
},
|
|
87
|
-
subDays: function() {
|
|
88
|
-
return subDays;
|
|
89
|
-
},
|
|
90
|
-
subMonths: function() {
|
|
91
|
-
return subMonths;
|
|
92
|
-
},
|
|
93
|
-
subWeeks: function() {
|
|
94
|
-
return subWeeks;
|
|
95
20
|
}
|
|
96
21
|
});
|
|
97
|
-
const
|
|
98
|
-
const _dayjs = /*#__PURE__*/ _interop_require_default._(require("dayjs"));
|
|
99
|
-
function startOfDay(date) {
|
|
100
|
-
return (0, _dayjs.default)(date).startOf('day').toDate();
|
|
101
|
-
}
|
|
102
|
-
function endOfDay(date) {
|
|
103
|
-
return (0, _dayjs.default)(date).endOf('day').toDate();
|
|
104
|
-
}
|
|
105
|
-
function startOfWeek(date, weekStart = 0) {
|
|
106
|
-
weekStart = weekStart % 7;
|
|
107
|
-
const day = (0, _dayjs.default)(date);
|
|
108
|
-
const weekDay = day.day();
|
|
109
|
-
const diff = (weekDay < weekStart ? 7 : 0) + weekDay - weekStart;
|
|
110
|
-
return day.date(day.date() - diff).toDate();
|
|
111
|
-
}
|
|
112
|
-
function endOfWeek(date, weekStart = 0) {
|
|
113
|
-
const day = (0, _dayjs.default)(startOfWeek(date, weekStart));
|
|
114
|
-
return day.date(day.date() + 6).toDate();
|
|
115
|
-
}
|
|
116
|
-
function startOfMonth(date) {
|
|
117
|
-
return (0, _dayjs.default)(date).startOf('month').toDate();
|
|
118
|
-
}
|
|
119
|
-
function endOfMonth(date) {
|
|
120
|
-
return (0, _dayjs.default)(date).endOf('month').toDate();
|
|
121
|
-
}
|
|
122
|
-
function isFirstDayOfMonth(date) {
|
|
123
|
-
return (0, _dayjs.default)(date).date() === 1;
|
|
124
|
-
}
|
|
125
|
-
function isLastDayOfMonth(date) {
|
|
126
|
-
// isSameDay -- shorter, but not exact with date-fns behavior
|
|
127
|
-
// return isSameDay(date, dayjs(date).endOf("month"));
|
|
128
|
-
return (0, _dayjs.default)(date).endOf('day').isSame((0, _dayjs.default)(date).endOf('month'));
|
|
129
|
-
}
|
|
130
|
-
function format(date, format) {
|
|
131
|
-
return (0, _dayjs.default)(date).format(format);
|
|
132
|
-
}
|
|
133
|
-
function isBefore(date1, date2) {
|
|
134
|
-
// Exactly as date-fns does
|
|
135
|
-
// dayjs().isBefore() for slightly different approach
|
|
136
|
-
return (0, _dayjs.default)(date1) < (0, _dayjs.default)(date2);
|
|
137
|
-
}
|
|
138
|
-
function isAfter(date1, date2) {
|
|
139
|
-
return (0, _dayjs.default)(date1) > (0, _dayjs.default)(date2);
|
|
140
|
-
}
|
|
141
|
-
function isSameDay(date1, date2) {
|
|
142
|
-
return (0, _dayjs.default)(date1).isSame(date2, 'day');
|
|
143
|
-
}
|
|
144
|
-
function isSameMonth(date1, date2) {
|
|
145
|
-
return (0, _dayjs.default)(date1).isSame(date2, 'month');
|
|
146
|
-
}
|
|
147
|
-
function isWithinInterval(date, start, end) {
|
|
148
|
-
const day = (0, _dayjs.default)(date);
|
|
149
|
-
return day >= (0, _dayjs.default)(start) && day <= (0, _dayjs.default)(end);
|
|
150
|
-
}
|
|
151
|
-
function setMinutes(date, minute) {
|
|
152
|
-
return (0, _dayjs.default)(date).set('minute', minute).toDate();
|
|
153
|
-
}
|
|
154
|
-
function setHours(date, hour) {
|
|
155
|
-
return (0, _dayjs.default)(date).set('hour', hour).toDate();
|
|
156
|
-
}
|
|
157
|
-
function setMonth(date, month) {
|
|
158
|
-
return (0, _dayjs.default)(date).set('month', month).toDate();
|
|
159
|
-
}
|
|
160
|
-
function setYear(date, year) {
|
|
161
|
-
return (0, _dayjs.default)(date).set('year', year).toDate();
|
|
162
|
-
}
|
|
163
|
-
function addDays(date, day) {
|
|
164
|
-
return (0, _dayjs.default)(date).add(day, 'day').toDate();
|
|
165
|
-
}
|
|
166
|
-
function subDays(date, day) {
|
|
167
|
-
return (0, _dayjs.default)(date).subtract(day, 'day').toDate();
|
|
168
|
-
}
|
|
169
|
-
function addWeeks(date, week) {
|
|
170
|
-
return (0, _dayjs.default)(date).add(week, 'week').toDate();
|
|
171
|
-
}
|
|
172
|
-
function subWeeks(date, week) {
|
|
173
|
-
return (0, _dayjs.default)(date).subtract(week, 'week').toDate();
|
|
174
|
-
}
|
|
175
|
-
function addMonths(date, month) {
|
|
176
|
-
return (0, _dayjs.default)(date).add(month, 'month').toDate();
|
|
177
|
-
}
|
|
178
|
-
function subMonths(date, month) {
|
|
179
|
-
return (0, _dayjs.default)(date).subtract(month, 'month').toDate();
|
|
180
|
-
}
|
|
181
|
-
function eachDayOfInterval(start, end) {
|
|
182
|
-
const dates = [];
|
|
183
|
-
const startDate = (0, _dayjs.default)(start).toDate();
|
|
184
|
-
const endDate = (0, _dayjs.default)(end).toDate();
|
|
185
|
-
const endTime = endDate.getTime();
|
|
186
|
-
const currentDate = startDate;
|
|
187
|
-
currentDate.setHours(0, 0, 0, 0);
|
|
188
|
-
while(currentDate.getTime() <= endTime){
|
|
189
|
-
dates.push(new Date(currentDate.getTime()));
|
|
190
|
-
currentDate.setDate(currentDate.getDate() + 1);
|
|
191
|
-
currentDate.setHours(0, 0, 0, 0);
|
|
192
|
-
}
|
|
193
|
-
return dates;
|
|
194
|
-
}
|
|
22
|
+
const _datefns = require("date-fns");
|
|
195
23
|
function parse(input, format, referenceDate = new Date()) {
|
|
196
24
|
const match2 = /^\d\d/; // 00 - 99
|
|
197
25
|
const match4 = /^\d{4}/; // 0000 - 9999
|
|
198
26
|
const entries = [
|
|
199
27
|
[
|
|
200
|
-
'
|
|
28
|
+
'yyyy',
|
|
201
29
|
match4,
|
|
202
30
|
(val)=>[
|
|
203
31
|
'Y',
|
|
@@ -219,7 +47,7 @@ function parse(input, format, referenceDate = new Date()) {
|
|
|
219
47
|
}
|
|
220
48
|
],
|
|
221
49
|
[
|
|
222
|
-
'
|
|
50
|
+
'dd',
|
|
223
51
|
match2,
|
|
224
52
|
(val)=>[
|
|
225
53
|
'D',
|
|
@@ -256,9 +84,9 @@ function parse(input, format, referenceDate = new Date()) {
|
|
|
256
84
|
];
|
|
257
85
|
const superRegExp = new RegExp(entries.map((item)=>item[0]).join('|'), 'g');
|
|
258
86
|
const store = {
|
|
259
|
-
|
|
87
|
+
y: referenceDate.getFullYear(),
|
|
260
88
|
M: referenceDate.getMonth(),
|
|
261
|
-
|
|
89
|
+
d: referenceDate.getDate(),
|
|
262
90
|
h: referenceDate.getHours(),
|
|
263
91
|
m: referenceDate.getMinutes(),
|
|
264
92
|
s: referenceDate.getSeconds(),
|
|
@@ -304,11 +132,11 @@ function parse(input, format, referenceDate = new Date()) {
|
|
|
304
132
|
}
|
|
305
133
|
return date;
|
|
306
134
|
}
|
|
135
|
+
function format(date, format) {
|
|
136
|
+
return (0, _datefns.lightFormat)(date, format);
|
|
137
|
+
}
|
|
307
138
|
function isMatch(input, format) {
|
|
308
139
|
return !isNaN(+parse(input, format));
|
|
309
140
|
}
|
|
310
|
-
function getMillisecondsToTomorrow(date) {
|
|
311
|
-
return (0, _dayjs.default)(endOfDay(date)).diff((0, _dayjs.default)(date), 'ms');
|
|
312
|
-
}
|
|
313
141
|
|
|
314
142
|
//# sourceMappingURL=date.js.map
|
package/dist/cjs/lib/date.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/date.ts"],"sourcesContent":["import dayjs from 'dayjs';\n\n// Using date-fns-like type for migration\ntype DirtyDate = Date | number;\n\nexport function startOfDay(date: DirtyDate): Date {\n return dayjs(date).startOf('day').toDate();\n}\n\nexport function endOfDay(date: DirtyDate): Date {\n return dayjs(date).endOf('day').toDate();\n}\n\nexport function startOfWeek(date: DirtyDate, weekStart = 0): Date {\n weekStart = weekStart % 7;\n\n const day = dayjs(date);\n const weekDay = day.day();\n const diff = (weekDay < weekStart ? 7 : 0) + weekDay - weekStart;\n\n return day.date(day.date() - diff).toDate();\n}\n\nexport function endOfWeek(date: DirtyDate, weekStart = 0): Date {\n const day = dayjs(startOfWeek(date, weekStart));\n\n return day.date(day.date() + 6).toDate();\n}\n\nexport function startOfMonth(date: DirtyDate): Date {\n return dayjs(date).startOf('month').toDate();\n}\n\nexport function endOfMonth(date: DirtyDate): Date {\n return dayjs(date).endOf('month').toDate();\n}\n\nexport function isFirstDayOfMonth(date: DirtyDate): boolean {\n return dayjs(date).date() === 1;\n}\n\nexport function isLastDayOfMonth(date: DirtyDate): boolean {\n // isSameDay -- shorter, but not exact with date-fns behavior\n // return isSameDay(date, dayjs(date).endOf(\"month\"));\n return dayjs(date).endOf('day').isSame(dayjs(date).endOf('month'));\n}\n\nexport function format(date: DirtyDate, format: string): string {\n return dayjs(date).format(format);\n}\n\nexport function isBefore(date1: DirtyDate, date2: DirtyDate): boolean {\n // Exactly as date-fns does\n // dayjs().isBefore() for slightly different approach\n return dayjs(date1) < dayjs(date2);\n}\n\nexport function isAfter(date1: DirtyDate, date2: DirtyDate): boolean {\n return dayjs(date1) > dayjs(date2);\n}\n\nexport function isSameDay(date1: DirtyDate, date2: DirtyDate): boolean {\n return dayjs(date1).isSame(date2, 'day');\n}\n\nexport function isSameMonth(date1: DirtyDate, date2: DirtyDate): boolean {\n return dayjs(date1).isSame(date2, 'month');\n}\n\nexport function isWithinInterval(date: DirtyDate, start: DirtyDate, end: DirtyDate): boolean {\n const day = dayjs(date);\n return day >= dayjs(start) && day <= dayjs(end);\n}\n\nexport function setMinutes(date: DirtyDate, minute: number): Date {\n return dayjs(date).set('minute', minute).toDate();\n}\n\nexport function setHours(date: DirtyDate, hour: number): Date {\n return dayjs(date).set('hour', hour).toDate();\n}\n\nexport function setMonth(date: DirtyDate, month: number): Date {\n return dayjs(date).set('month', month).toDate();\n}\n\nexport function setYear(date: DirtyDate, year: number): Date {\n return dayjs(date).set('year', year).toDate();\n}\n\nexport function addDays(date: DirtyDate, day: number): Date {\n return dayjs(date).add(day, 'day').toDate();\n}\n\nexport function subDays(date: DirtyDate, day: number): Date {\n return dayjs(date).subtract(day, 'day').toDate();\n}\n\nexport function addWeeks(date: DirtyDate, week: number): Date {\n return dayjs(date).add(week, 'week').toDate();\n}\n\nexport function subWeeks(date: DirtyDate, week: number): Date {\n return dayjs(date).subtract(week, 'week').toDate();\n}\n\nexport function addMonths(date: DirtyDate, month: number): Date {\n return dayjs(date).add(month, 'month').toDate();\n}\n\nexport function subMonths(date: DirtyDate, month: number): Date {\n return dayjs(date).subtract(month, 'month').toDate();\n}\n\n// Rip off date-fns\nexport function eachDayOfInterval(start: DirtyDate, end: DirtyDate): Date[] {\n const dates: Date[] = [];\n const startDate = dayjs(start).toDate();\n const endDate = dayjs(end).toDate();\n\n const endTime = endDate.getTime();\n const currentDate = startDate;\n currentDate.setHours(0, 0, 0, 0);\n\n while (currentDate.getTime() <= endTime) {\n dates.push(new Date(currentDate.getTime()));\n currentDate.setDate(currentDate.getDate() + 1);\n currentDate.setHours(0, 0, 0, 0);\n }\n\n return dates;\n}\n\nexport function parse(input: string, format: string, referenceDate: Date = new Date()): Date {\n const match2 = /^\\d\\d/; // 00 - 99\n const match4 = /^\\d{4}/; // 0000 - 9999\n\n const entries: Array<[string, RegExp, (val: string) => [string, number, boolean]]> = [\n ['YYYY', match4, (val) => ['Y', +val, true]],\n [\n 'MM',\n match2,\n (val) => {\n const numVal = +val;\n const okay = numVal > 0 && numVal <= 12;\n\n return ['M', numVal - 1, okay];\n },\n ],\n ['DD', match2, (val) => ['D', +val, true]],\n [\n 'HH',\n match2,\n (val) => {\n const numVal = parseInt(val, 10);\n const okay = numVal >= 0 && numVal < 24;\n\n return ['h', numVal, okay];\n },\n ],\n [\n 'mm',\n match2,\n (val) => {\n const numVal = parseInt(val, 10);\n const okay = numVal >= 0 && numVal < 60;\n\n return ['m', numVal, okay];\n },\n ],\n ];\n\n const superRegExp = new RegExp(entries.map((item) => item[0]).join('|'), 'g');\n\n const store: {\n [key: string]: number;\n } = {\n Y: referenceDate.getFullYear(),\n M: referenceDate.getMonth(),\n D: referenceDate.getDate(),\n h: referenceDate.getHours(),\n m: referenceDate.getMinutes(),\n s: referenceDate.getSeconds(),\n ms: referenceDate.getMilliseconds(),\n };\n\n let prevInputIndex = 0;\n let lastNonFormatting = '';\n let lastFormatIndex = 0;\n let found = false;\n\n while (true) {\n const match = superRegExp.exec(format);\n\n if (!match) {\n break;\n }\n\n const length = match[0].length;\n const atIndex = superRegExp.lastIndex - length;\n\n const item = entries.find((item) => item[0] === match[0])!;\n\n lastNonFormatting = format.slice(lastFormatIndex, atIndex);\n lastFormatIndex = superRegExp.lastIndex;\n\n if (\n input.slice(prevInputIndex, prevInputIndex + lastNonFormatting.length) !== lastNonFormatting\n ) {\n return new Date('');\n }\n\n const value = input.slice(prevInputIndex + lastNonFormatting.length).match(item[1]);\n\n if (!value) {\n return new Date('');\n }\n\n prevInputIndex = prevInputIndex + lastNonFormatting.length + value[0].length;\n\n const [key, newValue, okay] = item[2](value[0]);\n\n if (!okay) {\n return new Date('');\n }\n\n store[key] = newValue;\n found = true;\n }\n\n if (!found) {\n return new Date('');\n }\n\n const date = new Date(store.Y, store.M, store.D, store.h, store.m, store.s, store.ms);\n\n // Since days of months are dynamic, they can't be validated in entries,\n // so we check it here, in the finalized date\n if (date.getMonth() !== store.M || date.getDate() !== store.D) {\n return new Date('');\n }\n\n return date;\n}\n\nexport function isMatch(input: string, format: string): boolean {\n return !isNaN(+parse(input, format));\n}\n\nexport function getMillisecondsToTomorrow(date: DirtyDate): number {\n return dayjs(endOfDay(date)).diff(dayjs(date), 'ms');\n}\n"],"names":["addDays","addMonths","addWeeks","eachDayOfInterval","endOfDay","endOfMonth","endOfWeek","format","getMillisecondsToTomorrow","isAfter","isBefore","isFirstDayOfMonth","isLastDayOfMonth","isMatch","isSameDay","isSameMonth","isWithinInterval","parse","setHours","setMinutes","setMonth","setYear","startOfDay","startOfMonth","startOfWeek","subDays","subMonths","subWeeks","date","dayjs","startOf","toDate","endOf","weekStart","day","weekDay","diff","isSame","date1","date2","start","end","minute","set","hour","month","year","add","subtract","week","dates","startDate","endDate","endTime","getTime","currentDate","push","Date","setDate","getDate","input","referenceDate","match2","match4","entries","val","numVal","okay","parseInt","superRegExp","RegExp","map","item","join","store","Y","getFullYear","M","getMonth","D","h","getHours","m","getMinutes","s","getSeconds","ms","getMilliseconds","prevInputIndex","lastNonFormatting","lastFormatIndex","found","match","exec","length","atIndex","lastIndex","find","slice","value","key","newValue","isNaN"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/date.ts"],"sourcesContent":["import { lightFormat } from 'date-fns';\n\nexport function parse(input: string, format: string, referenceDate: Date = new Date()): Date {\n const match2 = /^\\d\\d/; // 00 - 99\n const match4 = /^\\d{4}/; // 0000 - 9999\n\n const entries: Array<[string, RegExp, (val: string) => [string, number, boolean]]> = [\n ['yyyy', match4, (val) => ['Y', +val, true]],\n [\n 'MM',\n match2,\n (val) => {\n const numVal = +val;\n const okay = numVal > 0 && numVal <= 12;\n\n return ['M', numVal - 1, okay];\n },\n ],\n ['dd', match2, (val) => ['D', +val, true]],\n [\n 'HH',\n match2,\n (val) => {\n const numVal = parseInt(val, 10);\n const okay = numVal >= 0 && numVal < 24;\n\n return ['h', numVal, okay];\n },\n ],\n [\n 'mm',\n match2,\n (val) => {\n const numVal = parseInt(val, 10);\n const okay = numVal >= 0 && numVal < 60;\n\n return ['m', numVal, okay];\n },\n ],\n ];\n\n const superRegExp = new RegExp(entries.map((item) => item[0]).join('|'), 'g');\n\n const store: {\n [key: string]: number;\n } = {\n y: referenceDate.getFullYear(),\n M: referenceDate.getMonth(),\n d: referenceDate.getDate(),\n h: referenceDate.getHours(),\n m: referenceDate.getMinutes(),\n s: referenceDate.getSeconds(),\n ms: referenceDate.getMilliseconds(),\n };\n\n let prevInputIndex = 0;\n let lastNonFormatting = '';\n let lastFormatIndex = 0;\n let found = false;\n\n while (true) {\n const match = superRegExp.exec(format);\n\n if (!match) {\n break;\n }\n\n const length = match[0].length;\n const atIndex = superRegExp.lastIndex - length;\n\n const item = entries.find((item) => item[0] === match[0])!;\n\n lastNonFormatting = format.slice(lastFormatIndex, atIndex);\n lastFormatIndex = superRegExp.lastIndex;\n\n if (\n input.slice(prevInputIndex, prevInputIndex + lastNonFormatting.length) !== lastNonFormatting\n ) {\n return new Date('');\n }\n\n const value = input.slice(prevInputIndex + lastNonFormatting.length).match(item[1]);\n\n if (!value) {\n return new Date('');\n }\n\n prevInputIndex = prevInputIndex + lastNonFormatting.length + value[0].length;\n\n const [key, newValue, okay] = item[2](value[0]);\n\n if (!okay) {\n return new Date('');\n }\n\n store[key] = newValue;\n found = true;\n }\n\n if (!found) {\n return new Date('');\n }\n\n const date = new Date(store.Y, store.M, store.D, store.h, store.m, store.s, store.ms);\n\n // Since days of months are dynamic, they can't be validated in entries,\n // so we check it here, in the finalized date\n if (date.getMonth() !== store.M || date.getDate() !== store.D) {\n return new Date('');\n }\n\n return date;\n}\n\nexport function format(date: Date | number, format: string): string {\n return lightFormat(date, format);\n}\n\nexport function isMatch(input: string, format: string): boolean {\n return !isNaN(+parse(input, format));\n}\n"],"names":["format","isMatch","parse","input","referenceDate","Date","match2","match4","entries","val","numVal","okay","parseInt","superRegExp","RegExp","map","item","join","store","y","getFullYear","M","getMonth","d","getDate","h","getHours","m","getMinutes","s","getSeconds","ms","getMilliseconds","prevInputIndex","lastNonFormatting","lastFormatIndex","found","match","exec","length","atIndex","lastIndex","find","slice","value","key","newValue","date","Y","D","lightFormat","isNaN"],"mappings":"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"}
|
|
@@ -60,7 +60,8 @@ import { ActionSheetDropdownSheet } from './ActionSheetDropdownSheet';
|
|
|
60
60
|
}, []);
|
|
61
61
|
const contextValue = useObjectMemo({
|
|
62
62
|
onItemClick,
|
|
63
|
-
mode
|
|
63
|
+
mode,
|
|
64
|
+
onClose: onCloseWithOther
|
|
64
65
|
});
|
|
65
66
|
const DropdownComponent = mode === 'menu' ? ActionSheetDropdownMenu : ActionSheetDropdownSheet;
|
|
66
67
|
const dropdownProps = mode === 'menu' ? Object.assign(restProps, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ActionSheet/ActionSheet.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useCSSKeyframesAnimationController } from '../../lib/animation';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { PopoutWrapper } from '../PopoutWrapper/PopoutWrapper';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { ActionSheetContext, ItemClickHandler } from './ActionSheetContext';\nimport { ActionSheetDefaultIosCloseItem } from './ActionSheetDefaultIosCloseItem';\nimport { ActionSheetDropdownMenu } from './ActionSheetDropdownMenu';\nimport { ActionSheetDropdownSheet } from './ActionSheetDropdownSheet';\nimport { SharedDropdownProps } from './types';\nimport styles from './ActionSheet.module.css';\n\ntype CloseInitiators = 'action-item' | 'cancel-item' | 'other';\nexport interface ActionSheetOnCloseOptions {\n closedBy: CloseInitiators;\n}\n\nexport interface ActionSheetProps\n extends Pick<SharedDropdownProps, 'toggleRef' | 'popupOffsetDistance' | 'placement'>,\n React.HTMLAttributes<HTMLDivElement> {\n header?: React.ReactNode;\n text?: React.ReactNode;\n /**\n * Закрыть попап по клику снаружи.\n */\n onClose: (options: ActionSheetOnCloseOptions) => void;\n /**\n * Только мобильный iOS.\n */\n iosCloseItem?: React.ReactNode;\n mode?: 'sheet' | 'menu';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheet\n */\nexport const ActionSheet = ({\n children,\n className,\n header,\n text,\n style,\n iosCloseItem,\n popupOffsetDistance,\n placement,\n mode: modeProp,\n onClose,\n ...restProps\n}: ActionSheetProps): React.ReactNode => {\n const platform = usePlatform();\n const [closingBy, setClosingBy] = React.useState<undefined | CloseInitiators>(undefined);\n const onCloseWithOther = () => setClosingBy('other');\n const actionCallbackRef = React.useRef(noop);\n\n const [animationState, animationHandlers] = useCSSKeyframesAnimationController(\n closingBy !== undefined ? 'exit' : 'enter',\n {\n onExited() {\n onClose({ closedBy: closingBy || 'other' });\n actionCallbackRef.current();\n actionCallbackRef.current = noop;\n },\n },\n );\n\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const mode = modeProp ?? (isDesktop ? 'menu' : 'sheet');\n\n useScrollLock(mode === 'sheet');\n\n const onItemClick = React.useCallback<ItemClickHandler>(\n ({ action, immediateAction, autoClose, isCancelItem }) =>\n (event) => {\n event.persist();\n immediateAction && immediateAction(event);\n if (autoClose) {\n if (action) {\n actionCallbackRef.current = () => action(event);\n }\n setClosingBy(isCancelItem ? 'cancel-item' : 'action-item');\n } else {\n action && action(event);\n }\n },\n [],\n );\n const contextValue = useObjectMemo({ onItemClick, mode });\n\n const DropdownComponent = mode === 'menu' ? ActionSheetDropdownMenu : ActionSheetDropdownSheet;\n\n const dropdownProps =\n mode === 'menu' ? Object.assign(restProps, { popupOffsetDistance, placement }) : restProps;\n\n const actionSheet = (\n <ActionSheetContext.Provider value={contextValue}>\n <DropdownComponent\n closing={Boolean(closingBy)}\n role=\"dialog\"\n aria-modal=\"true\"\n autoFocus={animationState === 'entered'}\n {...dropdownProps}\n {...animationHandlers}\n onClose={onCloseWithOther}\n className={mode === 'menu' ? className : undefined}\n style={mode === 'menu' ? style : undefined}\n >\n <div className={styles['ActionSheet__content-wrapper']}>\n {(header || text) && (\n <div className={styles['ActionSheet__header']}>\n {header && (\n <Footnote weight=\"2\" className={styles['ActionSheet__title']}>\n {header}\n </Footnote>\n )}\n {text && <Footnote className={styles['ActionSheet__text']}>{text}</Footnote>}\n </div>\n )}\n {children}\n </div>\n {platform === 'ios' && mode === 'sheet' && (\n <div className={styles['ActionSheet__close-item-wrapper--ios']}>\n {iosCloseItem ?? <ActionSheetDefaultIosCloseItem />}\n </div>\n )}\n </DropdownComponent>\n </ActionSheetContext.Provider>\n );\n\n if (mode === 'menu') {\n return actionSheet;\n }\n\n return (\n <PopoutWrapper\n closing={Boolean(closingBy)}\n alignY=\"bottom\"\n className={className}\n style={style}\n onClick={onCloseWithOther}\n fixed\n >\n {actionSheet}\n </PopoutWrapper>\n );\n};\n"],"names":["React","noop","useAdaptivityWithJSMediaQueries","useObjectMemo","usePlatform","useCSSKeyframesAnimationController","useScrollLock","PopoutWrapper","Footnote","ActionSheetContext","ActionSheetDefaultIosCloseItem","ActionSheetDropdownMenu","ActionSheetDropdownSheet","ActionSheet","children","className","header","text","style","iosCloseItem","popupOffsetDistance","placement","mode","modeProp","onClose","restProps","platform","closingBy","setClosingBy","useState","undefined","onCloseWithOther","actionCallbackRef","useRef","animationState","animationHandlers","onExited","closedBy","current","isDesktop","onItemClick","useCallback","action","immediateAction","autoClose","isCancelItem","event","persist","contextValue","DropdownComponent","dropdownProps","Object","assign","actionSheet","Provider","value","closing","Boolean","role","aria-modal","autoFocus","div","weight","alignY","onClick","fixed"],"mappings":";;;;AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,+BAA+B,QAAQ,8CAA8C;AAC9F,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,WAAW,QAAQ,0BAA0B;AACtD,SAASC,kCAAkC,QAAQ,sBAAsB;AACzE,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,aAAa,QAAQ,iCAAiC;AAC/D,SAASC,QAAQ,QAAQ,kCAAkC;AAC3D,SAASC,kBAAkB,QAA0B,uBAAuB;AAC5E,SAASC,8BAA8B,QAAQ,mCAAmC;AAClF,SAASC,uBAAuB,QAAQ,4BAA4B;AACpE,SAASC,wBAAwB,QAAQ,6BAA6B;AAyBtE;;CAEC,GACD,OAAO,MAAMC,cAAc;QAAC,EAC1BC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACNC,IAAI,EACJC,KAAK,EACLC,YAAY,EACZC,mBAAmB,EACnBC,SAAS,EACTC,MAAMC,QAAQ,EACdC,OAAO,EAEU,WADdC;QAVHX;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAE;;IAGA,MAAME,WAAWtB;IACjB,MAAM,CAACuB,WAAWC,aAAa,GAAG5B,MAAM6B,QAAQ,CAA8BC;IAC9E,MAAMC,mBAAmB,IAAMH,aAAa;IAC5C,MAAMI,oBAAoBhC,MAAMiC,MAAM,CAAChC;IAEvC,MAAM,CAACiC,gBAAgBC,kBAAkB,GAAG9B,mCAC1CsB,cAAcG,YAAY,SAAS,SACnC;QACEM;YACEZ,QAAQ;gBAAEa,UAAUV,aAAa;YAAQ;YACzCK,kBAAkBM,OAAO;YACzBN,kBAAkBM,OAAO,GAAGrC;QAC9B;IACF;IAGF,MAAM,EAAEsC,SAAS,EAAE,GAAGrC;IACtB,MAAMoB,OAAOC,qBAAAA,sBAAAA,WAAagB,YAAY,SAAS;IAE/CjC,cAAcgB,SAAS;IAEvB,MAAMkB,cAAcxC,MAAMyC,WAAW,CACnC,CAAC,EAAEC,MAAM,EAAEC,eAAe,EAAEC,SAAS,EAAEC,YAAY,EAAE,GACnD,CAACC;YACCA,MAAMC,OAAO;YACbJ,mBAAmBA,gBAAgBG;YACnC,IAAIF,WAAW;gBACb,IAAIF,QAAQ;oBACVV,kBAAkBM,OAAO,GAAG,IAAMI,OAAOI;gBAC3C;gBACAlB,aAAaiB,eAAe,gBAAgB;YAC9C,OAAO;gBACLH,UAAUA,OAAOI;YACnB;QACF,GACF,EAAE;IAEJ,MAAME,eAAe7C,cAAc;QAAEqC;QAAalB;
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ActionSheet/ActionSheet.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useCSSKeyframesAnimationController } from '../../lib/animation';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { PopoutWrapper } from '../PopoutWrapper/PopoutWrapper';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { ActionSheetContext, ItemClickHandler } from './ActionSheetContext';\nimport { ActionSheetDefaultIosCloseItem } from './ActionSheetDefaultIosCloseItem';\nimport { ActionSheetDropdownMenu } from './ActionSheetDropdownMenu';\nimport { ActionSheetDropdownSheet } from './ActionSheetDropdownSheet';\nimport { SharedDropdownProps } from './types';\nimport styles from './ActionSheet.module.css';\n\ntype CloseInitiators = 'action-item' | 'cancel-item' | 'other';\nexport interface ActionSheetOnCloseOptions {\n closedBy: CloseInitiators;\n}\n\nexport interface ActionSheetProps\n extends Pick<SharedDropdownProps, 'toggleRef' | 'popupOffsetDistance' | 'placement'>,\n React.HTMLAttributes<HTMLDivElement> {\n header?: React.ReactNode;\n text?: React.ReactNode;\n /**\n * Закрыть попап по клику снаружи.\n */\n onClose: (options: ActionSheetOnCloseOptions) => void;\n /**\n * Только мобильный iOS.\n */\n iosCloseItem?: React.ReactNode;\n mode?: 'sheet' | 'menu';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheet\n */\nexport const ActionSheet = ({\n children,\n className,\n header,\n text,\n style,\n iosCloseItem,\n popupOffsetDistance,\n placement,\n mode: modeProp,\n onClose,\n ...restProps\n}: ActionSheetProps): React.ReactNode => {\n const platform = usePlatform();\n const [closingBy, setClosingBy] = React.useState<undefined | CloseInitiators>(undefined);\n const onCloseWithOther = () => setClosingBy('other');\n const actionCallbackRef = React.useRef(noop);\n\n const [animationState, animationHandlers] = useCSSKeyframesAnimationController(\n closingBy !== undefined ? 'exit' : 'enter',\n {\n onExited() {\n onClose({ closedBy: closingBy || 'other' });\n actionCallbackRef.current();\n actionCallbackRef.current = noop;\n },\n },\n );\n\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const mode = modeProp ?? (isDesktop ? 'menu' : 'sheet');\n\n useScrollLock(mode === 'sheet');\n\n const onItemClick = React.useCallback<ItemClickHandler>(\n ({ action, immediateAction, autoClose, isCancelItem }) =>\n (event) => {\n event.persist();\n immediateAction && immediateAction(event);\n if (autoClose) {\n if (action) {\n actionCallbackRef.current = () => action(event);\n }\n setClosingBy(isCancelItem ? 'cancel-item' : 'action-item');\n } else {\n action && action(event);\n }\n },\n [],\n );\n const contextValue = useObjectMemo({ onItemClick, mode, onClose: onCloseWithOther });\n\n const DropdownComponent = mode === 'menu' ? ActionSheetDropdownMenu : ActionSheetDropdownSheet;\n\n const dropdownProps =\n mode === 'menu' ? Object.assign(restProps, { popupOffsetDistance, placement }) : restProps;\n\n const actionSheet = (\n <ActionSheetContext.Provider value={contextValue}>\n <DropdownComponent\n closing={Boolean(closingBy)}\n role=\"dialog\"\n aria-modal=\"true\"\n autoFocus={animationState === 'entered'}\n {...dropdownProps}\n {...animationHandlers}\n onClose={onCloseWithOther}\n className={mode === 'menu' ? className : undefined}\n style={mode === 'menu' ? style : undefined}\n >\n <div className={styles['ActionSheet__content-wrapper']}>\n {(header || text) && (\n <div className={styles['ActionSheet__header']}>\n {header && (\n <Footnote weight=\"2\" className={styles['ActionSheet__title']}>\n {header}\n </Footnote>\n )}\n {text && <Footnote className={styles['ActionSheet__text']}>{text}</Footnote>}\n </div>\n )}\n {children}\n </div>\n {platform === 'ios' && mode === 'sheet' && (\n <div className={styles['ActionSheet__close-item-wrapper--ios']}>\n {iosCloseItem ?? <ActionSheetDefaultIosCloseItem />}\n </div>\n )}\n </DropdownComponent>\n </ActionSheetContext.Provider>\n );\n\n if (mode === 'menu') {\n return actionSheet;\n }\n\n return (\n <PopoutWrapper\n closing={Boolean(closingBy)}\n alignY=\"bottom\"\n className={className}\n style={style}\n onClick={onCloseWithOther}\n fixed\n >\n {actionSheet}\n </PopoutWrapper>\n );\n};\n"],"names":["React","noop","useAdaptivityWithJSMediaQueries","useObjectMemo","usePlatform","useCSSKeyframesAnimationController","useScrollLock","PopoutWrapper","Footnote","ActionSheetContext","ActionSheetDefaultIosCloseItem","ActionSheetDropdownMenu","ActionSheetDropdownSheet","ActionSheet","children","className","header","text","style","iosCloseItem","popupOffsetDistance","placement","mode","modeProp","onClose","restProps","platform","closingBy","setClosingBy","useState","undefined","onCloseWithOther","actionCallbackRef","useRef","animationState","animationHandlers","onExited","closedBy","current","isDesktop","onItemClick","useCallback","action","immediateAction","autoClose","isCancelItem","event","persist","contextValue","DropdownComponent","dropdownProps","Object","assign","actionSheet","Provider","value","closing","Boolean","role","aria-modal","autoFocus","div","weight","alignY","onClick","fixed"],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ export type ItemClickHandler<T extends Element = Element> = (options: {
|
|
|
8
8
|
}) => (event: React.MouseEvent) => void;
|
|
9
9
|
export type ActionSheetContextType<T extends Element = Element> = {
|
|
10
10
|
onItemClick?: ItemClickHandler<T>;
|
|
11
|
+
onClose?: () => void;
|
|
11
12
|
mode?: 'sheet' | 'menu';
|
|
12
13
|
};
|
|
13
14
|
export declare const ActionSheetContext: React.Context<ActionSheetContextType<any>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionSheetContext.d.ts","sourceRoot":"","sources":["../../../src/components/ActionSheet/ActionSheetContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAEjE,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,EAAE;IACpE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAClC,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAC3C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;AAExC,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI;IAChE,WAAW,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAEzE,CAAC"}
|
|
1
|
+
{"version":3,"file":"ActionSheetContext.d.ts","sourceRoot":"","sources":["../../../src/components/ActionSheet/ActionSheetContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;AAEjE,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,EAAE;IACpE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAClC,eAAe,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAC3C,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;AAExC,MAAM,MAAM,sBAAsB,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,IAAI;IAChE,WAAW,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAEzE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ActionSheet/ActionSheetContext.ts"],"sourcesContent":["import * as React from 'react';\n\nexport type ActionType<T> = (event: React.MouseEvent<T>) => void;\n\nexport type ItemClickHandler<T extends Element = Element> = (options: {\n action: ActionType<T> | undefined;\n immediateAction: ActionType<T> | undefined;\n autoClose: boolean;\n isCancelItem: boolean;\n}) => (event: React.MouseEvent) => void;\n\nexport type ActionSheetContextType<T extends Element = Element> = {\n onItemClick?: ItemClickHandler<T>;\n mode?: 'sheet' | 'menu';\n};\n\nexport const ActionSheetContext: React.Context<ActionSheetContextType<any>> = React.createContext(\n {},\n);\n"],"names":["React","ActionSheetContext","createContext"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ActionSheet/ActionSheetContext.ts"],"sourcesContent":["import * as React from 'react';\n\nexport type ActionType<T> = (event: React.MouseEvent<T>) => void;\n\nexport type ItemClickHandler<T extends Element = Element> = (options: {\n action: ActionType<T> | undefined;\n immediateAction: ActionType<T> | undefined;\n autoClose: boolean;\n isCancelItem: boolean;\n}) => (event: React.MouseEvent) => void;\n\nexport type ActionSheetContextType<T extends Element = Element> = {\n onItemClick?: ItemClickHandler<T>;\n onClose?: () => void;\n mode?: 'sheet' | 'menu';\n};\n\nexport const ActionSheetContext: React.Context<ActionSheetContextType<any>> = React.createContext(\n {},\n);\n"],"names":["React","ActionSheetContext","createContext"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAiB/B,OAAO,MAAMC,qBAAiED,MAAME,aAAa,CAC/F,CAAC,GACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionSheetItem.d.ts","sourceRoot":"","sources":["../../../src/components/ActionSheetItem/ActionSheetItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ActionSheetItem.d.ts","sourceRoot":"","sources":["../../../src/components/ActionSheetItem/ActionSheetItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAc/B,MAAM,WAAW,oBACf,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EACvC,KAAK,CAAC,oBAAoB,CAAC,WAAW,CAAC,EACvC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IACjF,IAAI,CAAC,EAAE,SAAS,GAAG,aAAa,GAAG,QAAQ,CAAC;IAC5C,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC/C,gBAAgB,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACxD;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,+NAqBzB,oBAAoB,KAAG,KAAK,CAAC,SAkH/B,CAAC"}
|
|
@@ -6,11 +6,13 @@ import * as React from 'react';
|
|
|
6
6
|
import { classNames, noop } from '@vkontakte/vkjs';
|
|
7
7
|
import { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';
|
|
8
8
|
import { usePlatform } from '../../hooks/usePlatform';
|
|
9
|
+
import { Keys, pressedKey } from '../../lib/accessibility';
|
|
9
10
|
import { ActionSheetContext } from '../ActionSheet/ActionSheetContext';
|
|
10
11
|
import { Tappable } from '../Tappable/Tappable';
|
|
11
12
|
import { Subhead } from '../Typography/Subhead/Subhead';
|
|
12
13
|
import { Text } from '../Typography/Text/Text';
|
|
13
14
|
import { Title } from '../Typography/Title/Title';
|
|
15
|
+
import { isRealClickEvent } from './helpers';
|
|
14
16
|
import { Radio } from './subcomponents/Radio/Radio';
|
|
15
17
|
/**
|
|
16
18
|
* @see https://vkcom.github.io/VKUI/#/ActionSheetItem
|
|
@@ -37,22 +39,52 @@ import { Radio } from './subcomponents/Radio/Radio';
|
|
|
37
39
|
"isCancelItem"
|
|
38
40
|
]);
|
|
39
41
|
const platform = usePlatform();
|
|
40
|
-
const { onItemClick = ()=>noop, mode: actionSheetMode } = React.useContext(ActionSheetContext);
|
|
42
|
+
const { onItemClick = ()=>noop, mode: actionSheetMode, onClose: onActionSheetClose } = React.useContext(ActionSheetContext);
|
|
41
43
|
const { sizeY } = useAdaptivityWithJSMediaQueries();
|
|
42
44
|
const Component = selectable ? 'label' : undefined;
|
|
43
45
|
const isRich = subtitle || meta || selectable;
|
|
44
46
|
const isCentered = !isRich && !before && platform === 'ios';
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
onClick: selectable ? onClick : onItemClick({
|
|
47
|
+
const onItemClickHandler = React.useCallback((e)=>{
|
|
48
|
+
var _onItemClick;
|
|
49
|
+
(_onItemClick = onItemClick({
|
|
49
50
|
action: onClick,
|
|
50
51
|
immediateAction: onImmediateClick,
|
|
51
52
|
autoClose: !autoCloseDisabled,
|
|
52
53
|
isCancelItem: Boolean(isCancelItem)
|
|
53
|
-
})
|
|
54
|
+
})) === null || _onItemClick === void 0 ? void 0 : _onItemClick(e);
|
|
55
|
+
}, [
|
|
56
|
+
autoCloseDisabled,
|
|
57
|
+
isCancelItem,
|
|
58
|
+
onClick,
|
|
59
|
+
onImmediateClick,
|
|
60
|
+
onItemClick
|
|
61
|
+
]);
|
|
62
|
+
const onKeyDown = React.useCallback((event)=>{
|
|
63
|
+
if (pressedKey(event) === Keys.ENTER) {
|
|
64
|
+
onActionSheetClose === null || onActionSheetClose === void 0 ? void 0 : onActionSheetClose();
|
|
65
|
+
}
|
|
66
|
+
}, [
|
|
67
|
+
onActionSheetClose
|
|
68
|
+
]);
|
|
69
|
+
const onItemClickImpl = React.useCallback((event)=>{
|
|
70
|
+
if (selectable) {
|
|
71
|
+
if (isRealClickEvent(event)) {
|
|
72
|
+
onItemClickHandler(event);
|
|
73
|
+
}
|
|
74
|
+
} else {
|
|
75
|
+
onItemClickHandler(event);
|
|
76
|
+
}
|
|
77
|
+
}, [
|
|
78
|
+
onItemClickHandler,
|
|
79
|
+
selectable
|
|
80
|
+
]);
|
|
81
|
+
return /*#__PURE__*/ _jsxs(Tappable, _object_spread_props(_object_spread({}, Component && {
|
|
82
|
+
Component
|
|
83
|
+
}, restProps), {
|
|
84
|
+
onClick: onItemClickImpl,
|
|
54
85
|
activeMode: platform === 'ios' ? "vkuiActionSheetItem--active" : undefined,
|
|
55
86
|
className: classNames("vkuiActionSheetItem", platform === 'ios' && "vkuiActionSheetItem--ios", mode === 'cancel' && "vkuiActionSheetItem--mode-cancel", mode === 'destructive' && "vkuiActionSheetItem--mode-destructive", sizeY === 'compact' && "vkuiActionSheetItem--sizeY-compact", isRich && "vkuiActionSheetItem--rich", actionSheetMode === 'menu' && "vkuiActionSheetItem--menu", selectable && "vkuiActionSheetItem--selectable", className),
|
|
87
|
+
onKeyDown: onKeyDown,
|
|
56
88
|
children: [
|
|
57
89
|
before && /*#__PURE__*/ _jsx("div", {
|
|
58
90
|
className: "vkuiActionSheetItem__before",
|
|
@@ -93,12 +125,6 @@ import { Radio } from './subcomponents/Radio/Radio';
|
|
|
93
125
|
name: name,
|
|
94
126
|
value: value,
|
|
95
127
|
onChange: onChange,
|
|
96
|
-
onClick: onItemClick({
|
|
97
|
-
action: noop,
|
|
98
|
-
immediateAction: noop,
|
|
99
|
-
autoClose: !autoCloseDisabled,
|
|
100
|
-
isCancelItem: Boolean(isCancelItem)
|
|
101
|
-
}),
|
|
102
128
|
defaultChecked: defaultChecked,
|
|
103
129
|
checked: checked,
|
|
104
130
|
disabled: restProps.disabled,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ActionSheetItem/ActionSheetItem.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { ActionSheetContext, type ActionSheetContextType } from '../ActionSheet/ActionSheetContext';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Text } from '../Typography/Text/Text';\nimport { Title } from '../Typography/Title/Title';\nimport { Radio } from './subcomponents/Radio/Radio';\nimport styles from './ActionSheetItem.module.css';\n\nexport interface ActionSheetItemProps\n extends React.HTMLAttributes<HTMLElement>,\n React.AnchorHTMLAttributes<HTMLElement>,\n Pick<React.InputHTMLAttributes<HTMLInputElement>, 'name' | 'checked' | 'value'> {\n mode?: 'default' | 'destructive' | 'cancel';\n before?: React.ReactNode;\n after?: React.ReactNode;\n meta?: React.ReactNode;\n subtitle?: React.ReactNode;\n /**\n * По умолчанию клик на опцию вызывает переданную в `ActionSheet` функцию `onClose`, данное свойство\n * позволяет отключить такое поведение\n */\n autoCloseDisabled?: boolean;\n selectable?: boolean;\n disabled?: boolean;\n /**\n * Все текстовые элементы при необходимости занимают несколько строк\n */\n multiline?: boolean;\n /**\n * По умолчанию onClick будет вызван после завершения анимации скрытия и после вызова onClose.\n * Из этого следует, что в объекте события значения полей типа `currentTarget` будут не определены.\n * Если вам нужен объект события именно на момент клика, используйте `onImmediateClick`.\n */\n onClick?: React.MouseEventHandler<HTMLElement>;\n onImmediateClick?: React.MouseEventHandler<HTMLElement>;\n /**\n * Иконка для `checked` режима.\n */\n iconChecked?: React.ReactNode;\n /**\n * Позволяет отделить ActionItem от CancelItem для определении того,\n * кто вызвал закрытие ActionSheet. Используется в ActionSheet.onClose()\n */\n isCancelItem?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheetItem\n */\nexport const ActionSheetItem = ({\n children,\n autoCloseDisabled = false,\n mode = 'default',\n meta,\n subtitle,\n before,\n after,\n selectable,\n value,\n name,\n checked,\n defaultChecked,\n onChange,\n onClick,\n onImmediateClick,\n multiline = false,\n iconChecked,\n className,\n isCancelItem,\n ...restProps\n}: ActionSheetItemProps): React.ReactNode => {\n const platform = usePlatform();\n const {
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ActionSheetItem/ActionSheetItem.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Keys, pressedKey } from '../../lib/accessibility';\nimport { ActionSheetContext, type ActionSheetContextType } from '../ActionSheet/ActionSheetContext';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Text } from '../Typography/Text/Text';\nimport { Title } from '../Typography/Title/Title';\nimport { isRealClickEvent } from './helpers';\nimport { Radio } from './subcomponents/Radio/Radio';\nimport styles from './ActionSheetItem.module.css';\n\nexport interface ActionSheetItemProps\n extends React.HTMLAttributes<HTMLElement>,\n React.AnchorHTMLAttributes<HTMLElement>,\n Pick<React.InputHTMLAttributes<HTMLInputElement>, 'name' | 'checked' | 'value'> {\n mode?: 'default' | 'destructive' | 'cancel';\n before?: React.ReactNode;\n after?: React.ReactNode;\n meta?: React.ReactNode;\n subtitle?: React.ReactNode;\n /**\n * По умолчанию клик на опцию вызывает переданную в `ActionSheet` функцию `onClose`, данное свойство\n * позволяет отключить такое поведение\n */\n autoCloseDisabled?: boolean;\n selectable?: boolean;\n disabled?: boolean;\n /**\n * Все текстовые элементы при необходимости занимают несколько строк\n */\n multiline?: boolean;\n /**\n * По умолчанию onClick будет вызван после завершения анимации скрытия и после вызова onClose.\n * Из этого следует, что в объекте события значения полей типа `currentTarget` будут не определены.\n * Если вам нужен объект события именно на момент клика, используйте `onImmediateClick`.\n */\n onClick?: React.MouseEventHandler<HTMLElement>;\n onImmediateClick?: React.MouseEventHandler<HTMLElement>;\n /**\n * Иконка для `checked` режима.\n */\n iconChecked?: React.ReactNode;\n /**\n * Позволяет отделить ActionItem от CancelItem для определении того,\n * кто вызвал закрытие ActionSheet. Используется в ActionSheet.onClose()\n */\n isCancelItem?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheetItem\n */\nexport const ActionSheetItem = ({\n children,\n autoCloseDisabled = false,\n mode = 'default',\n meta,\n subtitle,\n before,\n after,\n selectable,\n value,\n name,\n checked,\n defaultChecked,\n onChange,\n onClick,\n onImmediateClick,\n multiline = false,\n iconChecked,\n className,\n isCancelItem,\n ...restProps\n}: ActionSheetItemProps): React.ReactNode => {\n const platform = usePlatform();\n const {\n onItemClick = () => noop,\n mode: actionSheetMode,\n onClose: onActionSheetClose,\n } = React.useContext<ActionSheetContextType<HTMLElement>>(ActionSheetContext);\n const { sizeY } = useAdaptivityWithJSMediaQueries();\n\n const Component: React.ElementType | undefined = selectable ? 'label' : undefined;\n\n const isRich = subtitle || meta || selectable;\n const isCentered = !isRich && !before && platform === 'ios';\n\n const onItemClickHandler = React.useCallback(\n (e: React.MouseEvent) => {\n onItemClick({\n action: onClick,\n immediateAction: onImmediateClick,\n autoClose: !autoCloseDisabled,\n isCancelItem: Boolean(isCancelItem),\n })?.(e);\n },\n [autoCloseDisabled, isCancelItem, onClick, onImmediateClick, onItemClick],\n );\n\n const onKeyDown: React.KeyboardEventHandler<HTMLElement> = React.useCallback(\n (event) => {\n if (pressedKey(event) === Keys.ENTER) {\n onActionSheetClose?.();\n }\n },\n [onActionSheetClose],\n );\n\n const onItemClickImpl: React.MouseEventHandler<HTMLElement> = React.useCallback(\n (event) => {\n if (selectable) {\n if (isRealClickEvent(event)) {\n onItemClickHandler(event);\n }\n } else {\n onItemClickHandler(event);\n }\n },\n [onItemClickHandler, selectable],\n );\n\n return (\n <Tappable\n {...(Component && { Component })}\n {...restProps}\n onClick={onItemClickImpl}\n activeMode={platform === 'ios' ? styles['ActionSheetItem--active'] : undefined}\n className={classNames(\n styles['ActionSheetItem'],\n platform === 'ios' && styles['ActionSheetItem--ios'],\n mode === 'cancel' && styles['ActionSheetItem--mode-cancel'],\n mode === 'destructive' && styles['ActionSheetItem--mode-destructive'],\n sizeY === 'compact' && styles['ActionSheetItem--sizeY-compact'],\n isRich && styles['ActionSheetItem--rich'],\n actionSheetMode === 'menu' && styles['ActionSheetItem--menu'],\n selectable && styles['ActionSheetItem--selectable'],\n className,\n )}\n onKeyDown={onKeyDown}\n >\n {before && <div className={styles['ActionSheetItem__before']}>{before}</div>}\n <div\n className={classNames(\n styles['ActionSheetItem__container'],\n !multiline && styles['ActionSheetItem--ellipsis'],\n )}\n >\n <div\n className={classNames(\n styles['ActionSheetItem__content'],\n isCentered && styles['ActionSheetItem--centered'],\n )}\n >\n {platform === 'ios' ? (\n <Title\n className={styles['ActionSheetItem__children']}\n weight={mode === 'cancel' ? '2' : '3'}\n level={isCentered ? '2' : '3'}\n >\n {children}\n </Title>\n ) : (\n <Text className={styles['ActionSheetItem__children']}>{children}</Text>\n )}\n {meta && <Text className={styles['ActionSheetItem__meta']}>{meta}</Text>}\n </div>\n {subtitle && <Subhead className={styles['ActionSheetItem__subtitle']}>{subtitle}</Subhead>}\n </div>\n {(selectable || after) && (\n <div className={styles['ActionSheetItem__after']}>\n {after}\n {selectable && (\n <Radio\n name={name}\n value={value}\n onChange={onChange}\n defaultChecked={defaultChecked}\n checked={checked}\n disabled={restProps.disabled}\n >\n {iconChecked}\n </Radio>\n )}\n </div>\n )}\n </Tappable>\n );\n};\n"],"names":["React","classNames","noop","useAdaptivityWithJSMediaQueries","usePlatform","Keys","pressedKey","ActionSheetContext","Tappable","Subhead","Text","Title","isRealClickEvent","Radio","ActionSheetItem","children","autoCloseDisabled","mode","meta","subtitle","before","after","selectable","value","name","checked","defaultChecked","onChange","onClick","onImmediateClick","multiline","iconChecked","className","isCancelItem","restProps","platform","onItemClick","actionSheetMode","onClose","onActionSheetClose","useContext","sizeY","Component","undefined","isRich","isCentered","onItemClickHandler","useCallback","e","action","immediateAction","autoClose","Boolean","onKeyDown","event","ENTER","onItemClickImpl","activeMode","div","weight","level","disabled"],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* По дизайну `ActionSheet` должен закрывать при клике на `ActionSheetItem`.
|
|
3
|
+
* В режиме `selectable` в реализации используются нативный input type=radio
|
|
4
|
+
* И при навигации стрелочками по элементам происходит событие `click` из-за чего `ActionSheet` закрывается.
|
|
5
|
+
* Поэтому нужно как-то отличить реальное событие клика
|
|
6
|
+
* @see https://github.com/facebook/react/issues/7407
|
|
7
|
+
* @see https://github.com/VKCOM/VKUI/issues/6954
|
|
8
|
+
*/
|
|
9
|
+
export declare const isRealClickEvent: (event: React.MouseEvent) => boolean;
|
|
10
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/components/ActionSheetItem/helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,UAAW,KAAK,CAAC,UAAU,YAEvD,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* По дизайну `ActionSheet` должен закрывать при клике на `ActionSheetItem`.
|
|
3
|
+
* В режиме `selectable` в реализации используются нативный input type=radio
|
|
4
|
+
* И при навигации стрелочками по элементам происходит событие `click` из-за чего `ActionSheet` закрывается.
|
|
5
|
+
* Поэтому нужно как-то отличить реальное событие клика
|
|
6
|
+
* @see https://github.com/facebook/react/issues/7407
|
|
7
|
+
* @see https://github.com/VKCOM/VKUI/issues/6954
|
|
8
|
+
*/ export const isRealClickEvent = (event)=>{
|
|
9
|
+
return event.type === 'click' && event.clientX !== 0 && event.clientY !== 0;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ActionSheetItem/helpers.ts"],"sourcesContent":["/**\n * По дизайну `ActionSheet` должен закрывать при клике на `ActionSheetItem`.\n * В режиме `selectable` в реализации используются нативный input type=radio\n * И при навигации стрелочками по элементам происходит событие `click` из-за чего `ActionSheet` закрывается.\n * Поэтому нужно как-то отличить реальное событие клика\n * @see https://github.com/facebook/react/issues/7407\n * @see https://github.com/VKCOM/VKUI/issues/6954\n */\nexport const isRealClickEvent = (event: React.MouseEvent) => {\n return event.type === 'click' && event.clientX !== 0 && event.clientY !== 0;\n};\n"],"names":["isRealClickEvent","event","type","clientX","clientY"],"mappings":"AAAA;;;;;;;CAOC,GACD,OAAO,MAAMA,mBAAmB,CAACC;IAC/B,OAAOA,MAAMC,IAAI,KAAK,WAAWD,MAAME,OAAO,KAAK,KAAKF,MAAMG,OAAO,KAAK;AAC5E,EAAE"}
|
|
@@ -19,7 +19,7 @@ import { AlertHeader, AlertText } from './AlertTypography';
|
|
|
19
19
|
/**
|
|
20
20
|
* @see https://vkcom.github.io/VKUI/#/Alert
|
|
21
21
|
*/ export const Alert = (_param)=>{
|
|
22
|
-
var { actions
|
|
22
|
+
var { actions, actionsLayout = 'horizontal', children, className, style, text, header, onClose, dismissLabel = 'Закрыть предупреждение', renderAction, actionsAlign, dismissButtonMode = 'outside', dismissButtonTestId, getRootRef } = _param, restProps = _object_without_properties(_param, [
|
|
23
23
|
"actions",
|
|
24
24
|
"actionsLayout",
|
|
25
25
|
"children",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon20Cancel } from '@vkontakte/icons';\nimport { classNames, hasReactNode, noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useCSSKeyframesAnimationController } from '../../lib/animation';\nimport { stopPropagation } from '../../lib/utils';\nimport { AlignType, AnchorHTMLAttributesOnly, HasDataAttribute, HasRootRef } from '../../types';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { ButtonProps } from '../Button/Button';\nimport { FocusTrap } from '../FocusTrap/FocusTrap';\nimport { IconButton } from '../IconButton/IconButton';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { PopoutWrapper } from '../PopoutWrapper/PopoutWrapper';\nimport { AlertActionProps } from './AlertAction';\nimport { AlertActions } from './AlertActions';\nimport { AlertHeader, AlertText } from './AlertTypography';\nimport styles from './Alert.module.css';\n\ntype AlertActionMode = 'cancel' | 'destructive' | 'default';\n\nexport interface AlertActionInterface\n extends Pick<ButtonProps, 'Component'>,\n AnchorHTMLAttributesOnly,\n HasDataAttribute {\n title: string;\n /**\n * Обработчик клика на опцию. Если свойство `autoCloseDisabled` включено,\n * то в аргументы `action` передаётся объект с функцией close,\n * вызвав которую можно закрыть `action` вручную.\n */\n action?: (args?: { close?: VoidFunction }) => void;\n /**\n * По умолчанию клик на опцию вызывает переданную в `Alert` функцию `onClose`, данное свойство\n * позволяет отключить такое поведение\n */\n autoCloseDisabled?: boolean;\n mode: AlertActionMode;\n}\n\nexport interface AlertProps extends React.HTMLAttributes<HTMLElement>, HasRootRef<HTMLDivElement> {\n actionsLayout?: 'vertical' | 'horizontal';\n actionsAlign?: AlignType;\n actions?: AlertActionInterface[];\n renderAction?: (props: AlertActionProps) => React.ReactNode;\n header?: React.ReactNode;\n text?: React.ReactNode;\n onClose: VoidFunction;\n /**\n * Текст кнопки закрытия. Делает ее доступной для ассистивных технологий\n */\n dismissLabel?: string;\n /**\n * Расположение кнопки закрытия (внутри и вне `popout'a`)\n * Доступно только в `compact`-режиме, не отображается на `iOS`\n */\n dismissButtonMode?: 'inside' | 'outside';\n /**\n * `data-testid` для кнопки закрытия\n */\n dismissButtonTestId?: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Alert\n */\nexport const Alert = ({\n actions
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Alert/Alert.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon20Cancel } from '@vkontakte/icons';\nimport { classNames, hasReactNode, noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useCSSKeyframesAnimationController } from '../../lib/animation';\nimport { stopPropagation } from '../../lib/utils';\nimport { AlignType, AnchorHTMLAttributesOnly, HasDataAttribute, HasRootRef } from '../../types';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { ButtonProps } from '../Button/Button';\nimport { FocusTrap } from '../FocusTrap/FocusTrap';\nimport { IconButton } from '../IconButton/IconButton';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { PopoutWrapper } from '../PopoutWrapper/PopoutWrapper';\nimport { AlertActionProps } from './AlertAction';\nimport { AlertActions } from './AlertActions';\nimport { AlertHeader, AlertText } from './AlertTypography';\nimport styles from './Alert.module.css';\n\ntype AlertActionMode = 'cancel' | 'destructive' | 'default';\n\nexport interface AlertActionInterface\n extends Pick<ButtonProps, 'Component'>,\n AnchorHTMLAttributesOnly,\n HasDataAttribute {\n title: string;\n /**\n * Обработчик клика на опцию. Если свойство `autoCloseDisabled` включено,\n * то в аргументы `action` передаётся объект с функцией close,\n * вызвав которую можно закрыть `action` вручную.\n */\n action?: (args?: { close?: VoidFunction }) => void;\n /**\n * По умолчанию клик на опцию вызывает переданную в `Alert` функцию `onClose`, данное свойство\n * позволяет отключить такое поведение\n */\n autoCloseDisabled?: boolean;\n mode: AlertActionMode;\n}\n\nexport interface AlertProps extends React.HTMLAttributes<HTMLElement>, HasRootRef<HTMLDivElement> {\n actionsLayout?: 'vertical' | 'horizontal';\n actionsAlign?: AlignType;\n actions?: AlertActionInterface[];\n renderAction?: (props: AlertActionProps) => React.ReactNode;\n header?: React.ReactNode;\n text?: React.ReactNode;\n onClose: VoidFunction;\n /**\n * Текст кнопки закрытия. Делает ее доступной для ассистивных технологий\n */\n dismissLabel?: string;\n /**\n * Расположение кнопки закрытия (внутри и вне `popout'a`)\n * Доступно только в `compact`-режиме, не отображается на `iOS`\n */\n dismissButtonMode?: 'inside' | 'outside';\n /**\n * `data-testid` для кнопки закрытия\n */\n dismissButtonTestId?: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Alert\n */\nexport const Alert = ({\n actions,\n actionsLayout = 'horizontal',\n children,\n className,\n style,\n text,\n header,\n onClose,\n dismissLabel = 'Закрыть предупреждение',\n renderAction,\n actionsAlign,\n dismissButtonMode = 'outside',\n dismissButtonTestId,\n getRootRef,\n ...restProps\n}: AlertProps): React.ReactNode => {\n const generatedId = React.useId();\n\n const headerId = `vkui-alert-${generatedId}-header`;\n const textId = `vkui-alert-${generatedId}-text`;\n\n const platform = usePlatform();\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n const [closing, setClosing] = React.useState(false);\n const itemActionCallbackRef = React.useRef(noop);\n const [animationState, animationHandlers] = useCSSKeyframesAnimationController(\n closing ? 'exit' : 'enter',\n {\n onExited() {\n onClose();\n itemActionCallbackRef.current();\n itemActionCallbackRef.current = noop;\n },\n },\n );\n const isDismissButtonVisible = isDesktop && platform !== 'ios';\n const elementRef = React.useRef<HTMLDivElement>(null);\n\n const close = React.useCallback(() => {\n setClosing(true);\n }, []);\n\n const onItemClick = React.useCallback(\n (item: AlertActionInterface) => {\n const { action: itemAction, autoCloseDisabled = false } = item;\n\n if (autoCloseDisabled) {\n itemAction && itemAction({ close });\n } else {\n if (itemAction) {\n itemActionCallbackRef.current = itemAction;\n }\n setClosing(true);\n }\n },\n [close],\n );\n\n useScrollLock();\n\n return (\n <PopoutWrapper\n className={className}\n closing={closing}\n style={style}\n onClick={close}\n getRootRef={getRootRef}\n >\n <FocusTrap\n {...restProps}\n {...animationHandlers}\n getRootRef={elementRef}\n onClick={stopPropagation}\n onClose={close}\n autoFocus={animationState === 'entered'}\n className={classNames(\n styles['Alert'],\n platform === 'ios' && styles['Alert--ios'],\n platform === 'vkcom' && styles['Alert--vkcom'],\n closing ? styles['Alert--closing'] : styles['Alert--opening'],\n isDesktop && styles['Alert--desktop'],\n )}\n role=\"alertdialog\"\n aria-modal\n aria-labelledby={headerId}\n aria-describedby={textId}\n >\n <div\n className={classNames(\n styles['Alert__content'],\n dismissButtonMode === 'inside' && styles['Alert__content--withButton'],\n )}\n >\n {hasReactNode(header) && <AlertHeader id={headerId}>{header}</AlertHeader>}\n {hasReactNode(text) && <AlertText id={textId}>{text}</AlertText>}\n {children}\n {isDismissButtonVisible && dismissButtonMode === 'inside' && (\n <IconButton\n label={dismissLabel}\n className={classNames(styles['Alert__dismiss'], 'vkuiInternalAlert__dismiss')}\n onClick={close}\n hoverMode=\"opacity\"\n activeMode=\"opacity\"\n data-testid={dismissButtonTestId}\n >\n <Icon20Cancel />\n </IconButton>\n )}\n </div>\n <AlertActions\n actions={actions}\n actionsAlign={actionsAlign}\n actionsLayout={actionsLayout}\n renderAction={renderAction}\n onItemClick={onItemClick}\n />\n {isDismissButtonVisible && dismissButtonMode === 'outside' && (\n <ModalDismissButton onClick={close} data-testid={dismissButtonTestId}>\n {dismissLabel}\n </ModalDismissButton>\n )}\n </FocusTrap>\n </PopoutWrapper>\n );\n};\n"],"names":["React","Icon20Cancel","classNames","hasReactNode","noop","useAdaptivityWithJSMediaQueries","usePlatform","useCSSKeyframesAnimationController","stopPropagation","useScrollLock","FocusTrap","IconButton","ModalDismissButton","PopoutWrapper","AlertActions","AlertHeader","AlertText","Alert","actions","actionsLayout","children","className","style","text","header","onClose","dismissLabel","renderAction","actionsAlign","dismissButtonMode","dismissButtonTestId","getRootRef","restProps","generatedId","useId","headerId","textId","platform","isDesktop","closing","setClosing","useState","itemActionCallbackRef","useRef","animationState","animationHandlers","onExited","current","isDismissButtonVisible","elementRef","close","useCallback","onItemClick","item","action","itemAction","autoCloseDisabled","onClick","autoFocus","role","aria-modal","aria-labelledby","aria-describedby","div","id","label","hoverMode","activeMode","data-testid"],"mappings":"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"}
|