@megafon/ui-core 6.0.0-beta.4 → 6.0.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/CHANGELOG.md +4008 -0
- package/dist/es/colors/ColorItem/ColorItem.css +45 -1
- package/dist/es/colors/ColorItem/ColorItem.d.ts +2 -2
- package/dist/es/colors/ColorItem/ColorItem.js +7 -5
- package/dist/es/colors/Colors.css +233 -1
- package/dist/es/colors/Colors.d.ts +1 -1
- package/dist/es/colors/Colors.js +55 -33
- package/dist/es/colors/colorsData.d.ts +4 -4
- package/dist/es/components/Accordion/Accordion.css +89 -1
- package/dist/es/components/Accordion/Accordion.d.ts +1 -2
- package/dist/es/components/Accordion/Accordion.js +65 -22
- package/dist/es/components/Avatar/Avatar.css +52 -1
- package/dist/es/components/Avatar/Avatar.d.ts +1 -1
- package/dist/es/components/Avatar/Avatar.js +27 -9
- package/dist/es/components/Avatar/doc/i/img.png +0 -0
- package/dist/es/components/Badges/components/CounterBadge/CounterBadge.css +54 -0
- package/dist/es/components/Badges/{CounterBadge → components/CounterBadge}/CounterBadge.d.ts +2 -2
- package/dist/es/components/Badges/{CounterBadge → components/CounterBadge}/CounterBadge.js +28 -10
- package/dist/es/components/Badges/components/NotificationBadge/NotificationBadge.css +58 -0
- package/dist/es/components/Badges/{NotificationBadge → components/NotificationBadge}/NotificationBadge.d.ts +4 -3
- package/dist/es/components/Badges/components/NotificationBadge/NotificationBadge.js +49 -0
- package/dist/es/components/Badges/components/PriceBadge/PriceBadge.css +119 -0
- package/dist/es/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.d.ts +4 -4
- package/dist/es/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.js +54 -11
- package/dist/es/components/Badges/components/PromoBadge/PromoBadge.css +64 -0
- package/dist/{lib/components/Badges → es/components/Badges/components}/PromoBadge/PromoBadge.d.ts +3 -3
- package/dist/es/components/Badges/{PromoBadge → components/PromoBadge}/PromoBadge.js +21 -7
- package/dist/es/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.js +32 -5
- package/dist/es/components/Badges/components/TimerBadge/TimerBadge.css +60 -0
- package/dist/{lib/components/Badges → es/components/Badges/components}/TimerBadge/TimerBadge.d.ts +2 -2
- package/dist/es/components/Badges/{TimerBadge → components/TimerBadge}/TimerBadge.js +45 -22
- package/dist/es/components/Banner/Banner.css +195 -1
- package/dist/es/components/Banner/Banner.d.ts +4 -5
- package/dist/es/components/Banner/Banner.js +129 -64
- package/dist/es/components/Banner/BannerDot.css +69 -1
- package/dist/es/components/Banner/BannerDot.d.ts +1 -1
- package/dist/es/components/Banner/BannerDot.js +22 -6
- package/dist/es/components/Banner/slidesSettings.d.ts +2 -4
- package/dist/es/components/Banner/slidesSettings.js +6 -3
- package/dist/es/components/Button/Button.css +814 -1
- package/dist/es/components/Button/Button.d.ts +6 -7
- package/dist/es/components/Button/Button.js +104 -44
- package/dist/es/components/Calendar/Calendar.css +5 -1
- package/dist/es/components/Calendar/Calendar.d.ts +2 -2
- package/dist/es/components/Calendar/Calendar.js +114 -60
- package/dist/es/components/Calendar/components/Day/Day.css +128 -0
- package/dist/{lib/components/Calendar/components/_Day → es/components/Calendar/components/Day}/Day.d.ts +4 -4
- package/dist/es/components/Calendar/components/{_Day → Day}/Day.js +50 -19
- package/dist/es/components/Calendar/components/Month/Month.css +81 -0
- package/dist/es/components/Calendar/components/{_Month → Month}/Month.d.ts +2 -3
- package/dist/es/components/Calendar/components/{_Month → Month}/Month.js +33 -9
- package/dist/es/components/Caption/Caption.css +48 -1
- package/dist/es/components/Caption/Caption.d.ts +2 -4
- package/dist/es/components/Caption/Caption.js +25 -11
- package/dist/es/components/Carousel/Carousel.css +215 -1
- package/dist/es/components/Carousel/Carousel.d.ts +10 -11
- package/dist/es/components/Carousel/Carousel.js +161 -104
- package/dist/es/components/Carousel/checkBreakpointsPropTypes.d.ts +1 -1
- package/dist/es/components/Carousel/checkBreakpointsPropTypes.js +4 -1
- package/dist/es/components/Carousel/useGradient.d.ts +1 -1
- package/dist/es/components/Carousel/useGradient.js +13 -9
- package/dist/es/components/Checkbox/Checkbox.css +150 -1
- package/dist/es/components/Checkbox/Checkbox.d.ts +4 -4
- package/dist/es/components/Checkbox/Checkbox.js +50 -21
- package/dist/es/components/Chips/Chip.css +132 -1
- package/dist/es/components/Chips/Chip.d.ts +26 -6
- package/dist/es/components/Chips/Chip.js +42 -17
- package/dist/es/components/Chips/Chips.css +19 -1
- package/dist/es/components/Chips/Chips.d.ts +2 -2
- package/dist/es/components/Chips/Chips.js +56 -32
- package/dist/es/components/Chips/components/ChipsDropdown.css +106 -1
- package/dist/es/components/Chips/components/ChipsDropdown.d.ts +2 -2
- package/dist/es/components/Chips/components/ChipsDropdown.js +27 -12
- package/dist/es/components/Collapse/Collapse.css +3 -0
- package/dist/{lib/components/_Collapse → es/components/Collapse}/Collapse.d.ts +3 -3
- package/dist/es/components/{_Collapse → Collapse}/Collapse.js +62 -25
- package/dist/es/components/ContentArea/ContentArea.css +109 -1
- package/dist/es/components/ContentArea/ContentArea.d.ts +4 -5
- package/dist/es/components/ContentArea/ContentArea.js +28 -9
- package/dist/es/components/ContentView/ContentView.css +103 -1
- package/dist/es/components/ContentView/ContentView.d.ts +2 -3
- package/dist/es/components/ContentView/ContentView.js +46 -12
- package/dist/es/components/Counter/Counter.css +123 -1
- package/dist/es/components/Counter/Counter.d.ts +1 -1
- package/dist/es/components/Counter/Counter.js +55 -20
- package/dist/es/components/Grid/Grid.css +102 -1
- package/dist/es/components/Grid/Grid.d.ts +1 -1
- package/dist/es/components/Grid/Grid.js +24 -8
- package/dist/es/components/Grid/GridColumn.css +3102 -1
- package/dist/es/components/Grid/GridColumn.d.ts +2 -2
- package/dist/es/components/Grid/GridColumn.js +62 -33
- package/dist/es/components/Header/Header.css +122 -1
- package/dist/es/components/Header/Header.d.ts +1 -3
- package/dist/es/components/Header/Header.js +28 -13
- package/dist/es/components/Link/Link.d.ts +2 -2
- package/dist/es/components/Link/Link.js +25 -9
- package/dist/es/components/List/List.css +66 -1
- package/dist/es/components/List/List.d.ts +1 -2
- package/dist/es/components/List/List.js +18 -8
- package/dist/es/components/List/ListItem.css +6 -1
- package/dist/es/components/List/ListItem.d.ts +1 -2
- package/dist/es/components/List/ListItem.js +7 -1
- package/dist/es/components/ListData/ListData.css +162 -1
- package/dist/es/components/ListData/ListData.d.ts +34 -6
- package/dist/es/components/ListData/ListData.js +65 -22
- package/dist/es/components/ListData/ListDataGroup.css +15 -1
- package/dist/es/components/ListData/ListDataGroup.d.ts +4 -4
- package/dist/es/components/ListData/ListDataGroup.js +74 -29
- package/dist/es/components/ListData/components/ListDataSortable.css +79 -1
- package/dist/es/components/ListData/components/ListDataSortable.d.ts +4 -4
- package/dist/es/components/ListData/components/ListDataSortable.js +42 -21
- package/dist/es/components/ListData/doc/i/img.png +0 -0
- package/dist/es/components/ListData/helpers.js +8 -1
- package/dist/es/components/Logo/Logo.css +43 -1
- package/dist/es/components/Logo/Logo.d.ts +1 -1
- package/dist/es/components/Logo/Logo.js +25 -9
- package/dist/es/components/NavArrow/NavArrow.css +63 -1
- package/dist/es/components/NavArrow/NavArrow.d.ts +3 -3
- package/dist/es/components/NavArrow/NavArrow.js +28 -8
- package/dist/es/components/Notification/Notification.css +350 -1
- package/dist/es/components/Notification/Notification.d.ts +4 -5
- package/dist/es/components/Notification/Notification.js +131 -61
- package/dist/es/components/Pagination/Pagination.css +5 -1
- package/dist/es/components/Pagination/Pagination.d.ts +3 -4
- package/dist/es/components/Pagination/Pagination.js +22 -7
- package/dist/es/components/Pagination/components/PaginationButton/PaginationButton.css +62 -1
- package/dist/es/components/Pagination/components/PaginationButton/PaginationButton.d.ts +4 -5
- package/dist/es/components/Pagination/components/PaginationButton/PaginationButton.js +26 -10
- package/dist/es/components/Pagination/components/PaginationButtons/PaginationButtons.css +10 -1
- package/dist/es/components/Pagination/components/PaginationButtons/PaginationButtons.d.ts +2 -3
- package/dist/es/components/Pagination/components/PaginationButtons/PaginationButtons.js +22 -5
- package/dist/es/components/Pagination/components/PaginationNavigation/PaginationNavigation.css +17 -1
- package/dist/es/components/Pagination/components/PaginationNavigation/PaginationNavigation.d.ts +2 -3
- package/dist/es/components/Pagination/components/PaginationNavigation/PaginationNavigation.js +23 -7
- package/dist/es/components/Pagination/helpers.js +3 -0
- package/dist/es/components/Pagination/usePagination.d.ts +1 -2
- package/dist/es/components/Pagination/usePagination.js +18 -6
- package/dist/es/components/Paragraph/Paragraph.css +43 -1
- package/dist/es/components/Paragraph/Paragraph.d.ts +2 -4
- package/dist/es/components/Paragraph/Paragraph.js +22 -9
- package/dist/es/components/Preloader/Preloader.css +224 -1
- package/dist/es/components/Preloader/Preloader.d.ts +3 -3
- package/dist/es/components/Preloader/Preloader.js +36 -16
- package/dist/es/components/RadioButton/RadioButton.css +120 -1
- package/dist/es/components/RadioButton/RadioButton.d.ts +1 -1
- package/dist/es/components/RadioButton/RadioButton.js +50 -18
- package/dist/es/components/Row/Row.css +238 -1
- package/dist/es/components/Row/Row.d.ts +2 -2
- package/dist/es/components/Row/Row.js +48 -23
- package/dist/es/components/Search/Search.css +453 -1
- package/dist/es/components/Search/Search.d.ts +8 -7
- package/dist/es/components/Search/Search.js +149 -54
- package/dist/es/components/Select/Select.css +389 -1
- package/dist/es/components/Select/Select.d.ts +84 -8
- package/dist/es/components/Select/Select.js +142 -52
- package/dist/es/components/Select/reducer/selectReducer.d.ts +1 -1
- package/dist/es/components/Select/reducer/selectReducer.js +32 -18
- package/dist/es/components/Selector/Selector.css +132 -1
- package/dist/es/components/Selector/Selector.d.ts +1 -1
- package/dist/es/components/Selector/Selector.js +50 -23
- package/dist/es/components/Selector/doc/Selector.example.css +17 -0
- package/dist/es/components/Sliders/Slider/Slider.css +128 -1
- package/dist/es/components/Sliders/Slider/Slider.d.ts +1 -1
- package/dist/es/components/Sliders/Slider/Slider.js +56 -25
- package/dist/es/components/Sliders/SliderRange/SliderRange.css +169 -1
- package/dist/es/components/Sliders/SliderRange/SliderRange.d.ts +1 -1
- package/dist/es/components/Sliders/SliderRange/SliderRange.js +80 -33
- package/dist/es/components/Sliders/SliderRange/helpers.js +2 -0
- package/dist/es/components/Sliders/SliderRatio/SliderRatio.css +219 -1
- package/dist/es/components/Sliders/SliderRatio/SliderRatio.d.ts +1 -1
- package/dist/es/components/Sliders/SliderRatio/SliderRatio.js +85 -36
- package/dist/es/components/Sliders/SliderRatio/helpers.js +1 -1
- package/dist/es/components/Sliders/SliderRatio/types.d.ts +1 -1
- package/dist/es/components/Sliders/SliderRatio/types.js +1 -0
- package/dist/es/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.css +84 -1
- package/dist/es/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.d.ts +2 -2
- package/dist/es/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.js +35 -11
- package/dist/es/components/Sliders/components/SliderScale/SliderScale.css +15 -1
- package/dist/es/components/Sliders/components/SliderScale/SliderScale.d.ts +2 -2
- package/dist/es/components/Sliders/components/SliderScale/SliderScale.js +20 -6
- package/dist/es/components/Sliders/components/SliderScale/helpers.js +16 -12
- package/dist/es/components/Sliders/helpers.js +5 -1
- package/dist/es/components/Snackbar/Snackbar.css +220 -1
- package/dist/es/components/Snackbar/Snackbar.d.ts +3 -3
- package/dist/es/components/Snackbar/Snackbar.js +82 -44
- package/dist/es/components/Snackbar/SnackbarTimer/SnackbarTimer.css +66 -1
- package/dist/es/components/Snackbar/SnackbarTimer/SnackbarTimer.d.ts +3 -3
- package/dist/es/components/Snackbar/SnackbarTimer/SnackbarTimer.js +17 -9
- package/dist/es/components/Switcher/Switcher.css +160 -1
- package/dist/es/components/Switcher/Switcher.d.ts +1 -2
- package/dist/es/components/Switcher/Switcher.js +39 -17
- package/dist/es/components/Tabs/Tab.d.ts +6 -0
- package/dist/es/components/Tabs/Tab.js +14 -0
- package/dist/es/components/Tabs/Tabs.css +306 -1
- package/dist/es/components/Tabs/Tabs.d.ts +5 -6
- package/dist/es/components/Tabs/Tabs.js +177 -87
- package/dist/es/components/TextField/TextField.css +343 -1
- package/dist/es/components/TextField/TextField.d.ts +3 -3
- package/dist/es/components/TextField/TextField.js +188 -80
- package/dist/es/components/TextField/utils/countGraphemes.js +18 -10
- package/dist/es/components/TextLink/TextLink.css +50 -1
- package/dist/es/components/TextLink/TextLink.d.ts +2 -2
- package/dist/es/components/TextLink/TextLink.js +27 -14
- package/dist/es/components/Tile/Tile.css +43 -1
- package/dist/es/components/Tile/Tile.d.ts +5 -7
- package/dist/es/components/Tile/Tile.js +36 -16
- package/dist/es/components/Tooltip/Tooltip.css +335 -1
- package/dist/es/components/Tooltip/Tooltip.d.ts +8 -9
- package/dist/es/components/Tooltip/Tooltip.js +139 -58
- package/dist/es/hooks/usePrevious.js +2 -0
- package/dist/es/hooks/useResolution.d.ts +1 -1
- package/dist/es/hooks/useResolution.js +11 -5
- package/dist/es/hooks/useSwipe.d.ts +1 -1
- package/dist/es/hooks/useSwipe.js +44 -17
- package/dist/es/index.d.ts +9 -16
- package/dist/es/index.js +10 -17
- package/dist/lib/colors/ColorItem/ColorItem.css +45 -1
- package/dist/lib/colors/ColorItem/ColorItem.d.ts +2 -2
- package/dist/lib/colors/ColorItem/ColorItem.js +18 -9
- package/dist/lib/colors/Colors.css +233 -1
- package/dist/lib/colors/Colors.d.ts +1 -1
- package/dist/lib/colors/Colors.js +79 -37
- package/dist/lib/colors/colorsData.d.ts +4 -4
- package/dist/lib/colors/colorsData.js +2 -1
- package/dist/lib/components/Accordion/Accordion.css +89 -1
- package/dist/lib/components/Accordion/Accordion.d.ts +1 -2
- package/dist/lib/components/Accordion/Accordion.js +81 -26
- package/dist/lib/components/Avatar/Avatar.css +52 -1
- package/dist/lib/components/Avatar/Avatar.d.ts +1 -1
- package/dist/lib/components/Avatar/Avatar.js +41 -13
- package/dist/lib/components/Avatar/doc/i/img.png +0 -0
- package/dist/lib/components/Badges/components/CounterBadge/CounterBadge.css +54 -0
- package/dist/lib/components/Badges/{CounterBadge → components/CounterBadge}/CounterBadge.d.ts +2 -2
- package/dist/lib/components/Badges/components/CounterBadge/CounterBadge.js +81 -0
- package/dist/lib/components/Badges/components/NotificationBadge/NotificationBadge.css +58 -0
- package/dist/lib/components/Badges/{NotificationBadge → components/NotificationBadge}/NotificationBadge.d.ts +4 -3
- package/dist/lib/components/Badges/components/NotificationBadge/NotificationBadge.js +71 -0
- package/dist/lib/components/Badges/components/PriceBadge/PriceBadge.css +119 -0
- package/dist/lib/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.d.ts +4 -4
- package/dist/lib/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.js +75 -19
- package/dist/lib/components/Badges/components/PromoBadge/PromoBadge.css +64 -0
- package/dist/{es/components/Badges → lib/components/Badges/components}/PromoBadge/PromoBadge.d.ts +3 -3
- package/dist/lib/components/Badges/components/PromoBadge/PromoBadge.js +76 -0
- package/dist/lib/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.js +55 -11
- package/dist/lib/components/Badges/components/TimerBadge/TimerBadge.css +60 -0
- package/dist/{es/components/Badges → lib/components/Badges/components}/TimerBadge/TimerBadge.d.ts +2 -2
- package/dist/lib/components/Badges/components/TimerBadge/TimerBadge.js +135 -0
- package/dist/lib/components/Banner/Banner.css +195 -1
- package/dist/lib/components/Banner/Banner.d.ts +4 -5
- package/dist/lib/components/Banner/Banner.js +160 -72
- package/dist/lib/components/Banner/BannerDot.css +69 -1
- package/dist/lib/components/Banner/BannerDot.d.ts +1 -1
- package/dist/lib/components/Banner/BannerDot.js +36 -10
- package/dist/lib/components/Banner/slidesSettings.d.ts +2 -4
- package/dist/lib/components/Banner/slidesSettings.js +11 -4
- package/dist/lib/components/Button/Button.css +814 -1
- package/dist/lib/components/Button/Button.d.ts +6 -7
- package/dist/lib/components/Button/Button.js +157 -70
- package/dist/lib/components/Calendar/Calendar.css +5 -1
- package/dist/lib/components/Calendar/Calendar.d.ts +2 -2
- package/dist/lib/components/Calendar/Calendar.js +148 -70
- package/dist/lib/components/Calendar/components/Day/Day.css +128 -0
- package/dist/{es/components/Calendar/components/_Day → lib/components/Calendar/components/Day}/Day.d.ts +4 -4
- package/dist/lib/components/Calendar/components/Day/Day.js +117 -0
- package/dist/lib/components/Calendar/components/Month/Month.css +81 -0
- package/dist/lib/components/Calendar/components/{_Month → Month}/Month.d.ts +2 -3
- package/dist/lib/components/Calendar/components/Month/Month.js +122 -0
- package/dist/lib/components/Caption/Caption.css +48 -1
- package/dist/lib/components/Caption/Caption.d.ts +2 -4
- package/dist/lib/components/Caption/Caption.js +40 -15
- package/dist/lib/components/Carousel/Carousel.css +215 -1
- package/dist/lib/components/Carousel/Carousel.d.ts +10 -11
- package/dist/lib/components/Carousel/Carousel.js +226 -195
- package/dist/lib/components/Carousel/checkBreakpointsPropTypes.d.ts +1 -1
- package/dist/lib/components/Carousel/checkBreakpointsPropTypes.js +17 -5
- package/dist/lib/components/Carousel/useGradient.d.ts +1 -1
- package/dist/lib/components/Carousel/useGradient.js +24 -11
- package/dist/lib/components/Checkbox/Checkbox.css +150 -1
- package/dist/lib/components/Checkbox/Checkbox.d.ts +4 -4
- package/dist/lib/components/Checkbox/Checkbox.js +74 -34
- package/dist/lib/components/Chips/Chip.css +132 -1
- package/dist/lib/components/Chips/Chip.d.ts +26 -6
- package/dist/lib/components/Chips/Chip.js +75 -35
- package/dist/lib/components/Chips/Chips.css +19 -1
- package/dist/lib/components/Chips/Chips.d.ts +2 -2
- package/dist/lib/components/Chips/Chips.js +91 -46
- package/dist/lib/components/Chips/components/ChipsDropdown.css +106 -1
- package/dist/lib/components/Chips/components/ChipsDropdown.d.ts +2 -2
- package/dist/lib/components/Chips/components/ChipsDropdown.js +66 -30
- package/dist/lib/components/Collapse/Collapse.css +3 -0
- package/dist/{es/components/_Collapse → lib/components/Collapse}/Collapse.d.ts +3 -3
- package/dist/lib/components/Collapse/Collapse.js +141 -0
- package/dist/lib/components/ContentArea/ContentArea.css +109 -1
- package/dist/lib/components/ContentArea/ContentArea.d.ts +4 -5
- package/dist/lib/components/ContentArea/ContentArea.js +43 -13
- package/dist/lib/components/ContentView/ContentView.css +103 -1
- package/dist/lib/components/ContentView/ContentView.d.ts +2 -3
- package/dist/lib/components/ContentView/ContentView.js +62 -16
- package/dist/lib/components/Counter/Counter.css +123 -1
- package/dist/lib/components/Counter/Counter.d.ts +1 -1
- package/dist/lib/components/Counter/Counter.js +70 -24
- package/dist/lib/components/Grid/Grid.css +102 -1
- package/dist/lib/components/Grid/Grid.d.ts +1 -1
- package/dist/lib/components/Grid/Grid.js +39 -12
- package/dist/lib/components/Grid/GridColumn.css +3102 -1
- package/dist/lib/components/Grid/GridColumn.d.ts +2 -2
- package/dist/lib/components/Grid/GridColumn.js +76 -37
- package/dist/lib/components/Header/Header.css +122 -1
- package/dist/lib/components/Header/Header.d.ts +1 -3
- package/dist/lib/components/Header/Header.js +42 -17
- package/dist/lib/components/Link/Link.d.ts +2 -2
- package/dist/lib/components/Link/Link.js +33 -14
- package/dist/lib/components/List/List.css +66 -1
- package/dist/lib/components/List/List.d.ts +1 -2
- package/dist/lib/components/List/List.js +30 -12
- package/dist/lib/components/List/ListItem.css +6 -1
- package/dist/lib/components/List/ListItem.d.ts +1 -2
- package/dist/lib/components/List/ListItem.js +19 -5
- package/dist/lib/components/ListData/ListData.css +162 -1
- package/dist/lib/components/ListData/ListData.d.ts +34 -6
- package/dist/lib/components/ListData/ListData.js +110 -50
- package/dist/lib/components/ListData/ListDataGroup.css +15 -1
- package/dist/lib/components/ListData/ListDataGroup.d.ts +4 -4
- package/dist/lib/components/ListData/ListDataGroup.js +117 -47
- package/dist/lib/components/ListData/components/ListDataSortable.css +79 -1
- package/dist/lib/components/ListData/components/ListDataSortable.d.ts +4 -4
- package/dist/lib/components/ListData/components/ListDataSortable.js +73 -34
- package/dist/lib/components/ListData/doc/i/img.png +0 -0
- package/dist/lib/components/ListData/helpers.js +24 -6
- package/dist/lib/components/Logo/Logo.css +43 -1
- package/dist/lib/components/Logo/Logo.d.ts +1 -1
- package/dist/lib/components/Logo/Logo.js +40 -13
- package/dist/lib/components/NavArrow/NavArrow.css +63 -1
- package/dist/lib/components/NavArrow/NavArrow.d.ts +3 -3
- package/dist/lib/components/NavArrow/NavArrow.js +46 -14
- package/dist/lib/components/Notification/Notification.css +350 -1
- package/dist/lib/components/Notification/Notification.d.ts +4 -5
- package/dist/lib/components/Notification/Notification.js +200 -113
- package/dist/lib/components/Pagination/Pagination.css +5 -1
- package/dist/lib/components/Pagination/Pagination.d.ts +3 -4
- package/dist/lib/components/Pagination/Pagination.js +50 -18
- package/dist/lib/components/Pagination/components/PaginationButton/PaginationButton.css +62 -1
- package/dist/lib/components/Pagination/components/PaginationButton/PaginationButton.d.ts +4 -5
- package/dist/lib/components/Pagination/components/PaginationButton/PaginationButton.js +34 -11
- package/dist/lib/components/Pagination/components/PaginationButtons/PaginationButtons.css +10 -1
- package/dist/lib/components/Pagination/components/PaginationButtons/PaginationButtons.d.ts +2 -3
- package/dist/lib/components/Pagination/components/PaginationButtons/PaginationButtons.js +31 -6
- package/dist/lib/components/Pagination/components/PaginationNavigation/PaginationNavigation.css +17 -1
- package/dist/lib/components/Pagination/components/PaginationNavigation/PaginationNavigation.d.ts +2 -3
- package/dist/lib/components/Pagination/components/PaginationNavigation/PaginationNavigation.js +31 -8
- package/dist/lib/components/Pagination/helpers.js +6 -1
- package/dist/lib/components/Pagination/usePagination.d.ts +1 -2
- package/dist/lib/components/Pagination/usePagination.js +35 -9
- package/dist/lib/components/Paragraph/Paragraph.css +43 -1
- package/dist/lib/components/Paragraph/Paragraph.d.ts +2 -4
- package/dist/lib/components/Paragraph/Paragraph.js +37 -13
- package/dist/lib/components/Preloader/Preloader.css +224 -1
- package/dist/lib/components/Preloader/Preloader.d.ts +3 -3
- package/dist/lib/components/Preloader/Preloader.js +57 -22
- package/dist/lib/components/RadioButton/RadioButton.css +120 -1
- package/dist/lib/components/RadioButton/RadioButton.d.ts +1 -1
- package/dist/lib/components/RadioButton/RadioButton.js +69 -22
- package/dist/lib/components/Row/Row.css +238 -1
- package/dist/lib/components/Row/Row.d.ts +2 -2
- package/dist/lib/components/Row/Row.js +75 -39
- package/dist/lib/components/Search/Search.css +453 -1
- package/dist/lib/components/Search/Search.d.ts +8 -7
- package/dist/lib/components/Search/Search.js +261 -121
- package/dist/lib/components/Select/Select.css +389 -1
- package/dist/lib/components/Select/Select.d.ts +84 -8
- package/dist/lib/components/Select/Select.js +186 -69
- package/dist/lib/components/Select/reducer/selectReducer.d.ts +1 -1
- package/dist/lib/components/Select/reducer/selectReducer.js +41 -21
- package/dist/lib/components/Selector/Selector.css +132 -1
- package/dist/lib/components/Selector/Selector.d.ts +1 -1
- package/dist/lib/components/Selector/Selector.js +70 -27
- package/dist/lib/components/Selector/doc/Selector.example.css +17 -0
- package/dist/lib/components/Sliders/Slider/Slider.css +128 -1
- package/dist/lib/components/Sliders/Slider/Slider.d.ts +1 -1
- package/dist/lib/components/Sliders/Slider/Slider.js +75 -29
- package/dist/lib/components/Sliders/SliderRange/SliderRange.css +169 -1
- package/dist/lib/components/Sliders/SliderRange/SliderRange.d.ts +1 -1
- package/dist/lib/components/Sliders/SliderRange/SliderRange.js +100 -37
- package/dist/lib/components/Sliders/SliderRange/helpers.js +18 -5
- package/dist/lib/components/Sliders/SliderRatio/SliderRatio.css +219 -1
- package/dist/lib/components/Sliders/SliderRatio/SliderRatio.d.ts +1 -1
- package/dist/lib/components/Sliders/SliderRatio/SliderRatio.js +111 -40
- package/dist/lib/components/Sliders/SliderRatio/helpers.js +27 -8
- package/dist/lib/components/Sliders/SliderRatio/types.d.ts +1 -1
- package/dist/lib/components/Sliders/SliderRatio/types.js +2 -0
- package/dist/lib/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.css +84 -1
- package/dist/lib/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.d.ts +2 -2
- package/dist/lib/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.js +56 -17
- package/dist/lib/components/Sliders/components/SliderScale/SliderScale.css +15 -1
- package/dist/lib/components/Sliders/components/SliderScale/SliderScale.d.ts +2 -2
- package/dist/lib/components/Sliders/components/SliderScale/SliderScale.js +39 -11
- package/dist/lib/components/Sliders/components/SliderScale/helpers.js +33 -15
- package/dist/lib/components/Sliders/helpers.js +22 -5
- package/dist/lib/components/Snackbar/Snackbar.css +220 -1
- package/dist/lib/components/Snackbar/Snackbar.d.ts +3 -3
- package/dist/lib/components/Snackbar/Snackbar.js +138 -81
- package/dist/lib/components/Snackbar/SnackbarTimer/SnackbarTimer.css +66 -1
- package/dist/lib/components/Snackbar/SnackbarTimer/SnackbarTimer.d.ts +3 -3
- package/dist/lib/components/Snackbar/SnackbarTimer/SnackbarTimer.js +36 -17
- package/dist/lib/components/Switcher/Switcher.css +160 -1
- package/dist/lib/components/Switcher/Switcher.d.ts +1 -2
- package/dist/lib/components/Switcher/Switcher.js +52 -21
- package/dist/lib/components/Tabs/Tab.d.ts +6 -0
- package/dist/lib/components/Tabs/Tab.js +26 -5
- package/dist/lib/components/Tabs/Tabs.css +306 -1
- package/dist/lib/components/Tabs/Tabs.d.ts +5 -6
- package/dist/lib/components/Tabs/Tabs.js +209 -95
- package/dist/lib/components/TextField/TextField.css +343 -1
- package/dist/lib/components/TextField/TextField.d.ts +3 -3
- package/dist/lib/components/TextField/TextField.js +238 -113
- package/dist/lib/components/TextField/utils/countGraphemes.js +28 -11
- package/dist/lib/components/TextLink/TextLink.css +50 -1
- package/dist/lib/components/TextLink/TextLink.d.ts +2 -2
- package/dist/lib/components/TextLink/TextLink.js +41 -18
- package/dist/lib/components/Tile/Tile.css +43 -1
- package/dist/lib/components/Tile/Tile.d.ts +5 -7
- package/dist/lib/components/Tile/Tile.js +54 -26
- package/dist/lib/components/Tooltip/Tooltip.css +335 -1
- package/dist/lib/components/Tooltip/Tooltip.d.ts +8 -9
- package/dist/lib/components/Tooltip/Tooltip.js +218 -110
- package/dist/lib/constants/throttleTime.js +3 -2
- package/dist/lib/hooks/usePrevious.js +11 -4
- package/dist/lib/hooks/useResolution.d.ts +1 -1
- package/dist/lib/hooks/useResolution.js +23 -9
- package/dist/lib/hooks/useSwipe.d.ts +1 -1
- package/dist/lib/hooks/useSwipe.js +63 -21
- package/dist/lib/index.d.ts +9 -16
- package/dist/lib/index.js +101 -82
- package/package.json +101 -106
- package/styles/base.less +171 -0
- package/styles/colors.css +0 -53
- package/dist/es/components/Badges/CounterBadge/CounterBadge.css +0 -1
- package/dist/es/components/Badges/NotificationBadge/NotificationBadge.css +0 -1
- package/dist/es/components/Badges/NotificationBadge/NotificationBadge.js +0 -34
- package/dist/es/components/Badges/PriceBadge/PriceBadge.css +0 -1
- package/dist/es/components/Badges/PromoBadge/PromoBadge.css +0 -1
- package/dist/es/components/Badges/TimerBadge/TimerBadge.css +0 -1
- package/dist/es/components/Calendar/components/_Day/Day.css +0 -1
- package/dist/es/components/Calendar/components/_Month/Month.css +0 -1
- package/dist/es/components/Modal/Modal.css +0 -1
- package/dist/es/components/Modal/Modal.d.ts +0 -106
- package/dist/es/components/Modal/Modal.js +0 -277
- package/dist/es/components/Modal/_ModalContent/ModalContent.css +0 -1
- package/dist/es/components/Modal/_ModalContent/ModalContent.d.ts +0 -8
- package/dist/es/components/Modal/_ModalContent/ModalContent.js +0 -167
- package/dist/es/components/Modal/_ModalDesktop/ModalDesktop.css +0 -1
- package/dist/es/components/Modal/_ModalDesktop/ModalDesktop.d.ts +0 -8
- package/dist/es/components/Modal/_ModalDesktop/ModalDesktop.js +0 -32
- package/dist/es/components/Modal/_ModalMobileBottom/ModalMobileBottom.css +0 -1
- package/dist/es/components/Modal/_ModalMobileBottom/ModalMobileBottom.d.ts +0 -12
- package/dist/es/components/Modal/_ModalMobileBottom/ModalMobileBottom.js +0 -114
- package/dist/es/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.css +0 -1
- package/dist/es/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.d.ts +0 -8
- package/dist/es/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.js +0 -55
- package/dist/es/components/Modal/mocks.d.ts +0 -3
- package/dist/es/components/Modal/mocks.js +0 -79
- package/dist/es/components/Modal/types.d.ts +0 -28
- package/dist/es/components/Modal/types.js +0 -1
- package/dist/es/components/Modal/utils/utils.d.ts +0 -18
- package/dist/es/components/Modal/utils/utils.js +0 -66
- package/dist/es/components/ScrollBar/ScrollBar.css +0 -1
- package/dist/es/components/ScrollBar/ScrollBar.d.ts +0 -34
- package/dist/es/components/ScrollBar/ScrollBar.js +0 -86
- package/dist/es/components/_Collapse/Collapse.css +0 -1
- package/dist/es/styles/base.css +0 -1
- package/dist/lib/components/Badges/CounterBadge/CounterBadge.css +0 -1
- package/dist/lib/components/Badges/CounterBadge/CounterBadge.js +0 -52
- package/dist/lib/components/Badges/NotificationBadge/NotificationBadge.css +0 -1
- package/dist/lib/components/Badges/NotificationBadge/NotificationBadge.js +0 -43
- package/dist/lib/components/Badges/PriceBadge/PriceBadge.css +0 -1
- package/dist/lib/components/Badges/PromoBadge/PromoBadge.css +0 -1
- package/dist/lib/components/Badges/PromoBadge/PromoBadge.js +0 -49
- package/dist/lib/components/Badges/TimerBadge/TimerBadge.css +0 -1
- package/dist/lib/components/Badges/TimerBadge/TimerBadge.js +0 -97
- package/dist/lib/components/Calendar/components/_Day/Day.css +0 -1
- package/dist/lib/components/Calendar/components/_Day/Day.js +0 -75
- package/dist/lib/components/Calendar/components/_Month/Month.css +0 -1
- package/dist/lib/components/Calendar/components/_Month/Month.js +0 -93
- package/dist/lib/components/Modal/Modal.css +0 -1
- package/dist/lib/components/Modal/Modal.d.ts +0 -106
- package/dist/lib/components/Modal/Modal.js +0 -286
- package/dist/lib/components/Modal/_ModalContent/ModalContent.css +0 -1
- package/dist/lib/components/Modal/_ModalContent/ModalContent.d.ts +0 -8
- package/dist/lib/components/Modal/_ModalContent/ModalContent.js +0 -176
- package/dist/lib/components/Modal/_ModalDesktop/ModalDesktop.css +0 -1
- package/dist/lib/components/Modal/_ModalDesktop/ModalDesktop.d.ts +0 -8
- package/dist/lib/components/Modal/_ModalDesktop/ModalDesktop.js +0 -41
- package/dist/lib/components/Modal/_ModalMobileBottom/ModalMobileBottom.css +0 -1
- package/dist/lib/components/Modal/_ModalMobileBottom/ModalMobileBottom.d.ts +0 -12
- package/dist/lib/components/Modal/_ModalMobileBottom/ModalMobileBottom.js +0 -123
- package/dist/lib/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.css +0 -1
- package/dist/lib/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.d.ts +0 -8
- package/dist/lib/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.js +0 -64
- package/dist/lib/components/Modal/mocks.d.ts +0 -3
- package/dist/lib/components/Modal/mocks.js +0 -85
- package/dist/lib/components/Modal/types.d.ts +0 -28
- package/dist/lib/components/Modal/types.js +0 -5
- package/dist/lib/components/Modal/utils/utils.d.ts +0 -18
- package/dist/lib/components/Modal/utils/utils.js +0 -72
- package/dist/lib/components/ScrollBar/ScrollBar.css +0 -1
- package/dist/lib/components/ScrollBar/ScrollBar.d.ts +0 -34
- package/dist/lib/components/ScrollBar/ScrollBar.js +0 -94
- package/dist/lib/components/_Collapse/Collapse.css +0 -1
- package/dist/lib/components/_Collapse/Collapse.js +0 -95
- package/dist/lib/styles/base.css +0 -1
- package/styles/base.scss +0 -150
- /package/dist/es/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.d.ts +0 -0
- /package/dist/lib/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.d.ts +0 -0
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
-
import "core-js/modules/es.array.map.js";
|
|
4
3
|
import "core-js/modules/es.array.slice.js";
|
|
5
|
-
import "core-js/modules/es.regexp.constructor.js";
|
|
6
4
|
import "core-js/modules/es.regexp.exec.js";
|
|
7
|
-
import "core-js/modules/es.regexp.sticky.js";
|
|
8
|
-
import "core-js/modules/es.regexp.to-string.js";
|
|
9
5
|
import "core-js/modules/es.string.replace.js";
|
|
10
6
|
import "core-js/modules/es.string.split.js";
|
|
11
|
-
import
|
|
7
|
+
import "core-js/modules/es.regexp.constructor.js";
|
|
8
|
+
import "core-js/modules/es.regexp.to-string.js";
|
|
9
|
+
import "core-js/modules/es.array.map.js";
|
|
10
|
+
import "core-js/modules/es.object.values.js";
|
|
11
|
+
import React from 'react';
|
|
12
12
|
import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
|
|
13
13
|
import debounce from 'lodash.debounce';
|
|
14
|
+
import * as PropTypes from 'prop-types';
|
|
14
15
|
import Caption from "../Caption/Caption";
|
|
15
16
|
import Header from "../Header/Header";
|
|
16
17
|
import Preloader from "../Preloader/Preloader";
|
|
17
18
|
import "./Search.css";
|
|
19
|
+
|
|
18
20
|
var SearchIcon16 = function SearchIcon16(props) {
|
|
19
21
|
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
20
22
|
viewBox: "0 0 20 20"
|
|
@@ -22,6 +24,7 @@ var SearchIcon16 = function SearchIcon16(props) {
|
|
|
22
24
|
d: "M17 9a7 7 0 10-3.32 6l2.49 3 .77-.64-2.47-3A7 7 0 0017 9zM4 9a6 6 0 116 6 6 6 0 01-6-6z"
|
|
23
25
|
}));
|
|
24
26
|
};
|
|
27
|
+
|
|
25
28
|
var SearchIcon = function SearchIcon(props) {
|
|
26
29
|
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
27
30
|
viewBox: "0 0 32 32"
|
|
@@ -29,6 +32,7 @@ var SearchIcon = function SearchIcon(props) {
|
|
|
29
32
|
d: "M16 24a9.94 9.94 0 005.7-1.8l4.83 5.8L28 26.72l-4.78-5.82A10 10 0 1016 24zm0-18a8 8 0 11-8 8 8 8 0 018-8z"
|
|
30
33
|
}));
|
|
31
34
|
};
|
|
35
|
+
|
|
32
36
|
var ClearIcon = function ClearIcon(props) {
|
|
33
37
|
return /*#__PURE__*/React.createElement("svg", _extends({
|
|
34
38
|
viewBox: "0 0 20 20"
|
|
@@ -37,6 +41,7 @@ var ClearIcon = function ClearIcon(props) {
|
|
|
37
41
|
d: "M10 8.8L6.2 5 5 6.2 8.8 10 5 13.8 6.2 15l3.8-3.8 3.8 3.8 1.2-1.2-3.8-3.8L15 6.2 13.8 5 10 8.8z"
|
|
38
42
|
}));
|
|
39
43
|
};
|
|
44
|
+
|
|
40
45
|
var SEARCH_QUERY_REGEX = /[^A-Z-a-zА-ЯЁа-яё0-9]/g;
|
|
41
46
|
var MAX_POPULAR_ITEMS_LENGTH = 5;
|
|
42
47
|
export var Verification = {
|
|
@@ -48,54 +53,60 @@ export var SearchItemsPaddings = {
|
|
|
48
53
|
LARGE: 'large'
|
|
49
54
|
};
|
|
50
55
|
var cn = cnCreate('mfui-search');
|
|
56
|
+
|
|
51
57
|
var Search = function Search(_ref) {
|
|
52
58
|
var dataAttrs = _ref.dataAttrs,
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
59
|
+
_ref$value = _ref.value,
|
|
60
|
+
value = _ref$value === void 0 ? '' : _ref$value,
|
|
61
|
+
label = _ref.label,
|
|
62
|
+
_ref$searchId = _ref.searchId,
|
|
63
|
+
searchId = _ref$searchId === void 0 ? 'mfuiSearchId' : _ref$searchId,
|
|
64
|
+
placeholder = _ref.placeholder,
|
|
65
|
+
hideIcon = _ref.hideIcon,
|
|
66
|
+
_ref$items = _ref.items,
|
|
67
|
+
items = _ref$items === void 0 ? [] : _ref$items,
|
|
68
|
+
_ref$changeDelay = _ref.changeDelay,
|
|
69
|
+
changeDelay = _ref$changeDelay === void 0 ? 250 : _ref$changeDelay,
|
|
70
|
+
verification = _ref.verification,
|
|
71
|
+
disabled = _ref.disabled,
|
|
72
|
+
required = _ref.required,
|
|
73
|
+
noticeText = _ref.noticeText,
|
|
74
|
+
className = _ref.className,
|
|
75
|
+
classes = _ref.classes,
|
|
76
|
+
_ref$type = _ref.type,
|
|
77
|
+
type = _ref$type === void 0 ? 'textfield' : _ref$type,
|
|
78
|
+
showLoader = _ref.showLoader,
|
|
79
|
+
showNotFound = _ref.showNotFound,
|
|
80
|
+
textNotFound = _ref.textNotFound,
|
|
81
|
+
_ref$popularItems = _ref.popularItems,
|
|
82
|
+
popularItems = _ref$popularItems === void 0 ? [] : _ref$popularItems,
|
|
83
|
+
popularTitle = _ref.popularTitle,
|
|
84
|
+
onChange = _ref.onChange,
|
|
85
|
+
onSubmit = _ref.onSubmit,
|
|
86
|
+
onBlur = _ref.onBlur,
|
|
87
|
+
onFocus = _ref.onFocus,
|
|
88
|
+
onPopularItemClick = _ref.onPopularItemClick;
|
|
89
|
+
|
|
83
90
|
var _React$useState = React.useState(value),
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
91
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
92
|
+
searchQuery = _React$useState2[0],
|
|
93
|
+
setSearchQuery = _React$useState2[1];
|
|
94
|
+
|
|
87
95
|
var _React$useState3 = React.useState(-1),
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
96
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
97
|
+
activeIndex = _React$useState4[0],
|
|
98
|
+
setActiveIndex = _React$useState4[1];
|
|
99
|
+
|
|
91
100
|
var _React$useState5 = React.useState(false),
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
101
|
+
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
102
|
+
isFocused = _React$useState6[0],
|
|
103
|
+
setFocus = _React$useState6[1];
|
|
104
|
+
|
|
95
105
|
var _React$useState7 = React.useState(-1),
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
106
|
+
_React$useState8 = _slicedToArray(_React$useState7, 2),
|
|
107
|
+
popularActiveIndex = _React$useState8[0],
|
|
108
|
+
setPopularActiveIndex = _React$useState8[1];
|
|
109
|
+
|
|
99
110
|
var debouncedOnChange = React.useRef(debounce(function (inputValue) {
|
|
100
111
|
return onChange && onChange(inputValue);
|
|
101
112
|
}, changeDelay));
|
|
@@ -111,9 +122,10 @@ var Search = function Search(_ref) {
|
|
|
111
122
|
var showPopularItems = !!correctPopularItems.length;
|
|
112
123
|
var handleChange = React.useCallback(function (e) {
|
|
113
124
|
var _e$target$value = e.target.value,
|
|
114
|
-
|
|
125
|
+
inputValue = _e$target$value === void 0 ? '' : _e$target$value;
|
|
115
126
|
setSearchQuery(inputValue);
|
|
116
127
|
setActiveIndex(-1);
|
|
128
|
+
|
|
117
129
|
if (changeDelay === 0) {
|
|
118
130
|
onChange === null || onChange === void 0 ? void 0 : onChange(inputValue);
|
|
119
131
|
} else {
|
|
@@ -139,8 +151,10 @@ var Search = function Search(_ref) {
|
|
|
139
151
|
if (disabled) {
|
|
140
152
|
return;
|
|
141
153
|
}
|
|
154
|
+
|
|
142
155
|
var chosenItem = items[index];
|
|
143
156
|
onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(chosenItem.value);
|
|
157
|
+
|
|
144
158
|
if (chosenItem.href) {
|
|
145
159
|
window.location.href = chosenItem.href;
|
|
146
160
|
}
|
|
@@ -168,12 +182,14 @@ var Search = function Search(_ref) {
|
|
|
168
182
|
}, []);
|
|
169
183
|
var handlePopularItemMouseUp = React.useCallback(function () {
|
|
170
184
|
var _a;
|
|
185
|
+
|
|
171
186
|
var chosenValue = popularItems[popularActiveIndex].title;
|
|
172
187
|
(_a = fieldNode === null || fieldNode === void 0 ? void 0 : fieldNode.current) === null || _a === void 0 ? void 0 : _a.blur();
|
|
173
188
|
onPopularItemClick === null || onPopularItemClick === void 0 ? void 0 : onPopularItemClick(chosenValue);
|
|
174
189
|
}, [onPopularItemClick, popularActiveIndex, popularItems]);
|
|
175
190
|
var handleKeyDownPopularItems = React.useCallback(function (e) {
|
|
176
191
|
var _a;
|
|
192
|
+
|
|
177
193
|
switch (true) {
|
|
178
194
|
case e.key === 'ArrowDown' && popularActiveIndex < popularItems.length - 1:
|
|
179
195
|
setPopularActiveIndex(function (index) {
|
|
@@ -181,24 +197,30 @@ var Search = function Search(_ref) {
|
|
|
181
197
|
});
|
|
182
198
|
e.preventDefault();
|
|
183
199
|
break;
|
|
200
|
+
|
|
184
201
|
case e.key === 'ArrowUp' && popularActiveIndex > -1:
|
|
185
202
|
setPopularActiveIndex(function (index) {
|
|
186
203
|
return index - 1;
|
|
187
204
|
});
|
|
188
205
|
e.preventDefault();
|
|
189
206
|
break;
|
|
207
|
+
|
|
190
208
|
case e.key === 'Enter' && popularActiveIndex > -1:
|
|
191
209
|
{
|
|
192
210
|
var currentHref = (_a = popularItems[popularActiveIndex]) === null || _a === void 0 ? void 0 : _a.href;
|
|
193
211
|
handlePopularItemMouseUp();
|
|
212
|
+
|
|
194
213
|
if (currentHref) {
|
|
195
214
|
window.location.href = currentHref;
|
|
196
215
|
}
|
|
216
|
+
|
|
197
217
|
break;
|
|
198
218
|
}
|
|
219
|
+
|
|
199
220
|
default:
|
|
200
221
|
break;
|
|
201
222
|
}
|
|
223
|
+
|
|
202
224
|
return false;
|
|
203
225
|
}, [popularActiveIndex, popularItems, handlePopularItemMouseUp]);
|
|
204
226
|
var handleKeyDownItems = React.useCallback(function (e) {
|
|
@@ -209,37 +231,49 @@ var Search = function Search(_ref) {
|
|
|
209
231
|
});
|
|
210
232
|
e.preventDefault();
|
|
211
233
|
break;
|
|
234
|
+
|
|
212
235
|
case e.key === 'ArrowUp' && activeIndex > -1:
|
|
213
236
|
setActiveIndex(function (index) {
|
|
214
237
|
return index - 1;
|
|
215
238
|
});
|
|
216
239
|
e.preventDefault();
|
|
217
240
|
break;
|
|
241
|
+
|
|
218
242
|
case e.key === 'Enter' && activeIndex > -1:
|
|
219
243
|
handleItemSubmit(activeIndex);
|
|
220
244
|
e.preventDefault();
|
|
221
245
|
break;
|
|
246
|
+
|
|
222
247
|
case e.key === 'Enter' && activeIndex === -1:
|
|
223
248
|
handleSearchSubmit();
|
|
224
249
|
break;
|
|
250
|
+
|
|
225
251
|
default:
|
|
226
252
|
break;
|
|
227
253
|
}
|
|
254
|
+
|
|
228
255
|
return false;
|
|
229
256
|
}, [activeIndex, handleItemSubmit, handleSearchSubmit, items.length]);
|
|
230
257
|
var handleKeyDown = React.useCallback(function (e) {
|
|
231
258
|
if (showNotFound && showPopularItems) {
|
|
232
259
|
return handleKeyDownPopularItems(e);
|
|
233
260
|
}
|
|
261
|
+
|
|
234
262
|
return handleKeyDownItems(e);
|
|
235
263
|
}, [handleKeyDownItems, handleKeyDownPopularItems, showNotFound, showPopularItems]);
|
|
264
|
+
|
|
236
265
|
var handleClearClick = function handleClearClick() {
|
|
237
|
-
var _a;
|
|
266
|
+
var _a; // TODO: После обновления TS до 4 версии, установить @types/lodash.debounce и убрать disable
|
|
267
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
268
|
+
// @ts-ignore
|
|
269
|
+
|
|
270
|
+
|
|
238
271
|
!!debouncedOnChange.current && debouncedOnChange.current.cancel();
|
|
239
272
|
onChange === null || onChange === void 0 ? void 0 : onChange('');
|
|
240
273
|
setSearchQuery('');
|
|
241
274
|
(_a = fieldNode === null || fieldNode === void 0 ? void 0 : fieldNode.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
242
275
|
};
|
|
276
|
+
|
|
243
277
|
React.useEffect(function () {
|
|
244
278
|
return setSearchQuery(value);
|
|
245
279
|
}, [value]);
|
|
@@ -255,6 +289,7 @@ var Search = function Search(_ref) {
|
|
|
255
289
|
}, [disabled, isFocused]);
|
|
256
290
|
React.useEffect(function () {
|
|
257
291
|
var _a, _b;
|
|
292
|
+
|
|
258
293
|
if (activeIndex !== -1) {
|
|
259
294
|
(_b = (_a = highlightedItem.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView) === null || _b === void 0 ? void 0 : _b.call(_a, {
|
|
260
295
|
behavior: 'smooth',
|
|
@@ -262,6 +297,7 @@ var Search = function Search(_ref) {
|
|
|
262
297
|
});
|
|
263
298
|
}
|
|
264
299
|
}, [activeIndex, items]);
|
|
300
|
+
|
|
265
301
|
var highlightString = function highlightString(title) {
|
|
266
302
|
var query = searchQuery.replace(SEARCH_QUERY_REGEX, function (w) {
|
|
267
303
|
return "\\".concat(w);
|
|
@@ -275,6 +311,7 @@ var Search = function Search(_ref) {
|
|
|
275
311
|
}, fragment) : fragment);
|
|
276
312
|
}));
|
|
277
313
|
};
|
|
314
|
+
|
|
278
315
|
var renderSubmitButton = function renderSubmitButton() {
|
|
279
316
|
var Icon = isCompact ? SearchIcon16 : SearchIcon;
|
|
280
317
|
return /*#__PURE__*/React.createElement("button", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.submit), {
|
|
@@ -285,6 +322,7 @@ var Search = function Search(_ref) {
|
|
|
285
322
|
className: cn('submit-icon', [classes === null || classes === void 0 ? void 0 : classes.icon])
|
|
286
323
|
}));
|
|
287
324
|
};
|
|
325
|
+
|
|
288
326
|
var renderClearButton = function renderClearButton() {
|
|
289
327
|
return /*#__PURE__*/React.createElement("button", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.clearButton), {
|
|
290
328
|
onClick: handleClearClick,
|
|
@@ -294,6 +332,7 @@ var Search = function Search(_ref) {
|
|
|
294
332
|
className: cn('clear-icon')
|
|
295
333
|
}));
|
|
296
334
|
};
|
|
335
|
+
|
|
297
336
|
var renderList = function renderList() {
|
|
298
337
|
return /*#__PURE__*/React.createElement("div", {
|
|
299
338
|
className: cn('list')
|
|
@@ -301,9 +340,9 @@ var Search = function Search(_ref) {
|
|
|
301
340
|
className: cn('list-inner')
|
|
302
341
|
}, items.map(function (_ref2, i) {
|
|
303
342
|
var itemValue = _ref2.value,
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
343
|
+
searchView = _ref2.searchView,
|
|
344
|
+
_ref2$paddings = _ref2.paddings,
|
|
345
|
+
paddings = _ref2$paddings === void 0 ? SearchItemsPaddings.LARGE : _ref2$paddings;
|
|
307
346
|
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.item, i + 1), {
|
|
308
347
|
ref: activeIndex === i ? highlightedItem : null,
|
|
309
348
|
className: cn('list-item', {
|
|
@@ -318,13 +357,14 @@ var Search = function Search(_ref) {
|
|
|
318
357
|
}), searchView || highlightString(itemValue)));
|
|
319
358
|
})));
|
|
320
359
|
};
|
|
360
|
+
|
|
321
361
|
var renderPopularItems = function renderPopularItems() {
|
|
322
362
|
return /*#__PURE__*/React.createElement("div", {
|
|
323
363
|
className: cn('popular-list')
|
|
324
364
|
}, correctPopularItems.map(function (_ref3, i) {
|
|
325
365
|
var title = _ref3.title,
|
|
326
|
-
|
|
327
|
-
|
|
366
|
+
href = _ref3.href,
|
|
367
|
+
icon = _ref3.icon;
|
|
328
368
|
var Elem = href ? 'a' : 'div';
|
|
329
369
|
return /*#__PURE__*/React.createElement(Elem, _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.popularItem, i + 1), {
|
|
330
370
|
className: cn('popular-item', {
|
|
@@ -343,6 +383,7 @@ var Search = function Search(_ref) {
|
|
|
343
383
|
}, title));
|
|
344
384
|
}));
|
|
345
385
|
};
|
|
386
|
+
|
|
346
387
|
var renderNotFound = function renderNotFound() {
|
|
347
388
|
return /*#__PURE__*/React.createElement("div", {
|
|
348
389
|
className: cn('list', {
|
|
@@ -363,6 +404,7 @@ var Search = function Search(_ref) {
|
|
|
363
404
|
hasMargin: false
|
|
364
405
|
}, popularTitle || 'Популярные действия'), renderPopularItems())));
|
|
365
406
|
};
|
|
407
|
+
|
|
366
408
|
return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
|
|
367
409
|
className: cn({
|
|
368
410
|
open: isFocused,
|
|
@@ -408,4 +450,57 @@ var Search = function Search(_ref) {
|
|
|
408
450
|
})
|
|
409
451
|
}), noticeText));
|
|
410
452
|
};
|
|
453
|
+
|
|
454
|
+
Search.propTypes = {
|
|
455
|
+
dataAttrs: PropTypes.shape({
|
|
456
|
+
root: PropTypes.objectOf(PropTypes.string.isRequired),
|
|
457
|
+
control: PropTypes.objectOf(PropTypes.string.isRequired),
|
|
458
|
+
searchField: PropTypes.objectOf(PropTypes.string.isRequired),
|
|
459
|
+
submit: PropTypes.objectOf(PropTypes.string.isRequired),
|
|
460
|
+
item: PropTypes.objectOf(PropTypes.string.isRequired),
|
|
461
|
+
itemTitle: PropTypes.objectOf(PropTypes.string.isRequired),
|
|
462
|
+
notice: PropTypes.objectOf(PropTypes.string.isRequired),
|
|
463
|
+
popularItem: PropTypes.objectOf(PropTypes.string.isRequired)
|
|
464
|
+
}),
|
|
465
|
+
value: PropTypes.string,
|
|
466
|
+
label: PropTypes.string,
|
|
467
|
+
searchId: PropTypes.string,
|
|
468
|
+
placeholder: PropTypes.string,
|
|
469
|
+
hideIcon: PropTypes.bool,
|
|
470
|
+
items: PropTypes.arrayOf(PropTypes.shape({
|
|
471
|
+
value: PropTypes.string.isRequired,
|
|
472
|
+
href: PropTypes.string,
|
|
473
|
+
searchView: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.arrayOf(PropTypes.element)]),
|
|
474
|
+
paddings: PropTypes.oneOf(Object.values(SearchItemsPaddings))
|
|
475
|
+
}).isRequired),
|
|
476
|
+
changeDelay: PropTypes.number,
|
|
477
|
+
verification: PropTypes.oneOf(['valid', 'error']),
|
|
478
|
+
noticeText: PropTypes.string,
|
|
479
|
+
disabled: PropTypes.bool,
|
|
480
|
+
required: PropTypes.bool,
|
|
481
|
+
className: PropTypes.string,
|
|
482
|
+
classes: PropTypes.shape({
|
|
483
|
+
label: PropTypes.string,
|
|
484
|
+
input: PropTypes.string,
|
|
485
|
+
listItemTitle: PropTypes.string,
|
|
486
|
+
control: PropTypes.string,
|
|
487
|
+
icon: PropTypes.string,
|
|
488
|
+
textNotFound: PropTypes.string,
|
|
489
|
+
popularTitle: PropTypes.string,
|
|
490
|
+
popularItem: PropTypes.string
|
|
491
|
+
}),
|
|
492
|
+
showNotFound: PropTypes.bool,
|
|
493
|
+
textNotFound: PropTypes.string,
|
|
494
|
+
popularItems: PropTypes.arrayOf(PropTypes.shape({
|
|
495
|
+
title: PropTypes.string.isRequired,
|
|
496
|
+
href: PropTypes.string,
|
|
497
|
+
icon: PropTypes.element
|
|
498
|
+
}).isRequired),
|
|
499
|
+
popularTitle: PropTypes.string,
|
|
500
|
+
onChange: PropTypes.func,
|
|
501
|
+
onSubmit: PropTypes.func,
|
|
502
|
+
onBlur: PropTypes.func,
|
|
503
|
+
onFocus: PropTypes.func,
|
|
504
|
+
onPopularItemClick: PropTypes.func
|
|
505
|
+
};
|
|
411
506
|
export default Search;
|