@megafon/ui-shared 6.0.0-beta.5 → 6.1.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.
Files changed (312) hide show
  1. package/CHANGELOG.md +4043 -0
  2. package/dist/es/components/AccordionBox/AccordionBox.css +15 -1
  3. package/dist/es/components/AccordionBox/AccordionBox.d.ts +2 -2
  4. package/dist/es/components/AccordionBox/AccordionBox.js +49 -6
  5. package/dist/es/components/AudioPlayer/AudioPlayer.d.ts +2 -2
  6. package/dist/es/components/AudioPlayer/AudioPlayer.js +27 -11
  7. package/dist/es/components/AudioPlayer/AudioProgress.d.ts +1 -1
  8. package/dist/es/components/AudioPlayer/AudioProgress.js +22 -10
  9. package/dist/es/components/AudioPlayer/AudioRange.d.ts +1 -1
  10. package/dist/es/components/AudioPlayer/AudioRange.js +10 -8
  11. package/dist/es/components/AudioPlayer/AudioVolume.d.ts +1 -1
  12. package/dist/es/components/AudioPlayer/AudioVolume.js +12 -3
  13. package/dist/es/components/AudioPlayer/hooks/useTrackDuration.js +10 -4
  14. package/dist/es/components/AudioPlayer/style/AudioPlayer.css +58 -1
  15. package/dist/es/components/AudioPlayer/style/AudioProgress.css +35 -1
  16. package/dist/es/components/AudioPlayer/style/AudioRange.css +68 -1
  17. package/dist/es/components/AudioPlayer/style/AudioVolume.css +34 -1
  18. package/dist/es/components/AudioPlayer/timerFormatUtil.js +9 -1
  19. package/dist/es/components/BannerBox/BannerBox.d.ts +1 -1
  20. package/dist/es/components/BannerBox/BannerBox.js +12 -3
  21. package/dist/es/components/BenefitsIcons/BenefitsIcons.d.ts +1 -1
  22. package/dist/es/components/BenefitsIcons/BenefitsIcons.js +64 -23
  23. package/dist/es/components/BenefitsIcons/BenefitsIconsTile.d.ts +1 -1
  24. package/dist/es/components/BenefitsIcons/BenefitsIconsTile.js +36 -9
  25. package/dist/es/components/BenefitsIcons/helpers.d.ts +3 -3
  26. package/dist/es/components/BenefitsIcons/helpers.js +20 -6
  27. package/dist/es/components/BenefitsIcons/style/BenefitsIcons.css +38 -1
  28. package/dist/es/components/BenefitsIcons/style/BenefitsIconsTile.css +90 -1
  29. package/dist/es/components/BenefitsIcons/types.d.ts +5 -5
  30. package/dist/es/components/BenefitsPictures/BenefitsPictures.d.ts +1 -1
  31. package/dist/es/components/BenefitsPictures/BenefitsPictures.js +49 -19
  32. package/dist/es/components/BenefitsPictures/BenfitsPictures.css +43 -1
  33. package/dist/es/components/BenefitsPictures/helpers.d.ts +2 -2
  34. package/dist/es/components/BenefitsPictures/helpers.js +14 -0
  35. package/dist/es/components/BenefitsPictures/types.d.ts +3 -3
  36. package/dist/es/components/BenefitsPictures/types.js +0 -1
  37. package/dist/es/components/BlogBox/BlogBox.css +92 -0
  38. package/dist/es/components/BlogBox/BlogBox.d.ts +28 -0
  39. package/dist/es/components/BlogBox/BlogBox.js +101 -0
  40. package/dist/es/components/BlogBox/components/BlogBoxTile.css +197 -0
  41. package/dist/es/components/BlogBox/components/BlogBoxTile.d.ts +9 -0
  42. package/dist/es/components/BlogBox/components/BlogBoxTile.js +67 -0
  43. package/dist/es/components/BlogBox/types.d.ts +37 -0
  44. package/dist/es/components/BlogBox/types.js +0 -0
  45. package/dist/es/components/Breadcrumbs/Breadcrumbs.css +43 -1
  46. package/dist/es/components/Breadcrumbs/Breadcrumbs.d.ts +6 -6
  47. package/dist/es/components/Breadcrumbs/Breadcrumbs.js +39 -10
  48. package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.css +16 -1
  49. package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.d.ts +4 -4
  50. package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.js +36 -11
  51. package/dist/es/components/ButtonBanner/ButtonBanner.css +122 -1
  52. package/dist/es/components/ButtonBanner/ButtonBanner.d.ts +7 -7
  53. package/dist/es/components/ButtonBanner/ButtonBanner.js +53 -22
  54. package/dist/es/components/ButtonLinkBox/ButtonLinkBox.css +19 -1
  55. package/dist/es/components/ButtonLinkBox/ButtonLinkBox.d.ts +3 -3
  56. package/dist/es/components/ButtonLinkBox/ButtonLinkBox.js +51 -20
  57. package/dist/es/components/Card/Card.css +354 -1
  58. package/dist/es/components/Card/Card.d.ts +4 -4
  59. package/dist/es/components/Card/Card.js +115 -25
  60. package/dist/es/components/Card/types.d.ts +10 -10
  61. package/dist/es/components/Card/types.js +0 -1
  62. package/dist/es/components/CardsBox/CardsBox.js +14 -3
  63. package/dist/es/components/CardsBox/helpers.d.ts +2 -2
  64. package/dist/es/components/CardsBox/helpers.js +4 -0
  65. package/dist/es/components/CarouselBox/CarouselBox.d.ts +2 -2
  66. package/dist/es/components/CarouselBox/CarouselBox.js +24 -11
  67. package/dist/es/components/Container/Container.css +3287 -1
  68. package/dist/es/components/Container/Container.d.ts +5 -7
  69. package/dist/es/components/Container/Container.js +25 -10
  70. package/dist/es/components/DownloadLinks/DownloadLink.css +37 -1
  71. package/dist/es/components/DownloadLinks/DownloadLink.d.ts +1 -1
  72. package/dist/es/components/DownloadLinks/DownloadLink.js +44 -13
  73. package/dist/es/components/DownloadLinks/DownloadLinks.css +36 -1
  74. package/dist/es/components/DownloadLinks/DownloadLinks.d.ts +3 -3
  75. package/dist/es/components/DownloadLinks/DownloadLinks.js +13 -2
  76. package/dist/es/components/FaqWrapper/FaqWrapper.d.ts +2 -5
  77. package/dist/es/components/FaqWrapper/FaqWrapper.js +3 -1
  78. package/dist/es/components/ImageBanner/ImageBanner.css +252 -1
  79. package/dist/es/components/ImageBanner/ImageBanner.d.ts +7 -8
  80. package/dist/es/components/ImageBanner/ImageBanner.js +88 -37
  81. package/dist/es/components/Instructions/Instructions.css +827 -1
  82. package/dist/es/components/Instructions/Instructions.d.ts +13 -11
  83. package/dist/es/components/Instructions/Instructions.js +101 -44
  84. package/dist/es/components/NotificationBox/NotificationBox.d.ts +4 -4
  85. package/dist/es/components/NotificationBox/NotificationBox.js +19 -5
  86. package/dist/es/components/NotificationBox/style/NotificationBox.css +28 -0
  87. package/dist/es/components/PageTitle/PageTitle.css +80 -1
  88. package/dist/es/components/PageTitle/PageTitle.d.ts +2 -2
  89. package/dist/es/components/PageTitle/PageTitle.js +37 -12
  90. package/dist/es/components/Partners/Partners.css +53 -1
  91. package/dist/es/components/Partners/Partners.d.ts +2 -2
  92. package/dist/es/components/Partners/Partners.js +48 -17
  93. package/dist/es/components/PictureWithDescription/PictureWithDescription.css +80 -1
  94. package/dist/es/components/PictureWithDescription/PictureWithDescription.d.ts +2 -4
  95. package/dist/es/components/PictureWithDescription/PictureWithDescription.js +28 -10
  96. package/dist/es/components/Property/Property.css +156 -1
  97. package/dist/es/components/Property/Property.d.ts +4 -4
  98. package/dist/es/components/Property/Property.js +81 -37
  99. package/dist/es/components/Property/PropertyDescription.css +17 -1
  100. package/dist/es/components/Property/PropertyDescription.d.ts +3 -3
  101. package/dist/es/components/Property/PropertyDescription.js +28 -8
  102. package/dist/es/components/Property/types.d.ts +5 -7
  103. package/dist/es/components/Property/types.js +0 -1
  104. package/dist/es/components/Steps/Steps.css +41 -1
  105. package/dist/es/components/Steps/Steps.d.ts +1 -2
  106. package/dist/es/components/Steps/Steps.js +19 -4
  107. package/dist/es/components/Steps/StepsItem.css +42 -1
  108. package/dist/es/components/Steps/StepsItem.d.ts +2 -2
  109. package/dist/es/components/Steps/StepsItem.js +9 -2
  110. package/dist/es/components/StoreBanner/StoreBanner.css +346 -1
  111. package/dist/es/components/StoreBanner/StoreBanner.d.ts +5 -5
  112. package/dist/es/components/StoreBanner/StoreBanner.js +97 -41
  113. package/dist/es/components/StoreBanner/doc/img/android-screen.png +0 -0
  114. package/dist/es/components/StoreBanner/doc/img/qr-code.png +0 -0
  115. package/dist/es/components/StoreBanner/doc/img/screen.png +0 -0
  116. package/dist/es/components/StoreButton/StoreButton.css +327 -1
  117. package/dist/es/components/StoreButton/StoreButton.d.ts +3 -3
  118. package/dist/es/components/StoreButton/StoreButton.js +44 -13
  119. package/dist/es/components/Table/Table.css +157 -1
  120. package/dist/es/components/Table/Table.d.ts +1 -1
  121. package/dist/es/components/Table/Table.js +51 -31
  122. package/dist/es/components/Table/TableCell.js +6 -0
  123. package/dist/es/components/Table/TableRow.js +10 -1
  124. package/dist/es/components/TabsBox/TabsBox.d.ts +1 -1
  125. package/dist/es/components/TabsBox/TabsBox.js +13 -4
  126. package/dist/es/components/TextBox/TextBox.css +25 -1
  127. package/dist/es/components/TextBox/TextBox.d.ts +1 -2
  128. package/dist/es/components/TextBox/TextBox.js +23 -8
  129. package/dist/es/components/TextBox/TextBoxPicture.css +27 -1
  130. package/dist/es/components/TextBox/TextBoxPicture.d.ts +2 -2
  131. package/dist/es/components/TextBox/TextBoxPicture.js +14 -5
  132. package/dist/es/components/TextWithIcon/TextWithIcon.css +10 -1
  133. package/dist/es/components/TextWithIcon/TextWithIcon.d.ts +1 -1
  134. package/dist/es/components/TextWithIcon/TextWithIcon.js +24 -6
  135. package/dist/es/components/TextWithIcon/TextWithIconItem.css +29 -1
  136. package/dist/es/components/TextWithIcon/TextWithIconItem.d.ts +1 -1
  137. package/dist/es/components/TextWithIcon/TextWithIconItem.js +21 -6
  138. package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.css +31 -1
  139. package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +1 -1
  140. package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.js +23 -6
  141. package/dist/es/components/VideoBanner/VideoBanner.css +225 -1
  142. package/dist/es/components/VideoBanner/VideoBanner.d.ts +7 -7
  143. package/dist/es/components/VideoBanner/VideoBanner.js +110 -47
  144. package/dist/es/components/VideoBlock/VideoBlock.css +106 -1
  145. package/dist/es/components/VideoBlock/VideoBlock.d.ts +4 -4
  146. package/dist/es/components/VideoBlock/VideoBlock.js +75 -35
  147. package/dist/es/helpers/getColumnConfig.d.ts +1 -5
  148. package/dist/es/helpers/setRelAttribute.d.ts +1 -0
  149. package/dist/es/helpers/setRelAttribute.js +11 -0
  150. package/dist/es/hooks/useResolutions.d.ts +7 -0
  151. package/dist/es/hooks/useResolutions.js +60 -0
  152. package/dist/es/index.d.ts +2 -0
  153. package/dist/es/index.js +2 -0
  154. package/dist/lib/components/AccordionBox/AccordionBox.css +15 -1
  155. package/dist/lib/components/AccordionBox/AccordionBox.d.ts +2 -2
  156. package/dist/lib/components/AccordionBox/AccordionBox.js +66 -10
  157. package/dist/lib/components/AudioPlayer/AudioPlayer.d.ts +2 -2
  158. package/dist/lib/components/AudioPlayer/AudioPlayer.js +56 -32
  159. package/dist/lib/components/AudioPlayer/AudioProgress.d.ts +1 -1
  160. package/dist/lib/components/AudioPlayer/AudioProgress.js +43 -12
  161. package/dist/lib/components/AudioPlayer/AudioRange.d.ts +1 -1
  162. package/dist/lib/components/AudioPlayer/AudioRange.js +17 -9
  163. package/dist/lib/components/AudioPlayer/AudioVolume.d.ts +1 -1
  164. package/dist/lib/components/AudioPlayer/AudioVolume.js +23 -4
  165. package/dist/lib/components/AudioPlayer/hooks/useTrackDuration.js +16 -5
  166. package/dist/lib/components/AudioPlayer/style/AudioPlayer.css +58 -1
  167. package/dist/lib/components/AudioPlayer/style/AudioProgress.css +35 -1
  168. package/dist/lib/components/AudioPlayer/style/AudioRange.css +68 -1
  169. package/dist/lib/components/AudioPlayer/style/AudioVolume.css +34 -1
  170. package/dist/lib/components/AudioPlayer/timerFormatUtil.js +13 -2
  171. package/dist/lib/components/BannerBox/BannerBox.d.ts +1 -1
  172. package/dist/lib/components/BannerBox/BannerBox.js +25 -7
  173. package/dist/lib/components/BenefitsIcons/BenefitsIcons.d.ts +1 -1
  174. package/dist/lib/components/BenefitsIcons/BenefitsIcons.js +86 -26
  175. package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.d.ts +1 -1
  176. package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.js +53 -13
  177. package/dist/lib/components/BenefitsIcons/helpers.d.ts +3 -3
  178. package/dist/lib/components/BenefitsIcons/helpers.js +37 -10
  179. package/dist/lib/components/BenefitsIcons/style/BenefitsIcons.css +38 -1
  180. package/dist/lib/components/BenefitsIcons/style/BenefitsIconsTile.css +90 -1
  181. package/dist/lib/components/BenefitsIcons/types.d.ts +5 -5
  182. package/dist/lib/components/BenefitsIcons/types.js +8 -5
  183. package/dist/lib/components/BenefitsPictures/BenefitsPictures.d.ts +1 -1
  184. package/dist/lib/components/BenefitsPictures/BenefitsPictures.js +71 -24
  185. package/dist/lib/components/BenefitsPictures/BenfitsPictures.css +43 -1
  186. package/dist/lib/components/BenefitsPictures/helpers.d.ts +2 -2
  187. package/dist/lib/components/BenefitsPictures/helpers.js +40 -9
  188. package/dist/lib/components/BenefitsPictures/types.d.ts +3 -3
  189. package/dist/lib/components/BenefitsPictures/types.js +1 -5
  190. package/dist/lib/components/BlogBox/BlogBox.css +92 -0
  191. package/dist/lib/components/BlogBox/BlogBox.d.ts +28 -0
  192. package/dist/lib/components/BlogBox/BlogBox.js +120 -0
  193. package/dist/lib/components/BlogBox/components/BlogBoxTile.css +197 -0
  194. package/dist/lib/components/BlogBox/components/BlogBoxTile.d.ts +9 -0
  195. package/dist/lib/components/BlogBox/components/BlogBoxTile.js +80 -0
  196. package/dist/lib/components/BlogBox/types.d.ts +37 -0
  197. package/dist/lib/components/BlogBox/types.js +1 -0
  198. package/dist/lib/components/Breadcrumbs/Breadcrumbs.css +43 -1
  199. package/dist/lib/components/Breadcrumbs/Breadcrumbs.d.ts +6 -6
  200. package/dist/lib/components/Breadcrumbs/Breadcrumbs.js +60 -18
  201. package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.css +16 -1
  202. package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.d.ts +4 -4
  203. package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.js +55 -22
  204. package/dist/lib/components/ButtonBanner/ButtonBanner.css +122 -1
  205. package/dist/lib/components/ButtonBanner/ButtonBanner.d.ts +7 -7
  206. package/dist/lib/components/ButtonBanner/ButtonBanner.js +89 -40
  207. package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.css +19 -1
  208. package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.d.ts +3 -3
  209. package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.js +72 -29
  210. package/dist/lib/components/Card/Card.css +354 -1
  211. package/dist/lib/components/Card/Card.d.ts +4 -4
  212. package/dist/lib/components/Card/Card.js +164 -67
  213. package/dist/lib/components/Card/types.d.ts +10 -10
  214. package/dist/lib/components/Card/types.js +1 -5
  215. package/dist/lib/components/CardsBox/CardsBox.js +31 -7
  216. package/dist/lib/components/CardsBox/helpers.d.ts +2 -2
  217. package/dist/lib/components/CardsBox/helpers.js +8 -1
  218. package/dist/lib/components/CarouselBox/CarouselBox.d.ts +2 -2
  219. package/dist/lib/components/CarouselBox/CarouselBox.js +39 -15
  220. package/dist/lib/components/Container/Container.css +3287 -1
  221. package/dist/lib/components/Container/Container.d.ts +5 -7
  222. package/dist/lib/components/Container/Container.js +40 -18
  223. package/dist/lib/components/DownloadLinks/DownloadLink.css +37 -1
  224. package/dist/lib/components/DownloadLinks/DownloadLink.d.ts +1 -1
  225. package/dist/lib/components/DownloadLinks/DownloadLink.js +60 -17
  226. package/dist/lib/components/DownloadLinks/DownloadLinks.css +36 -1
  227. package/dist/lib/components/DownloadLinks/DownloadLinks.d.ts +3 -3
  228. package/dist/lib/components/DownloadLinks/DownloadLinks.js +33 -8
  229. package/dist/lib/components/FaqWrapper/FaqWrapper.d.ts +2 -5
  230. package/dist/lib/components/FaqWrapper/FaqWrapper.js +9 -6
  231. package/dist/lib/components/ImageBanner/ImageBanner.css +252 -1
  232. package/dist/lib/components/ImageBanner/ImageBanner.d.ts +7 -8
  233. package/dist/lib/components/ImageBanner/ImageBanner.js +138 -61
  234. package/dist/lib/components/Instructions/Instructions.css +827 -1
  235. package/dist/lib/components/Instructions/Instructions.d.ts +13 -11
  236. package/dist/lib/components/Instructions/Instructions.js +193 -106
  237. package/dist/lib/components/NotificationBox/NotificationBox.d.ts +4 -4
  238. package/dist/lib/components/NotificationBox/NotificationBox.js +37 -9
  239. package/dist/lib/components/NotificationBox/style/NotificationBox.css +28 -0
  240. package/dist/lib/components/PageTitle/PageTitle.css +80 -1
  241. package/dist/lib/components/PageTitle/PageTitle.d.ts +2 -2
  242. package/dist/lib/components/PageTitle/PageTitle.js +52 -15
  243. package/dist/lib/components/Partners/Partners.css +53 -1
  244. package/dist/lib/components/Partners/Partners.d.ts +2 -2
  245. package/dist/lib/components/Partners/Partners.js +65 -21
  246. package/dist/lib/components/PictureWithDescription/PictureWithDescription.css +80 -1
  247. package/dist/lib/components/PictureWithDescription/PictureWithDescription.d.ts +2 -4
  248. package/dist/lib/components/PictureWithDescription/PictureWithDescription.js +46 -16
  249. package/dist/lib/components/Property/Property.css +156 -1
  250. package/dist/lib/components/Property/Property.d.ts +4 -4
  251. package/dist/lib/components/Property/Property.js +120 -60
  252. package/dist/lib/components/Property/PropertyDescription.css +17 -1
  253. package/dist/lib/components/Property/PropertyDescription.d.ts +3 -3
  254. package/dist/lib/components/Property/PropertyDescription.js +46 -15
  255. package/dist/lib/components/Property/types.d.ts +5 -7
  256. package/dist/lib/components/Property/types.js +1 -5
  257. package/dist/lib/components/Steps/Steps.css +41 -1
  258. package/dist/lib/components/Steps/Steps.d.ts +1 -2
  259. package/dist/lib/components/Steps/Steps.js +35 -8
  260. package/dist/lib/components/Steps/StepsItem.css +42 -1
  261. package/dist/lib/components/Steps/StepsItem.d.ts +2 -2
  262. package/dist/lib/components/Steps/StepsItem.js +23 -11
  263. package/dist/lib/components/StoreBanner/StoreBanner.css +346 -1
  264. package/dist/lib/components/StoreBanner/StoreBanner.d.ts +5 -5
  265. package/dist/lib/components/StoreBanner/StoreBanner.js +118 -47
  266. package/dist/lib/components/StoreBanner/doc/img/android-screen.png +0 -0
  267. package/dist/lib/components/StoreBanner/doc/img/qr-code.png +0 -0
  268. package/dist/lib/components/StoreBanner/doc/img/screen.png +0 -0
  269. package/dist/lib/components/StoreButton/StoreButton.css +327 -1
  270. package/dist/lib/components/StoreButton/StoreButton.d.ts +3 -3
  271. package/dist/lib/components/StoreButton/StoreButton.js +63 -17
  272. package/dist/lib/components/Table/Table.css +157 -1
  273. package/dist/lib/components/Table/Table.d.ts +1 -1
  274. package/dist/lib/components/Table/Table.js +68 -35
  275. package/dist/lib/components/Table/TableCell.js +16 -4
  276. package/dist/lib/components/Table/TableRow.js +19 -5
  277. package/dist/lib/components/TabsBox/TabBox.js +4 -1
  278. package/dist/lib/components/TabsBox/TabsBox.d.ts +1 -1
  279. package/dist/lib/components/TabsBox/TabsBox.js +26 -8
  280. package/dist/lib/components/TextBox/TextBox.css +25 -1
  281. package/dist/lib/components/TextBox/TextBox.d.ts +1 -2
  282. package/dist/lib/components/TextBox/TextBox.js +36 -12
  283. package/dist/lib/components/TextBox/TextBoxPicture.css +27 -1
  284. package/dist/lib/components/TextBox/TextBoxPicture.d.ts +2 -2
  285. package/dist/lib/components/TextBox/TextBoxPicture.js +29 -11
  286. package/dist/lib/components/TextWithIcon/TextWithIcon.css +10 -1
  287. package/dist/lib/components/TextWithIcon/TextWithIcon.d.ts +1 -1
  288. package/dist/lib/components/TextWithIcon/TextWithIcon.js +39 -10
  289. package/dist/lib/components/TextWithIcon/TextWithIconItem.css +29 -1
  290. package/dist/lib/components/TextWithIcon/TextWithIconItem.d.ts +1 -1
  291. package/dist/lib/components/TextWithIcon/TextWithIconItem.js +37 -10
  292. package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.css +31 -1
  293. package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +1 -1
  294. package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.js +40 -10
  295. package/dist/lib/components/VideoBanner/VideoBanner.css +225 -1
  296. package/dist/lib/components/VideoBanner/VideoBanner.d.ts +7 -7
  297. package/dist/lib/components/VideoBanner/VideoBanner.js +176 -83
  298. package/dist/lib/components/VideoBlock/VideoBlock.css +106 -1
  299. package/dist/lib/components/VideoBlock/VideoBlock.d.ts +4 -4
  300. package/dist/lib/components/VideoBlock/VideoBlock.js +114 -58
  301. package/dist/lib/constants/throttleTime.js +3 -2
  302. package/dist/lib/helpers/getColumnConfig.d.ts +1 -5
  303. package/dist/lib/helpers/getColumnConfig.js +5 -2
  304. package/dist/lib/helpers/setRelAttribute.d.ts +1 -0
  305. package/dist/lib/helpers/setRelAttribute.js +20 -0
  306. package/dist/lib/hooks/useResolutions.d.ts +7 -0
  307. package/dist/lib/hooks/useResolutions.js +75 -0
  308. package/dist/lib/index.d.ts +2 -0
  309. package/dist/lib/index.js +73 -10
  310. package/package.json +92 -87
  311. package/dist/es/components/NotificationBox/NotificationBox.css +0 -1
  312. package/dist/lib/components/NotificationBox/NotificationBox.css +0 -1
@@ -2,46 +2,53 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import "core-js/modules/es.array.map.js";
4
4
  import * as React from 'react';
5
+ import { useCallback } from 'react';
5
6
  import { Grid, GridColumn, Header, Paragraph } from '@megafon/ui-core';
6
7
  import { breakpoints, cnCreate } from '@megafon/ui-helpers';
7
8
  import convert from 'htmr';
8
9
  import throttle from 'lodash.throttle';
10
+ import PropTypes from 'prop-types';
9
11
  import throttleTime from "../../constants/throttleTime";
10
12
  import getCenterConfig, { getLeftConfig } from "./helpers";
11
13
  import "./BenfitsPictures.css";
12
14
  export var ONLY_LEFT_ALIGN_ITEMS_COUNT = 3;
13
15
  var testIdPrefix = 'BenefitsPictures';
14
16
  var cn = cnCreate('mfui-benefits-pictures');
17
+
15
18
  var BenefitsPictures = function BenefitsPictures(_ref) {
16
19
  var items = _ref.items,
17
- _ref$align = _ref.align,
18
- align = _ref$align === void 0 ? 'left' : _ref$align,
19
- _ref$textAlign = _ref.textAlign,
20
- textAlign = _ref$textAlign === void 0 ? 'auto' : _ref$textAlign,
21
- _ref$imgAlign = _ref.imgAlign,
22
- imgAlign = _ref$imgAlign === void 0 ? 'auto' : _ref$imgAlign,
23
- _ref$gridGap = _ref.gridGap,
24
- gridGap = _ref$gridGap === void 0 ? 'large' : _ref$gridGap,
25
- rootRef = _ref.rootRef,
26
- className = _ref.className,
27
- _ref$classes = _ref.classes,
28
- classes = _ref$classes === void 0 ? {} : _ref$classes;
20
+ _ref$align = _ref.align,
21
+ align = _ref$align === void 0 ? 'left' : _ref$align,
22
+ _ref$textAlign = _ref.textAlign,
23
+ textAlign = _ref$textAlign === void 0 ? 'auto' : _ref$textAlign,
24
+ _ref$imgAlign = _ref.imgAlign,
25
+ imgAlign = _ref$imgAlign === void 0 ? 'auto' : _ref$imgAlign,
26
+ _ref$gridGap = _ref.gridGap,
27
+ gridGap = _ref$gridGap === void 0 ? 'large' : _ref$gridGap,
28
+ rootRef = _ref.rootRef,
29
+ className = _ref.className,
30
+ _ref$classes = _ref.classes,
31
+ classes = _ref$classes === void 0 ? {} : _ref$classes;
29
32
  var isLargeGutter = gridGap === 'large';
30
33
  var isGridCenterAlign = align === 'center' && items.length !== ONLY_LEFT_ALIGN_ITEMS_COUNT;
34
+
31
35
  var _React$useState = React.useState(gridGap),
32
- _React$useState2 = _slicedToArray(_React$useState, 2),
33
- currentGutter = _React$useState2[0],
34
- setCurrentGutter = _React$useState2[1];
35
- var resizeHandler = React.useCallback(function () {
36
+ _React$useState2 = _slicedToArray(_React$useState, 2),
37
+ currentGutter = _React$useState2[0],
38
+ setCurrentGutter = _React$useState2[1];
39
+
40
+ var resizeHandler = useCallback(function () {
36
41
  if (!isLargeGutter) {
37
42
  return;
38
43
  }
44
+
39
45
  if (window.innerWidth < breakpoints.DESKTOP_MIDDLE_START) {
40
46
  setCurrentGutter('medium');
41
47
  } else {
42
48
  setCurrentGutter('large');
43
49
  }
44
50
  }, [isLargeGutter]);
51
+
45
52
  var renderText = function renderText(text) {
46
53
  if (typeof text === 'string') {
47
54
  return /*#__PURE__*/React.createElement(Paragraph, {
@@ -52,8 +59,10 @@ var BenefitsPictures = function BenefitsPictures(_ref) {
52
59
  }
53
60
  }, convert(text));
54
61
  }
62
+
55
63
  return text;
56
64
  };
65
+
57
66
  React.useEffect(function () {
58
67
  var throttledResizeHandler = throttle(resizeHandler, throttleTime.resize);
59
68
  resizeHandler();
@@ -77,9 +86,9 @@ var BenefitsPictures = function BenefitsPictures(_ref) {
77
86
  }
78
87
  }, items.map(function (_ref2, index) {
79
88
  var img = _ref2.img,
80
- title = _ref2.title,
81
- text = _ref2.text,
82
- alt = _ref2.alt;
89
+ title = _ref2.title,
90
+ text = _ref2.text,
91
+ alt = _ref2.alt;
83
92
  return /*#__PURE__*/React.createElement(GridColumn, _extends({}, align === 'left' ? getLeftConfig(items.length, index) : getCenterConfig(items.length, index, gridGap), {
84
93
  key: index
85
94
  }), /*#__PURE__*/React.createElement("div", {
@@ -108,4 +117,25 @@ var BenefitsPictures = function BenefitsPictures(_ref) {
108
117
  }, convert(title)), !!text && renderText(text))));
109
118
  }))));
110
119
  };
120
+
121
+ BenefitsPictures.propTypes = {
122
+ rootRef: PropTypes.oneOfType([PropTypes.func, PropTypes.oneOfType([PropTypes.shape({
123
+ current: PropTypes.elementType
124
+ }), PropTypes.any])]),
125
+ items: PropTypes.arrayOf(PropTypes.shape({
126
+ title: PropTypes.string,
127
+ text: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.arrayOf(PropTypes.node)]),
128
+ img: PropTypes.string.isRequired,
129
+ alt: PropTypes.string
130
+ }).isRequired).isRequired,
131
+ align: PropTypes.oneOf(['left', 'center']),
132
+ textAlign: PropTypes.oneOf(['left', 'center', 'auto']),
133
+ imgAlign: PropTypes.oneOf(['left', 'center', 'auto']),
134
+ gridGap: PropTypes.oneOf(['medium', 'large']),
135
+ className: PropTypes.string,
136
+ classes: PropTypes.shape({
137
+ root: PropTypes.string,
138
+ item: PropTypes.string
139
+ })
140
+ };
111
141
  export default BenefitsPictures;
@@ -1 +1,43 @@
1
- h1,h2,h3,h4,h5{margin:0}.mfui-benefits-pictures{overflow:hidden}.mfui-benefits-pictures__inner{margin-bottom:-40px}@media screen and (min-width:768px){.mfui-benefits-pictures__inner{margin-bottom:-48px}}.mfui-benefits-pictures__item{margin-bottom:40px}@media screen and (min-width:768px){.mfui-benefits-pictures__item{margin-bottom:48px}}.mfui-benefits-pictures__content_h-align_center{text-align:center}.mfui-benefits-pictures__img{border-radius:12px;margin-bottom:32px;max-width:100%;vertical-align:top}.mfui-benefits-pictures__img_h-align_center{display:block;margin-left:auto;margin-right:auto}.mfui-benefits-pictures__title{margin-bottom:12px}
1
+ h1,
2
+ h2,
3
+ h3,
4
+ h4,
5
+ h5 {
6
+ margin: 0;
7
+ }
8
+ .mfui-benefits-pictures {
9
+ overflow: hidden;
10
+ }
11
+ .mfui-benefits-pictures__inner {
12
+ margin-bottom: -40px;
13
+ }
14
+ @media screen and (min-width: 768px) {
15
+ .mfui-benefits-pictures__inner {
16
+ margin-bottom: -48px;
17
+ }
18
+ }
19
+ .mfui-benefits-pictures__item {
20
+ margin-bottom: 40px;
21
+ }
22
+ @media screen and (min-width: 768px) {
23
+ .mfui-benefits-pictures__item {
24
+ margin-bottom: 48px;
25
+ }
26
+ }
27
+ .mfui-benefits-pictures__content_h-align_center {
28
+ text-align: center;
29
+ }
30
+ .mfui-benefits-pictures__img {
31
+ max-width: 100%;
32
+ margin-bottom: 32px;
33
+ border-radius: 12px;
34
+ vertical-align: top;
35
+ }
36
+ .mfui-benefits-pictures__img_h-align_center {
37
+ display: block;
38
+ margin-right: auto;
39
+ margin-left: auto;
40
+ }
41
+ .mfui-benefits-pictures__title {
42
+ margin-bottom: 12px;
43
+ }
@@ -1,8 +1,8 @@
1
1
  import { GridConfig } from './types';
2
2
  declare const columnSize: GridConfig;
3
3
  declare const isOddIndex: (index: number) => boolean;
4
- declare const getEvenOffset: (index: number) => '1' | undefined;
5
- declare const getOddOffset: (index: number) => '1' | undefined;
4
+ declare const getEvenOffset: (index: number) => "1" | undefined;
5
+ declare const getOddOffset: (index: number) => "1" | undefined;
6
6
  declare const getLeftConfig: (count: number, index: number) => GridConfig;
7
7
  declare const getCenterMediumConfig: (count: number, index: number) => GridConfig;
8
8
  declare const getCenterLargeConfig: (count: number, index: number) => GridConfig;
@@ -4,15 +4,19 @@ var columnSize = {
4
4
  desktop: '4',
5
5
  tablet: '5'
6
6
  };
7
+
7
8
  var isOddIndex = function isOddIndex(index) {
8
9
  return !((index + 1) % 2);
9
10
  };
11
+
10
12
  var getEvenOffset = function getEvenOffset(index) {
11
13
  return isOddIndex(index) ? '1' : undefined;
12
14
  };
15
+
13
16
  var getOddOffset = function getOddOffset(index) {
14
17
  return isOddIndex(index) ? undefined : '1';
15
18
  };
19
+
16
20
  var getLeftConfig = function getLeftConfig(count, index) {
17
21
  switch (count) {
18
22
  case 2:
@@ -22,18 +26,21 @@ var getLeftConfig = function getLeftConfig(count, index) {
22
26
  leftOffsetDesktop: getEvenOffset(index),
23
27
  leftOffsetTablet: getEvenOffset(index)
24
28
  });
29
+
25
30
  default:
26
31
  return _extends(_extends({}, columnSize), {
27
32
  leftOffsetTablet: getEvenOffset(index)
28
33
  });
29
34
  }
30
35
  };
36
+
31
37
  var getCenterMediumConfig = function getCenterMediumConfig(count, index) {
32
38
  switch (count) {
33
39
  case 3:
34
40
  return _extends(_extends({}, columnSize), {
35
41
  leftOffsetTablet: getOddOffset(index)
36
42
  });
43
+
37
44
  case 4:
38
45
  return _extends(_extends({}, columnSize), {
39
46
  rightOffsetWide: getOddOffset(index),
@@ -43,6 +50,7 @@ var getCenterMediumConfig = function getCenterMediumConfig(count, index) {
43
50
  rightOffsetTablet: getEvenOffset(index),
44
51
  leftOffsetTablet: getOddOffset(index)
45
52
  });
53
+
46
54
  default:
47
55
  return _extends(_extends({}, columnSize), {
48
56
  rightOffsetWide: getOddOffset(index),
@@ -50,6 +58,7 @@ var getCenterMediumConfig = function getCenterMediumConfig(count, index) {
50
58
  });
51
59
  }
52
60
  };
61
+
53
62
  var getCenterLargeConfig = function getCenterLargeConfig(count, index) {
54
63
  switch (count) {
55
64
  case 4:
@@ -61,25 +70,30 @@ var getCenterLargeConfig = function getCenterLargeConfig(count, index) {
61
70
  leftOffsetTablet: getOddOffset(index),
62
71
  rightOffsetTablet: getEvenOffset(index)
63
72
  });
73
+
64
74
  case 3:
65
75
  return _extends(_extends({}, columnSize), {
66
76
  leftOffsetTablet: getOddOffset(index)
67
77
  });
78
+
68
79
  default:
69
80
  return _extends({}, columnSize);
70
81
  }
71
82
  };
83
+
72
84
  var getCenterConfig = function getCenterConfig(count, index, gutterSize) {
73
85
  switch (gutterSize) {
74
86
  case 'medium':
75
87
  {
76
88
  return getCenterMediumConfig(count, index);
77
89
  }
90
+
78
91
  default:
79
92
  {
80
93
  return getCenterLargeConfig(count, index);
81
94
  }
82
95
  }
83
96
  };
97
+
84
98
  export default getCenterConfig;
85
99
  export { columnSize, isOddIndex, getEvenOffset, getOddOffset, getLeftConfig, getCenterMediumConfig, getCenterLargeConfig };
@@ -9,8 +9,8 @@ export interface IBenefit {
9
9
  /** Значение тега alt для изображения */
10
10
  alt?: string;
11
11
  }
12
- type TGridSizeValues = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
13
- export type GridConfig = {
12
+ declare type TGridSizeValues = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
13
+ export declare type GridConfig = {
14
14
  wide?: TGridSizeValues;
15
15
  desktop?: TGridSizeValues;
16
16
  tablet?: TGridSizeValues;
@@ -21,5 +21,5 @@ export type GridConfig = {
21
21
  rightOffsetTablet?: TGridSizeValues;
22
22
  rightOffsetWide?: TGridSizeValues;
23
23
  };
24
- export type GridGutterSize = 'large' | 'medium';
24
+ export declare type GridGutterSize = 'large' | 'medium';
25
25
  export {};
@@ -1 +0,0 @@
1
- export {};
@@ -0,0 +1,92 @@
1
+ h1,
2
+ h2,
3
+ h3,
4
+ h4,
5
+ h5 {
6
+ margin: 0;
7
+ }
8
+ .mfui-blog-box {
9
+ display: -webkit-box;
10
+ display: -ms-flexbox;
11
+ display: flex;
12
+ -webkit-box-orient: vertical;
13
+ -webkit-box-direction: normal;
14
+ -ms-flex-direction: column;
15
+ flex-direction: column;
16
+ -webkit-box-align: center;
17
+ -ms-flex-align: center;
18
+ align-items: center;
19
+ }
20
+ @media screen and (min-width: 1024px) {
21
+ .mfui-blog-box__list {
22
+ display: grid;
23
+ grid-template-columns: 1fr 1fr;
24
+ -webkit-column-gap: 20px;
25
+ -moz-column-gap: 20px;
26
+ column-gap: 20px;
27
+ row-gap: 24px;
28
+ }
29
+ }
30
+ .mfui-blog-box__list_row {
31
+ grid-template-columns: repeat(6, 1fr);
32
+ }
33
+ .mfui-blog-box__list_row .mfui-blog-box__item {
34
+ grid-column-end: span 2;
35
+ }
36
+ .mfui-blog-box__list_row-size_1 .mfui-blog-box__item {
37
+ grid-column-start: 3;
38
+ }
39
+ .mfui-blog-box__list_row-size_2 .mfui-blog-box__item:first-child {
40
+ grid-column-start: 2;
41
+ }
42
+ .mfui-blog-box__item_view_thumbnail {
43
+ margin-top: 16px;
44
+ }
45
+ @media screen and (min-width: 1024px) {
46
+ .mfui-blog-box__item_view_thumbnail {
47
+ grid-column-start: 1;
48
+ grid-column-end: 2;
49
+ margin-top: 0;
50
+ }
51
+ }
52
+ .mfui-blog-box__item_view_full {
53
+ margin-bottom: 24px;
54
+ }
55
+ @media screen and (min-width: 768px) and (max-width: 1023px) {
56
+ .mfui-blog-box__item_view_full {
57
+ margin-bottom: 32px;
58
+ }
59
+ }
60
+ @media screen and (min-width: 1024px) {
61
+ .mfui-blog-box__item_view_full {
62
+ grid-row-start: 1;
63
+ grid-row-end: 4;
64
+ grid-column-start: 2;
65
+ grid-column-end: 3;
66
+ margin-bottom: 0;
67
+ }
68
+ }
69
+ .mfui-blog-box__button-wrapper {
70
+ margin-top: 32px;
71
+ }
72
+ @media screen and (min-width: 768px) and (max-width: 1023px) {
73
+ .mfui-blog-box__button-wrapper {
74
+ margin-top: 40px;
75
+ }
76
+ }
77
+ @media screen and (min-width: 1024px) {
78
+ .mfui-blog-box__button-wrapper {
79
+ margin-top: 56px;
80
+ }
81
+ }
82
+ .mfui-blog-box__button {
83
+ min-width: 208px;
84
+ }
85
+ .mfui-blog-box_align-left {
86
+ -webkit-box-align: start;
87
+ -ms-flex-align: start;
88
+ align-items: flex-start;
89
+ }
90
+ .mfui-blog-box_align-left .mfui-blog-box__item:first-child {
91
+ grid-column-start: 1;
92
+ }
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { ButtonType, TileDataType } from './types';
3
+ import './BlogBox.less';
4
+ export interface IBlogBox {
5
+ /** Статьи (не более 4, остальные будут проигнорированы) */
6
+ items: TileDataType[];
7
+ /** Кнопка */
8
+ button?: ButtonType;
9
+ /** Выравнивание по левому краю (при количестве статей менее трех) */
10
+ hasAlignLeft?: boolean;
11
+ /** Дополнительный класс для компонента */
12
+ className?: string;
13
+ /** Дополнительные классы для внутренних элементов */
14
+ classes?: {
15
+ root?: string;
16
+ item?: string;
17
+ button?: string;
18
+ };
19
+ /** Дополнительные data атрибуты к внутренним элементам */
20
+ dataAttrs?: {
21
+ root?: Record<string, string>;
22
+ list?: Record<string, string>;
23
+ item?: Record<string, string>;
24
+ button?: Record<string, string>;
25
+ };
26
+ }
27
+ declare const BlogBox: React.FC<IBlogBox>;
28
+ export default BlogBox;
@@ -0,0 +1,101 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import "core-js/modules/es.array.slice.js";
3
+ import "core-js/modules/es.array.map.js";
4
+ import "core-js/modules/es.array.concat.js";
5
+ import React from 'react';
6
+ import { Button } from '@megafon/ui-core';
7
+ import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
8
+ import PropTypes from 'prop-types';
9
+ import useResolutions from "../../hooks/useResolutions";
10
+ import BlogBoxTile from "./components/BlogBoxTile";
11
+ import "./BlogBox.css";
12
+ var maxItemsCount = 4;
13
+ var cn = cnCreate('mfui-blog-box');
14
+
15
+ var BlogBox = function BlogBox(_ref) {
16
+ var items = _ref.items,
17
+ button = _ref.button,
18
+ _ref$hasAlignLeft = _ref.hasAlignLeft,
19
+ hasAlignLeft = _ref$hasAlignLeft === void 0 ? false : _ref$hasAlignLeft,
20
+ className = _ref.className,
21
+ classes = _ref.classes,
22
+ dataAttrs = _ref.dataAttrs;
23
+
24
+ var _useResolutions = useResolutions(),
25
+ isDesktop = _useResolutions.isDesktop;
26
+
27
+ var visibleItems = items.slice(0, maxItemsCount);
28
+ var itemsCount = visibleItems.length;
29
+ var isRow = isDesktop && itemsCount < maxItemsCount;
30
+ var isAlignLeft = isRow && hasAlignLeft;
31
+
32
+ var getView = function getView(isCompact, i) {
33
+ if (isCompact) {
34
+ return 'compact';
35
+ }
36
+
37
+ if (i === 0) {
38
+ return 'full';
39
+ }
40
+
41
+ return 'thumbnail';
42
+ };
43
+
44
+ return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
45
+ className: cn({
46
+ 'align-left': isAlignLeft
47
+ }, [className, classes === null || classes === void 0 ? void 0 : classes.root])
48
+ }), /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.list), {
49
+ className: cn('list', {
50
+ row: isRow,
51
+ 'row-size': isRow && "".concat(itemsCount)
52
+ })
53
+ }), visibleItems.map(function (item, i) {
54
+ var view = getView(isRow, i);
55
+ return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.item, i + 1), {
56
+ className: cn('item', {
57
+ view: view
58
+ }, [classes === null || classes === void 0 ? void 0 : classes.item]),
59
+ key: "".concat(item.title, "_").concat(i)
60
+ }), /*#__PURE__*/React.createElement(BlogBoxTile, _extends({}, item, {
61
+ view: view
62
+ })));
63
+ })), (button === null || button === void 0 ? void 0 : button.title) && /*#__PURE__*/React.createElement("div", {
64
+ className: cn('button-wrapper')
65
+ }, /*#__PURE__*/React.createElement(Button, {
66
+ dataAttrs: {
67
+ root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button
68
+ },
69
+ className: cn('button', [classes === null || classes === void 0 ? void 0 : classes.button]),
70
+ href: button.href,
71
+ target: button.target,
72
+ rel: button.rel
73
+ }, button.title)));
74
+ };
75
+
76
+ BlogBox.propTypes = {
77
+ className: PropTypes.string,
78
+ classes: PropTypes.objectOf(PropTypes.string),
79
+ dataAttrs: PropTypes.objectOf(PropTypes.object),
80
+ items: PropTypes.arrayOf(PropTypes.shape({
81
+ date: PropTypes.string.isRequired,
82
+ title: PropTypes.string.isRequired,
83
+ image: PropTypes.shape({
84
+ srcMobile: PropTypes.string.isRequired,
85
+ srcDesktop: PropTypes.string.isRequired,
86
+ srcThumbnail: PropTypes.string.isRequired,
87
+ alt: PropTypes.string
88
+ }).isRequired,
89
+ href: PropTypes.string.isRequired,
90
+ target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),
91
+ rel: PropTypes.string
92
+ }).isRequired).isRequired,
93
+ button: PropTypes.shape({
94
+ title: PropTypes.string.isRequired,
95
+ href: PropTypes.string.isRequired,
96
+ target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),
97
+ rel: PropTypes.string
98
+ }),
99
+ hasAlignLeft: PropTypes.bool
100
+ };
101
+ export default BlogBox;