@vkontakte/vkui 4.28.1 → 4.30.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/.cache/.eslintcache +1 -1
- package/.cache/.stylelintcache +1 -1
- package/.cache/.tsbuildinfo +5185 -9812
- package/.cache/ts/src/components/Alert/Alert.d.ts +4 -1
- package/.cache/ts/src/components/AppRoot/ScrollContext.d.ts +6 -14
- package/.cache/ts/src/components/Button/Button.d.ts +1 -2
- package/.cache/ts/src/components/Calendar/Calendar.d.ts +10 -1
- package/.cache/ts/src/components/CalendarHeader/CalendarHeader.d.ts +6 -0
- package/.cache/ts/src/components/Cell/Cell.d.ts +1 -1
- package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +1 -2
- package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +2 -2
- package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +1 -1
- package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/.cache/ts/src/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
- package/.cache/ts/src/components/DateInput/DateInput.d.ts +1 -1
- package/.cache/ts/src/components/FormField/FormField.d.ts +15 -1
- package/.cache/ts/src/components/Gallery/Gallery.d.ts +9 -1
- package/.cache/ts/src/components/GridAvatar/GridAvatar.d.ts +1 -0
- package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
- package/.cache/ts/src/components/Input/Input.d.ts +1 -2
- package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +1 -1
- package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +5 -1
- package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +16 -1
- package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +14 -2
- package/.cache/ts/src/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
- package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
- package/.cache/ts/src/components/ModalRoot/types.d.ts +16 -1
- package/.cache/ts/src/components/ModalRoot/useModalManager.d.ts +6 -5
- package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +1 -2
- package/.cache/ts/src/components/Pagination/Pagination.d.ts +3 -3
- package/.cache/ts/src/components/Select/Select.d.ts +1 -2
- package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +3 -3
- package/.cache/ts/src/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/.cache/ts/src/components/Touch/TouchContext.d.ts +1 -1
- package/.cache/ts/src/components/Typography/Paragraph/Paragraph.d.ts +10 -0
- package/.cache/ts/src/components/Typography/Subhead/Subhead.d.ts +1 -2
- package/.cache/ts/src/components/Typography/Title/Title.d.ts +1 -2
- package/.cache/ts/src/hooks/useBridgeAdaptivity.d.ts +6 -0
- package/.cache/ts/src/hooks/useCalendar.d.ts +4 -3
- package/.cache/ts/src/hooks/useKeyboard.d.ts +1 -1
- package/.cache/ts/src/hooks/usePagination.d.ts +3 -3
- package/.cache/ts/src/index.d.ts +21 -10
- package/.cache/ts/src/lib/date.d.ts +29 -0
- package/.cache/ts/src/lib/getNavId.d.ts +2 -1
- package/.cache/ts/src/lib/warnOnce.d.ts +2 -1
- package/.cache/ts/src/testing/utils.d.ts +1 -0
- package/.cache/ts/src/tokenized/index.d.ts +22 -4
- package/.eslintrc.json +8 -2
- package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -1
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +2 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +7 -6
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +44 -11
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.d.ts +4 -1
- package/dist/cjs/components/Alert/Alert.js +27 -8
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.js +20 -3
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/AppRoot/ScrollContext.d.ts +6 -14
- package/dist/cjs/components/AppRoot/ScrollContext.js +94 -2
- package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.js +4 -1
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.js +5 -4
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/Button/Button.d.ts +1 -2
- package/dist/cjs/components/Button/Button.js +36 -41
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/Calendar/Calendar.d.ts +10 -1
- package/dist/cjs/components/Calendar/Calendar.js +16 -9
- package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
- package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -1
- package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cjs/components/CalendarDays/CalendarDays.js +3 -3
- package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cjs/components/CalendarHeader/CalendarHeader.d.ts +6 -0
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js +15 -15
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cjs/components/CalendarRange/CalendarRange.js +12 -15
- package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cjs/components/CalendarTime/CalendarTime.js +8 -10
- package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.js +3 -2
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/Cell/Cell.d.ts +1 -1
- package/dist/cjs/components/Cell/Cell.js +4 -3
- package/dist/cjs/components/Cell/Cell.js.map +1 -1
- package/dist/cjs/components/CellButton/CellButton.js +1 -0
- package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
- package/dist/cjs/components/Chip/Chip.js +1 -0
- package/dist/cjs/components/Chip/Chip.js.map +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -2
- package/dist/cjs/components/ChipsInput/ChipsInput.js +7 -10
- package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +2 -2
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +8 -12
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/ClickPopper/ClickPopper.d.ts +1 -1
- package/dist/cjs/components/ClickPopper/ClickPopper.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cjs/components/ContentCard/ContentCard.js +4 -3
- package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/dist/cjs/components/CustomSelect/CustomSelect.js +28 -34
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +24 -14
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cjs/components/DateInput/DateInput.d.ts +1 -1
- package/dist/cjs/components/DateInput/DateInput.js +15 -7
- package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.js +6 -6
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js +7 -7
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cjs/components/Epic/Epic.js +1 -1
- package/dist/cjs/components/Epic/Epic.js.map +1 -1
- package/dist/cjs/components/File/File.js +2 -2
- package/dist/cjs/components/File/File.js.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js +2 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cjs/components/FormField/FormField.d.ts +15 -1
- package/dist/cjs/components/FormField/FormField.js +8 -8
- package/dist/cjs/components/FormField/FormField.js.map +1 -1
- package/dist/cjs/components/FormItem/FormItem.js +4 -3
- package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/Gallery/Gallery.d.ts +9 -1
- package/dist/cjs/components/Gallery/Gallery.js +10 -2
- package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
- package/dist/cjs/components/GridAvatar/GridAvatar.d.ts +1 -0
- package/dist/cjs/components/GridAvatar/GridAvatar.js +6 -6
- package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cjs/components/Group/Group.js +2 -1
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/Header/Header.js +10 -7
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js +2 -2
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +34 -24
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/InfoRow/InfoRow.js +2 -2
- package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cjs/components/Input/Input.d.ts +1 -2
- package/dist/cjs/components/Input/Input.js +13 -15
- package/dist/cjs/components/Input/Input.js.map +1 -1
- package/dist/cjs/components/List/List.js +1 -0
- package/dist/cjs/components/List/List.js.map +1 -1
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +1 -0
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.js +1 -0
- package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +5 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js +10 -4
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.d.ts +16 -1
- package/dist/cjs/components/ModalPage/ModalPage.js +5 -1
- package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +1 -0
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.d.ts +14 -2
- package/dist/cjs/components/ModalRoot/ModalRoot.js +14 -11
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js +3 -0
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +10 -7
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/ModalRoot/types.d.ts +16 -1
- package/dist/cjs/components/ModalRoot/types.js.map +1 -1
- package/dist/cjs/components/ModalRoot/useModalManager.d.ts +6 -5
- package/dist/cjs/components/ModalRoot/useModalManager.js +54 -16
- package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +1 -2
- package/dist/cjs/components/NativeSelect/NativeSelect.js +7 -8
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/Pagination/Pagination.d.ts +3 -3
- package/dist/cjs/components/Pagination/Pagination.js +3 -3
- package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
- package/dist/cjs/components/Panel/Panel.js +2 -1
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.js +4 -3
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +5 -4
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +5 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cjs/components/Placeholder/Placeholder.js +4 -3
- package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +1 -0
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cjs/components/Popper/Popper.js +2 -2
- package/dist/cjs/components/Popper/Popper.js.map +1 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -2
- package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js +2 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cjs/components/RichCell/RichCell.js +3 -2
- package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
- package/dist/cjs/components/RichTooltip/RichTooltip.js +2 -1
- package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cjs/components/Root/Root.js +8 -7
- package/dist/cjs/components/Root/Root.js.map +1 -1
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +3 -0
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cjs/components/Search/Search.js +3 -2
- package/dist/cjs/components/Search/Search.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js +19 -13
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cjs/components/Select/Select.d.ts +1 -2
- package/dist/cjs/components/Select/Select.js +9 -11
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +3 -3
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +5 -2
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/Separator/Separator.js +3 -1
- package/dist/cjs/components/Separator/Separator.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +5 -4
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
- package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js +1 -0
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +1 -0
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.js +3 -2
- package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/components/Spacing/Spacing.js +2 -1
- package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.js +2 -1
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/SplitLayout/SplitLayout.js +2 -1
- package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +2 -2
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +4 -3
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cjs/components/Switch/Switch.js +1 -0
- package/dist/cjs/components/Switch/Switch.js.map +1 -1
- package/dist/cjs/components/Tabbar/Tabbar.js +1 -0
- package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/TabsItem/TabsItem.js +3 -2
- package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.js +5 -4
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/TextTooltip/TextTooltip.js +3 -3
- package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js +6 -6
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/Touch/Touch.js +9 -3
- package/dist/cjs/components/Touch/Touch.js.map +1 -1
- package/dist/cjs/components/Touch/TouchContext.d.ts +1 -1
- package/dist/cjs/components/Touch/TouchContext.js +1 -1
- package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
- package/dist/cjs/components/Typography/Paragraph/Paragraph.d.ts +10 -0
- package/dist/cjs/components/Typography/Paragraph/Paragraph.js +42 -0
- package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -0
- package/dist/cjs/components/Typography/Subhead/Subhead.d.ts +1 -2
- package/dist/cjs/components/Typography/Subhead/Subhead.js +4 -6
- package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cjs/components/Typography/Text/Text.js +1 -1
- package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
- package/dist/cjs/components/Typography/Title/Title.d.ts +1 -2
- package/dist/cjs/components/Typography/Title/Title.js +5 -11
- package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
- package/dist/cjs/components/UsersStack/UsersStack.js +3 -2
- package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cjs/components/View/View.js +5 -0
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.js +5 -0
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/components/View/utils.js +5 -2
- package/dist/cjs/components/View/utils.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +3 -2
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cjs/helpers/scheme.js +2 -2
- package/dist/cjs/helpers/scheme.js.map +1 -1
- package/dist/cjs/hooks/useBridgeAdaptivity.d.ts +6 -0
- package/dist/cjs/hooks/useBridgeAdaptivity.js +85 -0
- package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -0
- package/dist/cjs/hooks/useCalendar.d.ts +4 -3
- package/dist/cjs/hooks/useCalendar.js +19 -10
- package/dist/cjs/hooks/useCalendar.js.map +1 -1
- package/dist/cjs/hooks/useKeyboard.d.ts +1 -1
- package/dist/cjs/hooks/useKeyboard.js +1 -1
- package/dist/cjs/hooks/useKeyboard.js.map +1 -1
- package/dist/cjs/hooks/usePagination.d.ts +3 -3
- package/dist/cjs/hooks/usePagination.js +3 -3
- package/dist/cjs/hooks/usePagination.js.map +1 -1
- package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
- package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.js +6 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cjs/index.d.ts +21 -10
- package/dist/cjs/index.js +28 -20
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/calendar.js +12 -23
- package/dist/cjs/lib/calendar.js.map +1 -1
- package/dist/cjs/lib/date.d.ts +29 -0
- package/dist/cjs/lib/date.js +286 -0
- package/dist/cjs/lib/date.js.map +1 -0
- package/dist/cjs/lib/getNavId.d.ts +2 -1
- package/dist/cjs/lib/getNavId.js +1 -1
- package/dist/cjs/lib/getNavId.js.map +1 -1
- package/dist/cjs/lib/platform.js +29 -0
- package/dist/cjs/lib/platform.js.map +1 -1
- package/dist/cjs/lib/warnOnce.d.ts +2 -1
- package/dist/cjs/lib/warnOnce.js +3 -1
- package/dist/cjs/lib/warnOnce.js.map +1 -1
- package/dist/cjs/tokenized/index.d.ts +22 -4
- package/dist/cjs/tokenized/index.js +80 -10
- package/dist/cjs/tokenized/index.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +3 -1
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdown.js +2 -1
- package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +4 -3
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +43 -11
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/Alert/Alert.d.ts +4 -1
- package/dist/components/Alert/Alert.js +22 -5
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.js +19 -3
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AppRoot/ScrollContext.d.ts +6 -14
- package/dist/components/AppRoot/ScrollContext.js +87 -1
- package/dist/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/components/Avatar/Avatar.js +4 -1
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Banner/Banner.js +3 -2
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Button/Button.d.ts +1 -2
- package/dist/components/Button/Button.js +29 -33
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +10 -1
- package/dist/components/Calendar/Calendar.js +14 -7
- package/dist/components/Calendar/Calendar.js.map +1 -1
- package/dist/components/CalendarDay/CalendarDay.js +4 -1
- package/dist/components/CalendarDay/CalendarDay.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.d.ts +6 -0
- package/dist/components/CalendarHeader/CalendarHeader.js +8 -8
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.js +2 -5
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/CalendarTime/CalendarTime.js +3 -3
- package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.js +2 -1
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Cell/Cell.d.ts +1 -1
- package/dist/components/Cell/Cell.js +4 -3
- package/dist/components/Cell/Cell.js.map +1 -1
- package/dist/components/CellButton/CellButton.js +1 -0
- package/dist/components/CellButton/CellButton.js.map +1 -1
- package/dist/components/Chip/Chip.js +1 -0
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/ChipsInput/ChipsInput.d.ts +1 -2
- package/dist/components/ChipsInput/ChipsInput.js +6 -11
- package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.d.ts +2 -2
- package/dist/components/ChipsSelect/ChipsSelect.js +3 -6
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ClickPopper/ClickPopper.d.ts +1 -1
- package/dist/components/ClickPopper/ClickPopper.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ContentCard/ContentCard.js +3 -2
- package/dist/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/dist/components/CustomSelect/CustomSelect.js +24 -28
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
- package/dist/components/CustomSelectOption/CustomSelectOption.js +19 -15
- package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/components/DateInput/DateInput.d.ts +1 -1
- package/dist/components/DateInput/DateInput.js +13 -5
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.js +2 -2
- package/dist/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js +2 -2
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/Epic/Epic.js +1 -1
- package/dist/components/Epic/Epic.js.map +1 -1
- package/dist/components/File/File.js +1 -1
- package/dist/components/File/File.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.js +2 -1
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/FormField/FormField.d.ts +15 -1
- package/dist/components/FormField/FormField.js +8 -8
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormItem/FormItem.js +3 -2
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/Gallery/Gallery.d.ts +9 -1
- package/dist/components/Gallery/Gallery.js +10 -2
- package/dist/components/Gallery/Gallery.js.map +1 -1
- package/dist/components/GridAvatar/GridAvatar.d.ts +1 -0
- package/dist/components/GridAvatar/GridAvatar.js +5 -6
- package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/components/Group/Group.js +2 -1
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/Header/Header.js +7 -4
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.js +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
- package/dist/components/HorizontalScroll/HorizontalScroll.js +32 -21
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/InfoRow/InfoRow.js +1 -1
- package/dist/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/components/Input/Input.d.ts +1 -2
- package/dist/components/Input/Input.js +10 -10
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/List/List.js +1 -0
- package/dist/components/List/List.js.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -0
- package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/components/ModalCard/ModalCard.js +1 -0
- package/dist/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.d.ts +5 -1
- package/dist/components/ModalCardBase/ModalCardBase.js +9 -3
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.d.ts +16 -1
- package/dist/components/ModalPage/ModalPage.js +5 -1
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.js +1 -0
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.d.ts +14 -2
- package/dist/components/ModalRoot/ModalRoot.js +14 -11
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
- package/dist/components/ModalRoot/ModalRootAdaptive.js +2 -0
- package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
- package/dist/components/ModalRoot/ModalRootDesktop.js +10 -7
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/ModalRoot/types.d.ts +16 -1
- package/dist/components/ModalRoot/types.js.map +1 -1
- package/dist/components/ModalRoot/useModalManager.d.ts +6 -5
- package/dist/components/ModalRoot/useModalManager.js +54 -16
- package/dist/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts +1 -2
- package/dist/components/NativeSelect/NativeSelect.js +5 -5
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/Pagination/Pagination.d.ts +3 -3
- package/dist/components/Pagination/Pagination.js +1 -1
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Panel/Panel.js +2 -1
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.js +4 -3
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js +4 -3
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js +4 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/Placeholder/Placeholder.js +3 -2
- package/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.js +1 -0
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popper/Popper.js +2 -2
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/PromoBanner/PromoBanner.js +1 -1
- package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js +2 -1
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/components/RichCell/RichCell.js +2 -1
- package/dist/components/RichCell/RichCell.js.map +1 -1
- package/dist/components/RichTooltip/RichTooltip.js +2 -1
- package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/components/Root/Root.js +8 -7
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js +2 -0
- package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/components/Search/Search.js +2 -1
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js +19 -13
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/components/Select/Select.d.ts +1 -2
- package/dist/components/Select/Select.js +5 -6
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts +3 -3
- package/dist/components/SelectMimicry/SelectMimicry.js +5 -2
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/Separator/Separator.js +3 -1
- package/dist/components/Separator/Separator.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +3 -2
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
- package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/components/SliderSwitch/SliderSwitch.js +1 -0
- package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -0
- package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.js +2 -1
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/Spacing/Spacing.js +2 -1
- package/dist/components/Spacing/Spacing.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.js +2 -1
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.js +2 -1
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js +3 -2
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Switch/Switch.js +1 -0
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.js +1 -0
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/dist/components/TabbarItem/TabbarItem.js +2 -1
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.js +2 -1
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.js +5 -4
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/TextTooltip/TextTooltip.js +1 -1
- package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +4 -4
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Touch/Touch.js +9 -3
- package/dist/components/Touch/Touch.js.map +1 -1
- package/dist/components/Touch/TouchContext.d.ts +1 -1
- package/dist/components/Touch/TouchContext.js +1 -1
- package/dist/components/Touch/TouchContext.js.map +1 -1
- package/dist/components/Typography/Paragraph/Paragraph.d.ts +10 -0
- package/dist/components/Typography/Paragraph/Paragraph.js +25 -0
- package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -0
- package/dist/components/Typography/Subhead/Subhead.d.ts +1 -2
- package/dist/components/Typography/Subhead/Subhead.js +3 -7
- package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/components/Typography/Text/Text.js +1 -1
- package/dist/components/Typography/Text/Text.js.map +1 -1
- package/dist/components/Typography/Title/Title.d.ts +1 -2
- package/dist/components/Typography/Title/Title.js +3 -9
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/UsersStack/UsersStack.js +2 -1
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/View.js +5 -0
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.js +5 -0
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/View/utils.js +5 -2
- package/dist/components/View/utils.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js +3 -2
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components.css +21 -6
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js +3 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +2 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +4 -3
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +43 -11
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.css +1 -1
- package/dist/cssm/components/Alert/Alert.d.ts +4 -1
- package/dist/cssm/components/Alert/Alert.js +22 -5
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js +19 -3
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AppRoot/ScrollContext.d.ts +6 -14
- package/dist/cssm/components/AppRoot/ScrollContext.js +87 -1
- package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.js +4 -1
- package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.js +3 -2
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/Button/Button.css +1 -1
- package/dist/cssm/components/Button/Button.d.ts +1 -2
- package/dist/cssm/components/Button/Button.js +29 -33
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.d.ts +10 -1
- package/dist/cssm/components/Calendar/Calendar.js +14 -7
- package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.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.d.ts +6 -0
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +8 -8
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.js +2 -5
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.js +3 -3
- package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cssm/components/Card/Card.css +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js +2 -1
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.d.ts +1 -1
- package/dist/cssm/components/Cell/Cell.js +4 -3
- package/dist/cssm/components/Cell/Cell.js.map +1 -1
- package/dist/cssm/components/CellButton/CellButton.js +1 -0
- package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
- package/dist/cssm/components/Chip/Chip.js +1 -0
- package/dist/cssm/components/Chip/Chip.js.map +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +1 -2
- package/dist/cssm/components/ChipsInput/ChipsInput.js +6 -11
- package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +2 -2
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +3 -6
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ClickPopper/ClickPopper.d.ts +1 -1
- package/dist/cssm/components/ClickPopper/ClickPopper.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.js +3 -2
- package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +2 -2
- package/dist/cssm/components/CustomSelect/CustomSelect.js +24 -28
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +3 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.css +3 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +19 -15
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.css +1 -1
- package/dist/cssm/components/DateInput/DateInput.d.ts +1 -1
- package/dist/cssm/components/DateInput/DateInput.js +13 -5
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DatePicker/DatePicker.js +2 -2
- package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +2 -2
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/Epic/Epic.js +1 -1
- package/dist/cssm/components/Epic/Epic.js.map +1 -1
- package/dist/cssm/components/File/File.js +1 -1
- package/dist/cssm/components/File/File.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.css +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js +2 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.css +5 -1
- package/dist/cssm/components/FormField/FormField.d.ts +15 -1
- package/dist/cssm/components/FormField/FormField.js +8 -8
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.js +3 -2
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.css +1 -1
- package/dist/cssm/components/Gallery/Gallery.d.ts +9 -1
- package/dist/cssm/components/Gallery/Gallery.js +10 -2
- package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
- package/dist/cssm/components/Gradient/Gradient.css +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.d.ts +1 -0
- package/dist/cssm/components/GridAvatar/GridAvatar.js +5 -6
- package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cssm/components/Group/Group.js +2 -1
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Header/Header.js +7 -4
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +32 -21
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cssm/components/Input/Input.css +1 -1
- package/dist/cssm/components/Input/Input.d.ts +1 -2
- package/dist/cssm/components/Input/Input.js +10 -10
- package/dist/cssm/components/Input/Input.js.map +1 -1
- package/dist/cssm/components/InputLike/InputLike.css +1 -1
- package/dist/cssm/components/InputLike/InputLikeDivider.css +1 -1
- package/dist/cssm/components/List/List.js +1 -0
- package/dist/cssm/components/List/List.js.map +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -0
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.css +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.js +1 -0
- package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.css +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.d.ts +5 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js +9 -3
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.d.ts +16 -1
- package/dist/cssm/components/ModalPage/ModalPage.js +5 -1
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +1 -0
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.css +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.d.ts +14 -2
- package/dist/cssm/components/ModalRoot/ModalRoot.js +14 -11
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +2 -0
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +10 -7
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/ModalRoot/types.d.ts +16 -1
- package/dist/cssm/components/ModalRoot/types.js.map +1 -1
- package/dist/cssm/components/ModalRoot/useModalManager.d.ts +6 -5
- package/dist/cssm/components/ModalRoot/useModalManager.js +54 -16
- package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +1 -2
- package/dist/cssm/components/NativeSelect/NativeSelect.js +5 -5
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.css +1 -1
- package/dist/cssm/components/Pagination/Pagination.d.ts +3 -3
- package/dist/cssm/components/Pagination/Pagination.js +1 -1
- package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.js +2 -1
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js +4 -3
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +4 -3
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +4 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.js +3 -2
- package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +1 -0
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.js +2 -2
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +2 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.css +1 -1
- package/dist/cssm/components/RichCell/RichCell.js +2 -1
- package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.js +2 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cssm/components/Root/Root.css +1 -1
- package/dist/cssm/components/Root/Root.js +8 -7
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +2 -0
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cssm/components/Search/Search.css +1 -1
- package/dist/cssm/components/Search/Search.js +2 -1
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js +19 -13
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cssm/components/Select/Select.css +1 -1
- package/dist/cssm/components/Select/Select.d.ts +1 -2
- package/dist/cssm/components/Select/Select.js +5 -6
- package/dist/cssm/components/Select/Select.js.map +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +3 -3
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +5 -2
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/Separator/Separator.js +3 -1
- package/dist/cssm/components/Separator/Separator.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +3 -2
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -0
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -0
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.css +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.js +2 -1
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Spacing/Spacing.js +2 -1
- package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js +2 -1
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js +2 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +3 -2
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/Switch/Switch.js +1 -0
- package/dist/cssm/components/Switch/Switch.js.map +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.js +1 -0
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.d.ts +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.css +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.js +2 -1
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.css +1 -1
- package/dist/cssm/components/Tappable/Tappable.js +5 -4
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.css +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.js +4 -4
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/Touch/Touch.js +9 -3
- package/dist/cssm/components/Touch/Touch.js.map +1 -1
- package/dist/cssm/components/Touch/TouchContext.d.ts +1 -1
- package/dist/cssm/components/Touch/TouchContext.js +1 -1
- package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -0
- package/dist/cssm/components/Typography/Paragraph/Paragraph.d.ts +10 -0
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js +26 -0
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -0
- package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.d.ts +1 -2
- package/dist/cssm/components/Typography/Subhead/Subhead.js +3 -7
- package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cssm/components/Typography/Text/Text.css +1 -1
- package/dist/cssm/components/Typography/Text/Text.js +1 -1
- package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
- package/dist/cssm/components/Typography/Title/Title.css +1 -1
- package/dist/cssm/components/Typography/Title/Title.d.ts +1 -2
- package/dist/cssm/components/Typography/Title/Title.js +3 -9
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.js +2 -1
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/View/View.css +1 -1
- package/dist/cssm/components/View/View.js +5 -0
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/ViewIOS.css +1 -1
- package/dist/cssm/components/View/ViewInfinite.js +5 -0
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/View/utils.js +5 -2
- package/dist/cssm/components/View/utils.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.css +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +3 -2
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/helpers/scheme.js +2 -2
- package/dist/cssm/helpers/scheme.js.map +1 -1
- package/dist/cssm/hooks/useBridgeAdaptivity.d.ts +6 -0
- package/dist/cssm/hooks/useBridgeAdaptivity.js +68 -0
- package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -0
- package/dist/cssm/hooks/useCalendar.d.ts +4 -3
- package/dist/cssm/hooks/useCalendar.js +16 -7
- package/dist/cssm/hooks/useCalendar.js.map +1 -1
- package/dist/cssm/hooks/useKeyboard.d.ts +1 -1
- package/dist/cssm/hooks/useKeyboard.js +1 -1
- package/dist/cssm/hooks/useKeyboard.js.map +1 -1
- package/dist/cssm/hooks/usePagination.d.ts +3 -3
- package/dist/cssm/hooks/usePagination.js +3 -3
- package/dist/cssm/hooks/usePagination.js.map +1 -1
- package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
- package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.js +5 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cssm/index.d.ts +21 -10
- package/dist/cssm/index.js +12 -14
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/calendar.js +4 -15
- package/dist/cssm/lib/calendar.js.map +1 -1
- package/dist/cssm/lib/date.d.ts +29 -0
- package/dist/cssm/lib/date.js +223 -0
- package/dist/cssm/lib/date.js.map +1 -0
- package/dist/cssm/lib/getNavId.d.ts +2 -1
- package/dist/cssm/lib/getNavId.js +1 -1
- package/dist/cssm/lib/getNavId.js.map +1 -1
- package/dist/cssm/lib/platform.js +26 -0
- package/dist/cssm/lib/platform.js.map +1 -1
- package/dist/cssm/lib/warnOnce.d.ts +2 -1
- package/dist/cssm/lib/warnOnce.js +3 -1
- package/dist/cssm/lib/warnOnce.js.map +1 -1
- package/dist/cssm/styles/bright_light.css +1 -1
- package/dist/cssm/styles/common.css +1 -1
- package/dist/cssm/styles/components.css +21 -6
- package/dist/cssm/styles/constants.css +9 -2
- package/dist/cssm/styles/space_gray.css +1 -1
- package/dist/cssm/styles/themes.css +3 -3
- package/dist/cssm/styles/unstable.css +1 -1
- package/dist/cssm/styles/vkcom_dark.css +2 -2
- package/dist/cssm/styles/vkcom_light.css +1 -1
- package/dist/cssm/tokenized/index.d.ts +22 -4
- package/dist/cssm/tokenized/index.js +13 -4
- package/dist/cssm/tokenized/index.js.map +1 -1
- package/dist/default_scheme.css +1 -1
- package/dist/default_scheme.css.map +1 -1
- package/dist/helpers/scheme.js +2 -2
- package/dist/helpers/scheme.js.map +1 -1
- package/dist/hooks/useBridgeAdaptivity.d.ts +6 -0
- package/dist/hooks/useBridgeAdaptivity.js +68 -0
- package/dist/hooks/useBridgeAdaptivity.js.map +1 -0
- package/dist/hooks/useCalendar.d.ts +4 -3
- package/dist/hooks/useCalendar.js +16 -7
- package/dist/hooks/useCalendar.js.map +1 -1
- package/dist/hooks/useKeyboard.d.ts +1 -1
- package/dist/hooks/useKeyboard.js +1 -1
- package/dist/hooks/useKeyboard.js.map +1 -1
- package/dist/hooks/usePagination.d.ts +3 -3
- package/dist/hooks/usePagination.js +3 -3
- package/dist/hooks/usePagination.js.map +1 -1
- package/dist/hooks/usePatchChildrenRef.js +1 -1
- package/dist/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/hooks/useWaitTransitionFinish.js +5 -1
- package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/index.d.ts +21 -10
- package/dist/index.js +12 -14
- package/dist/index.js.map +1 -1
- package/dist/lib/calendar.js +4 -15
- package/dist/lib/calendar.js.map +1 -1
- package/dist/lib/date.d.ts +29 -0
- package/dist/lib/date.js +223 -0
- package/dist/lib/date.js.map +1 -0
- package/dist/lib/getNavId.d.ts +2 -1
- package/dist/lib/getNavId.js +1 -1
- package/dist/lib/getNavId.js.map +1 -1
- package/dist/lib/platform.js +26 -0
- package/dist/lib/platform.js.map +1 -1
- package/dist/lib/warnOnce.d.ts +2 -1
- package/dist/lib/warnOnce.js +3 -1
- package/dist/lib/warnOnce.js.map +1 -1
- package/dist/tokenized/index.d.ts +22 -4
- package/dist/tokenized/index.js +13 -4
- package/dist/tokenized/index.js.map +1 -1
- package/dist/unstable.css +1 -1
- package/dist/unstable.css.map +1 -1
- package/dist/vkui.css +24 -9
- package/dist/vkui.css.map +1 -1
- package/eslint-plugin-vkui/index.js +64 -0
- package/eslint-plugin-vkui/package.json +5 -0
- package/jest.unit.config.js +4 -1
- package/package.json +5 -4
- package/postcss-plugin-vk-sans/__tests__/custom_properties.css +4 -0
- package/postcss-plugin-vk-sans/index.js +350 -0
- package/src/components/ActionSheet/ActionSheet.tsx +7 -1
- package/src/components/ActionSheet/ActionSheetDropdown.tsx +1 -0
- package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +1 -1
- package/src/components/ActionSheet/Readme.md +1 -0
- package/src/components/ActionSheetItem/ActionSheetItem.tsx +3 -2
- package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +50 -19
- package/src/components/Alert/Alert.tsx +28 -8
- package/src/components/AppRoot/AppRoot.tsx +18 -2
- package/src/components/AppRoot/ScrollContext.ts +90 -2
- package/src/components/Avatar/Avatar.tsx +3 -0
- package/src/components/Banner/Banner.tsx +3 -2
- package/src/components/Button/Button.css +9 -7
- package/src/components/Button/Button.tsx +25 -36
- package/src/components/Calendar/Calendar.tsx +30 -6
- package/src/components/Calendar/Readme.md +2 -2
- package/src/components/CalendarDay/CalendarDay.tsx +3 -0
- package/src/components/CalendarDays/CalendarDays.tsx +1 -1
- package/src/components/CalendarHeader/CalendarHeader.tsx +17 -10
- package/src/components/CalendarRange/CalendarRange.tsx +2 -5
- package/src/components/CalendarRange/Readme.md +2 -2
- package/src/components/CalendarTime/CalendarTime.tsx +3 -3
- package/src/components/Card/Card.css +2 -1
- package/src/components/CardScroll/CardScroll.tsx +3 -1
- package/src/components/Cell/Cell.tsx +4 -3
- package/src/components/CellButton/CellButton.tsx +1 -0
- package/src/components/Chip/Chip.tsx +1 -0
- package/src/components/ChipsInput/ChipsInput.css +4 -4
- package/src/components/ChipsInput/ChipsInput.tsx +9 -8
- package/src/components/ChipsSelect/ChipsSelect.css +1 -1
- package/src/components/ChipsSelect/ChipsSelect.tsx +9 -7
- package/src/components/ClickPopper/ClickPopper.tsx +1 -1
- package/src/components/ConfigProvider/ConfigProvider.tsx +1 -1
- package/src/components/ContentCard/ContentCard.tsx +2 -1
- package/src/components/CustomSelect/CustomSelect.css +1 -1
- package/src/components/CustomSelect/CustomSelect.tsx +28 -22
- package/src/components/CustomSelectDropdown/CustomSelectDropdown.css +10 -5
- package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +6 -5
- package/src/components/CustomSelectOption/CustomSelectOption.css +17 -5
- package/src/components/CustomSelectOption/CustomSelectOption.tsx +55 -17
- package/src/components/CustomSelectOption/Readme.md +47 -28
- package/src/components/DateInput/DateInput.css +1 -1
- package/src/components/DateInput/DateInput.tsx +15 -3
- package/src/components/DateInput/Readme.md +1 -1
- package/src/components/DatePicker/DatePicker.tsx +2 -2
- package/src/components/DateRangeInput/DateRangeInput.tsx +3 -3
- package/src/components/DateRangeInput/Readme.md +1 -1
- package/src/components/Epic/Epic.tsx +3 -1
- package/src/components/Epic/Readme.md +5 -1
- package/src/components/File/File.tsx +1 -1
- package/src/components/FixedLayout/FixedLayout.css +2 -0
- package/src/components/FixedLayout/FixedLayout.tsx +1 -0
- package/src/components/FormField/FormField.css +30 -45
- package/src/components/FormField/FormField.tsx +26 -7
- package/src/components/FormField/Readme.md +85 -19
- package/src/components/FormItem/FormItem.tsx +2 -1
- package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +1 -0
- package/src/components/Gallery/Gallery.tsx +14 -2
- package/src/components/Gradient/Gradient.css +4 -2
- package/src/components/GridAvatar/GridAvatar.css +10 -13
- package/src/components/GridAvatar/GridAvatar.tsx +12 -24
- package/src/components/Group/Group.tsx +1 -0
- package/src/components/Header/Header.tsx +9 -3
- package/src/components/HorizontalCell/HorizontalCell.tsx +1 -1
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +50 -42
- package/src/components/InfoRow/InfoRow.tsx +1 -1
- package/src/components/Input/Input.css +4 -4
- package/src/components/Input/Input.tsx +7 -9
- package/src/components/InputLike/InputLike.css +1 -1
- package/src/components/InputLike/InputLikeDivider.css +1 -1
- package/src/components/List/List.tsx +1 -0
- package/src/components/MiniInfoCell/MiniInfoCell.tsx +1 -0
- package/src/components/ModalCard/ModalCard.css +1 -11
- package/src/components/ModalCard/ModalCard.tsx +1 -0
- package/src/components/ModalCardBase/ModalCardBase.css +10 -0
- package/src/components/ModalCardBase/ModalCardBase.tsx +15 -2
- package/src/components/ModalPage/ModalPage.tsx +19 -0
- package/src/components/ModalPageHeader/ModalPageHeader.tsx +1 -0
- package/src/components/ModalRoot/ModalRoot.css +3 -2
- package/src/components/ModalRoot/ModalRoot.tsx +37 -10
- package/src/components/ModalRoot/ModalRootAdaptive.tsx +20 -2
- package/src/components/ModalRoot/ModalRootDesktop.tsx +25 -7
- package/src/components/ModalRoot/Readme.md +112 -0
- package/src/components/ModalRoot/types.ts +16 -1
- package/src/components/ModalRoot/useModalManager.tsx +63 -15
- package/src/components/NativeSelect/NativeSelect.tsx +3 -3
- package/src/components/Pagination/Pagination.tsx +4 -4
- package/src/components/Pagination/Readme.md +1 -1
- package/src/components/Panel/Panel.tsx +1 -0
- package/src/components/PanelHeader/PanelHeader.css +13 -13
- package/src/components/PanelHeader/PanelHeader.tsx +4 -3
- package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +1 -0
- package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +4 -2
- package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +4 -0
- package/src/components/Placeholder/Placeholder.tsx +2 -1
- package/src/components/PopoutWrapper/PopoutWrapper.tsx +1 -0
- package/src/components/Popper/Popper.tsx +2 -2
- package/src/components/PromoBanner/PromoBanner.tsx +1 -1
- package/src/components/PullToRefresh/PullToRefresh.tsx +1 -0
- package/src/components/PullToRefresh/PullToRefreshSpinner.tsx +1 -0
- package/src/components/RichCell/RichCell.tsx +2 -1
- package/src/components/RichTooltip/Readme.md +2 -2
- package/src/components/RichTooltip/RichTooltip.tsx +1 -0
- package/src/components/Root/Root.css +4 -11
- package/src/components/Root/Root.tsx +7 -6
- package/src/components/ScreenSpinner/ScreenSpinner.tsx +3 -0
- package/src/components/Search/Search.tsx +2 -1
- package/src/components/SegmentedControl/SegmentedControl.tsx +20 -10
- package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
- package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.tsx +1 -0
- package/src/components/Select/Select.css +2 -2
- package/src/components/Select/Select.tsx +4 -5
- package/src/components/SelectMimicry/SelectMimicry.tsx +6 -3
- package/src/components/Separator/Separator.tsx +2 -0
- package/src/components/SimpleCell/SimpleCell.tsx +3 -2
- package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +7 -2
- package/src/components/SliderSwitch/SliderSwitch.tsx +1 -0
- package/src/components/SliderSwitch/SliderSwitchButton.tsx +1 -0
- package/src/components/Snackbar/Snackbar.css +6 -3
- package/src/components/Snackbar/Snackbar.tsx +2 -1
- package/src/components/Spacing/Spacing.tsx +1 -0
- package/src/components/SplitCol/SplitCol.tsx +1 -0
- package/src/components/SplitLayout/SplitLayout.css +3 -1
- package/src/components/SplitLayout/SplitLayout.tsx +1 -0
- package/src/components/SubnavigationBar/SubnavigationBar.tsx +2 -1
- package/src/components/SubnavigationButton/SubnavigationButton.tsx +2 -1
- package/src/components/Switch/Readme.md +12 -36
- package/src/components/Switch/Switch.tsx +1 -0
- package/src/components/Tabbar/Tabbar.tsx +1 -0
- package/src/components/TabbarItem/TabbarItem.css +1 -0
- package/src/components/TabbarItem/TabbarItem.tsx +2 -1
- package/src/components/Tabs/Readme.md +7 -7
- package/src/components/TabsItem/TabsItem.tsx +2 -1
- package/src/components/Tappable/Tappable.css +5 -0
- package/src/components/Tappable/Tappable.tsx +5 -2
- package/src/components/TextTooltip/TextTooltip.tsx +1 -1
- package/src/components/Tooltip/Tooltip.tsx +7 -6
- package/src/components/Touch/Touch.tsx +6 -3
- package/src/components/Touch/TouchContext.ts +1 -1
- package/src/components/Typography/Caption/Caption.css +3 -3
- package/src/components/Typography/Paragraph/Paragraph.css +17 -0
- package/src/components/Typography/Paragraph/Paragraph.tsx +42 -0
- package/src/components/Typography/Paragraph/Readme.md +19 -0
- package/src/components/Typography/Subhead/Subhead.tsx +3 -7
- package/src/components/Typography/Text/Text.tsx +4 -1
- package/src/components/Typography/Title/Title.tsx +7 -10
- package/src/components/UsersStack/UsersStack.tsx +2 -1
- package/src/components/View/Readme.md +1 -1
- package/src/components/View/View.css +1 -1
- package/src/components/View/View.tsx +4 -0
- package/src/components/View/ViewIOS.css +2 -2
- package/src/components/View/ViewInfinite.tsx +4 -0
- package/src/components/View/utils.ts +2 -1
- package/src/components/WriteBarIcon/WriteBarIcon.tsx +3 -1
- package/src/helpers/scheme.ts +3 -2
- package/src/hooks/useBridgeAdaptivity.ts +83 -0
- package/src/hooks/useCalendar.ts +26 -10
- package/src/hooks/useKeyboard.ts +1 -1
- package/src/hooks/usePagination.ts +5 -5
- package/src/hooks/usePatchChildrenRef.ts +2 -2
- package/src/hooks/useWaitTransitionFinish.ts +7 -1
- package/src/index.ts +21 -10
- package/src/lib/calendar.ts +7 -7
- package/src/lib/date.ts +274 -0
- package/src/lib/getNavId.ts +4 -2
- package/src/lib/platform.ts +34 -0
- package/src/lib/warnOnce.ts +9 -3
- package/src/styles/bright_light.css +2 -0
- package/src/styles/components.css +1 -0
- package/src/styles/constants.css +10 -3
- package/src/styles/space_gray.css +10 -8
- package/src/styles/vkcom_dark.css +6 -4
- package/src/styles/vkcom_light.css +4 -2
- package/src/testing/utils.tsx +15 -2
- package/src/tokenized/index.ts +31 -4
- package/tsconfig.json +2 -0
- package/.cache/ts/src/helpers/typography.d.ts +0 -1
- package/dist/cjs/helpers/typography.d.ts +0 -1
- package/dist/cjs/helpers/typography.js +0 -25
- package/dist/cjs/helpers/typography.js.map +0 -1
- package/dist/cssm/helpers/typography.d.ts +0 -1
- package/dist/cssm/helpers/typography.js +0 -18
- package/dist/cssm/helpers/typography.js.map +0 -1
- package/dist/helpers/typography.d.ts +0 -1
- package/dist/helpers/typography.js +0 -18
- package/dist/helpers/typography.js.map +0 -1
- package/src/helpers/typography.ts +0 -24
|
@@ -3,7 +3,7 @@ import { CalendarProps } from "../Calendar/Calendar";
|
|
|
3
3
|
import { Placement } from "../Popper/Popper";
|
|
4
4
|
import { HasRootRef } from "../../types";
|
|
5
5
|
import "./DateInput.css";
|
|
6
|
-
export interface DateInputProps extends Omit<React.InputHTMLAttributes<HTMLDivElement>, "value" | "onChange" | "size">, Pick<CalendarProps, "disablePast" | "disableFuture" | "enableTime" | "shouldDisableDate" | "onChange" | "value" | "doneButtonText" | "weekStartsOn" | "disablePickers" | "changeHoursAriaLabel" | "changeMinutesAriaLabel" | "prevMonthAriaLabel" | "nextMonthAriaLabel" | "changeMonthAriaLabel" | "changeYearAriaLabel" | "changeDayAriaLabel" | "showNeighboringMonth" | "size">, HasRootRef<HTMLDivElement> {
|
|
6
|
+
export interface DateInputProps extends Omit<React.InputHTMLAttributes<HTMLDivElement>, "value" | "onChange" | "size">, Pick<CalendarProps, "disablePast" | "disableFuture" | "enableTime" | "shouldDisableDate" | "onChange" | "value" | "doneButtonText" | "weekStartsOn" | "disablePickers" | "changeHoursAriaLabel" | "changeMinutesAriaLabel" | "prevMonthAriaLabel" | "nextMonthAriaLabel" | "changeMonthAriaLabel" | "changeYearAriaLabel" | "changeDayAriaLabel" | "showNeighboringMonth" | "size" | "viewDate" | "onHeaderChange" | "onNextMonth" | "onPrevMonth">, HasRootRef<HTMLDivElement> {
|
|
7
7
|
calendarPlacement?: Placement;
|
|
8
8
|
closeOnChange?: boolean;
|
|
9
9
|
clearFieldAriaLabel?: string;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
-
var _excluded = ["enableTime", "shouldDisableDate", "disableFuture", "disablePast", "value", "onChange", "calendarPlacement", "style", "className", "doneButtonText", "closeOnChange", "disablePickers", "getRootRef", "name", "autoFocus", "disabled", "onClick", "onFocus", "prevMonthAriaLabel", "nextMonthAriaLabel", "showNeighboringMonth", "size", "changeMonthAriaLabel", "changeYearAriaLabel", "changeDayAriaLabel", "changeHoursAriaLabel", "changeMinutesAriaLabel", "clearFieldAriaLabel", "showCalendarAriaLabel"];
|
|
3
|
+
var _excluded = ["enableTime", "shouldDisableDate", "disableFuture", "disablePast", "value", "onChange", "calendarPlacement", "style", "className", "doneButtonText", "closeOnChange", "disablePickers", "getRootRef", "name", "autoFocus", "disabled", "onClick", "onFocus", "prevMonthAriaLabel", "nextMonthAriaLabel", "showNeighboringMonth", "size", "changeMonthAriaLabel", "changeYearAriaLabel", "changeDayAriaLabel", "changeHoursAriaLabel", "changeMinutesAriaLabel", "clearFieldAriaLabel", "showCalendarAriaLabel", "viewDate", "onHeaderChange", "onNextMonth", "onPrevMonth"];
|
|
4
4
|
import { createScopedElement } from "../../lib/jsxRuntime";
|
|
5
5
|
import * as React from "react";
|
|
6
|
-
import { format, isMatch, parse } from "date
|
|
6
|
+
import { format, isMatch, parse } from "../../lib/date";
|
|
7
7
|
import { Icon16Clear, Icon20CalendarOutline } from "@vkontakte/icons";
|
|
8
8
|
import { Calendar } from "../Calendar/Calendar";
|
|
9
9
|
import { Popper } from "../Popper/Popper";
|
|
@@ -107,6 +107,10 @@ export var DateInput = function DateInput(_ref) {
|
|
|
107
107
|
clearFieldAriaLabel = _ref$clearFieldAriaLa === void 0 ? "Очистить поле" : _ref$clearFieldAriaLa,
|
|
108
108
|
_ref$showCalendarAria = _ref.showCalendarAriaLabel,
|
|
109
109
|
showCalendarAriaLabel = _ref$showCalendarAria === void 0 ? "Показать календарь" : _ref$showCalendarAria,
|
|
110
|
+
viewDate = _ref.viewDate,
|
|
111
|
+
onHeaderChange = _ref.onHeaderChange,
|
|
112
|
+
onNextMonth = _ref.onNextMonth,
|
|
113
|
+
onPrevMonth = _ref.onPrevMonth,
|
|
110
114
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
111
115
|
|
|
112
116
|
var daysRef = React.useRef(null);
|
|
@@ -123,7 +127,7 @@ export var DateInput = function DateInput(_ref) {
|
|
|
123
127
|
}
|
|
124
128
|
|
|
125
129
|
var formattedValue = "".concat(internalValue[0], ".").concat(internalValue[1], ".").concat(internalValue[2]);
|
|
126
|
-
var mask = "
|
|
130
|
+
var mask = "DD.MM.YYYY";
|
|
127
131
|
|
|
128
132
|
if (enableTime) {
|
|
129
133
|
formattedValue += " ".concat(internalValue[3], ":").concat(internalValue[4]);
|
|
@@ -191,7 +195,7 @@ export var DateInput = function DateInput(_ref) {
|
|
|
191
195
|
}, props), createScopedElement("input", {
|
|
192
196
|
type: "hidden",
|
|
193
197
|
name: name,
|
|
194
|
-
value: value ? format(value, enableTime ? "
|
|
198
|
+
value: value ? format(value, enableTime ? "DD.MM.YYYYTHH:mm" : "DD.MM.YYYY") : ""
|
|
195
199
|
}), createScopedElement("span", {
|
|
196
200
|
vkuiClass: "DateInput__input",
|
|
197
201
|
onKeyDown: handleKeyDown
|
|
@@ -256,7 +260,11 @@ export var DateInput = function DateInput(_ref) {
|
|
|
256
260
|
changeYearAriaLabel: changeYearAriaLabel,
|
|
257
261
|
changeDayAriaLabel: changeDayAriaLabel,
|
|
258
262
|
showNeighboringMonth: showNeighboringMonth,
|
|
259
|
-
size: size
|
|
263
|
+
size: size,
|
|
264
|
+
viewDate: viewDate,
|
|
265
|
+
onHeaderChange: onCalendarChange,
|
|
266
|
+
onNextMonth: onNextMonth,
|
|
267
|
+
onPrevMonth: onPrevMonth
|
|
260
268
|
})));
|
|
261
269
|
};
|
|
262
270
|
//# sourceMappingURL=DateInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/DateInput/DateInput.tsx"],"names":["React","format","isMatch","parse","Icon16Clear","Icon20CalendarOutline","Calendar","Popper","multiRef","IconButton","classNames","FormField","useDateInput","InputLike","InputLikeDivider","useAdaptivity","callMultiple","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","getHours","getMinutes","DateInput","enableTime","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","doneButtonText","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","showNeighboringMonth","size","changeMonthAriaLabel","changeYearAriaLabel","changeDayAriaLabel","changeHoursAriaLabel","changeMinutesAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","props","daysRef","useRef","monthsRef","yearsRef","hoursRef","minutesRef","maxElement","onInternalValueChange","useCallback","internalValue","i","formattedValue","mask","Date","refs","useMemo","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","sizeY","onCalendarChange"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { format, isMatch, parse } from \"date-fns\";\nimport { Icon16Clear, Icon20CalendarOutline } from \"@vkontakte/icons\";\nimport { Calendar, CalendarProps } from \"../Calendar/Calendar\";\nimport { Popper, Placement } from \"../Popper/Popper\";\nimport { multiRef } from \"../../lib/utils\";\nimport IconButton from \"../IconButton/IconButton\";\nimport { classNames } from \"../../lib/classNames\";\nimport { FormField } from \"../FormField/FormField\";\nimport { HasRootRef } from \"../../types\";\nimport { useDateInput } from \"../../hooks/useDateInput\";\nimport { InputLike } from \"../InputLike/InputLike\";\nimport { InputLikeDivider } from \"../InputLike/InputLikeDivider\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { callMultiple } from \"../../lib/callMultiple\";\nimport \"./DateInput.css\";\n\nexport interface DateInputProps\n extends Omit<\n React.InputHTMLAttributes<HTMLDivElement>,\n \"value\" | \"onChange\" | \"size\"\n >,\n Pick<\n CalendarProps,\n | \"disablePast\"\n | \"disableFuture\"\n | \"enableTime\"\n | \"shouldDisableDate\"\n | \"onChange\"\n | \"value\"\n | \"doneButtonText\"\n | \"weekStartsOn\"\n | \"disablePickers\"\n | \"changeHoursAriaLabel\"\n | \"changeMinutesAriaLabel\"\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n | \"changeDayAriaLabel\"\n | \"showNeighboringMonth\"\n | \"size\"\n >,\n HasRootRef<HTMLDivElement> {\n calendarPlacement?: Placement;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n}\n\nconst elementsConfig = (index: number) => {\n let length = 2;\n let min = 1;\n let max = 0;\n\n switch (index) {\n case 0:\n max = 31;\n break;\n case 1:\n max = 12;\n break;\n case 2:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n case 3:\n max = 23;\n break;\n case 4:\n max = 59;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarProps[\"value\"]) => {\n const newValue = [\"\", \"\", \"\", \"\", \"\"];\n if (value) {\n newValue[0] = String(value.getDate()).padStart(2, \"0\");\n newValue[1] = String(value.getMonth() + 1).padStart(2, \"0\");\n newValue[2] = String(value.getFullYear()).padStart(4, \"0\");\n newValue[3] = String(value.getHours()).padStart(2, \"0\");\n newValue[4] = String(value.getMinutes()).padStart(2, \"0\");\n }\n return newValue;\n};\n\nexport const DateInput: React.FC<DateInputProps> = ({\n enableTime,\n shouldDisableDate,\n disableFuture,\n disablePast,\n value,\n onChange,\n calendarPlacement = \"bottom-start\",\n style,\n className,\n doneButtonText,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n showNeighboringMonth,\n size,\n changeMonthAriaLabel = \"Изменить месяц\",\n changeYearAriaLabel = \"Изменить год\",\n changeDayAriaLabel = \"Изменить день\",\n changeHoursAriaLabel = \"Изменить час\",\n changeMinutesAriaLabel = \"Изменить минуту\",\n clearFieldAriaLabel = \"Очистить поле\",\n showCalendarAriaLabel = \"Показать календарь\",\n ...props\n}) => {\n const daysRef = React.useRef<HTMLSpanElement>(null);\n const monthsRef = React.useRef<HTMLSpanElement>(null);\n const yearsRef = React.useRef<HTMLSpanElement>(null);\n const hoursRef = React.useRef<HTMLSpanElement>(null);\n const minutesRef = React.useRef<HTMLSpanElement>(null);\n\n const maxElement = enableTime ? 4 : 2;\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n for (let i = 0; i <= maxElement; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n return;\n }\n }\n\n let formattedValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n let mask = \"dd.MM.yyyy\";\n if (enableTime) {\n formattedValue += ` ${internalValue[3]}:${internalValue[4]}`;\n mask += \" HH:mm\";\n }\n\n if (isMatch(formattedValue, mask)) {\n onChange?.(parse(formattedValue, mask, value ?? new Date()));\n }\n },\n [enableTime, maxElement, onChange, value]\n );\n\n const refs = React.useMemo(\n () => [daysRef, monthsRef, yearsRef, hoursRef, minutesRef],\n [daysRef, monthsRef, yearsRef, hoursRef, minutesRef]\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n closeCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange,\n onInternalValueChange,\n getInternalValue,\n value,\n });\n\n const { sizeY } = useAdaptivity();\n\n const onCalendarChange = React.useCallback(\n (value?: Date | undefined) => {\n onChange?.(value);\n if (closeOnChange && !enableTime) {\n removeFocusFromField();\n }\n },\n [onChange, removeFocusFromField, closeOnChange, enableTime]\n );\n\n return (\n <FormField\n vkuiClass={classNames(\"DateInput\", `DateInput--sizeY-${sizeY}`)}\n style={style}\n className={className}\n getRootRef={multiRef(rootRef, getRootRef)}\n after={\n value ? (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={clearFieldAriaLabel}\n onClick={clear}\n >\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={showCalendarAriaLabel}\n onClick={openCalendar}\n >\n <Icon20CalendarOutline />\n </IconButton>\n )\n }\n disabled={disabled}\n onClick={callMultiple(handleFieldEnter, onClick)}\n onFocus={callMultiple(handleFieldEnter, onFocus)}\n {...props}\n >\n <input\n type=\"hidden\"\n name={name}\n value={\n value\n ? format(value, enableTime ? \"dd.MM.yyyy'T'HH:mm\" : \"dd.MM.yyyy\")\n : \"\"\n }\n />\n <span vkuiClass=\"DateInput__input\" onKeyDown={handleKeyDown}>\n <InputLike\n tabIndex={1}\n length={2}\n getRootRef={daysRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeYearAriaLabel}\n />\n {enableTime && (\n <React.Fragment>\n <InputLikeDivider vkuiClass=\"DateInput__input-time-divider\">\n {\" \"}\n </InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={hoursRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeHoursAriaLabel}\n />\n <InputLikeDivider>:</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={minutesRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeMinutesAriaLabel}\n />\n </React.Fragment>\n )}\n </span>\n {open && (\n <Popper\n targetRef={rootRef}\n offsetDistance={8}\n placement={calendarPlacement}\n >\n <Calendar\n value={value}\n onChange={onCalendarChange}\n enableTime={enableTime}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n doneButtonText={doneButtonText}\n disablePickers={disablePickers}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"file":"DateInput.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/DateInput/DateInput.tsx"],"names":["React","format","isMatch","parse","Icon16Clear","Icon20CalendarOutline","Calendar","Popper","multiRef","IconButton","classNames","FormField","useDateInput","InputLike","InputLikeDivider","useAdaptivity","callMultiple","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","getHours","getMinutes","DateInput","enableTime","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","doneButtonText","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","showNeighboringMonth","size","changeMonthAriaLabel","changeYearAriaLabel","changeDayAriaLabel","changeHoursAriaLabel","changeMinutesAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","viewDate","onHeaderChange","onNextMonth","onPrevMonth","props","daysRef","useRef","monthsRef","yearsRef","hoursRef","minutesRef","maxElement","onInternalValueChange","useCallback","internalValue","i","formattedValue","mask","Date","refs","useMemo","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","sizeY","onCalendarChange"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { format, isMatch, parse } from \"../../lib/date\";\nimport { Icon16Clear, Icon20CalendarOutline } from \"@vkontakte/icons\";\nimport { Calendar, CalendarProps } from \"../Calendar/Calendar\";\nimport { Popper, Placement } from \"../Popper/Popper\";\nimport { multiRef } from \"../../lib/utils\";\nimport IconButton from \"../IconButton/IconButton\";\nimport { classNames } from \"../../lib/classNames\";\nimport { FormField } from \"../FormField/FormField\";\nimport { HasRootRef } from \"../../types\";\nimport { useDateInput } from \"../../hooks/useDateInput\";\nimport { InputLike } from \"../InputLike/InputLike\";\nimport { InputLikeDivider } from \"../InputLike/InputLikeDivider\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { callMultiple } from \"../../lib/callMultiple\";\nimport \"./DateInput.css\";\n\nexport interface DateInputProps\n extends Omit<\n React.InputHTMLAttributes<HTMLDivElement>,\n \"value\" | \"onChange\" | \"size\"\n >,\n Pick<\n CalendarProps,\n | \"disablePast\"\n | \"disableFuture\"\n | \"enableTime\"\n | \"shouldDisableDate\"\n | \"onChange\"\n | \"value\"\n | \"doneButtonText\"\n | \"weekStartsOn\"\n | \"disablePickers\"\n | \"changeHoursAriaLabel\"\n | \"changeMinutesAriaLabel\"\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n | \"changeDayAriaLabel\"\n | \"showNeighboringMonth\"\n | \"size\"\n | \"viewDate\"\n | \"onHeaderChange\"\n | \"onNextMonth\"\n | \"onPrevMonth\"\n >,\n HasRootRef<HTMLDivElement> {\n calendarPlacement?: Placement;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n}\n\nconst elementsConfig = (index: number) => {\n let length = 2;\n let min = 1;\n let max = 0;\n\n switch (index) {\n case 0:\n max = 31;\n break;\n case 1:\n max = 12;\n break;\n case 2:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n case 3:\n max = 23;\n break;\n case 4:\n max = 59;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarProps[\"value\"]) => {\n const newValue = [\"\", \"\", \"\", \"\", \"\"];\n if (value) {\n newValue[0] = String(value.getDate()).padStart(2, \"0\");\n newValue[1] = String(value.getMonth() + 1).padStart(2, \"0\");\n newValue[2] = String(value.getFullYear()).padStart(4, \"0\");\n newValue[3] = String(value.getHours()).padStart(2, \"0\");\n newValue[4] = String(value.getMinutes()).padStart(2, \"0\");\n }\n return newValue;\n};\n\nexport const DateInput: React.FC<DateInputProps> = ({\n enableTime,\n shouldDisableDate,\n disableFuture,\n disablePast,\n value,\n onChange,\n calendarPlacement = \"bottom-start\",\n style,\n className,\n doneButtonText,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n showNeighboringMonth,\n size,\n changeMonthAriaLabel = \"Изменить месяц\",\n changeYearAriaLabel = \"Изменить год\",\n changeDayAriaLabel = \"Изменить день\",\n changeHoursAriaLabel = \"Изменить час\",\n changeMinutesAriaLabel = \"Изменить минуту\",\n clearFieldAriaLabel = \"Очистить поле\",\n showCalendarAriaLabel = \"Показать календарь\",\n viewDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n ...props\n}) => {\n const daysRef = React.useRef<HTMLSpanElement>(null);\n const monthsRef = React.useRef<HTMLSpanElement>(null);\n const yearsRef = React.useRef<HTMLSpanElement>(null);\n const hoursRef = React.useRef<HTMLSpanElement>(null);\n const minutesRef = React.useRef<HTMLSpanElement>(null);\n\n const maxElement = enableTime ? 4 : 2;\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n for (let i = 0; i <= maxElement; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n return;\n }\n }\n\n let formattedValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n let mask = \"DD.MM.YYYY\";\n if (enableTime) {\n formattedValue += ` ${internalValue[3]}:${internalValue[4]}`;\n mask += \" HH:mm\";\n }\n\n if (isMatch(formattedValue, mask)) {\n onChange?.(parse(formattedValue, mask, value ?? new Date()));\n }\n },\n [enableTime, maxElement, onChange, value]\n );\n\n const refs = React.useMemo(\n () => [daysRef, monthsRef, yearsRef, hoursRef, minutesRef],\n [daysRef, monthsRef, yearsRef, hoursRef, minutesRef]\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n closeCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange,\n onInternalValueChange,\n getInternalValue,\n value,\n });\n\n const { sizeY } = useAdaptivity();\n\n const onCalendarChange = React.useCallback(\n (value?: Date | undefined) => {\n onChange?.(value);\n if (closeOnChange && !enableTime) {\n removeFocusFromField();\n }\n },\n [onChange, removeFocusFromField, closeOnChange, enableTime]\n );\n\n return (\n <FormField\n vkuiClass={classNames(\"DateInput\", `DateInput--sizeY-${sizeY}`)}\n style={style}\n className={className}\n getRootRef={multiRef(rootRef, getRootRef)}\n after={\n value ? (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={clearFieldAriaLabel}\n onClick={clear}\n >\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={showCalendarAriaLabel}\n onClick={openCalendar}\n >\n <Icon20CalendarOutline />\n </IconButton>\n )\n }\n disabled={disabled}\n onClick={callMultiple(handleFieldEnter, onClick)}\n onFocus={callMultiple(handleFieldEnter, onFocus)}\n {...props}\n >\n <input\n type=\"hidden\"\n name={name}\n value={\n value\n ? format(value, enableTime ? \"DD.MM.YYYYTHH:mm\" : \"DD.MM.YYYY\")\n : \"\"\n }\n />\n <span vkuiClass=\"DateInput__input\" onKeyDown={handleKeyDown}>\n <InputLike\n tabIndex={1}\n length={2}\n getRootRef={daysRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeYearAriaLabel}\n />\n {enableTime && (\n <React.Fragment>\n <InputLikeDivider vkuiClass=\"DateInput__input-time-divider\">\n {\" \"}\n </InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={hoursRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeHoursAriaLabel}\n />\n <InputLikeDivider>:</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={minutesRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeMinutesAriaLabel}\n />\n </React.Fragment>\n )}\n </span>\n {open && (\n <Popper\n targetRef={rootRef}\n offsetDistance={8}\n placement={calendarPlacement}\n >\n <Calendar\n value={value}\n onChange={onCalendarChange}\n enableTime={enableTime}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n doneButtonText={doneButtonText}\n disablePickers={disablePickers}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n viewDate={viewDate}\n onHeaderChange={onCalendarChange}\n onNextMonth={onNextMonth}\n onPrevMonth={onPrevMonth}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"file":"DateInput.js"}
|
|
@@ -8,10 +8,10 @@ var _excluded = ["name", "min", "max", "dayPlaceholder", "monthPlaceholder", "ye
|
|
|
8
8
|
_excluded3 = ["hasMouse", "defaultValue"];
|
|
9
9
|
import { createScopedElement } from "../../lib/jsxRuntime";
|
|
10
10
|
import * as React from "react";
|
|
11
|
-
import Input from "../Input/Input";
|
|
11
|
+
import { Input } from "../Input/Input";
|
|
12
12
|
import { withAdaptivity } from "../../hoc/withAdaptivity";
|
|
13
13
|
import { leadingZero } from "../../lib/utils";
|
|
14
|
-
import CustomSelect from "../CustomSelect/CustomSelect";
|
|
14
|
+
import { CustomSelect } from "../CustomSelect/CustomSelect";
|
|
15
15
|
import "./DatePicker.css";
|
|
16
16
|
var DefaultMonths = ["Января", "Февраля", "Марта", "Апреля", "Мая", "Июня", "Июля", "Августа", "Сентября", "Октября", "Ноября", "Декабря"];
|
|
17
17
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/DatePicker/DatePicker.tsx"],"names":["React","Input","withAdaptivity","leadingZero","CustomSelect","DefaultMonths","convertToInputFormat","day","month","year","parseInputDate","date","splited","split","Number","getMonthMaxDay","Date","getDate","range","start","end","swap","arr","i","Math","min","max","push","reverse","DatePickerCustom","name","dayPlaceholder","monthPlaceholder","yearPlaceholder","popupDirection","defaultValue","hasMouse","monthNames","onDateChange","disabled","restProps","onSelectChange","e","target","value","dayOptions","map","label","String","monthOptions","index","yearOptions","DatePickerNative","defProps","onStringChange","useCallback","currentTarget","DatePicker","props","useState","setValue","update","Cmp"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport Input from \"../Input/Input\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { HasPlatform } from \"../../types\";\nimport { leadingZero } from \"../../lib/utils\";\nimport CustomSelect from \"../CustomSelect/CustomSelect\";\nimport \"./DatePicker.css\";\n\nconst DefaultMonths: string[] = [\n \"Января\",\n \"Февраля\",\n \"Марта\",\n \"Апреля\",\n \"Мая\",\n \"Июня\",\n \"Июля\",\n \"Августа\",\n \"Сентября\",\n \"Октября\",\n \"Ноября\",\n \"Декабря\",\n];\n\nexport type DatePickerDateFormat = {\n day: number;\n month: number;\n year: number;\n};\n\nexport interface DatePickerProps\n extends Omit<\n React.HTMLAttributes<HTMLDivElement>,\n \"defaultValue\" | \"min\" | \"max\"\n >,\n HasPlatform,\n AdaptivityProps {\n min?: DatePickerDateFormat;\n max?: DatePickerDateFormat;\n name?: string;\n defaultValue?: DatePickerDateFormat;\n popupDirection?: \"top\" | \"bottom\";\n monthNames?: string[];\n dayPlaceholder?: string;\n monthPlaceholder?: string;\n yearPlaceholder?: string;\n onDateChange?: (value: DatePickerDateFormat) => void;\n disabled?: boolean;\n}\n\n// Переводим state к формату гг-мм-дд\nfunction convertToInputFormat({\n day = 0,\n month = 0,\n year = 0,\n}: Partial<DatePickerDateFormat>) {\n return `${year}-${leadingZero(month)}-${leadingZero(day)}`;\n}\n\n// Переводим дату формата гг-мм-дд к объекту\nfunction parseInputDate(date: string): DatePickerDateFormat {\n const splited = date.split(\"-\");\n\n return {\n day: Number(splited[2]),\n month: Number(splited[1]),\n year: Number(splited[0]),\n };\n}\n\nfunction getMonthMaxDay(month?: number, year?: number) {\n return month ? new Date(year || 2016, month, 0).getDate() : 31;\n}\n\nconst range = (start: number, end: number) => {\n const swap = start > end;\n const arr = [];\n for (let i = Math.min(start, end); i <= Math.max(start, end); i++) {\n arr.push(i);\n }\n return swap ? arr.reverse() : arr;\n};\n\nconst DatePickerCustom: React.FC<\n DatePickerProps & Partial<DatePickerDateFormat>\n> = ({\n name,\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n hasMouse,\n monthNames,\n day = 0,\n month = 0,\n year = 0,\n onDateChange,\n disabled,\n ...restProps\n}) => {\n const onSelectChange: React.ChangeEventHandler<HTMLSelectElement> = (e) => {\n onDateChange?.({\n day,\n month,\n year,\n [e.target.name]: Number(e.target.value),\n });\n };\n const dayOptions = range(1, getMonthMaxDay(month, year)).map((value) => ({\n label: String(value),\n value,\n }));\n const monthOptions = (monthNames || DefaultMonths).map((name, index) => ({\n label: name,\n value: index + 1,\n }));\n const yearOptions = range(max.year, min.year).map((value) => ({\n label: String(value),\n value: value,\n }));\n return (\n <div vkuiClass=\"DatePicker\" {...restProps}>\n <div vkuiClass=\"DatePicker__container\">\n <div vkuiClass=\"DatePicker__day\">\n <CustomSelect\n name=\"day\"\n value={day}\n options={dayOptions}\n placeholder={dayPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div vkuiClass=\"DatePicker__month\">\n <CustomSelect\n vkuiClass=\"DatePicker__monthSelect\"\n name=\"month\"\n value={month}\n options={monthOptions}\n placeholder={monthPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div vkuiClass=\"DatePicker__year\">\n <CustomSelect\n name=\"year\"\n value={year}\n options={yearOptions}\n placeholder={yearPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n </div>\n <input\n type=\"hidden\"\n name={name}\n value={convertToInputFormat({ day, month, year })}\n />\n </div>\n );\n};\n\nconst DatePickerNative: React.FC<\n DatePickerProps & Partial<DatePickerDateFormat>\n> = ({\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n hasMouse,\n day,\n month,\n year,\n onDateChange,\n ...restProps\n}) => {\n const defProps =\n day && month && year\n ? { defaultValue: convertToInputFormat({ day, month, year }) }\n : {};\n const onStringChange: React.ChangeEventHandler<HTMLInputElement> =\n React.useCallback(\n (e) => {\n onDateChange?.(parseInputDate(e.currentTarget.value));\n },\n [onDateChange]\n );\n return (\n <Input\n {...restProps}\n type=\"date\"\n onChange={onStringChange}\n min={convertToInputFormat(min)}\n max={convertToInputFormat(max)}\n {...defProps}\n />\n );\n};\n\nconst DatePicker: React.FC<DatePickerProps> = ({\n hasMouse,\n defaultValue,\n ...props\n}) => {\n const [value, setValue] = React.useState<Partial<DatePickerDateFormat>>(\n () => ({\n day: defaultValue?.day || 0,\n month: defaultValue?.month || 0,\n year: defaultValue?.year || 0,\n })\n );\n\n const onDateChange = React.useCallback(\n (update: DatePickerDateFormat) => {\n setValue(update);\n props.onDateChange && props.onDateChange({ ...update });\n },\n [props]\n );\n\n const Cmp = hasMouse ? DatePickerCustom : DatePickerNative;\n return <Cmp {...props} {...value} onDateChange={onDateChange} />;\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(DatePicker, {\n hasMouse: true,\n});\n"],"file":"DatePicker.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/DatePicker/DatePicker.tsx"],"names":["React","Input","withAdaptivity","leadingZero","CustomSelect","DefaultMonths","convertToInputFormat","day","month","year","parseInputDate","date","splited","split","Number","getMonthMaxDay","Date","getDate","range","start","end","swap","arr","i","Math","min","max","push","reverse","DatePickerCustom","name","dayPlaceholder","monthPlaceholder","yearPlaceholder","popupDirection","defaultValue","hasMouse","monthNames","onDateChange","disabled","restProps","onSelectChange","e","target","value","dayOptions","map","label","String","monthOptions","index","yearOptions","DatePickerNative","defProps","onStringChange","useCallback","currentTarget","DatePicker","props","useState","setValue","update","Cmp"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Input } from \"../Input/Input\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { HasPlatform } from \"../../types\";\nimport { leadingZero } from \"../../lib/utils\";\nimport { CustomSelect } from \"../CustomSelect/CustomSelect\";\nimport \"./DatePicker.css\";\n\nconst DefaultMonths: string[] = [\n \"Января\",\n \"Февраля\",\n \"Марта\",\n \"Апреля\",\n \"Мая\",\n \"Июня\",\n \"Июля\",\n \"Августа\",\n \"Сентября\",\n \"Октября\",\n \"Ноября\",\n \"Декабря\",\n];\n\nexport type DatePickerDateFormat = {\n day: number;\n month: number;\n year: number;\n};\n\nexport interface DatePickerProps\n extends Omit<\n React.HTMLAttributes<HTMLDivElement>,\n \"defaultValue\" | \"min\" | \"max\"\n >,\n HasPlatform,\n AdaptivityProps {\n min?: DatePickerDateFormat;\n max?: DatePickerDateFormat;\n name?: string;\n defaultValue?: DatePickerDateFormat;\n popupDirection?: \"top\" | \"bottom\";\n monthNames?: string[];\n dayPlaceholder?: string;\n monthPlaceholder?: string;\n yearPlaceholder?: string;\n onDateChange?: (value: DatePickerDateFormat) => void;\n disabled?: boolean;\n}\n\n// Переводим state к формату гг-мм-дд\nfunction convertToInputFormat({\n day = 0,\n month = 0,\n year = 0,\n}: Partial<DatePickerDateFormat>) {\n return `${year}-${leadingZero(month)}-${leadingZero(day)}`;\n}\n\n// Переводим дату формата гг-мм-дд к объекту\nfunction parseInputDate(date: string): DatePickerDateFormat {\n const splited = date.split(\"-\");\n\n return {\n day: Number(splited[2]),\n month: Number(splited[1]),\n year: Number(splited[0]),\n };\n}\n\nfunction getMonthMaxDay(month?: number, year?: number) {\n return month ? new Date(year || 2016, month, 0).getDate() : 31;\n}\n\nconst range = (start: number, end: number) => {\n const swap = start > end;\n const arr = [];\n for (let i = Math.min(start, end); i <= Math.max(start, end); i++) {\n arr.push(i);\n }\n return swap ? arr.reverse() : arr;\n};\n\nconst DatePickerCustom: React.FC<\n DatePickerProps & Partial<DatePickerDateFormat>\n> = ({\n name,\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n hasMouse,\n monthNames,\n day = 0,\n month = 0,\n year = 0,\n onDateChange,\n disabled,\n ...restProps\n}) => {\n const onSelectChange: React.ChangeEventHandler<HTMLSelectElement> = (e) => {\n onDateChange?.({\n day,\n month,\n year,\n [e.target.name]: Number(e.target.value),\n });\n };\n const dayOptions = range(1, getMonthMaxDay(month, year)).map((value) => ({\n label: String(value),\n value,\n }));\n const monthOptions = (monthNames || DefaultMonths).map((name, index) => ({\n label: name,\n value: index + 1,\n }));\n const yearOptions = range(max.year, min.year).map((value) => ({\n label: String(value),\n value: value,\n }));\n return (\n <div vkuiClass=\"DatePicker\" {...restProps}>\n <div vkuiClass=\"DatePicker__container\">\n <div vkuiClass=\"DatePicker__day\">\n <CustomSelect\n name=\"day\"\n value={day}\n options={dayOptions}\n placeholder={dayPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div vkuiClass=\"DatePicker__month\">\n <CustomSelect\n vkuiClass=\"DatePicker__monthSelect\"\n name=\"month\"\n value={month}\n options={monthOptions}\n placeholder={monthPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div vkuiClass=\"DatePicker__year\">\n <CustomSelect\n name=\"year\"\n value={year}\n options={yearOptions}\n placeholder={yearPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n </div>\n <input\n type=\"hidden\"\n name={name}\n value={convertToInputFormat({ day, month, year })}\n />\n </div>\n );\n};\n\nconst DatePickerNative: React.FC<\n DatePickerProps & Partial<DatePickerDateFormat>\n> = ({\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n hasMouse,\n day,\n month,\n year,\n onDateChange,\n ...restProps\n}) => {\n const defProps =\n day && month && year\n ? { defaultValue: convertToInputFormat({ day, month, year }) }\n : {};\n const onStringChange: React.ChangeEventHandler<HTMLInputElement> =\n React.useCallback(\n (e) => {\n onDateChange?.(parseInputDate(e.currentTarget.value));\n },\n [onDateChange]\n );\n return (\n <Input\n {...restProps}\n type=\"date\"\n onChange={onStringChange}\n min={convertToInputFormat(min)}\n max={convertToInputFormat(max)}\n {...defProps}\n />\n );\n};\n\nconst DatePicker: React.FC<DatePickerProps> = ({\n hasMouse,\n defaultValue,\n ...props\n}) => {\n const [value, setValue] = React.useState<Partial<DatePickerDateFormat>>(\n () => ({\n day: defaultValue?.day || 0,\n month: defaultValue?.month || 0,\n year: defaultValue?.year || 0,\n })\n );\n\n const onDateChange = React.useCallback(\n (update: DatePickerDateFormat) => {\n setValue(update);\n props.onDateChange && props.onDateChange({ ...update });\n },\n [props]\n );\n\n const Cmp = hasMouse ? DatePickerCustom : DatePickerNative;\n return <Cmp {...props} {...value} onDateChange={onDateChange} />;\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(DatePicker, {\n hasMouse: true,\n});\n"],"file":"DatePicker.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.vkuiDateRangeInput__input{flex-grow:1;margin-left:10px;margin-right:14px;font-size:16px;z-index:2;cursor:text;white-space:nowrap;-webkit-user-select:text;user-select:text;font-variant-numeric:tabular-nums}.vkuiDateRangeInput--sizeY-compact .vkuiDateRangeInput__input{font-size:15px;margin-right:22px}
|
|
1
|
+
.vkuiDateRangeInput__input{flex-grow:1;margin-left:10px;margin-right:14px;font-size:16px;z-index:2;cursor:text;white-space:nowrap;-webkit-user-select:text;user-select:text;font-variant-numeric:tabular-nums;letter-spacing:var(--vk-sans-ls-2)}.vkuiDateRangeInput--sizeY-compact .vkuiDateRangeInput__input{font-size:15px;margin-right:22px;letter-spacing:var(--vk-sans-ls-17)}
|
|
@@ -3,7 +3,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
|
|
|
3
3
|
var _excluded = ["shouldDisableDate", "disableFuture", "disablePast", "value", "onChange", "calendarPlacement", "style", "className", "closeOnChange", "disablePickers", "getRootRef", "name", "autoFocus", "disabled", "onClick", "onFocus", "prevMonthAriaLabel", "nextMonthAriaLabel", "changeDayAriaLabel", "changeMonthAriaLabel", "changeYearAriaLabel", "changeStartDayAriaLabel", "changeStartMonthAriaLabel", "changeStartYearAriaLabel", "changeEndDayAriaLabel", "changeEndMonthAriaLabel", "changeEndYearAriaLabel", "clearFieldAriaLabel", "showCalendarAriaLabel"];
|
|
4
4
|
import { createScopedElement } from "../../lib/jsxRuntime";
|
|
5
5
|
import * as React from "react";
|
|
6
|
-
import { format, isMatch, parse, isAfter } from "date
|
|
6
|
+
import { format, isMatch, parse, isAfter } from "../../lib/date";
|
|
7
7
|
import { Icon16Clear, Icon20CalendarOutline } from "@vkontakte/icons";
|
|
8
8
|
import { CalendarRange } from "../CalendarRange/CalendarRange";
|
|
9
9
|
import { Popper } from "../Popper/Popper";
|
|
@@ -213,7 +213,7 @@ export var DateRangeInput = function DateRangeInput(_ref) {
|
|
|
213
213
|
}, props), createScopedElement("input", {
|
|
214
214
|
type: "hidden",
|
|
215
215
|
name: name,
|
|
216
|
-
value: value ? "".concat(value[0] ? format(value[0], "
|
|
216
|
+
value: value ? "".concat(value[0] ? format(value[0], "DD.MM.YYYY") : "", " - ").concat(value[1] ? format(value[1], "DD.MM.YYYY") : "") : ""
|
|
217
217
|
}), createScopedElement("span", {
|
|
218
218
|
vkuiClass: "DateInput__input",
|
|
219
219
|
onKeyDown: handleKeyDown
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/DateRangeInput/DateRangeInput.tsx"],"names":["React","format","isMatch","parse","isAfter","Icon16Clear","Icon20CalendarOutline","CalendarRange","Popper","IconButton","useDateInput","useAdaptivity","classNames","multiRef","FormField","InputLike","InputLikeDivider","callMultiple","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","DateRangeInput","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","changeDayAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","changeStartDayAriaLabel","changeStartMonthAriaLabel","changeStartYearAriaLabel","changeEndDayAriaLabel","changeEndMonthAriaLabel","changeEndYearAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","props","daysStartRef","useRef","monthsStartRef","yearsStartRef","daysEndRef","monthsEndRef","yearsEndRef","onInternalValueChange","useCallback","internalValue","isStartValid","isEndValid","i","formattedStartValue","formattedEndValue","mask","valueExists","Array","isArray","now","Date","start","end","refs","useMemo","maxElement","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","sizeY","onCalendarChange"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { format, isMatch, parse, isAfter } from \"date-fns\";\nimport { Icon16Clear, Icon20CalendarOutline } from \"@vkontakte/icons\";\nimport {\n CalendarRange,\n CalendarRangeProps,\n} from \"../CalendarRange/CalendarRange\";\nimport { Popper, Placement } from \"../Popper/Popper\";\nimport IconButton from \"../IconButton/IconButton\";\nimport { HasRootRef } from \"../../types\";\nimport { useDateInput } from \"../../hooks/useDateInput\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { classNames } from \"../../lib/classNames\";\nimport { multiRef } from \"../../lib/utils\";\nimport { FormField } from \"../FormField/FormField\";\nimport { InputLike } from \"../InputLike/InputLike\";\nimport { InputLikeDivider } from \"../InputLike/InputLikeDivider\";\nimport { callMultiple } from \"../../lib/callMultiple\";\nimport \"./DateRangeInput.css\";\n\nexport interface DateRangeInputProps\n extends Omit<React.InputHTMLAttributes<HTMLDivElement>, \"value\" | \"onChange\">,\n Pick<\n CalendarRangeProps,\n | \"disablePast\"\n | \"disableFuture\"\n | \"shouldDisableDate\"\n | \"onChange\"\n | \"value\"\n | \"weekStartsOn\"\n | \"disablePickers\"\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n | \"changeDayAriaLabel\"\n >,\n HasRootRef<HTMLDivElement> {\n calendarPlacement?: Placement;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n changeStartDayAriaLabel?: string;\n changeStartMonthAriaLabel?: string;\n changeStartYearAriaLabel?: string;\n changeEndDayAriaLabel?: string;\n changeEndMonthAriaLabel?: string;\n changeEndYearAriaLabel?: string;\n}\n\nconst elementsConfig = (index: number) => {\n let length = 2;\n let min = 1;\n let max = 0;\n\n switch (index) {\n case 0:\n case 3:\n max = 31;\n break;\n case 1:\n case 4:\n max = 12;\n break;\n case 2:\n case 5:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarRangeProps[\"value\"]) => {\n const newValue = [\"\", \"\", \"\", \"\", \"\", \"\"];\n if (value?.[0]) {\n newValue[0] = String(value[0].getDate()).padStart(2, \"0\");\n newValue[1] = String(value[0].getMonth() + 1).padStart(2, \"0\");\n newValue[2] = String(value[0].getFullYear()).padStart(4, \"0\");\n }\n if (value?.[1]) {\n newValue[3] = String(value[1].getDate()).padStart(2, \"0\");\n newValue[4] = String(value[1].getMonth() + 1).padStart(2, \"0\");\n newValue[5] = String(value[1].getFullYear()).padStart(4, \"0\");\n }\n return newValue;\n};\n\nexport const DateRangeInput: React.FC<DateRangeInputProps> = ({\n shouldDisableDate,\n disableFuture,\n disablePast,\n value,\n onChange,\n calendarPlacement = \"bottom-start\",\n style,\n className,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeDayAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n changeStartDayAriaLabel = \"Изменить день начала\",\n changeStartMonthAriaLabel = \"Изменить месяц начала\",\n changeStartYearAriaLabel = \"Изменить год начала\",\n changeEndDayAriaLabel = \"Изменить день окончания\",\n changeEndMonthAriaLabel = \"Изменить месяц окончания\",\n changeEndYearAriaLabel = \"Изменить год окончания\",\n clearFieldAriaLabel = \"Очистить поле\",\n showCalendarAriaLabel = \"Показать календарь\",\n ...props\n}) => {\n const daysStartRef = React.useRef<HTMLSpanElement>(null);\n const monthsStartRef = React.useRef<HTMLSpanElement>(null);\n const yearsStartRef = React.useRef<HTMLSpanElement>(null);\n const daysEndRef = React.useRef<HTMLSpanElement>(null);\n const monthsEndRef = React.useRef<HTMLSpanElement>(null);\n const yearsEndRef = React.useRef<HTMLSpanElement>(null);\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n let isStartValid = true;\n let isEndValid = true;\n for (let i = 0; i <= 2; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isStartValid = false;\n }\n }\n for (let i = 3; i <= 5; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isEndValid = false;\n }\n }\n const formattedStartValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n const formattedEndValue = `${internalValue[3]}.${internalValue[4]}.${internalValue[5]}`;\n const mask = \"dd.MM.yyyy\";\n\n if (!isMatch(formattedStartValue, mask)) {\n isStartValid = false;\n }\n if (!isMatch(formattedEndValue, mask)) {\n isEndValid = false;\n }\n\n if (!isStartValid && !isEndValid) {\n return;\n }\n\n const valueExists = Array.isArray(value);\n const now = new Date();\n const start = isStartValid\n ? parse(formattedStartValue, mask, (valueExists && value?.[0]) || now)\n : null;\n const end = isEndValid\n ? parse(formattedEndValue, mask, (valueExists && value?.[1]) || now)\n : null;\n if (start && end && isAfter(end, start)) {\n onChange?.([start, end]);\n }\n },\n [onChange, value]\n );\n\n const refs = React.useMemo(\n () => [\n daysStartRef,\n monthsStartRef,\n yearsStartRef,\n daysEndRef,\n monthsEndRef,\n yearsEndRef,\n ],\n [\n daysStartRef,\n monthsStartRef,\n yearsStartRef,\n daysEndRef,\n monthsEndRef,\n yearsEndRef,\n ]\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n closeCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement: 5,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange,\n onInternalValueChange,\n getInternalValue,\n value,\n });\n\n const { sizeY } = useAdaptivity();\n\n const onCalendarChange = React.useCallback(\n (newValue?: Array<Date | null> | undefined) => {\n onChange?.(newValue);\n if (closeOnChange && newValue?.[1] && newValue[1] !== value?.[1]) {\n removeFocusFromField();\n }\n },\n [onChange, closeOnChange, value, removeFocusFromField]\n );\n\n return (\n <FormField\n vkuiClass={classNames(\"DateRangeInput\", `DateRangeInput--sizeY-${sizeY}`)}\n style={style}\n className={className}\n getRootRef={multiRef(rootRef, getRootRef)}\n after={\n value ? (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={clearFieldAriaLabel}\n onClick={clear}\n >\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={showCalendarAriaLabel}\n onClick={openCalendar}\n >\n <Icon20CalendarOutline />\n </IconButton>\n )\n }\n disabled={disabled}\n onClick={callMultiple(handleFieldEnter, onClick)}\n onFocus={callMultiple(handleFieldEnter, onFocus)}\n {...props}\n >\n <input\n type=\"hidden\"\n name={name}\n value={\n value\n ? `${value[0] ? format(value[0], \"dd.MM.yyyy\") : \"\"} - ${\n value[1] ? format(value[1], \"dd.MM.yyyy\") : \"\"\n }`\n : \"\"\n }\n />\n <span vkuiClass=\"DateInput__input\" onKeyDown={handleKeyDown}>\n <InputLike\n length={2}\n getRootRef={daysStartRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeStartDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsStartRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeStartMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsStartRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeStartYearAriaLabel}\n />\n <InputLikeDivider>{\" — \"}</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={daysEndRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeEndDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsEndRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeEndMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsEndRef}\n index={5}\n onElementSelect={setFocusedElement}\n value={internalValue[5]}\n aria-label={changeEndYearAriaLabel}\n />\n </span>\n {open && (\n <Popper\n targetRef={rootRef}\n offsetDistance={8}\n placement={calendarPlacement}\n >\n <CalendarRange\n value={value}\n onChange={onCalendarChange}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n disablePickers={disablePickers}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"file":"DateRangeInput.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/DateRangeInput/DateRangeInput.tsx"],"names":["React","format","isMatch","parse","isAfter","Icon16Clear","Icon20CalendarOutline","CalendarRange","Popper","IconButton","useDateInput","useAdaptivity","classNames","multiRef","FormField","InputLike","InputLikeDivider","callMultiple","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","DateRangeInput","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","changeDayAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","changeStartDayAriaLabel","changeStartMonthAriaLabel","changeStartYearAriaLabel","changeEndDayAriaLabel","changeEndMonthAriaLabel","changeEndYearAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","props","daysStartRef","useRef","monthsStartRef","yearsStartRef","daysEndRef","monthsEndRef","yearsEndRef","onInternalValueChange","useCallback","internalValue","isStartValid","isEndValid","i","formattedStartValue","formattedEndValue","mask","valueExists","Array","isArray","now","Date","start","end","refs","useMemo","maxElement","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","sizeY","onCalendarChange"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { format, isMatch, parse, isAfter } from \"../../lib/date\";\nimport { Icon16Clear, Icon20CalendarOutline } from \"@vkontakte/icons\";\nimport {\n CalendarRange,\n CalendarRangeProps,\n} from \"../CalendarRange/CalendarRange\";\nimport { Popper, Placement } from \"../Popper/Popper\";\nimport IconButton from \"../IconButton/IconButton\";\nimport { HasRootRef } from \"../../types\";\nimport { useDateInput } from \"../../hooks/useDateInput\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { classNames } from \"../../lib/classNames\";\nimport { multiRef } from \"../../lib/utils\";\nimport { FormField } from \"../FormField/FormField\";\nimport { InputLike } from \"../InputLike/InputLike\";\nimport { InputLikeDivider } from \"../InputLike/InputLikeDivider\";\nimport { callMultiple } from \"../../lib/callMultiple\";\nimport \"./DateRangeInput.css\";\n\nexport interface DateRangeInputProps\n extends Omit<React.InputHTMLAttributes<HTMLDivElement>, \"value\" | \"onChange\">,\n Pick<\n CalendarRangeProps,\n | \"disablePast\"\n | \"disableFuture\"\n | \"shouldDisableDate\"\n | \"onChange\"\n | \"value\"\n | \"weekStartsOn\"\n | \"disablePickers\"\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n | \"changeDayAriaLabel\"\n >,\n HasRootRef<HTMLDivElement> {\n calendarPlacement?: Placement;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n changeStartDayAriaLabel?: string;\n changeStartMonthAriaLabel?: string;\n changeStartYearAriaLabel?: string;\n changeEndDayAriaLabel?: string;\n changeEndMonthAriaLabel?: string;\n changeEndYearAriaLabel?: string;\n}\n\nconst elementsConfig = (index: number) => {\n let length = 2;\n let min = 1;\n let max = 0;\n\n switch (index) {\n case 0:\n case 3:\n max = 31;\n break;\n case 1:\n case 4:\n max = 12;\n break;\n case 2:\n case 5:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarRangeProps[\"value\"]) => {\n const newValue = [\"\", \"\", \"\", \"\", \"\", \"\"];\n if (value?.[0]) {\n newValue[0] = String(value[0].getDate()).padStart(2, \"0\");\n newValue[1] = String(value[0].getMonth() + 1).padStart(2, \"0\");\n newValue[2] = String(value[0].getFullYear()).padStart(4, \"0\");\n }\n if (value?.[1]) {\n newValue[3] = String(value[1].getDate()).padStart(2, \"0\");\n newValue[4] = String(value[1].getMonth() + 1).padStart(2, \"0\");\n newValue[5] = String(value[1].getFullYear()).padStart(4, \"0\");\n }\n return newValue;\n};\n\nexport const DateRangeInput: React.FC<DateRangeInputProps> = ({\n shouldDisableDate,\n disableFuture,\n disablePast,\n value,\n onChange,\n calendarPlacement = \"bottom-start\",\n style,\n className,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeDayAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n changeStartDayAriaLabel = \"Изменить день начала\",\n changeStartMonthAriaLabel = \"Изменить месяц начала\",\n changeStartYearAriaLabel = \"Изменить год начала\",\n changeEndDayAriaLabel = \"Изменить день окончания\",\n changeEndMonthAriaLabel = \"Изменить месяц окончания\",\n changeEndYearAriaLabel = \"Изменить год окончания\",\n clearFieldAriaLabel = \"Очистить поле\",\n showCalendarAriaLabel = \"Показать календарь\",\n ...props\n}) => {\n const daysStartRef = React.useRef<HTMLSpanElement>(null);\n const monthsStartRef = React.useRef<HTMLSpanElement>(null);\n const yearsStartRef = React.useRef<HTMLSpanElement>(null);\n const daysEndRef = React.useRef<HTMLSpanElement>(null);\n const monthsEndRef = React.useRef<HTMLSpanElement>(null);\n const yearsEndRef = React.useRef<HTMLSpanElement>(null);\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n let isStartValid = true;\n let isEndValid = true;\n for (let i = 0; i <= 2; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isStartValid = false;\n }\n }\n for (let i = 3; i <= 5; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isEndValid = false;\n }\n }\n const formattedStartValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n const formattedEndValue = `${internalValue[3]}.${internalValue[4]}.${internalValue[5]}`;\n const mask = \"dd.MM.yyyy\";\n\n if (!isMatch(formattedStartValue, mask)) {\n isStartValid = false;\n }\n if (!isMatch(formattedEndValue, mask)) {\n isEndValid = false;\n }\n\n if (!isStartValid && !isEndValid) {\n return;\n }\n\n const valueExists = Array.isArray(value);\n const now = new Date();\n const start = isStartValid\n ? parse(formattedStartValue, mask, (valueExists && value?.[0]) || now)\n : null;\n const end = isEndValid\n ? parse(formattedEndValue, mask, (valueExists && value?.[1]) || now)\n : null;\n if (start && end && isAfter(end, start)) {\n onChange?.([start, end]);\n }\n },\n [onChange, value]\n );\n\n const refs = React.useMemo(\n () => [\n daysStartRef,\n monthsStartRef,\n yearsStartRef,\n daysEndRef,\n monthsEndRef,\n yearsEndRef,\n ],\n [\n daysStartRef,\n monthsStartRef,\n yearsStartRef,\n daysEndRef,\n monthsEndRef,\n yearsEndRef,\n ]\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n closeCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement: 5,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange,\n onInternalValueChange,\n getInternalValue,\n value,\n });\n\n const { sizeY } = useAdaptivity();\n\n const onCalendarChange = React.useCallback(\n (newValue?: Array<Date | null> | undefined) => {\n onChange?.(newValue);\n if (closeOnChange && newValue?.[1] && newValue[1] !== value?.[1]) {\n removeFocusFromField();\n }\n },\n [onChange, closeOnChange, value, removeFocusFromField]\n );\n\n return (\n <FormField\n vkuiClass={classNames(\"DateRangeInput\", `DateRangeInput--sizeY-${sizeY}`)}\n style={style}\n className={className}\n getRootRef={multiRef(rootRef, getRootRef)}\n after={\n value ? (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={clearFieldAriaLabel}\n onClick={clear}\n >\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton\n hoverMode=\"opacity\"\n aria-label={showCalendarAriaLabel}\n onClick={openCalendar}\n >\n <Icon20CalendarOutline />\n </IconButton>\n )\n }\n disabled={disabled}\n onClick={callMultiple(handleFieldEnter, onClick)}\n onFocus={callMultiple(handleFieldEnter, onFocus)}\n {...props}\n >\n <input\n type=\"hidden\"\n name={name}\n value={\n value\n ? `${value[0] ? format(value[0], \"DD.MM.YYYY\") : \"\"} - ${\n value[1] ? format(value[1], \"DD.MM.YYYY\") : \"\"\n }`\n : \"\"\n }\n />\n <span vkuiClass=\"DateInput__input\" onKeyDown={handleKeyDown}>\n <InputLike\n length={2}\n getRootRef={daysStartRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeStartDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsStartRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeStartMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsStartRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeStartYearAriaLabel}\n />\n <InputLikeDivider>{\" — \"}</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={daysEndRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeEndDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsEndRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeEndMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsEndRef}\n index={5}\n onElementSelect={setFocusedElement}\n value={internalValue[5]}\n aria-label={changeEndYearAriaLabel}\n />\n </span>\n {open && (\n <Popper\n targetRef={rootRef}\n offsetDistance={8}\n placement={calendarPlacement}\n >\n <CalendarRange\n value={value}\n onChange={onCalendarChange}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n disablePickers={disablePickers}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"file":"DateRangeInput.js"}
|
|
@@ -24,7 +24,7 @@ export var Epic = function Epic(props) {
|
|
|
24
24
|
restProps = _objectWithoutProperties(props, _excluded);
|
|
25
25
|
|
|
26
26
|
if (process.env.NODE_ENV === "development" && !tabbar && viewWidth < ViewWidth.SMALL_TABLET) {
|
|
27
|
-
warn("
|
|
27
|
+
warn("\u041D\u0435 \u0440\u0435\u043A\u043E\u043C\u0435\u043D\u0434\u0443\u0435\u0442\u0441\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C Epic \u0431\u0435\u0437 Tabbar \u043F\u0440\u0438 \u0448\u0438\u0440\u0438\u043D\u0435 \u043E\u043A\u043D\u0430 \u043C\u0435\u043D\u044C\u0448\u0435 ".concat(ViewWidth.SMALL_TABLET, "px"));
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
var story = (_ref = React.Children.toArray(children).find(function (story) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Epic/Epic.tsx"],"names":["React","getClassName","usePlatform","withAdaptivity","ViewWidth","ScrollSaver","getNavId","warnOnce","warn","Epic","props","platform","scroll","useRef","current","activeStory","tabbar","children","viewWidth","restProps","process","env","NODE_ENV","SMALL_TABLET","story","Children","toArray","find","isValidElement","value"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,cAAT,EAAyBC,SAAzB;AACA,SAASC,WAAT;AACA,SAASC,QAAT;AACA,SAASC,QAAT;AAKA;AASA,IAAMC,IAAI,GAAGD,QAAQ,CAAC,MAAD,CAArB;AAEA,OAAO,IAAME,IAAsD,GAAG,SAAzDA,IAAyD,CACpEC,KADoE,EAEjE;AAAA;;AACH,MAAMC,QAAQ,GAAGT,WAAW,EAA5B;AACA,MAAMU,MAAM,GAAGZ,KAAK,CAACa,MAAN,CAAwC,EAAxC,EAA4CC,OAA3D;;AACA,MAAQC,WAAR,GAAmEL,KAAnE,CAAQK,WAAR;AAAA,MAAqBC,MAArB,GAAmEN,KAAnE,CAAqBM,MAArB;AAAA,MAA6BC,QAA7B,GAAmEP,KAAnE,CAA6BO,QAA7B;AAAA,MAAuCC,SAAvC,GAAmER,KAAnE,CAAuCQ,SAAvC;AAAA,MAAqDC,SAArD,4BAAmET,KAAnE;;AAEA,MACEU,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,CAACN,MADD,IAEAE,SAAS,GAAGd,SAAS,CAACmB,YAHxB,EAIE;AACAf,IAAAA,IAAI,
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Epic/Epic.tsx"],"names":["React","getClassName","usePlatform","withAdaptivity","ViewWidth","ScrollSaver","getNavId","warnOnce","warn","Epic","props","platform","scroll","useRef","current","activeStory","tabbar","children","viewWidth","restProps","process","env","NODE_ENV","SMALL_TABLET","story","Children","toArray","find","isValidElement","value"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,cAAT,EAAyBC,SAAzB;AACA,SAASC,WAAT;AACA,SAASC,QAAT;AACA,SAASC,QAAT;AAKA;AASA,IAAMC,IAAI,GAAGD,QAAQ,CAAC,MAAD,CAArB;AAEA,OAAO,IAAME,IAAsD,GAAG,SAAzDA,IAAyD,CACpEC,KADoE,EAEjE;AAAA;;AACH,MAAMC,QAAQ,GAAGT,WAAW,EAA5B;AACA,MAAMU,MAAM,GAAGZ,KAAK,CAACa,MAAN,CAAwC,EAAxC,EAA4CC,OAA3D;;AACA,MAAQC,WAAR,GAAmEL,KAAnE,CAAQK,WAAR;AAAA,MAAqBC,MAArB,GAAmEN,KAAnE,CAAqBM,MAArB;AAAA,MAA6BC,QAA7B,GAAmEP,KAAnE,CAA6BO,QAA7B;AAAA,MAAuCC,SAAvC,GAAmER,KAAnE,CAAuCQ,SAAvC;AAAA,MAAqDC,SAArD,4BAAmET,KAAnE;;AAEA,MACEU,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,CAACN,MADD,IAEAE,SAAS,GAAGd,SAAS,CAACmB,YAHxB,EAIE;AACAf,IAAAA,IAAI,qUACsEJ,SAAS,CAACmB,YADhF,QAAJ;AAGD;;AACD,MAAMC,KAAK,WACRxB,KAAK,CAACyB,QAAN,CAAeC,OAAf,CAAuBT,QAAvB,EAAiCU,IAAjC,CACC,UAACH,KAAD;AAAA,WACE,aAAAxB,KAAK,CAAC4B,cAAN,CAAqBJ,KAArB,KACAlB,QAAQ,CAACkB,KAAK,CAACd,KAAP,EAAcF,IAAd,CAAR,KAAgCO,WAFlC;AAAA,GADD,CADQ,uCAK+B,IAL1C;AAOA,SACE,wCAASI,SAAT;AAAoB,IAAA,SAAS,EAAElB,YAAY,CAAC,MAAD,EAASU,QAAT;AAA3C,MACE,oBAAC,WAAD;AACE,IAAA,GAAG,EAAEI,WADP;AAEE,IAAA,aAAa,EAAEH,MAAM,CAACG,WAAD,CAAN,IAAuB,CAFxC;AAGE,IAAA,UAAU,EAAE,oBAACc,KAAD;AAAA,aAAYjB,MAAM,CAACG,WAAD,CAAN,GAAsBc,KAAlC;AAAA;AAHd,KAKGL,KALH,CADF,EAQGR,MARH,CADF;AAYD,CAnCM,C,CAqCP;;AACA,eAAeb,cAAc,CAACM,IAAD,EAAO;AAClCS,EAAAA,SAAS,EAAE;AADuB,CAAP,CAA7B","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { withAdaptivity, ViewWidth } from \"../../hoc/withAdaptivity\";\nimport { ScrollSaver } from \"./ScrollSaver\";\nimport { getNavId } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport {\n AdaptivityContextInterface,\n AdaptivityProps,\n} from \"../AdaptivityProvider/AdaptivityContext\";\nimport \"./Epic.css\";\n\nexport interface EpicProps\n extends React.HTMLAttributes<HTMLDivElement>,\n AdaptivityProps {\n tabbar?: React.ReactNode;\n activeStory: string;\n}\n\nconst warn = warnOnce(\"Epic\");\n\nexport const Epic: React.FC<EpicProps & AdaptivityContextInterface> = (\n props\n) => {\n const platform = usePlatform();\n const scroll = React.useRef<{ [key: string]: number }>({}).current;\n const { activeStory, tabbar, children, viewWidth, ...restProps } = props;\n\n if (\n process.env.NODE_ENV === \"development\" &&\n !tabbar &&\n viewWidth < ViewWidth.SMALL_TABLET\n ) {\n warn(\n `Не рекомендуется использовать Epic без Tabbar при ширине окна меньше ${ViewWidth.SMALL_TABLET}px`\n );\n }\n const story =\n (React.Children.toArray(children).find(\n (story) =>\n React.isValidElement(story) &&\n getNavId(story.props, warn) === activeStory\n ) as React.ReactElement | undefined) ?? null;\n\n return (\n <div {...restProps} vkuiClass={getClassName(\"Epic\", platform)}>\n <ScrollSaver\n key={activeStory}\n initialScroll={scroll[activeStory] || 0}\n saveScroll={(value) => (scroll[activeStory] = value)}\n >\n {story}\n </ScrollSaver>\n {tabbar}\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(Epic, {\n viewWidth: true,\n});\n"],"file":"Epic.js"}
|
|
@@ -3,7 +3,7 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
|
|
|
3
3
|
var _excluded = ["children", "align", "controlSize", "mode", "stretched", "before", "className", "style", "getRef", "getRootRef", "onClick", "appearance"];
|
|
4
4
|
import { createScopedElement } from "../../lib/jsxRuntime";
|
|
5
5
|
import { getClassName } from "../../helpers/getClassName";
|
|
6
|
-
import Button from "../Button/Button";
|
|
6
|
+
import { Button } from "../Button/Button";
|
|
7
7
|
import { usePlatform } from "../../hooks/usePlatform";
|
|
8
8
|
import { useExternRef } from "../../hooks/useExternRef";
|
|
9
9
|
import "./File.css";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/File/File.tsx"],"names":["getClassName","Button","usePlatform","useExternRef","File","props","children","align","controlSize","mode","stretched","before","className","style","getRef","getRootRef","onClick","appearance","restProps","platform","inputRef","disabled","e","current","click","defaultProps"],"mappings":";;;;AACA,SAASA,YAAT;AACA,
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/File/File.tsx"],"names":["getClassName","Button","usePlatform","useExternRef","File","props","children","align","controlSize","mode","stretched","before","className","style","getRef","getRootRef","onClick","appearance","restProps","platform","inputRef","disabled","e","current","click","defaultProps"],"mappings":";;;;AACA,SAASA,YAAT;AACA,SAASC,MAAT;AAEA,SAASC,WAAT;AACA,SAASC,YAAT;AACA;;AAWA,IAAMC,IAAwC,GAAG,SAA3CA,IAA2C,CAACC,KAAD,EAAsB;AACrE,MACEC,QADF,GAcID,KAdJ,CACEC,QADF;AAAA,MAEEC,KAFF,GAcIF,KAdJ,CAEEE,KAFF;AAAA,MAGEC,WAHF,GAcIH,KAdJ,CAGEG,WAHF;AAAA,MAIEC,IAJF,GAcIJ,KAdJ,CAIEI,IAJF;AAAA,MAKEC,SALF,GAcIL,KAdJ,CAKEK,SALF;AAAA,MAMEC,MANF,GAcIN,KAdJ,CAMEM,MANF;AAAA,MAOEC,SAPF,GAcIP,KAdJ,CAOEO,SAPF;AAAA,MAQEC,KARF,GAcIR,KAdJ,CAQEQ,KARF;AAAA,MASEC,MATF,GAcIT,KAdJ,CASES,MATF;AAAA,MAUEC,UAVF,GAcIV,KAdJ,CAUEU,UAVF;AAAA,MAWEC,QAXF,GAcIX,KAdJ,CAWEW,OAXF;AAAA,MAYEC,UAZF,GAcIZ,KAdJ,CAYEY,UAZF;AAAA,MAaKC,SAbL,4BAcIb,KAdJ;;AAgBA,MAAMc,QAAQ,GAAGjB,WAAW,EAA5B;AACA,MAAMkB,QAAQ,GAAGjB,YAAY,CAACW,MAAD,CAA7B;AAEA,SACE,oBAAC,MAAD;AACE,IAAA,KAAK,EAAEP,KADT;AAEE,IAAA,SAAS,EAAEP,YAAY,CAAC,MAAD,EAASmB,QAAT,CAFzB;AAGE,IAAA,SAAS,EAAEP,SAHb;AAIE,IAAA,SAAS,EAAEF,SAJb;AAKE,IAAA,IAAI,EAAED,IALR;AAME,IAAA,UAAU,EAAEQ,UANd;AAOE,IAAA,IAAI,EAAET,WAPR;AAQE,IAAA,MAAM,EAAEG,MARV;AASE,IAAA,KAAK,EAAEE,KATT;AAUE,IAAA,UAAU,EAAEE,UAVd;AAWE,IAAA,QAAQ,EAAEG,SAAS,CAACG,QAXtB;AAYE,IAAA,IAAI,EAAC,QAZP;AAaE,IAAA,OAAO,EAAE,iBAACC,CAAD,EAAO;AAAA;;AACd,2BAAAF,QAAQ,CAACG,OAAT,wEAAkBC,KAAlB;AACAR,MAAAA,QAAO,IAAIA,QAAO,CAACM,CAAD,CAAlB;AACD;AAhBH,KAkBE,0CACMJ,SADN;AAEE,IAAA,SAAS,EAAC,aAFZ;AAGE,IAAA,IAAI,EAAC,MAHP;AAIE,IAAA,GAAG,EAAEE;AAJP,KAlBF,EAwBGd,QAxBH,CADF;AA4BD,CAhDD;;AAkDAF,IAAI,CAACqB,YAAL,GAAoB;AAClBnB,EAAAA,QAAQ,EAAE,eADQ;AAElBC,EAAAA,KAAK,EAAE;AAFW,CAApB,C,CAKA;;AACA,eAAeH,IAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { Button, VKUIButtonProps } from \"../Button/Button\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport \"./File.css\";\n\nexport interface FileProps\n extends Omit<VKUIButtonProps, \"size\" | \"type\">,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, \"onClick\" | \"type\">,\n Pick<React.HTMLAttributes<HTMLElement>, \"onClick\">,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLElement> {\n controlSize?: VKUIButtonProps[\"size\"];\n}\n\nconst File: React.FunctionComponent<FileProps> = (props: FileProps) => {\n const {\n children,\n align,\n controlSize,\n mode,\n stretched,\n before,\n className,\n style,\n getRef,\n getRootRef,\n onClick,\n appearance,\n ...restProps\n } = props;\n\n const platform = usePlatform();\n const inputRef = useExternRef(getRef);\n\n return (\n <Button\n align={align}\n vkuiClass={getClassName(\"File\", platform)}\n className={className}\n stretched={stretched}\n mode={mode}\n appearance={appearance}\n size={controlSize}\n before={before}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n type=\"button\"\n onClick={(e) => {\n inputRef.current?.click();\n onClick && onClick(e);\n }}\n >\n <input\n {...restProps}\n vkuiClass=\"File__input\"\n type=\"file\"\n ref={inputRef}\n />\n {children}\n </Button>\n );\n};\n\nFile.defaultProps = {\n children: \"Выберите файл\",\n align: \"left\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default File;\n"],"file":"File.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.vkuiFixedLayout{position:fixed;box-sizing:border-box;left:auto;z-index:3;padding-left:0;padding-left:var(--safe-area-inset-left);padding-right:0;padding-right:var(--safe-area-inset-right)}.vkuiFixedLayout--filled{background:#fff;background:var(--background_content)}.vkuiFixedLayout--top{width:100%;top:0}.vkuiFixedLayout--bottom{width:100%;bottom:0;padding-bottom:0;padding-bottom:var(--safe-area-inset-bottom)}.vkuiEpic .vkuiFixedLayout--bottom{padding-bottom:calc(48px + 0px);padding-bottom:calc(var(--tabbar_height) + var(--safe-area-inset-bottom))}
|
|
1
|
+
.vkuiFixedLayout{position:fixed;box-sizing:border-box;left:auto;z-index:3;padding-left:0;padding-left:var(--safe-area-inset-left);padding-right:0;padding-right:var(--safe-area-inset-right)}.vkuiFixedLayout--filled{background:#fff;background:var(--background_content)}.vkuiFixedLayout--top{width:100%;top:0;left:0}.vkuiFixedLayout--bottom{width:100%;left:0;bottom:0;padding-bottom:0;padding-bottom:var(--safe-area-inset-bottom)}.vkuiEpic .vkuiFixedLayout--bottom{padding-bottom:calc(48px + 0px);padding-bottom:calc(var(--tabbar_height) + var(--safe-area-inset-bottom))}
|
|
@@ -44,7 +44,8 @@ var FixedLayout = function FixedLayout(_ref) {
|
|
|
44
44
|
useGlobalEventListener(window, "resize", doResize);
|
|
45
45
|
return createScopedElement(TooltipContainer, _extends({}, restProps, {
|
|
46
46
|
fixed: true,
|
|
47
|
-
ref: getRootRef
|
|
47
|
+
ref: getRootRef // eslint-disable-next-line vkui/no-object-expression-in-arguments
|
|
48
|
+
,
|
|
48
49
|
vkuiClass: classNames(getClassName("FixedLayout", platform), {
|
|
49
50
|
"FixedLayout--filled": filled
|
|
50
51
|
}, "FixedLayout--".concat(vertical)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/FixedLayout/FixedLayout.tsx"],"names":["React","getClassName","classNames","SplitColContext","TooltipContainer","useDOM","useGlobalEventListener","usePlatform","FixedLayout","children","style","vertical","getRootRef","getRef","filled","restProps","platform","useState","undefined","width","setWidth","window","useContext","colRef","doResize","current","offsetWidth","useEffect"],"mappings":";;;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AAEA,SAASC,eAAT;AACA,SAASC,gBAAT;AACA,SAASC,MAAT;AACA,SAASC,sBAAT;AACA,SAASC,WAAT;AACA;;AAqBA,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,OAQxB;AAAA,MAPtBC,QAOsB,QAPtBA,QAOsB;AAAA,MANtBC,KAMsB,QANtBA,KAMsB;AAAA,MALtBC,QAKsB,QALtBA,QAKsB;AAAA,MAJtBC,UAIsB,QAJtBA,UAIsB;AAAA,MAHtBC,MAGsB,QAHtBA,MAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,SACmB;;AACtB,MAAMC,QAAQ,GAAGT,WAAW,EAA5B;;AACA,wBAA0BP,KAAK,CAACiB,QAAN,CAAmCC,SAAnC,CAA1B;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,gBAAmBf,MAAM,EAAzB;AAAA,MAAQgB,MAAR,WAAQA,MAAR;;AACA,0BAAmBrB,KAAK,CAACsB,UAAN,CAAiBnB,eAAjB,CAAnB;AAAA,MAAQoB,MAAR,qBAAQA,MAAR;;AACA,MAAMC,QAAQ,GAAG,SAAXA,QAAW;AAAA,WACfJ,QAAQ,CAACG,MAAM,SAAN,IAAAA,MAAM,WAAN,IAAAA,MAAM,CAAEE,OAAR,aAAqBF,MAAM,CAACE,OAAP,CAAeC,WAApC,UAAsDR,SAAvD,CADO;AAAA,GAAjB;;AAEAlB,EAAAA,KAAK,CAAC2B,SAAN,CAAgBH,QAAhB,EAA0B,CAACD,MAAD,CAA1B;AACAjB,EAAAA,sBAAsB,CAACe,MAAD,EAAS,QAAT,EAAmBG,QAAnB,CAAtB;AAEA,SACE,oBAAC,gBAAD,eACMT,SADN;AAEE,IAAA,KAAK,MAFP;AAGE,IAAA,GAAG,EAAEH,UAHP;
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/FixedLayout/FixedLayout.tsx"],"names":["React","getClassName","classNames","SplitColContext","TooltipContainer","useDOM","useGlobalEventListener","usePlatform","FixedLayout","children","style","vertical","getRootRef","getRef","filled","restProps","platform","useState","undefined","width","setWidth","window","useContext","colRef","doResize","current","offsetWidth","useEffect"],"mappings":";;;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AAEA,SAASC,eAAT;AACA,SAASC,gBAAT;AACA,SAASC,MAAT;AACA,SAASC,sBAAT;AACA,SAASC,WAAT;AACA;;AAqBA,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,OAQxB;AAAA,MAPtBC,QAOsB,QAPtBA,QAOsB;AAAA,MANtBC,KAMsB,QANtBA,KAMsB;AAAA,MALtBC,QAKsB,QALtBA,QAKsB;AAAA,MAJtBC,UAIsB,QAJtBA,UAIsB;AAAA,MAHtBC,MAGsB,QAHtBA,MAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,SACmB;;AACtB,MAAMC,QAAQ,GAAGT,WAAW,EAA5B;;AACA,wBAA0BP,KAAK,CAACiB,QAAN,CAAmCC,SAAnC,CAA1B;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,gBAAmBf,MAAM,EAAzB;AAAA,MAAQgB,MAAR,WAAQA,MAAR;;AACA,0BAAmBrB,KAAK,CAACsB,UAAN,CAAiBnB,eAAjB,CAAnB;AAAA,MAAQoB,MAAR,qBAAQA,MAAR;;AACA,MAAMC,QAAQ,GAAG,SAAXA,QAAW;AAAA,WACfJ,QAAQ,CAACG,MAAM,SAAN,IAAAA,MAAM,WAAN,IAAAA,MAAM,CAAEE,OAAR,aAAqBF,MAAM,CAACE,OAAP,CAAeC,WAApC,UAAsDR,SAAvD,CADO;AAAA,GAAjB;;AAEAlB,EAAAA,KAAK,CAAC2B,SAAN,CAAgBH,QAAhB,EAA0B,CAACD,MAAD,CAA1B;AACAjB,EAAAA,sBAAsB,CAACe,MAAD,EAAS,QAAT,EAAmBG,QAAnB,CAAtB;AAEA,SACE,oBAAC,gBAAD,eACMT,SADN;AAEE,IAAA,KAAK,MAFP;AAGE,IAAA,GAAG,EAAEH,UAHP,CAIE;AAJF;AAKE,IAAA,SAAS,EAAEV,UAAU,CACnBD,YAAY,CAAC,aAAD,EAAgBe,QAAhB,CADO,EAEnB;AACE,6BAAuBF;AADzB,KAFmB,yBAKHH,QALG,EALvB;AAYE,IAAA,KAAK,kCAAOD,KAAP;AAAcS,MAAAA,KAAK,EAALA;AAAd;AAZP,MAcE;AAAK,IAAA,SAAS,EAAC,iBAAf;AAAiC,IAAA,GAAG,EAAEN;AAAtC,KACGJ,QADH,CAdF,CADF;AAoBD,CAtCD,C,CAwCA;;;AACA,eAAeD,WAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { SplitColContext } from \"../SplitCol/SplitCol\";\nimport { TooltipContainer } from \"../Tooltip/TooltipContainer\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./FixedLayout.css\";\n\nexport interface FixedLayoutProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n vertical?: \"top\" | \"bottom\";\n /**\n * Это свойство определяет, будет ли фон компонента окрашен в цвет фона контента.\n * Это часто необходимо для фиксированных кнопок в нижней части экрана.\n */\n filled?: boolean;\n}\n\nexport interface FixedLayoutState {\n position: \"absolute\" | null;\n top: number;\n bottom: number;\n width: string;\n}\n\nconst FixedLayout: React.FC<FixedLayoutProps> = ({\n children,\n style,\n vertical,\n getRootRef,\n getRef,\n filled,\n ...restProps\n}: FixedLayoutProps) => {\n const platform = usePlatform();\n const [width, setWidth] = React.useState<string | undefined>(undefined);\n const { window } = useDOM();\n const { colRef } = React.useContext(SplitColContext);\n const doResize = () =>\n setWidth(colRef?.current ? `${colRef.current.offsetWidth}px` : undefined);\n React.useEffect(doResize, [colRef]);\n useGlobalEventListener(window, \"resize\", doResize);\n\n return (\n <TooltipContainer\n {...restProps}\n fixed\n ref={getRootRef}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\n getClassName(\"FixedLayout\", platform),\n {\n \"FixedLayout--filled\": filled,\n },\n `FixedLayout--${vertical}`\n )}\n style={{ ...style, width }}\n >\n <div vkuiClass=\"FixedLayout__in\" ref={getRef}>\n {children}\n </div>\n </TooltipContainer>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default FixedLayout;\n"],"file":"FixedLayout.js"}
|
|
@@ -1 +1,5 @@
|
|
|
1
|
-
.vkuiFormField{position:relative;display:flex;align-items:center;padding:1px;box-sizing:border-box;border-radius:8px}.vkuiFormField>*{border-radius:inherit}.vkuiFormField__after{flex-shrink:0;position:relative;display:flex;align-items:center;align-content:center;justify-content:center;min-width:44px;height:44px;margin:-1px;color:#99a2ad;color:var(--icon_secondary);z-index:2}.vkuiChipsInput .vkuiFormField__after{z-index:3}.vkuiFormField__border{position:absolute;left:0;top:0;width:100%;height:100%;border:1px solid rgba(0,0,0,.12);border:
|
|
1
|
+
.vkuiFormField{position:relative;display:flex;align-items:center;padding:1px;box-sizing:border-box;border-radius:8px;border-radius:var(--vkui--size_border_radius--regular)}.vkuiFormField>*{border-radius:inherit}.vkuiFormField__before,.vkuiFormField__after{flex-shrink:0;position:relative;display:flex;align-items:center;align-content:center;justify-content:center;min-width:44px;height:44px;margin:-1px;color:#99a2ad;color:var(--icon_secondary, var(--vkui--color_icon_secondary));z-index:2}.vkuiFormField__before{color:#2688eb;color:var(--vkui--color_icon_accent)}.vkuiFormField__after{color:#99a2ad;color:var(--icon_secondary, var(--vkui--color_icon_secondary))}.vkuiChipsInput .vkuiFormField__after{z-index:3}.vkuiFormField__border{position:absolute;left:0;top:0;width:100%;height:100%;border:1px solid rgba(0,0,0,.12);border:var(--thin-border) solid var(--field_border, var(--vkui--color_field_border_alpha));background:#f2f3f5;background:var(--field_background, var(--vkui--color_field_background));content:"";box-sizing:border-box;z-index:1;-webkit-transform-origin:left top;transform-origin:left top}.vkuiFormItem--error .vkuiFormField__border{background:#faebeb;background:var(--field_error_background,
|
|
2
|
+
var(--vkui--color_background_negative_tint)
|
|
3
|
+
);border-color:#e64646;border-color:var(--field_error_border, var(--vkui--color_stroke_negative))}.vkuiFormItem--valid .vkuiFormField__border{border-color:#4bb34b;border-color:var(--field_valid_border, var(--vkui--color_stroke_positive))}.vkuiFormField--disabled{opacity:.64;opacity:var(--vkui--opacity_disable_accessibility);cursor:default;pointer-events:none}.vkuiFormField:not(.vkuiFormField--disabled) .vkuiFormField__border--hover{border-color:rgba(0,0,0,.24);border-color:var(--icon_tertiary_alpha,
|
|
4
|
+
var(--vkui--color_field_border_alpha--hover)
|
|
5
|
+
)}.vkuiFormField:focus-within .vkuiFormField__border,.vkuiFormField :focus~.vkuiFormField__border,.vkuiChipsInput--focused .vkuiFormField__border{border-color:#2688eb;border-color:var(--accent, var(--vkui--color_stroke_accent));background:#f2f3f5;background:var(--field_background, var(--vkui--color_field_background))}.vkuiFormField--sizeY-compact .vkuiFormField__before,.vkuiFormField--sizeY-compact .vkuiFormField__after{min-width:36px;height:36px}.vkuiModalCardBase__header+.vkuiFormField,.vkuiModalCardBase__subheader+.vkuiFormField{margin-top:16px}.vkuiSelect--mimicry-plain .vkuiFormField__after,.vkuiSelect--mimicry-plain .vkuiFormField--sizeY-compact .vkuiFormField__after{justify-content:flex-start;min-width:0;height:auto}.vkuiCustomSelect__open.vkuiSelect--mimicry:focus .vkuiFormField__border{border-color:rgba(0,0,0,.12);border-color:var(--field_border, var(--vkui--color_field_border_alpha))}.vkuiCustomSelect__open:not(.vkuiCustomSelect__open--popupDirectionTop):not(.vkuiCustomSelect__open--not-adjacent) .vkuiFormField__border{border-bottom-left-radius:0;border-bottom-right-radius:0}.vkuiCustomSelect__open.vkuiCustomSelect__open--popupDirectionTop:not(.vkuiCustomSelect__open--not-adjacent) .vkuiFormField__border{border-top-left-radius:0;border-top-right-radius:0}.vkuiCustomSelect__open.vkuiSelect--mimicry-plain.vkuiSelect--mimicry:focus .vkuiFormField__border,.vkuiFormField:not(.vkuiFormField--disabled) .vkuiFormField__border--hover{background-color:#ebedf0;background-color:var(--background_page, var(--vkui--color_field_background))}
|
|
@@ -3,7 +3,21 @@ import { HasComponent, HasRootRef } from "../../types";
|
|
|
3
3
|
import "./FormField.css";
|
|
4
4
|
export interface FormFieldProps {
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Добавляет иконку слева.
|
|
7
|
+
*
|
|
8
|
+
* Рекомендации:
|
|
9
|
+
*
|
|
10
|
+
* - Используйте следующие размеры иконок `12` | `16` | `20` | `24` | `28`.
|
|
11
|
+
* - Используйте [IconButton](#/IconButton), если вам нужна кликабельная иконка.
|
|
12
|
+
*/
|
|
13
|
+
before?: React.ReactNode;
|
|
14
|
+
/**
|
|
15
|
+
* Добавляет иконку справа.
|
|
16
|
+
*
|
|
17
|
+
* Рекомендации:
|
|
18
|
+
*
|
|
19
|
+
* - Используйте следующие размеры иконок `12` | `16` | `20` | `24` | `28`.
|
|
20
|
+
* - Используйте [IconButton](#/IconButton), если вам нужна кликабельная иконка.
|
|
7
21
|
*/
|
|
8
22
|
after?: React.ReactNode;
|
|
9
23
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
3
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
4
|
-
var _excluded = ["Component", "children", "getRootRef", "after", "disabled"];
|
|
4
|
+
var _excluded = ["Component", "children", "getRootRef", "before", "after", "disabled"];
|
|
5
5
|
import { createScopedElement } from "../../lib/jsxRuntime";
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { getClassName } from "../../helpers/getClassName";
|
|
@@ -15,6 +15,7 @@ export var FormField = function FormField(_ref) {
|
|
|
15
15
|
Component = _ref$Component === void 0 ? "div" : _ref$Component,
|
|
16
16
|
children = _ref.children,
|
|
17
17
|
getRootRef = _ref.getRootRef,
|
|
18
|
+
before = _ref.before,
|
|
18
19
|
after = _ref.after,
|
|
19
20
|
disabled = _ref.disabled,
|
|
20
21
|
restProps = _objectWithoutProperties(_ref, _excluded);
|
|
@@ -45,17 +46,16 @@ export var FormField = function FormField(_ref) {
|
|
|
45
46
|
ref: getRootRef,
|
|
46
47
|
onMouseEnter: handleMouseEnter,
|
|
47
48
|
onMouseLeave: handleMouseLeave,
|
|
48
|
-
vkuiClass: classNames(getClassName("FormField", platform), "FormField--sizeY-".concat(sizeY),
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
vkuiClass: classNames(getClassName("FormField", platform), "FormField--sizeY-".concat(sizeY), disabled && "FormField--disabled")
|
|
50
|
+
}), hasReactNode(before) && createScopedElement("div", {
|
|
51
|
+
role: "presentation",
|
|
52
|
+
vkuiClass: "FormField__before"
|
|
53
|
+
}, before), children, hasReactNode(after) && createScopedElement("div", {
|
|
52
54
|
role: "presentation",
|
|
53
55
|
vkuiClass: "FormField__after"
|
|
54
56
|
}, after), createScopedElement("div", {
|
|
55
57
|
role: "presentation",
|
|
56
|
-
vkuiClass: classNames("FormField__border",
|
|
57
|
-
"FormField__border--hover": !disabled && hover
|
|
58
|
-
})
|
|
58
|
+
vkuiClass: classNames("FormField__border", !disabled && hover && "FormField__border--hover")
|
|
59
59
|
}));
|
|
60
60
|
};
|
|
61
61
|
//# sourceMappingURL=FormField.js.map
|