@gravity-ui/page-constructor 6.0.1-beta.0 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. package/build/cjs/blocks/CardLayout/CardLayout.js +1 -1
  2. package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
  3. package/build/cjs/blocks/Form/schema.js +1 -1
  4. package/build/cjs/blocks/Form/schema.js.map +1 -1
  5. package/build/cjs/blocks/Header/Header.css +6 -0
  6. package/build/cjs/blocks/Header/Header.js +10 -4
  7. package/build/cjs/blocks/Header/Header.js.map +1 -1
  8. package/build/cjs/blocks/Header/schema.d.ts +6 -0
  9. package/build/cjs/blocks/Header/schema.js +3 -0
  10. package/build/cjs/blocks/Header/schema.js.map +1 -1
  11. package/build/cjs/blocks/HeaderSlider/schema.d.ts +3 -0
  12. package/build/cjs/blocks/HeaderSlider/schema.js +1 -1
  13. package/build/cjs/blocks/HeaderSlider/schema.js.map +1 -1
  14. package/build/cjs/blocks/Info/schema.js +1 -1
  15. package/build/cjs/blocks/Info/schema.js.map +1 -1
  16. package/build/cjs/blocks/Media/schema.js +1 -1
  17. package/build/cjs/blocks/Media/schema.js.map +1 -1
  18. package/build/cjs/blocks/Questions/schema.js +1 -1
  19. package/build/cjs/blocks/Questions/schema.js.map +1 -1
  20. package/build/cjs/blocks/Slider/Slider.js +3 -3
  21. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  22. package/build/cjs/blocks/Slider/utils.js +1 -1
  23. package/build/cjs/blocks/Slider/utils.js.map +1 -1
  24. package/build/cjs/blocks/SliderNew/Slider.d.ts +1 -1
  25. package/build/cjs/blocks/SliderNew/Slider.js +13 -2
  26. package/build/cjs/blocks/SliderNew/Slider.js.map +1 -1
  27. package/build/cjs/blocks/SliderNew/utils.js +2 -2
  28. package/build/cjs/blocks/SliderNew/utils.js.map +1 -1
  29. package/build/cjs/blocks/Tabs/schema.js +1 -1
  30. package/build/cjs/blocks/Tabs/schema.js.map +1 -1
  31. package/build/cjs/components/BackLink/BackLink.js +5 -2
  32. package/build/cjs/components/BackLink/BackLink.js.map +1 -1
  33. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js +3 -3
  34. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  35. package/build/cjs/components/BrandFooter/BrandFooter.css +21 -17
  36. package/build/cjs/components/BrandFooter/BrandFooter.js +1 -1
  37. package/build/cjs/components/BrandFooter/BrandFooter.js.map +1 -1
  38. package/build/cjs/components/Button/Button.js +2 -3
  39. package/build/cjs/components/Button/Button.js.map +1 -1
  40. package/build/cjs/components/CardBase/CardBase.css +1 -0
  41. package/build/cjs/components/ContentList/ContentList.css +7 -7
  42. package/build/cjs/components/FileLink/FileLink.js +8 -1
  43. package/build/cjs/components/FileLink/FileLink.js.map +1 -1
  44. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js +1 -1
  45. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  46. package/build/cjs/components/ImageBase/ImageBase.js +1 -1
  47. package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
  48. package/build/cjs/components/Link/Link.js +11 -2
  49. package/build/cjs/components/Link/Link.js.map +1 -1
  50. package/build/cjs/components/Map/GoogleMap.js +1 -1
  51. package/build/cjs/components/Map/GoogleMap.js.map +1 -1
  52. package/build/cjs/components/Map/YMap/YandexMap.js +1 -1
  53. package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
  54. package/build/cjs/components/Media/Image/Image.js +1 -1
  55. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  56. package/build/cjs/components/OutsideClick/OutsideClick.js +1 -1
  57. package/build/cjs/components/OutsideClick/OutsideClick.js.map +1 -1
  58. package/build/cjs/components/OverflowScroller/OverflowScroller.js +1 -1
  59. package/build/cjs/components/OverflowScroller/OverflowScroller.js.map +1 -1
  60. package/build/cjs/components/ReactPlayer/ReactPlayer.js +1 -1
  61. package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
  62. package/build/cjs/components/Title/TitleItem.css +8 -1
  63. package/build/cjs/components/Title/TitleItem.js +1 -0
  64. package/build/cjs/components/Title/TitleItem.js.map +1 -1
  65. package/build/cjs/components/VideoBlock/VideoBlock.js +1 -1
  66. package/build/cjs/components/VideoBlock/VideoBlock.js.map +1 -1
  67. package/build/cjs/containers/PageConstructor/PageConstructor.css +1 -0
  68. package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +1 -1
  69. package/build/cjs/containers/PageConstructor/PageConstructor.js +1 -1
  70. package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
  71. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  72. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  73. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +1 -1
  74. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  75. package/build/cjs/editor/components/AddBlock/AddBlock.js +1 -1
  76. package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
  77. package/build/cjs/editor/components/BlockForm/BlockForm.js +2 -2
  78. package/build/cjs/editor/components/BlockForm/BlockForm.js.map +1 -1
  79. package/build/cjs/editor/components/CodeEditor/CodeEditor.js +1 -1
  80. package/build/cjs/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  81. package/build/cjs/editor/components/ControlPanel/ControlPanel.css +1 -1
  82. package/build/cjs/editor/components/PageSettings/PageSettings.js +1 -1
  83. package/build/cjs/editor/components/PageSettings/PageSettings.js.map +1 -1
  84. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +1 -1
  85. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  86. package/build/cjs/editor/dynamic-forms-custom/config.js +1 -1
  87. package/build/cjs/editor/dynamic-forms-custom/config.js.map +1 -1
  88. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js +2 -2
  89. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  90. package/build/cjs/editor/store/main/utils.js +1 -1
  91. package/build/cjs/editor/store/main/utils.js.map +1 -1
  92. package/build/cjs/editor/utils/index.js +1 -1
  93. package/build/cjs/editor/utils/index.js.map +1 -1
  94. package/build/cjs/editor/utils/validation.js +1 -1
  95. package/build/cjs/editor/utils/validation.js.map +1 -1
  96. package/build/cjs/hooks/useFocus.js +1 -1
  97. package/build/cjs/hooks/useFocus.js.map +1 -1
  98. package/build/cjs/hooks/useHeightCalculator.js +1 -1
  99. package/build/cjs/hooks/useHeightCalculator.js.map +1 -1
  100. package/build/cjs/hooks/useWindowBreakpoint.js +1 -1
  101. package/build/cjs/hooks/useWindowBreakpoint.js.map +1 -1
  102. package/build/cjs/models/constructor-items/blocks.d.ts +2 -1
  103. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  104. package/build/cjs/models/constructor-items/common.d.ts +2 -2
  105. package/build/cjs/models/constructor-items/common.js.map +1 -1
  106. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +1 -1
  107. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  108. package/build/cjs/navigation/components/NavigationItem/hooks/useNavigationItemMap.js +1 -1
  109. package/build/cjs/navigation/components/NavigationItem/hooks/useNavigationItemMap.js.map +1 -1
  110. package/build/cjs/navigation/hooks/useActiveNavItem.d.ts +2 -2
  111. package/build/cjs/navigation/hooks/useShowBorder.js +1 -1
  112. package/build/cjs/navigation/hooks/useShowBorder.js.map +1 -1
  113. package/build/cjs/navigation/schema.js +1 -1
  114. package/build/cjs/navigation/schema.js.map +1 -1
  115. package/build/cjs/navigation/utils.d.ts +1 -1
  116. package/build/cjs/schema/validators/common.js +1 -1
  117. package/build/cjs/schema/validators/common.js.map +1 -1
  118. package/build/cjs/sub-blocks/BackgroundCard/schema.js +1 -1
  119. package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
  120. package/build/cjs/sub-blocks/BasicCard/schema.js +1 -1
  121. package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
  122. package/build/cjs/sub-blocks/Content/Content.css +53 -6
  123. package/build/cjs/sub-blocks/Content/Content.js +2 -0
  124. package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
  125. package/build/cjs/sub-blocks/ImageCard/ImageCard.css +2 -0
  126. package/build/cjs/sub-blocks/ImageCard/schema.js +1 -1
  127. package/build/cjs/sub-blocks/ImageCard/schema.js.map +1 -1
  128. package/build/cjs/sub-blocks/LayoutItem/schema.js +1 -1
  129. package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
  130. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +2 -3
  131. package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  132. package/build/cjs/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js +1 -1
  133. package/build/cjs/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js.map +1 -1
  134. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -0
  135. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  136. package/build/cjs/text-transform/transformers.js +2 -2
  137. package/build/cjs/text-transform/transformers.js.map +1 -1
  138. package/build/cjs/utils/blocks.js +3 -2
  139. package/build/cjs/utils/blocks.js.map +1 -1
  140. package/build/esm/blocks/CardLayout/CardLayout.js +1 -1
  141. package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
  142. package/build/esm/blocks/Form/schema.js +1 -1
  143. package/build/esm/blocks/Form/schema.js.map +1 -1
  144. package/build/esm/blocks/Header/Header.css +6 -0
  145. package/build/esm/blocks/Header/Header.js +10 -4
  146. package/build/esm/blocks/Header/Header.js.map +1 -1
  147. package/build/esm/blocks/Header/schema.d.ts +6 -0
  148. package/build/esm/blocks/Header/schema.js +3 -0
  149. package/build/esm/blocks/Header/schema.js.map +1 -1
  150. package/build/esm/blocks/HeaderSlider/schema.d.ts +3 -0
  151. package/build/esm/blocks/HeaderSlider/schema.js +1 -1
  152. package/build/esm/blocks/HeaderSlider/schema.js.map +1 -1
  153. package/build/esm/blocks/Info/schema.js +1 -1
  154. package/build/esm/blocks/Info/schema.js.map +1 -1
  155. package/build/esm/blocks/Media/schema.js +1 -1
  156. package/build/esm/blocks/Media/schema.js.map +1 -1
  157. package/build/esm/blocks/Questions/schema.js +1 -1
  158. package/build/esm/blocks/Questions/schema.js.map +1 -1
  159. package/build/esm/blocks/Slider/Slider.js +3 -3
  160. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  161. package/build/esm/blocks/Slider/utils.js +1 -1
  162. package/build/esm/blocks/Slider/utils.js.map +1 -1
  163. package/build/esm/blocks/SliderNew/Slider.d.ts +1 -1
  164. package/build/esm/blocks/SliderNew/Slider.js +13 -2
  165. package/build/esm/blocks/SliderNew/Slider.js.map +1 -1
  166. package/build/esm/blocks/SliderNew/utils.js +2 -2
  167. package/build/esm/blocks/SliderNew/utils.js.map +1 -1
  168. package/build/esm/blocks/Tabs/schema.js +1 -1
  169. package/build/esm/blocks/Tabs/schema.js.map +1 -1
  170. package/build/esm/components/BackLink/BackLink.js +5 -2
  171. package/build/esm/components/BackLink/BackLink.js.map +1 -1
  172. package/build/esm/components/BalancedMasonry/BalancedMasonry.js +3 -3
  173. package/build/esm/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  174. package/build/esm/components/BrandFooter/BrandFooter.css +21 -17
  175. package/build/esm/components/BrandFooter/BrandFooter.js +1 -1
  176. package/build/esm/components/BrandFooter/BrandFooter.js.map +1 -1
  177. package/build/esm/components/Button/Button.js +3 -4
  178. package/build/esm/components/Button/Button.js.map +1 -1
  179. package/build/esm/components/CardBase/CardBase.css +1 -0
  180. package/build/esm/components/ContentList/ContentList.css +7 -7
  181. package/build/esm/components/FileLink/FileLink.js +8 -1
  182. package/build/esm/components/FileLink/FileLink.js.map +1 -1
  183. package/build/esm/components/FullWidthBackground/FullWidthBackground.js +1 -1
  184. package/build/esm/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  185. package/build/esm/components/ImageBase/ImageBase.js +1 -1
  186. package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
  187. package/build/esm/components/Link/Link.js +12 -3
  188. package/build/esm/components/Link/Link.js.map +1 -1
  189. package/build/esm/components/Map/GoogleMap.js +1 -1
  190. package/build/esm/components/Map/GoogleMap.js.map +1 -1
  191. package/build/esm/components/Map/YMap/YandexMap.js +1 -1
  192. package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
  193. package/build/esm/components/Media/Image/Image.js +1 -1
  194. package/build/esm/components/Media/Image/Image.js.map +1 -1
  195. package/build/esm/components/OutsideClick/OutsideClick.js +1 -1
  196. package/build/esm/components/OutsideClick/OutsideClick.js.map +1 -1
  197. package/build/esm/components/OverflowScroller/OverflowScroller.js +1 -1
  198. package/build/esm/components/OverflowScroller/OverflowScroller.js.map +1 -1
  199. package/build/esm/components/ReactPlayer/ReactPlayer.js +1 -1
  200. package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
  201. package/build/esm/components/Title/TitleItem.css +8 -1
  202. package/build/esm/components/Title/TitleItem.js +1 -0
  203. package/build/esm/components/Title/TitleItem.js.map +1 -1
  204. package/build/esm/components/VideoBlock/VideoBlock.js +1 -1
  205. package/build/esm/components/VideoBlock/VideoBlock.js.map +1 -1
  206. package/build/esm/containers/PageConstructor/PageConstructor.css +1 -0
  207. package/build/esm/containers/PageConstructor/PageConstructor.d.ts +1 -1
  208. package/build/esm/containers/PageConstructor/PageConstructor.js +1 -1
  209. package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
  210. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  211. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  212. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +1 -1
  213. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  214. package/build/esm/editor/components/AddBlock/AddBlock.js +1 -1
  215. package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
  216. package/build/esm/editor/components/BlockForm/BlockForm.js +2 -2
  217. package/build/esm/editor/components/BlockForm/BlockForm.js.map +1 -1
  218. package/build/esm/editor/components/CodeEditor/CodeEditor.js +1 -1
  219. package/build/esm/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  220. package/build/esm/editor/components/ControlPanel/ControlPanel.css +1 -1
  221. package/build/esm/editor/components/PageSettings/PageSettings.js +1 -1
  222. package/build/esm/editor/components/PageSettings/PageSettings.js.map +1 -1
  223. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +1 -1
  224. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  225. package/build/esm/editor/dynamic-forms-custom/config.js +1 -1
  226. package/build/esm/editor/dynamic-forms-custom/config.js.map +1 -1
  227. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js +2 -2
  228. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  229. package/build/esm/editor/store/main/utils.js +1 -1
  230. package/build/esm/editor/store/main/utils.js.map +1 -1
  231. package/build/esm/editor/utils/index.js +1 -1
  232. package/build/esm/editor/utils/index.js.map +1 -1
  233. package/build/esm/editor/utils/validation.js +1 -1
  234. package/build/esm/editor/utils/validation.js.map +1 -1
  235. package/build/esm/hooks/useFocus.js +1 -1
  236. package/build/esm/hooks/useFocus.js.map +1 -1
  237. package/build/esm/hooks/useHeightCalculator.js +1 -1
  238. package/build/esm/hooks/useHeightCalculator.js.map +1 -1
  239. package/build/esm/hooks/useWindowBreakpoint.js +1 -1
  240. package/build/esm/hooks/useWindowBreakpoint.js.map +1 -1
  241. package/build/esm/models/constructor-items/blocks.d.ts +2 -1
  242. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  243. package/build/esm/models/constructor-items/common.d.ts +2 -2
  244. package/build/esm/models/constructor-items/common.js.map +1 -1
  245. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +1 -1
  246. package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  247. package/build/esm/navigation/components/NavigationItem/hooks/useNavigationItemMap.js +1 -1
  248. package/build/esm/navigation/components/NavigationItem/hooks/useNavigationItemMap.js.map +1 -1
  249. package/build/esm/navigation/hooks/useActiveNavItem.d.ts +2 -2
  250. package/build/esm/navigation/hooks/useShowBorder.js +1 -1
  251. package/build/esm/navigation/hooks/useShowBorder.js.map +1 -1
  252. package/build/esm/navigation/schema.js +1 -1
  253. package/build/esm/navigation/schema.js.map +1 -1
  254. package/build/esm/navigation/utils.d.ts +1 -1
  255. package/build/esm/schema/validators/common.js +1 -1
  256. package/build/esm/schema/validators/common.js.map +1 -1
  257. package/build/esm/sub-blocks/BackgroundCard/schema.js +1 -1
  258. package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
  259. package/build/esm/sub-blocks/BasicCard/schema.js +1 -1
  260. package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
  261. package/build/esm/sub-blocks/Content/Content.css +53 -6
  262. package/build/esm/sub-blocks/Content/Content.js +2 -0
  263. package/build/esm/sub-blocks/Content/Content.js.map +1 -1
  264. package/build/esm/sub-blocks/ImageCard/ImageCard.css +2 -0
  265. package/build/esm/sub-blocks/ImageCard/schema.js +1 -1
  266. package/build/esm/sub-blocks/ImageCard/schema.js.map +1 -1
  267. package/build/esm/sub-blocks/LayoutItem/schema.js +1 -1
  268. package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
  269. package/build/esm/sub-blocks/PriceCard/PriceCard.js +1 -1
  270. package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  271. package/build/esm/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js +1 -1
  272. package/build/esm/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js.map +1 -1
  273. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -0
  274. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  275. package/build/esm/text-transform/transformers.js +2 -2
  276. package/build/esm/text-transform/transformers.js.map +1 -1
  277. package/build/esm/utils/blocks.js +3 -2
  278. package/build/esm/utils/blocks.js.map +1 -1
  279. package/package.json +16 -11
  280. package/schema/index.js +1 -1
  281. package/server/models/constructor-items/blocks.d.ts +2 -1
  282. package/server/models/constructor-items/common.d.ts +2 -2
  283. package/server/utils/blocks.js +1 -0
  284. package/styles/root.scss +1 -0
  285. package/widget/2957.index.js +1 -1
@@ -1,5 +1,6 @@
1
1
  .pc-content_size_l .pc-content__text .yfm,
2
- .pc-content_size_l .pc-content__notice .yfm {
2
+ .pc-content_size_l .pc-content__notice .yfm, .pc-content_size_m .pc-content__text .yfm,
3
+ .pc-content_size_m .pc-content__notice .yfm {
3
4
  margin: 0;
4
5
  }
5
6
 
@@ -37,6 +38,9 @@ unpredictable css rules order in build */
37
38
  text-align: center;
38
39
  }
39
40
 
41
+ .pc-content_centered .pc-content__list {
42
+ margin-inline: auto;
43
+ }
40
44
  .pc-content_centered .pc-content__buttons {
41
45
  justify-content: center;
42
46
  }
@@ -52,8 +56,7 @@ unpredictable css rules order in build */
52
56
  .pc-content_centered .pc-content__text .yfm ol {
53
57
  text-align: left;
54
58
  }
55
- .pc-content_size_s .pc-content__text,
56
- .pc-content_size_s .pc-content__notice {
59
+ .pc-content_size_s .pc-content__text {
57
60
  margin-top: 8px;
58
61
  }
59
62
  .pc-content_size_s .pc-content__text_without-title {
@@ -61,11 +64,44 @@ unpredictable css rules order in build */
61
64
  }
62
65
  .pc-content_size_s .pc-content__list,
63
66
  .pc-content_size_s .pc-content__links,
64
- .pc-content_size_s .pc-content__buttons {
67
+ .pc-content_size_s .pc-content__notice {
65
68
  margin-top: 16px;
66
69
  }
67
- .pc-content_size_l .pc-content__text,
68
- .pc-content_size_l .pc-content__notice {
70
+ .pc-content_size_s .pc-content__buttons {
71
+ margin-top: 20px;
72
+ }
73
+ .pc-content_size_s .pc-content__notice .yfm {
74
+ font-size: var(--g-text-body-1-font-size);
75
+ line-height: var(--g-text-body-1-line-height);
76
+ }
77
+ .pc-content_size_m .pc-content__text {
78
+ margin-top: 12px;
79
+ }
80
+ .pc-content_size_m .pc-content__text_without-title {
81
+ margin-top: 0;
82
+ }
83
+ .pc-content_size_m .pc-content__text .yfm,
84
+ .pc-content_size_m .pc-content__notice .yfm {
85
+ font-size: var(--g-text-body-3-font-size);
86
+ line-height: var(--g-text-body-3-line-height);
87
+ }
88
+ .pc-content_size_m .pc-content__text .yfm {
89
+ font-size: var(--g-text-body-3-font-size);
90
+ line-height: var(--g-text-body-3-line-height);
91
+ }
92
+ .pc-content_size_m .pc-content__notice .yfm {
93
+ font-size: var(--g-text-body-2-font-size);
94
+ line-height: var(--g-text-body-2-line-height);
95
+ }
96
+ .pc-content_size_m .pc-content__list,
97
+ .pc-content_size_m .pc-content__links,
98
+ .pc-content_size_m .pc-content__notice {
99
+ margin-top: 20px;
100
+ }
101
+ .pc-content_size_m .pc-content__buttons {
102
+ margin-top: 24px;
103
+ }
104
+ .pc-content_size_l .pc-content__text {
69
105
  margin-top: 12px;
70
106
  }
71
107
  .pc-content_size_l .pc-content__text_without-title {
@@ -76,8 +112,19 @@ unpredictable css rules order in build */
76
112
  font-size: var(--g-text-body-3-font-size);
77
113
  line-height: var(--g-text-body-3-line-height);
78
114
  }
115
+ .pc-content_size_l .pc-content__text .yfm {
116
+ font-size: var(--g-text-body-3-font-size);
117
+ line-height: var(--g-text-body-3-line-height);
118
+ }
119
+ .pc-content_size_l .pc-content__notice .yfm {
120
+ font-size: var(--g-text-body-2-font-size);
121
+ line-height: var(--g-text-body-2-line-height);
122
+ }
79
123
  .pc-content_size_l .pc-content__list,
80
124
  .pc-content_size_l .pc-content__links,
125
+ .pc-content_size_l .pc-content__notice {
126
+ margin-top: 20px;
127
+ }
81
128
  .pc-content_size_l .pc-content__buttons {
82
129
  margin-top: 24px;
83
130
  }
@@ -10,6 +10,8 @@ function getTextSize(size) {
10
10
  switch (size) {
11
11
  case 's':
12
12
  return 's';
13
+ case 'm':
14
+ return 'sm';
13
15
  case 'l':
14
16
  default:
15
17
  return 'm';
@@ -1 +1 @@
1
- {"version":3,"file":"Content.js","sourceRoot":"../../../../src","sources":["sub-blocks/Content/Content.tsx"],"names":[],"mappings":"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","sourcesContent":["import {useUniqId} from '@gravity-ui/uikit';\n\nimport {Buttons, ContentList, Links, Title, YFMWrapper} from '../../components';\nimport {Col} from '../../grid';\nimport {ClassNameProps, ContentBlockProps, ContentSize, TitleItemProps} from '../../models';\nimport {QAProps} from '../../models/common';\nimport {block} from '../../utils';\nimport {getQaAttrubutes} from '../../utils/blocks';\n\nimport './Content.scss';\n\nconst b = block('content');\n\nfunction getTextSize(size: ContentSize) {\n switch (size) {\n case 's':\n return 's';\n case 'l':\n default:\n return 'm';\n }\n}\n\nexport type ContentProps = ContentBlockProps & ClassNameProps & QAProps;\n\nconst Content = (props: ContentProps) => {\n const {\n title,\n titleId: titleIdFromProps,\n text,\n textId,\n additionalInfo,\n size = 'l',\n links,\n buttons,\n colSizes = {all: 12, sm: 8},\n centered,\n theme,\n className,\n list,\n qa,\n controlPosition,\n } = props;\n const qaAttributes = getQaAttrubutes(qa, ['links', 'link', 'buttons', 'button', 'list']);\n\n const titleProps =\n !title || typeof title === 'string'\n ? ({text: title, textSize: getTextSize(size)} as TitleItemProps)\n : title;\n\n const hasTitle = Boolean(title);\n const defaultTitleId = useUniqId();\n const titleId = titleIdFromProps || defaultTitleId;\n\n return (\n <Col\n className={b({size, centered, theme, 'control-position': controlPosition}, className)}\n reset\n sizes={colSizes}\n qa={qaAttributes.container}\n >\n {title && (\n <Title\n className={b('title')}\n title={titleProps}\n colSizes={{all: 12}}\n id={titleId}\n />\n )}\n {text && (\n <div className={b('text', {['without-title']: !hasTitle})}>\n <YFMWrapper\n content={text}\n modifiers={{constructor: true, [`constructor-size-${size}`]: true}}\n id={textId}\n />\n </div>\n )}\n {list?.length ? (\n <div className={b('list')}>\n <ContentList list={list} size={size} qa={qaAttributes.list} theme={theme} />\n </div>\n ) : null}\n {additionalInfo && (\n <div className={b('notice')}>\n <YFMWrapper\n content={additionalInfo}\n modifiers={{\n constructor: true,\n 'constructor-notice': true,\n [`constructor-size-${size}`]: true,\n }}\n />\n </div>\n )}\n {links && (\n <Links\n className={b('links', {size})}\n size={size}\n links={links}\n titleId={titleId}\n qa={qaAttributes.links}\n linkQa={qaAttributes.link}\n />\n )}\n {buttons && (\n <Buttons\n className={b('buttons', {size})}\n size={size}\n buttons={buttons}\n titleId={titleId}\n qa={qaAttributes.buttons}\n buttonQa={qaAttributes.button}\n />\n )}\n </Col>\n );\n};\n\nexport default Content;\n"]}
1
+ {"version":3,"file":"Content.js","sourceRoot":"../../../../src","sources":["sub-blocks/Content/Content.tsx"],"names":[],"mappings":"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","sourcesContent":["import {useUniqId} from '@gravity-ui/uikit';\n\nimport {Buttons, ContentList, Links, Title, YFMWrapper} from '../../components';\nimport {Col} from '../../grid';\nimport {\n ClassNameProps,\n ContentBlockProps,\n ContentSize,\n TextSize,\n TitleItemProps,\n} from '../../models';\nimport {QAProps} from '../../models/common';\nimport {block} from '../../utils';\nimport {getQaAttrubutes} from '../../utils/blocks';\n\nimport './Content.scss';\n\nconst b = block('content');\n\nfunction getTextSize(size: ContentSize): TextSize {\n switch (size) {\n case 's':\n return 's';\n case 'm':\n return 'sm';\n case 'l':\n default:\n return 'm';\n }\n}\n\nexport type ContentProps = ContentBlockProps & ClassNameProps & QAProps;\n\nconst Content = (props: ContentProps) => {\n const {\n title,\n titleId: titleIdFromProps,\n text,\n textId,\n additionalInfo,\n size = 'l',\n links,\n buttons,\n colSizes = {all: 12, sm: 8},\n centered,\n theme,\n className,\n list,\n qa,\n controlPosition,\n } = props;\n const qaAttributes = getQaAttrubutes(qa, ['links', 'link', 'buttons', 'button', 'list']);\n\n const titleProps =\n !title || typeof title === 'string'\n ? ({text: title, textSize: getTextSize(size)} as TitleItemProps)\n : title;\n\n const hasTitle = Boolean(title);\n const defaultTitleId = useUniqId();\n const titleId = titleIdFromProps || defaultTitleId;\n\n return (\n <Col\n className={b({size, centered, theme, 'control-position': controlPosition}, className)}\n reset\n sizes={colSizes}\n qa={qaAttributes.container}\n >\n {title && (\n <Title\n className={b('title')}\n title={titleProps}\n colSizes={{all: 12}}\n id={titleId}\n />\n )}\n {text && (\n <div className={b('text', {['without-title']: !hasTitle})}>\n <YFMWrapper\n content={text}\n modifiers={{constructor: true, [`constructor-size-${size}`]: true}}\n id={textId}\n />\n </div>\n )}\n {list?.length ? (\n <div className={b('list')}>\n <ContentList list={list} size={size} qa={qaAttributes.list} theme={theme} />\n </div>\n ) : null}\n {additionalInfo && (\n <div className={b('notice')}>\n <YFMWrapper\n content={additionalInfo}\n modifiers={{\n constructor: true,\n 'constructor-notice': true,\n [`constructor-size-${size}`]: true,\n }}\n />\n </div>\n )}\n {links && (\n <Links\n className={b('links', {size})}\n size={size}\n links={links}\n titleId={titleId}\n qa={qaAttributes.links}\n linkQa={qaAttributes.link}\n />\n )}\n {buttons && (\n <Buttons\n className={b('buttons', {size})}\n size={size}\n buttons={buttons}\n titleId={titleId}\n qa={qaAttributes.buttons}\n buttonQa={qaAttributes.button}\n />\n )}\n </Col>\n );\n};\n\nexport default Content;\n"]}
@@ -27,6 +27,7 @@ unpredictable css rules order in build */
27
27
  .pc-image-card .pc-image-card__content {
28
28
  display: flex;
29
29
  padding: 32px;
30
+ padding-bottom: 36px;
30
31
  flex: auto;
31
32
  }
32
33
  .pc-image-card .pc-image-card__image_inner {
@@ -44,6 +45,7 @@ unpredictable css rules order in build */
44
45
  }
45
46
  .pc-image-card .pc-image-card__image_margins_m {
46
47
  padding: 32px;
48
+ padding-bottom: 36px;
47
49
  }
48
50
  .pc-image-card .pc-image-card__image_margins_m .pc-image-card__image_inner {
49
51
  border-radius: initial;
@@ -1,4 +1,4 @@
1
- import omit from 'lodash/omit';
1
+ import omit from "lodash/omit.js";
2
2
  import { BaseProps, CardBase, CardLayoutProps } from "../../schema/validators/common.js";
3
3
  import { ImageProps } from "../../schema/validators/components.js";
4
4
  import { ContentBase } from "../Content/schema.js";
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/ImageCard/schema.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AAE/B,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAC,0CAAuC;AACpF,OAAO,EAAC,UAAU,EAAC,8CAA2C;AAC9D,OAAO,EAAC,WAAW,EAAC,6BAA0B;AAE9C,MAAM,0BAA0B,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,SAAS,GAAG;IACrB,YAAY,EAAE;QACV,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,OAAO,CAAC;QACnB,UAAU,4EACH,SAAS,GACT,QAAQ,GACR,eAAe,GACf,0BAA0B,KAC7B,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;aAC9B,EACD,OAAO,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;aACnB,EACD,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;aACjB,EACD,GAAG,EAAE;gBACD,IAAI,EAAE,QAAQ;aACjB,EACD,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB,GACJ;KACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport {BaseProps, CardBase, CardLayoutProps} from '../../schema/validators/common';\nimport {ImageProps} from '../../schema/validators/components';\nimport {ContentBase} from '../Content/schema';\n\nconst ImageCardBlockContentProps = omit(ContentBase, ['centered', 'colSizes', 'controlPosition']);\n\nexport const ImageCard = {\n 'image-card': {\n additionalProperties: false,\n required: ['image'],\n properties: {\n ...BaseProps,\n ...CardBase,\n ...CardLayoutProps,\n ...ImageCardBlockContentProps,\n image: ImageProps,\n direction: {\n type: 'string',\n enum: ['direct', 'reverse'],\n },\n margins: {\n type: 'string',\n enum: ['s', 'm'],\n },\n backgroundColor: {\n type: 'string',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n },\n },\n};\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/ImageCard/schema.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,uBAAoB;AAE/B,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAC,0CAAuC;AACpF,OAAO,EAAC,UAAU,EAAC,8CAA2C;AAC9D,OAAO,EAAC,WAAW,EAAC,6BAA0B;AAE9C,MAAM,0BAA0B,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,SAAS,GAAG;IACrB,YAAY,EAAE;QACV,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,OAAO,CAAC;QACnB,UAAU,4EACH,SAAS,GACT,QAAQ,GACR,eAAe,GACf,0BAA0B,KAC7B,KAAK,EAAE,UAAU,EACjB,SAAS,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;aAC9B,EACD,OAAO,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;aACnB,EACD,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;aACjB,EACD,GAAG,EAAE;gBACD,IAAI,EAAE,QAAQ;aACjB,EACD,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB,GACJ;KACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport {BaseProps, CardBase, CardLayoutProps} from '../../schema/validators/common';\nimport {ImageProps} from '../../schema/validators/components';\nimport {ContentBase} from '../Content/schema';\n\nconst ImageCardBlockContentProps = omit(ContentBase, ['centered', 'colSizes', 'controlPosition']);\n\nexport const ImageCard = {\n 'image-card': {\n additionalProperties: false,\n required: ['image'],\n properties: {\n ...BaseProps,\n ...CardBase,\n ...CardLayoutProps,\n ...ImageCardBlockContentProps,\n image: ImageProps,\n direction: {\n type: 'string',\n enum: ['direct', 'reverse'],\n },\n margins: {\n type: 'string',\n enum: ['s', 'm'],\n },\n backgroundColor: {\n type: 'string',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n },\n },\n};\n"]}
@@ -1,4 +1,4 @@
1
- import omit from 'lodash/omit';
1
+ import omit from "lodash/omit.js";
2
2
  import metaInfo from "../../components/MetaInfo/schema.js";
3
3
  import { BaseProps, CardLayoutProps, MediaProps } from "../../schema/validators/common.js";
4
4
  import { AnalyticsEventSchema } from "../../schema/validators/event.js";
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/LayoutItem/schema.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AAE/B,OAAO,QAAQ,4CAAyC;AACxD,OAAO,EAAC,SAAS,EAAE,eAAe,EAAE,UAAU,EAAC,0CAAuC;AACtF,OAAO,EAAC,oBAAoB,EAAC,yCAAsC;AACnE,OAAO,EAAC,WAAW,EAAC,6BAAwC;AAE5D,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC;IAC9B,UAAU,gDACH,SAAS,GACT,eAAe,KAClB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,EAC3D,aAAa,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YAChB,OAAO,EAAE,GAAG;SACf,EACD,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE;YACJ,IAAI,EAAE,SAAS;SAClB,EACD,UAAU,EAAE;YACR,IAAI,EAAE,SAAS;SAClB,EACD,eAAe,EAAE;YACb,KAAK,EAAE;gDAEI,oBAAoB,KACvB,UAAU,EAAE,QAAQ;gBAExB;oBACI,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,oBAAoB;oBAC3B,UAAU,EAAE,MAAM;iBACrB;aACJ;SACJ,GACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport metaInfo from '../../components/MetaInfo/schema';\nimport {BaseProps, CardLayoutProps, MediaProps} from '../../schema/validators/common';\nimport {AnalyticsEventSchema} from '../../schema/validators/event';\nimport {ContentBase} from '../../sub-blocks/Content/schema';\n\nexport const LayoutItem = {\n type: 'object',\n additionalProperties: false,\n required: ['content', 'media'],\n properties: {\n ...BaseProps,\n ...CardLayoutProps,\n media: MediaProps,\n content: omit(ContentBase, ['colSize', 'size', 'centered']),\n contentMargin: {\n type: 'string',\n enum: ['m', 'l'],\n default: 'm',\n },\n metaInfo: metaInfo,\n border: {\n type: 'boolean',\n },\n fullscreen: {\n type: 'boolean',\n },\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n },\n};\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/LayoutItem/schema.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,uBAAoB;AAE/B,OAAO,QAAQ,4CAAyC;AACxD,OAAO,EAAC,SAAS,EAAE,eAAe,EAAE,UAAU,EAAC,0CAAuC;AACtF,OAAO,EAAC,oBAAoB,EAAC,yCAAsC;AACnE,OAAO,EAAC,WAAW,EAAC,6BAAwC;AAE5D,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC;IAC9B,UAAU,gDACH,SAAS,GACT,eAAe,KAClB,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,EAC3D,aAAa,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;YAChB,OAAO,EAAE,GAAG;SACf,EACD,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE;YACJ,IAAI,EAAE,SAAS;SAClB,EACD,UAAU,EAAE;YACR,IAAI,EAAE,SAAS;SAClB,EACD,eAAe,EAAE;YACb,KAAK,EAAE;gDAEI,oBAAoB,KACvB,UAAU,EAAE,QAAQ;gBAExB;oBACI,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,oBAAoB;oBAC3B,UAAU,EAAE,MAAM;iBACrB;aACJ;SACJ,GACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport metaInfo from '../../components/MetaInfo/schema';\nimport {BaseProps, CardLayoutProps, MediaProps} from '../../schema/validators/common';\nimport {AnalyticsEventSchema} from '../../schema/validators/event';\nimport {ContentBase} from '../../sub-blocks/Content/schema';\n\nexport const LayoutItem = {\n type: 'object',\n additionalProperties: false,\n required: ['content', 'media'],\n properties: {\n ...BaseProps,\n ...CardLayoutProps,\n media: MediaProps,\n content: omit(ContentBase, ['colSize', 'size', 'centered']),\n contentMargin: {\n type: 'string',\n enum: ['m', 'l'],\n default: 'm',\n },\n metaInfo: metaInfo,\n border: {\n type: 'boolean',\n },\n fullscreen: {\n type: 'boolean',\n },\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n },\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import Check from '@gravity-ui/icons/Check';
2
+ import { Check } from '@gravity-ui/icons';
3
3
  import { BackgroundImage, Buttons, CardBase, ContentList, HTML, Links } from "../../components/index.js";
4
4
  import { block } from "../../utils/index.js";
5
5
  import './PriceCard.css';
@@ -1 +1 @@
1
- {"version":3,"file":"PriceCard.js","sourceRoot":"../../../../src","sources":["sub-blocks/PriceCard/PriceCard.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,yBAAyB,CAAC;AAE5C,OAAO,EAAC,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAC,kCAAyB;AAE9F,OAAO,EAAC,KAAK,EAAC,6BAAoB;AAElC,OAAO,iBAAiB,CAAC;AAEzB,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;AAE9B,MAAM,SAAS,GAAG,CAAC,KAAqB,EAAE,EAAE;IACxC,MAAM,EACF,MAAM,EACN,KAAK,EACL,KAAK,EACL,WAAW,EACX,YAAY,EACZ,KAAK,EACL,WAAW,EACX,IAAI,EACJ,OAAO,EACP,KAAK,EACL,eAAe,GAClB,GAAG,KAAK,CAAC;IACV,OAAO,CACH,KAAC,QAAQ,IAAC,SAAS,EAAE,CAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAE,MAAM,EAAE,MAAM,YAC3C,MAAC,QAAQ,CAAC,OAAO,eACb,KAAC,eAAe,IAAC,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAC,eAAe,EAAC,GAAI,EACzE,eAAK,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,KAAK,EAAC,CAAC,aACjC,eAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,aACrB,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,YAAG,KAAK,GAAQ,EAC3C,eAAK,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aACtB,0BACI,eAAM,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,YAAG,KAAK,GAAQ,EAChD,WAAW,IAAI,CACZ,gBAAM,SAAS,EAAE,CAAC,CAAC,cAAc,CAAC,mBAAK,WAAW,IAAQ,CAC7D,IACC,EACL,YAAY,IAAI,CACb,cAAK,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,YAAG,YAAY,GAAO,CAC3D,IACC,EACL,WAAW,IAAI,cAAK,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,YAAG,WAAW,GAAO,EACpE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,CACZ,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACrB,KAAC,WAAW,IACR,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4CACtB,IAAI,EAAE,KAAK;4CACX,IAAI,EAAE,IAAI;yCACb,CAAC,CAAC,EACH,IAAI,EAAC,GAAG,GACV,GACA,CACT,CAAC,CAAC,CAAC,IAAI,IACN,EACN,KAAC,OAAO,IAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,GAAG,GAAG,EAC/D,KAAC,KAAK,IAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,GAAG,GAAG,IACrD,KA/BY,SAAS,CAgCZ,GACZ,CACd,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC","sourcesContent":["import Check from '@gravity-ui/icons/Check';\n\nimport {BackgroundImage, Buttons, CardBase, ContentList, HTML, Links} from '../../components';\nimport {PriceCardProps} from '../../models';\nimport {block} from '../../utils';\n\nimport './PriceCard.scss';\n\nconst b = block('price-card');\n\nconst PriceCard = (props: PriceCardProps) => {\n const {\n border,\n title,\n price,\n pricePeriod,\n priceDetails,\n theme,\n description,\n list,\n buttons,\n links,\n backgroundColor,\n } = props;\n return (\n <CardBase className={b({theme})} border={border}>\n <CardBase.Content key=\"content\">\n <BackgroundImage className={b('background')} style={{backgroundColor}} />\n <div className={b('content', {theme})}>\n <div className={b('info')}>\n <HTML className={b('title')}>{title}</HTML>\n <div className={b('price')}>\n <div>\n <span className={b('price-value')}>{price}</span>\n {pricePeriod && (\n <span className={b('price-period')}>/ {pricePeriod}</span>\n )}\n </div>\n {priceDetails && (\n <div className={b('price-details')}>{priceDetails}</div>\n )}\n </div>\n {description && <div className={b('description')}>{description}</div>}\n {list?.length ? (\n <div className={b('list')}>\n <ContentList\n list={list.map((item) => ({\n icon: Check,\n text: item,\n }))}\n size=\"s\"\n />\n </div>\n ) : null}\n </div>\n <Buttons className={b('buttons')} buttons={buttons} size=\"s\" />\n <Links className={b('links')} links={links} size=\"s\" />\n </div>\n </CardBase.Content>\n </CardBase>\n );\n};\n\nexport default PriceCard;\n"]}
1
+ {"version":3,"file":"PriceCard.js","sourceRoot":"../../../../src","sources":["sub-blocks/PriceCard/PriceCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAC,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAC,kCAAyB;AAE9F,OAAO,EAAC,KAAK,EAAC,6BAAoB;AAElC,OAAO,iBAAiB,CAAC;AAEzB,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;AAE9B,MAAM,SAAS,GAAG,CAAC,KAAqB,EAAE,EAAE;IACxC,MAAM,EACF,MAAM,EACN,KAAK,EACL,KAAK,EACL,WAAW,EACX,YAAY,EACZ,KAAK,EACL,WAAW,EACX,IAAI,EACJ,OAAO,EACP,KAAK,EACL,eAAe,GAClB,GAAG,KAAK,CAAC;IACV,OAAO,CACH,KAAC,QAAQ,IAAC,SAAS,EAAE,CAAC,CAAC,EAAC,KAAK,EAAC,CAAC,EAAE,MAAM,EAAE,MAAM,YAC3C,MAAC,QAAQ,CAAC,OAAO,eACb,KAAC,eAAe,IAAC,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAC,eAAe,EAAC,GAAI,EACzE,eAAK,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,KAAK,EAAC,CAAC,aACjC,eAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,aACrB,KAAC,IAAI,IAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,YAAG,KAAK,GAAQ,EAC3C,eAAK,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aACtB,0BACI,eAAM,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,YAAG,KAAK,GAAQ,EAChD,WAAW,IAAI,CACZ,gBAAM,SAAS,EAAE,CAAC,CAAC,cAAc,CAAC,mBAAK,WAAW,IAAQ,CAC7D,IACC,EACL,YAAY,IAAI,CACb,cAAK,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,YAAG,YAAY,GAAO,CAC3D,IACC,EACL,WAAW,IAAI,cAAK,SAAS,EAAE,CAAC,CAAC,aAAa,CAAC,YAAG,WAAW,GAAO,EACpE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAC,CAAC,CAAC,CACZ,cAAK,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,YACrB,KAAC,WAAW,IACR,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4CACtB,IAAI,EAAE,KAAK;4CACX,IAAI,EAAE,IAAI;yCACb,CAAC,CAAC,EACH,IAAI,EAAC,GAAG,GACV,GACA,CACT,CAAC,CAAC,CAAC,IAAI,IACN,EACN,KAAC,OAAO,IAAC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,GAAG,GAAG,EAC/D,KAAC,KAAK,IAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,GAAG,GAAG,IACrD,KA/BY,SAAS,CAgCZ,GACZ,CACd,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC","sourcesContent":["import {Check} from '@gravity-ui/icons';\n\nimport {BackgroundImage, Buttons, CardBase, ContentList, HTML, Links} from '../../components';\nimport {PriceCardProps} from '../../models';\nimport {block} from '../../utils';\n\nimport './PriceCard.scss';\n\nconst b = block('price-card');\n\nconst PriceCard = (props: PriceCardProps) => {\n const {\n border,\n title,\n price,\n pricePeriod,\n priceDetails,\n theme,\n description,\n list,\n buttons,\n links,\n backgroundColor,\n } = props;\n return (\n <CardBase className={b({theme})} border={border}>\n <CardBase.Content key=\"content\">\n <BackgroundImage className={b('background')} style={{backgroundColor}} />\n <div className={b('content', {theme})}>\n <div className={b('info')}>\n <HTML className={b('title')}>{title}</HTML>\n <div className={b('price')}>\n <div>\n <span className={b('price-value')}>{price}</span>\n {pricePeriod && (\n <span className={b('price-period')}>/ {pricePeriod}</span>\n )}\n </div>\n {priceDetails && (\n <div className={b('price-details')}>{priceDetails}</div>\n )}\n </div>\n {description && <div className={b('description')}>{description}</div>}\n {list?.length ? (\n <div className={b('list')}>\n <ContentList\n list={list.map((item) => ({\n icon: Check,\n text: item,\n }))}\n size=\"s\"\n />\n </div>\n ) : null}\n </div>\n <Buttons className={b('buttons')} buttons={buttons} size=\"s\" />\n <Links className={b('links')} links={links} size=\"s\" />\n </div>\n </CardBase.Content>\n </CardBase>\n );\n};\n\nexport default PriceCard;\n"]}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import * as React from 'react';
3
- import chunk from 'lodash/chunk';
3
+ import chunk from "lodash/chunk.js";
4
4
  import { CardBase } from "../../../components/index.js";
5
5
  import { BREAKPOINTS } from "../../../constants.js";
6
6
  import { Col, Grid, GridColumnSize, Row } from "../../../grid/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"CombinedPriceDetailed.js","sourceRoot":"../../../../../src","sources":["sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport chunk from 'lodash/chunk';\n\nimport {CardBase} from '../../../components';\nimport {BREAKPOINTS} from '../../../constants';\nimport {Col, Grid, GridColumnSize, Row} from '../../../grid';\nimport {\n AnalyticsEventsBase,\n CardBorder,\n PriceDescriptionProps,\n PriceDetailsListProps,\n PriceDetailsSettingsProps,\n PriceItemProps,\n} from '../../../models';\nimport {block} from '../../../utils';\n\nimport './CombinedPriceDetailed.scss';\n\nconst b = block('combined-price-detailed-block');\n\nconst CombinedPricesGroupSize = {\n [GridColumnSize.Sm]: 1,\n [GridColumnSize.Md]: 2,\n [GridColumnSize.Lg]: 3,\n};\n\ninterface CombinedPriceDetailedProps extends AnalyticsEventsBase {\n items: PriceItemProps[];\n numberGroupItems: number;\n useMixedView?: boolean;\n getDescriptionComponent: (priceDescription: PriceDescriptionProps) => JSX.Element;\n getDetailsComponent: (\n priceDetails?: PriceDetailsSettingsProps[] | PriceDetailsListProps[],\n ) => JSX.Element;\n border?: CardBorder;\n}\n\nconst CombinedPriceDetailed = (props: CombinedPriceDetailedProps) => {\n const {\n items,\n numberGroupItems,\n border,\n useMixedView,\n getDescriptionComponent,\n getDetailsComponent,\n analyticsEvents,\n } = props;\n\n const [groupItemsSize, setGroupItemsSize] = React.useState<number>(numberGroupItems);\n\n const updateGroupItemsSize = React.useCallback(\n (windowWidth: number) => {\n if (windowWidth >= BREAKPOINTS.lg) {\n setGroupItemsSize(numberGroupItems);\n } else if (BREAKPOINTS.lg > windowWidth && windowWidth >= BREAKPOINTS.md) {\n setGroupItemsSize(CombinedPricesGroupSize[GridColumnSize.Lg]);\n } else if (BREAKPOINTS.md > windowWidth && windowWidth >= BREAKPOINTS.sm) {\n setGroupItemsSize(CombinedPricesGroupSize[GridColumnSize.Md]);\n } else {\n setGroupItemsSize(CombinedPricesGroupSize[GridColumnSize.Sm]);\n }\n },\n [numberGroupItems],\n );\n\n React.useEffect(() => {\n function handleResize() {\n updateGroupItemsSize(window.innerWidth);\n }\n\n handleResize();\n\n window.addEventListener('resize', handleResize, {passive: true});\n return () => window.removeEventListener('resize', handleResize);\n }, [updateGroupItemsSize]);\n\n const getPrice = (groupPrices: PriceItemProps[]) => {\n const descriptionComponents: JSX.Element[] = Array(groupItemsSize);\n const detailsComponents: JSX.Element[] = Array(groupItemsSize);\n\n for (let id = 0; id < groupItemsSize; id++) {\n const price = groupPrices[id];\n\n descriptionComponents[id] = (\n <Col key={`card_${id}`}>{price && getDescriptionComponent(price)}</Col>\n );\n detailsComponents[id] = (\n <Col key={`details_${id}`} className={price ? '' : b('empty-column')}>\n {price && getDetailsComponent(price.items)}\n </Col>\n );\n }\n\n return (\n <React.Fragment>\n <div>{descriptionComponents}</div>\n <div className={b('description', {delimiter: useMixedView})}>\n {detailsComponents}\n </div>\n </React.Fragment>\n );\n };\n\n const chunkedItems = chunk(items, groupItemsSize);\n\n return (\n <CardBase className={b()} border={border} analyticsEvents={analyticsEvents}>\n <CardBase.Content>\n <Grid>\n {chunkedItems.map((item: PriceItemProps[], id) => {\n return (\n <Row key={id} className={b('row')}>\n {getPrice(item)}\n </Row>\n );\n })}\n </Grid>\n </CardBase.Content>\n </CardBase>\n );\n};\n\nexport default CombinedPriceDetailed;\n"]}
1
+ {"version":3,"file":"CombinedPriceDetailed.js","sourceRoot":"../../../../../src","sources":["sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport chunk from 'lodash/chunk';\n\nimport {CardBase} from '../../../components';\nimport {BREAKPOINTS} from '../../../constants';\nimport {Col, Grid, GridColumnSize, Row} from '../../../grid';\nimport {\n AnalyticsEventsBase,\n CardBorder,\n PriceDescriptionProps,\n PriceDetailsListProps,\n PriceDetailsSettingsProps,\n PriceItemProps,\n} from '../../../models';\nimport {block} from '../../../utils';\n\nimport './CombinedPriceDetailed.scss';\n\nconst b = block('combined-price-detailed-block');\n\nconst CombinedPricesGroupSize = {\n [GridColumnSize.Sm]: 1,\n [GridColumnSize.Md]: 2,\n [GridColumnSize.Lg]: 3,\n};\n\ninterface CombinedPriceDetailedProps extends AnalyticsEventsBase {\n items: PriceItemProps[];\n numberGroupItems: number;\n useMixedView?: boolean;\n getDescriptionComponent: (priceDescription: PriceDescriptionProps) => JSX.Element;\n getDetailsComponent: (\n priceDetails?: PriceDetailsSettingsProps[] | PriceDetailsListProps[],\n ) => JSX.Element;\n border?: CardBorder;\n}\n\nconst CombinedPriceDetailed = (props: CombinedPriceDetailedProps) => {\n const {\n items,\n numberGroupItems,\n border,\n useMixedView,\n getDescriptionComponent,\n getDetailsComponent,\n analyticsEvents,\n } = props;\n\n const [groupItemsSize, setGroupItemsSize] = React.useState<number>(numberGroupItems);\n\n const updateGroupItemsSize = React.useCallback(\n (windowWidth: number) => {\n if (windowWidth >= BREAKPOINTS.lg) {\n setGroupItemsSize(numberGroupItems);\n } else if (BREAKPOINTS.lg > windowWidth && windowWidth >= BREAKPOINTS.md) {\n setGroupItemsSize(CombinedPricesGroupSize[GridColumnSize.Lg]);\n } else if (BREAKPOINTS.md > windowWidth && windowWidth >= BREAKPOINTS.sm) {\n setGroupItemsSize(CombinedPricesGroupSize[GridColumnSize.Md]);\n } else {\n setGroupItemsSize(CombinedPricesGroupSize[GridColumnSize.Sm]);\n }\n },\n [numberGroupItems],\n );\n\n React.useEffect(() => {\n function handleResize() {\n updateGroupItemsSize(window.innerWidth);\n }\n\n handleResize();\n\n window.addEventListener('resize', handleResize, {passive: true});\n return () => window.removeEventListener('resize', handleResize);\n }, [updateGroupItemsSize]);\n\n const getPrice = (groupPrices: PriceItemProps[]) => {\n const descriptionComponents: JSX.Element[] = Array(groupItemsSize);\n const detailsComponents: JSX.Element[] = Array(groupItemsSize);\n\n for (let id = 0; id < groupItemsSize; id++) {\n const price = groupPrices[id];\n\n descriptionComponents[id] = (\n <Col key={`card_${id}`}>{price && getDescriptionComponent(price)}</Col>\n );\n detailsComponents[id] = (\n <Col key={`details_${id}`} className={price ? '' : b('empty-column')}>\n {price && getDetailsComponent(price.items)}\n </Col>\n );\n }\n\n return (\n <React.Fragment>\n <div>{descriptionComponents}</div>\n <div className={b('description', {delimiter: useMixedView})}>\n {detailsComponents}\n </div>\n </React.Fragment>\n );\n };\n\n const chunkedItems = chunk(items, groupItemsSize);\n\n return (\n <CardBase className={b()} border={border} analyticsEvents={analyticsEvents}>\n <CardBase.Content>\n <Grid>\n {chunkedItems.map((item: PriceItemProps[], id) => {\n return (\n <Row key={id} className={b('row')}>\n {getPrice(item)}\n </Row>\n );\n })}\n </Grid>\n </CardBase.Content>\n </CardBase>\n );\n};\n\nexport default CombinedPriceDetailed;\n"]}
@@ -17,6 +17,7 @@ const LabelColorsMapping = {
17
17
  const LabelSizeMap = {
18
18
  l: 's',
19
19
  m: 's',
20
+ sm: 's',
20
21
  s: 'xs',
21
22
  xs: 'xs',
22
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"PriceDescription.js","sourceRoot":"../../../../../src","sources":["sub-blocks/PriceDetailed/PriceDescription/PriceDescription.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Label, LabelProps} from '@gravity-ui/uikit';\n\nimport {YFMWrapper} from '../../../components';\nimport {StylesContext} from '../../../context/stylesContext';\nimport {\n PriceDescriptionColor,\n PriceDescriptionProps,\n PriceLabelColor,\n TextSize,\n} from '../../../models';\nimport {block} from '../../../utils';\n\nimport './PriceDescription.scss';\n\nconst b = block('price-description');\n\ninterface PriceDescriptionExtendProps extends PriceDescriptionProps {\n titleSize?: TextSize;\n descriptionSize?: TextSize;\n colorTitle?: PriceDescriptionColor;\n labelsDefaultText?: Record<PriceLabelColor, string>;\n className?: string;\n}\n\nconst LabelColorsMapping = {\n [PriceLabelColor.BLUE]: 'info',\n [PriceLabelColor.GREEN]: 'success',\n [PriceLabelColor.YELLOW]: 'warning',\n [PriceLabelColor.PURPLE]: 'normal',\n [PriceLabelColor.RED]: 'dnager',\n};\n\nconst LabelSizeMap: Record<TextSize, LabelProps['size']> = {\n l: 's',\n m: 's',\n s: 'xs',\n xs: 'xs',\n};\n\nconst PriceDescription = (props: PriceDescriptionExtendProps) => {\n const {\n title,\n detailedTitle = '',\n description,\n titleSize = 'l',\n descriptionSize = 'm',\n colorTitle = 'cornflower',\n label,\n labelsDefaultText,\n className,\n } = props;\n\n const descriptionRef = React.useRef<HTMLDivElement>(null);\n const {pricesDetailedDescriptionHeight, setStyles} = React.useContext(StylesContext);\n\n const setDescriptionHeight = React.useCallback(() => {\n if (!descriptionRef || !descriptionRef.current) {\n return;\n }\n\n const descriptionChildren = descriptionRef.current?.children;\n\n if (!descriptionChildren) {\n return;\n }\n\n const childrenHeight = [...descriptionChildren].reduce(\n (result: number, element: Element) => result + element.clientHeight,\n 0,\n );\n\n if (\n pricesDetailedDescriptionHeight === undefined ||\n Number(pricesDetailedDescriptionHeight) < childrenHeight\n ) {\n setStyles({pricesDetailedDescriptionHeight: childrenHeight.toString()});\n } else if (childrenHeight < Number(pricesDetailedDescriptionHeight)) {\n descriptionRef.current.style.height = `${pricesDetailedDescriptionHeight}px`;\n }\n }, [pricesDetailedDescriptionHeight, setStyles]);\n\n React.useEffect(() => {\n setDescriptionHeight();\n\n window.addEventListener('resize', setDescriptionHeight, {passive: true});\n return () => window.removeEventListener('resize', setDescriptionHeight);\n }, [setDescriptionHeight]);\n\n const labelElement = React.useMemo(() => {\n if (!label) {\n return null;\n }\n\n const labelTitle = label.text || (labelsDefaultText && labelsDefaultText[label.color]);\n const labelColor = (LabelColorsMapping[label.color] || 'unknown') as LabelProps['theme'];\n const labelSize = LabelSizeMap[label.size || descriptionSize];\n\n return (\n <Label className={b('label', {size: labelSize})} theme={labelColor} size={labelSize}>\n {labelTitle}\n </Label>\n );\n }, [descriptionSize, label, labelsDefaultText]);\n\n const titleElement = React.useMemo(() => {\n return (\n <div className={b('title', {size: titleSize})}>\n <div className={b('main-title', {color: colorTitle})}>{title}</div>\n <div className={b('detailed-title', {size: descriptionSize})}>{detailedTitle}</div>\n </div>\n );\n }, [colorTitle, descriptionSize, detailedTitle, title, titleSize]);\n\n return (\n <div className={b(null, className)} ref={descriptionRef}>\n {labelElement}\n {titleElement}\n <div className={b('description', {size: descriptionSize})}>\n <YFMWrapper content={description} modifiers={{constructor: true}} />\n </div>\n </div>\n );\n};\n\nexport default PriceDescription;\n"]}
1
+ {"version":3,"file":"PriceDescription.js","sourceRoot":"../../../../../src","sources":["sub-blocks/PriceDetailed/PriceDescription/PriceDescription.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Label, LabelProps} from '@gravity-ui/uikit';\n\nimport {YFMWrapper} from '../../../components';\nimport {StylesContext} from '../../../context/stylesContext';\nimport {\n PriceDescriptionColor,\n PriceDescriptionProps,\n PriceLabelColor,\n TextSize,\n} from '../../../models';\nimport {block} from '../../../utils';\n\nimport './PriceDescription.scss';\n\nconst b = block('price-description');\n\ninterface PriceDescriptionExtendProps extends PriceDescriptionProps {\n titleSize?: TextSize;\n descriptionSize?: TextSize;\n colorTitle?: PriceDescriptionColor;\n labelsDefaultText?: Record<PriceLabelColor, string>;\n className?: string;\n}\n\nconst LabelColorsMapping = {\n [PriceLabelColor.BLUE]: 'info',\n [PriceLabelColor.GREEN]: 'success',\n [PriceLabelColor.YELLOW]: 'warning',\n [PriceLabelColor.PURPLE]: 'normal',\n [PriceLabelColor.RED]: 'dnager',\n};\n\nconst LabelSizeMap: Record<TextSize, LabelProps['size']> = {\n l: 's',\n m: 's',\n sm: 's',\n s: 'xs',\n xs: 'xs',\n};\n\nconst PriceDescription = (props: PriceDescriptionExtendProps) => {\n const {\n title,\n detailedTitle = '',\n description,\n titleSize = 'l',\n descriptionSize = 'm',\n colorTitle = 'cornflower',\n label,\n labelsDefaultText,\n className,\n } = props;\n\n const descriptionRef = React.useRef<HTMLDivElement>(null);\n const {pricesDetailedDescriptionHeight, setStyles} = React.useContext(StylesContext);\n\n const setDescriptionHeight = React.useCallback(() => {\n if (!descriptionRef || !descriptionRef.current) {\n return;\n }\n\n const descriptionChildren = descriptionRef.current?.children;\n\n if (!descriptionChildren) {\n return;\n }\n\n const childrenHeight = [...descriptionChildren].reduce(\n (result: number, element: Element) => result + element.clientHeight,\n 0,\n );\n\n if (\n pricesDetailedDescriptionHeight === undefined ||\n Number(pricesDetailedDescriptionHeight) < childrenHeight\n ) {\n setStyles({pricesDetailedDescriptionHeight: childrenHeight.toString()});\n } else if (childrenHeight < Number(pricesDetailedDescriptionHeight)) {\n descriptionRef.current.style.height = `${pricesDetailedDescriptionHeight}px`;\n }\n }, [pricesDetailedDescriptionHeight, setStyles]);\n\n React.useEffect(() => {\n setDescriptionHeight();\n\n window.addEventListener('resize', setDescriptionHeight, {passive: true});\n return () => window.removeEventListener('resize', setDescriptionHeight);\n }, [setDescriptionHeight]);\n\n const labelElement = React.useMemo(() => {\n if (!label) {\n return null;\n }\n\n const labelTitle = label.text || (labelsDefaultText && labelsDefaultText[label.color]);\n const labelColor = (LabelColorsMapping[label.color] || 'unknown') as LabelProps['theme'];\n const labelSize = LabelSizeMap[label.size || descriptionSize];\n\n return (\n <Label className={b('label', {size: labelSize})} theme={labelColor} size={labelSize}>\n {labelTitle}\n </Label>\n );\n }, [descriptionSize, label, labelsDefaultText]);\n\n const titleElement = React.useMemo(() => {\n return (\n <div className={b('title', {size: titleSize})}>\n <div className={b('main-title', {color: colorTitle})}>{title}</div>\n <div className={b('detailed-title', {size: descriptionSize})}>{detailedTitle}</div>\n </div>\n );\n }, [colorTitle, descriptionSize, detailedTitle, title, titleSize]);\n\n return (\n <div className={b(null, className)} ref={descriptionRef}>\n {labelElement}\n {titleElement}\n <div className={b('description', {size: descriptionSize})}>\n <YFMWrapper content={description} modifiers={{constructor: true}} />\n </div>\n </div>\n );\n};\n\nexport default PriceDescription;\n"]}
@@ -1,5 +1,5 @@
1
- import cloneDeep from 'lodash/cloneDeep';
2
- import shuffle from 'lodash/shuffle';
1
+ import cloneDeep from "lodash/cloneDeep.js";
2
+ import shuffle from "lodash/shuffle.js";
3
3
  import { config } from "./config.js";
4
4
  import { filterContent } from "./filter.js";
5
5
  function transformBlocks(blocks, lang, customConfig = {}, options = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"transformers.js","sourceRoot":"../../../src","sources":["text-transform/transformers.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\nimport cloneDeep from 'lodash/cloneDeep';\nimport shuffle from 'lodash/shuffle';\n\nimport {ConstructorBlock, PageContent} from '../models/constructor';\n\nimport {Transformer} from './common';\nimport {BlocksConfig, config} from './config';\nimport {FilterableContent, filterContent} from './filter';\nimport {Lang} from './types';\n\nexport type ContentVariables = Record<string, string>;\nexport type ContentTransformerProps = {\n content: {\n blocks?: ConstructorBlock[];\n };\n options: {\n lang: Lang;\n customConfig?: {};\n vars?: ContentVariables;\n plugins?: MarkdownItPluginCb[];\n };\n};\n\nfunction transformBlocks(\n blocks: ConstructorBlock[],\n lang: Lang,\n customConfig = {},\n options: {plugins?: MarkdownItPluginCb[]} = {},\n) {\n const fullConfig = {...config, ...customConfig};\n const {plugins = []} = options;\n\n const clonedBlocks = cloneDeep(blocks);\n\n return clonedBlocks.map((block) => transformBlock(lang, fullConfig, block, plugins));\n}\n\nfunction transformBlock(\n lang: Lang,\n blocksConfig: BlocksConfig,\n block: ConstructorBlock,\n plugins: MarkdownItPluginCb[],\n) {\n const blockConfig = blocksConfig[block.type];\n\n if (block) {\n if ('randomOrder' in block && block.randomOrder && 'children' in block && block.children) {\n block.children = shuffle(block.children as ConstructorBlock[]);\n }\n }\n\n if (blockConfig) {\n const configs = Array.isArray(blockConfig) ? blockConfig : [blockConfig];\n\n configs.forEach((transformConfig) => {\n const {fields, transformer: transformerRaw, parser} = transformConfig;\n const transformer: Transformer = (content) =>\n // eslint-disable-next-line no-useless-call\n transformerRaw.call(null, lang, content, {plugins});\n\n if (fields) {\n (fields as (keyof typeof block)[]).forEach((field) => {\n if (block[field]) {\n if (parser) {\n block[field] = parser(transformer, block[field]);\n } else if (typeof block[field] === 'string') {\n block[field] = transformer(block[field] as string);\n }\n }\n });\n } else if (parser) {\n parser(transformer, block);\n }\n });\n }\n\n if ('children' in block && block.children) {\n block.children = transformBlocks(block.children as ConstructorBlock[], lang, blocksConfig, {\n plugins,\n });\n }\n\n return block;\n}\n\nexport const contentTransformer = ({content, options}: ContentTransformerProps) => {\n const {lang, customConfig = {}, vars, plugins = []} = options;\n const {blocks = []} = (\n vars ? filterContent(content as FilterableContent, vars) : content\n ) as PageContent;\n\n const transformedBlocks = transformBlocks(blocks, lang, customConfig, {\n plugins,\n });\n\n return {\n blocks: transformedBlocks,\n };\n};\n"]}
1
+ {"version":3,"file":"transformers.js","sourceRoot":"../../../src","sources":["text-transform/transformers.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\nimport cloneDeep from 'lodash/cloneDeep';\nimport shuffle from 'lodash/shuffle';\n\nimport {ConstructorBlock, PageContent} from '../models/constructor';\n\nimport {Transformer} from './common';\nimport {BlocksConfig, config} from './config';\nimport {FilterableContent, filterContent} from './filter';\nimport {Lang} from './types';\n\nexport type ContentVariables = Record<string, string>;\nexport type ContentTransformerProps = {\n content: {\n blocks?: ConstructorBlock[];\n };\n options: {\n lang: Lang;\n customConfig?: {};\n vars?: ContentVariables;\n plugins?: MarkdownItPluginCb[];\n };\n};\n\nfunction transformBlocks(\n blocks: ConstructorBlock[],\n lang: Lang,\n customConfig = {},\n options: {plugins?: MarkdownItPluginCb[]} = {},\n) {\n const fullConfig = {...config, ...customConfig};\n const {plugins = []} = options;\n\n const clonedBlocks = cloneDeep(blocks);\n\n return clonedBlocks.map((block) => transformBlock(lang, fullConfig, block, plugins));\n}\n\nfunction transformBlock(\n lang: Lang,\n blocksConfig: BlocksConfig,\n block: ConstructorBlock,\n plugins: MarkdownItPluginCb[],\n) {\n const blockConfig = blocksConfig[block.type];\n\n if (block) {\n if ('randomOrder' in block && block.randomOrder && 'children' in block && block.children) {\n block.children = shuffle(block.children as ConstructorBlock[]);\n }\n }\n\n if (blockConfig) {\n const configs = Array.isArray(blockConfig) ? blockConfig : [blockConfig];\n\n configs.forEach((transformConfig) => {\n const {fields, transformer: transformerRaw, parser} = transformConfig;\n const transformer: Transformer = (content) =>\n // eslint-disable-next-line no-useless-call\n transformerRaw.call(null, lang, content, {plugins});\n\n if (fields) {\n (fields as (keyof typeof block)[]).forEach((field) => {\n if (block[field]) {\n if (parser) {\n block[field] = parser(transformer, block[field]);\n } else if (typeof block[field] === 'string') {\n block[field] = transformer(block[field] as string);\n }\n }\n });\n } else if (parser) {\n parser(transformer, block);\n }\n });\n }\n\n if ('children' in block && block.children) {\n block.children = transformBlocks(block.children as ConstructorBlock[], lang, blocksConfig, {\n plugins,\n });\n }\n\n return block;\n}\n\nexport const contentTransformer = ({content, options}: ContentTransformerProps) => {\n const {lang, customConfig = {}, vars, plugins = []} = options;\n const {blocks = []} = (\n vars ? filterContent(content as FilterableContent, vars) : content\n ) as PageContent;\n\n const transformedBlocks = transformBlocks(blocks, lang, customConfig, {\n plugins,\n });\n\n return {\n blocks: transformedBlocks,\n };\n};\n"]}
@@ -1,5 +1,5 @@
1
- import camelCase from 'lodash/camelCase';
2
- import flatten from 'lodash/flatten';
1
+ import camelCase from "lodash/camelCase.js";
2
+ import flatten from "lodash/flatten.js";
3
3
  import { PCShareSocialNetwork } from "../models/index.js";
4
4
  const BLOCK_ELEMENTS = [
5
5
  'div',
@@ -47,6 +47,7 @@ export function getHeaderTag(size) {
47
47
  return 'h3';
48
48
  case 'xs':
49
49
  return 'h4';
50
+ case 'sm':
50
51
  case 'm':
51
52
  default:
52
53
  return 'h2';
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.js","sourceRoot":"../../../src","sources":["utils/blocks.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAiC,oBAAoB,EAAW,2BAAkB;AAEzF,MAAM,cAAc,GAAG;IACnB,KAAK;IACL,GAAG;IACH,QAAQ;IACR,SAAS;IACT,SAAS;IACT,OAAO;IACP,YAAY;IACZ,QAAQ;IACR,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,IAAI;IACJ,MAAM;IACN,KAAK;IACL,SAAS;IACT,OAAO;IACP,KAAK;IACL,QAAQ;IACR,MAAM;IACN,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,IAAI;CACP,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;AAEpE,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE7F,MAAM,UAAU,YAAY,CAAC,IAAc;IACvC,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,GAAG;YACJ,OAAO,IAAI,CAAC;QAChB,KAAK,GAAG;YACJ,OAAO,IAAI,CAAC;QAChB,KAAK,IAAI;YACL,OAAO,IAAI,CAAC;QAChB,KAAK,GAAG,CAAC;QACT;YACI,OAAO,IAAI,CAAC;IACpB,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;IACpD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAuB,EAAE,KAAa;IAC9D,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA6B,EAAE,eAA6B,EAAE,EAAE,EAAE;IAC7F,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAwB,EAAE,EAAE;QACrD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA6B,EAAE,eAA6B,EAAE,EAAE,EAAE;IAC7F,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAwB,EAAE,EAAE;QACrD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC,EAAE,EAAc,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,SAA6C,EAAE,EAAE,EAAE;IAC3F,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAE5B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;QAC7C,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAA0B,EAAE,mBAA6B,EAAE,EAAE,EAAE;IAC5F,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAA0B,EAAE,mBAA6B,EAAE,EAAE,EAAE;IAC1F,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CACxB,GAAW,EACX,IAA0B,EAC1B,KAAc,EACd,IAAa,EACf,EAAE;IACA,+CAA+C;IAC/C,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,oBAAoB,CAAC,QAAQ;YAC9B,OAAO,qBAAqB,CAAC,wBAAwB,EAAE,EAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC;QAC/E,KAAK,oBAAoB,CAAC,QAAQ;YAC9B,OAAO,qBAAqB,CAAC,iCAAiC,EAAE,EAAC,CAAC,EAAE,GAAG,EAAC,CAAC,CAAC;QAC9E,KAAK,oBAAoB,CAAC,OAAO;YAC7B,OAAO,qBAAqB,CAAC,kCAAkC,EAAE;gBAC7D,GAAG;gBACH,IAAI,EAAE,KAAK;aACd,CAAC,CAAC;QACP,KAAK,oBAAoB,CAAC,EAAE;YACxB,OAAO,qBAAqB,CAAC,0BAA0B,EAAE;gBACrD,GAAG;gBACH,KAAK;gBACL,OAAO,EAAE,IAAI;aAChB,CAAC,CAAC;QACP,KAAK,oBAAoB,CAAC,QAAQ;YAC9B,OAAO,qBAAqB,CAAC,iDAAiD,EAAE;gBAC5E,GAAG;aACN,CAAC,CAAC;QACP;YACI,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;YAE7C,OAAO,SAAS,CAAC;IACzB,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAW,EAAE,GAAG,UAAsC,EAAE,EAAE;IACtF,MAAM,UAAU,GAA2B,EAAE,CAAC;IAE9C,IAAI,EAAE,EAAE,CAAC;QACL,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAE5D,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACjB,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC,CAAC","sourcesContent":["import camelCase from 'lodash/camelCase';\nimport flatten from 'lodash/flatten';\n\nimport {ConstructorBlock, CustomConfig, PCShareSocialNetwork, TextSize} from '../models';\n\nconst BLOCK_ELEMENTS = [\n 'div',\n 'p',\n 'h[1-6]',\n 'address',\n 'article',\n 'aside',\n 'blockquote',\n 'canvas',\n 'dd',\n 'dl',\n 'dt',\n 'fieldset',\n 'figcaption',\n 'footer',\n 'header',\n 'hr',\n 'main',\n 'nav',\n 'section',\n 'video',\n 'pre',\n 'figure',\n 'form',\n 'pre',\n 'ol',\n 'ul',\n 'li',\n 'table',\n 'thead',\n 'tbody',\n 'tfoot',\n 'tr',\n 'th',\n 'td',\n];\n\nconst BLOCK_ELEMENTS_REGEX = `<(${BLOCK_ELEMENTS.join('|')})[^>]*>`;\n\nconst QA_ATTRIBUTES_KEYS = ['container', 'content', 'wrapper', 'image', 'button', 'animate'];\n\nexport function getHeaderTag(size: TextSize) {\n switch (size) {\n case 'l':\n return 'h1';\n case 's':\n return 'h3';\n case 'xs':\n return 'h4';\n case 'm':\n default:\n return 'h2';\n }\n}\n\nexport function hasBlockTag(content: string): boolean {\n const regex = new RegExp(BLOCK_ELEMENTS_REGEX, 'g');\n return regex.test(content);\n}\n\nexport function getBlockKey(block: ConstructorBlock, index: number) {\n return `${block.type}-${index}`;\n}\n\nexport const getCustomItems = (types: (keyof CustomConfig)[], customBlocks: CustomConfig = {}) => {\n return types.reduce((result, type: keyof CustomConfig) => {\n return Object.assign(result, customBlocks[type] || {});\n }, {});\n};\n\nexport const getCustomTypes = (types: (keyof CustomConfig)[], customBlocks: CustomConfig = {}) => {\n return types.reduce((result, type: keyof CustomConfig) => {\n return result.concat(Object.keys(customBlocks[type] || {}));\n }, [] as string[]);\n};\n\nconst getShareUrlWithParams = (url: string, params: Record<string, string | undefined> = {}) => {\n const result = new URL(url);\n\n Object.entries(params).forEach(([name, value]) => {\n if (value) {\n result.searchParams.set(name, value);\n }\n });\n\n return result.toString();\n};\n\nexport const getOrderedBlocks = (blocks: ConstructorBlock[], headerBlockTypes: string[] = []) => {\n return blocks.filter(({type}) => !headerBlockTypes.includes(type));\n};\n\nexport const getHeaderBlock = (blocks: ConstructorBlock[], headerBlockTypes: string[] = []) => {\n return blocks.find(({type}) => headerBlockTypes.includes(type));\n};\n\nexport const getShareLink = (\n url: string,\n type: PCShareSocialNetwork,\n title?: string,\n text?: string,\n) => {\n // https://github.com/bradvin/social-share-urls\n switch (type) {\n case PCShareSocialNetwork.Telegram:\n return getShareUrlWithParams('https://t.me/share/url', {url, text: title});\n case PCShareSocialNetwork.Facebook:\n return getShareUrlWithParams('https://facebook.com/sharer.php', {u: url});\n case PCShareSocialNetwork.Twitter:\n return getShareUrlWithParams('https://twitter.com/intent/tweet', {\n url,\n text: title,\n });\n case PCShareSocialNetwork.Vk:\n return getShareUrlWithParams('https://vk.com/share.php', {\n url,\n title,\n comment: text,\n });\n case PCShareSocialNetwork.LinkedIn:\n return getShareUrlWithParams('https://www.linkedin.com/sharing/share-offsite/', {\n url,\n });\n default:\n // eslint-disable-next-line no-console\n console.error(`Unknown share type: ${type}`);\n\n return undefined;\n }\n};\n\nexport const getQaAttrubutes = (qa?: string, ...customKeys: (string | Array<string>)[]) => {\n const attributes: Record<string, string> = {};\n\n if (qa) {\n const keys = QA_ATTRIBUTES_KEYS.concat(flatten(customKeys));\n\n keys.forEach((key) => {\n attributes[camelCase(key)] = `${qa}-${key}`;\n });\n\n attributes.default = qa;\n }\n\n return attributes;\n};\n"]}
1
+ {"version":3,"file":"blocks.js","sourceRoot":"../../../src","sources":["utils/blocks.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,4BAAyB;AACzC,OAAO,OAAO,0BAAuB;AAErC,OAAO,EAAiC,oBAAoB,EAAW,2BAAkB;AAEzF,MAAM,cAAc,GAAG;IACnB,KAAK;IACL,GAAG;IACH,QAAQ;IACR,SAAS;IACT,SAAS;IACT,OAAO;IACP,YAAY;IACZ,QAAQ;IACR,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,IAAI;IACJ,MAAM;IACN,KAAK;IACL,SAAS;IACT,OAAO;IACP,KAAK;IACL,QAAQ;IACR,MAAM;IACN,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,OAAO;IACP,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,IAAI;CACP,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;AAEpE,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE7F,MAAM,UAAU,YAAY,CAAC,IAAc;IACvC,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,GAAG;YACJ,OAAO,IAAI,CAAC;QAChB,KAAK,GAAG;YACJ,OAAO,IAAI,CAAC;QAChB,KAAK,IAAI;YACL,OAAO,IAAI,CAAC;QAChB,KAAK,IAAI,CAAC;QACV,KAAK,GAAG,CAAC;QACT;YACI,OAAO,IAAI,CAAC;IACpB,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;IACpD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAuB,EAAE,KAAa;IAC9D,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA6B,EAAE,eAA6B,EAAE,EAAE,EAAE;IAC7F,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAwB,EAAE,EAAE;QACrD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA6B,EAAE,eAA6B,EAAE,EAAE,EAAE;IAC7F,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAwB,EAAE,EAAE;QACrD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC,EAAE,EAAc,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,SAA6C,EAAE,EAAE,EAAE;IAC3F,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAE5B,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;QAC7C,IAAI,KAAK,EAAE,CAAC;YACR,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAA0B,EAAE,mBAA6B,EAAE,EAAE,EAAE;IAC5F,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAA0B,EAAE,mBAA6B,EAAE,EAAE,EAAE;IAC1F,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CACxB,GAAW,EACX,IAA0B,EAC1B,KAAc,EACd,IAAa,EACf,EAAE;IACA,+CAA+C;IAC/C,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,oBAAoB,CAAC,QAAQ;YAC9B,OAAO,qBAAqB,CAAC,wBAAwB,EAAE,EAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC;QAC/E,KAAK,oBAAoB,CAAC,QAAQ;YAC9B,OAAO,qBAAqB,CAAC,iCAAiC,EAAE,EAAC,CAAC,EAAE,GAAG,EAAC,CAAC,CAAC;QAC9E,KAAK,oBAAoB,CAAC,OAAO;YAC7B,OAAO,qBAAqB,CAAC,kCAAkC,EAAE;gBAC7D,GAAG;gBACH,IAAI,EAAE,KAAK;aACd,CAAC,CAAC;QACP,KAAK,oBAAoB,CAAC,EAAE;YACxB,OAAO,qBAAqB,CAAC,0BAA0B,EAAE;gBACrD,GAAG;gBACH,KAAK;gBACL,OAAO,EAAE,IAAI;aAChB,CAAC,CAAC;QACP,KAAK,oBAAoB,CAAC,QAAQ;YAC9B,OAAO,qBAAqB,CAAC,iDAAiD,EAAE;gBAC5E,GAAG;aACN,CAAC,CAAC;QACP;YACI,sCAAsC;YACtC,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;YAE7C,OAAO,SAAS,CAAC;IACzB,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAW,EAAE,GAAG,UAAsC,EAAE,EAAE;IACtF,MAAM,UAAU,GAA2B,EAAE,CAAC;IAE9C,IAAI,EAAE,EAAE,CAAC;QACL,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAE5D,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACjB,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO,UAAU,CAAC;AACtB,CAAC,CAAC","sourcesContent":["import camelCase from 'lodash/camelCase';\nimport flatten from 'lodash/flatten';\n\nimport {ConstructorBlock, CustomConfig, PCShareSocialNetwork, TextSize} from '../models';\n\nconst BLOCK_ELEMENTS = [\n 'div',\n 'p',\n 'h[1-6]',\n 'address',\n 'article',\n 'aside',\n 'blockquote',\n 'canvas',\n 'dd',\n 'dl',\n 'dt',\n 'fieldset',\n 'figcaption',\n 'footer',\n 'header',\n 'hr',\n 'main',\n 'nav',\n 'section',\n 'video',\n 'pre',\n 'figure',\n 'form',\n 'pre',\n 'ol',\n 'ul',\n 'li',\n 'table',\n 'thead',\n 'tbody',\n 'tfoot',\n 'tr',\n 'th',\n 'td',\n];\n\nconst BLOCK_ELEMENTS_REGEX = `<(${BLOCK_ELEMENTS.join('|')})[^>]*>`;\n\nconst QA_ATTRIBUTES_KEYS = ['container', 'content', 'wrapper', 'image', 'button', 'animate'];\n\nexport function getHeaderTag(size: TextSize) {\n switch (size) {\n case 'l':\n return 'h1';\n case 's':\n return 'h3';\n case 'xs':\n return 'h4';\n case 'sm':\n case 'm':\n default:\n return 'h2';\n }\n}\n\nexport function hasBlockTag(content: string): boolean {\n const regex = new RegExp(BLOCK_ELEMENTS_REGEX, 'g');\n return regex.test(content);\n}\n\nexport function getBlockKey(block: ConstructorBlock, index: number) {\n return `${block.type}-${index}`;\n}\n\nexport const getCustomItems = (types: (keyof CustomConfig)[], customBlocks: CustomConfig = {}) => {\n return types.reduce((result, type: keyof CustomConfig) => {\n return Object.assign(result, customBlocks[type] || {});\n }, {});\n};\n\nexport const getCustomTypes = (types: (keyof CustomConfig)[], customBlocks: CustomConfig = {}) => {\n return types.reduce((result, type: keyof CustomConfig) => {\n return result.concat(Object.keys(customBlocks[type] || {}));\n }, [] as string[]);\n};\n\nconst getShareUrlWithParams = (url: string, params: Record<string, string | undefined> = {}) => {\n const result = new URL(url);\n\n Object.entries(params).forEach(([name, value]) => {\n if (value) {\n result.searchParams.set(name, value);\n }\n });\n\n return result.toString();\n};\n\nexport const getOrderedBlocks = (blocks: ConstructorBlock[], headerBlockTypes: string[] = []) => {\n return blocks.filter(({type}) => !headerBlockTypes.includes(type));\n};\n\nexport const getHeaderBlock = (blocks: ConstructorBlock[], headerBlockTypes: string[] = []) => {\n return blocks.find(({type}) => headerBlockTypes.includes(type));\n};\n\nexport const getShareLink = (\n url: string,\n type: PCShareSocialNetwork,\n title?: string,\n text?: string,\n) => {\n // https://github.com/bradvin/social-share-urls\n switch (type) {\n case PCShareSocialNetwork.Telegram:\n return getShareUrlWithParams('https://t.me/share/url', {url, text: title});\n case PCShareSocialNetwork.Facebook:\n return getShareUrlWithParams('https://facebook.com/sharer.php', {u: url});\n case PCShareSocialNetwork.Twitter:\n return getShareUrlWithParams('https://twitter.com/intent/tweet', {\n url,\n text: title,\n });\n case PCShareSocialNetwork.Vk:\n return getShareUrlWithParams('https://vk.com/share.php', {\n url,\n title,\n comment: text,\n });\n case PCShareSocialNetwork.LinkedIn:\n return getShareUrlWithParams('https://www.linkedin.com/sharing/share-offsite/', {\n url,\n });\n default:\n // eslint-disable-next-line no-console\n console.error(`Unknown share type: ${type}`);\n\n return undefined;\n }\n};\n\nexport const getQaAttrubutes = (qa?: string, ...customKeys: (string | Array<string>)[]) => {\n const attributes: Record<string, string> = {};\n\n if (qa) {\n const keys = QA_ATTRIBUTES_KEYS.concat(flatten(customKeys));\n\n keys.forEach((key) => {\n attributes[camelCase(key)] = `${qa}-${key}`;\n });\n\n attributes.default = qa;\n }\n\n return attributes;\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravity-ui/page-constructor",
3
- "version": "6.0.1-beta.0",
3
+ "version": "6.1.0",
4
4
  "description": "Gravity UI Page Constructor",
5
5
  "license": "MIT",
6
6
  "type": "commonjs",
@@ -10,9 +10,14 @@
10
10
  },
11
11
  "exports": {
12
12
  ".": {
13
- "types": "./build/esm/index.d.ts",
14
- "require": "./build/cjs/index.js",
15
- "import": "./build/esm/index.js"
13
+ "import": {
14
+ "types": "./build/esm/index.d.ts",
15
+ "default": "./build/esm/index.js"
16
+ },
17
+ "require": {
18
+ "types": "./build/cjs/index.d.ts",
19
+ "default": "./build/cjs/index.js"
20
+ }
16
21
  },
17
22
  "./editor": {
18
23
  "types": "./build/esm/editor/index.d.ts",
@@ -30,7 +35,7 @@
30
35
  },
31
36
  "main": "./build/cjs/index.js",
32
37
  "module": "./build/esm/index.js",
33
- "types": "./build/esm/index.d.ts",
38
+ "types": "./build/cjs/index.d.ts",
34
39
  "typesVersions": {
35
40
  "*": {
36
41
  "index.d.ts": [
@@ -92,9 +97,9 @@
92
97
  },
93
98
  "dependencies": {
94
99
  "@bem-react/classname": "^1.6.0",
95
- "@gravity-ui/components": "^4.0.0-beta.5",
96
- "@gravity-ui/dynamic-forms": "^5.0.0-beta.0",
97
- "@gravity-ui/gulp-utils": "^1.0.0",
100
+ "@gravity-ui/components": "^4.0.1",
101
+ "@gravity-ui/dynamic-forms": "^5.0.0",
102
+ "@gravity-ui/gulp-utils": "^1.0.1",
98
103
  "@gravity-ui/i18n": "^1.7.0",
99
104
  "@react-spring/web": "^9.7.3",
100
105
  "@testing-library/dom": "^10.4.0",
@@ -123,8 +128,8 @@
123
128
  },
124
129
  "peerDependencies": {
125
130
  "@diplodoc/transform": "^4.10.4",
126
- "@gravity-ui/uikit": "^7.0.0-beta.5",
127
- "react": "^16.14.0 || ^17.0.0 || ^18.0.0"
131
+ "@gravity-ui/uikit": "^7.1.1",
132
+ "react": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
128
133
  },
129
134
  "devDependencies": {
130
135
  "@babel/core": "^7.22.8",
@@ -140,7 +145,7 @@
140
145
  "@gravity-ui/prettier-config": "^1.1.0",
141
146
  "@gravity-ui/stylelint-config": "^4.0.1",
142
147
  "@gravity-ui/tsconfig": "^1.0.0",
143
- "@gravity-ui/uikit": "^7.0.0-beta.5",
148
+ "@gravity-ui/uikit": "^7.1.1",
144
149
  "@playwright/experimental-ct-react": "^1.45.3",
145
150
  "@playwright/test": "^1.45.3",
146
151
  "@storybook/addon-actions": "8.0.5",