@gravity-ui/page-constructor 6.1.0 → 6.2.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (745) hide show
  1. package/build/cjs/blocks/Banner/Banner.js +2 -2
  2. package/build/cjs/blocks/Banner/Banner.js.map +1 -1
  3. package/build/cjs/blocks/Banner/schema.js +20 -8
  4. package/build/cjs/blocks/Banner/schema.js.map +1 -1
  5. package/build/cjs/blocks/CardLayout/CardLayout.js +2 -2
  6. package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
  7. package/build/cjs/blocks/CardLayout/schema.js +19 -4
  8. package/build/cjs/blocks/CardLayout/schema.js.map +1 -1
  9. package/build/cjs/blocks/Companies/Companies.js +1 -1
  10. package/build/cjs/blocks/Companies/Companies.js.map +1 -1
  11. package/build/cjs/blocks/Companies/schema.js +10 -4
  12. package/build/cjs/blocks/Companies/schema.js.map +1 -1
  13. package/build/cjs/blocks/ContentLayout/ContentLayout.js +1 -1
  14. package/build/cjs/blocks/ContentLayout/ContentLayout.js.map +1 -1
  15. package/build/cjs/blocks/ContentLayout/schema.js +7 -2
  16. package/build/cjs/blocks/ContentLayout/schema.js.map +1 -1
  17. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
  18. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  19. package/build/cjs/blocks/ExtendedFeatures/schema.js +7 -1
  20. package/build/cjs/blocks/ExtendedFeatures/schema.js.map +1 -1
  21. package/build/cjs/blocks/FilterBlock/schema.js +13 -3
  22. package/build/cjs/blocks/FilterBlock/schema.js.map +1 -1
  23. package/build/cjs/blocks/Form/Form.js +3 -4
  24. package/build/cjs/blocks/Form/Form.js.map +1 -1
  25. package/build/cjs/blocks/Form/schema.js +14 -6
  26. package/build/cjs/blocks/Form/schema.js.map +1 -1
  27. package/build/cjs/blocks/Header/Header.js +8 -5
  28. package/build/cjs/blocks/Header/Header.js.map +1 -1
  29. package/build/cjs/blocks/Header/schema.js +9 -2
  30. package/build/cjs/blocks/Header/schema.js.map +1 -1
  31. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +2 -3
  32. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  33. package/build/cjs/blocks/HeaderSlider/schema.js +6 -2
  34. package/build/cjs/blocks/HeaderSlider/schema.js.map +1 -1
  35. package/build/cjs/blocks/Icons/Icons.js +2 -2
  36. package/build/cjs/blocks/Icons/Icons.js.map +1 -1
  37. package/build/cjs/blocks/Icons/schema.js +17 -6
  38. package/build/cjs/blocks/Icons/schema.js.map +1 -1
  39. package/build/cjs/blocks/Info/Info.js +8 -4
  40. package/build/cjs/blocks/Info/Info.js.map +1 -1
  41. package/build/cjs/blocks/Info/schema.js +14 -4
  42. package/build/cjs/blocks/Info/schema.js.map +1 -1
  43. package/build/cjs/blocks/Map/Map.js +2 -3
  44. package/build/cjs/blocks/Map/Map.js.map +1 -1
  45. package/build/cjs/blocks/Map/schema.js +4 -1
  46. package/build/cjs/blocks/Map/schema.js.map +1 -1
  47. package/build/cjs/blocks/Media/Media.js +1 -1
  48. package/build/cjs/blocks/Media/Media.js.map +1 -1
  49. package/build/cjs/blocks/Media/schema.js +24 -9
  50. package/build/cjs/blocks/Media/schema.js.map +1 -1
  51. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  52. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  53. package/build/cjs/blocks/PromoFeaturesBlock/schema.js +8 -2
  54. package/build/cjs/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  55. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
  56. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  57. package/build/cjs/blocks/Questions/schema.js +6 -2
  58. package/build/cjs/blocks/Questions/schema.js.map +1 -1
  59. package/build/cjs/blocks/Share/schema.js +7 -3
  60. package/build/cjs/blocks/Share/schema.js.map +1 -1
  61. package/build/cjs/blocks/Slider/Slider.js +15 -14
  62. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  63. package/build/cjs/blocks/Slider/schema.js +6 -1
  64. package/build/cjs/blocks/Slider/schema.js.map +1 -1
  65. package/build/cjs/blocks/Slider/utils.js +8 -5
  66. package/build/cjs/blocks/Slider/utils.js.map +1 -1
  67. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js +1 -1
  68. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js.map +1 -1
  69. package/build/cjs/blocks/SliderNew/Slider.js +5 -5
  70. package/build/cjs/blocks/SliderNew/Slider.js.map +1 -1
  71. package/build/cjs/blocks/SliderNew/schema.js +6 -1
  72. package/build/cjs/blocks/SliderNew/schema.js.map +1 -1
  73. package/build/cjs/blocks/SliderNew/useSlider.js +1 -2
  74. package/build/cjs/blocks/SliderNew/useSlider.js.map +1 -1
  75. package/build/cjs/blocks/SliderNew/utils.js +6 -2
  76. package/build/cjs/blocks/SliderNew/utils.js.map +1 -1
  77. package/build/cjs/blocks/Table/Table.js +1 -1
  78. package/build/cjs/blocks/Table/Table.js.map +1 -1
  79. package/build/cjs/blocks/Table/schema.js +22 -10
  80. package/build/cjs/blocks/Table/schema.js.map +1 -1
  81. package/build/cjs/blocks/Tabs/Tabs.js +16 -18
  82. package/build/cjs/blocks/Tabs/Tabs.js.map +1 -1
  83. package/build/cjs/blocks/Tabs/schema.js +24 -9
  84. package/build/cjs/blocks/Tabs/schema.js.map +1 -1
  85. package/build/cjs/components/Author/Author.js +1 -1
  86. package/build/cjs/components/Author/Author.js.map +1 -1
  87. package/build/cjs/components/Author/schema.js +5 -1
  88. package/build/cjs/components/Author/schema.js.map +1 -1
  89. package/build/cjs/components/BackLink/BackLink.js +1 -1
  90. package/build/cjs/components/BackLink/BackLink.js.map +1 -1
  91. package/build/cjs/components/BackgroundImage/BackgroundImage.js +1 -1
  92. package/build/cjs/components/BackgroundImage/BackgroundImage.js.map +1 -1
  93. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js +4 -4
  94. package/build/cjs/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  95. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js +1 -1
  96. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  97. package/build/cjs/components/Button/Button.js +9 -5
  98. package/build/cjs/components/Button/Button.js.map +1 -1
  99. package/build/cjs/components/Button/utils.js +2 -2
  100. package/build/cjs/components/Button/utils.js.map +1 -1
  101. package/build/cjs/components/Buttons/Buttons.js +4 -1
  102. package/build/cjs/components/Buttons/Buttons.js.map +1 -1
  103. package/build/cjs/components/CardBase/CardBase.js +6 -2
  104. package/build/cjs/components/CardBase/CardBase.js.map +1 -1
  105. package/build/cjs/components/ContentList/ContentList.js +1 -1
  106. package/build/cjs/components/ContentList/ContentList.js.map +1 -1
  107. package/build/cjs/components/ContentList/ContentListItemIcon.js +1 -1
  108. package/build/cjs/components/ContentList/ContentListItemIcon.js.map +1 -1
  109. package/build/cjs/components/DefaultVideo/DefaultVideo.js +3 -4
  110. package/build/cjs/components/DefaultVideo/DefaultVideo.js.map +1 -1
  111. package/build/cjs/components/FileLink/FileLink.js +2 -2
  112. package/build/cjs/components/FileLink/FileLink.js.map +1 -1
  113. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js +12 -17
  114. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  115. package/build/cjs/components/FullscreenImage/FullscreenImage.js +1 -1
  116. package/build/cjs/components/FullscreenImage/FullscreenImage.js.map +1 -1
  117. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  118. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  119. package/build/cjs/components/IconWrapper/IconWrapper.js +2 -2
  120. package/build/cjs/components/IconWrapper/IconWrapper.js.map +1 -1
  121. package/build/cjs/components/Image/schema.js +40 -12
  122. package/build/cjs/components/Image/schema.js.map +1 -1
  123. package/build/cjs/components/ImageBase/ImageBase.js +3 -4
  124. package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
  125. package/build/cjs/components/InnerForm/InnerForm.js +5 -5
  126. package/build/cjs/components/InnerForm/InnerForm.js.map +1 -1
  127. package/build/cjs/components/Link/Link.js +1 -1
  128. package/build/cjs/components/Link/Link.js.map +1 -1
  129. package/build/cjs/components/Links/Links.js +4 -1
  130. package/build/cjs/components/Links/Links.js.map +1 -1
  131. package/build/cjs/components/Map/Map.js +2 -2
  132. package/build/cjs/components/Map/Map.js.map +1 -1
  133. package/build/cjs/components/Map/YMap/YMap.js +6 -5
  134. package/build/cjs/components/Map/YMap/YMap.js.map +1 -1
  135. package/build/cjs/components/Map/YMap/YandexMap.js +1 -2
  136. package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
  137. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js +2 -1
  138. package/build/cjs/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  139. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  140. package/build/cjs/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  141. package/build/cjs/components/Media/Image/Image.js +3 -3
  142. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  143. package/build/cjs/components/Media/Media.js +13 -5
  144. package/build/cjs/components/Media/Media.js.map +1 -1
  145. package/build/cjs/components/MediaBase/MediaBase.js +3 -3
  146. package/build/cjs/components/MediaBase/MediaBase.js.map +1 -1
  147. package/build/cjs/components/MediaBase/MediaBaseContent.js +1 -1
  148. package/build/cjs/components/MediaBase/MediaBaseContent.js.map +1 -1
  149. package/build/cjs/components/OutsideClick/OutsideClick.js +9 -12
  150. package/build/cjs/components/OutsideClick/OutsideClick.js.map +1 -1
  151. package/build/cjs/components/OverflowScroller/OverflowScroller.js +46 -49
  152. package/build/cjs/components/OverflowScroller/OverflowScroller.js.map +1 -1
  153. package/build/cjs/components/ReactPlayer/ReactPlayer.js +10 -12
  154. package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
  155. package/build/cjs/components/ReactPlayer/utils.js +1 -2
  156. package/build/cjs/components/ReactPlayer/utils.js.map +1 -1
  157. package/build/cjs/components/Title/Title.js +2 -2
  158. package/build/cjs/components/Title/Title.js.map +1 -1
  159. package/build/cjs/components/Title/TitleItem.js +1 -1
  160. package/build/cjs/components/Title/TitleItem.js.map +1 -1
  161. package/build/cjs/components/VideoBlock/VideoBlock.js +5 -2
  162. package/build/cjs/components/VideoBlock/VideoBlock.js.map +1 -1
  163. package/build/cjs/components/YandexForm/YandexForm.js +3 -3
  164. package/build/cjs/components/YandexForm/YandexForm.js.map +1 -1
  165. package/build/cjs/components/YandexForm/schema.js +7 -3
  166. package/build/cjs/components/YandexForm/schema.js.map +1 -1
  167. package/build/cjs/containers/Loadable/Loadable.js +3 -3
  168. package/build/cjs/containers/Loadable/Loadable.js.map +1 -1
  169. package/build/cjs/containers/PageConstructor/PageConstructor.js +14 -7
  170. package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
  171. package/build/cjs/containers/PageConstructor/Provider.js +1 -1
  172. package/build/cjs/containers/PageConstructor/Provider.js.map +1 -1
  173. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  174. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  175. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -2
  176. package/build/cjs/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  177. package/build/cjs/context/theme/withTheme.js +7 -9
  178. package/build/cjs/context/theme/withTheme.js.map +1 -1
  179. package/build/cjs/customization/BlockDecoration.js +3 -5
  180. package/build/cjs/customization/BlockDecoration.js.map +1 -1
  181. package/build/cjs/editor/components/AddBlock/AddBlock.js +6 -8
  182. package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
  183. package/build/cjs/editor/components/BlockForm/BlockForm.js +9 -4
  184. package/build/cjs/editor/components/BlockForm/BlockForm.js.map +1 -1
  185. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -4
  186. package/build/cjs/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  187. package/build/cjs/editor/components/EditBlock/EditBlock.js +2 -2
  188. package/build/cjs/editor/components/EditBlock/EditBlock.js.map +1 -1
  189. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
  190. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  191. package/build/cjs/editor/components/Layout/Layout.js +3 -3
  192. package/build/cjs/editor/components/Layout/Layout.js.map +1 -1
  193. package/build/cjs/editor/components/PageSettings/PageSettings.js +2 -2
  194. package/build/cjs/editor/components/PageSettings/PageSettings.js.map +1 -1
  195. package/build/cjs/editor/containers/Editor/Editor.js +1 -1
  196. package/build/cjs/editor/containers/Editor/Editor.js.map +1 -1
  197. package/build/cjs/editor/containers/Editor/hooks/useCode.js +2 -4
  198. package/build/cjs/editor/containers/Editor/hooks/useCode.js.map +1 -1
  199. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js +10 -7
  200. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  201. package/build/cjs/editor/containers/Form/Form.js +5 -2
  202. package/build/cjs/editor/containers/Form/Form.js.map +1 -1
  203. package/build/cjs/editor/data/index.js +4 -1
  204. package/build/cjs/editor/data/index.js.map +1 -1
  205. package/build/cjs/editor/data/previews/default-preview.js +1 -1
  206. package/build/cjs/editor/data/previews/default-preview.js.map +1 -1
  207. package/build/cjs/editor/data/previews/header-block.js +1 -1
  208. package/build/cjs/editor/data/previews/header-block.js.map +1 -1
  209. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +15 -13
  210. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  211. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js +8 -10
  212. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  213. package/build/cjs/editor/dynamic-forms-custom/parser/index.js +150 -120
  214. package/build/cjs/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  215. package/build/cjs/editor/dynamic-forms-custom/parser/views.js +2 -4
  216. package/build/cjs/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  217. package/build/cjs/editor/icons/Tablet.js +1 -1
  218. package/build/cjs/editor/icons/Tablet.js.map +1 -1
  219. package/build/cjs/editor/store/main/index.js +7 -4
  220. package/build/cjs/editor/store/main/index.js.map +1 -1
  221. package/build/cjs/editor/store/main/reducer.js +17 -3
  222. package/build/cjs/editor/store/main/reducer.js.map +1 -1
  223. package/build/cjs/editor/store/main/utils.js +1 -1
  224. package/build/cjs/editor/store/main/utils.js.map +1 -1
  225. package/build/cjs/editor/store/settings/reducer.js +16 -4
  226. package/build/cjs/editor/store/settings/reducer.js.map +1 -1
  227. package/build/cjs/editor/utils/code.js +4 -2
  228. package/build/cjs/editor/utils/code.js.map +1 -1
  229. package/build/cjs/editor/utils/index.js +7 -1
  230. package/build/cjs/editor/utils/index.js.map +1 -1
  231. package/build/cjs/editor/widget/index.js +8 -8
  232. package/build/cjs/editor/widget/index.js.map +1 -1
  233. package/build/cjs/grid/Col/Col.js +1 -1
  234. package/build/cjs/grid/Col/Col.js.map +1 -1
  235. package/build/cjs/hooks/useAnalytics.js +4 -1
  236. package/build/cjs/hooks/useAnalytics.js.map +1 -1
  237. package/build/cjs/icons/BrandIconDark.js +1 -1
  238. package/build/cjs/icons/BrandIconDark.js.map +1 -1
  239. package/build/cjs/icons/BrandIconLight.js +1 -1
  240. package/build/cjs/icons/BrandIconLight.js.map +1 -1
  241. package/build/cjs/icons/BrandName.js +1 -1
  242. package/build/cjs/icons/BrandName.js.map +1 -1
  243. package/build/cjs/icons/Chevron.js +1 -1
  244. package/build/cjs/icons/Chevron.js.map +1 -1
  245. package/build/cjs/icons/Facebook.js +1 -1
  246. package/build/cjs/icons/Facebook.js.map +1 -1
  247. package/build/cjs/icons/Github.js +1 -1
  248. package/build/cjs/icons/Github.js.map +1 -1
  249. package/build/cjs/icons/Linkedin.js +1 -1
  250. package/build/cjs/icons/Linkedin.js.map +1 -1
  251. package/build/cjs/icons/NavigationArrow.js +1 -1
  252. package/build/cjs/icons/NavigationArrow.js.map +1 -1
  253. package/build/cjs/icons/NavigationChevron.js +1 -1
  254. package/build/cjs/icons/NavigationChevron.js.map +1 -1
  255. package/build/cjs/icons/Telegram.js +1 -1
  256. package/build/cjs/icons/Telegram.js.map +1 -1
  257. package/build/cjs/icons/Twitter.js +1 -1
  258. package/build/cjs/icons/Twitter.js.map +1 -1
  259. package/build/cjs/icons/Vk.js +1 -1
  260. package/build/cjs/icons/Vk.js.map +1 -1
  261. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  262. package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  263. package/build/cjs/navigation/components/Logo/Logo.js +4 -5
  264. package/build/cjs/navigation/components/Logo/Logo.js.map +1 -1
  265. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js +2 -3
  266. package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  267. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +7 -5
  268. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  269. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  270. package/build/cjs/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  271. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +2 -3
  272. package/build/cjs/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  273. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  274. package/build/cjs/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  275. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -3
  276. package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  277. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -4
  278. package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  279. package/build/cjs/navigation/components/NavigationList/NavigationList.js +1 -4
  280. package/build/cjs/navigation/components/NavigationList/NavigationList.js.map +1 -1
  281. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js +2 -3
  282. package/build/cjs/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  283. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js +1 -1
  284. package/build/cjs/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  285. package/build/cjs/navigation/components/Standalone/index.js +1 -1
  286. package/build/cjs/navigation/components/Standalone/index.js.map +1 -1
  287. package/build/cjs/navigation/hooks/useActiveNavItem.js +1 -1
  288. package/build/cjs/navigation/hooks/useActiveNavItem.js.map +1 -1
  289. package/build/cjs/navigation/schema.js +19 -6
  290. package/build/cjs/navigation/schema.js.map +1 -1
  291. package/build/cjs/navigation/utils.js +1 -1
  292. package/build/cjs/navigation/utils.js.map +1 -1
  293. package/build/cjs/schema/constants.js +33 -2
  294. package/build/cjs/schema/constants.js.map +1 -1
  295. package/build/cjs/schema/index.js +23 -6
  296. package/build/cjs/schema/index.js.map +1 -1
  297. package/build/cjs/schema/validators/common.js +77 -31
  298. package/build/cjs/schema/validators/common.js.map +1 -1
  299. package/build/cjs/schema/validators/utils.js +9 -2
  300. package/build/cjs/schema/validators/utils.js.map +1 -1
  301. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  302. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  303. package/build/cjs/sub-blocks/BackgroundCard/schema.js +23 -8
  304. package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
  305. package/build/cjs/sub-blocks/BannerCard/BannerCard.js +1 -1
  306. package/build/cjs/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  307. package/build/cjs/sub-blocks/BasicCard/BasicCard.js +2 -2
  308. package/build/cjs/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  309. package/build/cjs/sub-blocks/BasicCard/schema.js +17 -6
  310. package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
  311. package/build/cjs/sub-blocks/Content/Content.js +1 -1
  312. package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
  313. package/build/cjs/sub-blocks/Content/schema.js +10 -3
  314. package/build/cjs/sub-blocks/Content/schema.js.map +1 -1
  315. package/build/cjs/sub-blocks/Divider/schema.js +6 -2
  316. package/build/cjs/sub-blocks/Divider/schema.js.map +1 -1
  317. package/build/cjs/sub-blocks/HubspotForm/index.js +3 -3
  318. package/build/cjs/sub-blocks/HubspotForm/index.js.map +1 -1
  319. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
  320. package/build/cjs/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  321. package/build/cjs/sub-blocks/HubspotForm/schema.js +11 -5
  322. package/build/cjs/sub-blocks/HubspotForm/schema.js.map +1 -1
  323. package/build/cjs/sub-blocks/ImageCard/ImageCard.js +1 -1
  324. package/build/cjs/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  325. package/build/cjs/sub-blocks/ImageCard/schema.js +17 -6
  326. package/build/cjs/sub-blocks/ImageCard/schema.js.map +1 -1
  327. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +11 -9
  328. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  329. package/build/cjs/sub-blocks/LayoutItem/schema.js +19 -6
  330. package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
  331. package/build/cjs/sub-blocks/LayoutItem/utils.js +4 -1
  332. package/build/cjs/sub-blocks/LayoutItem/utils.js.map +1 -1
  333. package/build/cjs/sub-blocks/MediaCard/MediaCard.js +1 -5
  334. package/build/cjs/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  335. package/build/cjs/sub-blocks/MediaCard/schema.js +12 -3
  336. package/build/cjs/sub-blocks/MediaCard/schema.js.map +1 -1
  337. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +1 -1
  338. package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  339. package/build/cjs/sub-blocks/PriceCard/schema.js +25 -11
  340. package/build/cjs/sub-blocks/PriceCard/schema.js.map +1 -1
  341. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -2
  342. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  343. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  344. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  345. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -4
  346. package/build/cjs/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  347. package/build/cjs/sub-blocks/PriceDetailed/schema.js +44 -12
  348. package/build/cjs/sub-blocks/PriceDetailed/schema.js.map +1 -1
  349. package/build/cjs/sub-blocks/Quote/Quote.js +6 -3
  350. package/build/cjs/sub-blocks/Quote/Quote.js.map +1 -1
  351. package/build/cjs/sub-blocks/Quote/schema.js +21 -8
  352. package/build/cjs/sub-blocks/Quote/schema.js.map +1 -1
  353. package/build/cjs/text-transform/common.js +10 -7
  354. package/build/cjs/text-transform/common.js.map +1 -1
  355. package/build/cjs/text-transform/config.js +26 -19
  356. package/build/cjs/text-transform/config.js.map +1 -1
  357. package/build/cjs/text-transform/filter.js +4 -1
  358. package/build/cjs/text-transform/filter.js.map +1 -1
  359. package/build/cjs/text-transform/transformers.js +1 -1
  360. package/build/cjs/text-transform/transformers.js.map +1 -1
  361. package/build/cjs/text-transform/utils.js +8 -5
  362. package/build/cjs/text-transform/utils.js.map +1 -1
  363. package/build/cjs/utils/analytics.js +2 -3
  364. package/build/cjs/utils/analytics.js.map +1 -1
  365. package/build/cjs/utils/common.js +1 -2
  366. package/build/cjs/utils/common.js.map +1 -1
  367. package/build/cjs/utils/hubspot.js +6 -7
  368. package/build/cjs/utils/hubspot.js.map +1 -1
  369. package/build/cjs/utils/microdata.js +1 -1
  370. package/build/cjs/utils/microdata.js.map +1 -1
  371. package/build/cjs/utils/url.js +10 -5
  372. package/build/cjs/utils/url.js.map +1 -1
  373. package/build/esm/blocks/Banner/Banner.js +2 -3
  374. package/build/esm/blocks/Banner/Banner.js.map +1 -1
  375. package/build/esm/blocks/Banner/schema.js +20 -8
  376. package/build/esm/blocks/Banner/schema.js.map +1 -1
  377. package/build/esm/blocks/CardLayout/CardLayout.js +2 -3
  378. package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
  379. package/build/esm/blocks/CardLayout/schema.js +19 -4
  380. package/build/esm/blocks/CardLayout/schema.js.map +1 -1
  381. package/build/esm/blocks/Companies/Companies.js +1 -1
  382. package/build/esm/blocks/Companies/Companies.js.map +1 -1
  383. package/build/esm/blocks/Companies/schema.js +10 -4
  384. package/build/esm/blocks/Companies/schema.js.map +1 -1
  385. package/build/esm/blocks/ContentLayout/ContentLayout.js +1 -1
  386. package/build/esm/blocks/ContentLayout/ContentLayout.js.map +1 -1
  387. package/build/esm/blocks/ContentLayout/schema.js +7 -2
  388. package/build/esm/blocks/ContentLayout/schema.js.map +1 -1
  389. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +1 -1
  390. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  391. package/build/esm/blocks/ExtendedFeatures/schema.js +7 -1
  392. package/build/esm/blocks/ExtendedFeatures/schema.js.map +1 -1
  393. package/build/esm/blocks/FilterBlock/schema.js +13 -3
  394. package/build/esm/blocks/FilterBlock/schema.js.map +1 -1
  395. package/build/esm/blocks/Form/Form.js +3 -4
  396. package/build/esm/blocks/Form/Form.js.map +1 -1
  397. package/build/esm/blocks/Form/schema.js +14 -6
  398. package/build/esm/blocks/Form/schema.js.map +1 -1
  399. package/build/esm/blocks/Header/Header.js +8 -5
  400. package/build/esm/blocks/Header/Header.js.map +1 -1
  401. package/build/esm/blocks/Header/schema.js +9 -2
  402. package/build/esm/blocks/Header/schema.js.map +1 -1
  403. package/build/esm/blocks/HeaderSlider/HeaderSlider.js +2 -4
  404. package/build/esm/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  405. package/build/esm/blocks/HeaderSlider/schema.js +6 -2
  406. package/build/esm/blocks/HeaderSlider/schema.js.map +1 -1
  407. package/build/esm/blocks/Icons/Icons.js +2 -2
  408. package/build/esm/blocks/Icons/Icons.js.map +1 -1
  409. package/build/esm/blocks/Icons/schema.js +17 -6
  410. package/build/esm/blocks/Icons/schema.js.map +1 -1
  411. package/build/esm/blocks/Info/Info.js +8 -4
  412. package/build/esm/blocks/Info/Info.js.map +1 -1
  413. package/build/esm/blocks/Info/schema.js +14 -4
  414. package/build/esm/blocks/Info/schema.js.map +1 -1
  415. package/build/esm/blocks/Map/Map.js +2 -4
  416. package/build/esm/blocks/Map/Map.js.map +1 -1
  417. package/build/esm/blocks/Map/schema.js +4 -1
  418. package/build/esm/blocks/Map/schema.js.map +1 -1
  419. package/build/esm/blocks/Media/Media.js +1 -1
  420. package/build/esm/blocks/Media/Media.js.map +1 -1
  421. package/build/esm/blocks/Media/schema.js +24 -9
  422. package/build/esm/blocks/Media/schema.js.map +1 -1
  423. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +1 -1
  424. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js.map +1 -1
  425. package/build/esm/blocks/PromoFeaturesBlock/schema.js +8 -2
  426. package/build/esm/blocks/PromoFeaturesBlock/schema.js.map +1 -1
  427. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +1 -1
  428. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  429. package/build/esm/blocks/Questions/schema.js +6 -2
  430. package/build/esm/blocks/Questions/schema.js.map +1 -1
  431. package/build/esm/blocks/Share/schema.js +7 -3
  432. package/build/esm/blocks/Share/schema.js.map +1 -1
  433. package/build/esm/blocks/Slider/Slider.js +15 -14
  434. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  435. package/build/esm/blocks/Slider/schema.js +6 -1
  436. package/build/esm/blocks/Slider/schema.js.map +1 -1
  437. package/build/esm/blocks/Slider/utils.js +8 -5
  438. package/build/esm/blocks/Slider/utils.js.map +1 -1
  439. package/build/esm/blocks/SliderNew/Arrow/Arrow.js +1 -1
  440. package/build/esm/blocks/SliderNew/Arrow/Arrow.js.map +1 -1
  441. package/build/esm/blocks/SliderNew/Slider.js +5 -5
  442. package/build/esm/blocks/SliderNew/Slider.js.map +1 -1
  443. package/build/esm/blocks/SliderNew/schema.js +6 -1
  444. package/build/esm/blocks/SliderNew/schema.js.map +1 -1
  445. package/build/esm/blocks/SliderNew/useSlider.js +1 -3
  446. package/build/esm/blocks/SliderNew/useSlider.js.map +1 -1
  447. package/build/esm/blocks/SliderNew/utils.js +6 -2
  448. package/build/esm/blocks/SliderNew/utils.js.map +1 -1
  449. package/build/esm/blocks/Table/Table.js +1 -1
  450. package/build/esm/blocks/Table/Table.js.map +1 -1
  451. package/build/esm/blocks/Table/schema.js +22 -10
  452. package/build/esm/blocks/Table/schema.js.map +1 -1
  453. package/build/esm/blocks/Tabs/Tabs.js +16 -18
  454. package/build/esm/blocks/Tabs/Tabs.js.map +1 -1
  455. package/build/esm/blocks/Tabs/schema.js +24 -9
  456. package/build/esm/blocks/Tabs/schema.js.map +1 -1
  457. package/build/esm/components/Author/Author.js +1 -1
  458. package/build/esm/components/Author/Author.js.map +1 -1
  459. package/build/esm/components/Author/schema.js +5 -1
  460. package/build/esm/components/Author/schema.js.map +1 -1
  461. package/build/esm/components/BackLink/BackLink.js +1 -1
  462. package/build/esm/components/BackLink/BackLink.js.map +1 -1
  463. package/build/esm/components/BackgroundImage/BackgroundImage.js +1 -1
  464. package/build/esm/components/BackgroundImage/BackgroundImage.js.map +1 -1
  465. package/build/esm/components/BackgroundMedia/BackgroundMedia.js +4 -5
  466. package/build/esm/components/BackgroundMedia/BackgroundMedia.js.map +1 -1
  467. package/build/esm/components/BalancedMasonry/BalancedMasonry.js +1 -1
  468. package/build/esm/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  469. package/build/esm/components/Button/Button.js +9 -6
  470. package/build/esm/components/Button/Button.js.map +1 -1
  471. package/build/esm/components/Button/utils.js +2 -2
  472. package/build/esm/components/Button/utils.js.map +1 -1
  473. package/build/esm/components/Buttons/Buttons.js +4 -1
  474. package/build/esm/components/Buttons/Buttons.js.map +1 -1
  475. package/build/esm/components/CardBase/CardBase.js +6 -2
  476. package/build/esm/components/CardBase/CardBase.js.map +1 -1
  477. package/build/esm/components/ContentList/ContentList.js +1 -1
  478. package/build/esm/components/ContentList/ContentList.js.map +1 -1
  479. package/build/esm/components/ContentList/ContentListItemIcon.js +1 -1
  480. package/build/esm/components/ContentList/ContentListItemIcon.js.map +1 -1
  481. package/build/esm/components/DefaultVideo/DefaultVideo.js +3 -4
  482. package/build/esm/components/DefaultVideo/DefaultVideo.js.map +1 -1
  483. package/build/esm/components/FileLink/FileLink.js +2 -2
  484. package/build/esm/components/FileLink/FileLink.js.map +1 -1
  485. package/build/esm/components/FullWidthBackground/FullWidthBackground.js +12 -17
  486. package/build/esm/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  487. package/build/esm/components/FullscreenImage/FullscreenImage.js +1 -1
  488. package/build/esm/components/FullscreenImage/FullscreenImage.js.map +1 -1
  489. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +1 -1
  490. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js.map +1 -1
  491. package/build/esm/components/IconWrapper/IconWrapper.js +2 -2
  492. package/build/esm/components/IconWrapper/IconWrapper.js.map +1 -1
  493. package/build/esm/components/Image/schema.js +40 -12
  494. package/build/esm/components/Image/schema.js.map +1 -1
  495. package/build/esm/components/ImageBase/ImageBase.js +3 -5
  496. package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
  497. package/build/esm/components/InnerForm/InnerForm.js +5 -6
  498. package/build/esm/components/InnerForm/InnerForm.js.map +1 -1
  499. package/build/esm/components/Link/Link.js +1 -1
  500. package/build/esm/components/Link/Link.js.map +1 -1
  501. package/build/esm/components/Links/Links.js +4 -1
  502. package/build/esm/components/Links/Links.js.map +1 -1
  503. package/build/esm/components/Map/Map.js +2 -2
  504. package/build/esm/components/Map/Map.js.map +1 -1
  505. package/build/esm/components/Map/YMap/YMap.js +6 -5
  506. package/build/esm/components/Map/YMap/YMap.js.map +1 -1
  507. package/build/esm/components/Map/YMap/YandexMap.js +1 -2
  508. package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
  509. package/build/esm/components/Map/YMap/YandexMapApiLoader.js +2 -1
  510. package/build/esm/components/Map/YMap/YandexMapApiLoader.js.map +1 -1
  511. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js +1 -1
  512. package/build/esm/components/Media/FullscreenVideo/FullscreenVideo.js.map +1 -1
  513. package/build/esm/components/Media/Image/Image.js +3 -3
  514. package/build/esm/components/Media/Image/Image.js.map +1 -1
  515. package/build/esm/components/Media/Media.js +13 -5
  516. package/build/esm/components/Media/Media.js.map +1 -1
  517. package/build/esm/components/MediaBase/MediaBase.js +3 -4
  518. package/build/esm/components/MediaBase/MediaBase.js.map +1 -1
  519. package/build/esm/components/MediaBase/MediaBaseContent.js +1 -1
  520. package/build/esm/components/MediaBase/MediaBaseContent.js.map +1 -1
  521. package/build/esm/components/OutsideClick/OutsideClick.js +9 -12
  522. package/build/esm/components/OutsideClick/OutsideClick.js.map +1 -1
  523. package/build/esm/components/OverflowScroller/OverflowScroller.js +46 -49
  524. package/build/esm/components/OverflowScroller/OverflowScroller.js.map +1 -1
  525. package/build/esm/components/ReactPlayer/ReactPlayer.js +10 -12
  526. package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
  527. package/build/esm/components/ReactPlayer/utils.js +1 -2
  528. package/build/esm/components/ReactPlayer/utils.js.map +1 -1
  529. package/build/esm/components/Title/Title.js +2 -3
  530. package/build/esm/components/Title/Title.js.map +1 -1
  531. package/build/esm/components/Title/TitleItem.js +1 -1
  532. package/build/esm/components/Title/TitleItem.js.map +1 -1
  533. package/build/esm/components/VideoBlock/VideoBlock.js +5 -2
  534. package/build/esm/components/VideoBlock/VideoBlock.js.map +1 -1
  535. package/build/esm/components/YandexForm/YandexForm.js +3 -3
  536. package/build/esm/components/YandexForm/YandexForm.js.map +1 -1
  537. package/build/esm/components/YandexForm/schema.js +7 -3
  538. package/build/esm/components/YandexForm/schema.js.map +1 -1
  539. package/build/esm/containers/Loadable/Loadable.js +3 -3
  540. package/build/esm/containers/Loadable/Loadable.js.map +1 -1
  541. package/build/esm/containers/PageConstructor/PageConstructor.js +14 -8
  542. package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
  543. package/build/esm/containers/PageConstructor/Provider.js +1 -1
  544. package/build/esm/containers/PageConstructor/Provider.js.map +1 -1
  545. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  546. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  547. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js +2 -3
  548. package/build/esm/containers/PageConstructor/components/ConstructorItem/ConstructorItem.js.map +1 -1
  549. package/build/esm/context/theme/withTheme.js +7 -9
  550. package/build/esm/context/theme/withTheme.js.map +1 -1
  551. package/build/esm/customization/BlockDecoration.js +3 -6
  552. package/build/esm/customization/BlockDecoration.js.map +1 -1
  553. package/build/esm/editor/components/AddBlock/AddBlock.js +6 -8
  554. package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
  555. package/build/esm/editor/components/BlockForm/BlockForm.js +9 -5
  556. package/build/esm/editor/components/BlockForm/BlockForm.js.map +1 -1
  557. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js +4 -5
  558. package/build/esm/editor/components/DeviceEmulation/DeviceEmulationMobile/DeviceEmulationMobile.js.map +1 -1
  559. package/build/esm/editor/components/EditBlock/EditBlock.js +2 -2
  560. package/build/esm/editor/components/EditBlock/EditBlock.js.map +1 -1
  561. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js +2 -5
  562. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  563. package/build/esm/editor/components/Layout/Layout.js +3 -3
  564. package/build/esm/editor/components/Layout/Layout.js.map +1 -1
  565. package/build/esm/editor/components/PageSettings/PageSettings.js +2 -3
  566. package/build/esm/editor/components/PageSettings/PageSettings.js.map +1 -1
  567. package/build/esm/editor/containers/Editor/Editor.js +1 -1
  568. package/build/esm/editor/containers/Editor/Editor.js.map +1 -1
  569. package/build/esm/editor/containers/Editor/hooks/useCode.js +2 -4
  570. package/build/esm/editor/containers/Editor/hooks/useCode.js.map +1 -1
  571. package/build/esm/editor/containers/Editor/hooks/useEditorState.js +10 -8
  572. package/build/esm/editor/containers/Editor/hooks/useEditorState.js.map +1 -1
  573. package/build/esm/editor/containers/Form/Form.js +5 -2
  574. package/build/esm/editor/containers/Form/Form.js.map +1 -1
  575. package/build/esm/editor/data/index.js +4 -1
  576. package/build/esm/editor/data/index.js.map +1 -1
  577. package/build/esm/editor/data/previews/default-preview.js +1 -1
  578. package/build/esm/editor/data/previews/default-preview.js.map +1 -1
  579. package/build/esm/editor/data/previews/header-block.js +1 -1
  580. package/build/esm/editor/data/previews/header-block.js.map +1 -1
  581. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +15 -13
  582. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  583. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js +8 -10
  584. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  585. package/build/esm/editor/dynamic-forms-custom/parser/index.js +150 -120
  586. package/build/esm/editor/dynamic-forms-custom/parser/index.js.map +1 -1
  587. package/build/esm/editor/dynamic-forms-custom/parser/views.js +2 -4
  588. package/build/esm/editor/dynamic-forms-custom/parser/views.js.map +1 -1
  589. package/build/esm/editor/icons/Tablet.js +1 -1
  590. package/build/esm/editor/icons/Tablet.js.map +1 -1
  591. package/build/esm/editor/store/main/index.js +7 -5
  592. package/build/esm/editor/store/main/index.js.map +1 -1
  593. package/build/esm/editor/store/main/reducer.js +17 -3
  594. package/build/esm/editor/store/main/reducer.js.map +1 -1
  595. package/build/esm/editor/store/main/utils.js +1 -1
  596. package/build/esm/editor/store/main/utils.js.map +1 -1
  597. package/build/esm/editor/store/settings/reducer.js +16 -4
  598. package/build/esm/editor/store/settings/reducer.js.map +1 -1
  599. package/build/esm/editor/utils/code.js +4 -2
  600. package/build/esm/editor/utils/code.js.map +1 -1
  601. package/build/esm/editor/utils/index.js +7 -1
  602. package/build/esm/editor/utils/index.js.map +1 -1
  603. package/build/esm/editor/widget/index.js +8 -8
  604. package/build/esm/editor/widget/index.js.map +1 -1
  605. package/build/esm/grid/Col/Col.js +1 -2
  606. package/build/esm/grid/Col/Col.js.map +1 -1
  607. package/build/esm/hooks/useAnalytics.js +4 -1
  608. package/build/esm/hooks/useAnalytics.js.map +1 -1
  609. package/build/esm/icons/BrandIconDark.js +1 -1
  610. package/build/esm/icons/BrandIconDark.js.map +1 -1
  611. package/build/esm/icons/BrandIconLight.js +1 -1
  612. package/build/esm/icons/BrandIconLight.js.map +1 -1
  613. package/build/esm/icons/BrandName.js +1 -1
  614. package/build/esm/icons/BrandName.js.map +1 -1
  615. package/build/esm/icons/Chevron.js +1 -1
  616. package/build/esm/icons/Chevron.js.map +1 -1
  617. package/build/esm/icons/Facebook.js +1 -1
  618. package/build/esm/icons/Facebook.js.map +1 -1
  619. package/build/esm/icons/Github.js +1 -1
  620. package/build/esm/icons/Github.js.map +1 -1
  621. package/build/esm/icons/Linkedin.js +1 -1
  622. package/build/esm/icons/Linkedin.js.map +1 -1
  623. package/build/esm/icons/NavigationArrow.js +1 -1
  624. package/build/esm/icons/NavigationArrow.js.map +1 -1
  625. package/build/esm/icons/NavigationChevron.js +1 -1
  626. package/build/esm/icons/NavigationChevron.js.map +1 -1
  627. package/build/esm/icons/Telegram.js +1 -1
  628. package/build/esm/icons/Telegram.js.map +1 -1
  629. package/build/esm/icons/Twitter.js +1 -1
  630. package/build/esm/icons/Twitter.js.map +1 -1
  631. package/build/esm/icons/Vk.js +1 -1
  632. package/build/esm/icons/Vk.js.map +1 -1
  633. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js +1 -1
  634. package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.js.map +1 -1
  635. package/build/esm/navigation/components/Logo/Logo.js +4 -6
  636. package/build/esm/navigation/components/Logo/Logo.js.map +1 -1
  637. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js +2 -4
  638. package/build/esm/navigation/components/MobileNavigation/MobileNavigation.js.map +1 -1
  639. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +7 -6
  640. package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  641. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js +1 -1
  642. package/build/esm/navigation/components/NavigationItem/components/ContentWrapper/ContentWrapper.js.map +1 -1
  643. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js +2 -3
  644. package/build/esm/navigation/components/NavigationItem/components/GithubButton/GithubButton.js.map +1 -1
  645. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js +1 -1
  646. package/build/esm/navigation/components/NavigationItem/components/NavigationButton/NavigationButton.js.map +1 -1
  647. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js +2 -4
  648. package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.js.map +1 -1
  649. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js +4 -5
  650. package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.js.map +1 -1
  651. package/build/esm/navigation/components/NavigationList/NavigationList.js +1 -5
  652. package/build/esm/navigation/components/NavigationList/NavigationList.js.map +1 -1
  653. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js +2 -4
  654. package/build/esm/navigation/components/NavigationListItem/NavigationListItem.js.map +1 -1
  655. package/build/esm/navigation/components/SocialIcon/SocialIcon.js +1 -1
  656. package/build/esm/navigation/components/SocialIcon/SocialIcon.js.map +1 -1
  657. package/build/esm/navigation/components/Standalone/index.js +1 -1
  658. package/build/esm/navigation/components/Standalone/index.js.map +1 -1
  659. package/build/esm/navigation/hooks/useActiveNavItem.js +1 -1
  660. package/build/esm/navigation/hooks/useActiveNavItem.js.map +1 -1
  661. package/build/esm/navigation/schema.js +19 -6
  662. package/build/esm/navigation/schema.js.map +1 -1
  663. package/build/esm/navigation/utils.js +1 -1
  664. package/build/esm/navigation/utils.js.map +1 -1
  665. package/build/esm/schema/constants.js +33 -2
  666. package/build/esm/schema/constants.js.map +1 -1
  667. package/build/esm/schema/index.js +23 -6
  668. package/build/esm/schema/index.js.map +1 -1
  669. package/build/esm/schema/validators/common.js +77 -31
  670. package/build/esm/schema/validators/common.js.map +1 -1
  671. package/build/esm/schema/validators/utils.js +9 -2
  672. package/build/esm/schema/validators/utils.js.map +1 -1
  673. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +1 -1
  674. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js.map +1 -1
  675. package/build/esm/sub-blocks/BackgroundCard/schema.js +23 -8
  676. package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
  677. package/build/esm/sub-blocks/BannerCard/BannerCard.js +1 -1
  678. package/build/esm/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  679. package/build/esm/sub-blocks/BasicCard/BasicCard.js +2 -3
  680. package/build/esm/sub-blocks/BasicCard/BasicCard.js.map +1 -1
  681. package/build/esm/sub-blocks/BasicCard/schema.js +17 -6
  682. package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
  683. package/build/esm/sub-blocks/Content/Content.js +1 -1
  684. package/build/esm/sub-blocks/Content/Content.js.map +1 -1
  685. package/build/esm/sub-blocks/Content/schema.js +10 -3
  686. package/build/esm/sub-blocks/Content/schema.js.map +1 -1
  687. package/build/esm/sub-blocks/Divider/schema.js +6 -2
  688. package/build/esm/sub-blocks/Divider/schema.js.map +1 -1
  689. package/build/esm/sub-blocks/HubspotForm/index.js +3 -3
  690. package/build/esm/sub-blocks/HubspotForm/index.js.map +1 -1
  691. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js +1 -2
  692. package/build/esm/sub-blocks/HubspotForm/loadHubspotScript.js.map +1 -1
  693. package/build/esm/sub-blocks/HubspotForm/schema.js +11 -5
  694. package/build/esm/sub-blocks/HubspotForm/schema.js.map +1 -1
  695. package/build/esm/sub-blocks/ImageCard/ImageCard.js +1 -1
  696. package/build/esm/sub-blocks/ImageCard/ImageCard.js.map +1 -1
  697. package/build/esm/sub-blocks/ImageCard/schema.js +17 -6
  698. package/build/esm/sub-blocks/ImageCard/schema.js.map +1 -1
  699. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +11 -10
  700. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js.map +1 -1
  701. package/build/esm/sub-blocks/LayoutItem/schema.js +19 -6
  702. package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
  703. package/build/esm/sub-blocks/LayoutItem/utils.js +4 -1
  704. package/build/esm/sub-blocks/LayoutItem/utils.js.map +1 -1
  705. package/build/esm/sub-blocks/MediaCard/MediaCard.js +1 -5
  706. package/build/esm/sub-blocks/MediaCard/MediaCard.js.map +1 -1
  707. package/build/esm/sub-blocks/MediaCard/schema.js +12 -3
  708. package/build/esm/sub-blocks/MediaCard/schema.js.map +1 -1
  709. package/build/esm/sub-blocks/PriceCard/PriceCard.js +1 -1
  710. package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  711. package/build/esm/sub-blocks/PriceCard/schema.js +25 -11
  712. package/build/esm/sub-blocks/PriceCard/schema.js.map +1 -1
  713. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -2
  714. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  715. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +1 -1
  716. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js.map +1 -1
  717. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js +1 -5
  718. package/build/esm/sub-blocks/PriceDetailed/SeparatePriceDetailed/SeparatePriceDetailed.js.map +1 -1
  719. package/build/esm/sub-blocks/PriceDetailed/schema.js +44 -12
  720. package/build/esm/sub-blocks/PriceDetailed/schema.js.map +1 -1
  721. package/build/esm/sub-blocks/Quote/Quote.js +6 -3
  722. package/build/esm/sub-blocks/Quote/Quote.js.map +1 -1
  723. package/build/esm/sub-blocks/Quote/schema.js +21 -8
  724. package/build/esm/sub-blocks/Quote/schema.js.map +1 -1
  725. package/build/esm/text-transform/common.js +10 -7
  726. package/build/esm/text-transform/common.js.map +1 -1
  727. package/build/esm/text-transform/config.js +26 -19
  728. package/build/esm/text-transform/config.js.map +1 -1
  729. package/build/esm/text-transform/filter.js +4 -1
  730. package/build/esm/text-transform/filter.js.map +1 -1
  731. package/build/esm/text-transform/transformers.js +1 -1
  732. package/build/esm/text-transform/transformers.js.map +1 -1
  733. package/build/esm/text-transform/utils.js +8 -6
  734. package/build/esm/text-transform/utils.js.map +1 -1
  735. package/build/esm/utils/analytics.js +2 -3
  736. package/build/esm/utils/analytics.js.map +1 -1
  737. package/build/esm/utils/common.js +1 -2
  738. package/build/esm/utils/common.js.map +1 -1
  739. package/build/esm/utils/hubspot.js +6 -7
  740. package/build/esm/utils/hubspot.js.map +1 -1
  741. package/build/esm/utils/microdata.js +1 -1
  742. package/build/esm/utils/microdata.js.map +1 -1
  743. package/build/esm/utils/url.js +10 -5
  744. package/build/esm/utils/url.js.map +1 -1
  745. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"YMap.js","sourceRoot":"../../../../../src","sources":["components/Map/YMap/YMap.ts"],"names":[],"mappings":"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","sourcesContent":["import {YMapMarker, YMapMarkerLabel, YMapProps} from '../../../models';\nimport {Coordinate} from '../../../models/constructor-items/common';\n\nenum GeoObjectTypes {\n Properties = 'properties',\n Options = 'options',\n}\n\nconst DEFAULT_PLACEMARKS_COLOR = '#dc534b';\n// presetStorage: https://yandex.com/dev/maps/jsapi/doc/2.1/ref/reference/option.presetStorage.html\nconst DEFAULT_PLACEMARKS_PRESET = 'islands#dotIcon';\nconst DEFAULT_MAP_CONTROL_BUTTON_HEIGHT = 30;\n\nconst geoObjectPropsAndOptions = {\n iconCaption: GeoObjectTypes.Properties,\n iconContent: GeoObjectTypes.Properties,\n iconColor: GeoObjectTypes.Options,\n preset: GeoObjectTypes.Options,\n};\n\ntype PlacemarksProps = Pick<YMapProps, 'zoom' | 'markers'>;\n\nexport class YMap {\n private ymap: Ymaps.Map;\n private mapRef: HTMLDivElement | null;\n private coords: Coordinate[] = [];\n\n constructor(ymap: Ymaps.Map, mapRef: HTMLDivElement | null) {\n this.ymap = ymap;\n this.mapRef = mapRef;\n }\n\n async showPlacemarks(props: PlacemarksProps) {\n this.clearOldPlacemarks();\n\n for (const marker of props.markers) {\n if (marker.address) {\n await this.findAddress(marker);\n } else if (marker.coordinate) {\n this.findCoordinate(marker);\n }\n }\n\n this.recalcZoomAndCenter(props);\n }\n\n async findAddress(marker: YMapMarker) {\n try {\n const res = await window.ymaps.geocode(marker.address, {results: 1});\n const geoObject = res.geoObjects.get(0);\n const coordinate = geoObject.geometry.getCoordinates();\n\n this.coords.push(coordinate);\n\n this.drawPlaceMarkStyle(geoObject, marker);\n\n this.ymap.geoObjects.add(geoObject);\n } catch {} // If error - placemark will not be displayed\n }\n\n findCoordinate(marker: YMapMarker) {\n const geoObject = new window.ymaps.Placemark(marker.coordinate, {});\n\n this.coords.push(marker.coordinate as Coordinate);\n this.drawPlaceMarkStyle(geoObject, marker);\n this.ymap.geoObjects.add(geoObject);\n }\n\n private drawPlaceMarkStyle(geoObject: Ymaps.GeoObject, marker: YMapMarker) {\n const {iconColor, preset = DEFAULT_PLACEMARKS_PRESET} = marker.label || {};\n let localIconColor: string | undefined = iconColor;\n\n // You can set the preset option together with the iconColor option only if it not a 'Stretchy' preset\n if (!preset.includes('Stretchy') && !iconColor) {\n localIconColor = DEFAULT_PLACEMARKS_COLOR;\n }\n\n Object.entries({...marker.label, iconColor: localIconColor, preset}).forEach(\n ([key, value]) => {\n const geoObjectParamType: GeoObjectTypes | undefined =\n geoObjectPropsAndOptions[key as keyof YMapMarkerLabel];\n\n if (value && geoObjectParamType) {\n geoObject[geoObjectParamType].set(key, value);\n }\n },\n );\n }\n\n private recalcZoomAndCenter(props: PlacemarksProps) {\n const coordsLength = this.coords.length;\n const {zoom = 0} = props;\n\n if (!coordsLength) {\n return;\n }\n\n let leftBottom = [Infinity, Infinity],\n rightTop = [-Infinity, -Infinity];\n\n this.coords.forEach((point) => {\n leftBottom = [Math.min(leftBottom[0], point[0]), Math.min(leftBottom[1], point[1])];\n rightTop = [Math.max(rightTop[0], point[0]), Math.max(rightTop[1], point[1])];\n });\n\n let newMapParams = {\n zoom,\n center: [],\n };\n\n if (zoom) {\n // compute only the center\n newMapParams.center = window.ymaps.util.bounds.getCenter([leftBottom, rightTop]);\n } else {\n newMapParams = window.ymaps.util.bounds.getCenterAndZoom(\n [leftBottom, rightTop],\n [this.mapRef?.clientWidth, this.mapRef?.clientHeight],\n undefined,\n {margin: DEFAULT_MAP_CONTROL_BUTTON_HEIGHT},\n );\n }\n\n this.ymap.setCenter(newMapParams.center);\n\n // Use default zoom for one placemark\n if (coordsLength > 1 && !zoom) {\n this.ymap.setZoom(newMapParams.zoom);\n }\n }\n\n private clearOldPlacemarks() {\n if (this.coords.length === 0) {\n return;\n }\n\n this.ymap.geoObjects.removeAll();\n this.coords = [];\n }\n}\n"]}
1
+ {"version":3,"file":"YMap.js","sourceRoot":"../../../../../src","sources":["components/Map/YMap/YMap.ts"],"names":[],"mappings":"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","sourcesContent":["import {YMapMarker, YMapMarkerLabel, YMapProps} from '../../../models';\nimport {Coordinate} from '../../../models/constructor-items/common';\n\nenum GeoObjectTypes {\n Properties = 'properties',\n Options = 'options',\n}\n\nconst DEFAULT_PLACEMARKS_COLOR = '#dc534b';\n// presetStorage: https://yandex.com/dev/maps/jsapi/doc/2.1/ref/reference/option.presetStorage.html\nconst DEFAULT_PLACEMARKS_PRESET = 'islands#dotIcon';\nconst DEFAULT_MAP_CONTROL_BUTTON_HEIGHT = 30;\n\nconst geoObjectPropsAndOptions = {\n iconCaption: GeoObjectTypes.Properties,\n iconContent: GeoObjectTypes.Properties,\n iconColor: GeoObjectTypes.Options,\n preset: GeoObjectTypes.Options,\n};\n\ntype PlacemarksProps = Pick<YMapProps, 'zoom' | 'markers'>;\n\nexport class YMap {\n private ymap: Ymaps.Map;\n private mapRef: HTMLDivElement | null;\n private coords: Coordinate[] = [];\n\n constructor(ymap: Ymaps.Map, mapRef: HTMLDivElement | null) {\n this.ymap = ymap;\n this.mapRef = mapRef;\n }\n\n async showPlacemarks(props: PlacemarksProps) {\n this.clearOldPlacemarks();\n\n for (const marker of props.markers) {\n if (marker.address) {\n await this.findAddress(marker);\n } else if (marker.coordinate) {\n this.findCoordinate(marker);\n }\n }\n\n this.recalcZoomAndCenter(props);\n }\n\n async findAddress(marker: YMapMarker) {\n try {\n const res = await window.ymaps.geocode(marker.address, {results: 1});\n const geoObject = res.geoObjects.get(0);\n const coordinate = geoObject.geometry.getCoordinates();\n\n this.coords.push(coordinate);\n\n this.drawPlaceMarkStyle(geoObject, marker);\n\n this.ymap.geoObjects.add(geoObject);\n } catch {} // If error - placemark will not be displayed\n }\n\n findCoordinate(marker: YMapMarker) {\n const geoObject = new window.ymaps.Placemark(marker.coordinate, {});\n\n this.coords.push(marker.coordinate as Coordinate);\n this.drawPlaceMarkStyle(geoObject, marker);\n this.ymap.geoObjects.add(geoObject);\n }\n\n private drawPlaceMarkStyle(geoObject: Ymaps.GeoObject, marker: YMapMarker) {\n const {iconColor, preset = DEFAULT_PLACEMARKS_PRESET} = marker.label || {};\n let localIconColor: string | undefined = iconColor;\n\n // You can set the preset option together with the iconColor option only if it not a 'Stretchy' preset\n if (!preset.includes('Stretchy') && !iconColor) {\n localIconColor = DEFAULT_PLACEMARKS_COLOR;\n }\n\n Object.entries({...marker.label, iconColor: localIconColor, preset}).forEach(\n ([key, value]) => {\n const geoObjectParamType: GeoObjectTypes | undefined =\n geoObjectPropsAndOptions[key as keyof YMapMarkerLabel];\n\n if (value && geoObjectParamType) {\n geoObject[geoObjectParamType].set(key, value);\n }\n },\n );\n }\n\n private recalcZoomAndCenter(props: PlacemarksProps) {\n const coordsLength = this.coords.length;\n const {zoom = 0} = props;\n\n if (!coordsLength) {\n return;\n }\n\n let leftBottom = [Infinity, Infinity],\n rightTop = [-Infinity, -Infinity];\n\n this.coords.forEach((point) => {\n leftBottom = [Math.min(leftBottom[0], point[0]), Math.min(leftBottom[1], point[1])];\n rightTop = [Math.max(rightTop[0], point[0]), Math.max(rightTop[1], point[1])];\n });\n\n let newMapParams = {\n zoom,\n center: [],\n };\n\n if (zoom) {\n // compute only the center\n newMapParams.center = window.ymaps.util.bounds.getCenter([leftBottom, rightTop]);\n } else {\n newMapParams = window.ymaps.util.bounds.getCenterAndZoom(\n [leftBottom, rightTop],\n [this.mapRef?.clientWidth, this.mapRef?.clientHeight],\n undefined,\n {margin: DEFAULT_MAP_CONTROL_BUTTON_HEIGHT},\n );\n }\n\n this.ymap.setCenter(newMapParams.center);\n\n // Use default zoom for one placemark\n if (coordsLength > 1 && !zoom) {\n this.ymap.setZoom(newMapParams.zoom);\n }\n }\n\n private clearOldPlacemarks() {\n if (this.coords.length === 0) {\n return;\n }\n\n this.ymap.geoObjects.removeAll();\n this.coords = [];\n }\n}\n"]}
@@ -35,10 +35,9 @@ const YandexMap = (props) => {
35
35
  }, [attemptsIndex]);
36
36
  React.useEffect(() => {
37
37
  (async function () {
38
- var _a;
39
38
  setLoading(true);
40
39
  await YMapsApiLoader.loadApi(apiKey, scriptSrc, lang, nonce);
41
- (_a = window.ymaps) === null || _a === void 0 ? void 0 : _a.ready(() => {
40
+ window.ymaps?.ready(() => {
42
41
  setYmaps(new YMap(new window.ymaps.Map(containerId, {
43
42
  center: INITIAL_CENTER,
44
43
  zoom: zoom || DEFAULT_ZOOM,
@@ -1 +1 @@
1
- {"version":3,"file":"YandexMap.js","sourceRoot":"../../../../../src","sources":["components/Map/YMap/YandexMap.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Spin} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\n\nimport {LocaleContext} from '../../../context/localeContext/localeContext';\nimport {MapsContext} from '../../../context/mapsContext/mapsContext';\nimport {MobileContext} from '../../../context/mobileContext';\nimport {YMapProps} from '../../../models';\nimport {block} from '../../../utils';\nimport ErrorWrapper from '../../ErrorWrapper/ErrorWrapper';\nimport {getMapHeight} from '../helpers';\n\nimport {YMap} from './YMap';\nimport {MapApiStatus, YMapsApiLoader} from './YandexMapApiLoader';\nimport {i18n} from './i18n';\n\nconst b = block('map');\nconst DEFAULT_CONTAINER_ID = 'ymap';\nconst DEFAULT_ZOOM = 9;\n// Center - is a required parameter for creating a new map\n// We use this init center to create a map\n// The real center of the map will be calculated later, using the coordinates of the markers\nconst INITIAL_CENTER = [0, 0];\n\nconst YandexMap: React.FC<YMapProps> = (props) => {\n const {markers, zoom, id, className} = props;\n const {apiKey, scriptSrc, nonce} = React.useContext(MapsContext);\n const isMobile = React.useContext(MobileContext);\n\n const {lang = 'ru'} = React.useContext(LocaleContext);\n const containerId = `${DEFAULT_CONTAINER_ID}-${id}`;\n\n const [ymap, setYmaps] = React.useState<YMap | null>(null);\n const [height, setHeight] = React.useState<number | undefined>(undefined);\n const ref = React.useRef<HTMLDivElement>(null);\n\n const [loading, setLoading] = React.useState<boolean>(false);\n const [ready, setReady] = React.useState<boolean>(false);\n const [attemptsIndex, setAttemptsIndex] = React.useState<number>(0);\n const onTryAgain = React.useCallback(() => {\n setAttemptsIndex(attemptsIndex + 1);\n }, [attemptsIndex]);\n\n React.useEffect(() => {\n (async function () {\n setLoading(true);\n\n await YMapsApiLoader.loadApi(apiKey, scriptSrc, lang, nonce);\n\n window.ymaps?.ready(() => {\n setYmaps(\n new YMap(\n new window.ymaps.Map(\n containerId,\n {\n center: INITIAL_CENTER,\n zoom: zoom || DEFAULT_ZOOM,\n },\n {autoFitToViewport: 'always'},\n ),\n ref.current,\n ),\n );\n });\n\n setLoading(false);\n })();\n }, [apiKey, lang, scriptSrc, containerId, zoom, nonce, attemptsIndex, setLoading]);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n if (ref.current) {\n setHeight(Math.round(getMapHeight(ref.current.offsetWidth, isMobile)));\n }\n }, 100);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [markers, ymap, setYmaps, isMobile]);\n\n React.useEffect(() => {\n if (ymap) {\n // show with computed center and placemarks\n const showPlacemarks = async () => {\n await ymap.showPlacemarks({markers, zoom});\n\n setReady(true);\n };\n\n showPlacemarks();\n }\n });\n\n if (!markers) return null;\n\n return (\n <ErrorWrapper\n isError={YMapsApiLoader.status === MapApiStatus.Error}\n text={i18n('map-load-error')}\n buttonText={i18n('map-try-again')}\n handler={onTryAgain}\n className={b('wrapper')}\n >\n <div className={b('wrapper')}>\n {/* hidden - to show the map after calculating the center */}\n <div\n id={containerId}\n className={b({hidden: !ready}, className)}\n ref={ref}\n style={{height}}\n />\n {loading ? <Spin size=\"xl\" className={b('spinner')} /> : null}\n </div>\n </ErrorWrapper>\n );\n};\n\nexport default YandexMap;\n"]}
1
+ {"version":3,"file":"YandexMap.js","sourceRoot":"../../../../../src","sources":["components/Map/YMap/YandexMap.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Spin} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\n\nimport {LocaleContext} from '../../../context/localeContext/localeContext';\nimport {MapsContext} from '../../../context/mapsContext/mapsContext';\nimport {MobileContext} from '../../../context/mobileContext';\nimport {YMapProps} from '../../../models';\nimport {block} from '../../../utils';\nimport ErrorWrapper from '../../ErrorWrapper/ErrorWrapper';\nimport {getMapHeight} from '../helpers';\n\nimport {YMap} from './YMap';\nimport {MapApiStatus, YMapsApiLoader} from './YandexMapApiLoader';\nimport {i18n} from './i18n';\n\nconst b = block('map');\nconst DEFAULT_CONTAINER_ID = 'ymap';\nconst DEFAULT_ZOOM = 9;\n// Center - is a required parameter for creating a new map\n// We use this init center to create a map\n// The real center of the map will be calculated later, using the coordinates of the markers\nconst INITIAL_CENTER = [0, 0];\n\nconst YandexMap: React.FC<YMapProps> = (props) => {\n const {markers, zoom, id, className} = props;\n const {apiKey, scriptSrc, nonce} = React.useContext(MapsContext);\n const isMobile = React.useContext(MobileContext);\n\n const {lang = 'ru'} = React.useContext(LocaleContext);\n const containerId = `${DEFAULT_CONTAINER_ID}-${id}`;\n\n const [ymap, setYmaps] = React.useState<YMap | null>(null);\n const [height, setHeight] = React.useState<number | undefined>(undefined);\n const ref = React.useRef<HTMLDivElement>(null);\n\n const [loading, setLoading] = React.useState<boolean>(false);\n const [ready, setReady] = React.useState<boolean>(false);\n const [attemptsIndex, setAttemptsIndex] = React.useState<number>(0);\n const onTryAgain = React.useCallback(() => {\n setAttemptsIndex(attemptsIndex + 1);\n }, [attemptsIndex]);\n\n React.useEffect(() => {\n (async function () {\n setLoading(true);\n\n await YMapsApiLoader.loadApi(apiKey, scriptSrc, lang, nonce);\n\n window.ymaps?.ready(() => {\n setYmaps(\n new YMap(\n new window.ymaps.Map(\n containerId,\n {\n center: INITIAL_CENTER,\n zoom: zoom || DEFAULT_ZOOM,\n },\n {autoFitToViewport: 'always'},\n ),\n ref.current,\n ),\n );\n });\n\n setLoading(false);\n })();\n }, [apiKey, lang, scriptSrc, containerId, zoom, nonce, attemptsIndex, setLoading]);\n\n React.useEffect(() => {\n const updateSize = debounce(() => {\n if (ref.current) {\n setHeight(Math.round(getMapHeight(ref.current.offsetWidth, isMobile)));\n }\n }, 100);\n\n updateSize();\n window.addEventListener('resize', updateSize, {passive: true});\n\n return () => {\n window.removeEventListener('resize', updateSize);\n };\n }, [markers, ymap, setYmaps, isMobile]);\n\n React.useEffect(() => {\n if (ymap) {\n // show with computed center and placemarks\n const showPlacemarks = async () => {\n await ymap.showPlacemarks({markers, zoom});\n\n setReady(true);\n };\n\n showPlacemarks();\n }\n });\n\n if (!markers) return null;\n\n return (\n <ErrorWrapper\n isError={YMapsApiLoader.status === MapApiStatus.Error}\n text={i18n('map-load-error')}\n buttonText={i18n('map-try-again')}\n handler={onTryAgain}\n className={b('wrapper')}\n >\n <div className={b('wrapper')}>\n {/* hidden - to show the map after calculating the center */}\n <div\n id={containerId}\n className={b({hidden: !ready}, className)}\n ref={ref}\n style={{height}}\n />\n {loading ? <Spin size=\"xl\" className={b('spinner')} /> : null}\n </div>\n </ErrorWrapper>\n );\n};\n\nexport default YandexMap;\n"]}
@@ -9,6 +9,8 @@ export var MapApiStatus;
9
9
  })(MapApiStatus || (MapApiStatus = {}));
10
10
  const SCRIPT_ID = 'ymaps-script';
11
11
  export class YMapsApiLoader {
12
+ static status = MapApiStatus.NotStarted;
13
+ static loader;
12
14
  static async loadApi(apiKey, scriptSrc, lang, nonce) {
13
15
  if (YMapsApiLoader.status === MapApiStatus.Loaded) {
14
16
  return Promise.resolve();
@@ -30,5 +32,4 @@ export class YMapsApiLoader {
30
32
  return this.loader;
31
33
  }
32
34
  }
33
- YMapsApiLoader.status = MapApiStatus.NotStarted;
34
35
  //# sourceMappingURL=YandexMapApiLoader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"YandexMapApiLoader.js","sourceRoot":"../../../../../src","sources":["components/Map/YMap/YandexMapApiLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,oDAAiD;AAClE,OAAO,EAAC,UAAU,EAAC,gCAAuB;AAE1C,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,0CAA0B,CAAA;IAC1B,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;AACnB,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED,MAAM,SAAS,GAAG,cAAc,CAAC;AAEjC,MAAM,OAAO,cAAc;IAIvB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,SAAiB,EAAE,IAAiB,EAAE,KAAc;QACrF,IAAI,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;YAChD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;QAED,IAAI,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;YACjD,MAAM,cAAc,CAAC,MAAM,CAAC;YAE5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;QAED,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC;QAE7C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QAC7D,MAAM,GAAG,GAAG,GAAG,SAAS,WAAW,MAAM,SAAS,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QAE1E,cAAc,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,EAAC,EAAE,EAAE,SAAS,EAAC,CAAC;aACnD,IAAI,CAAC,GAAG,EAAE;YACP,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QAChD,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACR,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEP,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;;AA5BM,qBAAM,GAAG,YAAY,CAAC,UAAU,CAAC","sourcesContent":["import {Maplangs} from '../../../context/mapsContext/mapsContext';\nimport {loadScript} from '../../../utils';\n\nexport enum MapApiStatus {\n NotStarted = 'not_started',\n Loading = 'loading',\n Loaded = 'loaded',\n Error = 'error',\n}\n\nconst SCRIPT_ID = 'ymaps-script';\n\nexport class YMapsApiLoader {\n static status = MapApiStatus.NotStarted;\n static loader: Promise<unknown>;\n\n static async loadApi(apiKey: string, scriptSrc: string, lang: 'ru' | 'en', nonce?: string) {\n if (YMapsApiLoader.status === MapApiStatus.Loaded) {\n return Promise.resolve();\n }\n\n if (YMapsApiLoader.status === MapApiStatus.Loading) {\n await YMapsApiLoader.loader;\n\n return Promise.resolve();\n }\n\n YMapsApiLoader.status = MapApiStatus.Loading;\n\n const csp = nonce ? `csp[style_nonce]=${nonce}` : 'csp=true';\n const src = `${scriptSrc}?apikey=${apiKey}&lang=${Maplangs[lang]}&${csp}`;\n\n YMapsApiLoader.loader = loadScript(src, {id: SCRIPT_ID})\n .then(() => {\n YMapsApiLoader.status = MapApiStatus.Loaded;\n })\n .catch(() => {\n YMapsApiLoader.status = MapApiStatus.Error;\n });\n\n return this.loader;\n }\n}\n"]}
1
+ {"version":3,"file":"YandexMapApiLoader.js","sourceRoot":"../../../../../src","sources":["components/Map/YMap/YandexMapApiLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,oDAAiD;AAClE,OAAO,EAAC,UAAU,EAAC,gCAAuB;AAE1C,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACpB,0CAA0B,CAAA;IAC1B,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;AACnB,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED,MAAM,SAAS,GAAG,cAAc,CAAC;AAEjC,MAAM,OAAO,cAAc;IACvB,MAAM,CAAC,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC;IACxC,MAAM,CAAC,MAAM,CAAmB;IAEhC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,SAAiB,EAAE,IAAiB,EAAE,KAAc;QACrF,IAAI,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;YAChD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;QAED,IAAI,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;YACjD,MAAM,cAAc,CAAC,MAAM,CAAC;YAE5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;QAED,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC;QAE7C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QAC7D,MAAM,GAAG,GAAG,GAAG,SAAS,WAAW,MAAM,SAAS,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QAE1E,cAAc,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,EAAC,EAAE,EAAE,SAAS,EAAC,CAAC;aACnD,IAAI,CAAC,GAAG,EAAE;YACP,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QAChD,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACR,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEP,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC","sourcesContent":["import {Maplangs} from '../../../context/mapsContext/mapsContext';\nimport {loadScript} from '../../../utils';\n\nexport enum MapApiStatus {\n NotStarted = 'not_started',\n Loading = 'loading',\n Loaded = 'loaded',\n Error = 'error',\n}\n\nconst SCRIPT_ID = 'ymaps-script';\n\nexport class YMapsApiLoader {\n static status = MapApiStatus.NotStarted;\n static loader: Promise<unknown>;\n\n static async loadApi(apiKey: string, scriptSrc: string, lang: 'ru' | 'en', nonce?: string) {\n if (YMapsApiLoader.status === MapApiStatus.Loaded) {\n return Promise.resolve();\n }\n\n if (YMapsApiLoader.status === MapApiStatus.Loading) {\n await YMapsApiLoader.loader;\n\n return Promise.resolve();\n }\n\n YMapsApiLoader.status = MapApiStatus.Loading;\n\n const csp = nonce ? `csp[style_nonce]=${nonce}` : 'csp=true';\n const src = `${scriptSrc}?apikey=${apiKey}&lang=${Maplangs[lang]}&${csp}`;\n\n YMapsApiLoader.loader = loadScript(src, {id: SCRIPT_ID})\n .then(() => {\n YMapsApiLoader.status = MapApiStatus.Loaded;\n })\n .catch(() => {\n YMapsApiLoader.status = MapApiStatus.Error;\n });\n\n return this.loader;\n }\n}\n"]}
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import FullscreenMedia from "../../FullscreenMedia/FullscreenMedia.js";
3
3
  import Video from "../Video/Video.js";
4
4
  const FullscreenVideo = (props) => {
5
- return (_jsx(FullscreenMedia, { children: (classNames) => _jsx(Video, Object.assign({}, props, classNames)) }));
5
+ return (_jsx(FullscreenMedia, { children: (classNames) => _jsx(Video, { ...props, ...classNames }) }));
6
6
  };
7
7
  export default FullscreenVideo;
8
8
  //# sourceMappingURL=FullscreenVideo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FullscreenVideo.js","sourceRoot":"../../../../../src","sources":["components/Media/FullscreenVideo/FullscreenVideo.tsx"],"names":[],"mappings":";AAEA,OAAO,eAAe,iDAA8C;AACpE,OAAO,KAAsB,0BAAuB;AAEpD,MAAM,eAAe,GAA4B,CAAC,KAAK,EAAE,EAAE;IACvD,OAAO,CACH,KAAC,eAAe,cAAE,CAAC,UAAU,EAAE,EAAE,CAAC,KAAC,KAAK,oBAAK,KAAK,EAAM,UAAU,EAAI,GAAmB,CAC5F,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import * as React from 'react';\n\nimport FullscreenMedia from '../../FullscreenMedia/FullscreenMedia';\nimport Video, {VideoAllProps} from '../Video/Video';\n\nconst FullscreenVideo: React.FC<VideoAllProps> = (props) => {\n return (\n <FullscreenMedia>{(classNames) => <Video {...props} {...classNames} />}</FullscreenMedia>\n );\n};\n\nexport default FullscreenVideo;\n"]}
1
+ {"version":3,"file":"FullscreenVideo.js","sourceRoot":"../../../../../src","sources":["components/Media/FullscreenVideo/FullscreenVideo.tsx"],"names":[],"mappings":";AAEA,OAAO,eAAe,iDAA8C;AACpE,OAAO,KAAsB,0BAAuB;AAEpD,MAAM,eAAe,GAA4B,CAAC,KAAK,EAAE,EAAE;IACvD,OAAO,CACH,KAAC,eAAe,cAAE,CAAC,UAAU,EAAE,EAAE,CAAC,KAAC,KAAK,OAAK,KAAK,KAAM,UAAU,GAAI,GAAmB,CAC5F,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC","sourcesContent":["import * as React from 'react';\n\nimport FullscreenMedia from '../../FullscreenMedia/FullscreenMedia';\nimport Video, {VideoAllProps} from '../Video/Video';\n\nconst FullscreenVideo: React.FC<VideoAllProps> = (props) => {\n return (\n <FullscreenMedia>{(classNames) => <Video {...props} {...classNames} />}</FullscreenMedia>\n );\n};\n\nexport default FullscreenVideo;\n"]}
@@ -41,15 +41,15 @@ const Image = (props) => {
41
41
  const imageClass = b('item', { withVideo: Boolean(video) && !hasVideoFallback }, imageClassName);
42
42
  const renderFullscreenImage = (item) => {
43
43
  const itemData = getMediaImage(item);
44
- return (_jsx(FullscreenImage, Object.assign({}, itemData, { imageClassName: imageClass, imageStyle: { height }, qa: qaAttributes.fullscreenImage }), itemData.alt));
44
+ return (_jsx(FullscreenImage, { ...itemData, imageClassName: imageClass, imageStyle: { height }, qa: qaAttributes.fullscreenImage }, itemData.alt));
45
45
  };
46
46
  const imageBackground = (oneImage) => {
47
47
  const imageData = getMediaImage(oneImage);
48
- return (_jsx(animated.div, { style: { transform: parallaxInterpolate }, "data-qa": qaAttributes.animate, children: _jsx(BackgroundImage, Object.assign({}, imageData, { className: imageClass, style: { height }, qa: qaAttributes.backgroundImage })) }));
48
+ return (_jsx(animated.div, { style: { transform: parallaxInterpolate }, "data-qa": qaAttributes.animate, children: _jsx(BackgroundImage, { ...imageData, className: imageClass, style: { height }, qa: qaAttributes.backgroundImage }) }));
49
49
  };
50
50
  const imageOnly = (oneImage) => {
51
51
  const imageData = getMediaImage(oneImage);
52
- return (_jsx(ImageView, Object.assign({}, imageData, { className: imageClass, style: { height }, qa: qaAttributes.imageView, onLoad: onLoad })));
52
+ return (_jsx(ImageView, { ...imageData, className: imageClass, style: { height }, qa: qaAttributes.imageView, onLoad: onLoad }));
53
53
  };
54
54
  const imageSlider = (imageArray) => {
55
55
  const fullscreenItem = fullscreen === undefined || fullscreen;
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","sourceRoot":"../../../../../src","sources":["components/Media/Image/Image.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAgB,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAC7E,OAAO,QAAQ,2BAAwB;AAEvC,OAAO,WAAW,yCAAsC;AACxD,OAAO,EAAgD,UAAU,EAAC,iCAAwB;AAC1F,OAAO,EAAC,KAAK,EAAE,eAAe,EAAC,gCAAuB;AACtD,OAAO,eAAe,iDAA8C;AACpE,OAAO,eAAe,iDAA8C;AACpE,OAAO,SAAS,6BAA0B;AAE1C,OAAO,EAAC,aAAa,EAAC,mBAAgB;AAEtC,OAAO,aAAa,CAAC;AAErB,MAAM,CAAC,GAAG,KAAK,CAAC,uBAAuB,CAAC,CAAC;AAezC,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAC;AAEnD,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAE,EAAE;IACnC,MAAM,EACF,QAAQ,EACR,MAAM,EACN,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,KAAK,EACL,UAAU,EACV,+BAA+B,EAC/B,EAAE,EACF,MAAM,GACT,GAAG,KAAK,CAAC;IACV,MAAM,KAAK,GACP,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,+BAA+B;QACzD,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAEtB,MAAM,YAAY,GAAG,eAAe,CAChC,EAAE,EACF,kBAAkB,EAClB,SAAS,EACT,kBAAkB,EAClB,YAAY,EACZ,cAAc,CACjB,CAAC;IACF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,CAAC,EAAC,aAAa,EAAC,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;QACzD,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC,CAAC,CAAC;IAEJ,IAAI,mBAAmB,GAA2C,EAAE,CAAC;IAErE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACtD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAEnD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;YACrE,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,IAAI,QAAQ,EAAE,CAAC;QACX,MAAM,aAAa,GAAG,CAAC,CAAC;QACxB,gBAAgB,CAAC,KAAK,CAAC,EAAC,aAAa,EAAE,MAAM,IAAI,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAC,CAAC,CAAC;QACvF,mBAAmB,GAAG,aAAa,CAAC,EAAE,CAClC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,MAAM,CAAC,KAAK,CAAC,GAAG,aAAa,KAAK,CAC/D,CAAC;IACN,CAAC;IAED,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE,EAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAC,EAAE,cAAc,CAAC,CAAC;IAE/F,MAAM,qBAAqB,GAAG,CAAC,IAAgB,EAAE,EAAE;QAC/C,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QAErC,OAAO,CACH,KAAC,eAAe,oBAER,QAAQ,IACZ,cAAc,EAAE,UAAU,EAC1B,UAAU,EAAE,EAAC,MAAM,EAAC,EACpB,EAAE,EAAE,YAAY,CAAC,eAAe,KAJ3B,QAAQ,CAAC,GAAG,CAKnB,CACL,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,QAAoB,EAAE,EAAE;QAC7C,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,CACH,KAAC,QAAQ,CAAC,GAAG,IAAC,KAAK,EAAE,EAAC,SAAS,EAAE,mBAAmB,EAAC,aAAW,YAAY,CAAC,OAAO,YAChF,KAAC,eAAe,oBACR,SAAS,IACb,SAAS,EAAE,UAAU,EACrB,KAAK,EAAE,EAAC,MAAM,EAAC,EACf,EAAE,EAAE,YAAY,CAAC,eAAe,IAClC,GACS,CAClB,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,QAAoB,EAAE,EAAE;QACvC,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,CACH,KAAC,SAAS,oBACF,SAAS,IACb,SAAS,EAAE,UAAU,EACrB,KAAK,EAAE,EAAC,MAAM,EAAC,EACf,EAAE,EAAE,YAAY,CAAC,SAAS,EAC1B,MAAM,EAAE,MAAM,IAChB,CACL,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,UAAwB,EAAE,EAAE;QAC7C,MAAM,cAAc,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC;QAE9D,OAAO,CACH,KAAC,WAAW,IAAC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,SAAS,YACnD,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC7B,KAAC,KAAK,CAAC,QAAQ,cACV,cAAc,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAD9C,KAAK,CAET,CACpB,CAAC,GACQ,CACjB,CAAC;IACN,CAAC,CAAC;IAEF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACb,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Interpolation, animated, config, useSpring} from '@react-spring/web';\nimport debounce from 'lodash/debounce';\n\nimport SliderBlock from '../../../blocks/Slider/Slider';\nimport {ImageProps, MediaComponentImageProps, QAProps, SliderType} from '../../../models';\nimport {block, getQaAttrubutes} from '../../../utils';\nimport BackgroundImage from '../../BackgroundImage/BackgroundImage';\nimport FullscreenImage from '../../FullscreenImage/FullscreenImage';\nimport ImageView from '../../Image/Image';\n\nimport {getMediaImage} from './utils';\n\nimport './Image.scss';\n\nconst b = block('media-component-image');\n\nexport interface ImageAdditionProps {\n imageClassName?: string;\n isBackground?: boolean;\n fullscreen?: boolean;\n onLoad?: () => void;\n}\n\ninterface InnerImageProps {\n hasVideoFallback: boolean;\n}\n\ntype ImageAllProps = ImageAdditionProps & MediaComponentImageProps & InnerImageProps & QAProps;\n\nexport const defaultAnimatedDivQa = 'animated-div';\n\nconst Image = (props: ImageAllProps) => {\n const {\n parallax,\n height,\n imageClassName,\n isBackground,\n hasVideoFallback,\n video,\n fullscreen,\n disableImageSliderForArrayInput,\n qa,\n onLoad,\n } = props;\n const image =\n Array.isArray(props.image) && disableImageSliderForArrayInput\n ? props.image[0]\n : props.image;\n\n const qaAttributes = getQaAttrubutes(\n qa,\n 'fullscreen-image',\n 'animate',\n 'background-image',\n 'image-view',\n 'slider-block',\n );\n const [scrollY, setScrollY] = React.useState(0);\n const [{springScrollY}, springSetScrollY] = useSpring(() => ({\n springScrollY: 0,\n config: config.molasses,\n }));\n\n let parallaxInterpolate: Interpolation<number, string> | string = '';\n\n React.useEffect(() => {\n if (parallax) {\n const handleScroll = () => setScrollY(window.scrollY);\n const debouncedHandler = debounce(handleScroll, 5);\n\n window.addEventListener('scroll', debouncedHandler, {passive: true});\n return () => window.removeEventListener('scroll', debouncedHandler);\n }\n\n return () => {};\n });\n\n if (parallax) {\n const parallaxLevel = 2;\n springSetScrollY.start({springScrollY: height && scrollY > height ? height : scrollY});\n parallaxInterpolate = springScrollY.to(\n (value) => `translateY(-${Number(value) / parallaxLevel}px)`,\n );\n }\n\n const imageClass = b('item', {withVideo: Boolean(video) && !hasVideoFallback}, imageClassName);\n\n const renderFullscreenImage = (item: ImageProps) => {\n const itemData = getMediaImage(item);\n\n return (\n <FullscreenImage\n key={itemData.alt}\n {...itemData}\n imageClassName={imageClass}\n imageStyle={{height}}\n qa={qaAttributes.fullscreenImage}\n />\n );\n };\n\n const imageBackground = (oneImage: ImageProps) => {\n const imageData = getMediaImage(oneImage);\n return (\n <animated.div style={{transform: parallaxInterpolate}} data-qa={qaAttributes.animate}>\n <BackgroundImage\n {...imageData}\n className={imageClass}\n style={{height}}\n qa={qaAttributes.backgroundImage}\n />\n </animated.div>\n );\n };\n\n const imageOnly = (oneImage: ImageProps) => {\n const imageData = getMediaImage(oneImage);\n return (\n <ImageView\n {...imageData}\n className={imageClass}\n style={{height}}\n qa={qaAttributes.imageView}\n onLoad={onLoad}\n />\n );\n };\n\n const imageSlider = (imageArray: ImageProps[]) => {\n const fullscreenItem = fullscreen === undefined || fullscreen;\n\n return (\n <SliderBlock slidesToShow={1} type={SliderType.MediaCard}>\n {imageArray.map((item, index) => (\n <React.Fragment key={index}>\n {fullscreenItem ? renderFullscreenImage(item) : imageOnly(item)}\n </React.Fragment>\n ))}\n </SliderBlock>\n );\n };\n\n if (Array.isArray(image)) {\n return imageSlider(image);\n }\n\n if (fullscreen) {\n return renderFullscreenImage(image);\n }\n\n return isBackground ? imageBackground(image) : imageOnly(image);\n};\n\nexport default Image;\n"]}
1
+ {"version":3,"file":"Image.js","sourceRoot":"../../../../../src","sources":["components/Media/Image/Image.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Interpolation, animated, config, useSpring} from '@react-spring/web';\nimport debounce from 'lodash/debounce';\n\nimport SliderBlock from '../../../blocks/Slider/Slider';\nimport {ImageProps, MediaComponentImageProps, QAProps, SliderType} from '../../../models';\nimport {block, getQaAttrubutes} from '../../../utils';\nimport BackgroundImage from '../../BackgroundImage/BackgroundImage';\nimport FullscreenImage from '../../FullscreenImage/FullscreenImage';\nimport ImageView from '../../Image/Image';\n\nimport {getMediaImage} from './utils';\n\nimport './Image.scss';\n\nconst b = block('media-component-image');\n\nexport interface ImageAdditionProps {\n imageClassName?: string;\n isBackground?: boolean;\n fullscreen?: boolean;\n onLoad?: () => void;\n}\n\ninterface InnerImageProps {\n hasVideoFallback: boolean;\n}\n\ntype ImageAllProps = ImageAdditionProps & MediaComponentImageProps & InnerImageProps & QAProps;\n\nexport const defaultAnimatedDivQa = 'animated-div';\n\nconst Image = (props: ImageAllProps) => {\n const {\n parallax,\n height,\n imageClassName,\n isBackground,\n hasVideoFallback,\n video,\n fullscreen,\n disableImageSliderForArrayInput,\n qa,\n onLoad,\n } = props;\n const image =\n Array.isArray(props.image) && disableImageSliderForArrayInput\n ? props.image[0]\n : props.image;\n\n const qaAttributes = getQaAttrubutes(\n qa,\n 'fullscreen-image',\n 'animate',\n 'background-image',\n 'image-view',\n 'slider-block',\n );\n const [scrollY, setScrollY] = React.useState(0);\n const [{springScrollY}, springSetScrollY] = useSpring(() => ({\n springScrollY: 0,\n config: config.molasses,\n }));\n\n let parallaxInterpolate: Interpolation<number, string> | string = '';\n\n React.useEffect(() => {\n if (parallax) {\n const handleScroll = () => setScrollY(window.scrollY);\n const debouncedHandler = debounce(handleScroll, 5);\n\n window.addEventListener('scroll', debouncedHandler, {passive: true});\n return () => window.removeEventListener('scroll', debouncedHandler);\n }\n\n return () => {};\n });\n\n if (parallax) {\n const parallaxLevel = 2;\n springSetScrollY.start({springScrollY: height && scrollY > height ? height : scrollY});\n parallaxInterpolate = springScrollY.to(\n (value) => `translateY(-${Number(value) / parallaxLevel}px)`,\n );\n }\n\n const imageClass = b('item', {withVideo: Boolean(video) && !hasVideoFallback}, imageClassName);\n\n const renderFullscreenImage = (item: ImageProps) => {\n const itemData = getMediaImage(item);\n\n return (\n <FullscreenImage\n key={itemData.alt}\n {...itemData}\n imageClassName={imageClass}\n imageStyle={{height}}\n qa={qaAttributes.fullscreenImage}\n />\n );\n };\n\n const imageBackground = (oneImage: ImageProps) => {\n const imageData = getMediaImage(oneImage);\n return (\n <animated.div style={{transform: parallaxInterpolate}} data-qa={qaAttributes.animate}>\n <BackgroundImage\n {...imageData}\n className={imageClass}\n style={{height}}\n qa={qaAttributes.backgroundImage}\n />\n </animated.div>\n );\n };\n\n const imageOnly = (oneImage: ImageProps) => {\n const imageData = getMediaImage(oneImage);\n return (\n <ImageView\n {...imageData}\n className={imageClass}\n style={{height}}\n qa={qaAttributes.imageView}\n onLoad={onLoad}\n />\n );\n };\n\n const imageSlider = (imageArray: ImageProps[]) => {\n const fullscreenItem = fullscreen === undefined || fullscreen;\n\n return (\n <SliderBlock slidesToShow={1} type={SliderType.MediaCard}>\n {imageArray.map((item, index) => (\n <React.Fragment key={index}>\n {fullscreenItem ? renderFullscreenImage(item) : imageOnly(item)}\n </React.Fragment>\n ))}\n </SliderBlock>\n );\n };\n\n if (Array.isArray(image)) {\n return imageSlider(image);\n }\n\n if (fullscreen) {\n return renderFullscreenImage(image);\n }\n\n return isBackground ? imageBackground(image) : imageOnly(image);\n};\n\nexport default Image;\n"]}
@@ -37,10 +37,10 @@ export const Media = (props) => {
37
37
  ratio,
38
38
  };
39
39
  if (fullscreen) {
40
- result.push(_jsx(FullscreenVideo, Object.assign({}, videoProps, { qa: qaAttributes.video })));
40
+ result.push(_jsx(FullscreenVideo, { ...videoProps, qa: qaAttributes.video }));
41
41
  }
42
42
  else {
43
- result.push(_jsx(Video, Object.assign({}, videoProps, { qa: qaAttributes.video })));
43
+ result.push(_jsx(Video, { ...videoProps, qa: qaAttributes.video }));
44
44
  }
45
45
  }
46
46
  if (youtube || videoIframe) {
@@ -82,11 +82,19 @@ export const Media = (props) => {
82
82
  margins,
83
83
  ]);
84
84
  const videoMicrodataScript = React.useMemo(() => {
85
- var _a;
86
85
  const { name, description } = videoMicrodata || {};
87
- const json = JSON.stringify(Object.assign(Object.assign({ '@context': 'http://schema.org/', '@type': 'VideoObject', uploadDate: microdata === null || microdata === void 0 ? void 0 : microdata.contentUpdatedDate, contentUrl: ((_a = video === null || video === void 0 ? void 0 : video.src) === null || _a === void 0 ? void 0 : _a[0]) || videoIframe || youtube, thumbnailUrl: previewImg }, (videoMicrodata || {})), { name: name ? sanitizeMicrodata(name) : name, description: description ? sanitizeMicrodata(description) : description }));
86
+ const json = JSON.stringify({
87
+ '@context': 'http://schema.org/',
88
+ '@type': 'VideoObject',
89
+ uploadDate: microdata?.contentUpdatedDate,
90
+ contentUrl: video?.src?.[0] || videoIframe || youtube,
91
+ thumbnailUrl: previewImg,
92
+ ...(videoMicrodata || {}),
93
+ name: name ? sanitizeMicrodata(name) : name,
94
+ description: description ? sanitizeMicrodata(description) : description,
95
+ });
88
96
  return video || youtube || videoIframe ? (_jsx("script", { type: "application/ld+json", dangerouslySetInnerHTML: { __html: json } })) : null;
89
- }, [microdata === null || microdata === void 0 ? void 0 : microdata.contentUpdatedDate, previewImg, video, videoIframe, videoMicrodata, youtube]);
97
+ }, [microdata?.contentUpdatedDate, previewImg, video, videoIframe, videoMicrodata, youtube]);
90
98
  return (_jsxs("div", { className: b(null, className), style: { backgroundColor: color }, "data-qa": qa, children: [videoMicrodataScript, content] }));
91
99
  };
92
100
  export default Media;
@@ -1 +1 @@
1
- {"version":3,"file":"Media.js","sourceRoot":"../../../../src","sources":["components/Media/Media.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,YAAY,EAAC,4CAAmC;AAExD,OAAO,EAAC,KAAK,EAAE,eAAe,EAAC,6BAAoB;AACnD,OAAO,EAAC,iBAAiB,EAAC,iCAA8B;AACxD,OAAO,gBAAgB,oCAAiC;AAExD,OAAO,QAAQ,+BAA4B;AAC3C,OAAO,eAAe,6CAA0C;AAChE,OAAO,MAAM,2BAAwB;AACrC,OAAO,KAA2B,yBAAsB;AACxD,OAAO,KAA2B,yBAAsB;AAExD,OAAO,aAAa,CAAC;AAErB,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;AASzB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC1C,MAAM,EACF,KAAK,EACL,KAAK,EACL,OAAO,EACP,WAAW,EACX,QAAQ,EACR,KAAK,EACL,MAAM,EACN,UAAU,EACV,QAAQ,GAAG,KAAK,EAChB,UAAU,EACV,eAAe,EACf,SAAS,EACT,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,+BAA+B,EAC/B,SAAS,GAAG,IAAI,EAChB,YAAY,EACZ,UAAU,EACV,0BAA0B,EAC1B,EAAE,EACF,KAAK,EACL,QAAQ,EACR,WAAW,EACX,MAAM,EACN,OAAO,EACP,cAAc,GACjB,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,EAAC,SAAS,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAEnD,MAAM,YAAY,GAAG,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAElD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC/B,IAAI,MAAM,GAA8C,EAAE,CAAC;QAE3D,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,CAAC,IAAI,CACP,KAAC,KAAK,IAEF,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,+BAA+B,EAAE,+BAA+B,EAChE,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,KAAK,EACZ,gBAAgB,EAAE,gBAAgB,EAClC,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,YAAY,CAAC,KAAK,EACtB,MAAM,EAAE,WAAW,IAXf,OAAO,CAYb,CACL,CAAC;QACN,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,UAAU,GAAG;gBACf,GAAG,EAAE,OAAO;gBACZ,KAAK;gBACL,cAAc;gBACd,MAAM;gBACN,eAAe;gBACf,SAAS;gBACT,UAAU;gBACV,UAAU;gBACV,0BAA0B;gBAC1B,gBAAgB;gBAChB,mBAAmB;gBACnB,KAAK;aACR,CAAC;YAEF,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,KAAC,eAAe,oBAAK,UAAU,IAAE,EAAE,EAAE,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,IAAI,CAAC,KAAC,KAAK,oBAAK,UAAU,IAAE,EAAE,EAAE,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC;YACnE,CAAC;QACL,CAAC;QAED,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;YACzB,MAAM,GAAG,CACL,KAAC,gBAAgB,IACb,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,gBAAgB,CAAC,EACzC,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAC,EACtC,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,GAC1B,CACL,CAAC;QACN,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,GAAG,KAAC,QAAQ,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAAC;QAC9C,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,GAAG,KAAC,MAAM,IAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAI,CAAC;QAC1D,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,EAAE;QACC,KAAK;QACL,KAAK;QACL,WAAW;QACX,OAAO;QACP,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,+BAA+B;QAC/B,MAAM;QACN,cAAc;QACd,YAAY;QACZ,gBAAgB;QAChB,UAAU;QACV,YAAY,CAAC,KAAK;QAClB,YAAY,CAAC,KAAK;QAClB,WAAW;QACX,cAAc;QACd,eAAe;QACf,SAAS;QACT,UAAU;QACV,UAAU;QACV,0BAA0B;QAC1B,KAAK;QACL,gBAAgB;QAChB,QAAQ;QACR,OAAO;KACV,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;;QAC5C,MAAM,EAAC,IAAI,EAAE,WAAW,EAAC,GAAG,cAAc,IAAI,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,+BACvB,UAAU,EAAE,oBAAoB,EAChC,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,kBAAkB,EACzC,UAAU,EAAE,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,GAAG,0CAAG,CAAC,CAAC,KAAI,WAAW,IAAI,OAAO,EACrD,YAAY,EAAE,UAAU,IACrB,CAAC,cAAc,IAAI,EAAE,CAAC,KACzB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAC3C,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,IACzE,CAAC;QAEH,OAAO,KAAK,IAAI,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,CACrC,iBAAQ,IAAI,EAAC,qBAAqB,EAAC,uBAAuB,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,GAAI,CACjF,CAAC,CAAC,CAAC,IAAI,CAAC;IACb,CAAC,EAAE,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,kBAAkB,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7F,OAAO,CACH,eAAK,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,EAAC,eAAe,EAAE,KAAK,EAAC,aAAW,EAAE,aAC3E,oBAAoB,EACpB,OAAO,IACN,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {InnerContext} from '../../context/innerContext';\nimport {MediaProps, QAProps} from '../../models';\nimport {block, getQaAttrubutes} from '../../utils';\nimport {sanitizeMicrodata} from '../../utils/microdata';\nimport IframeVideoBlock from '../VideoBlock/VideoBlock';\n\nimport DataLens from './DataLens/DataLens';\nimport FullscreenVideo from './FullscreenVideo/FullscreenVideo';\nimport Iframe from './Iframe/Iframe';\nimport Image, {ImageAdditionProps} from './Image/Image';\nimport Video, {VideoAdditionProps} from './Video/Video';\n\nimport './Media.scss';\n\nconst b = block('Media');\n\nexport interface MediaAllProps extends MediaProps, VideoAdditionProps, ImageAdditionProps, QAProps {\n className?: string;\n youtubeClassName?: string;\n autoplay?: boolean;\n onImageLoad?: () => void;\n}\n\nexport const Media = (props: MediaAllProps) => {\n const {\n image,\n video,\n youtube,\n videoIframe,\n dataLens,\n color,\n height,\n previewImg,\n parallax = false,\n fullscreen,\n analyticsEvents,\n className,\n imageClassName,\n videoClassName,\n youtubeClassName,\n disableImageSliderForArrayInput,\n playVideo = true,\n isBackground,\n playButton,\n customBarControlsClassName,\n qa,\n ratio,\n autoplay,\n onImageLoad,\n iframe,\n margins,\n videoMicrodata,\n } = props;\n\n const [hasVideoFallback, setHasVideoFallback] = React.useState(false);\n const {microdata} = React.useContext(InnerContext);\n\n const qaAttributes = getQaAttrubutes(qa, 'video');\n\n const content = React.useMemo(() => {\n let result: React.ReactElement | React.ReactElement[] = [];\n\n if (image) {\n result.push(\n <Image\n key=\"image\"\n parallax={parallax}\n image={image}\n disableImageSliderForArrayInput={disableImageSliderForArrayInput}\n height={height}\n imageClassName={imageClassName}\n isBackground={isBackground}\n video={video}\n hasVideoFallback={hasVideoFallback}\n fullscreen={fullscreen}\n qa={qaAttributes.image}\n onLoad={onImageLoad}\n />,\n );\n }\n\n if (video) {\n const videoProps = {\n key: 'video',\n video,\n videoClassName,\n height,\n analyticsEvents,\n playVideo,\n previewImg,\n playButton,\n customBarControlsClassName,\n hasVideoFallback,\n setHasVideoFallback,\n ratio,\n };\n\n if (fullscreen) {\n result.push(<FullscreenVideo {...videoProps} qa={qaAttributes.video} />);\n } else {\n result.push(<Video {...videoProps} qa={qaAttributes.video} />);\n }\n }\n\n if (youtube || videoIframe) {\n result = (\n <IframeVideoBlock\n className={b('youtube', youtubeClassName)}\n record={youtube}\n videoIframe={videoIframe}\n attributes={{color: 'white', rel: '0'}}\n previewImg={previewImg}\n height={height}\n fullscreen={fullscreen}\n analyticsEvents={analyticsEvents}\n autoplay={autoplay}\n onImageLoad={onImageLoad}\n />\n );\n }\n\n if (dataLens) {\n result = <DataLens dataLens={dataLens} />;\n }\n\n if (iframe) {\n result = <Iframe iframe={iframe} margins={margins} />;\n }\n\n return result;\n }, [\n image,\n video,\n videoIframe,\n youtube,\n dataLens,\n iframe,\n parallax,\n disableImageSliderForArrayInput,\n height,\n imageClassName,\n isBackground,\n hasVideoFallback,\n fullscreen,\n qaAttributes.image,\n qaAttributes.video,\n onImageLoad,\n videoClassName,\n analyticsEvents,\n playVideo,\n previewImg,\n playButton,\n customBarControlsClassName,\n ratio,\n youtubeClassName,\n autoplay,\n margins,\n ]);\n\n const videoMicrodataScript = React.useMemo(() => {\n const {name, description} = videoMicrodata || {};\n const json = JSON.stringify({\n '@context': 'http://schema.org/',\n '@type': 'VideoObject',\n uploadDate: microdata?.contentUpdatedDate,\n contentUrl: video?.src?.[0] || videoIframe || youtube,\n thumbnailUrl: previewImg,\n ...(videoMicrodata || {}),\n name: name ? sanitizeMicrodata(name) : name,\n description: description ? sanitizeMicrodata(description) : description,\n });\n\n return video || youtube || videoIframe ? (\n <script type=\"application/ld+json\" dangerouslySetInnerHTML={{__html: json}} />\n ) : null;\n }, [microdata?.contentUpdatedDate, previewImg, video, videoIframe, videoMicrodata, youtube]);\n\n return (\n <div className={b(null, className)} style={{backgroundColor: color}} data-qa={qa}>\n {videoMicrodataScript}\n {content}\n </div>\n );\n};\n\nexport default Media;\n"]}
1
+ {"version":3,"file":"Media.js","sourceRoot":"../../../../src","sources":["components/Media/Media.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {InnerContext} from '../../context/innerContext';\nimport {MediaProps, QAProps} from '../../models';\nimport {block, getQaAttrubutes} from '../../utils';\nimport {sanitizeMicrodata} from '../../utils/microdata';\nimport IframeVideoBlock from '../VideoBlock/VideoBlock';\n\nimport DataLens from './DataLens/DataLens';\nimport FullscreenVideo from './FullscreenVideo/FullscreenVideo';\nimport Iframe from './Iframe/Iframe';\nimport Image, {ImageAdditionProps} from './Image/Image';\nimport Video, {VideoAdditionProps} from './Video/Video';\n\nimport './Media.scss';\n\nconst b = block('Media');\n\nexport interface MediaAllProps extends MediaProps, VideoAdditionProps, ImageAdditionProps, QAProps {\n className?: string;\n youtubeClassName?: string;\n autoplay?: boolean;\n onImageLoad?: () => void;\n}\n\nexport const Media = (props: MediaAllProps) => {\n const {\n image,\n video,\n youtube,\n videoIframe,\n dataLens,\n color,\n height,\n previewImg,\n parallax = false,\n fullscreen,\n analyticsEvents,\n className,\n imageClassName,\n videoClassName,\n youtubeClassName,\n disableImageSliderForArrayInput,\n playVideo = true,\n isBackground,\n playButton,\n customBarControlsClassName,\n qa,\n ratio,\n autoplay,\n onImageLoad,\n iframe,\n margins,\n videoMicrodata,\n } = props;\n\n const [hasVideoFallback, setHasVideoFallback] = React.useState(false);\n const {microdata} = React.useContext(InnerContext);\n\n const qaAttributes = getQaAttrubutes(qa, 'video');\n\n const content = React.useMemo(() => {\n let result: React.ReactElement | React.ReactElement[] = [];\n\n if (image) {\n result.push(\n <Image\n key=\"image\"\n parallax={parallax}\n image={image}\n disableImageSliderForArrayInput={disableImageSliderForArrayInput}\n height={height}\n imageClassName={imageClassName}\n isBackground={isBackground}\n video={video}\n hasVideoFallback={hasVideoFallback}\n fullscreen={fullscreen}\n qa={qaAttributes.image}\n onLoad={onImageLoad}\n />,\n );\n }\n\n if (video) {\n const videoProps = {\n key: 'video',\n video,\n videoClassName,\n height,\n analyticsEvents,\n playVideo,\n previewImg,\n playButton,\n customBarControlsClassName,\n hasVideoFallback,\n setHasVideoFallback,\n ratio,\n };\n\n if (fullscreen) {\n result.push(<FullscreenVideo {...videoProps} qa={qaAttributes.video} />);\n } else {\n result.push(<Video {...videoProps} qa={qaAttributes.video} />);\n }\n }\n\n if (youtube || videoIframe) {\n result = (\n <IframeVideoBlock\n className={b('youtube', youtubeClassName)}\n record={youtube}\n videoIframe={videoIframe}\n attributes={{color: 'white', rel: '0'}}\n previewImg={previewImg}\n height={height}\n fullscreen={fullscreen}\n analyticsEvents={analyticsEvents}\n autoplay={autoplay}\n onImageLoad={onImageLoad}\n />\n );\n }\n\n if (dataLens) {\n result = <DataLens dataLens={dataLens} />;\n }\n\n if (iframe) {\n result = <Iframe iframe={iframe} margins={margins} />;\n }\n\n return result;\n }, [\n image,\n video,\n videoIframe,\n youtube,\n dataLens,\n iframe,\n parallax,\n disableImageSliderForArrayInput,\n height,\n imageClassName,\n isBackground,\n hasVideoFallback,\n fullscreen,\n qaAttributes.image,\n qaAttributes.video,\n onImageLoad,\n videoClassName,\n analyticsEvents,\n playVideo,\n previewImg,\n playButton,\n customBarControlsClassName,\n ratio,\n youtubeClassName,\n autoplay,\n margins,\n ]);\n\n const videoMicrodataScript = React.useMemo(() => {\n const {name, description} = videoMicrodata || {};\n const json = JSON.stringify({\n '@context': 'http://schema.org/',\n '@type': 'VideoObject',\n uploadDate: microdata?.contentUpdatedDate,\n contentUrl: video?.src?.[0] || videoIframe || youtube,\n thumbnailUrl: previewImg,\n ...(videoMicrodata || {}),\n name: name ? sanitizeMicrodata(name) : name,\n description: description ? sanitizeMicrodata(description) : description,\n });\n\n return video || youtube || videoIframe ? (\n <script type=\"application/ld+json\" dangerouslySetInnerHTML={{__html: json}} />\n ) : null;\n }, [microdata?.contentUpdatedDate, previewImg, video, videoIframe, videoMicrodata, youtube]);\n\n return (\n <div className={b(null, className)} style={{backgroundColor: color}} data-qa={qa}>\n {videoMicrodataScript}\n {content}\n </div>\n );\n};\n\nexport default Media;\n"]}
@@ -1,4 +1,3 @@
1
- import { __rest } from "tslib";
2
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
2
  import * as React from 'react';
4
3
  import AnimateBlock from "../AnimateBlock/AnimateBlock.js";
@@ -10,7 +9,7 @@ import './MediaBase.css';
10
9
  const b = block('media-base');
11
10
  const Card = () => null;
12
11
  export const MediaBase = (props) => {
13
- const { children, largeMedia, direction = 'content-media', mobileDirection = 'content-media', animated, mediaOnly, onScroll, mediaOnlyColSizes = { all: 12, md: 8 } } = props, mediaContentProps = __rest(props, ["children", "largeMedia", "direction", "mobileDirection", "animated", "mediaOnly", "onScroll", "mediaOnlyColSizes"]);
12
+ const { children, largeMedia, direction = 'content-media', mobileDirection = 'content-media', animated, mediaOnly, onScroll, mediaOnlyColSizes = { all: 12, md: 8 }, ...mediaContentProps } = props;
14
13
  const { title, description } = mediaContentProps;
15
14
  const mediaSizes = React.useMemo(() => {
16
15
  return mediaOnly
@@ -20,8 +19,8 @@ export const MediaBase = (props) => {
20
19
  const contentSizes = React.useMemo(() => {
21
20
  return { [GridColumnSize.Md]: largeMedia ? 4 : 6, [GridColumnSize.All]: 12 };
22
21
  }, [largeMedia]);
23
- const mediaContent = !mediaOnly && _jsx(MediaContent, Object.assign({}, mediaContentProps));
24
- const card = children.type === Card ? children === null || children === void 0 ? void 0 : children.props.children : null;
22
+ const mediaContent = !mediaOnly && _jsx(MediaContent, { ...mediaContentProps });
23
+ const card = children.type === Card ? children?.props.children : null;
25
24
  return (_jsxs(AnimateBlock, { className: b(), onScroll: onScroll, animate: animated, children: [mediaOnly && (_jsx(Title, { className: b('header'), title: title, subtitle: description, colSizes: mediaOnlyColSizes })), _jsx(Grid, { children: _jsxs(Row, { className: b('row', {
26
25
  reverse: direction === 'media-content',
27
26
  'mobile-reverse': mobileDirection === 'media-content',
@@ -1 +1 @@
1
- {"version":3,"file":"MediaBase.js","sourceRoot":"../../../../src","sources":["components/MediaBase/MediaBase.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport AnimateBlock from '../../components/AnimateBlock/AnimateBlock';\nimport {Col, Grid, GridColumnSize, Row} from '../../grid';\nimport {MediaBaseBlockProps} from '../../models';\nimport {block} from '../../utils';\nimport Title from '../Title/Title';\n\nimport MediaContent from './MediaBaseContent';\n\nimport './MediaBase.scss';\n\nconst b = block('media-base');\n\nconst Card: React.FC<React.PropsWithChildren<{}>> = () => null;\n\ninterface MediaBaseProps extends MediaBaseBlockProps {\n children: React.ReactElement;\n onScroll?: () => void;\n}\n\nexport const MediaBase = (props: MediaBaseProps) => {\n const {\n children,\n largeMedia,\n direction = 'content-media',\n mobileDirection = 'content-media',\n animated,\n mediaOnly,\n onScroll,\n mediaOnlyColSizes = {all: 12, md: 8},\n ...mediaContentProps\n } = props;\n const {title, description} = mediaContentProps;\n\n const mediaSizes = React.useMemo(() => {\n return mediaOnly\n ? {[GridColumnSize.All]: 12}\n : {[GridColumnSize.Md]: largeMedia ? 8 : 6, [GridColumnSize.All]: 12};\n }, [mediaOnly, largeMedia]);\n\n const contentSizes = React.useMemo(() => {\n return {[GridColumnSize.Md]: largeMedia ? 4 : 6, [GridColumnSize.All]: 12};\n }, [largeMedia]);\n\n const mediaContent = !mediaOnly && <MediaContent {...mediaContentProps} />;\n const card = children.type === Card ? children?.props.children : null;\n\n return (\n <AnimateBlock className={b()} onScroll={onScroll} animate={animated}>\n {mediaOnly && (\n <Title\n className={b('header')}\n title={title}\n subtitle={description}\n colSizes={mediaOnlyColSizes}\n />\n )}\n <Grid>\n <Row\n className={b('row', {\n reverse: direction === 'media-content',\n 'mobile-reverse': mobileDirection === 'media-content',\n })}\n >\n <Col className={b('content')} sizes={contentSizes}>\n {mediaContent}\n </Col>\n {card ? (\n <Col sizes={mediaSizes}>\n <div className={b('card')}>{card}</div>\n </Col>\n ) : null}\n </Row>\n </Grid>\n </AnimateBlock>\n );\n};\n\nMediaBase.Card = Card;\n\nexport default MediaBase;\n"]}
1
+ {"version":3,"file":"MediaBase.js","sourceRoot":"../../../../src","sources":["components/MediaBase/MediaBase.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport AnimateBlock from '../../components/AnimateBlock/AnimateBlock';\nimport {Col, Grid, GridColumnSize, Row} from '../../grid';\nimport {MediaBaseBlockProps} from '../../models';\nimport {block} from '../../utils';\nimport Title from '../Title/Title';\n\nimport MediaContent from './MediaBaseContent';\n\nimport './MediaBase.scss';\n\nconst b = block('media-base');\n\nconst Card: React.FC<React.PropsWithChildren<{}>> = () => null;\n\ninterface MediaBaseProps extends MediaBaseBlockProps {\n children: React.ReactElement;\n onScroll?: () => void;\n}\n\nexport const MediaBase = (props: MediaBaseProps) => {\n const {\n children,\n largeMedia,\n direction = 'content-media',\n mobileDirection = 'content-media',\n animated,\n mediaOnly,\n onScroll,\n mediaOnlyColSizes = {all: 12, md: 8},\n ...mediaContentProps\n } = props;\n const {title, description} = mediaContentProps;\n\n const mediaSizes = React.useMemo(() => {\n return mediaOnly\n ? {[GridColumnSize.All]: 12}\n : {[GridColumnSize.Md]: largeMedia ? 8 : 6, [GridColumnSize.All]: 12};\n }, [mediaOnly, largeMedia]);\n\n const contentSizes = React.useMemo(() => {\n return {[GridColumnSize.Md]: largeMedia ? 4 : 6, [GridColumnSize.All]: 12};\n }, [largeMedia]);\n\n const mediaContent = !mediaOnly && <MediaContent {...mediaContentProps} />;\n const card = children.type === Card ? children?.props.children : null;\n\n return (\n <AnimateBlock className={b()} onScroll={onScroll} animate={animated}>\n {mediaOnly && (\n <Title\n className={b('header')}\n title={title}\n subtitle={description}\n colSizes={mediaOnlyColSizes}\n />\n )}\n <Grid>\n <Row\n className={b('row', {\n reverse: direction === 'media-content',\n 'mobile-reverse': mobileDirection === 'media-content',\n })}\n >\n <Col className={b('content')} sizes={contentSizes}>\n {mediaContent}\n </Col>\n {card ? (\n <Col sizes={mediaSizes}>\n <div className={b('card')}>{card}</div>\n </Col>\n ) : null}\n </Row>\n </Grid>\n </AnimateBlock>\n );\n};\n\nMediaBase.Card = Card;\n\nexport default MediaBase;\n"]}
@@ -5,7 +5,7 @@ import './MediaBaseContent.css';
5
5
  const b = block('media-base-content');
6
6
  const MediaContent = (props) => {
7
7
  const { title, description, button, links, buttons = [], additionalInfo, size = 'l', list, } = props;
8
- const allButtons = button ? [Object.assign(Object.assign({}, button), { size: 'xl' }), ...buttons] : buttons;
8
+ const allButtons = button ? [{ ...button, size: 'xl' }, ...buttons] : buttons;
9
9
  return (_jsx("div", { className: b(), children: _jsx(Content, { title: title, text: description, links: links, theme: "default", buttons: allButtons, list: list, additionalInfo: additionalInfo, size: size, colSizes: { all: 12, md: 12 } }) }));
10
10
  };
11
11
  export default MediaContent;
@@ -1 +1 @@
1
- {"version":3,"file":"MediaBaseContent.js","sourceRoot":"../../../../src","sources":["components/MediaBase/MediaBaseContent.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAC,OAAO,EAAC,kCAAyB;AACzC,OAAO,EAAC,KAAK,EAAC,6BAAoB;AAElC,OAAO,wBAAwB,CAAC;AAEhC,MAAM,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAEtC,MAAM,YAAY,GAAG,CAAC,KAAwB,EAAE,EAAE;IAC9C,MAAM,EACF,KAAK,EACL,WAAW,EACX,MAAM,EACN,KAAK,EACL,OAAO,GAAG,EAAE,EACZ,cAAc,EACd,IAAI,GAAG,GAAG,EACV,IAAI,GACP,GAAG,KAAK,CAAC;IACV,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,iCAAK,MAAM,KAAE,IAAI,EAAE,IAAkB,KAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1F,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,EAAE,YACf,KAAC,OAAO,IACJ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,cAAc,EAC9B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAC,GAC7B,GACA,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["import {ButtonSize} from '@gravity-ui/uikit';\n\nimport {MediaContentProps} from '../../models';\nimport {Content} from '../../sub-blocks';\nimport {block} from '../../utils';\n\nimport './MediaBaseContent.scss';\n\nconst b = block('media-base-content');\n\nconst MediaContent = (props: MediaContentProps) => {\n const {\n title,\n description,\n button,\n links,\n buttons = [],\n additionalInfo,\n size = 'l',\n list,\n } = props;\n const allButtons = button ? [{...button, size: 'xl' as ButtonSize}, ...buttons] : buttons;\n return (\n <div className={b()}>\n <Content\n title={title}\n text={description}\n links={links}\n theme=\"default\"\n buttons={allButtons}\n list={list}\n additionalInfo={additionalInfo}\n size={size}\n colSizes={{all: 12, md: 12}}\n />\n </div>\n );\n};\n\nexport default MediaContent;\n"]}
1
+ {"version":3,"file":"MediaBaseContent.js","sourceRoot":"../../../../src","sources":["components/MediaBase/MediaBaseContent.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAC,OAAO,EAAC,kCAAyB;AACzC,OAAO,EAAC,KAAK,EAAC,6BAAoB;AAElC,OAAO,wBAAwB,CAAC;AAEhC,MAAM,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;AAEtC,MAAM,YAAY,GAAG,CAAC,KAAwB,EAAE,EAAE;IAC9C,MAAM,EACF,KAAK,EACL,WAAW,EACX,MAAM,EACN,KAAK,EACL,OAAO,GAAG,EAAE,EACZ,cAAc,EACd,IAAI,GAAG,GAAG,EACV,IAAI,GACP,GAAG,KAAK,CAAC;IACV,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAC,GAAG,MAAM,EAAE,IAAI,EAAE,IAAkB,EAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1F,OAAO,CACH,cAAK,SAAS,EAAE,CAAC,EAAE,YACf,KAAC,OAAO,IACJ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,cAAc,EAC9B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,EAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAC,GAC7B,GACA,CACT,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["import {ButtonSize} from '@gravity-ui/uikit';\n\nimport {MediaContentProps} from '../../models';\nimport {Content} from '../../sub-blocks';\nimport {block} from '../../utils';\n\nimport './MediaBaseContent.scss';\n\nconst b = block('media-base-content');\n\nconst MediaContent = (props: MediaContentProps) => {\n const {\n title,\n description,\n button,\n links,\n buttons = [],\n additionalInfo,\n size = 'l',\n list,\n } = props;\n const allButtons = button ? [{...button, size: 'xl' as ButtonSize}, ...buttons] : buttons;\n return (\n <div className={b()}>\n <Content\n title={title}\n text={description}\n links={links}\n theme=\"default\"\n buttons={allButtons}\n list={list}\n additionalInfo={additionalInfo}\n size={size}\n colSizes={{all: 12, md: 12}}\n />\n </div>\n );\n};\n\nexport default MediaContent;\n"]}
@@ -3,18 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import * as React from 'react';
4
4
  import noop from "lodash/noop.js";
5
5
  export default class OutsideClick extends React.Component {
6
- constructor() {
7
- super(...arguments);
8
- this.ref = React.createRef();
9
- this.handleOutsideClick = (e) => {
10
- if (e.target &&
11
- this.ref &&
12
- this.ref.current &&
13
- !this.ref.current.contains(e.target)) {
14
- this.props.onOutsideClick();
15
- }
16
- };
17
- }
6
+ ref = React.createRef();
18
7
  componentDidMount() {
19
8
  document.addEventListener('click', this.handleOutsideClick, { passive: true });
20
9
  }
@@ -25,5 +14,13 @@ export default class OutsideClick extends React.Component {
25
14
  const { children, className, onClick } = this.props;
26
15
  return (_jsx("div", { className: className, ref: this.ref, onClick: onClick, onKeyDown: noop, role: onClick ? 'button' : 'group', tabIndex: onClick ? 0 : -1, children: children }));
27
16
  }
17
+ handleOutsideClick = (e) => {
18
+ if (e.target &&
19
+ this.ref &&
20
+ this.ref.current &&
21
+ !this.ref.current.contains(e.target)) {
22
+ this.props.onOutsideClick();
23
+ }
24
+ };
28
25
  }
29
26
  //# sourceMappingURL=OutsideClick.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OutsideClick.js","sourceRoot":"../../../../src","sources":["components/OutsideClick/OutsideClick.tsx"],"names":[],"mappings":";AAAA,kCAAkC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,IAAI,uBAAoB;AAQ/B,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,KAAK,CAAC,SAE/C;IAFD;;QAGI,QAAG,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAC;QA2BxC,uBAAkB,GAAG,CAAC,CAAa,EAAE,EAAE;YACnC,IACI,CAAC,CAAC,MAAM;gBACR,IAAI,CAAC,GAAG;gBACR,IAAI,CAAC,GAAG,CAAC,OAAO;gBAChB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAc,CAAC,EAC9C,CAAC;gBACC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;YAChC,CAAC;QACL,CAAC,CAAC;IACN,CAAC;IAnCG,iBAAiB;QACb,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;IACjF,CAAC;IAED,oBAAoB;QAChB,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACnE,CAAC;IAED,MAAM;QACF,MAAM,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAElD,OAAO,CACH,cACI,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAI,EACf,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAClC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAEzB,QAAQ,GACP,CACT,CAAC;IACN,CAAC;CAYJ","sourcesContent":["//TODO move into cloud components?\nimport * as React from 'react';\n\nimport noop from 'lodash/noop';\n\nexport interface OutsideClickProps {\n onOutsideClick: () => void;\n className?: string;\n onClick?: () => void;\n}\n\nexport default class OutsideClick extends React.Component<\n React.PropsWithChildren<OutsideClickProps>\n> {\n ref = React.createRef<HTMLDivElement>();\n\n componentDidMount() {\n document.addEventListener('click', this.handleOutsideClick, {passive: true});\n }\n\n componentWillUnmount() {\n document.removeEventListener('click', this.handleOutsideClick);\n }\n\n render() {\n const {children, className, onClick} = this.props;\n\n return (\n <div\n className={className}\n ref={this.ref}\n onClick={onClick}\n onKeyDown={noop}\n role={onClick ? 'button' : 'group'}\n tabIndex={onClick ? 0 : -1}\n >\n {children}\n </div>\n );\n }\n\n handleOutsideClick = (e: MouseEvent) => {\n if (\n e.target &&\n this.ref &&\n this.ref.current &&\n !this.ref.current.contains(e.target as Node)\n ) {\n this.props.onOutsideClick();\n }\n };\n}\n"]}
1
+ {"version":3,"file":"OutsideClick.js","sourceRoot":"../../../../src","sources":["components/OutsideClick/OutsideClick.tsx"],"names":[],"mappings":";AAAA,kCAAkC;AAClC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,IAAI,uBAAoB;AAQ/B,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,KAAK,CAAC,SAE/C;IACG,GAAG,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAC;IAExC,iBAAiB;QACb,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;IACjF,CAAC;IAED,oBAAoB;QAChB,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACnE,CAAC;IAED,MAAM;QACF,MAAM,EAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAElD,OAAO,CACH,cACI,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAI,EACf,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAClC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAEzB,QAAQ,GACP,CACT,CAAC;IACN,CAAC;IAED,kBAAkB,GAAG,CAAC,CAAa,EAAE,EAAE;QACnC,IACI,CAAC,CAAC,MAAM;YACR,IAAI,CAAC,GAAG;YACR,IAAI,CAAC,GAAG,CAAC,OAAO;YAChB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAc,CAAC,EAC9C,CAAC;YACC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;QAChC,CAAC;IACL,CAAC,CAAC;CACL","sourcesContent":["//TODO move into cloud components?\nimport * as React from 'react';\n\nimport noop from 'lodash/noop';\n\nexport interface OutsideClickProps {\n onOutsideClick: () => void;\n className?: string;\n onClick?: () => void;\n}\n\nexport default class OutsideClick extends React.Component<\n React.PropsWithChildren<OutsideClickProps>\n> {\n ref = React.createRef<HTMLDivElement>();\n\n componentDidMount() {\n document.addEventListener('click', this.handleOutsideClick, {passive: true});\n }\n\n componentWillUnmount() {\n document.removeEventListener('click', this.handleOutsideClick);\n }\n\n render() {\n const {children, className, onClick} = this.props;\n\n return (\n <div\n className={className}\n ref={this.ref}\n onClick={onClick}\n onKeyDown={noop}\n role={onClick ? 'button' : 'group'}\n tabIndex={onClick ? 0 : -1}\n >\n {children}\n </div>\n );\n }\n\n handleOutsideClick = (e: MouseEvent) => {\n if (\n e.target &&\n this.ref &&\n this.ref.current &&\n !this.ref.current.contains(e.target as Node)\n ) {\n this.props.onOutsideClick();\n }\n };\n}\n"]}
@@ -10,55 +10,12 @@ const TRANSITION_TIME = 300;
10
10
  const PADDING_SIZE = 24;
11
11
  const DEFAULT_ARROW_SIZE = 18;
12
12
  export default class OverflowScroller extends React.Component {
13
- constructor() {
14
- super(...arguments);
15
- this.state = {
16
- arrows: [],
17
- scrollValue: 0,
18
- };
19
- this.containerRef = React.createRef();
20
- this.wrapperRef = React.createRef();
21
- // eslint-disable-next-line @typescript-eslint/member-ordering, react/sort-comp
22
- this.checkOverflow = debounce(() => {
23
- if (this.containerRef &&
24
- this.containerRef.current &&
25
- this.wrapperRef &&
26
- this.wrapperRef.current) {
27
- const containerWidth = this.containerRef.current.offsetWidth;
28
- const wrapperWidth = this.wrapperRef.current.offsetWidth;
29
- const scrollValue = 0;
30
- const arrows = wrapperWidth < containerWidth ? [] : ['right'];
31
- this.setState({ scrollValue, arrows });
32
- }
33
- }, 100);
34
- this.handleScrollClick = (e, arrow) => {
35
- const { scrollValue, arrows } = this.state;
36
- const { onScrollStart } = this.props;
37
- if (this.containerRef &&
38
- this.containerRef.current &&
39
- this.wrapperRef &&
40
- this.wrapperRef.current) {
41
- const containerWidth = this.containerRef.current.offsetWidth;
42
- const wrapperWidth = this.wrapperRef.current.offsetWidth;
43
- const hiddenWidth = arrow === 'right' ? wrapperWidth - (containerWidth + scrollValue) : scrollValue;
44
- const padding = arrows.length > 1 && hiddenWidth + PADDING_SIZE > containerWidth ? PADDING_SIZE : 0;
45
- const delta = containerWidth > hiddenWidth ? hiddenWidth : containerWidth;
46
- const newScrollValue = arrow === 'right' ? scrollValue + delta + padding : scrollValue - delta - padding;
47
- let newArrows = ['left', 'right'];
48
- if (newScrollValue + containerWidth >= wrapperWidth) {
49
- newArrows = ['left'];
50
- }
51
- else if (!newScrollValue) {
52
- newArrows = ['right'];
53
- }
54
- this.setState({ arrows: newArrows, scrollValue: newScrollValue });
55
- if (onScrollStart) {
56
- onScrollStart();
57
- }
58
- e.stopPropagation();
59
- }
60
- };
61
- }
13
+ state = {
14
+ arrows: [],
15
+ scrollValue: 0,
16
+ };
17
+ containerRef = React.createRef();
18
+ wrapperRef = React.createRef();
62
19
  componentDidMount() {
63
20
  this.checkOverflow();
64
21
  window.addEventListener('resize', this.checkOverflow, { passive: true });
@@ -83,5 +40,45 @@ export default class OverflowScroller extends React.Component {
83
40
  'padding-right': paddingRight,
84
41
  }), children: [_jsx("div", { className: b(null, className), ref: this.containerRef, children: _jsx("div", { className: b('wrapper'), style: wrapperStyle, ref: this.wrapperRef, children: children }) }), arrows.map((direction) => (_jsx("button", { className: b('arrow', { type: direction }, arrowClassName), onClick: (e) => this.handleScrollClick(e, direction), "aria-label": i18n(direction), children: _jsx(ToggleArrow, { size: arrowSize, type: 'horizontal', iconType: "navigation" }) }, direction)))] }));
85
42
  }
43
+ // eslint-disable-next-line @typescript-eslint/member-ordering, react/sort-comp
44
+ checkOverflow = debounce(() => {
45
+ if (this.containerRef &&
46
+ this.containerRef.current &&
47
+ this.wrapperRef &&
48
+ this.wrapperRef.current) {
49
+ const containerWidth = this.containerRef.current.offsetWidth;
50
+ const wrapperWidth = this.wrapperRef.current.offsetWidth;
51
+ const scrollValue = 0;
52
+ const arrows = wrapperWidth < containerWidth ? [] : ['right'];
53
+ this.setState({ scrollValue, arrows });
54
+ }
55
+ }, 100);
56
+ handleScrollClick = (e, arrow) => {
57
+ const { scrollValue, arrows } = this.state;
58
+ const { onScrollStart } = this.props;
59
+ if (this.containerRef &&
60
+ this.containerRef.current &&
61
+ this.wrapperRef &&
62
+ this.wrapperRef.current) {
63
+ const containerWidth = this.containerRef.current.offsetWidth;
64
+ const wrapperWidth = this.wrapperRef.current.offsetWidth;
65
+ const hiddenWidth = arrow === 'right' ? wrapperWidth - (containerWidth + scrollValue) : scrollValue;
66
+ const padding = arrows.length > 1 && hiddenWidth + PADDING_SIZE > containerWidth ? PADDING_SIZE : 0;
67
+ const delta = containerWidth > hiddenWidth ? hiddenWidth : containerWidth;
68
+ const newScrollValue = arrow === 'right' ? scrollValue + delta + padding : scrollValue - delta - padding;
69
+ let newArrows = ['left', 'right'];
70
+ if (newScrollValue + containerWidth >= wrapperWidth) {
71
+ newArrows = ['left'];
72
+ }
73
+ else if (!newScrollValue) {
74
+ newArrows = ['right'];
75
+ }
76
+ this.setState({ arrows: newArrows, scrollValue: newScrollValue });
77
+ if (onScrollStart) {
78
+ onScrollStart();
79
+ }
80
+ e.stopPropagation();
81
+ }
82
+ };
86
83
  }
87
84
  //# sourceMappingURL=OverflowScroller.js.map