@gravity-ui/page-constructor 4.55.0 → 5.0.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 (407) hide show
  1. package/README.md +6 -4
  2. package/build/cjs/blocks/Banner/schema.d.ts +0 -264
  3. package/build/cjs/blocks/FilterBlock/FilterBlock.js +2 -2
  4. package/build/cjs/blocks/FilterBlock/i18n/index.d.ts +1 -2
  5. package/build/cjs/blocks/FilterBlock/i18n/index.js +4 -3
  6. package/build/cjs/blocks/Map/schema.d.ts +0 -88
  7. package/build/cjs/blocks/Media/schema.d.ts +0 -176
  8. package/build/cjs/blocks/Security/i18n/index.d.ts +1 -2
  9. package/build/cjs/blocks/Security/i18n/index.js +4 -3
  10. package/build/cjs/blocks/Share/Share.css +2 -1
  11. package/build/cjs/blocks/Share/Share.js +4 -4
  12. package/build/cjs/blocks/Share/i18n/index.d.ts +1 -2
  13. package/build/cjs/blocks/Share/i18n/index.js +4 -3
  14. package/build/cjs/blocks/Slider/Arrow/Arrow.js +2 -2
  15. package/build/cjs/blocks/Slider/i18n/index.d.ts +1 -2
  16. package/build/cjs/blocks/Slider/i18n/index.js +4 -3
  17. package/build/cjs/components/BackLink/BackLink.js +2 -2
  18. package/build/cjs/components/Button/Button.css +1 -5
  19. package/build/cjs/components/Button/Button.js +4 -7
  20. package/build/cjs/components/Button/i18n/index.d.ts +1 -2
  21. package/build/cjs/components/Button/i18n/index.js +4 -3
  22. package/build/cjs/components/ButtonTabs/ButtonTabs.css +0 -4
  23. package/build/cjs/components/Buttons/Buttons.css +11 -0
  24. package/build/cjs/components/Buttons/Buttons.d.ts +12 -0
  25. package/build/cjs/components/Buttons/Buttons.js +18 -0
  26. package/build/cjs/components/CardBase/CardBase.d.ts +3 -6
  27. package/build/cjs/components/CardBase/CardBase.js +6 -10
  28. package/build/cjs/components/Control/Control.js +2 -2
  29. package/build/cjs/components/Control/i18n/index.d.ts +1 -2
  30. package/build/cjs/components/Control/i18n/index.js +4 -3
  31. package/build/cjs/components/FileLink/FileLink.css +4 -5
  32. package/build/cjs/components/FullscreenImage/FullscreenImage.css +1 -0
  33. package/build/cjs/components/FullscreenImage/FullscreenImage.js +9 -10
  34. package/build/cjs/components/FullscreenImage/i18n/index.d.ts +1 -2
  35. package/build/cjs/components/FullscreenImage/i18n/index.js +4 -3
  36. package/build/cjs/components/FullscreenMedia/FullscreenMedia.css +1 -0
  37. package/build/cjs/components/FullscreenMedia/FullscreenMedia.js +14 -15
  38. package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +3 -6
  39. package/build/cjs/components/Link/Link.css +1 -2
  40. package/build/cjs/components/Link/Link.js +3 -6
  41. package/build/cjs/components/Links/Links.css +14 -0
  42. package/build/cjs/components/Links/Links.d.ts +12 -0
  43. package/build/cjs/components/Links/Links.js +18 -0
  44. package/build/cjs/components/Map/GoogleMap.js +2 -2
  45. package/build/cjs/components/Map/YMap/YandexMap.js +2 -2
  46. package/build/cjs/components/Map/YMap/i18n/index.d.ts +1 -2
  47. package/build/cjs/components/Map/YMap/i18n/index.js +4 -3
  48. package/build/cjs/components/Media/DataLens/DataLens.js +2 -2
  49. package/build/cjs/components/Media/DataLens/i18n/index.d.ts +1 -2
  50. package/build/cjs/components/Media/DataLens/i18n/index.js +4 -3
  51. package/build/cjs/components/Media/Iframe/Iframe.js +2 -2
  52. package/build/cjs/components/Media/Iframe/i18n/index.d.ts +1 -2
  53. package/build/cjs/components/Media/Iframe/i18n/index.js +4 -3
  54. package/build/cjs/components/Media/Media.js +1 -3
  55. package/build/cjs/components/Media/Video/Video.js +2 -3
  56. package/build/cjs/components/OverflowScroller/OverflowScroller.js +2 -2
  57. package/build/cjs/components/OverflowScroller/i18n/index.d.ts +1 -2
  58. package/build/cjs/components/OverflowScroller/i18n/index.js +4 -3
  59. package/build/cjs/components/ReactPlayer/CustomBarControls.js +5 -7
  60. package/build/cjs/components/ReactPlayer/ReactPlayer.css +1 -1
  61. package/build/cjs/components/ReactPlayer/ReactPlayer.js +7 -31
  62. package/build/cjs/components/ReactPlayer/i18n/index.d.ts +1 -2
  63. package/build/cjs/components/ReactPlayer/i18n/index.js +4 -3
  64. package/build/cjs/components/Table/Table.css +6 -0
  65. package/build/cjs/components/Table/Table.js +2 -2
  66. package/build/cjs/components/UnpublishedLabel/UnpublishedLabel.js +2 -2
  67. package/build/cjs/components/UnpublishedLabel/i18n/index.d.ts +1 -2
  68. package/build/cjs/components/UnpublishedLabel/i18n/index.js +4 -3
  69. package/build/cjs/components/VideoBlock/VideoBlock.css +1 -1
  70. package/build/cjs/components/VideoBlock/VideoBlock.js +4 -4
  71. package/build/cjs/components/VideoBlock/i18n/index.d.ts +1 -2
  72. package/build/cjs/components/VideoBlock/i18n/index.js +4 -3
  73. package/build/cjs/components/YandexForm/YandexForm.js +2 -13
  74. package/build/cjs/components/index.d.ts +2 -1
  75. package/build/cjs/components/index.js +4 -2
  76. package/build/cjs/constructor-items.d.ts +1 -1
  77. package/build/cjs/containers/Loadable/Loadable.js +2 -2
  78. package/build/cjs/containers/Loadable/i18n/index.d.ts +1 -2
  79. package/build/cjs/containers/Loadable/i18n/index.js +4 -3
  80. package/build/cjs/containers/PageConstructor/PageConstructor.css +1 -1
  81. package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +1 -1
  82. package/build/cjs/containers/PageConstructor/PageConstructor.js +1 -1
  83. package/build/cjs/containers/PageConstructor/Provider.d.ts +0 -2
  84. package/build/cjs/containers/PageConstructor/Provider.js +1 -3
  85. package/build/cjs/context/localeContext/localeContext.d.ts +2 -2
  86. package/build/cjs/context/localeContext/localeContext.js +2 -2
  87. package/build/cjs/editor/components/ControlPanel/ControlPanel.js +3 -3
  88. package/build/cjs/editor/components/ControlPanel/i18n/en.json +2 -1
  89. package/build/cjs/editor/components/ControlPanel/i18n/index.d.ts +1 -2
  90. package/build/cjs/editor/components/ControlPanel/i18n/index.js +4 -3
  91. package/build/cjs/editor/components/ControlPanel/i18n/ru.json +2 -1
  92. package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.js +3 -3
  93. package/build/cjs/editor/components/ErrorBoundary/i18n/index.d.ts +1 -2
  94. package/build/cjs/editor/components/ErrorBoundary/i18n/index.js +4 -3
  95. package/build/cjs/editor/components/NotFoundBlock/NotFoundBlock.js +2 -2
  96. package/build/cjs/editor/components/NotFoundBlock/i18n/index.d.ts +1 -2
  97. package/build/cjs/editor/components/NotFoundBlock/i18n/index.js +4 -3
  98. package/build/cjs/editor/containers/Form/Form.css +1 -1
  99. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.d.ts +1 -1
  100. package/build/cjs/hooks/useAnalytics.d.ts +2 -2
  101. package/build/cjs/hooks/useMetrika.d.ts +1 -13
  102. package/build/cjs/hooks/useMetrika.js +0 -41
  103. package/build/cjs/icons/index.d.ts +0 -9
  104. package/build/cjs/icons/index.js +0 -9
  105. package/build/cjs/index.d.ts +0 -1
  106. package/build/cjs/index.js +0 -1
  107. package/build/cjs/models/common.d.ts +2 -53
  108. package/build/cjs/models/common.js +1 -25
  109. package/build/cjs/models/constructor-items/common.d.ts +7 -28
  110. package/build/cjs/models/constructor-items/sub-blocks.d.ts +6 -6
  111. package/build/cjs/models/guards.d.ts +0 -2
  112. package/build/cjs/models/guards.js +1 -5
  113. package/build/cjs/navigation/components/MobileMenuButton/MobileMenuButton.js +3 -3
  114. package/build/cjs/schema/constants.d.ts +12 -176
  115. package/build/cjs/schema/constants.js +2 -0
  116. package/build/cjs/schema/validators/common.d.ts +0 -188
  117. package/build/cjs/schema/validators/common.js +0 -31
  118. package/build/cjs/schema/validators/index.d.ts +0 -2
  119. package/build/cjs/schema/validators/index.js +0 -2
  120. package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +15 -3
  121. package/build/cjs/sub-blocks/BackgroundCard/schema.d.ts +4 -0
  122. package/build/cjs/sub-blocks/BackgroundCard/schema.js +3 -0
  123. package/build/cjs/sub-blocks/BasicCard/BasicCard.js +17 -8
  124. package/build/cjs/sub-blocks/BasicCard/schema.d.ts +4 -0
  125. package/build/cjs/sub-blocks/BasicCard/schema.js +3 -0
  126. package/build/cjs/sub-blocks/Content/Content.css +0 -22
  127. package/build/cjs/sub-blocks/Content/Content.js +10 -21
  128. package/build/cjs/sub-blocks/HubspotForm/HubspotForm.css +0 -1
  129. package/build/cjs/sub-blocks/HubspotForm/index.js +1 -6
  130. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.css +6 -0
  131. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.d.ts +1 -1
  132. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +16 -4
  133. package/build/cjs/sub-blocks/LayoutItem/schema.d.ts +4 -0
  134. package/build/cjs/sub-blocks/LayoutItem/schema.js +3 -0
  135. package/build/cjs/sub-blocks/LayoutItem/utils.d.ts +1 -15
  136. package/build/cjs/sub-blocks/PriceCard/PriceCard.css +2 -5
  137. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +3 -3
  138. package/build/cjs/sub-blocks/PriceCard/schema.d.ts +4 -88
  139. package/build/cjs/sub-blocks/PriceCard/schema.js +3 -0
  140. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.d.ts +1 -0
  141. package/build/cjs/sub-blocks/PriceDetailed/PriceDetailed.js +2 -0
  142. package/build/cjs/sub-blocks/PriceDetailed/schema.d.ts +1 -0
  143. package/build/cjs/sub-blocks/PriceDetailed/schema.js +1 -0
  144. package/build/cjs/sub-blocks/renderCardFooterControlsContainer/CardFooterControlsContainer.css +3 -0
  145. package/build/cjs/sub-blocks/renderCardFooterControlsContainer/renderCardFooterControlsContainer.d.ts +3 -0
  146. package/build/cjs/sub-blocks/renderCardFooterControlsContainer/renderCardFooterControlsContainer.js +9 -0
  147. package/build/cjs/text-transform/common.d.ts +5 -5
  148. package/build/cjs/text-transform/common.js +1 -1
  149. package/build/cjs/text-transform/filter.js +1 -1
  150. package/build/cjs/text-transform/transformers.d.ts +3 -3
  151. package/build/cjs/text-transform/utils.d.ts +7 -7
  152. package/build/cjs/text-transform/utils.js +6 -6
  153. package/build/cjs/utils/index.d.ts +0 -1
  154. package/build/cjs/utils/index.js +1 -4
  155. package/build/cjs/utils/renderContentControls/ContentControls.css +6 -0
  156. package/build/cjs/utils/renderContentControls/renderContentControls.d.ts +11 -0
  157. package/build/cjs/utils/renderContentControls/renderContentControls.js +16 -0
  158. package/build/esm/blocks/Banner/schema.d.ts +0 -264
  159. package/build/esm/blocks/FilterBlock/FilterBlock.js +1 -1
  160. package/build/esm/blocks/FilterBlock/i18n/index.d.ts +1 -2
  161. package/build/esm/blocks/FilterBlock/i18n/index.js +3 -3
  162. package/build/esm/blocks/Map/schema.d.ts +0 -88
  163. package/build/esm/blocks/Media/schema.d.ts +0 -176
  164. package/build/esm/blocks/Security/i18n/index.d.ts +1 -2
  165. package/build/esm/blocks/Security/i18n/index.js +3 -3
  166. package/build/esm/blocks/Share/Share.css +2 -1
  167. package/build/esm/blocks/Share/Share.js +1 -1
  168. package/build/esm/blocks/Share/i18n/index.d.ts +1 -2
  169. package/build/esm/blocks/Share/i18n/index.js +3 -3
  170. package/build/esm/blocks/Slider/Arrow/Arrow.js +1 -1
  171. package/build/esm/blocks/Slider/i18n/index.d.ts +1 -2
  172. package/build/esm/blocks/Slider/i18n/index.js +3 -3
  173. package/build/esm/components/BackLink/BackLink.js +2 -2
  174. package/build/esm/components/Button/Button.css +1 -5
  175. package/build/esm/components/Button/Button.js +3 -6
  176. package/build/esm/components/Button/i18n/index.d.ts +1 -2
  177. package/build/esm/components/Button/i18n/index.js +3 -3
  178. package/build/esm/components/ButtonTabs/ButtonTabs.css +0 -4
  179. package/build/esm/components/Buttons/Buttons.css +11 -0
  180. package/build/esm/components/Buttons/Buttons.d.ts +13 -0
  181. package/build/esm/components/Buttons/Buttons.js +16 -0
  182. package/build/esm/components/CardBase/CardBase.d.ts +3 -6
  183. package/build/esm/components/CardBase/CardBase.js +7 -11
  184. package/build/esm/components/Control/Control.js +1 -1
  185. package/build/esm/components/Control/i18n/index.d.ts +1 -2
  186. package/build/esm/components/Control/i18n/index.js +3 -3
  187. package/build/esm/components/FileLink/FileLink.css +4 -5
  188. package/build/esm/components/FullscreenImage/FullscreenImage.css +1 -0
  189. package/build/esm/components/FullscreenImage/FullscreenImage.js +8 -9
  190. package/build/esm/components/FullscreenImage/i18n/index.d.ts +1 -2
  191. package/build/esm/components/FullscreenImage/i18n/index.js +3 -3
  192. package/build/esm/components/FullscreenMedia/FullscreenMedia.css +1 -0
  193. package/build/esm/components/FullscreenMedia/FullscreenMedia.js +14 -15
  194. package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.js +3 -6
  195. package/build/esm/components/Link/Link.css +1 -2
  196. package/build/esm/components/Link/Link.js +3 -6
  197. package/build/esm/components/Links/Links.css +14 -0
  198. package/build/esm/components/Links/Links.d.ts +13 -0
  199. package/build/esm/components/Links/Links.js +16 -0
  200. package/build/esm/components/Map/GoogleMap.js +1 -1
  201. package/build/esm/components/Map/YMap/YandexMap.js +1 -1
  202. package/build/esm/components/Map/YMap/i18n/index.d.ts +1 -2
  203. package/build/esm/components/Map/YMap/i18n/index.js +3 -3
  204. package/build/esm/components/Media/DataLens/DataLens.js +1 -1
  205. package/build/esm/components/Media/DataLens/i18n/index.d.ts +1 -2
  206. package/build/esm/components/Media/DataLens/i18n/index.js +3 -3
  207. package/build/esm/components/Media/Iframe/Iframe.js +1 -1
  208. package/build/esm/components/Media/Iframe/i18n/index.d.ts +1 -2
  209. package/build/esm/components/Media/Iframe/i18n/index.js +3 -3
  210. package/build/esm/components/Media/Media.js +1 -3
  211. package/build/esm/components/Media/Video/Video.js +2 -3
  212. package/build/esm/components/OverflowScroller/OverflowScroller.js +1 -1
  213. package/build/esm/components/OverflowScroller/i18n/index.d.ts +1 -2
  214. package/build/esm/components/OverflowScroller/i18n/index.js +3 -3
  215. package/build/esm/components/ReactPlayer/CustomBarControls.js +4 -6
  216. package/build/esm/components/ReactPlayer/ReactPlayer.css +1 -1
  217. package/build/esm/components/ReactPlayer/ReactPlayer.js +6 -30
  218. package/build/esm/components/ReactPlayer/i18n/index.d.ts +1 -2
  219. package/build/esm/components/ReactPlayer/i18n/index.js +3 -3
  220. package/build/esm/components/Table/Table.css +6 -0
  221. package/build/esm/components/Table/Table.js +2 -2
  222. package/build/esm/components/UnpublishedLabel/UnpublishedLabel.js +1 -1
  223. package/build/esm/components/UnpublishedLabel/i18n/index.d.ts +1 -2
  224. package/build/esm/components/UnpublishedLabel/i18n/index.js +3 -3
  225. package/build/esm/components/VideoBlock/VideoBlock.css +1 -1
  226. package/build/esm/components/VideoBlock/VideoBlock.js +3 -3
  227. package/build/esm/components/VideoBlock/i18n/index.d.ts +1 -2
  228. package/build/esm/components/VideoBlock/i18n/index.js +3 -3
  229. package/build/esm/components/YandexForm/YandexForm.js +2 -13
  230. package/build/esm/components/index.d.ts +2 -1
  231. package/build/esm/components/index.js +2 -1
  232. package/build/esm/constructor-items.d.ts +1 -1
  233. package/build/esm/containers/Loadable/Loadable.js +1 -1
  234. package/build/esm/containers/Loadable/i18n/index.d.ts +1 -2
  235. package/build/esm/containers/Loadable/i18n/index.js +3 -3
  236. package/build/esm/containers/PageConstructor/PageConstructor.css +1 -1
  237. package/build/esm/containers/PageConstructor/PageConstructor.d.ts +1 -1
  238. package/build/esm/containers/PageConstructor/PageConstructor.js +1 -1
  239. package/build/esm/containers/PageConstructor/Provider.d.ts +0 -2
  240. package/build/esm/containers/PageConstructor/Provider.js +1 -3
  241. package/build/esm/context/localeContext/localeContext.d.ts +2 -2
  242. package/build/esm/context/localeContext/localeContext.js +1 -1
  243. package/build/esm/editor/components/ControlPanel/ControlPanel.js +2 -2
  244. package/build/esm/editor/components/ControlPanel/i18n/en.json +2 -1
  245. package/build/esm/editor/components/ControlPanel/i18n/index.d.ts +1 -2
  246. package/build/esm/editor/components/ControlPanel/i18n/index.js +3 -3
  247. package/build/esm/editor/components/ControlPanel/i18n/ru.json +2 -1
  248. package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.js +1 -1
  249. package/build/esm/editor/components/ErrorBoundary/i18n/index.d.ts +1 -2
  250. package/build/esm/editor/components/ErrorBoundary/i18n/index.js +3 -3
  251. package/build/esm/editor/components/NotFoundBlock/NotFoundBlock.js +1 -1
  252. package/build/esm/editor/components/NotFoundBlock/i18n/index.d.ts +1 -2
  253. package/build/esm/editor/components/NotFoundBlock/i18n/index.js +3 -3
  254. package/build/esm/editor/containers/Form/Form.css +1 -1
  255. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.d.ts +1 -1
  256. package/build/esm/hooks/useAnalytics.d.ts +2 -2
  257. package/build/esm/hooks/useMetrika.d.ts +1 -13
  258. package/build/esm/hooks/useMetrika.js +1 -38
  259. package/build/esm/icons/index.d.ts +0 -9
  260. package/build/esm/icons/index.js +0 -9
  261. package/build/esm/index.d.ts +0 -1
  262. package/build/esm/index.js +0 -1
  263. package/build/esm/models/common.d.ts +2 -53
  264. package/build/esm/models/common.js +0 -24
  265. package/build/esm/models/constructor-items/common.d.ts +7 -28
  266. package/build/esm/models/constructor-items/sub-blocks.d.ts +6 -6
  267. package/build/esm/models/guards.d.ts +0 -2
  268. package/build/esm/models/guards.js +0 -3
  269. package/build/esm/navigation/components/MobileMenuButton/MobileMenuButton.js +3 -3
  270. package/build/esm/schema/constants.d.ts +12 -176
  271. package/build/esm/schema/constants.js +2 -0
  272. package/build/esm/schema/validators/common.d.ts +0 -188
  273. package/build/esm/schema/validators/common.js +0 -31
  274. package/build/esm/schema/validators/index.d.ts +0 -2
  275. package/build/esm/schema/validators/index.js +0 -2
  276. package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +15 -3
  277. package/build/esm/sub-blocks/BackgroundCard/schema.d.ts +4 -0
  278. package/build/esm/sub-blocks/BackgroundCard/schema.js +3 -0
  279. package/build/esm/sub-blocks/BasicCard/BasicCard.js +14 -5
  280. package/build/esm/sub-blocks/BasicCard/schema.d.ts +4 -0
  281. package/build/esm/sub-blocks/BasicCard/schema.js +3 -0
  282. package/build/esm/sub-blocks/Content/Content.css +0 -22
  283. package/build/esm/sub-blocks/Content/Content.js +11 -22
  284. package/build/esm/sub-blocks/HubspotForm/HubspotForm.css +0 -1
  285. package/build/esm/sub-blocks/HubspotForm/index.js +1 -6
  286. package/build/esm/sub-blocks/LayoutItem/LayoutItem.css +6 -0
  287. package/build/esm/sub-blocks/LayoutItem/LayoutItem.d.ts +1 -1
  288. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +16 -4
  289. package/build/esm/sub-blocks/LayoutItem/schema.d.ts +4 -0
  290. package/build/esm/sub-blocks/LayoutItem/schema.js +3 -0
  291. package/build/esm/sub-blocks/LayoutItem/utils.d.ts +1 -15
  292. package/build/esm/sub-blocks/PriceCard/PriceCard.css +2 -5
  293. package/build/esm/sub-blocks/PriceCard/PriceCard.js +4 -4
  294. package/build/esm/sub-blocks/PriceCard/schema.d.ts +4 -88
  295. package/build/esm/sub-blocks/PriceCard/schema.js +3 -0
  296. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.d.ts +1 -0
  297. package/build/esm/sub-blocks/PriceDetailed/PriceDetailed.js +2 -0
  298. package/build/esm/sub-blocks/PriceDetailed/schema.d.ts +1 -0
  299. package/build/esm/sub-blocks/PriceDetailed/schema.js +1 -0
  300. package/build/esm/sub-blocks/renderCardFooterControlsContainer/CardFooterControlsContainer.css +3 -0
  301. package/build/esm/sub-blocks/renderCardFooterControlsContainer/renderCardFooterControlsContainer.d.ts +3 -0
  302. package/build/esm/sub-blocks/renderCardFooterControlsContainer/renderCardFooterControlsContainer.js +6 -0
  303. package/build/esm/text-transform/common.d.ts +5 -5
  304. package/build/esm/text-transform/common.js +1 -1
  305. package/build/esm/text-transform/filter.js +1 -1
  306. package/build/esm/text-transform/transformers.d.ts +3 -3
  307. package/build/esm/text-transform/utils.d.ts +7 -7
  308. package/build/esm/text-transform/utils.js +2 -2
  309. package/build/esm/utils/index.d.ts +0 -1
  310. package/build/esm/utils/index.js +0 -1
  311. package/build/esm/utils/renderContentControls/ContentControls.css +6 -0
  312. package/build/esm/utils/renderContentControls/renderContentControls.d.ts +12 -0
  313. package/build/esm/utils/renderContentControls/renderContentControls.js +14 -0
  314. package/package.json +16 -15
  315. package/server/models/common.d.ts +2 -53
  316. package/server/models/common.js +1 -25
  317. package/server/models/constructor-items/common.d.ts +7 -28
  318. package/server/models/constructor-items/sub-blocks.d.ts +6 -6
  319. package/server/models/guards.d.ts +0 -2
  320. package/server/models/guards.js +1 -5
  321. package/server/text-transform/common.d.ts +5 -5
  322. package/server/text-transform/common.js +1 -1
  323. package/server/text-transform/filter.js +1 -1
  324. package/server/text-transform/transformers.d.ts +3 -3
  325. package/server/text-transform/utils.d.ts +7 -7
  326. package/server/text-transform/utils.js +6 -6
  327. package/server/utils/index.d.ts +0 -1
  328. package/server/utils/index.js +1 -4
  329. package/styles/mixins.scss +0 -4
  330. package/styles/storybook/index.scss +1 -1
  331. package/styles/styles.css +1 -1
  332. package/styles/yfm.scss +1 -1
  333. package/widget/index.js +1 -1
  334. package/build/cjs/components/Link/Links.d.ts +0 -6
  335. package/build/cjs/components/Link/Links.js +0 -13
  336. package/build/cjs/context/metrikaContext/index.d.ts +0 -1
  337. package/build/cjs/context/metrikaContext/index.js +0 -4
  338. package/build/cjs/context/metrikaContext/metrikaContext.d.ts +0 -13
  339. package/build/cjs/context/metrikaContext/metrikaContext.js +0 -6
  340. package/build/cjs/i18n.d.ts +0 -2
  341. package/build/cjs/i18n.js +0 -12
  342. package/build/cjs/icons/ArrowConstructor.d.ts +0 -2
  343. package/build/cjs/icons/ArrowConstructor.js +0 -9
  344. package/build/cjs/icons/ArrowSidebar.d.ts +0 -2
  345. package/build/cjs/icons/ArrowSidebar.js +0 -9
  346. package/build/cjs/icons/Fullscreen.d.ts +0 -2
  347. package/build/cjs/icons/Fullscreen.js +0 -9
  348. package/build/cjs/icons/Minus.d.ts +0 -2
  349. package/build/cjs/icons/Minus.js +0 -9
  350. package/build/cjs/icons/Mute.d.ts +0 -2
  351. package/build/cjs/icons/Mute.js +0 -12
  352. package/build/cjs/icons/NavigationClose.d.ts +0 -2
  353. package/build/cjs/icons/NavigationClose.js +0 -9
  354. package/build/cjs/icons/NavigationOpen.d.ts +0 -2
  355. package/build/cjs/icons/NavigationOpen.js +0 -11
  356. package/build/cjs/icons/PlayVideo.d.ts +0 -2
  357. package/build/cjs/icons/PlayVideo.js +0 -9
  358. package/build/cjs/icons/PreviewClose.d.ts +0 -2
  359. package/build/cjs/icons/PreviewClose.js +0 -9
  360. package/build/cjs/icons/Tick.d.ts +0 -2
  361. package/build/cjs/icons/Tick.js +0 -13
  362. package/build/cjs/icons/Unmute.d.ts +0 -2
  363. package/build/cjs/icons/Unmute.js +0 -12
  364. package/build/cjs/schema/validators/pixel.d.ts +0 -57
  365. package/build/cjs/schema/validators/pixel.js +0 -63
  366. package/build/cjs/utils/configure.d.ts +0 -12
  367. package/build/cjs/utils/configure.js +0 -26
  368. package/build/cjs/utils/registerKeyset.d.ts +0 -5
  369. package/build/cjs/utils/registerKeyset.js +0 -9
  370. package/build/esm/components/Link/Links.d.ts +0 -6
  371. package/build/esm/components/Link/Links.js +0 -10
  372. package/build/esm/context/metrikaContext/index.d.ts +0 -1
  373. package/build/esm/context/metrikaContext/index.js +0 -1
  374. package/build/esm/context/metrikaContext/metrikaContext.d.ts +0 -13
  375. package/build/esm/context/metrikaContext/metrikaContext.js +0 -2
  376. package/build/esm/i18n.d.ts +0 -2
  377. package/build/esm/i18n.js +0 -9
  378. package/build/esm/icons/ArrowConstructor.d.ts +0 -2
  379. package/build/esm/icons/ArrowConstructor.js +0 -4
  380. package/build/esm/icons/ArrowSidebar.d.ts +0 -2
  381. package/build/esm/icons/ArrowSidebar.js +0 -4
  382. package/build/esm/icons/Fullscreen.d.ts +0 -2
  383. package/build/esm/icons/Fullscreen.js +0 -4
  384. package/build/esm/icons/Minus.d.ts +0 -2
  385. package/build/esm/icons/Minus.js +0 -4
  386. package/build/esm/icons/Mute.d.ts +0 -2
  387. package/build/esm/icons/Mute.js +0 -7
  388. package/build/esm/icons/NavigationClose.d.ts +0 -2
  389. package/build/esm/icons/NavigationClose.js +0 -4
  390. package/build/esm/icons/NavigationOpen.d.ts +0 -2
  391. package/build/esm/icons/NavigationOpen.js +0 -6
  392. package/build/esm/icons/PlayVideo.d.ts +0 -2
  393. package/build/esm/icons/PlayVideo.js +0 -4
  394. package/build/esm/icons/PreviewClose.d.ts +0 -2
  395. package/build/esm/icons/PreviewClose.js +0 -4
  396. package/build/esm/icons/Tick.d.ts +0 -2
  397. package/build/esm/icons/Tick.js +0 -8
  398. package/build/esm/icons/Unmute.d.ts +0 -2
  399. package/build/esm/icons/Unmute.js +0 -7
  400. package/build/esm/schema/validators/pixel.d.ts +0 -57
  401. package/build/esm/schema/validators/pixel.js +0 -60
  402. package/build/esm/utils/configure.d.ts +0 -12
  403. package/build/esm/utils/configure.js +0 -20
  404. package/build/esm/utils/registerKeyset.d.ts +0 -5
  405. package/build/esm/utils/registerKeyset.js +0 -5
  406. package/server/utils/configure.d.ts +0 -12
  407. package/server/utils/configure.js +0 -26
@@ -1,20 +1,29 @@
1
1
  import { __rest } from "tslib";
2
- import React from 'react';
2
+ import React, { useMemo } from 'react';
3
3
  import { useUniqId } from '@gravity-ui/uikit';
4
- import CardBase from '../../components/CardBase/CardBase';
5
- import IconWrapper from '../../components/IconWrapper/IconWrapper';
4
+ import { CardBase, IconWrapper } from '../../components';
6
5
  import { IconPosition } from '../../models/constructor-items/sub-blocks';
7
6
  import { block } from '../../utils';
7
+ import renderContentControls from '../../utils/renderContentControls/renderContentControls';
8
8
  import Content from '../Content/Content';
9
+ import renderCardFooterControlsContainer from '../renderCardFooterControlsContainer/renderCardFooterControlsContainer';
9
10
  import './BasicCard.css';
10
11
  const b = block('basic-card');
11
12
  const BasicCard = (props) => {
12
- const { title, text, icon, additionalInfo, links, list, buttons, iconPosition = IconPosition.Top } = props, cardParams = __rest(props, ["title", "text", "icon", "additionalInfo", "links", "list", "buttons", "iconPosition"]);
13
+ const { title, text, icon, additionalInfo, links, list, buttons, iconPosition = IconPosition.Top, controlPosition = 'content' } = props, cardParams = __rest(props, ["title", "text", "icon", "additionalInfo", "links", "list", "buttons", "iconPosition", "controlPosition"]);
13
14
  const titleId = useUniqId();
14
15
  const descriptionId = useUniqId();
16
+ const areControlsInFooter = controlPosition === 'footer';
17
+ const footerControls = useMemo(() => renderContentControls({
18
+ links: areControlsInFooter ? links : undefined,
19
+ buttons: areControlsInFooter ? buttons : undefined,
20
+ size: 's',
21
+ titleId,
22
+ }, renderCardFooterControlsContainer), [areControlsInFooter, links, buttons, titleId]);
15
23
  return (React.createElement(CardBase, Object.assign({ className: b() }, cardParams, { extraProps: { 'aria-describedby': descriptionId, 'aria-labelledby': titleId } }),
16
24
  React.createElement(CardBase.Content, null,
17
25
  React.createElement(IconWrapper, { icon: icon ? { value: icon, position: iconPosition } : undefined },
18
- React.createElement(Content, { title: title, titleId: titleId, text: text, textId: descriptionId, additionalInfo: additionalInfo, links: links, list: list, buttons: buttons, size: "s", colSizes: { all: 12, md: 12 } })))));
26
+ React.createElement(Content, { title: title, titleId: titleId, text: text, textId: descriptionId, additionalInfo: additionalInfo, links: areControlsInFooter ? undefined : links, list: list, buttons: areControlsInFooter ? undefined : buttons, size: "s", colSizes: { all: 12, md: 12 } }))),
27
+ footerControls));
19
28
  };
20
29
  export default BasicCard;
@@ -31,6 +31,10 @@ export declare const BasicCard: {
31
31
  type: string;
32
32
  enum: string[];
33
33
  };
34
+ controlPosition: {
35
+ type: string;
36
+ enum: string[];
37
+ };
34
38
  title: {
35
39
  oneOf: ({
36
40
  type: string;
@@ -17,6 +17,9 @@ export const BasicCard = {
17
17
  }, iconPosition: {
18
18
  type: 'string',
19
19
  enum: ['top', 'left'],
20
+ }, controlPosition: {
21
+ type: 'string',
22
+ enum: ['content', 'footer'],
20
23
  } }),
21
24
  },
22
25
  };
@@ -27,16 +27,6 @@ unpredictable css rules order in build */
27
27
  color: var(--g-color-text-primary);
28
28
  }
29
29
 
30
- .pc-content__buttons {
31
- display: flex;
32
- flex-wrap: wrap;
33
- column-gap: 12px;
34
- }
35
- .pc-content__links {
36
- display: flex;
37
- flex-direction: column;
38
- align-items: baseline;
39
- }
40
30
  .pc-content__link {
41
31
  display: block;
42
32
  }
@@ -67,12 +57,6 @@ unpredictable css rules order in build */
67
57
  .pc-content_size_s .pc-content__text_without-title {
68
58
  margin-top: 0;
69
59
  }
70
- .pc-content_size_s .pc-content__links,
71
- .pc-content_size_s .pc-content__link,
72
- .pc-content_size_s .pc-content__buttons,
73
- .pc-content_size_s .pc-content__button {
74
- margin-top: 8px;
75
- }
76
60
  .pc-content_size_s .pc-content__list {
77
61
  margin-top: 16px;
78
62
  }
@@ -88,12 +72,6 @@ unpredictable css rules order in build */
88
72
  font-size: var(--g-text-body-3-font-size);
89
73
  line-height: var(--g-text-body-3-line-height);
90
74
  }
91
- .pc-content_size_l .pc-content__links,
92
- .pc-content_size_l .pc-content__link,
93
- .pc-content_size_l .pc-content__buttons,
94
- .pc-content_size_l .pc-content__button {
95
- margin-top: 12px;
96
- }
97
75
  .pc-content_size_l .pc-content__list {
98
76
  margin-top: 24px;
99
77
  }
@@ -1,9 +1,10 @@
1
- import React from 'react';
1
+ import React, { useMemo } from 'react';
2
2
  import { useUniqId } from '@gravity-ui/uikit';
3
- import { Button, ContentList, Link as LinkBlock, Title, YFMWrapper } from '../../components';
3
+ import { ContentList, Title, YFMWrapper } from '../../components';
4
4
  import { Col } from '../../grid';
5
5
  import { block } from '../../utils';
6
6
  import { getQaAttrubutes } from '../../utils/blocks';
7
+ import renderContentControls from '../../utils/renderContentControls/renderContentControls';
7
8
  import './Content.css';
8
9
  const b = block('content');
9
10
  function getTextSize(size) {
@@ -15,24 +16,6 @@ function getTextSize(size) {
15
16
  return 'm';
16
17
  }
17
18
  }
18
- function getLinkSize(size) {
19
- switch (size) {
20
- case 's':
21
- return 'm';
22
- case 'l':
23
- default:
24
- return 'l';
25
- }
26
- }
27
- function getButtonSize(size) {
28
- switch (size) {
29
- case 's':
30
- return 'm';
31
- case 'l':
32
- default:
33
- return 'xl';
34
- }
35
- }
36
19
  const Content = (props) => {
37
20
  const { title, titleId: titleIdFromProps, text, textId, additionalInfo, size = 'l', links, buttons, colSizes = { all: 12, sm: 8 }, centered, theme, className, list, qa, } = props;
38
21
  const qaAttributes = getQaAttrubutes(qa, ['links', 'link', 'buttons', 'button', 'list']);
@@ -42,6 +25,13 @@ const Content = (props) => {
42
25
  const hasTitle = Boolean(title);
43
26
  const defaultTitleId = useUniqId();
44
27
  const titleId = titleIdFromProps || defaultTitleId;
28
+ const controls = useMemo(() => renderContentControls({
29
+ size,
30
+ links,
31
+ buttons,
32
+ titleId,
33
+ qa: qaAttributes,
34
+ }), [size, links, buttons, titleId, qaAttributes]);
45
35
  return (React.createElement(Col, { className: b({ size, centered, theme }, className), reset: true, sizes: colSizes, qa: qaAttributes.container },
46
36
  title && (React.createElement(Title, { className: b('title'), title: titleProps, colSizes: { all: 12 }, id: titleId })),
47
37
  text && (React.createElement("div", { className: b('text', { ['without-title']: !hasTitle }) },
@@ -54,7 +44,6 @@ const Content = (props) => {
54
44
  'constructor-notice': true,
55
45
  [`constructor-size-${size}`]: true,
56
46
  } }))),
57
- links && (React.createElement("div", { className: b('links'), "data-qa": qaAttributes.links }, links.map((link) => (React.createElement(LinkBlock, Object.assign({ className: b('link') }, link, { textSize: getLinkSize(size), key: link.url, qa: qaAttributes.link, extraProps: Object.assign({ 'aria-describedby': link.urlTitle ? undefined : titleId }, link.extraProps) })))))),
58
- buttons && (React.createElement("div", { className: b('buttons'), "data-qa": qaAttributes.buttons }, buttons.map((item) => (React.createElement(Button, Object.assign({ className: b('button') }, item, { key: item.url, size: getButtonSize(size), qa: qaAttributes.button, extraProps: Object.assign({ 'aria-describedby': item.urlTitle ? undefined : titleId }, item.extraProps) }))))))));
47
+ controls));
59
48
  };
60
49
  export default Content;
@@ -285,7 +285,6 @@ unpredictable css rules order in build */
285
285
  justify-content: flex-end;
286
286
  }
287
287
  .pc-hubspot-form .hs-button.primary {
288
- margin: 0;
289
288
  padding: 0;
290
289
  font-family: var(--g-text-body-font-family);
291
290
  font-size: inherit;
@@ -2,17 +2,15 @@ import React, { forwardRef, useContext, useMemo } from 'react';
2
2
  import { MobileContext } from '../../context/mobileContext';
3
3
  import { useTheme } from '../../context/theme';
4
4
  import { useAnalytics, useHandleHubspotEvents } from '../../hooks';
5
- import { useMetrika } from '../../hooks/useMetrika';
6
5
  import { DefaultEventNames } from '../../models';
7
6
  import { block } from '../../utils';
8
7
  import HubspotFormContainer from './HubspotFormContainer';
9
8
  import './HubspotForm.css';
10
9
  const b = block('hubspot-form');
11
10
  const HubspotForm = forwardRef((props, ref) => {
12
- const { className, theme: themeProp, isMobile: isMobileProp, formId, formInstanceId, portalId, region, formClassName, pixelEvents,
11
+ const { className, theme: themeProp, isMobile: isMobileProp, formId, formInstanceId, portalId, region, formClassName,
13
12
  // hubspotEvents, // TODO: decide how to handle them
14
13
  analyticsEvents, onBeforeSubmit, onSubmit, onBeforeLoad, onLoad, createDOMElement, onSubmitError, } = props;
15
- const handleMetrika = useMetrika();
16
14
  const themeValue = useTheme();
17
15
  const handleAnalytics = useAnalytics(DefaultEventNames.HubspotFormSubmit);
18
16
  const isMobileValue = useContext(MobileContext);
@@ -24,7 +22,6 @@ const HubspotForm = forwardRef((props, ref) => {
24
22
  onLoad,
25
23
  onSubmitError,
26
24
  onSubmit: (event) => {
27
- handleMetrika === null || handleMetrika === void 0 ? void 0 : handleMetrika({ pixelEvents });
28
25
  handleAnalytics(analyticsEvents);
29
26
  onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(event);
30
27
  },
@@ -32,8 +29,6 @@ const HubspotForm = forwardRef((props, ref) => {
32
29
  onBeforeLoad,
33
30
  onBeforeSubmit,
34
31
  onLoad,
35
- handleMetrika,
36
- pixelEvents,
37
32
  handleAnalytics,
38
33
  analyticsEvents,
39
34
  onSubmit,
@@ -1,5 +1,10 @@
1
1
  /* use this for style redefinitions to awoid problems with
2
2
  unpredictable css rules order in build */
3
+ .pc-layout-item {
4
+ display: flex;
5
+ flex-direction: column;
6
+ height: 100%;
7
+ }
3
8
  .pc-layout-item__media {
4
9
  width: 100%;
5
10
  display: block;
@@ -12,6 +17,7 @@ unpredictable css rules order in build */
12
17
  margin: 16px 0 -8px 0;
13
18
  }
14
19
  .pc-layout-item__content {
20
+ flex: auto;
15
21
  margin: 16px 16px 0 0;
16
22
  }
17
23
  .pc-layout-item__content_no-media {
@@ -1,4 +1,4 @@
1
1
  import { LayoutItemProps } from '../../models';
2
2
  import './LayoutItem.css';
3
- declare const LayoutItem: ({ content: { links, ...content }, metaInfo, media, border, fullscreen, icon, className, analyticsEvents, }: LayoutItemProps) => JSX.Element;
3
+ declare const LayoutItem: ({ content: { links, buttons, ...content }, metaInfo, media, border, fullscreen, icon, className, analyticsEvents, controlPosition, }: LayoutItemProps) => JSX.Element;
4
4
  export default LayoutItem;
@@ -1,14 +1,25 @@
1
1
  import { __rest } from "tslib";
2
- import React from 'react';
2
+ import React, { useMemo } from 'react';
3
+ import { useUniqId } from '@gravity-ui/uikit';
3
4
  import { FullscreenMedia, IconWrapper, Media, MetaInfo } from '../../components';
4
5
  import { block } from '../../utils';
6
+ import renderContentControls from '../../utils/renderContentControls/renderContentControls';
5
7
  import Content from '../Content/Content';
6
8
  import { getLayoutItemLinks, hasFullscreen, showFullscreenIcon } from './utils';
7
9
  import './LayoutItem.css';
8
10
  const b = block('layout-item');
9
11
  const LayoutItem = (_a) => {
10
- var _b = _a.content, { links } = _b, content = __rest(_b, ["links"]), { metaInfo, media, border, fullscreen, icon, className, analyticsEvents } = _a;
11
- const contentProps = Object.assign(Object.assign({}, content), { links: getLayoutItemLinks(links), size: 's', colSizes: { all: 12, md: 12 } });
12
+ var _b = _a.content, { links, buttons } = _b, content = __rest(_b, ["links", "buttons"]), { metaInfo, media, border, fullscreen, icon, className, analyticsEvents, controlPosition = 'content' } = _a;
13
+ const normalizedLinks = useMemo(() => getLayoutItemLinks(links), [links]);
14
+ const areControlsInFooter = controlPosition === 'footer';
15
+ const contentProps = Object.assign(Object.assign(Object.assign({}, content), (areControlsInFooter ? {} : { links: normalizedLinks, buttons })), { size: 's', colSizes: { all: 12, md: 12 } });
16
+ const titleId = useUniqId();
17
+ const footerControls = useMemo(() => renderContentControls({
18
+ links: areControlsInFooter ? links : undefined,
19
+ buttons: areControlsInFooter ? buttons : undefined,
20
+ size: 's',
21
+ titleId,
22
+ }), [areControlsInFooter, links, buttons, titleId]);
12
23
  const renderMedia = () => {
13
24
  if (!media) {
14
25
  return null;
@@ -23,6 +34,7 @@ const LayoutItem = (_a) => {
23
34
  metaInfo && React.createElement(MetaInfo, { items: metaInfo, className: b('meta-info') }),
24
35
  React.createElement("div", { className: b('content', { 'no-media': !media }) },
25
36
  React.createElement(IconWrapper, { icon: icon },
26
- React.createElement(Content, Object.assign({}, contentProps))))));
37
+ React.createElement(Content, Object.assign({}, contentProps, { titleId: titleId })))),
38
+ footerControls));
27
39
  };
28
40
  export default LayoutItem;
@@ -450,6 +450,10 @@ export declare const LayoutItem: {
450
450
  optionName: string;
451
451
  })[];
452
452
  };
453
+ controlPosition: {
454
+ type: string;
455
+ enum: string[];
456
+ };
453
457
  type: {};
454
458
  when: {
455
459
  type: string;
@@ -20,5 +20,8 @@ export const LayoutItem = {
20
20
  optionName: 'list',
21
21
  },
22
22
  ],
23
+ }, controlPosition: {
24
+ type: 'string',
25
+ enum: ['content', 'footer'],
23
26
  } }),
24
27
  };
@@ -8,22 +8,8 @@ export declare const getLayoutItemLinks: (links: LayoutItemProps['content']['lin
8
8
  colorTheme?: import("../../models").TextTheme | undefined;
9
9
  arrow?: boolean | undefined;
10
10
  target?: string | undefined;
11
- metrikaGoals?: import("../../models").MetrikaGoal | undefined;
12
- pixelEvents?: import("../../models").ButtonPixel | undefined;
13
11
  extraProps?: import("react").HTMLProps<HTMLAnchorElement> | undefined;
14
- analyticsEvents?: {
15
- name: string;
16
- type?: string | undefined;
17
- counters?: import("../../models").AnalyticsCounters | undefined;
18
- context?: string | undefined;
19
- target?: string | undefined;
20
- } | {
21
- name: string;
22
- type?: string | undefined;
23
- counters?: import("../../models").AnalyticsCounters | undefined;
24
- context?: string | undefined;
25
- target?: string | undefined;
26
- }[] | undefined;
12
+ analyticsEvents?: import("../../models").AnalyticsEventsProp | undefined;
27
13
  className?: string | undefined;
28
14
  tabIndex?: number | undefined;
29
15
  }[] | undefined;
@@ -86,11 +86,8 @@ unpredictable css rules order in build */
86
86
  .pc-price-card__links, .pc-price-card__buttons {
87
87
  margin-top: 24px;
88
88
  }
89
- .pc-price-card__links > *:not(:last-child), .pc-price-card__buttons > *:not(:last-child) {
90
- margin-right: 16px;
91
- }
92
- .pc-price-card__link {
93
- margin-top: 0;
89
+ .pc-price-card__footer {
90
+ margin-top: 0px;
94
91
  }
95
92
  @media (max-width: 769px) {
96
93
  .pc-price-card__title, .pc-price-card__price {
@@ -1,13 +1,13 @@
1
1
  import React from 'react';
2
2
  import Check from '@gravity-ui/icons/Check';
3
- import { BackgroundImage, Button, CardBase, ContentList, HTML, Link as LinkBlock, } from '../../components';
3
+ import { BackgroundImage, Buttons, CardBase, ContentList, HTML, Links } from '../../components';
4
4
  import { block } from '../../utils';
5
5
  import './PriceCard.css';
6
6
  const b = block('price-card');
7
7
  const PriceCard = (props) => {
8
8
  const { border, title, price, pricePeriod, priceDetails, theme, description, list, buttons, links, backgroundColor, } = props;
9
9
  return (React.createElement(CardBase, { className: b({ theme }), border: border },
10
- React.createElement(CardBase.Content, null,
10
+ React.createElement(CardBase.Content, { key: "content" },
11
11
  React.createElement(BackgroundImage, { className: b('background'), style: { backgroundColor } }),
12
12
  React.createElement("div", { className: b('content', { theme }) },
13
13
  React.createElement("div", { className: b('info') },
@@ -25,7 +25,7 @@ const PriceCard = (props) => {
25
25
  icon: Check,
26
26
  text: item,
27
27
  })), size: "l" }))) : null),
28
- buttons && (React.createElement("div", { className: b('buttons') }, buttons.map((button) => (React.createElement(Button, Object.assign({ key: button.url }, button)))))),
29
- links && (React.createElement("div", { className: b('links') }, links.map((link) => (React.createElement(LinkBlock, Object.assign({ className: b('link'), key: link.url, textSize: "m" }, link))))))))));
28
+ React.createElement(Buttons, { className: b('buttons'), buttons: buttons, size: "s" }),
29
+ React.createElement(Links, { className: b('links'), links: links, size: "s" })))));
30
30
  };
31
31
  export default PriceCard;
@@ -76,94 +76,6 @@ export declare const PriceCardBlock: {
76
76
  optionName: string;
77
77
  })[];
78
78
  };
79
- metrikaGoals: {
80
- oneOf: ({
81
- type: string;
82
- optionName: string;
83
- items?: undefined;
84
- } | {
85
- type: string;
86
- items: {
87
- type: string;
88
- additionalProperties?: undefined;
89
- required?: undefined;
90
- properties?: undefined;
91
- };
92
- optionName: string;
93
- } | {
94
- type: string;
95
- items: {
96
- type: string;
97
- additionalProperties: boolean;
98
- required: string[];
99
- properties: {
100
- name: {
101
- type: string;
102
- };
103
- isCrossSite: {
104
- type: string;
105
- };
106
- };
107
- };
108
- optionName: string;
109
- })[];
110
- };
111
- pixelEvents: {
112
- type: string;
113
- items: {
114
- type: string;
115
- required: string[];
116
- additionalProperties: boolean;
117
- properties: {
118
- name: {
119
- type: string;
120
- enum: import("../..").PixelEventType[];
121
- };
122
- data: {};
123
- };
124
- select: {
125
- $data: string;
126
- };
127
- selectCases: {
128
- SubmitApplication: {
129
- additionalProperties: boolean;
130
- properties: {
131
- name: {};
132
- };
133
- };
134
- Contact: {
135
- additionalProperties: boolean;
136
- properties: {
137
- name: {};
138
- };
139
- };
140
- Lead: {
141
- additionalProperties: boolean;
142
- properties: {
143
- name: {};
144
- data: {
145
- type: string;
146
- additionalProperties: boolean;
147
- properties: {
148
- content_category: {
149
- type: string;
150
- };
151
- content_name: {
152
- type: string;
153
- };
154
- currency: {
155
- type: string;
156
- };
157
- value: {
158
- type: string;
159
- };
160
- };
161
- };
162
- };
163
- };
164
- };
165
- };
166
- };
167
79
  analyticsEvents: {
168
80
  oneOf: ({
169
81
  optionName: string;
@@ -398,6 +310,10 @@ export declare const PriceCardBlock: {
398
310
  type: string;
399
311
  };
400
312
  };
313
+ controlPosition: {
314
+ type: string;
315
+ enum: string[];
316
+ };
401
317
  border: {
402
318
  type: string;
403
319
  enum: string[];
@@ -27,6 +27,9 @@ export const PriceCardBlock = {
27
27
  items: {
28
28
  type: 'string',
29
29
  },
30
+ }, controlPosition: {
31
+ type: 'string',
32
+ enum: ['content', 'footer'],
30
33
  } }),
31
34
  },
32
35
  };
@@ -1,3 +1,4 @@
1
1
  import { PriceDetailedProps } from '../../models';
2
+ /** @deprecated */
2
3
  declare const PriceDetailed: (props: PriceDetailedProps) => JSX.Element;
3
4
  export default PriceDetailed;
@@ -4,6 +4,8 @@ import CombinedPriceDetailed from './CombinedPriceDetailed/CombinedPriceDetailed
4
4
  import PriceDescription from './PriceDescription/PriceDescription';
5
5
  import PriceDetails from './PriceDetails/PriceDetails';
6
6
  import SeparatePriceDetailed from './SeparatePriceDetailed/SeparatePriceDetailed';
7
+ // eslint-disable-next-line valid-jsdoc
8
+ /** @deprecated */
7
9
  const PriceDetailed = (props) => {
8
10
  const { priceType = PriceDetailsType.SETTINGS, items, numberGroupItems = 1, description, details, foldable, labelsDefaultText, isCombined = false, useMixedView = false, border, } = props;
9
11
  const { titleSize: descriptionTitleSize = 'l', descriptionSize = 'm', titleColor: descriptionTitleColor = 'cornflower', } = description || {};
@@ -1,3 +1,4 @@
1
+ /** @deprecated */
1
2
  export declare const PriceDetailedBlock: {
2
3
  'price-detailed': {
3
4
  additionalProperties: boolean;
@@ -146,6 +146,7 @@ const PriceItem = {
146
146
  ],
147
147
  } }),
148
148
  };
149
+ /** @deprecated */
149
150
  export const PriceDetailedBlock = {
150
151
  'price-detailed': {
151
152
  additionalProperties: false,
@@ -0,0 +1,3 @@
1
+ .pc-card-footer-controls {
2
+ margin-top: 0px;
3
+ }
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const renderCardFooterControlsContainer: (children: React.ReactElement) => JSX.Element;
3
+ export default renderCardFooterControlsContainer;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { CardBase } from '../../components';
3
+ import { block } from '../../utils';
4
+ const b = block('card-footer-controls-containe');
5
+ const renderCardFooterControlsContainer = (children) => (React.createElement(CardBase.Footer, { className: b() }, children));
6
+ export default renderCardFooterControlsContainer;
@@ -1,18 +1,18 @@
1
- import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
2
- import { Lang } from '../utils/configure';
1
+ import { MarkdownItPluginCb } from '@diplodoc/transform/lib/plugins/typings';
2
+ import { Lang } from '@gravity-ui/uikit';
3
3
  export type ComplexItem = {
4
4
  [key: string]: string;
5
5
  };
6
6
  export type Item = string | null | ComplexItem;
7
7
  export type Transformer = (text: string) => string;
8
- export type TransformerRaw = (lang: Lang, content: string, options: {
8
+ export type TransformerRaw = (lang: `${Lang}`, content: string, options: {
9
9
  plugins: MarkdownItPluginCb[];
10
10
  }) => string;
11
11
  export type Parser<T = any> = (transformer: Transformer, block: T) => T;
12
12
  export declare const createItemsParser: (fields: string[]) => (transformer: Transformer, items: Item[]) => (string | {
13
13
  [x: string]: string;
14
14
  } | null)[];
15
- export declare function yfmTransformer(lang: Lang, content: string, options?: {
15
+ export declare function yfmTransformer(lang: `${Lang}`, content: string, options?: {
16
16
  plugins?: MarkdownItPluginCb[];
17
17
  }): string;
18
- export declare function typografTransformer(lang: Lang, content: string): string;
18
+ export declare function typografTransformer(lang: `${Lang}`, content: string): string;
@@ -1,4 +1,4 @@
1
- import defaultPlugins from '@doc-tools/transform/lib/plugins';
1
+ import defaultPlugins from '@diplodoc/transform/lib/plugins';
2
2
  import { fullTransform, typografToHTML } from './utils';
3
3
  export const createItemsParser = (fields) => (transformer, items) => items.map((item) => {
4
4
  if (!item) {
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable no-param-reassign */
2
2
  /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */
3
- import evalExp from '@doc-tools/transform/lib/liquid/evaluation';
3
+ import evalExp from '@diplodoc/transform/lib/liquid/evaluation';
4
4
  function filterItems(items, vars, propertyName) {
5
5
  if (!Array.isArray(items)) {
6
6
  throw new Error(`Error while filtering: items has invalid key '${propertyName}' equals ${JSON.stringify(items)}`);
@@ -1,13 +1,13 @@
1
- import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
1
+ import { MarkdownItPluginCb } from '@diplodoc/transform/lib/plugins/typings';
2
+ import { Lang } from '@gravity-ui/uikit';
2
3
  import { ConstructorBlock } from '../models/constructor';
3
- import { Lang } from '../utils/configure';
4
4
  export type ContentVariables = Record<string, string>;
5
5
  export type ContentTransformerProps = {
6
6
  content: {
7
7
  blocks?: ConstructorBlock[];
8
8
  };
9
9
  options: {
10
- lang: Lang;
10
+ lang: `${Lang}`;
11
11
  customConfig?: {};
12
12
  vars?: ContentVariables;
13
13
  plugins?: MarkdownItPluginCb[];
@@ -1,13 +1,13 @@
1
- import { Options, Output } from '@doc-tools/transform';
1
+ import { Options, Output } from '@diplodoc/transform';
2
+ import { Lang } from '@gravity-ui/uikit';
2
3
  import sanitize from 'sanitize-html';
3
- import { Lang } from '../utils/configure';
4
4
  import AddRuleOptions = typograf.AddRuleOptions;
5
5
  export declare enum TransformType {
6
6
  Text = "text",
7
7
  Html = "html"
8
8
  }
9
9
  interface TransformOptions extends Options {
10
- lang: Lang;
10
+ lang: `${Lang}`;
11
11
  }
12
12
  export declare const DEFAULT_ALLOWED_TAGS: string[];
13
13
  export declare const typografConfig: {
@@ -16,16 +16,16 @@ export declare const typografConfig: {
16
16
  };
17
17
  export declare const sanitizeStripOptions: sanitize.IOptions;
18
18
  export declare function addTypografRules(options: AddRuleOptions[]): void;
19
- export declare function typograf(text: string, lang?: Lang): string;
19
+ export declare function typograf(text: string, lang?: `${Lang}`): string;
20
20
  export declare function sanitizeHtml(html: string, options?: sanitize.IOptions): string;
21
- export declare function typografToHTML(text: string, lang: Lang, allowedTags?: string[]): string;
22
- export declare function typografToText(text: string, lang: Lang): string;
21
+ export declare function typografToHTML(text: string, lang: `${Lang}`, allowedTags?: string[]): string;
22
+ export declare function typografToText(text: string, lang: `${Lang}`): string;
23
23
  export declare const transformMarkdown: (input: string, options: TransformOptions) => Output['result'];
24
24
  export declare function fullTransform(input: string, { lang, ...options }: TransformOptions): Output['result'];
25
25
  export interface TypografEntityParams {
26
26
  entity: Record<string, string>;
27
27
  fields: string[];
28
- lang: Lang;
28
+ lang: `${Lang}`;
29
29
  transformType: TransformType;
30
30
  }
31
31
  export declare function typografEntity({ entity, fields, lang, transformType, }: TypografEntityParams): Record<string, string>;
@@ -1,8 +1,8 @@
1
1
  import { __rest } from "tslib";
2
- import transformYFM from '@doc-tools/transform';
2
+ import transformYFM from '@diplodoc/transform';
3
+ import { Lang } from '@gravity-ui/uikit';
3
4
  import sanitize from 'sanitize-html';
4
5
  import Typograf from 'typograf';
5
- import { Lang } from '../utils/configure';
6
6
  export var TransformType;
7
7
  (function (TransformType) {
8
8
  TransformType["Text"] = "text";