@megafon/ui-shared 8.14.0 → 8.14.2

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/dist/es/components/AccordionBox/AccordionBox.css +1 -0
  2. package/dist/es/components/AccordionBox/AccordionBox.d.ts +49 -0
  3. package/dist/es/components/AccordionBox/AccordionBox.js +42 -0
  4. package/dist/es/components/AudioPlayer/AudioPlayer.d.ts +10 -0
  5. package/dist/es/components/AudioPlayer/AudioPlayer.js +107 -0
  6. package/dist/es/components/AudioPlayer/AudioProgress.d.ts +14 -0
  7. package/dist/es/components/AudioPlayer/AudioProgress.js +96 -0
  8. package/dist/es/components/AudioPlayer/AudioRange.d.ts +15 -0
  9. package/dist/es/components/AudioPlayer/AudioRange.js +31 -0
  10. package/dist/es/components/AudioPlayer/AudioVolume.d.ts +7 -0
  11. package/dist/es/components/AudioPlayer/AudioVolume.js +77 -0
  12. package/dist/es/components/AudioPlayer/hooks/useTrackDuration.d.ts +3 -0
  13. package/dist/es/components/AudioPlayer/hooks/useTrackDuration.js +26 -0
  14. package/dist/es/components/AudioPlayer/style/AudioPlayer.css +1 -0
  15. package/dist/es/components/AudioPlayer/style/AudioProgress.css +1 -0
  16. package/dist/es/components/AudioPlayer/style/AudioRange.css +1 -0
  17. package/dist/es/components/AudioPlayer/style/AudioVolume.css +1 -0
  18. package/dist/es/components/AudioPlayer/timerFormatUtil.d.ts +2 -0
  19. package/dist/es/components/AudioPlayer/timerFormatUtil.js +25 -0
  20. package/dist/es/components/BannerBox/BannerBox.d.ts +5 -0
  21. package/dist/es/components/BannerBox/BannerBox.js +22 -0
  22. package/dist/es/components/BenefitsIcons/BenefitsIcons.d.ts +30 -0
  23. package/dist/es/components/BenefitsIcons/BenefitsIcons.js +104 -0
  24. package/dist/es/components/BenefitsIcons/BenefitsIconsTile.d.ts +10 -0
  25. package/dist/es/components/BenefitsIcons/BenefitsIconsTile.js +51 -0
  26. package/dist/es/components/BenefitsIcons/helpers.d.ts +8 -0
  27. package/dist/es/components/BenefitsIcons/helpers.js +102 -0
  28. package/dist/es/components/BenefitsIcons/style/BenefitsIcons.css +1 -0
  29. package/dist/es/components/BenefitsIcons/style/BenefitsIconsTile.css +1 -0
  30. package/dist/es/components/BenefitsIcons/types.d.ts +54 -0
  31. package/dist/es/components/BenefitsIcons/types.js +17 -0
  32. package/dist/es/components/BenefitsPictures/BenefitsPictures.d.ts +27 -0
  33. package/dist/es/components/BenefitsPictures/BenefitsPictures.js +111 -0
  34. package/dist/es/components/BenefitsPictures/BenfitsPictures.css +1 -0
  35. package/dist/es/components/BenefitsPictures/helpers.d.ts +11 -0
  36. package/dist/es/components/BenefitsPictures/helpers.js +85 -0
  37. package/dist/es/components/BenefitsPictures/types.d.ts +24 -0
  38. package/dist/es/components/BenefitsPictures/types.js +1 -0
  39. package/dist/es/components/BlogBox/BlogBox.css +1 -0
  40. package/dist/es/components/BlogBox/BlogBox.d.ts +31 -0
  41. package/dist/es/components/BlogBox/BlogBox.js +72 -0
  42. package/dist/es/components/BlogBox/components/BlogBoxTile.css +1 -0
  43. package/dist/es/components/BlogBox/components/BlogBoxTile.d.ts +13 -0
  44. package/dist/es/components/BlogBox/components/BlogBoxTile.js +61 -0
  45. package/dist/es/components/BlogBox/types.d.ts +37 -0
  46. package/dist/es/components/BlogBox/types.js +1 -0
  47. package/dist/es/components/Breadcrumbs/Breadcrumbs.css +1 -0
  48. package/dist/es/components/Breadcrumbs/Breadcrumbs.d.ts +43 -0
  49. package/dist/es/components/Breadcrumbs/Breadcrumbs.js +69 -0
  50. package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.css +1 -0
  51. package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.d.ts +30 -0
  52. package/dist/es/components/Breadcrumbs/components/BreadcrumbsItem.js +62 -0
  53. package/dist/es/components/ButtonBanner/ButtonBanner.css +1 -0
  54. package/dist/es/components/ButtonBanner/ButtonBanner.d.ts +64 -0
  55. package/dist/es/components/ButtonBanner/ButtonBanner.js +96 -0
  56. package/dist/es/components/ButtonLinkBox/ButtonLinkBox.css +1 -0
  57. package/dist/es/components/ButtonLinkBox/ButtonLinkBox.d.ts +52 -0
  58. package/dist/es/components/ButtonLinkBox/ButtonLinkBox.js +65 -0
  59. package/dist/es/components/ButtonsBox/ButtonsBox.css +1 -0
  60. package/dist/es/components/ButtonsBox/ButtonsBox.d.ts +48 -0
  61. package/dist/es/components/ButtonsBox/ButtonsBox.js +47 -0
  62. package/dist/es/components/Card/Card.css +1 -0
  63. package/dist/es/components/Card/Card.d.ts +55 -0
  64. package/dist/es/components/Card/Card.js +229 -0
  65. package/dist/es/components/Card/types.d.ts +86 -0
  66. package/dist/es/components/Card/types.js +1 -0
  67. package/dist/es/components/CardsBox/CardsBox.d.ts +14 -0
  68. package/dist/es/components/CardsBox/CardsBox.js +26 -0
  69. package/dist/es/components/CardsBox/helpers.d.ts +10 -0
  70. package/dist/es/components/CardsBox/helpers.js +21 -0
  71. package/dist/es/components/CarouselBox/CarouselBox.d.ts +10 -0
  72. package/dist/es/components/CarouselBox/CarouselBox.js +45 -0
  73. package/dist/es/components/ChipsBox/ChipBox.d.ts +5 -0
  74. package/dist/es/components/ChipsBox/ChipBox.js +7 -0
  75. package/dist/es/components/ChipsBox/ChipsBox.css +1 -0
  76. package/dist/es/components/ChipsBox/ChipsBox.d.ts +16 -0
  77. package/dist/es/components/ChipsBox/ChipsBox.js +76 -0
  78. package/dist/es/components/Container/Container.css +1 -0
  79. package/dist/es/components/Container/Container.d.ts +41 -0
  80. package/dist/es/components/Container/Container.js +46 -0
  81. package/dist/es/components/DarkGradientCards/DarkGradientCards.css +1 -0
  82. package/dist/es/components/DarkGradientCards/DarkGradientCards.d.ts +33 -0
  83. package/dist/es/components/DarkGradientCards/DarkGradientCards.js +66 -0
  84. package/dist/es/components/DarkGradientCards/components/DarkGradientCard.css +1 -0
  85. package/dist/es/components/DarkGradientCards/components/DarkGradientCard.d.ts +16 -0
  86. package/dist/es/components/DarkGradientCards/components/DarkGradientCard.js +50 -0
  87. package/dist/es/components/DarkGradientCards/types.d.ts +20 -0
  88. package/dist/es/components/DarkGradientCards/types.js +1 -0
  89. package/dist/es/components/DownloadLinks/DownloadLink.css +1 -0
  90. package/dist/es/components/DownloadLinks/DownloadLink.d.ts +36 -0
  91. package/dist/es/components/DownloadLinks/DownloadLink.js +61 -0
  92. package/dist/es/components/DownloadLinks/DownloadLinks.css +1 -0
  93. package/dist/es/components/DownloadLinks/DownloadLinks.d.ts +20 -0
  94. package/dist/es/components/DownloadLinks/DownloadLinks.js +64 -0
  95. package/dist/es/components/FaqWrapper/FaqWrapper.d.ts +6 -0
  96. package/dist/es/components/FaqWrapper/FaqWrapper.js +9 -0
  97. package/dist/es/components/ImageBanner/ImageBanner.css +1 -0
  98. package/dist/es/components/ImageBanner/ImageBanner.d.ts +94 -0
  99. package/dist/es/components/ImageBanner/ImageBanner.js +164 -0
  100. package/dist/es/components/InfoCards/InfoCards.css +1 -0
  101. package/dist/es/components/InfoCards/InfoCards.d.ts +24 -0
  102. package/dist/es/components/InfoCards/InfoCards.js +44 -0
  103. package/dist/es/components/InfoCards/components/InfoCard/InfoCard.css +1 -0
  104. package/dist/es/components/InfoCards/components/InfoCard/InfoCard.d.ts +19 -0
  105. package/dist/es/components/InfoCards/components/InfoCard/InfoCard.js +85 -0
  106. package/dist/es/components/InfoCards/types.d.ts +31 -0
  107. package/dist/es/components/InfoCards/types.js +1 -0
  108. package/dist/es/components/Instructions/Instructions.css +1 -0
  109. package/dist/es/components/Instructions/Instructions.d.ts +120 -0
  110. package/dist/es/components/Instructions/Instructions.js +362 -0
  111. package/dist/es/components/Instructions/img/android-new.png +0 -0
  112. package/dist/es/components/Instructions/img/android.png +0 -0
  113. package/dist/es/components/Instructions/img/blackIphone.png +0 -0
  114. package/dist/es/components/Instructions/img/iphone-new.png +0 -0
  115. package/dist/es/components/Instructions/img/iphone12.png +0 -0
  116. package/dist/es/components/Instructions/img/iphone15.png +0 -0
  117. package/dist/es/components/Instructions/img/laptop-new.png +0 -0
  118. package/dist/es/components/Instructions/img/laptop.png +0 -0
  119. package/dist/es/components/Instructions/img/newIphone.png +0 -0
  120. package/dist/es/components/Instructions/img/whiteIphone.png +0 -0
  121. package/dist/es/components/NotificationBox/NotificationBox.css +1 -0
  122. package/dist/es/components/NotificationBox/NotificationBox.d.ts +15 -0
  123. package/dist/es/components/NotificationBox/NotificationBox.js +35 -0
  124. package/dist/es/components/NumbersBox/NumbersBox.css +1 -0
  125. package/dist/es/components/NumbersBox/NumbersBox.d.ts +35 -0
  126. package/dist/es/components/NumbersBox/NumbersBox.js +72 -0
  127. package/dist/es/components/NumbersBox/components/NumbersCard/NumbersCard.css +1 -0
  128. package/dist/es/components/NumbersBox/components/NumbersCard/NumbersCard.d.ts +16 -0
  129. package/dist/es/components/NumbersBox/components/NumbersCard/NumbersCard.js +28 -0
  130. package/dist/es/components/NumbersBox/types.d.ts +7 -0
  131. package/dist/es/components/NumbersBox/types.js +1 -0
  132. package/dist/es/components/PageTitle/PageTitle.css +1 -0
  133. package/dist/es/components/PageTitle/PageTitle.d.ts +36 -0
  134. package/dist/es/components/PageTitle/PageTitle.js +74 -0
  135. package/dist/es/components/Partners/Partners.css +1 -0
  136. package/dist/es/components/Partners/Partners.d.ts +37 -0
  137. package/dist/es/components/Partners/Partners.js +111 -0
  138. package/dist/es/components/PictureBox/PictureBox.css +1 -0
  139. package/dist/es/components/PictureBox/PictureBox.d.ts +48 -0
  140. package/dist/es/components/PictureBox/PictureBox.js +96 -0
  141. package/dist/es/components/PictureBox/img/mac-book-1x.png +0 -0
  142. package/dist/es/components/PictureBox/img/mac-book-2x.png +0 -0
  143. package/dist/es/components/PictureWithDescription/PictureWithDescription.css +1 -0
  144. package/dist/es/components/PictureWithDescription/PictureWithDescription.d.ts +32 -0
  145. package/dist/es/components/PictureWithDescription/PictureWithDescription.js +48 -0
  146. package/dist/es/components/PromoBanner/PromoBanner.d.ts +5 -0
  147. package/dist/es/components/PromoBanner/PromoBanner.js +26 -0
  148. package/dist/es/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.css +1 -0
  149. package/dist/es/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.d.ts +82 -0
  150. package/dist/es/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.js +142 -0
  151. package/dist/es/components/PromoCards/PromoCards.d.ts +33 -0
  152. package/dist/es/components/PromoCards/PromoCards.js +61 -0
  153. package/dist/es/components/PromoCards/components/PromoCard/PromoCard.css +1 -0
  154. package/dist/es/components/PromoCards/components/PromoCard/PromoCard.d.ts +25 -0
  155. package/dist/es/components/PromoCards/components/PromoCard/PromoCard.js +175 -0
  156. package/dist/es/components/PromoCards/types.d.ts +62 -0
  157. package/dist/es/components/PromoCards/types.js +1 -0
  158. package/dist/es/components/Property/Property.d.ts +5 -0
  159. package/dist/es/components/Property/Property.js +10 -0
  160. package/dist/es/components/ServiceCards/ServiceCards.css +1 -0
  161. package/dist/es/components/ServiceCards/ServiceCards.d.ts +28 -0
  162. package/dist/es/components/ServiceCards/ServiceCards.js +42 -0
  163. package/dist/es/components/ServiceCards/components/ServiceCard/ServiceCard.css +1 -0
  164. package/dist/es/components/ServiceCards/components/ServiceCard/ServiceCard.d.ts +19 -0
  165. package/dist/es/components/ServiceCards/components/ServiceCard/ServiceCard.js +81 -0
  166. package/dist/es/components/ServiceCards/types.d.ts +26 -0
  167. package/dist/es/components/ServiceCards/types.js +1 -0
  168. package/dist/es/components/SidePictureCards/SidePictureCards.d.ts +31 -0
  169. package/dist/es/components/SidePictureCards/SidePictureCards.js +69 -0
  170. package/dist/es/components/SidePictureCards/components/SidePictureCard.css +1 -0
  171. package/dist/es/components/SidePictureCards/components/SidePictureCard.d.ts +18 -0
  172. package/dist/es/components/SidePictureCards/components/SidePictureCard.js +94 -0
  173. package/dist/es/components/SidePictureCards/types.d.ts +48 -0
  174. package/dist/es/components/SidePictureCards/types.js +1 -0
  175. package/dist/es/components/Stepper/Stepper.css +1 -0
  176. package/dist/es/components/Stepper/Stepper.d.ts +52 -0
  177. package/dist/es/components/Stepper/Stepper.js +159 -0
  178. package/dist/es/components/Stepper/StepperItem.css +1 -0
  179. package/dist/es/components/Stepper/StepperItem.d.ts +57 -0
  180. package/dist/es/components/Stepper/StepperItem.js +99 -0
  181. package/dist/es/components/Stepper/img/separator-mobile.png +0 -0
  182. package/dist/es/components/Stepper/img/separator-vertical.png +0 -0
  183. package/dist/es/components/Stepper/img/separator.png +0 -0
  184. package/dist/es/components/Steps/Steps.css +1 -0
  185. package/dist/es/components/Steps/Steps.d.ts +21 -0
  186. package/dist/es/components/Steps/Steps.js +32 -0
  187. package/dist/es/components/Steps/StepsItem.css +1 -0
  188. package/dist/es/components/Steps/StepsItem.d.ts +10 -0
  189. package/dist/es/components/Steps/StepsItem.js +21 -0
  190. package/dist/es/components/StoreBanner/StoreBanner.css +1 -0
  191. package/dist/es/components/StoreBanner/StoreBanner.d.ts +101 -0
  192. package/dist/es/components/StoreBanner/StoreBanner.js +200 -0
  193. package/dist/es/components/StoreBanner/img/android.png +0 -0
  194. package/dist/es/components/StoreBanner/img/black-iphone.png +0 -0
  195. package/dist/es/components/StoreBanner/img/iphone12.png +0 -0
  196. package/dist/es/components/StoreBanner/img/new-iphone.png +0 -0
  197. package/dist/es/components/StoreBanner/img/white-iphone.png +0 -0
  198. package/dist/es/components/StoreButton/StoreButton.css +1 -0
  199. package/dist/es/components/StoreButton/StoreButton.d.ts +36 -0
  200. package/dist/es/components/StoreButton/StoreButton.js +60 -0
  201. package/dist/es/components/StoreButton/img/app-store-large.png +0 -0
  202. package/dist/es/components/StoreButton/img/app-store.png +0 -0
  203. package/dist/es/components/StoreButton/img/galaxy-store-large.png +0 -0
  204. package/dist/es/components/StoreButton/img/galaxy-store.png +0 -0
  205. package/dist/es/components/StoreButton/img/google-play-large.png +0 -0
  206. package/dist/es/components/StoreButton/img/google-play.png +0 -0
  207. package/dist/es/components/StoreButton/img/huawei-store-large.png +0 -0
  208. package/dist/es/components/StoreButton/img/huawei-store.png +0 -0
  209. package/dist/es/components/StoreButton/img/mi-store-large.png +0 -0
  210. package/dist/es/components/StoreButton/img/mi-store.png +0 -0
  211. package/dist/es/components/StoreButton/img/ru-store-large.png +0 -0
  212. package/dist/es/components/StoreButton/img/ru-store.png +0 -0
  213. package/dist/es/components/StoreButton/img/v-appstore-large.png +0 -0
  214. package/dist/es/components/StoreButton/img/v-appstore.png +0 -0
  215. package/dist/es/components/Table/Table.css +1 -0
  216. package/dist/es/components/Table/Table.d.ts +18 -0
  217. package/dist/es/components/Table/Table.js +127 -0
  218. package/dist/es/components/Table/TableCell.d.ts +6 -0
  219. package/dist/es/components/Table/TableCell.js +6 -0
  220. package/dist/es/components/Table/TableRow.d.ts +11 -0
  221. package/dist/es/components/Table/TableRow.js +7 -0
  222. package/dist/es/components/TabsBox/TabBox.d.ts +2 -0
  223. package/dist/es/components/TabsBox/TabBox.js +2 -0
  224. package/dist/es/components/TabsBox/TabsBox.d.ts +8 -0
  225. package/dist/es/components/TabsBox/TabsBox.js +24 -0
  226. package/dist/es/components/TextBox/TextBox.css +1 -0
  227. package/dist/es/components/TextBox/TextBox.d.ts +17 -0
  228. package/dist/es/components/TextBox/TextBox.js +43 -0
  229. package/dist/es/components/TextBox/TextBoxPicture.css +1 -0
  230. package/dist/es/components/TextBox/TextBoxPicture.d.ts +21 -0
  231. package/dist/es/components/TextBox/TextBoxPicture.js +30 -0
  232. package/dist/es/components/TextWithIcon/TextWithIcon.css +1 -0
  233. package/dist/es/components/TextWithIcon/TextWithIcon.d.ts +21 -0
  234. package/dist/es/components/TextWithIcon/TextWithIcon.js +41 -0
  235. package/dist/es/components/TextWithIcon/TextWithIconItem.css +1 -0
  236. package/dist/es/components/TextWithIcon/TextWithIconItem.d.ts +25 -0
  237. package/dist/es/components/TextWithIcon/TextWithIconItem.js +40 -0
  238. package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.css +1 -0
  239. package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +22 -0
  240. package/dist/es/components/TitleDescriptionBox/TitleDescriptionBox.js +60 -0
  241. package/dist/es/components/VideoBanner/VideoBanner.css +1 -0
  242. package/dist/es/components/VideoBanner/VideoBanner.d.ts +112 -0
  243. package/dist/es/components/VideoBanner/VideoBanner.js +245 -0
  244. package/dist/es/components/VideoBlock/VideoBlock.css +1 -0
  245. package/dist/es/components/VideoBlock/VideoBlock.d.ts +63 -0
  246. package/dist/es/components/VideoBlock/VideoBlock.js +230 -0
  247. package/dist/es/constants/throttleTime.d.ts +4 -0
  248. package/dist/es/constants/throttleTime.js +3 -0
  249. package/dist/es/helpers/getColumnConfig.d.ts +6 -0
  250. package/dist/es/helpers/getColumnConfig.js +10 -0
  251. package/dist/es/helpers/setRelAttribute.d.ts +3 -0
  252. package/dist/es/helpers/setRelAttribute.js +9 -0
  253. package/dist/es/hooks/useResolutions.d.ts +8 -0
  254. package/dist/es/hooks/useResolutions.js +62 -0
  255. package/dist/es/index.d.ts +67 -0
  256. package/dist/es/index.js +67 -0
  257. package/dist/lib/components/AccordionBox/AccordionBox.css +1 -0
  258. package/dist/lib/components/AccordionBox/AccordionBox.d.ts +49 -0
  259. package/dist/lib/components/AccordionBox/AccordionBox.js +51 -0
  260. package/dist/lib/components/AudioPlayer/AudioPlayer.d.ts +10 -0
  261. package/dist/lib/components/AudioPlayer/AudioPlayer.js +116 -0
  262. package/dist/lib/components/AudioPlayer/AudioProgress.d.ts +14 -0
  263. package/dist/lib/components/AudioPlayer/AudioProgress.js +102 -0
  264. package/dist/lib/components/AudioPlayer/AudioRange.d.ts +15 -0
  265. package/dist/lib/components/AudioPlayer/AudioRange.js +37 -0
  266. package/dist/lib/components/AudioPlayer/AudioVolume.d.ts +7 -0
  267. package/dist/lib/components/AudioPlayer/AudioVolume.js +83 -0
  268. package/dist/lib/components/AudioPlayer/hooks/useTrackDuration.d.ts +3 -0
  269. package/dist/lib/components/AudioPlayer/hooks/useTrackDuration.js +33 -0
  270. package/dist/lib/components/AudioPlayer/style/AudioPlayer.css +1 -0
  271. package/dist/lib/components/AudioPlayer/style/AudioProgress.css +1 -0
  272. package/dist/lib/components/AudioPlayer/style/AudioRange.css +1 -0
  273. package/dist/lib/components/AudioPlayer/style/AudioVolume.css +1 -0
  274. package/dist/lib/components/AudioPlayer/timerFormatUtil.d.ts +2 -0
  275. package/dist/lib/components/AudioPlayer/timerFormatUtil.js +31 -0
  276. package/dist/lib/components/BannerBox/BannerBox.d.ts +5 -0
  277. package/dist/lib/components/BannerBox/BannerBox.js +31 -0
  278. package/dist/lib/components/BenefitsIcons/BenefitsIcons.d.ts +30 -0
  279. package/dist/lib/components/BenefitsIcons/BenefitsIcons.js +113 -0
  280. package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.d.ts +10 -0
  281. package/dist/lib/components/BenefitsIcons/BenefitsIconsTile.js +60 -0
  282. package/dist/lib/components/BenefitsIcons/helpers.d.ts +8 -0
  283. package/dist/lib/components/BenefitsIcons/helpers.js +108 -0
  284. package/dist/lib/components/BenefitsIcons/style/BenefitsIcons.css +1 -0
  285. package/dist/lib/components/BenefitsIcons/style/BenefitsIconsTile.css +1 -0
  286. package/dist/lib/components/BenefitsIcons/types.d.ts +54 -0
  287. package/dist/lib/components/BenefitsIcons/types.js +23 -0
  288. package/dist/lib/components/BenefitsPictures/BenefitsPictures.d.ts +27 -0
  289. package/dist/lib/components/BenefitsPictures/BenefitsPictures.js +120 -0
  290. package/dist/lib/components/BenefitsPictures/BenfitsPictures.css +1 -0
  291. package/dist/lib/components/BenefitsPictures/helpers.d.ts +11 -0
  292. package/dist/lib/components/BenefitsPictures/helpers.js +91 -0
  293. package/dist/lib/components/BenefitsPictures/types.d.ts +24 -0
  294. package/dist/lib/components/BenefitsPictures/types.js +5 -0
  295. package/dist/lib/components/BlogBox/BlogBox.css +1 -0
  296. package/dist/lib/components/BlogBox/BlogBox.d.ts +31 -0
  297. package/dist/lib/components/BlogBox/BlogBox.js +81 -0
  298. package/dist/lib/components/BlogBox/components/BlogBoxTile.css +1 -0
  299. package/dist/lib/components/BlogBox/components/BlogBoxTile.d.ts +13 -0
  300. package/dist/lib/components/BlogBox/components/BlogBoxTile.js +70 -0
  301. package/dist/lib/components/BlogBox/types.d.ts +37 -0
  302. package/dist/lib/components/BlogBox/types.js +5 -0
  303. package/dist/lib/components/Breadcrumbs/Breadcrumbs.css +1 -0
  304. package/dist/lib/components/Breadcrumbs/Breadcrumbs.d.ts +43 -0
  305. package/dist/lib/components/Breadcrumbs/Breadcrumbs.js +78 -0
  306. package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.css +1 -0
  307. package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.d.ts +30 -0
  308. package/dist/lib/components/Breadcrumbs/components/BreadcrumbsItem.js +71 -0
  309. package/dist/lib/components/ButtonBanner/ButtonBanner.css +1 -0
  310. package/dist/lib/components/ButtonBanner/ButtonBanner.d.ts +64 -0
  311. package/dist/lib/components/ButtonBanner/ButtonBanner.js +105 -0
  312. package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.css +1 -0
  313. package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.d.ts +52 -0
  314. package/dist/lib/components/ButtonLinkBox/ButtonLinkBox.js +74 -0
  315. package/dist/lib/components/ButtonsBox/ButtonsBox.css +1 -0
  316. package/dist/lib/components/ButtonsBox/ButtonsBox.d.ts +48 -0
  317. package/dist/lib/components/ButtonsBox/ButtonsBox.js +56 -0
  318. package/dist/lib/components/Card/Card.css +1 -0
  319. package/dist/lib/components/Card/Card.d.ts +55 -0
  320. package/dist/lib/components/Card/Card.js +238 -0
  321. package/dist/lib/components/Card/types.d.ts +86 -0
  322. package/dist/lib/components/Card/types.js +5 -0
  323. package/dist/lib/components/CardsBox/CardsBox.d.ts +14 -0
  324. package/dist/lib/components/CardsBox/CardsBox.js +36 -0
  325. package/dist/lib/components/CardsBox/helpers.d.ts +10 -0
  326. package/dist/lib/components/CardsBox/helpers.js +28 -0
  327. package/dist/lib/components/CarouselBox/CarouselBox.d.ts +10 -0
  328. package/dist/lib/components/CarouselBox/CarouselBox.js +55 -0
  329. package/dist/lib/components/ChipsBox/ChipBox.d.ts +5 -0
  330. package/dist/lib/components/ChipsBox/ChipBox.js +17 -0
  331. package/dist/lib/components/ChipsBox/ChipsBox.css +1 -0
  332. package/dist/lib/components/ChipsBox/ChipsBox.d.ts +16 -0
  333. package/dist/lib/components/ChipsBox/ChipsBox.js +85 -0
  334. package/dist/lib/components/Container/Container.css +1 -0
  335. package/dist/lib/components/Container/Container.d.ts +41 -0
  336. package/dist/lib/components/Container/Container.js +54 -0
  337. package/dist/lib/components/DarkGradientCards/DarkGradientCards.css +1 -0
  338. package/dist/lib/components/DarkGradientCards/DarkGradientCards.d.ts +33 -0
  339. package/dist/lib/components/DarkGradientCards/DarkGradientCards.js +75 -0
  340. package/dist/lib/components/DarkGradientCards/components/DarkGradientCard.css +1 -0
  341. package/dist/lib/components/DarkGradientCards/components/DarkGradientCard.d.ts +16 -0
  342. package/dist/lib/components/DarkGradientCards/components/DarkGradientCard.js +59 -0
  343. package/dist/lib/components/DarkGradientCards/types.d.ts +20 -0
  344. package/dist/lib/components/DarkGradientCards/types.js +5 -0
  345. package/dist/lib/components/DownloadLinks/DownloadLink.css +1 -0
  346. package/dist/lib/components/DownloadLinks/DownloadLink.d.ts +36 -0
  347. package/dist/lib/components/DownloadLinks/DownloadLink.js +70 -0
  348. package/dist/lib/components/DownloadLinks/DownloadLinks.css +1 -0
  349. package/dist/lib/components/DownloadLinks/DownloadLinks.d.ts +20 -0
  350. package/dist/lib/components/DownloadLinks/DownloadLinks.js +73 -0
  351. package/dist/lib/components/FaqWrapper/FaqWrapper.d.ts +6 -0
  352. package/dist/lib/components/FaqWrapper/FaqWrapper.js +18 -0
  353. package/dist/lib/components/ImageBanner/ImageBanner.css +1 -0
  354. package/dist/lib/components/ImageBanner/ImageBanner.d.ts +94 -0
  355. package/dist/lib/components/ImageBanner/ImageBanner.js +173 -0
  356. package/dist/lib/components/InfoCards/InfoCards.css +1 -0
  357. package/dist/lib/components/InfoCards/InfoCards.d.ts +24 -0
  358. package/dist/lib/components/InfoCards/InfoCards.js +53 -0
  359. package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.css +1 -0
  360. package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.d.ts +19 -0
  361. package/dist/lib/components/InfoCards/components/InfoCard/InfoCard.js +94 -0
  362. package/dist/lib/components/InfoCards/types.d.ts +31 -0
  363. package/dist/lib/components/InfoCards/types.js +5 -0
  364. package/dist/lib/components/Instructions/Instructions.css +1 -0
  365. package/dist/lib/components/Instructions/Instructions.d.ts +120 -0
  366. package/dist/lib/components/Instructions/Instructions.js +371 -0
  367. package/dist/lib/components/Instructions/img/android-new.png +0 -0
  368. package/dist/lib/components/Instructions/img/android.png +0 -0
  369. package/dist/lib/components/Instructions/img/blackIphone.png +0 -0
  370. package/dist/lib/components/Instructions/img/iphone-new.png +0 -0
  371. package/dist/lib/components/Instructions/img/iphone12.png +0 -0
  372. package/dist/lib/components/Instructions/img/iphone15.png +0 -0
  373. package/dist/lib/components/Instructions/img/laptop-new.png +0 -0
  374. package/dist/lib/components/Instructions/img/laptop.png +0 -0
  375. package/dist/lib/components/Instructions/img/newIphone.png +0 -0
  376. package/dist/lib/components/Instructions/img/whiteIphone.png +0 -0
  377. package/dist/lib/components/NotificationBox/NotificationBox.css +1 -0
  378. package/dist/lib/components/NotificationBox/NotificationBox.d.ts +15 -0
  379. package/dist/lib/components/NotificationBox/NotificationBox.js +44 -0
  380. package/dist/lib/components/NumbersBox/NumbersBox.css +1 -0
  381. package/dist/lib/components/NumbersBox/NumbersBox.d.ts +35 -0
  382. package/dist/lib/components/NumbersBox/NumbersBox.js +81 -0
  383. package/dist/lib/components/NumbersBox/components/NumbersCard/NumbersCard.css +1 -0
  384. package/dist/lib/components/NumbersBox/components/NumbersCard/NumbersCard.d.ts +16 -0
  385. package/dist/lib/components/NumbersBox/components/NumbersCard/NumbersCard.js +37 -0
  386. package/dist/lib/components/NumbersBox/types.d.ts +7 -0
  387. package/dist/lib/components/NumbersBox/types.js +5 -0
  388. package/dist/lib/components/PageTitle/PageTitle.css +1 -0
  389. package/dist/lib/components/PageTitle/PageTitle.d.ts +36 -0
  390. package/dist/lib/components/PageTitle/PageTitle.js +83 -0
  391. package/dist/lib/components/Partners/Partners.css +1 -0
  392. package/dist/lib/components/Partners/Partners.d.ts +37 -0
  393. package/dist/lib/components/Partners/Partners.js +120 -0
  394. package/dist/lib/components/PictureBox/PictureBox.css +1 -0
  395. package/dist/lib/components/PictureBox/PictureBox.d.ts +48 -0
  396. package/dist/lib/components/PictureBox/PictureBox.js +105 -0
  397. package/dist/lib/components/PictureBox/img/mac-book-1x.png +0 -0
  398. package/dist/lib/components/PictureBox/img/mac-book-2x.png +0 -0
  399. package/dist/lib/components/PictureWithDescription/PictureWithDescription.css +1 -0
  400. package/dist/lib/components/PictureWithDescription/PictureWithDescription.d.ts +32 -0
  401. package/dist/lib/components/PictureWithDescription/PictureWithDescription.js +56 -0
  402. package/dist/lib/components/PromoBanner/PromoBanner.d.ts +5 -0
  403. package/dist/lib/components/PromoBanner/PromoBanner.js +36 -0
  404. package/dist/lib/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.css +1 -0
  405. package/dist/lib/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.d.ts +82 -0
  406. package/dist/lib/components/PromoBanner/components/PromoBannerSlide/PromoBannerSlide.js +151 -0
  407. package/dist/lib/components/PromoCards/PromoCards.d.ts +33 -0
  408. package/dist/lib/components/PromoCards/PromoCards.js +71 -0
  409. package/dist/lib/components/PromoCards/components/PromoCard/PromoCard.css +1 -0
  410. package/dist/lib/components/PromoCards/components/PromoCard/PromoCard.d.ts +25 -0
  411. package/dist/lib/components/PromoCards/components/PromoCard/PromoCard.js +184 -0
  412. package/dist/lib/components/PromoCards/types.d.ts +62 -0
  413. package/dist/lib/components/PromoCards/types.js +5 -0
  414. package/dist/lib/components/Property/Property.d.ts +5 -0
  415. package/dist/lib/components/Property/Property.js +19 -0
  416. package/dist/lib/components/ServiceCards/ServiceCards.css +1 -0
  417. package/dist/lib/components/ServiceCards/ServiceCards.d.ts +28 -0
  418. package/dist/lib/components/ServiceCards/ServiceCards.js +51 -0
  419. package/dist/lib/components/ServiceCards/components/ServiceCard/ServiceCard.css +1 -0
  420. package/dist/lib/components/ServiceCards/components/ServiceCard/ServiceCard.d.ts +19 -0
  421. package/dist/lib/components/ServiceCards/components/ServiceCard/ServiceCard.js +90 -0
  422. package/dist/lib/components/ServiceCards/types.d.ts +26 -0
  423. package/dist/lib/components/ServiceCards/types.js +5 -0
  424. package/dist/lib/components/SidePictureCards/SidePictureCards.d.ts +31 -0
  425. package/dist/lib/components/SidePictureCards/SidePictureCards.js +79 -0
  426. package/dist/lib/components/SidePictureCards/components/SidePictureCard.css +1 -0
  427. package/dist/lib/components/SidePictureCards/components/SidePictureCard.d.ts +18 -0
  428. package/dist/lib/components/SidePictureCards/components/SidePictureCard.js +100 -0
  429. package/dist/lib/components/SidePictureCards/types.d.ts +48 -0
  430. package/dist/lib/components/SidePictureCards/types.js +5 -0
  431. package/dist/lib/components/Stepper/Stepper.css +1 -0
  432. package/dist/lib/components/Stepper/Stepper.d.ts +52 -0
  433. package/dist/lib/components/Stepper/Stepper.js +168 -0
  434. package/dist/lib/components/Stepper/StepperItem.css +1 -0
  435. package/dist/lib/components/Stepper/StepperItem.d.ts +57 -0
  436. package/dist/lib/components/Stepper/StepperItem.js +108 -0
  437. package/dist/lib/components/Stepper/img/separator-mobile.png +0 -0
  438. package/dist/lib/components/Stepper/img/separator-vertical.png +0 -0
  439. package/dist/lib/components/Stepper/img/separator.png +0 -0
  440. package/dist/lib/components/Steps/Steps.css +1 -0
  441. package/dist/lib/components/Steps/Steps.d.ts +21 -0
  442. package/dist/lib/components/Steps/Steps.js +40 -0
  443. package/dist/lib/components/Steps/StepsItem.css +1 -0
  444. package/dist/lib/components/Steps/StepsItem.d.ts +10 -0
  445. package/dist/lib/components/Steps/StepsItem.js +29 -0
  446. package/dist/lib/components/StoreBanner/StoreBanner.css +1 -0
  447. package/dist/lib/components/StoreBanner/StoreBanner.d.ts +101 -0
  448. package/dist/lib/components/StoreBanner/StoreBanner.js +209 -0
  449. package/dist/lib/components/StoreBanner/img/android.png +0 -0
  450. package/dist/lib/components/StoreBanner/img/black-iphone.png +0 -0
  451. package/dist/lib/components/StoreBanner/img/iphone12.png +0 -0
  452. package/dist/lib/components/StoreBanner/img/new-iphone.png +0 -0
  453. package/dist/lib/components/StoreBanner/img/white-iphone.png +0 -0
  454. package/dist/lib/components/StoreButton/StoreButton.css +1 -0
  455. package/dist/lib/components/StoreButton/StoreButton.d.ts +36 -0
  456. package/dist/lib/components/StoreButton/StoreButton.js +69 -0
  457. package/dist/lib/components/StoreButton/img/app-store-large.png +0 -0
  458. package/dist/lib/components/StoreButton/img/app-store.png +0 -0
  459. package/dist/lib/components/StoreButton/img/galaxy-store-large.png +0 -0
  460. package/dist/lib/components/StoreButton/img/galaxy-store.png +0 -0
  461. package/dist/lib/components/StoreButton/img/google-play-large.png +0 -0
  462. package/dist/lib/components/StoreButton/img/google-play.png +0 -0
  463. package/dist/lib/components/StoreButton/img/huawei-store-large.png +0 -0
  464. package/dist/lib/components/StoreButton/img/huawei-store.png +0 -0
  465. package/dist/lib/components/StoreButton/img/mi-store-large.png +0 -0
  466. package/dist/lib/components/StoreButton/img/mi-store.png +0 -0
  467. package/dist/lib/components/StoreButton/img/ru-store-large.png +0 -0
  468. package/dist/lib/components/StoreButton/img/ru-store.png +0 -0
  469. package/dist/lib/components/StoreButton/img/v-appstore-large.png +0 -0
  470. package/dist/lib/components/StoreButton/img/v-appstore.png +0 -0
  471. package/dist/lib/components/Table/Table.css +1 -0
  472. package/dist/lib/components/Table/Table.d.ts +18 -0
  473. package/dist/lib/components/Table/Table.js +136 -0
  474. package/dist/lib/components/Table/TableCell.d.ts +6 -0
  475. package/dist/lib/components/Table/TableCell.js +15 -0
  476. package/dist/lib/components/Table/TableRow.d.ts +11 -0
  477. package/dist/lib/components/Table/TableRow.js +17 -0
  478. package/dist/lib/components/TabsBox/TabBox.d.ts +2 -0
  479. package/dist/lib/components/TabsBox/TabBox.js +8 -0
  480. package/dist/lib/components/TabsBox/TabsBox.d.ts +8 -0
  481. package/dist/lib/components/TabsBox/TabsBox.js +33 -0
  482. package/dist/lib/components/TextBox/TextBox.css +1 -0
  483. package/dist/lib/components/TextBox/TextBox.d.ts +17 -0
  484. package/dist/lib/components/TextBox/TextBox.js +51 -0
  485. package/dist/lib/components/TextBox/TextBoxPicture.css +1 -0
  486. package/dist/lib/components/TextBox/TextBoxPicture.d.ts +21 -0
  487. package/dist/lib/components/TextBox/TextBoxPicture.js +38 -0
  488. package/dist/lib/components/TextWithIcon/TextWithIcon.css +1 -0
  489. package/dist/lib/components/TextWithIcon/TextWithIcon.d.ts +21 -0
  490. package/dist/lib/components/TextWithIcon/TextWithIcon.js +50 -0
  491. package/dist/lib/components/TextWithIcon/TextWithIconItem.css +1 -0
  492. package/dist/lib/components/TextWithIcon/TextWithIconItem.d.ts +25 -0
  493. package/dist/lib/components/TextWithIcon/TextWithIconItem.js +49 -0
  494. package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.css +1 -0
  495. package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.d.ts +22 -0
  496. package/dist/lib/components/TitleDescriptionBox/TitleDescriptionBox.js +69 -0
  497. package/dist/lib/components/VideoBanner/VideoBanner.css +1 -0
  498. package/dist/lib/components/VideoBanner/VideoBanner.d.ts +112 -0
  499. package/dist/lib/components/VideoBanner/VideoBanner.js +253 -0
  500. package/dist/lib/components/VideoBlock/VideoBlock.css +1 -0
  501. package/dist/lib/components/VideoBlock/VideoBlock.d.ts +63 -0
  502. package/dist/lib/components/VideoBlock/VideoBlock.js +238 -0
  503. package/dist/lib/constants/throttleTime.d.ts +4 -0
  504. package/dist/lib/constants/throttleTime.js +9 -0
  505. package/dist/lib/helpers/getColumnConfig.d.ts +6 -0
  506. package/dist/lib/helpers/getColumnConfig.js +16 -0
  507. package/dist/lib/helpers/setRelAttribute.d.ts +3 -0
  508. package/dist/lib/helpers/setRelAttribute.js +15 -0
  509. package/dist/lib/hooks/useResolutions.d.ts +8 -0
  510. package/dist/lib/hooks/useResolutions.js +69 -0
  511. package/dist/lib/index.d.ts +67 -0
  512. package/dist/lib/index.js +475 -0
  513. package/package.json +5 -5
@@ -0,0 +1,104 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import "core-js/modules/es.array.map.js";
4
+ import * as React from 'react';
5
+ import { Grid, GridColumn } from '@megafon/ui-core';
6
+ import { cnCreate, breakpoints, filterDataAttrs } from '@megafon/ui-helpers';
7
+ import throttle from 'lodash.throttle';
8
+ import throttleTime from "../../constants/throttleTime";
9
+ import BenefitsIconsTile from "./BenefitsIconsTile";
10
+ import getMultiColumnConfig, { getOneColumnConfig } from "./helpers";
11
+ import { IconPositionEnum, ItemsAlignEnum } from "./types";
12
+ import "./style/BenefitsIcons.css";
13
+ var testIdPrefix = 'BenefitsIcons';
14
+ var cn = cnCreate('mfui-benefits-icons');
15
+ var BenefitsIcons = function BenefitsIcons(_ref) {
16
+ var dataAttrs = _ref.dataAttrs,
17
+ rootRef = _ref.rootRef,
18
+ _ref$iconPosition = _ref.iconPosition,
19
+ iconPosition = _ref$iconPosition === void 0 ? 'left-top' : _ref$iconPosition,
20
+ _ref$background = _ref.background,
21
+ background = _ref$background === void 0 ? 'transparent' : _ref$background,
22
+ _ref$inOneColumn = _ref.inOneColumn,
23
+ inOneColumn = _ref$inOneColumn === void 0 ? false : _ref$inOneColumn,
24
+ items = _ref.items,
25
+ className = _ref.className,
26
+ _ref$classes = _ref.classes,
27
+ classes = _ref$classes === void 0 ? {} : _ref$classes;
28
+ var _React$useState = React.useState(iconPosition === IconPositionEnum.CENTER_TOP ? 'center' : 'left'),
29
+ _React$useState2 = _slicedToArray(_React$useState, 2),
30
+ itemsAlign = _React$useState2[0],
31
+ setItemsAlign = _React$useState2[1];
32
+ var _React$useState3 = React.useState(iconPosition),
33
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
34
+ localIconPosition = _React$useState4[0],
35
+ setLocalIconPosition = _React$useState4[1];
36
+ var resizeHandler = React.useCallback(function () {
37
+ if (window.innerWidth <= breakpoints.MOBILE_MIDDLE_END) {
38
+ setItemsAlign(ItemsAlignEnum.CENTER);
39
+ setLocalIconPosition(IconPositionEnum.CENTER_TOP);
40
+ } else {
41
+ setItemsAlign(ItemsAlignEnum.LEFT);
42
+ setLocalIconPosition(iconPosition);
43
+ }
44
+ }, [iconPosition]);
45
+ React.useEffect(function () {
46
+ var resizeHandlerThrottled = throttle(resizeHandler, throttleTime.resize);
47
+ if (inOneColumn) {
48
+ resizeHandler();
49
+ window.addEventListener('resize', resizeHandlerThrottled);
50
+ }
51
+ return function () {
52
+ window.removeEventListener('resize', resizeHandlerThrottled);
53
+ };
54
+ }, [iconPosition, inOneColumn, resizeHandler]);
55
+ return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
56
+ className: cn({
57
+ 'one-column': inOneColumn,
58
+ background: background
59
+ }, [className, classes.root]),
60
+ ref: rootRef
61
+ }), /*#__PURE__*/React.createElement("div", {
62
+ className: cn('inner')
63
+ }, /*#__PURE__*/React.createElement(Grid, {
64
+ className: classes.grid,
65
+ guttersLeft: "medium",
66
+ hAlign: itemsAlign,
67
+ dataAttrs: {
68
+ root: {
69
+ 'data-testid': "".concat(testIdPrefix, "-grid-root")
70
+ },
71
+ container: {
72
+ 'data-testid': "".concat(testIdPrefix, "-grid-container")
73
+ }
74
+ }
75
+ }, items.map(function (_ref2, i) {
76
+ var title = _ref2.title,
77
+ text = _ref2.text,
78
+ icon = _ref2.icon,
79
+ alt = _ref2.alt,
80
+ itemClasses = _ref2.classes,
81
+ itemDataAttrs = _ref2.dataAttrs;
82
+ var columnConfig = inOneColumn ? getOneColumnConfig(iconPosition) : getMultiColumnConfig(iconPosition, items.length, i);
83
+ return /*#__PURE__*/React.createElement(GridColumn, _extends({
84
+ className: cn('column', [classes.gridColumn]),
85
+ key: i,
86
+ dataAttrs: {
87
+ root: {
88
+ 'data-testid': "".concat(testIdPrefix, "-grid-column")
89
+ }
90
+ }
91
+ }, columnConfig), /*#__PURE__*/React.createElement(BenefitsIconsTile, {
92
+ className: cn('tile', [classes.item]),
93
+ classes: itemClasses,
94
+ dataAttrs: itemDataAttrs,
95
+ title: title,
96
+ text: text,
97
+ icon: icon,
98
+ background: background,
99
+ iconPosition: localIconPosition,
100
+ alt: alt
101
+ }));
102
+ }))));
103
+ };
104
+ export default BenefitsIcons;
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ import { IBenefit, IconPosition, BackgroundType } from './types';
3
+ import './style/BenefitsIconsTile.scss';
4
+ export interface IBenefitsIconsTile extends IBenefit {
5
+ iconPosition?: IconPosition;
6
+ background?: BackgroundType;
7
+ className?: string;
8
+ }
9
+ declare const BenefitsIconsTile: React.FC<IBenefitsIconsTile>;
10
+ export default BenefitsIconsTile;
@@ -0,0 +1,51 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import * as React from 'react';
3
+ import { Header } from '@megafon/ui-core';
4
+ import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
5
+ import "./style/BenefitsIconsTile.css";
6
+ var testIdPrefix = 'BenefitsIconsTile';
7
+ var cn = cnCreate('mfui-benefits-icons-tile');
8
+ var BenefitsIconsTile = function BenefitsIconsTile(_ref) {
9
+ var dataAttrs = _ref.dataAttrs,
10
+ _ref$classes = _ref.classes,
11
+ classes = _ref$classes === void 0 ? {} : _ref$classes,
12
+ title = _ref.title,
13
+ text = _ref.text,
14
+ icon = _ref.icon,
15
+ iconPosition = _ref.iconPosition,
16
+ background = _ref.background,
17
+ alt = _ref.alt,
18
+ className = _ref.className;
19
+ var renderIcon = function renderIcon() {
20
+ if (typeof icon === 'string') {
21
+ return /*#__PURE__*/React.createElement("img", {
22
+ className: cn('img-icon', [classes.icon]),
23
+ src: icon,
24
+ alt: alt,
25
+ "data-testid": "".concat(testIdPrefix, "-img")
26
+ });
27
+ }
28
+ return /*#__PURE__*/React.createElement("div", {
29
+ className: cn('svg-icon', [classes.icon]),
30
+ "data-testid": "".concat(testIdPrefix, "-svg")
31
+ }, icon);
32
+ };
33
+ return /*#__PURE__*/React.createElement("div", _extends({}, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root), {
34
+ className: cn({
35
+ 'icon-position': iconPosition,
36
+ background: background,
37
+ image: typeof icon === 'string'
38
+ }, [className, classes.root]),
39
+ "data-testid": "".concat(testIdPrefix, "-root")
40
+ }), /*#__PURE__*/React.createElement("div", {
41
+ className: cn('inner')
42
+ }, renderIcon(), /*#__PURE__*/React.createElement("div", {
43
+ className: cn('content-wrapper', [classes.contentWrapper])
44
+ }, title && /*#__PURE__*/React.createElement(Header, {
45
+ className: cn('title', [classes.title]),
46
+ as: "h5"
47
+ }, title), text && /*#__PURE__*/React.createElement("div", {
48
+ className: cn('content', [classes.text])
49
+ }, text))));
50
+ };
51
+ export default BenefitsIconsTile;
@@ -0,0 +1,8 @@
1
+ import { GridConfig, IconPosition } from './types';
2
+ declare const getLeftSideConfig: (count: number, index: number) => GridConfig;
3
+ declare const getLeftTopConfig: (count: number, index: number) => GridConfig;
4
+ declare const getCenterTopConfig: (count: number, index: number) => GridConfig;
5
+ declare const getOneColumnConfig: (iconPosition: IconPosition) => GridConfig;
6
+ declare const getMultiColumnConfig: (iconPosition: IconPosition, count: number, index: number) => GridConfig;
7
+ export default getMultiColumnConfig;
8
+ export { getLeftSideConfig, getLeftTopConfig, getCenterTopConfig, getOneColumnConfig };
@@ -0,0 +1,102 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import { IconPositionEnum } from "./types";
3
+ // left-aligned column with left side icon
4
+ var getLeftSideConfig = function getLeftSideConfig(count, index) {
5
+ var everySecondWithoutOffset = index % 2 ? '1' : undefined;
6
+ var columnSize = {
7
+ wide: '4',
8
+ desktop: '5',
9
+ tablet: '10'
10
+ };
11
+ switch (count) {
12
+ case 2:
13
+ case 4:
14
+ return _extends(_extends({}, columnSize), {
15
+ leftOffsetWide: everySecondWithoutOffset,
16
+ leftOffsetDesktop: everySecondWithoutOffset
17
+ });
18
+ default:
19
+ return _extends(_extends({}, columnSize), {
20
+ leftOffsetDesktop: everySecondWithoutOffset
21
+ });
22
+ }
23
+ };
24
+ // left-aligned column with left-aligned icon on top
25
+ var getLeftTopConfig = function getLeftTopConfig(count, index) {
26
+ var everySecondWithoutOffset = index % 2 ? '1' : undefined;
27
+ var everyThirdWithoutOffset = index % 3 ? '1' : undefined;
28
+ switch (count) {
29
+ case 2:
30
+ return {
31
+ wide: '4',
32
+ desktop: '4',
33
+ tablet: '5',
34
+ leftOffsetWide: everySecondWithoutOffset,
35
+ leftOffsetDesktop: everySecondWithoutOffset,
36
+ leftOffsetTablet: everySecondWithoutOffset
37
+ };
38
+ case 4:
39
+ return {
40
+ wide: '3',
41
+ desktop: '4',
42
+ tablet: '5',
43
+ leftOffsetDesktop: everySecondWithoutOffset,
44
+ leftOffsetTablet: everySecondWithoutOffset
45
+ };
46
+ default:
47
+ return {
48
+ wide: '3',
49
+ desktop: '4',
50
+ tablet: '5',
51
+ leftOffsetWide: everyThirdWithoutOffset,
52
+ leftOffsetTablet: everySecondWithoutOffset
53
+ };
54
+ }
55
+ };
56
+ // center-aligned column with center-aligned icon on top
57
+ var getCenterTopConfig = function getCenterTopConfig(count, index) {
58
+ var isEvenIndex = !(index % 2);
59
+ var everyEvenWithLeftOffset = isEvenIndex ? '1' : undefined;
60
+ var everyOddWithRightOffset = isEvenIndex ? undefined : '1';
61
+ switch (count) {
62
+ case 4:
63
+ return {
64
+ wide: '3',
65
+ desktop: '5',
66
+ tablet: '5',
67
+ leftOffsetDesktop: everyEvenWithLeftOffset,
68
+ leftOffsetTablet: everyEvenWithLeftOffset,
69
+ rightOffsetTablet: everyOddWithRightOffset,
70
+ rightOffsetDesktop: everyOddWithRightOffset
71
+ };
72
+ default:
73
+ return {
74
+ wide: '4',
75
+ desktop: '4',
76
+ tablet: '4'
77
+ };
78
+ }
79
+ };
80
+ var getOneColumnConfig = function getOneColumnConfig(iconPosition) {
81
+ return iconPosition !== IconPositionEnum.CENTER_TOP ? {
82
+ wide: '10',
83
+ desktop: '10',
84
+ tablet: '10'
85
+ } : {
86
+ wide: '12',
87
+ desktop: '12',
88
+ tablet: '12'
89
+ };
90
+ };
91
+ var getMultiColumnConfig = function getMultiColumnConfig(iconPosition, count, index) {
92
+ switch (iconPosition) {
93
+ case IconPositionEnum.LEFT_TOP:
94
+ return getLeftTopConfig(count, index);
95
+ case IconPositionEnum.CENTER_TOP:
96
+ return getCenterTopConfig(count, index);
97
+ default:
98
+ return getLeftSideConfig(count, index);
99
+ }
100
+ };
101
+ export default getMultiColumnConfig;
102
+ export { getLeftSideConfig, getLeftTopConfig, getCenterTopConfig, getOneColumnConfig };
@@ -0,0 +1 @@
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-benefits-icons{-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.mfui-benefits-icons__inner{margin-bottom:-20px}.mfui-benefits-icons_background_transparent .mfui-benefits-icons__inner{margin-bottom:-48px}.mfui-benefits-icons__column{margin-bottom:20px}.mfui-benefits-icons_background_transparent .mfui-benefits-icons__column{margin-bottom:48px}.mfui-benefits-icons_one-column .mfui-benefits-icons__inner{margin-bottom:-24px}@media screen and (max-width:767px){.mfui-benefits-icons_one-column .mfui-benefits-icons__inner{margin-bottom:-32px}}.mfui-benefits-icons_one-column .mfui-benefits-icons__column{margin-bottom:24px}@media screen and (max-width:767px){.mfui-benefits-icons_one-column .mfui-benefits-icons__column{margin-bottom:32px}}
@@ -0,0 +1 @@
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-benefits-icons-tile{border-radius:24px;min-height:100%;padding:24px}.mfui-benefits-icons-tile_background_transparent{padding:0}.mfui-benefits-icons-tile_background_gray{background-color:var(--spbSky0)}.mfui-benefits-icons-tile_background_green{background-color:var(--brandGreen20)}.mfui-benefits-icons-tile_background_purple{background-color:var(--brandPurple20)}.mfui-benefits-icons-tile_background_white{background-color:var(--base)}.mfui-benefits-icons-tile_background_stroke{border:1px solid var(--spbSky2)}.mfui-benefits-icons-tile .mfui-benefits-icons-tile__svg-icon{margin-bottom:10px}.mfui-benefits-icons-tile__content{font-size:15px;font-weight:400;line-height:24px}.mfui-benefits-icons-tile__title+.mfui-benefits-icons-tile__content{margin-top:4px}.mfui-benefits-icons-tile__text{margin-bottom:0}.mfui-benefits-icons-tile__img-icon{border-radius:8px;height:64px;width:64px}.mfui-benefits-icons-tile__svg-icon{height:40px;overflow:hidden;width:40px}.mfui-benefits-icons-tile__svg-icon svg{fill:var(--brandGreen)!important}.mfui-benefits-icons-tile_background_purple .mfui-benefits-icons-tile__svg-icon svg{fill:var(--brandPurple)!important}.mfui-benefits-icons-tile_icon-position_left-side .mfui-benefits-icons-tile__inner{display:-webkit-box;display:-ms-flexbox;display:flex}.mfui-benefits-icons-tile_icon-position_left-side .mfui-benefits-icons-tile__content-wrapper{padding-top:8px}.mfui-benefits-icons-tile_icon-position_left-side .mfui-benefits-icons-tile__img-icon,.mfui-benefits-icons-tile_icon-position_left-side .mfui-benefits-icons-tile__svg-icon{-ms-flex-negative:0;flex-shrink:0;margin-bottom:0;margin-right:14px}.mfui-benefits-icons-tile_icon-position_left-side.mfui-benefits-icons-tile_image .mfui-benefits-icons-tile__inner{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mfui-benefits-icons-tile_icon-position_left-side.mfui-benefits-icons-tile_image .mfui-benefits-icons-tile__content-wrapper{padding-top:0}.mfui-benefits-icons-tile_icon-position_left-side.mfui-benefits-icons-tile_image .mfui-benefits-icons-tile__img-icon,.mfui-benefits-icons-tile_icon-position_left-side.mfui-benefits-icons-tile_image .mfui-benefits-icons-tile__svg-icon{-ms-flex-item-align:start;align-self:start}.mfui-benefits-icons-tile_icon-position_center-top .mfui-benefits-icons-tile__inner{text-align:center}.mfui-benefits-icons-tile_icon-position_center-top .mfui-benefits-icons-tile__img-icon,.mfui-benefits-icons-tile_icon-position_center-top .mfui-benefits-icons-tile__svg-icon{margin-left:auto;margin-right:auto}
@@ -0,0 +1,54 @@
1
+ type TGridSizeValues = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
2
+ export interface IBenefit {
3
+ /** Дополнительные data атрибуты к внутренним элементам */
4
+ dataAttrs?: {
5
+ root?: Record<string, string>;
6
+ };
7
+ /** Дополнительные классы для корневого и внутренних элементов */
8
+ classes?: {
9
+ root?: string;
10
+ icon?: string;
11
+ title?: string;
12
+ text?: string;
13
+ contentWrapper?: string;
14
+ };
15
+ /** Заголовок бенефита */
16
+ title?: string | React.ReactNode | React.ReactNode[];
17
+ /** Основной текст в бенефите */
18
+ text?: string | React.ReactNode | React.ReactNode[];
19
+ /** Иконка */
20
+ icon: React.ReactNode;
21
+ /** Атрибут alt для изображения */
22
+ alt?: string;
23
+ }
24
+ export declare const IconPositionEnum: {
25
+ readonly LEFT_TOP: "left-top";
26
+ readonly CENTER_TOP: "center-top";
27
+ readonly LEFT_SIDE: "left-side";
28
+ };
29
+ export type IconPosition = (typeof IconPositionEnum)[keyof typeof IconPositionEnum];
30
+ export declare const ItemsAlignEnum: {
31
+ readonly LEFT: "left";
32
+ readonly CENTER: "center";
33
+ };
34
+ export type ItemsAlignType = (typeof ItemsAlignEnum)[keyof typeof ItemsAlignEnum];
35
+ export declare const BackgroundEnum: {
36
+ readonly TRANSPARENT: "transparent";
37
+ readonly GRAY: "gray";
38
+ readonly GREEN: "green";
39
+ readonly PURPLE: "purple";
40
+ readonly WHITE: "white";
41
+ readonly STROKE: "stroke";
42
+ };
43
+ export type BackgroundType = (typeof BackgroundEnum)[keyof typeof BackgroundEnum];
44
+ export type GridConfig = {
45
+ wide?: TGridSizeValues;
46
+ desktop?: TGridSizeValues;
47
+ tablet?: TGridSizeValues;
48
+ leftOffsetWide?: TGridSizeValues;
49
+ leftOffsetDesktop?: TGridSizeValues;
50
+ leftOffsetTablet?: TGridSizeValues;
51
+ rightOffsetDesktop?: TGridSizeValues;
52
+ rightOffsetTablet?: TGridSizeValues;
53
+ };
54
+ export {};
@@ -0,0 +1,17 @@
1
+ export var IconPositionEnum = {
2
+ LEFT_TOP: 'left-top',
3
+ CENTER_TOP: 'center-top',
4
+ LEFT_SIDE: 'left-side'
5
+ };
6
+ export var ItemsAlignEnum = {
7
+ LEFT: 'left',
8
+ CENTER: 'center'
9
+ };
10
+ export var BackgroundEnum = {
11
+ TRANSPARENT: 'transparent',
12
+ GRAY: 'gray',
13
+ GREEN: 'green',
14
+ PURPLE: 'purple',
15
+ WHITE: 'white',
16
+ STROKE: 'stroke'
17
+ };
@@ -0,0 +1,27 @@
1
+ import * as React from 'react';
2
+ import { IBenefit, GridGutterSize } from './types';
3
+ import './BenfitsPictures.scss';
4
+ export declare const ONLY_LEFT_ALIGN_ITEMS_COUNT = 3;
5
+ export interface IBenefitsPicturesProps {
6
+ /** Ссылка на корневой элемент */
7
+ rootRef?: React.Ref<HTMLDivElement>;
8
+ /** Данные для бенефитов */
9
+ items: IBenefit[];
10
+ /** Горизонтальное выравнивание бенефитов */
11
+ align?: 'left' | 'center';
12
+ /** Горизонтальное выравнивание текста */
13
+ textAlign?: 'left' | 'center' | 'auto';
14
+ /** Горизонтальное выравнивание изображения */
15
+ imgAlign?: 'left' | 'center' | 'auto';
16
+ /** Расстояние между бенефитами */
17
+ gridGap?: GridGutterSize;
18
+ /** Дополнительный css класс для корневого элемента */
19
+ className?: string;
20
+ /** Дополнительные css классы для корневого и внутренних элементов */
21
+ classes?: {
22
+ root?: string;
23
+ item?: string;
24
+ };
25
+ }
26
+ declare const BenefitsPictures: React.FC<IBenefitsPicturesProps>;
27
+ export default BenefitsPictures;
@@ -0,0 +1,111 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import "core-js/modules/es.array.map.js";
4
+ import * as React from 'react';
5
+ import { Grid, GridColumn, Header, Paragraph } from '@megafon/ui-core';
6
+ import { breakpoints, cnCreate } from '@megafon/ui-helpers';
7
+ import convert from 'htmr';
8
+ import throttle from 'lodash.throttle';
9
+ import throttleTime from "../../constants/throttleTime";
10
+ import getCenterConfig, { getLeftConfig } from "./helpers";
11
+ import "./BenfitsPictures.css";
12
+ export var ONLY_LEFT_ALIGN_ITEMS_COUNT = 3;
13
+ var testIdPrefix = 'BenefitsPictures';
14
+ var cn = cnCreate('mfui-benefits-pictures');
15
+ var BenefitsPictures = function BenefitsPictures(_ref) {
16
+ 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;
29
+ var isLargeGutter = gridGap === 'large';
30
+ var isGridCenterAlign = align === 'center' && items.length !== ONLY_LEFT_ALIGN_ITEMS_COUNT;
31
+ 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
+ if (!isLargeGutter) {
37
+ return;
38
+ }
39
+ if (window.innerWidth < breakpoints.DESKTOP_MIDDLE_START) {
40
+ setCurrentGutter('medium');
41
+ } else {
42
+ setCurrentGutter('large');
43
+ }
44
+ }, [isLargeGutter]);
45
+ var renderText = function renderText(text) {
46
+ if (typeof text === 'string') {
47
+ return /*#__PURE__*/React.createElement(Paragraph, {
48
+ dataAttrs: {
49
+ root: {
50
+ 'data-testid': "".concat(testIdPrefix, "-paragraph")
51
+ }
52
+ }
53
+ }, convert(text));
54
+ }
55
+ return text;
56
+ };
57
+ React.useEffect(function () {
58
+ var throttledResizeHandler = throttle(resizeHandler, throttleTime.resize);
59
+ resizeHandler();
60
+ window.addEventListener('resize', throttledResizeHandler);
61
+ return function () {
62
+ return window.removeEventListener('resize', throttledResizeHandler);
63
+ };
64
+ }, [resizeHandler]);
65
+ return /*#__PURE__*/React.createElement("div", {
66
+ className: cn([className, classes.root]),
67
+ ref: rootRef
68
+ }, /*#__PURE__*/React.createElement("div", {
69
+ className: cn('inner')
70
+ }, /*#__PURE__*/React.createElement(Grid, {
71
+ guttersLeft: currentGutter,
72
+ hAlign: isGridCenterAlign ? 'center' : 'left',
73
+ dataAttrs: {
74
+ container: {
75
+ 'data-testid': "".concat(testIdPrefix, "-grid-container")
76
+ }
77
+ }
78
+ }, items.map(function (_ref2, index) {
79
+ var img = _ref2.img,
80
+ title = _ref2.title,
81
+ text = _ref2.text,
82
+ alt = _ref2.alt;
83
+ return /*#__PURE__*/React.createElement(GridColumn, _extends({}, align === 'left' ? getLeftConfig(items.length, index) : getCenterConfig(items.length, index, gridGap), {
84
+ key: index
85
+ }), /*#__PURE__*/React.createElement("div", {
86
+ className: cn('item', [classes.item]),
87
+ "data-testid": "".concat(testIdPrefix, "-item")
88
+ }, /*#__PURE__*/React.createElement("img", {
89
+ className: cn('img', {
90
+ 'h-align': imgAlign === 'auto' ? align : imgAlign
91
+ }),
92
+ src: img,
93
+ alt: alt,
94
+ "data-testid": "".concat(testIdPrefix, "-img")
95
+ }), /*#__PURE__*/React.createElement("div", {
96
+ className: cn('content', {
97
+ 'h-align': textAlign === 'auto' ? align : textAlign
98
+ }),
99
+ "data-testid": "".concat(testIdPrefix, "-content")
100
+ }, !!title && /*#__PURE__*/React.createElement(Header, {
101
+ className: cn('title'),
102
+ as: "h3",
103
+ dataAttrs: {
104
+ root: {
105
+ 'data-testid': "".concat(testIdPrefix, "-title")
106
+ }
107
+ }
108
+ }, convert(title)), !!text && renderText(text))));
109
+ }))));
110
+ };
111
+ export default BenefitsPictures;
@@ -0,0 +1 @@
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}
@@ -0,0 +1,11 @@
1
+ import { GridConfig } from './types';
2
+ declare const columnSize: GridConfig;
3
+ declare const isOddIndex: (index: number) => boolean;
4
+ declare const getEvenOffset: (index: number) => "1" | undefined;
5
+ declare const getOddOffset: (index: number) => "1" | undefined;
6
+ declare const getLeftConfig: (count: number, index: number) => GridConfig;
7
+ declare const getCenterMediumConfig: (count: number, index: number) => GridConfig;
8
+ declare const getCenterLargeConfig: (count: number, index: number) => GridConfig;
9
+ declare const getCenterConfig: (count: number, index: number, gutterSize: string) => GridConfig;
10
+ export default getCenterConfig;
11
+ export { columnSize, isOddIndex, getEvenOffset, getOddOffset, getLeftConfig, getCenterMediumConfig, getCenterLargeConfig, };
@@ -0,0 +1,85 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ var columnSize = {
3
+ wide: '4',
4
+ desktop: '4',
5
+ tablet: '5'
6
+ };
7
+ var isOddIndex = function isOddIndex(index) {
8
+ return !((index + 1) % 2);
9
+ };
10
+ var getEvenOffset = function getEvenOffset(index) {
11
+ return isOddIndex(index) ? '1' : undefined;
12
+ };
13
+ var getOddOffset = function getOddOffset(index) {
14
+ return isOddIndex(index) ? undefined : '1';
15
+ };
16
+ var getLeftConfig = function getLeftConfig(count, index) {
17
+ switch (count) {
18
+ case 2:
19
+ case 4:
20
+ return _extends(_extends({}, columnSize), {
21
+ leftOffsetWide: getEvenOffset(index),
22
+ leftOffsetDesktop: getEvenOffset(index),
23
+ leftOffsetTablet: getEvenOffset(index)
24
+ });
25
+ default:
26
+ return _extends(_extends({}, columnSize), {
27
+ leftOffsetTablet: getEvenOffset(index)
28
+ });
29
+ }
30
+ };
31
+ var getCenterMediumConfig = function getCenterMediumConfig(count, index) {
32
+ switch (count) {
33
+ case 3:
34
+ return _extends(_extends({}, columnSize), {
35
+ leftOffsetTablet: getOddOffset(index)
36
+ });
37
+ case 4:
38
+ return _extends(_extends({}, columnSize), {
39
+ rightOffsetWide: getOddOffset(index),
40
+ leftOffsetWide: getEvenOffset(index),
41
+ rightOffsetDesktop: getEvenOffset(index),
42
+ leftOffsetDesktop: getOddOffset(index),
43
+ rightOffsetTablet: getEvenOffset(index),
44
+ leftOffsetTablet: getOddOffset(index)
45
+ });
46
+ default:
47
+ return _extends(_extends({}, columnSize), {
48
+ rightOffsetWide: getOddOffset(index),
49
+ leftOffsetWide: getEvenOffset(index)
50
+ });
51
+ }
52
+ };
53
+ var getCenterLargeConfig = function getCenterLargeConfig(count, index) {
54
+ switch (count) {
55
+ case 4:
56
+ return _extends(_extends({}, columnSize), {
57
+ leftOffsetWide: getOddOffset(index),
58
+ rightOffsetWide: getEvenOffset(index),
59
+ leftOffsetDesktop: getOddOffset(index),
60
+ rightOffsetDesktop: getEvenOffset(index),
61
+ leftOffsetTablet: getOddOffset(index),
62
+ rightOffsetTablet: getEvenOffset(index)
63
+ });
64
+ case 3:
65
+ return _extends(_extends({}, columnSize), {
66
+ leftOffsetTablet: getOddOffset(index)
67
+ });
68
+ default:
69
+ return _extends({}, columnSize);
70
+ }
71
+ };
72
+ var getCenterConfig = function getCenterConfig(count, index, gutterSize) {
73
+ switch (gutterSize) {
74
+ case 'medium':
75
+ {
76
+ return getCenterMediumConfig(count, index);
77
+ }
78
+ default:
79
+ {
80
+ return getCenterLargeConfig(count, index);
81
+ }
82
+ }
83
+ };
84
+ export default getCenterConfig;
85
+ export { columnSize, isOddIndex, getEvenOffset, getOddOffset, getLeftConfig, getCenterMediumConfig, getCenterLargeConfig };
@@ -0,0 +1,24 @@
1
+ export interface IBenefit {
2
+ /** Заголовок бенефита */
3
+ title?: string;
4
+ /** Основной текст в бенефите */
5
+ text?: string | React.ReactNode | React.ReactNode[];
6
+ /** Изображение */
7
+ img: string;
8
+ /** Значение тега alt для изображения */
9
+ alt?: string;
10
+ }
11
+ type TGridSizeValues = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';
12
+ export type GridConfig = {
13
+ wide?: TGridSizeValues;
14
+ desktop?: TGridSizeValues;
15
+ tablet?: TGridSizeValues;
16
+ leftOffsetWide?: TGridSizeValues;
17
+ leftOffsetDesktop?: TGridSizeValues;
18
+ leftOffsetTablet?: TGridSizeValues;
19
+ rightOffsetDesktop?: TGridSizeValues;
20
+ rightOffsetTablet?: TGridSizeValues;
21
+ rightOffsetWide?: TGridSizeValues;
22
+ };
23
+ export type GridGutterSize = 'large' | 'medium';
24
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-blog-box{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media screen and (min-width:1024px){.mfui-blog-box__list{-webkit-column-gap:20px;-moz-column-gap:20px;column-gap:20px;display:grid;grid-template-columns:1fr 1fr;row-gap:24px}}.mfui-blog-box__list_row{grid-template-columns:repeat(6,1fr)}.mfui-blog-box__list_row .mfui-blog-box__item{grid-column-end:span 2}.mfui-blog-box__list_row-size_1 .mfui-blog-box__item{grid-column-start:3}.mfui-blog-box__list_row-size_2 .mfui-blog-box__item:first-child{grid-column-start:2}.mfui-blog-box__item_view_thumbnail{margin-top:16px}@media screen and (min-width:1024px){.mfui-blog-box__item_view_thumbnail{grid-column-end:2;grid-column-start:1;margin-top:0}}.mfui-blog-box__item_view_full{margin-bottom:24px}@media screen and (min-width:768px) and (max-width:1023px){.mfui-blog-box__item_view_full{margin-bottom:32px}}@media screen and (min-width:1024px){.mfui-blog-box__item_view_full{grid-column-end:3;grid-column-start:2;grid-row-end:4;grid-row-start:1;margin-bottom:0}}.mfui-blog-box__button-wrapper{margin-top:32px}@media screen and (min-width:768px) and (max-width:1023px){.mfui-blog-box__button-wrapper{margin-top:40px}}@media screen and (min-width:1024px){.mfui-blog-box__button-wrapper{margin-top:56px}}.mfui-blog-box__button{min-width:208px}.mfui-blog-box_align-left{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.mfui-blog-box_align-left .mfui-blog-box__item:first-child{grid-column-start:1}
@@ -0,0 +1,31 @@
1
+ import * as React from 'react';
2
+ import { ButtonType, TileDataType } from './types';
3
+ import './BlogBox.scss';
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
+ itemTitle?: string;
18
+ button?: string;
19
+ };
20
+ /** Дополнительные data атрибуты к внутренним элементам */
21
+ dataAttrs?: {
22
+ root?: Record<string, string>;
23
+ list?: Record<string, string>;
24
+ item?: Record<string, string>;
25
+ button?: Record<string, string>;
26
+ };
27
+ /** Ссылка на корневой элемент */
28
+ rootRef?: React.Ref<HTMLDivElement>;
29
+ }
30
+ declare const BlogBox: React.FC<IBlogBox>;
31
+ export default BlogBox;