@megafon/ui-core 6.0.0-beta.4 → 6.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (513) hide show
  1. package/CHANGELOG.md +4016 -0
  2. package/dist/es/colors/ColorItem/ColorItem.css +45 -1
  3. package/dist/es/colors/ColorItem/ColorItem.d.ts +2 -2
  4. package/dist/es/colors/ColorItem/ColorItem.js +7 -5
  5. package/dist/es/colors/Colors.css +233 -1
  6. package/dist/es/colors/Colors.d.ts +1 -1
  7. package/dist/es/colors/Colors.js +55 -33
  8. package/dist/es/colors/colorsData.d.ts +4 -4
  9. package/dist/es/components/Accordion/Accordion.css +89 -1
  10. package/dist/es/components/Accordion/Accordion.d.ts +1 -2
  11. package/dist/es/components/Accordion/Accordion.js +65 -22
  12. package/dist/es/components/Avatar/Avatar.css +52 -1
  13. package/dist/es/components/Avatar/Avatar.d.ts +1 -1
  14. package/dist/es/components/Avatar/Avatar.js +27 -9
  15. package/dist/es/components/Avatar/doc/i/img.png +0 -0
  16. package/dist/es/components/Badges/components/CounterBadge/CounterBadge.css +54 -0
  17. package/dist/es/components/Badges/{CounterBadge → components/CounterBadge}/CounterBadge.d.ts +2 -2
  18. package/dist/es/components/Badges/{CounterBadge → components/CounterBadge}/CounterBadge.js +28 -10
  19. package/dist/es/components/Badges/components/NotificationBadge/NotificationBadge.css +58 -0
  20. package/dist/es/components/Badges/{NotificationBadge → components/NotificationBadge}/NotificationBadge.d.ts +4 -3
  21. package/dist/es/components/Badges/components/NotificationBadge/NotificationBadge.js +49 -0
  22. package/dist/es/components/Badges/components/PriceBadge/PriceBadge.css +119 -0
  23. package/dist/es/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.d.ts +4 -4
  24. package/dist/es/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.js +54 -11
  25. package/dist/es/components/Badges/components/PromoBadge/PromoBadge.css +64 -0
  26. package/dist/{lib/components/Badges → es/components/Badges/components}/PromoBadge/PromoBadge.d.ts +3 -3
  27. package/dist/es/components/Badges/{PromoBadge → components/PromoBadge}/PromoBadge.js +21 -7
  28. package/dist/es/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.js +32 -5
  29. package/dist/es/components/Badges/components/TimerBadge/TimerBadge.css +60 -0
  30. package/dist/{lib/components/Badges → es/components/Badges/components}/TimerBadge/TimerBadge.d.ts +2 -2
  31. package/dist/es/components/Badges/{TimerBadge → components/TimerBadge}/TimerBadge.js +45 -22
  32. package/dist/es/components/Banner/Banner.css +195 -1
  33. package/dist/es/components/Banner/Banner.d.ts +4 -5
  34. package/dist/es/components/Banner/Banner.js +129 -64
  35. package/dist/es/components/Banner/BannerDot.css +69 -1
  36. package/dist/es/components/Banner/BannerDot.d.ts +1 -1
  37. package/dist/es/components/Banner/BannerDot.js +22 -6
  38. package/dist/es/components/Banner/slidesSettings.d.ts +2 -4
  39. package/dist/es/components/Banner/slidesSettings.js +6 -3
  40. package/dist/es/components/Button/Button.css +814 -1
  41. package/dist/es/components/Button/Button.d.ts +6 -7
  42. package/dist/es/components/Button/Button.js +104 -44
  43. package/dist/es/components/Calendar/Calendar.css +5 -1
  44. package/dist/es/components/Calendar/Calendar.d.ts +2 -2
  45. package/dist/es/components/Calendar/Calendar.js +114 -60
  46. package/dist/es/components/Calendar/components/Day/Day.css +128 -0
  47. package/dist/{lib/components/Calendar/components/_Day → es/components/Calendar/components/Day}/Day.d.ts +4 -4
  48. package/dist/es/components/Calendar/components/{_Day → Day}/Day.js +50 -19
  49. package/dist/es/components/Calendar/components/Month/Month.css +81 -0
  50. package/dist/es/components/Calendar/components/{_Month → Month}/Month.d.ts +2 -3
  51. package/dist/es/components/Calendar/components/{_Month → Month}/Month.js +33 -9
  52. package/dist/es/components/Caption/Caption.css +48 -1
  53. package/dist/es/components/Caption/Caption.d.ts +2 -4
  54. package/dist/es/components/Caption/Caption.js +25 -11
  55. package/dist/es/components/Carousel/Carousel.css +215 -1
  56. package/dist/es/components/Carousel/Carousel.d.ts +10 -11
  57. package/dist/es/components/Carousel/Carousel.js +161 -104
  58. package/dist/es/components/Carousel/checkBreakpointsPropTypes.d.ts +1 -1
  59. package/dist/es/components/Carousel/checkBreakpointsPropTypes.js +4 -1
  60. package/dist/es/components/Carousel/useGradient.d.ts +1 -1
  61. package/dist/es/components/Carousel/useGradient.js +13 -9
  62. package/dist/es/components/Checkbox/Checkbox.css +150 -1
  63. package/dist/es/components/Checkbox/Checkbox.d.ts +4 -4
  64. package/dist/es/components/Checkbox/Checkbox.js +50 -21
  65. package/dist/es/components/Chips/Chip.css +132 -1
  66. package/dist/es/components/Chips/Chip.d.ts +26 -6
  67. package/dist/es/components/Chips/Chip.js +42 -17
  68. package/dist/es/components/Chips/Chips.css +19 -1
  69. package/dist/es/components/Chips/Chips.d.ts +2 -2
  70. package/dist/es/components/Chips/Chips.js +56 -32
  71. package/dist/es/components/Chips/components/ChipsDropdown.css +106 -1
  72. package/dist/es/components/Chips/components/ChipsDropdown.d.ts +2 -2
  73. package/dist/es/components/Chips/components/ChipsDropdown.js +27 -12
  74. package/dist/es/components/Collapse/Collapse.css +3 -0
  75. package/dist/{lib/components/_Collapse → es/components/Collapse}/Collapse.d.ts +3 -3
  76. package/dist/es/components/{_Collapse → Collapse}/Collapse.js +62 -25
  77. package/dist/es/components/ContentArea/ContentArea.css +109 -1
  78. package/dist/es/components/ContentArea/ContentArea.d.ts +4 -5
  79. package/dist/es/components/ContentArea/ContentArea.js +28 -9
  80. package/dist/es/components/ContentView/ContentView.css +103 -1
  81. package/dist/es/components/ContentView/ContentView.d.ts +2 -3
  82. package/dist/es/components/ContentView/ContentView.js +46 -12
  83. package/dist/es/components/Counter/Counter.css +123 -1
  84. package/dist/es/components/Counter/Counter.d.ts +1 -1
  85. package/dist/es/components/Counter/Counter.js +55 -20
  86. package/dist/es/components/Grid/Grid.css +102 -1
  87. package/dist/es/components/Grid/Grid.d.ts +1 -1
  88. package/dist/es/components/Grid/Grid.js +24 -8
  89. package/dist/es/components/Grid/GridColumn.css +3102 -1
  90. package/dist/es/components/Grid/GridColumn.d.ts +2 -2
  91. package/dist/es/components/Grid/GridColumn.js +62 -33
  92. package/dist/es/components/Header/Header.css +122 -1
  93. package/dist/es/components/Header/Header.d.ts +1 -3
  94. package/dist/es/components/Header/Header.js +28 -13
  95. package/dist/es/components/Link/Link.d.ts +2 -2
  96. package/dist/es/components/Link/Link.js +25 -9
  97. package/dist/es/components/List/List.css +66 -1
  98. package/dist/es/components/List/List.d.ts +1 -2
  99. package/dist/es/components/List/List.js +18 -8
  100. package/dist/es/components/List/ListItem.css +6 -1
  101. package/dist/es/components/List/ListItem.d.ts +1 -2
  102. package/dist/es/components/List/ListItem.js +7 -1
  103. package/dist/es/components/ListData/ListData.css +162 -1
  104. package/dist/es/components/ListData/ListData.d.ts +34 -6
  105. package/dist/es/components/ListData/ListData.js +65 -22
  106. package/dist/es/components/ListData/ListDataGroup.css +15 -1
  107. package/dist/es/components/ListData/ListDataGroup.d.ts +4 -4
  108. package/dist/es/components/ListData/ListDataGroup.js +74 -29
  109. package/dist/es/components/ListData/components/ListDataSortable.css +79 -1
  110. package/dist/es/components/ListData/components/ListDataSortable.d.ts +4 -4
  111. package/dist/es/components/ListData/components/ListDataSortable.js +42 -21
  112. package/dist/es/components/ListData/doc/i/img.png +0 -0
  113. package/dist/es/components/ListData/helpers.js +8 -1
  114. package/dist/es/components/Logo/Logo.css +43 -1
  115. package/dist/es/components/Logo/Logo.d.ts +1 -1
  116. package/dist/es/components/Logo/Logo.js +25 -9
  117. package/dist/es/components/NavArrow/NavArrow.css +63 -1
  118. package/dist/es/components/NavArrow/NavArrow.d.ts +3 -3
  119. package/dist/es/components/NavArrow/NavArrow.js +28 -8
  120. package/dist/es/components/Notification/Notification.css +350 -1
  121. package/dist/es/components/Notification/Notification.d.ts +4 -5
  122. package/dist/es/components/Notification/Notification.js +131 -61
  123. package/dist/es/components/Pagination/Pagination.css +5 -1
  124. package/dist/es/components/Pagination/Pagination.d.ts +3 -4
  125. package/dist/es/components/Pagination/Pagination.js +22 -7
  126. package/dist/es/components/Pagination/components/PaginationButton/PaginationButton.css +62 -1
  127. package/dist/es/components/Pagination/components/PaginationButton/PaginationButton.d.ts +4 -5
  128. package/dist/es/components/Pagination/components/PaginationButton/PaginationButton.js +26 -10
  129. package/dist/es/components/Pagination/components/PaginationButtons/PaginationButtons.css +10 -1
  130. package/dist/es/components/Pagination/components/PaginationButtons/PaginationButtons.d.ts +2 -3
  131. package/dist/es/components/Pagination/components/PaginationButtons/PaginationButtons.js +22 -5
  132. package/dist/es/components/Pagination/components/PaginationNavigation/PaginationNavigation.css +17 -1
  133. package/dist/es/components/Pagination/components/PaginationNavigation/PaginationNavigation.d.ts +2 -3
  134. package/dist/es/components/Pagination/components/PaginationNavigation/PaginationNavigation.js +23 -7
  135. package/dist/es/components/Pagination/helpers.js +3 -0
  136. package/dist/es/components/Pagination/usePagination.d.ts +1 -2
  137. package/dist/es/components/Pagination/usePagination.js +18 -6
  138. package/dist/es/components/Paragraph/Paragraph.css +43 -1
  139. package/dist/es/components/Paragraph/Paragraph.d.ts +2 -4
  140. package/dist/es/components/Paragraph/Paragraph.js +22 -9
  141. package/dist/es/components/Preloader/Preloader.css +224 -1
  142. package/dist/es/components/Preloader/Preloader.d.ts +3 -3
  143. package/dist/es/components/Preloader/Preloader.js +36 -16
  144. package/dist/es/components/RadioButton/RadioButton.css +120 -1
  145. package/dist/es/components/RadioButton/RadioButton.d.ts +1 -1
  146. package/dist/es/components/RadioButton/RadioButton.js +50 -18
  147. package/dist/es/components/Row/Row.css +238 -1
  148. package/dist/es/components/Row/Row.d.ts +2 -2
  149. package/dist/es/components/Row/Row.js +48 -23
  150. package/dist/es/components/Search/Search.css +453 -1
  151. package/dist/es/components/Search/Search.d.ts +8 -7
  152. package/dist/es/components/Search/Search.js +149 -54
  153. package/dist/es/components/Select/Select.css +389 -1
  154. package/dist/es/components/Select/Select.d.ts +84 -8
  155. package/dist/es/components/Select/Select.js +142 -52
  156. package/dist/es/components/Select/reducer/selectReducer.d.ts +1 -1
  157. package/dist/es/components/Select/reducer/selectReducer.js +32 -18
  158. package/dist/es/components/Selector/Selector.css +132 -1
  159. package/dist/es/components/Selector/Selector.d.ts +1 -1
  160. package/dist/es/components/Selector/Selector.js +50 -23
  161. package/dist/es/components/Selector/doc/Selector.example.css +17 -0
  162. package/dist/es/components/Sliders/Slider/Slider.css +128 -1
  163. package/dist/es/components/Sliders/Slider/Slider.d.ts +1 -1
  164. package/dist/es/components/Sliders/Slider/Slider.js +56 -25
  165. package/dist/es/components/Sliders/SliderRange/SliderRange.css +169 -1
  166. package/dist/es/components/Sliders/SliderRange/SliderRange.d.ts +1 -1
  167. package/dist/es/components/Sliders/SliderRange/SliderRange.js +80 -33
  168. package/dist/es/components/Sliders/SliderRange/helpers.js +2 -0
  169. package/dist/es/components/Sliders/SliderRatio/SliderRatio.css +219 -1
  170. package/dist/es/components/Sliders/SliderRatio/SliderRatio.d.ts +1 -1
  171. package/dist/es/components/Sliders/SliderRatio/SliderRatio.js +85 -36
  172. package/dist/es/components/Sliders/SliderRatio/helpers.js +1 -1
  173. package/dist/es/components/Sliders/SliderRatio/types.d.ts +1 -1
  174. package/dist/es/components/Sliders/SliderRatio/types.js +1 -0
  175. package/dist/es/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.css +84 -1
  176. package/dist/es/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.d.ts +2 -2
  177. package/dist/es/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.js +35 -11
  178. package/dist/es/components/Sliders/components/SliderScale/SliderScale.css +15 -1
  179. package/dist/es/components/Sliders/components/SliderScale/SliderScale.d.ts +2 -2
  180. package/dist/es/components/Sliders/components/SliderScale/SliderScale.js +20 -6
  181. package/dist/es/components/Sliders/components/SliderScale/helpers.js +16 -12
  182. package/dist/es/components/Sliders/helpers.js +5 -1
  183. package/dist/es/components/Snackbar/Snackbar.css +220 -1
  184. package/dist/es/components/Snackbar/Snackbar.d.ts +3 -3
  185. package/dist/es/components/Snackbar/Snackbar.js +82 -44
  186. package/dist/es/components/Snackbar/SnackbarTimer/SnackbarTimer.css +66 -1
  187. package/dist/es/components/Snackbar/SnackbarTimer/SnackbarTimer.d.ts +3 -3
  188. package/dist/es/components/Snackbar/SnackbarTimer/SnackbarTimer.js +17 -9
  189. package/dist/es/components/Switcher/Switcher.css +160 -1
  190. package/dist/es/components/Switcher/Switcher.d.ts +1 -2
  191. package/dist/es/components/Switcher/Switcher.js +39 -17
  192. package/dist/es/components/Tabs/Tab.d.ts +6 -0
  193. package/dist/es/components/Tabs/Tab.js +14 -0
  194. package/dist/es/components/Tabs/Tabs.css +306 -1
  195. package/dist/es/components/Tabs/Tabs.d.ts +5 -6
  196. package/dist/es/components/Tabs/Tabs.js +177 -87
  197. package/dist/es/components/TextField/TextField.css +343 -1
  198. package/dist/es/components/TextField/TextField.d.ts +3 -3
  199. package/dist/es/components/TextField/TextField.js +188 -80
  200. package/dist/es/components/TextField/utils/countGraphemes.js +18 -10
  201. package/dist/es/components/TextLink/TextLink.css +50 -1
  202. package/dist/es/components/TextLink/TextLink.d.ts +2 -2
  203. package/dist/es/components/TextLink/TextLink.js +27 -14
  204. package/dist/es/components/Tile/Tile.css +43 -1
  205. package/dist/es/components/Tile/Tile.d.ts +5 -7
  206. package/dist/es/components/Tile/Tile.js +36 -16
  207. package/dist/es/components/Tooltip/Tooltip.css +335 -1
  208. package/dist/es/components/Tooltip/Tooltip.d.ts +8 -9
  209. package/dist/es/components/Tooltip/Tooltip.js +139 -58
  210. package/dist/es/hooks/usePrevious.js +2 -0
  211. package/dist/es/hooks/useResolution.d.ts +1 -1
  212. package/dist/es/hooks/useResolution.js +11 -5
  213. package/dist/es/hooks/useSwipe.d.ts +1 -1
  214. package/dist/es/hooks/useSwipe.js +44 -17
  215. package/dist/es/index.d.ts +9 -16
  216. package/dist/es/index.js +10 -17
  217. package/dist/lib/colors/ColorItem/ColorItem.css +45 -1
  218. package/dist/lib/colors/ColorItem/ColorItem.d.ts +2 -2
  219. package/dist/lib/colors/ColorItem/ColorItem.js +18 -9
  220. package/dist/lib/colors/Colors.css +233 -1
  221. package/dist/lib/colors/Colors.d.ts +1 -1
  222. package/dist/lib/colors/Colors.js +79 -37
  223. package/dist/lib/colors/colorsData.d.ts +4 -4
  224. package/dist/lib/colors/colorsData.js +2 -1
  225. package/dist/lib/components/Accordion/Accordion.css +89 -1
  226. package/dist/lib/components/Accordion/Accordion.d.ts +1 -2
  227. package/dist/lib/components/Accordion/Accordion.js +81 -26
  228. package/dist/lib/components/Avatar/Avatar.css +52 -1
  229. package/dist/lib/components/Avatar/Avatar.d.ts +1 -1
  230. package/dist/lib/components/Avatar/Avatar.js +41 -13
  231. package/dist/lib/components/Avatar/doc/i/img.png +0 -0
  232. package/dist/lib/components/Badges/components/CounterBadge/CounterBadge.css +54 -0
  233. package/dist/lib/components/Badges/{CounterBadge → components/CounterBadge}/CounterBadge.d.ts +2 -2
  234. package/dist/lib/components/Badges/components/CounterBadge/CounterBadge.js +81 -0
  235. package/dist/lib/components/Badges/components/NotificationBadge/NotificationBadge.css +58 -0
  236. package/dist/lib/components/Badges/{NotificationBadge → components/NotificationBadge}/NotificationBadge.d.ts +4 -3
  237. package/dist/lib/components/Badges/components/NotificationBadge/NotificationBadge.js +71 -0
  238. package/dist/lib/components/Badges/components/PriceBadge/PriceBadge.css +119 -0
  239. package/dist/lib/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.d.ts +4 -4
  240. package/dist/lib/components/Badges/{PriceBadge → components/PriceBadge}/PriceBadge.js +75 -19
  241. package/dist/lib/components/Badges/components/PromoBadge/PromoBadge.css +64 -0
  242. package/dist/{es/components/Badges → lib/components/Badges/components}/PromoBadge/PromoBadge.d.ts +3 -3
  243. package/dist/lib/components/Badges/components/PromoBadge/PromoBadge.js +76 -0
  244. package/dist/lib/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.js +55 -11
  245. package/dist/lib/components/Badges/components/TimerBadge/TimerBadge.css +60 -0
  246. package/dist/{es/components/Badges → lib/components/Badges/components}/TimerBadge/TimerBadge.d.ts +2 -2
  247. package/dist/lib/components/Badges/components/TimerBadge/TimerBadge.js +135 -0
  248. package/dist/lib/components/Banner/Banner.css +195 -1
  249. package/dist/lib/components/Banner/Banner.d.ts +4 -5
  250. package/dist/lib/components/Banner/Banner.js +160 -72
  251. package/dist/lib/components/Banner/BannerDot.css +69 -1
  252. package/dist/lib/components/Banner/BannerDot.d.ts +1 -1
  253. package/dist/lib/components/Banner/BannerDot.js +36 -10
  254. package/dist/lib/components/Banner/slidesSettings.d.ts +2 -4
  255. package/dist/lib/components/Banner/slidesSettings.js +11 -4
  256. package/dist/lib/components/Button/Button.css +814 -1
  257. package/dist/lib/components/Button/Button.d.ts +6 -7
  258. package/dist/lib/components/Button/Button.js +157 -70
  259. package/dist/lib/components/Calendar/Calendar.css +5 -1
  260. package/dist/lib/components/Calendar/Calendar.d.ts +2 -2
  261. package/dist/lib/components/Calendar/Calendar.js +148 -70
  262. package/dist/lib/components/Calendar/components/Day/Day.css +128 -0
  263. package/dist/{es/components/Calendar/components/_Day → lib/components/Calendar/components/Day}/Day.d.ts +4 -4
  264. package/dist/lib/components/Calendar/components/Day/Day.js +117 -0
  265. package/dist/lib/components/Calendar/components/Month/Month.css +81 -0
  266. package/dist/lib/components/Calendar/components/{_Month → Month}/Month.d.ts +2 -3
  267. package/dist/lib/components/Calendar/components/Month/Month.js +122 -0
  268. package/dist/lib/components/Caption/Caption.css +48 -1
  269. package/dist/lib/components/Caption/Caption.d.ts +2 -4
  270. package/dist/lib/components/Caption/Caption.js +40 -15
  271. package/dist/lib/components/Carousel/Carousel.css +215 -1
  272. package/dist/lib/components/Carousel/Carousel.d.ts +10 -11
  273. package/dist/lib/components/Carousel/Carousel.js +226 -195
  274. package/dist/lib/components/Carousel/checkBreakpointsPropTypes.d.ts +1 -1
  275. package/dist/lib/components/Carousel/checkBreakpointsPropTypes.js +17 -5
  276. package/dist/lib/components/Carousel/useGradient.d.ts +1 -1
  277. package/dist/lib/components/Carousel/useGradient.js +24 -11
  278. package/dist/lib/components/Checkbox/Checkbox.css +150 -1
  279. package/dist/lib/components/Checkbox/Checkbox.d.ts +4 -4
  280. package/dist/lib/components/Checkbox/Checkbox.js +74 -34
  281. package/dist/lib/components/Chips/Chip.css +132 -1
  282. package/dist/lib/components/Chips/Chip.d.ts +26 -6
  283. package/dist/lib/components/Chips/Chip.js +75 -35
  284. package/dist/lib/components/Chips/Chips.css +19 -1
  285. package/dist/lib/components/Chips/Chips.d.ts +2 -2
  286. package/dist/lib/components/Chips/Chips.js +91 -46
  287. package/dist/lib/components/Chips/components/ChipsDropdown.css +106 -1
  288. package/dist/lib/components/Chips/components/ChipsDropdown.d.ts +2 -2
  289. package/dist/lib/components/Chips/components/ChipsDropdown.js +66 -30
  290. package/dist/lib/components/Collapse/Collapse.css +3 -0
  291. package/dist/{es/components/_Collapse → lib/components/Collapse}/Collapse.d.ts +3 -3
  292. package/dist/lib/components/Collapse/Collapse.js +141 -0
  293. package/dist/lib/components/ContentArea/ContentArea.css +109 -1
  294. package/dist/lib/components/ContentArea/ContentArea.d.ts +4 -5
  295. package/dist/lib/components/ContentArea/ContentArea.js +43 -13
  296. package/dist/lib/components/ContentView/ContentView.css +103 -1
  297. package/dist/lib/components/ContentView/ContentView.d.ts +2 -3
  298. package/dist/lib/components/ContentView/ContentView.js +62 -16
  299. package/dist/lib/components/Counter/Counter.css +123 -1
  300. package/dist/lib/components/Counter/Counter.d.ts +1 -1
  301. package/dist/lib/components/Counter/Counter.js +70 -24
  302. package/dist/lib/components/Grid/Grid.css +102 -1
  303. package/dist/lib/components/Grid/Grid.d.ts +1 -1
  304. package/dist/lib/components/Grid/Grid.js +39 -12
  305. package/dist/lib/components/Grid/GridColumn.css +3102 -1
  306. package/dist/lib/components/Grid/GridColumn.d.ts +2 -2
  307. package/dist/lib/components/Grid/GridColumn.js +76 -37
  308. package/dist/lib/components/Header/Header.css +122 -1
  309. package/dist/lib/components/Header/Header.d.ts +1 -3
  310. package/dist/lib/components/Header/Header.js +42 -17
  311. package/dist/lib/components/Link/Link.d.ts +2 -2
  312. package/dist/lib/components/Link/Link.js +33 -14
  313. package/dist/lib/components/List/List.css +66 -1
  314. package/dist/lib/components/List/List.d.ts +1 -2
  315. package/dist/lib/components/List/List.js +30 -12
  316. package/dist/lib/components/List/ListItem.css +6 -1
  317. package/dist/lib/components/List/ListItem.d.ts +1 -2
  318. package/dist/lib/components/List/ListItem.js +19 -5
  319. package/dist/lib/components/ListData/ListData.css +162 -1
  320. package/dist/lib/components/ListData/ListData.d.ts +34 -6
  321. package/dist/lib/components/ListData/ListData.js +110 -50
  322. package/dist/lib/components/ListData/ListDataGroup.css +15 -1
  323. package/dist/lib/components/ListData/ListDataGroup.d.ts +4 -4
  324. package/dist/lib/components/ListData/ListDataGroup.js +117 -47
  325. package/dist/lib/components/ListData/components/ListDataSortable.css +79 -1
  326. package/dist/lib/components/ListData/components/ListDataSortable.d.ts +4 -4
  327. package/dist/lib/components/ListData/components/ListDataSortable.js +73 -34
  328. package/dist/lib/components/ListData/doc/i/img.png +0 -0
  329. package/dist/lib/components/ListData/helpers.js +24 -6
  330. package/dist/lib/components/Logo/Logo.css +43 -1
  331. package/dist/lib/components/Logo/Logo.d.ts +1 -1
  332. package/dist/lib/components/Logo/Logo.js +40 -13
  333. package/dist/lib/components/NavArrow/NavArrow.css +63 -1
  334. package/dist/lib/components/NavArrow/NavArrow.d.ts +3 -3
  335. package/dist/lib/components/NavArrow/NavArrow.js +46 -14
  336. package/dist/lib/components/Notification/Notification.css +350 -1
  337. package/dist/lib/components/Notification/Notification.d.ts +4 -5
  338. package/dist/lib/components/Notification/Notification.js +200 -113
  339. package/dist/lib/components/Pagination/Pagination.css +5 -1
  340. package/dist/lib/components/Pagination/Pagination.d.ts +3 -4
  341. package/dist/lib/components/Pagination/Pagination.js +50 -18
  342. package/dist/lib/components/Pagination/components/PaginationButton/PaginationButton.css +62 -1
  343. package/dist/lib/components/Pagination/components/PaginationButton/PaginationButton.d.ts +4 -5
  344. package/dist/lib/components/Pagination/components/PaginationButton/PaginationButton.js +34 -11
  345. package/dist/lib/components/Pagination/components/PaginationButtons/PaginationButtons.css +10 -1
  346. package/dist/lib/components/Pagination/components/PaginationButtons/PaginationButtons.d.ts +2 -3
  347. package/dist/lib/components/Pagination/components/PaginationButtons/PaginationButtons.js +31 -6
  348. package/dist/lib/components/Pagination/components/PaginationNavigation/PaginationNavigation.css +17 -1
  349. package/dist/lib/components/Pagination/components/PaginationNavigation/PaginationNavigation.d.ts +2 -3
  350. package/dist/lib/components/Pagination/components/PaginationNavigation/PaginationNavigation.js +31 -8
  351. package/dist/lib/components/Pagination/helpers.js +6 -1
  352. package/dist/lib/components/Pagination/usePagination.d.ts +1 -2
  353. package/dist/lib/components/Pagination/usePagination.js +35 -9
  354. package/dist/lib/components/Paragraph/Paragraph.css +43 -1
  355. package/dist/lib/components/Paragraph/Paragraph.d.ts +2 -4
  356. package/dist/lib/components/Paragraph/Paragraph.js +37 -13
  357. package/dist/lib/components/Preloader/Preloader.css +224 -1
  358. package/dist/lib/components/Preloader/Preloader.d.ts +3 -3
  359. package/dist/lib/components/Preloader/Preloader.js +57 -22
  360. package/dist/lib/components/RadioButton/RadioButton.css +120 -1
  361. package/dist/lib/components/RadioButton/RadioButton.d.ts +1 -1
  362. package/dist/lib/components/RadioButton/RadioButton.js +69 -22
  363. package/dist/lib/components/Row/Row.css +238 -1
  364. package/dist/lib/components/Row/Row.d.ts +2 -2
  365. package/dist/lib/components/Row/Row.js +75 -39
  366. package/dist/lib/components/Search/Search.css +453 -1
  367. package/dist/lib/components/Search/Search.d.ts +8 -7
  368. package/dist/lib/components/Search/Search.js +261 -121
  369. package/dist/lib/components/Select/Select.css +389 -1
  370. package/dist/lib/components/Select/Select.d.ts +84 -8
  371. package/dist/lib/components/Select/Select.js +186 -69
  372. package/dist/lib/components/Select/reducer/selectReducer.d.ts +1 -1
  373. package/dist/lib/components/Select/reducer/selectReducer.js +41 -21
  374. package/dist/lib/components/Selector/Selector.css +132 -1
  375. package/dist/lib/components/Selector/Selector.d.ts +1 -1
  376. package/dist/lib/components/Selector/Selector.js +70 -27
  377. package/dist/lib/components/Selector/doc/Selector.example.css +17 -0
  378. package/dist/lib/components/Sliders/Slider/Slider.css +128 -1
  379. package/dist/lib/components/Sliders/Slider/Slider.d.ts +1 -1
  380. package/dist/lib/components/Sliders/Slider/Slider.js +75 -29
  381. package/dist/lib/components/Sliders/SliderRange/SliderRange.css +169 -1
  382. package/dist/lib/components/Sliders/SliderRange/SliderRange.d.ts +1 -1
  383. package/dist/lib/components/Sliders/SliderRange/SliderRange.js +100 -37
  384. package/dist/lib/components/Sliders/SliderRange/helpers.js +18 -5
  385. package/dist/lib/components/Sliders/SliderRatio/SliderRatio.css +219 -1
  386. package/dist/lib/components/Sliders/SliderRatio/SliderRatio.d.ts +1 -1
  387. package/dist/lib/components/Sliders/SliderRatio/SliderRatio.js +111 -40
  388. package/dist/lib/components/Sliders/SliderRatio/helpers.js +27 -8
  389. package/dist/lib/components/Sliders/SliderRatio/types.d.ts +1 -1
  390. package/dist/lib/components/Sliders/SliderRatio/types.js +2 -0
  391. package/dist/lib/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.css +84 -1
  392. package/dist/lib/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.d.ts +2 -2
  393. package/dist/lib/components/Sliders/components/SliderDisplayValue/SliderDisplayValue.js +56 -17
  394. package/dist/lib/components/Sliders/components/SliderScale/SliderScale.css +15 -1
  395. package/dist/lib/components/Sliders/components/SliderScale/SliderScale.d.ts +2 -2
  396. package/dist/lib/components/Sliders/components/SliderScale/SliderScale.js +39 -11
  397. package/dist/lib/components/Sliders/components/SliderScale/helpers.js +33 -15
  398. package/dist/lib/components/Sliders/helpers.js +22 -5
  399. package/dist/lib/components/Snackbar/Snackbar.css +220 -1
  400. package/dist/lib/components/Snackbar/Snackbar.d.ts +3 -3
  401. package/dist/lib/components/Snackbar/Snackbar.js +138 -81
  402. package/dist/lib/components/Snackbar/SnackbarTimer/SnackbarTimer.css +66 -1
  403. package/dist/lib/components/Snackbar/SnackbarTimer/SnackbarTimer.d.ts +3 -3
  404. package/dist/lib/components/Snackbar/SnackbarTimer/SnackbarTimer.js +36 -17
  405. package/dist/lib/components/Switcher/Switcher.css +160 -1
  406. package/dist/lib/components/Switcher/Switcher.d.ts +1 -2
  407. package/dist/lib/components/Switcher/Switcher.js +52 -21
  408. package/dist/lib/components/Tabs/Tab.d.ts +6 -0
  409. package/dist/lib/components/Tabs/Tab.js +26 -5
  410. package/dist/lib/components/Tabs/Tabs.css +306 -1
  411. package/dist/lib/components/Tabs/Tabs.d.ts +5 -6
  412. package/dist/lib/components/Tabs/Tabs.js +209 -95
  413. package/dist/lib/components/TextField/TextField.css +343 -1
  414. package/dist/lib/components/TextField/TextField.d.ts +3 -3
  415. package/dist/lib/components/TextField/TextField.js +238 -113
  416. package/dist/lib/components/TextField/utils/countGraphemes.js +28 -11
  417. package/dist/lib/components/TextLink/TextLink.css +50 -1
  418. package/dist/lib/components/TextLink/TextLink.d.ts +2 -2
  419. package/dist/lib/components/TextLink/TextLink.js +41 -18
  420. package/dist/lib/components/Tile/Tile.css +43 -1
  421. package/dist/lib/components/Tile/Tile.d.ts +5 -7
  422. package/dist/lib/components/Tile/Tile.js +54 -26
  423. package/dist/lib/components/Tooltip/Tooltip.css +335 -1
  424. package/dist/lib/components/Tooltip/Tooltip.d.ts +8 -9
  425. package/dist/lib/components/Tooltip/Tooltip.js +218 -110
  426. package/dist/lib/constants/throttleTime.js +3 -2
  427. package/dist/lib/hooks/usePrevious.js +11 -4
  428. package/dist/lib/hooks/useResolution.d.ts +1 -1
  429. package/dist/lib/hooks/useResolution.js +23 -9
  430. package/dist/lib/hooks/useSwipe.d.ts +1 -1
  431. package/dist/lib/hooks/useSwipe.js +63 -21
  432. package/dist/lib/index.d.ts +9 -16
  433. package/dist/lib/index.js +101 -82
  434. package/package.json +101 -106
  435. package/styles/base.less +171 -0
  436. package/styles/colors.css +0 -53
  437. package/dist/es/components/Badges/CounterBadge/CounterBadge.css +0 -1
  438. package/dist/es/components/Badges/NotificationBadge/NotificationBadge.css +0 -1
  439. package/dist/es/components/Badges/NotificationBadge/NotificationBadge.js +0 -34
  440. package/dist/es/components/Badges/PriceBadge/PriceBadge.css +0 -1
  441. package/dist/es/components/Badges/PromoBadge/PromoBadge.css +0 -1
  442. package/dist/es/components/Badges/TimerBadge/TimerBadge.css +0 -1
  443. package/dist/es/components/Calendar/components/_Day/Day.css +0 -1
  444. package/dist/es/components/Calendar/components/_Month/Month.css +0 -1
  445. package/dist/es/components/Modal/Modal.css +0 -1
  446. package/dist/es/components/Modal/Modal.d.ts +0 -106
  447. package/dist/es/components/Modal/Modal.js +0 -277
  448. package/dist/es/components/Modal/_ModalContent/ModalContent.css +0 -1
  449. package/dist/es/components/Modal/_ModalContent/ModalContent.d.ts +0 -8
  450. package/dist/es/components/Modal/_ModalContent/ModalContent.js +0 -167
  451. package/dist/es/components/Modal/_ModalDesktop/ModalDesktop.css +0 -1
  452. package/dist/es/components/Modal/_ModalDesktop/ModalDesktop.d.ts +0 -8
  453. package/dist/es/components/Modal/_ModalDesktop/ModalDesktop.js +0 -32
  454. package/dist/es/components/Modal/_ModalMobileBottom/ModalMobileBottom.css +0 -1
  455. package/dist/es/components/Modal/_ModalMobileBottom/ModalMobileBottom.d.ts +0 -12
  456. package/dist/es/components/Modal/_ModalMobileBottom/ModalMobileBottom.js +0 -114
  457. package/dist/es/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.css +0 -1
  458. package/dist/es/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.d.ts +0 -8
  459. package/dist/es/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.js +0 -55
  460. package/dist/es/components/Modal/mocks.d.ts +0 -3
  461. package/dist/es/components/Modal/mocks.js +0 -79
  462. package/dist/es/components/Modal/types.d.ts +0 -28
  463. package/dist/es/components/Modal/types.js +0 -1
  464. package/dist/es/components/Modal/utils/utils.d.ts +0 -18
  465. package/dist/es/components/Modal/utils/utils.js +0 -66
  466. package/dist/es/components/ScrollBar/ScrollBar.css +0 -1
  467. package/dist/es/components/ScrollBar/ScrollBar.d.ts +0 -34
  468. package/dist/es/components/ScrollBar/ScrollBar.js +0 -86
  469. package/dist/es/components/_Collapse/Collapse.css +0 -1
  470. package/dist/es/styles/base.css +0 -1
  471. package/dist/lib/components/Badges/CounterBadge/CounterBadge.css +0 -1
  472. package/dist/lib/components/Badges/CounterBadge/CounterBadge.js +0 -52
  473. package/dist/lib/components/Badges/NotificationBadge/NotificationBadge.css +0 -1
  474. package/dist/lib/components/Badges/NotificationBadge/NotificationBadge.js +0 -43
  475. package/dist/lib/components/Badges/PriceBadge/PriceBadge.css +0 -1
  476. package/dist/lib/components/Badges/PromoBadge/PromoBadge.css +0 -1
  477. package/dist/lib/components/Badges/PromoBadge/PromoBadge.js +0 -49
  478. package/dist/lib/components/Badges/TimerBadge/TimerBadge.css +0 -1
  479. package/dist/lib/components/Badges/TimerBadge/TimerBadge.js +0 -97
  480. package/dist/lib/components/Calendar/components/_Day/Day.css +0 -1
  481. package/dist/lib/components/Calendar/components/_Day/Day.js +0 -75
  482. package/dist/lib/components/Calendar/components/_Month/Month.css +0 -1
  483. package/dist/lib/components/Calendar/components/_Month/Month.js +0 -93
  484. package/dist/lib/components/Modal/Modal.css +0 -1
  485. package/dist/lib/components/Modal/Modal.d.ts +0 -106
  486. package/dist/lib/components/Modal/Modal.js +0 -286
  487. package/dist/lib/components/Modal/_ModalContent/ModalContent.css +0 -1
  488. package/dist/lib/components/Modal/_ModalContent/ModalContent.d.ts +0 -8
  489. package/dist/lib/components/Modal/_ModalContent/ModalContent.js +0 -176
  490. package/dist/lib/components/Modal/_ModalDesktop/ModalDesktop.css +0 -1
  491. package/dist/lib/components/Modal/_ModalDesktop/ModalDesktop.d.ts +0 -8
  492. package/dist/lib/components/Modal/_ModalDesktop/ModalDesktop.js +0 -41
  493. package/dist/lib/components/Modal/_ModalMobileBottom/ModalMobileBottom.css +0 -1
  494. package/dist/lib/components/Modal/_ModalMobileBottom/ModalMobileBottom.d.ts +0 -12
  495. package/dist/lib/components/Modal/_ModalMobileBottom/ModalMobileBottom.js +0 -123
  496. package/dist/lib/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.css +0 -1
  497. package/dist/lib/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.d.ts +0 -8
  498. package/dist/lib/components/Modal/_ModalMobileFullScreen/ModalMobileFullScreen.js +0 -64
  499. package/dist/lib/components/Modal/mocks.d.ts +0 -3
  500. package/dist/lib/components/Modal/mocks.js +0 -85
  501. package/dist/lib/components/Modal/types.d.ts +0 -28
  502. package/dist/lib/components/Modal/types.js +0 -5
  503. package/dist/lib/components/Modal/utils/utils.d.ts +0 -18
  504. package/dist/lib/components/Modal/utils/utils.js +0 -72
  505. package/dist/lib/components/ScrollBar/ScrollBar.css +0 -1
  506. package/dist/lib/components/ScrollBar/ScrollBar.d.ts +0 -34
  507. package/dist/lib/components/ScrollBar/ScrollBar.js +0 -94
  508. package/dist/lib/components/_Collapse/Collapse.css +0 -1
  509. package/dist/lib/components/_Collapse/Collapse.js +0 -95
  510. package/dist/lib/styles/base.css +0 -1
  511. package/styles/base.scss +0 -150
  512. /package/dist/es/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.d.ts +0 -0
  513. /package/dist/lib/components/Badges/{TimerBadge/components → components/TimerBadge}/Timer/Timer.d.ts +0 -0
@@ -1,11 +1,11 @@
1
- import * as React from 'react';
2
- import './Button.scss';
1
+ import React, { Ref } from 'react';
2
+ import './Button.less';
3
3
  export declare const ButtonTypes: {
4
4
  readonly PRIMARY: "primary";
5
5
  readonly OUTLINE: "outline";
6
6
  readonly TEXT: "text";
7
7
  };
8
- type ButtonTypesType = (typeof ButtonTypes)[keyof typeof ButtonTypes];
8
+ declare type ButtonTypesType = typeof ButtonTypes[keyof typeof ButtonTypes];
9
9
  export declare const ButtonThemes: {
10
10
  readonly GREEN: "green";
11
11
  readonly GREEN_SOFT: "green-soft";
@@ -15,14 +15,14 @@ export declare const ButtonThemes: {
15
15
  readonly BLACK: "black";
16
16
  readonly DANGER: "danger";
17
17
  };
18
- type ButtonThemesType = (typeof ButtonThemes)[keyof typeof ButtonThemes];
18
+ declare type ButtonThemesType = typeof ButtonThemes[keyof typeof ButtonThemes];
19
19
  export declare const ButtonSizes: {
20
20
  readonly EXTRA_SMALL: "extra-small";
21
21
  readonly SMALL: "small";
22
22
  readonly MEDIUM: "medium";
23
23
  readonly LARGE: "large";
24
24
  };
25
- type ButtonSizesType = (typeof ButtonSizes)[keyof typeof ButtonSizes];
25
+ declare type ButtonSizesType = typeof ButtonSizes[keyof typeof ButtonSizes];
26
26
  export interface IButtonProps {
27
27
  /** Дополнительный класс корневого элемента */
28
28
  className?: string | string[];
@@ -81,10 +81,9 @@ export interface IButtonProps {
81
81
  /** Отключение кнопки */
82
82
  disabled?: boolean;
83
83
  /** Ссылка на элемент */
84
- buttonRef?: React.Ref<HTMLButtonElement | HTMLAnchorElement>;
84
+ buttonRef?: Ref<HTMLButtonElement | HTMLAnchorElement>;
85
85
  /** Обрезать текст при недостаточной ширине и добавлять многоточие */
86
86
  ellipsis?: boolean;
87
- children?: React.ReactNode;
88
87
  /** Обработчик клика по кнопке */
89
88
  onClick?: (e: React.SyntheticEvent<EventTarget>) => void;
90
89
  }
@@ -1,12 +1,15 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _extends from "@babel/runtime/helpers/extends";
4
- import "core-js/modules/es.array.concat.js";
5
4
  import "core-js/modules/es.array.is-array.js";
6
- import * as React from 'react';
5
+ import "core-js/modules/es.array.concat.js";
6
+ import "core-js/modules/es.object.values.js";
7
+ import React from 'react';
7
8
  import { cnCreate, detectTouch, filterDataAttrs } from '@megafon/ui-helpers';
9
+ import PropTypes from 'prop-types';
8
10
  import Preloader, { PreloaderColors } from "../Preloader/Preloader";
9
11
  import "./Button.css";
12
+
10
13
  var Arrow = function Arrow(props) {
11
14
  return /*#__PURE__*/React.createElement("svg", _extends({
12
15
  viewBox: "0 0 40 40"
@@ -14,6 +17,7 @@ var Arrow = function Arrow(props) {
14
17
  d: "M16 26l6-6-6-6 2-2 8 8-8 8z"
15
18
  }));
16
19
  };
20
+
17
21
  export var ButtonTypes = {
18
22
  PRIMARY: 'primary',
19
23
  OUTLINE: 'outline',
@@ -35,59 +39,65 @@ export var ButtonSizes = {
35
39
  LARGE: 'large'
36
40
  };
37
41
  var Content;
42
+
38
43
  (function (Content) {
39
44
  Content["TEXT"] = "text";
40
45
  Content["ICON"] = "icon";
41
46
  Content["ICON_TEXT"] = "icon-text";
42
47
  })(Content || (Content = {}));
48
+
43
49
  var getLoaderSize = function getLoaderSize(size) {
44
50
  return size === ButtonSizes.SMALL || size === ButtonSizes.EXTRA_SMALL ? ButtonSizes.SMALL : ButtonSizes.MEDIUM;
45
51
  };
52
+
46
53
  var cn = cnCreate('mfui-button');
54
+
47
55
  var Button = function Button(_ref) {
48
- var _ref$classes = _ref.classes,
49
- _ref$classes2 = _ref$classes === void 0 ? {} : _ref$classes,
50
- rootClassName = _ref$classes2.root,
51
- contentClassName = _ref$classes2.content,
52
- innerClassName = _ref$classes2.inner,
53
- _ref$className = _ref.className,
54
- className = _ref$className === void 0 ? '' : _ref$className,
55
- _ref$theme = _ref.theme,
56
- theme = _ref$theme === void 0 ? 'green' : _ref$theme,
57
- _ref$type = _ref.type,
58
- type = _ref$type === void 0 ? 'primary' : _ref$type,
59
- href = _ref.href,
60
- download = _ref.download,
61
- target = _ref.target,
62
- rel = _ref.rel,
63
- _ref$actionType = _ref.actionType,
64
- actionType = _ref$actionType === void 0 ? 'button' : _ref$actionType,
65
- _ref$sizeAll = _ref.sizeAll,
66
- sizeAll = _ref$sizeAll === void 0 ? 'medium' : _ref$sizeAll,
67
- sizeWide = _ref.sizeWide,
68
- sizeDesktop = _ref.sizeDesktop,
69
- sizeTablet = _ref.sizeTablet,
70
- sizeMobile = _ref.sizeMobile,
71
- _ref$fullWidth = _ref.fullWidth,
72
- fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
73
- _ref$fullWidthMobile = _ref.fullWidthMobile,
74
- fullWidthMobile = _ref$fullWidthMobile === void 0 ? false : _ref$fullWidthMobile,
75
- _ref$showLoader = _ref.showLoader,
76
- showLoader = _ref$showLoader === void 0 ? false : _ref$showLoader,
77
- _ref$showArrow = _ref.showArrow,
78
- showArrow = _ref$showArrow === void 0 ? false : _ref$showArrow,
79
- icon = _ref.icon,
80
- disabled = _ref.disabled,
81
- children = _ref.children,
82
- _ref$ellipsis = _ref.ellipsis,
83
- ellipsis = _ref$ellipsis === void 0 ? false : _ref$ellipsis,
84
- onClick = _ref.onClick,
85
- dataAttrs = _ref.dataAttrs,
86
- buttonRef = _ref.buttonRef;
56
+ var _ref$classes = _ref.classes;
57
+ _ref$classes = _ref$classes === void 0 ? {} : _ref$classes;
58
+ var rootClassName = _ref$classes.root,
59
+ contentClassName = _ref$classes.content,
60
+ innerClassName = _ref$classes.inner,
61
+ _ref$className = _ref.className,
62
+ className = _ref$className === void 0 ? '' : _ref$className,
63
+ _ref$theme = _ref.theme,
64
+ theme = _ref$theme === void 0 ? 'green' : _ref$theme,
65
+ _ref$type = _ref.type,
66
+ type = _ref$type === void 0 ? 'primary' : _ref$type,
67
+ href = _ref.href,
68
+ download = _ref.download,
69
+ target = _ref.target,
70
+ rel = _ref.rel,
71
+ _ref$actionType = _ref.actionType,
72
+ actionType = _ref$actionType === void 0 ? 'button' : _ref$actionType,
73
+ _ref$sizeAll = _ref.sizeAll,
74
+ sizeAll = _ref$sizeAll === void 0 ? 'medium' : _ref$sizeAll,
75
+ sizeWide = _ref.sizeWide,
76
+ sizeDesktop = _ref.sizeDesktop,
77
+ sizeTablet = _ref.sizeTablet,
78
+ sizeMobile = _ref.sizeMobile,
79
+ _ref$fullWidth = _ref.fullWidth,
80
+ fullWidth = _ref$fullWidth === void 0 ? false : _ref$fullWidth,
81
+ _ref$fullWidthMobile = _ref.fullWidthMobile,
82
+ fullWidthMobile = _ref$fullWidthMobile === void 0 ? false : _ref$fullWidthMobile,
83
+ _ref$showLoader = _ref.showLoader,
84
+ showLoader = _ref$showLoader === void 0 ? false : _ref$showLoader,
85
+ _ref$showArrow = _ref.showArrow,
86
+ showArrow = _ref$showArrow === void 0 ? false : _ref$showArrow,
87
+ icon = _ref.icon,
88
+ disabled = _ref.disabled,
89
+ children = _ref.children,
90
+ _ref$ellipsis = _ref.ellipsis,
91
+ ellipsis = _ref$ellipsis === void 0 ? false : _ref$ellipsis,
92
+ onClick = _ref.onClick,
93
+ dataAttrs = _ref.dataAttrs,
94
+ buttonRef = _ref.buttonRef;
95
+
87
96
  var _React$useState = React.useState(false),
88
- _React$useState2 = _slicedToArray(_React$useState, 2),
89
- isTouch = _React$useState2[0],
90
- setTouch = _React$useState2[1];
97
+ _React$useState2 = _slicedToArray(_React$useState, 2),
98
+ isTouch = _React$useState2[0],
99
+ setTouch = _React$useState2[1];
100
+
91
101
  var ElementType = href ? 'a' : 'button';
92
102
  var displayArrow = showArrow && !icon;
93
103
  var handleClick = React.useCallback(function (e) {
@@ -95,6 +105,7 @@ var Button = function Button(_ref) {
95
105
  e.preventDefault();
96
106
  return;
97
107
  }
108
+
98
109
  onClick === null || onClick === void 0 ? void 0 : onClick(e);
99
110
  }, [disabled, onClick]);
100
111
  var currentTheme = React.useMemo(function () {
@@ -107,8 +118,10 @@ var Button = function Button(_ref) {
107
118
  switch (true) {
108
119
  case loaderWhite:
109
120
  return PreloaderColors.WHITE;
121
+
110
122
  case type === ButtonTypes.OUTLINE && theme === ButtonThemes.BLACK:
111
123
  return PreloaderColors.BLACK;
124
+
112
125
  default:
113
126
  return PreloaderColors.DEFAULT;
114
127
  }
@@ -117,6 +130,7 @@ var Button = function Button(_ref) {
117
130
  if (!children && !icon) {
118
131
  return null;
119
132
  }
133
+
120
134
  return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.content), {
121
135
  className: cn('content', {
122
136
  ellipsis: ellipsis,
@@ -136,8 +150,10 @@ var Button = function Button(_ref) {
136
150
  switch (true) {
137
151
  case icon && !children:
138
152
  return Content.ICON;
153
+
139
154
  case icon && !!children:
140
155
  return Content.ICON_TEXT;
156
+
141
157
  default:
142
158
  return Content.TEXT;
143
159
  }
@@ -157,18 +173,23 @@ var Button = function Button(_ref) {
157
173
  sizeMobile: sizeMobile && getLoaderSize(sizeMobile)
158
174
  });
159
175
  }, [dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.loader, loaderColor, sizeAll, sizeWide, sizeDesktop, sizeTablet, sizeMobile]);
176
+
160
177
  var setRelAttribute = function setRelAttribute() {
161
178
  if (ElementType !== 'a') {
162
179
  return undefined;
163
180
  }
181
+
164
182
  if (rel) {
165
183
  return rel;
166
184
  }
185
+
167
186
  if (target && target !== '_self') {
168
187
  return 'noreferrer noopener';
169
188
  }
189
+
170
190
  return undefined;
171
191
  };
192
+
172
193
  var classNameValue = Array.isArray(className) ? [].concat(_toConsumableArray(className), [rootClassName]) : [className, rootClassName];
173
194
  React.useEffect(function () {
174
195
  setTouch(detectTouch());
@@ -202,4 +223,43 @@ var Button = function Button(_ref) {
202
223
  className: cn('inner', innerClassName)
203
224
  }), renderedContent, showLoader && renderedLoader));
204
225
  };
226
+
227
+ Button.propTypes = {
228
+ classes: PropTypes.shape({
229
+ root: PropTypes.string,
230
+ content: PropTypes.string,
231
+ inner: PropTypes.string
232
+ }),
233
+ dataAttrs: PropTypes.shape({
234
+ root: PropTypes.objectOf(PropTypes.string.isRequired),
235
+ content: PropTypes.objectOf(PropTypes.string.isRequired),
236
+ inner: PropTypes.objectOf(PropTypes.string.isRequired),
237
+ loader: PropTypes.objectOf(PropTypes.string.isRequired),
238
+ text: PropTypes.objectOf(PropTypes.string.isRequired),
239
+ arrow: PropTypes.objectOf(PropTypes.string.isRequired)
240
+ }),
241
+ theme: PropTypes.oneOf(Object.values(ButtonThemes)),
242
+ type: PropTypes.oneOf(Object.values(ButtonTypes)),
243
+ href: PropTypes.string,
244
+ download: PropTypes.bool,
245
+ target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),
246
+ rel: PropTypes.string,
247
+ actionType: PropTypes.oneOf(['button', 'reset', 'submit']),
248
+ sizeAll: PropTypes.oneOf(Object.values(ButtonSizes)),
249
+ sizeWide: PropTypes.oneOf(Object.values(ButtonSizes)),
250
+ sizeDesktop: PropTypes.oneOf(Object.values(ButtonSizes)),
251
+ sizeTablet: PropTypes.oneOf(Object.values(ButtonSizes)),
252
+ sizeMobile: PropTypes.oneOf(Object.values(ButtonSizes)),
253
+ fullWidth: PropTypes.bool,
254
+ fullWidthMobile: PropTypes.bool,
255
+ showLoader: PropTypes.bool,
256
+ showArrow: PropTypes.bool,
257
+ icon: PropTypes.element,
258
+ disabled: PropTypes.bool,
259
+ buttonRef: PropTypes.oneOfType([PropTypes.func, PropTypes.oneOfType([PropTypes.shape({
260
+ current: PropTypes.elementType
261
+ }), PropTypes.any])]),
262
+ ellipsis: PropTypes.bool,
263
+ onClick: PropTypes.func
264
+ };
205
265
  export default Button;
@@ -1 +1,5 @@
1
- h1,h2,h3,h4,h5{margin:0}.mfui-calendar{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}
1
+ .mfui-calendar {
2
+ display: -webkit-inline-box;
3
+ display: -ms-inline-flexbox;
4
+ display: inline-flex;
5
+ }
@@ -1,5 +1,5 @@
1
- import * as React from 'react';
2
- import './Calendar.scss';
1
+ import React from 'react';
2
+ import './Calendar.less';
3
3
  export interface ICalendarProps {
4
4
  /** Дополнительные data атрибуты к внутренним элементам */
5
5
  dataAttrs?: {
@@ -1,20 +1,26 @@
1
1
  import _typeof from "@babel/runtime/helpers/typeof";
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
3
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
- import "core-js/modules/es.symbol.js";
5
- import "core-js/modules/es.array.concat.js";
6
4
  import "core-js/modules/es.array.index-of.js";
5
+ import "core-js/modules/es.symbol.js";
7
6
  import "core-js/modules/es.array.map.js";
8
7
  import "core-js/modules/es.date.to-string.js";
8
+ import "core-js/modules/es.array.concat.js";
9
+
9
10
  var __rest = this && this.__rest || function (s, e) {
10
11
  var t = {};
11
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
12
+
13
+ for (var p in s) {
14
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
15
+ }
16
+
12
17
  if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
13
18
  if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
14
19
  }
15
20
  return t;
16
21
  };
17
- import * as React from 'react';
22
+
23
+ import React, { useState, useEffect, useMemo, useRef } from 'react';
18
24
  import { START_DATE, END_DATE, useDatepicker, useMonth } from '@datepicker-react/hooks';
19
25
  import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
20
26
  import differenceInDays from 'date-fns/differenceInDays';
@@ -24,21 +30,26 @@ import isBefore from 'date-fns/isBefore';
24
30
  import isEqual from 'date-fns/isEqual';
25
31
  import isSameMonth from 'date-fns/isSameMonth';
26
32
  import ruLocale from 'date-fns/locale/ru';
27
- import Day from "./components/_Day/Day";
28
- import Month from "./components/_Month/Month";
33
+ import PropTypes from 'prop-types';
34
+ import Day from "./components/Day/Day";
35
+ import Month from "./components/Month/Month";
29
36
  import "./Calendar.css";
37
+
30
38
  var formatDate = function formatDate(date, pattern) {
31
39
  var locale = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ruLocale;
32
40
  return format(date, pattern, {
33
41
  locale: locale
34
42
  });
35
43
  };
44
+
36
45
  var weekdayLabelFormat = function weekdayLabelFormat(date) {
37
46
  return formatDate(date, 'EEEEEE');
38
47
  };
48
+
39
49
  var dayLabelFormat = function dayLabelFormat(date) {
40
50
  return formatDate(date, 'd');
41
51
  };
52
+
42
53
  var monthLabelFormat = function monthLabelFormat(date) {
43
54
  return formatDate(date, 'LLLL');
44
55
  };
@@ -52,20 +63,23 @@ var monthLabelFormat = function monthLabelFormat(date) {
52
63
  - Should correctly highlights period if start date chosen and hover on possible end date
53
64
 
54
65
  */
66
+
67
+
55
68
  var cn = cnCreate('mfui-calendar');
69
+
56
70
  var Calendar = function Calendar(_ref) {
57
71
  var dataAttrs = _ref.dataAttrs,
58
- _ref$isSingleDate = _ref.isSingleDate,
59
- isSingleDate = _ref$isSingleDate === void 0 ? false : _ref$isSingleDate,
60
- _ref$startDate = _ref.startDate,
61
- startDate = _ref$startDate === void 0 ? null : _ref$startDate,
62
- _ref$endDate = _ref.endDate,
63
- endDate = _ref$endDate === void 0 ? null : _ref$endDate,
64
- className = _ref.className,
65
- onChange = _ref.onChange,
66
- minBookingDate = _ref.minBookingDate,
67
- maxBookingDate = _ref.maxBookingDate;
68
- var calendarStateFromProps = React.useMemo(function () {
72
+ _ref$isSingleDate = _ref.isSingleDate,
73
+ isSingleDate = _ref$isSingleDate === void 0 ? false : _ref$isSingleDate,
74
+ _ref$startDate = _ref.startDate,
75
+ startDate = _ref$startDate === void 0 ? null : _ref$startDate,
76
+ _ref$endDate = _ref.endDate,
77
+ endDate = _ref$endDate === void 0 ? null : _ref$endDate,
78
+ className = _ref.className,
79
+ onChange = _ref.onChange,
80
+ minBookingDate = _ref.minBookingDate,
81
+ maxBookingDate = _ref.maxBookingDate;
82
+ var calendarStateFromProps = useMemo(function () {
69
83
  var isInitialDatesEqual = startDate && endDate && isEqual(startDate, endDate);
70
84
  var isStartFocus = !startDate || endDate && !isInitialDatesEqual;
71
85
  var isStartDateBlocked = startDate && minBookingDate && maxBookingDate && (isAfter(minBookingDate, startDate) || isBefore(maxBookingDate, startDate));
@@ -77,42 +91,47 @@ var Calendar = function Calendar(_ref) {
77
91
  focusedInput: isStartFocus ? START_DATE : END_DATE
78
92
  };
79
93
  }, [startDate, endDate, isSingleDate, minBookingDate, maxBookingDate]);
80
- var _React$useState = React.useState(calendarStateFromProps),
81
- _React$useState2 = _slicedToArray(_React$useState, 2),
82
- calendarState = _React$useState2[0],
83
- setCalendarState = _React$useState2[1];
84
- var _React$useState3 = React.useState(undefined),
85
- _React$useState4 = _slicedToArray(_React$useState3, 2),
86
- hoveredDate = _React$useState4[0],
87
- setHoveredDate = _React$useState4[1];
88
- var isUserChoice = React.useRef(false);
94
+
95
+ var _useState = useState(calendarStateFromProps),
96
+ _useState2 = _slicedToArray(_useState, 2),
97
+ calendarState = _useState2[0],
98
+ setCalendarState = _useState2[1];
99
+
100
+ var _useState3 = useState(undefined),
101
+ _useState4 = _slicedToArray(_useState3, 2),
102
+ hoveredDate = _useState4[0],
103
+ setHoveredDate = _useState4[1];
104
+
105
+ var isUserChoice = useRef(false);
89
106
  var stateStartDate = calendarState.startDate,
90
- stateEndDate = calendarState.endDate,
91
- stateFocusedInput = calendarState.focusedInput;
107
+ stateEndDate = calendarState.endDate,
108
+ stateFocusedInput = calendarState.focusedInput;
109
+
92
110
  var _a = useDatepicker(_extends({
93
- onDatesChange: function onDatesChange() {
94
- return undefined;
95
- },
96
- numberOfMonths: 1,
97
- minBookingDate: minBookingDate,
98
- maxBookingDate: maxBookingDate,
99
- initialVisibleMonth: stateStartDate || undefined
100
- }, calendarState)),
101
- firstDayOfWeek = _a.firstDayOfWeek,
102
- activeMonths = _a.activeMonths,
103
- goToPreviousMonths = _a.goToPreviousMonths,
104
- goToNextMonths = _a.goToNextMonths,
105
- goToDate = _a.goToDate,
106
- pickerProps = __rest(_a, ["firstDayOfWeek", "activeMonths", "goToPreviousMonths", "goToNextMonths", "goToDate"]);
107
- React.useEffect(function () {
111
+ onDatesChange: function onDatesChange() {
112
+ return undefined;
113
+ },
114
+ numberOfMonths: 1,
115
+ minBookingDate: minBookingDate,
116
+ maxBookingDate: maxBookingDate,
117
+ initialVisibleMonth: stateStartDate || undefined
118
+ }, calendarState)),
119
+ firstDayOfWeek = _a.firstDayOfWeek,
120
+ activeMonths = _a.activeMonths,
121
+ goToPreviousMonths = _a.goToPreviousMonths,
122
+ goToNextMonths = _a.goToNextMonths,
123
+ goToDate = _a.goToDate,
124
+ pickerProps = __rest(_a, ["firstDayOfWeek", "activeMonths", "goToPreviousMonths", "goToNextMonths", "goToDate"]);
125
+
126
+ useEffect(function () {
108
127
  isUserChoice.current = false;
109
128
  }, [startDate]);
110
- React.useEffect(function () {
129
+ useEffect(function () {
111
130
  var propsStartDate = calendarStateFromProps.startDate;
112
131
  setCalendarState(calendarStateFromProps);
113
- !isUserChoice.current && propsStartDate && goToDate(propsStartDate);
114
- // eslint-disable-next-line react-hooks/exhaustive-deps
132
+ !isUserChoice.current && propsStartDate && goToDate(propsStartDate); // eslint-disable-next-line react-hooks/exhaustive-deps
115
133
  }, [calendarStateFromProps]);
134
+
116
135
  var getCalendarState = function getCalendarState(date) {
117
136
  var isStartChose = stateFocusedInput === START_DATE;
118
137
  var isEndChose = stateFocusedInput === END_DATE;
@@ -124,11 +143,13 @@ var Calendar = function Calendar(_ref) {
124
143
  var isClickAfterChosenEndDate = stateEndDate && isStartChose && isAfter(date, stateEndDate || 0);
125
144
  var isClickBeforeStartDate = stateStartDate && isEndChose && !isAfter(date, stateStartDate || 0);
126
145
  var isStartDateChose = isStartDateClick || isEndDateClick || isClickBeforeChosenEndDate || isClickAfterChosenEndDate || isClickBeforeStartDate;
146
+
127
147
  switch (true) {
128
148
  case isSingleDate:
129
149
  return _extends(_extends({}, calendarState), {
130
150
  startDate: date
131
151
  });
152
+
132
153
  case isPeriodNarrow:
133
154
  {
134
155
  var isCloserToStart = stateStartDate && stateEndDate && differenceInDays(stateStartDate, date) >= differenceInDays(date, stateEndDate);
@@ -138,17 +159,20 @@ var Calendar = function Calendar(_ref) {
138
159
  focusedInput: START_DATE
139
160
  });
140
161
  }
162
+
141
163
  case isStartDateChose:
142
164
  return {
143
165
  startDate: date,
144
166
  endDate: null,
145
167
  focusedInput: END_DATE
146
168
  };
169
+
147
170
  case isEndDateChose:
148
171
  return _extends(_extends({}, calendarState), {
149
172
  endDate: date,
150
173
  focusedInput: START_DATE
151
174
  });
175
+
152
176
  default:
153
177
  return _extends(_extends({}, calendarState), {
154
178
  startDate: date,
@@ -156,37 +180,45 @@ var Calendar = function Calendar(_ref) {
156
180
  });
157
181
  }
158
182
  };
183
+
159
184
  var isDateHighlighted = function isDateHighlighted(date) {
160
185
  if (!stateStartDate || !!stateEndDate || isSingleDate) {
161
186
  return false;
162
187
  }
188
+
163
189
  return !!stateStartDate && !!hoveredDate && isAfter(hoveredDate, date) && isBefore(stateStartDate, date);
164
190
  };
191
+
165
192
  var handleDaySelect = function handleDaySelect(date) {
166
193
  var nextState = getCalendarState(date);
167
194
  var nextStartDate = nextState.startDate,
168
- nextEndDate = nextState.endDate;
195
+ nextEndDate = nextState.endDate;
169
196
  setCalendarState(nextState);
170
197
  isUserChoice.current = true;
171
198
  onChange === null || onChange === void 0 ? void 0 : onChange(nextStartDate, nextEndDate);
172
199
  };
200
+
173
201
  var handleDateHover = function handleDateHover(date) {
174
- date && setHoveredDate(date);
202
+ return setHoveredDate(date);
175
203
  };
204
+
176
205
  var handleDateMouseLeave = function handleDateMouseLeave() {
177
206
  return setHoveredDate(undefined);
178
207
  };
208
+
179
209
  var renderDays = function renderDays(days) {
180
210
  var correctionIndex = 0;
181
211
  return days.map(function (day, index) {
182
212
  if (_typeof(day) === 'object') {
183
213
  var date = day.date,
184
- dayLabel = day.dayLabel;
214
+ dayLabel = day.dayLabel;
215
+
185
216
  if (!dayLabel) {
186
217
  return /*#__PURE__*/React.createElement("div", {
187
218
  key: index + String(date)
188
219
  });
189
220
  }
221
+
190
222
  return /*#__PURE__*/React.createElement(Day, _extends({
191
223
  dataAttrs: {
192
224
  root: _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.day, index + 1 - correctionIndex))
@@ -201,28 +233,32 @@ var Calendar = function Calendar(_ref) {
201
233
  isBetween: isDateHighlighted(date)
202
234
  }));
203
235
  }
236
+
204
237
  correctionIndex += 1;
205
238
  return /*#__PURE__*/React.createElement("div", {
206
239
  key: index + day
207
240
  });
208
241
  });
209
242
  };
243
+
210
244
  var renderMonths = function renderMonths() {
211
245
  return activeMonths.map(function (_ref2) {
212
246
  var month = _ref2.month,
213
- year = _ref2.year;
247
+ year = _ref2.year;
248
+
214
249
  // eslint-disable-next-line react-hooks/rules-of-hooks
215
250
  var _useMonth = useMonth({
216
- year: year,
217
- month: month,
218
- firstDayOfWeek: firstDayOfWeek,
219
- dayLabelFormat: dayLabelFormat,
220
- weekdayLabelFormat: weekdayLabelFormat,
221
- monthLabelFormat: monthLabelFormat
222
- }),
223
- days = _useMonth.days,
224
- weekdayLabels = _useMonth.weekdayLabels,
225
- monthLabel = _useMonth.monthLabel;
251
+ year: year,
252
+ month: month,
253
+ firstDayOfWeek: firstDayOfWeek,
254
+ dayLabelFormat: dayLabelFormat,
255
+ weekdayLabelFormat: weekdayLabelFormat,
256
+ monthLabelFormat: monthLabelFormat
257
+ }),
258
+ days = _useMonth.days,
259
+ weekdayLabels = _useMonth.weekdayLabels,
260
+ monthLabel = _useMonth.monthLabel;
261
+
226
262
  var isPrevMonthDisabled = !!minBookingDate && isSameMonth(new Date(year, month, 1), minBookingDate);
227
263
  var isNextMonthDisabled = !!maxBookingDate && isSameMonth(new Date(year, month, 1), maxBookingDate);
228
264
  return /*#__PURE__*/React.createElement(Month, {
@@ -242,8 +278,26 @@ var Calendar = function Calendar(_ref) {
242
278
  }, renderDays(days));
243
279
  });
244
280
  };
281
+
245
282
  return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
246
283
  className: cn([className])
247
284
  }), renderMonths());
248
285
  };
286
+
287
+ Calendar.propTypes = {
288
+ dataAttrs: PropTypes.shape({
289
+ root: PropTypes.objectOf(PropTypes.string.isRequired),
290
+ day: PropTypes.objectOf(PropTypes.string.isRequired),
291
+ month: PropTypes.objectOf(PropTypes.string.isRequired),
292
+ arrowLeft: PropTypes.objectOf(PropTypes.string.isRequired),
293
+ arrowRight: PropTypes.objectOf(PropTypes.string.isRequired)
294
+ }),
295
+ isSingleDate: PropTypes.bool,
296
+ className: PropTypes.string,
297
+ startDate: PropTypes.instanceOf(Date),
298
+ endDate: PropTypes.instanceOf(Date),
299
+ minBookingDate: PropTypes.instanceOf(Date),
300
+ maxBookingDate: PropTypes.instanceOf(Date),
301
+ onChange: PropTypes.func
302
+ };
249
303
  export default Calendar;