@gravity-ui/page-constructor 6.0.0 → 7.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/README.md +10 -0
  2. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.css +11 -6
  3. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +3 -5
  4. package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  5. package/build/cjs/blocks/Header/Header.css +15 -10
  6. package/build/cjs/blocks/Header/Header.js +6 -1
  7. package/build/cjs/blocks/Header/Header.js.map +1 -1
  8. package/build/cjs/blocks/HeaderSlider/HeaderSlider.css +0 -10
  9. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js +2 -2
  10. package/build/cjs/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  11. package/build/cjs/blocks/HeaderSlider/schema.d.ts +9 -1
  12. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.css +43 -21
  13. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +3 -1
  14. package/build/cjs/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  15. package/build/cjs/blocks/Share/Share.js +5 -1
  16. package/build/cjs/blocks/Share/Share.js.map +1 -1
  17. package/build/cjs/blocks/Slider/Arrow/Arrow.css +22 -21
  18. package/build/cjs/blocks/Slider/Arrow/Arrow.d.ts +4 -2
  19. package/build/cjs/blocks/Slider/Arrow/Arrow.js +1 -1
  20. package/build/cjs/blocks/Slider/Arrow/Arrow.js.map +1 -1
  21. package/build/cjs/blocks/Slider/Slider.css +549 -329
  22. package/build/cjs/blocks/Slider/Slider.d.ts +6 -5
  23. package/build/cjs/blocks/Slider/Slider.js +31 -271
  24. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  25. package/build/cjs/blocks/Slider/i18n/en.json +1 -1
  26. package/build/cjs/blocks/Slider/i18n/ru.json +1 -1
  27. package/build/cjs/blocks/Slider/models.d.ts +2 -2
  28. package/build/cjs/blocks/Slider/models.js +1 -1
  29. package/build/cjs/blocks/Slider/models.js.map +1 -1
  30. package/build/cjs/blocks/Slider/schema.d.ts +18 -1
  31. package/build/cjs/blocks/Slider/schema.js +9 -0
  32. package/build/cjs/blocks/Slider/schema.js.map +1 -1
  33. package/build/{esm/blocks/SliderNew → cjs/blocks/Slider}/useSlider.d.ts +1 -0
  34. package/build/cjs/blocks/{SliderNew → Slider}/useSlider.js +4 -0
  35. package/build/cjs/blocks/Slider/useSlider.js.map +1 -0
  36. package/build/cjs/blocks/Slider/useSliderPagination.js.map +1 -0
  37. package/build/cjs/blocks/Slider/utils.d.ts +7 -28
  38. package/build/cjs/blocks/Slider/utils.js +27 -109
  39. package/build/cjs/blocks/Slider/utils.js.map +1 -1
  40. package/build/cjs/blocks/{SliderNew → SliderOld}/Arrow/Arrow.css +15 -12
  41. package/build/cjs/blocks/SliderOld/Arrow/Arrow.d.ts +9 -0
  42. package/build/cjs/blocks/SliderOld/Arrow/Arrow.js +11 -0
  43. package/build/cjs/blocks/SliderOld/Arrow/Arrow.js.map +1 -0
  44. package/build/cjs/blocks/SliderOld/SliderOld.css +703 -0
  45. package/build/cjs/blocks/SliderOld/SliderOld.d.ts +17 -0
  46. package/build/cjs/blocks/SliderOld/SliderOld.js +292 -0
  47. package/build/cjs/blocks/SliderOld/SliderOld.js.map +1 -0
  48. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/en.json +1 -1
  49. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/index.d.ts +1 -1
  50. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/index.js +1 -1
  51. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/index.js.map +1 -1
  52. package/build/cjs/blocks/{SliderNew → SliderOld}/i18n/ru.json +1 -1
  53. package/build/cjs/blocks/{SliderNew → SliderOld}/models.d.ts +2 -2
  54. package/build/cjs/blocks/{SliderNew → SliderOld}/models.js +1 -1
  55. package/build/cjs/blocks/{SliderNew → SliderOld}/models.js.map +1 -1
  56. package/build/{esm/blocks/SliderNew → cjs/blocks/SliderOld}/schema.d.ts +5 -21
  57. package/build/cjs/blocks/{SliderNew → SliderOld}/schema.js +6 -14
  58. package/build/cjs/blocks/SliderOld/schema.js.map +1 -0
  59. package/build/cjs/blocks/SliderOld/utils.d.ts +37 -0
  60. package/build/cjs/blocks/SliderOld/utils.js +126 -0
  61. package/build/cjs/blocks/SliderOld/utils.js.map +1 -0
  62. package/build/cjs/blocks/Table/Table.css +4 -3
  63. package/build/cjs/blocks/Table/Table.js +3 -1
  64. package/build/cjs/blocks/Table/Table.js.map +1 -1
  65. package/build/cjs/blocks/index.d.ts +2 -0
  66. package/build/cjs/blocks/index.js +3 -1
  67. package/build/cjs/blocks/index.js.map +1 -1
  68. package/build/cjs/blocks/validators.d.ts +1 -0
  69. package/build/cjs/blocks/validators.js +1 -0
  70. package/build/cjs/blocks/validators.js.map +1 -1
  71. package/build/cjs/components/ContentList/ContentList.css +16 -12
  72. package/build/cjs/components/ContentList/ContentList.js +1 -1
  73. package/build/cjs/components/ContentList/ContentList.js.map +1 -1
  74. package/build/cjs/components/FileLink/FileLink.js +8 -1
  75. package/build/cjs/components/FileLink/FileLink.js.map +1 -1
  76. package/build/cjs/components/FullscreenImage/FullscreenImage.css +96 -18
  77. package/build/cjs/components/FullscreenImage/FullscreenImage.d.ts +5 -0
  78. package/build/cjs/components/FullscreenImage/FullscreenImage.js +14 -2
  79. package/build/cjs/components/FullscreenImage/FullscreenImage.js.map +1 -1
  80. package/build/cjs/components/HTML/HTML.d.ts +15 -8
  81. package/build/cjs/components/HTML/HTML.js +15 -10
  82. package/build/cjs/components/HTML/HTML.js.map +1 -1
  83. package/build/cjs/components/Link/Link.js +11 -2
  84. package/build/cjs/components/Link/Link.js.map +1 -1
  85. package/build/cjs/components/Media/Image/Image.d.ts +1 -0
  86. package/build/cjs/components/Media/Image/Image.js +7 -5
  87. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  88. package/build/cjs/components/Media/Media.css +4 -0
  89. package/build/cjs/components/Media/Media.d.ts +1 -0
  90. package/build/cjs/components/Media/Media.js +3 -2
  91. package/build/cjs/components/Media/Media.js.map +1 -1
  92. package/build/cjs/components/MetaInfo/MetaInfo.css +1 -1
  93. package/build/cjs/components/MetaInfo/MetaInfo.js +1 -1
  94. package/build/cjs/components/MetaInfo/MetaInfo.js.map +1 -1
  95. package/build/cjs/components/Table/Table.css +2 -1
  96. package/build/cjs/components/Table/Table.js +4 -2
  97. package/build/cjs/components/Table/Table.js.map +1 -1
  98. package/build/cjs/components/Title/TitleItem.css +15 -5
  99. package/build/cjs/components/Title/TitleItem.js +4 -1
  100. package/build/cjs/components/Title/TitleItem.js.map +1 -1
  101. package/build/cjs/components/YFMWrapper/YFMWrapper.d.ts +4 -2
  102. package/build/cjs/components/YFMWrapper/YFMWrapper.js +4 -3
  103. package/build/cjs/components/YFMWrapper/YFMWrapper.js.map +1 -1
  104. package/build/cjs/constructor-items.d.ts +2 -2
  105. package/build/cjs/constructor-items.js +2 -4
  106. package/build/cjs/constructor-items.js.map +1 -1
  107. package/build/cjs/editor/data/templates/{slider-new-block.json → slider-old-block.json} +2 -2
  108. package/build/cjs/models/common.d.ts +1 -0
  109. package/build/cjs/models/common.js.map +1 -1
  110. package/build/cjs/models/constructor-items/blocks.d.ts +17 -15
  111. package/build/cjs/models/constructor-items/blocks.js +3 -2
  112. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  113. package/build/cjs/models/constructor-items/common.d.ts +2 -2
  114. package/build/cjs/models/constructor-items/common.js.map +1 -1
  115. package/build/cjs/schema/constants.js +3 -1
  116. package/build/cjs/schema/constants.js.map +1 -1
  117. package/build/cjs/schema/validators/blocks.d.ts +2 -2
  118. package/build/cjs/schema/validators/blocks.js +2 -2
  119. package/build/cjs/schema/validators/blocks.js.map +1 -1
  120. package/build/cjs/schema/validators/common.js +1 -1
  121. package/build/cjs/schema/validators/common.js.map +1 -1
  122. package/build/cjs/sub-blocks/BannerCard/BannerCard.css +14 -8
  123. package/build/cjs/sub-blocks/BannerCard/BannerCard.js +3 -1
  124. package/build/cjs/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  125. package/build/cjs/sub-blocks/Content/Content.css +80 -31
  126. package/build/cjs/sub-blocks/Content/Content.js +3 -1
  127. package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
  128. package/build/cjs/sub-blocks/PriceCard/PriceCard.css +2 -1
  129. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +1 -1
  130. package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  131. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -0
  132. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  133. package/build/cjs/sub-blocks/Quote/Quote.css +8 -4
  134. package/build/cjs/sub-blocks/Quote/Quote.js +2 -1
  135. package/build/cjs/sub-blocks/Quote/Quote.js.map +1 -1
  136. package/build/cjs/text-transform/common.d.ts +4 -3
  137. package/build/cjs/text-transform/common.js +41 -18
  138. package/build/cjs/text-transform/common.js.map +1 -1
  139. package/build/cjs/text-transform/config.d.ts +5 -2
  140. package/build/cjs/text-transform/config.js +84 -43
  141. package/build/cjs/text-transform/config.js.map +1 -1
  142. package/build/cjs/text-transform/transformers.js +2 -2
  143. package/build/cjs/text-transform/transformers.js.map +1 -1
  144. package/build/cjs/utils/blocks.d.ts +10 -2
  145. package/build/cjs/utils/blocks.js +10 -3
  146. package/build/cjs/utils/blocks.js.map +1 -1
  147. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.css +11 -6
  148. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +4 -6
  149. package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js.map +1 -1
  150. package/build/esm/blocks/Header/Header.css +15 -10
  151. package/build/esm/blocks/Header/Header.js +7 -2
  152. package/build/esm/blocks/Header/Header.js.map +1 -1
  153. package/build/esm/blocks/HeaderSlider/HeaderSlider.css +0 -10
  154. package/build/esm/blocks/HeaderSlider/HeaderSlider.js +1 -1
  155. package/build/esm/blocks/HeaderSlider/HeaderSlider.js.map +1 -1
  156. package/build/esm/blocks/HeaderSlider/schema.d.ts +9 -1
  157. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.css +43 -21
  158. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js +4 -2
  159. package/build/esm/blocks/Questions/QuestionBlockItem/QuestionBlockItem.js.map +1 -1
  160. package/build/esm/blocks/Share/Share.js +5 -1
  161. package/build/esm/blocks/Share/Share.js.map +1 -1
  162. package/build/esm/blocks/Slider/Arrow/Arrow.css +22 -21
  163. package/build/esm/blocks/Slider/Arrow/Arrow.d.ts +4 -2
  164. package/build/esm/blocks/Slider/Arrow/Arrow.js +1 -1
  165. package/build/esm/blocks/Slider/Arrow/Arrow.js.map +1 -1
  166. package/build/esm/blocks/Slider/Slider.css +549 -329
  167. package/build/esm/blocks/Slider/Slider.d.ts +6 -5
  168. package/build/esm/blocks/Slider/Slider.js +32 -272
  169. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  170. package/build/esm/blocks/Slider/i18n/en.json +1 -1
  171. package/build/esm/blocks/Slider/i18n/ru.json +1 -1
  172. package/build/esm/blocks/Slider/models.d.ts +2 -2
  173. package/build/esm/blocks/Slider/models.js +1 -1
  174. package/build/esm/blocks/Slider/models.js.map +1 -1
  175. package/build/esm/blocks/Slider/schema.d.ts +18 -1
  176. package/build/esm/blocks/Slider/schema.js +9 -0
  177. package/build/esm/blocks/Slider/schema.js.map +1 -1
  178. package/build/{cjs/blocks/SliderNew → esm/blocks/Slider}/useSlider.d.ts +1 -0
  179. package/build/esm/blocks/{SliderNew → Slider}/useSlider.js +4 -0
  180. package/build/esm/blocks/Slider/useSlider.js.map +1 -0
  181. package/build/esm/blocks/Slider/useSliderPagination.js.map +1 -0
  182. package/build/esm/blocks/Slider/utils.d.ts +7 -28
  183. package/build/esm/blocks/Slider/utils.js +24 -103
  184. package/build/esm/blocks/Slider/utils.js.map +1 -1
  185. package/build/esm/blocks/{SliderNew → SliderOld}/Arrow/Arrow.css +15 -12
  186. package/build/esm/blocks/SliderOld/Arrow/Arrow.d.ts +10 -0
  187. package/build/esm/blocks/SliderOld/Arrow/Arrow.js +9 -0
  188. package/build/esm/blocks/SliderOld/Arrow/Arrow.js.map +1 -0
  189. package/build/esm/blocks/SliderOld/SliderOld.css +703 -0
  190. package/build/esm/blocks/SliderOld/SliderOld.d.ts +18 -0
  191. package/build/esm/blocks/SliderOld/SliderOld.js +288 -0
  192. package/build/esm/blocks/SliderOld/SliderOld.js.map +1 -0
  193. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/en.json +1 -1
  194. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/index.d.ts +1 -1
  195. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/index.js +1 -1
  196. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/index.js.map +1 -1
  197. package/build/esm/blocks/{SliderNew → SliderOld}/i18n/ru.json +1 -1
  198. package/build/esm/blocks/{SliderNew → SliderOld}/models.d.ts +2 -2
  199. package/build/esm/blocks/{SliderNew → SliderOld}/models.js +1 -1
  200. package/build/esm/blocks/{SliderNew → SliderOld}/models.js.map +1 -1
  201. package/build/{cjs/blocks/SliderNew → esm/blocks/SliderOld}/schema.d.ts +5 -21
  202. package/build/esm/blocks/{SliderNew → SliderOld}/schema.js +5 -13
  203. package/build/esm/blocks/SliderOld/schema.js.map +1 -0
  204. package/build/esm/blocks/SliderOld/utils.d.ts +37 -0
  205. package/build/esm/blocks/SliderOld/utils.js +116 -0
  206. package/build/esm/blocks/SliderOld/utils.js.map +1 -0
  207. package/build/esm/blocks/Table/Table.css +4 -3
  208. package/build/esm/blocks/Table/Table.js +4 -2
  209. package/build/esm/blocks/Table/Table.js.map +1 -1
  210. package/build/esm/blocks/index.d.ts +2 -0
  211. package/build/esm/blocks/index.js +1 -0
  212. package/build/esm/blocks/index.js.map +1 -1
  213. package/build/esm/blocks/validators.d.ts +1 -0
  214. package/build/esm/blocks/validators.js +1 -0
  215. package/build/esm/blocks/validators.js.map +1 -1
  216. package/build/esm/components/ContentList/ContentList.css +16 -12
  217. package/build/esm/components/ContentList/ContentList.js +1 -1
  218. package/build/esm/components/ContentList/ContentList.js.map +1 -1
  219. package/build/esm/components/FileLink/FileLink.js +8 -1
  220. package/build/esm/components/FileLink/FileLink.js.map +1 -1
  221. package/build/esm/components/FullscreenImage/FullscreenImage.css +96 -18
  222. package/build/esm/components/FullscreenImage/FullscreenImage.d.ts +5 -0
  223. package/build/esm/components/FullscreenImage/FullscreenImage.js +14 -2
  224. package/build/esm/components/FullscreenImage/FullscreenImage.js.map +1 -1
  225. package/build/esm/components/HTML/HTML.d.ts +15 -8
  226. package/build/esm/components/HTML/HTML.js +17 -11
  227. package/build/esm/components/HTML/HTML.js.map +1 -1
  228. package/build/esm/components/Link/Link.js +12 -3
  229. package/build/esm/components/Link/Link.js.map +1 -1
  230. package/build/esm/components/Media/Image/Image.d.ts +1 -0
  231. package/build/esm/components/Media/Image/Image.js +7 -5
  232. package/build/esm/components/Media/Image/Image.js.map +1 -1
  233. package/build/esm/components/Media/Media.css +4 -0
  234. package/build/esm/components/Media/Media.d.ts +1 -0
  235. package/build/esm/components/Media/Media.js +3 -2
  236. package/build/esm/components/Media/Media.js.map +1 -1
  237. package/build/esm/components/MetaInfo/MetaInfo.css +1 -1
  238. package/build/esm/components/MetaInfo/MetaInfo.js +1 -1
  239. package/build/esm/components/MetaInfo/MetaInfo.js.map +1 -1
  240. package/build/esm/components/Table/Table.css +2 -1
  241. package/build/esm/components/Table/Table.js +5 -3
  242. package/build/esm/components/Table/Table.js.map +1 -1
  243. package/build/esm/components/Title/TitleItem.css +15 -5
  244. package/build/esm/components/Title/TitleItem.js +5 -2
  245. package/build/esm/components/Title/TitleItem.js.map +1 -1
  246. package/build/esm/components/YFMWrapper/YFMWrapper.d.ts +4 -2
  247. package/build/esm/components/YFMWrapper/YFMWrapper.js +5 -3
  248. package/build/esm/components/YFMWrapper/YFMWrapper.js.map +1 -1
  249. package/build/esm/constructor-items.d.ts +2 -2
  250. package/build/esm/constructor-items.js +3 -5
  251. package/build/esm/constructor-items.js.map +1 -1
  252. package/build/esm/editor/data/templates/{slider-new-block.json → slider-old-block.json} +2 -2
  253. package/build/esm/models/common.d.ts +1 -0
  254. package/build/esm/models/common.js.map +1 -1
  255. package/build/esm/models/constructor-items/blocks.d.ts +17 -15
  256. package/build/esm/models/constructor-items/blocks.js +3 -2
  257. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  258. package/build/esm/models/constructor-items/common.d.ts +2 -2
  259. package/build/esm/models/constructor-items/common.js.map +1 -1
  260. package/build/esm/schema/constants.js +4 -2
  261. package/build/esm/schema/constants.js.map +1 -1
  262. package/build/esm/schema/validators/blocks.d.ts +2 -2
  263. package/build/esm/schema/validators/blocks.js +2 -2
  264. package/build/esm/schema/validators/blocks.js.map +1 -1
  265. package/build/esm/schema/validators/common.js +1 -1
  266. package/build/esm/schema/validators/common.js.map +1 -1
  267. package/build/esm/sub-blocks/BannerCard/BannerCard.css +14 -8
  268. package/build/esm/sub-blocks/BannerCard/BannerCard.js +4 -2
  269. package/build/esm/sub-blocks/BannerCard/BannerCard.js.map +1 -1
  270. package/build/esm/sub-blocks/Content/Content.css +80 -31
  271. package/build/esm/sub-blocks/Content/Content.js +3 -1
  272. package/build/esm/sub-blocks/Content/Content.js.map +1 -1
  273. package/build/esm/sub-blocks/PriceCard/PriceCard.css +2 -1
  274. package/build/esm/sub-blocks/PriceCard/PriceCard.js +2 -2
  275. package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  276. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -0
  277. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  278. package/build/esm/sub-blocks/Quote/Quote.css +8 -4
  279. package/build/esm/sub-blocks/Quote/Quote.js +3 -2
  280. package/build/esm/sub-blocks/Quote/Quote.js.map +1 -1
  281. package/build/esm/text-transform/common.d.ts +4 -3
  282. package/build/esm/text-transform/common.js +41 -18
  283. package/build/esm/text-transform/common.js.map +1 -1
  284. package/build/esm/text-transform/config.d.ts +5 -2
  285. package/build/esm/text-transform/config.js +85 -44
  286. package/build/esm/text-transform/config.js.map +1 -1
  287. package/build/esm/text-transform/transformers.js +2 -2
  288. package/build/esm/text-transform/transformers.js.map +1 -1
  289. package/build/esm/utils/blocks.d.ts +10 -2
  290. package/build/esm/utils/blocks.js +9 -2
  291. package/build/esm/utils/blocks.js.map +1 -1
  292. package/package.json +2 -2
  293. package/schema/index.js +1 -1
  294. package/server/models/common.d.ts +1 -0
  295. package/server/models/constructor-items/blocks.d.ts +17 -15
  296. package/server/models/constructor-items/blocks.js +3 -2
  297. package/server/models/constructor-items/common.d.ts +2 -2
  298. package/server/text-transform/common.d.ts +4 -3
  299. package/server/text-transform/common.js +41 -18
  300. package/server/text-transform/config.d.ts +5 -2
  301. package/server/text-transform/config.js +84 -43
  302. package/server/text-transform/transformers.js +2 -2
  303. package/server/utils/blocks.d.ts +10 -2
  304. package/server/utils/blocks.js +10 -3
  305. package/styles/fonts.scss +1 -0
  306. package/styles/styles.css +0 -1
  307. package/styles/styles.scss +0 -1
  308. package/styles/variables.scss +1 -0
  309. package/widget/index.js +1 -1
  310. package/build/cjs/blocks/SliderNew/Arrow/Arrow.d.ts +0 -11
  311. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js +0 -11
  312. package/build/cjs/blocks/SliderNew/Arrow/Arrow.js.map +0 -1
  313. package/build/cjs/blocks/SliderNew/Slider.css +0 -834
  314. package/build/cjs/blocks/SliderNew/Slider.d.ts +0 -13
  315. package/build/cjs/blocks/SliderNew/Slider.js +0 -49
  316. package/build/cjs/blocks/SliderNew/Slider.js.map +0 -1
  317. package/build/cjs/blocks/SliderNew/schema.js.map +0 -1
  318. package/build/cjs/blocks/SliderNew/useSlider.js.map +0 -1
  319. package/build/cjs/blocks/SliderNew/useSliderPagination.js.map +0 -1
  320. package/build/cjs/blocks/SliderNew/utils.d.ts +0 -16
  321. package/build/cjs/blocks/SliderNew/utils.js +0 -44
  322. package/build/cjs/blocks/SliderNew/utils.js.map +0 -1
  323. package/build/cjs/blocks/unstable.d.ts +0 -1
  324. package/build/cjs/blocks/unstable.js +0 -7
  325. package/build/cjs/blocks/unstable.js.map +0 -1
  326. package/build/esm/blocks/SliderNew/Arrow/Arrow.d.ts +0 -12
  327. package/build/esm/blocks/SliderNew/Arrow/Arrow.js +0 -9
  328. package/build/esm/blocks/SliderNew/Arrow/Arrow.js.map +0 -1
  329. package/build/esm/blocks/SliderNew/Slider.css +0 -834
  330. package/build/esm/blocks/SliderNew/Slider.d.ts +0 -14
  331. package/build/esm/blocks/SliderNew/Slider.js +0 -45
  332. package/build/esm/blocks/SliderNew/Slider.js.map +0 -1
  333. package/build/esm/blocks/SliderNew/schema.js.map +0 -1
  334. package/build/esm/blocks/SliderNew/useSlider.js.map +0 -1
  335. package/build/esm/blocks/SliderNew/useSliderPagination.js.map +0 -1
  336. package/build/esm/blocks/SliderNew/utils.d.ts +0 -16
  337. package/build/esm/blocks/SliderNew/utils.js +0 -37
  338. package/build/esm/blocks/SliderNew/utils.js.map +0 -1
  339. package/build/esm/blocks/unstable.d.ts +0 -1
  340. package/build/esm/blocks/unstable.js +0 -2
  341. package/build/esm/blocks/unstable.js.map +0 -1
  342. /package/build/cjs/blocks/{SliderNew → Slider}/useSliderPagination.d.ts +0 -0
  343. /package/build/cjs/blocks/{SliderNew → Slider}/useSliderPagination.js +0 -0
  344. /package/build/cjs/blocks/{Slider → SliderOld}/slick.css +0 -0
  345. /package/build/esm/blocks/{SliderNew → Slider}/useSliderPagination.d.ts +0 -0
  346. /package/build/esm/blocks/{SliderNew → Slider}/useSliderPagination.js +0 -0
  347. /package/build/esm/blocks/{Slider → SliderOld}/slick.css +0 -0
@@ -63,22 +63,26 @@ unpredictable css rules order in build */
63
63
  font-size: var(--g-text-body-3-font-size);
64
64
  line-height: var(--g-text-body-3-line-height);
65
65
  }
66
- .pc-quote__content_quote-type_chevron::before {
66
+ .pc-quote__content_quote-type_chevron.pc-quote__content_quote-type_chevron::before {
67
67
  position: absolute;
68
68
  left: -10px;
69
69
  content: "«";
70
70
  }
71
- .pc-quote__content_quote-type_chevron .pc-quote__text::after {
71
+ .pc-quote__content_quote-type_chevron.pc-quote__content_quote-type_chevron .pc-quote__text::after {
72
72
  content: "»";
73
+ left: auto;
73
74
  }
74
- .pc-quote__content_quote-type_english-double::before {
75
+
76
+ .pc-quote__content_quote-type_english-double.pc-quote__content_quote-type_english-double::before {
75
77
  position: absolute;
76
78
  left: -8px;
77
79
  content: "“";
78
80
  }
79
- .pc-quote__content_quote-type_english-double .pc-quote__text::after {
81
+ .pc-quote__content_quote-type_english-double.pc-quote__content_quote-type_english-double .pc-quote__text::after {
80
82
  content: "”";
83
+ left: auto;
81
84
  }
85
+
82
86
  .pc-quote__content .yfm {
83
87
  font-size: var(--g-text-body-3-font-size);
84
88
  line-height: var(--g-text-body-3-line-height);
@@ -23,7 +23,8 @@ const Quote = (props) => {
23
23
  const renderFooter = Boolean(author || url) && ((0, jsx_runtime_1.jsxs)("div", { className: b('author-wrapper'), children: [themedAuthor && ((0, jsx_runtime_1.jsx)(components_1.Author, { className: b('author', { theme: textTheme }), author: themedAuthor, type: models_1.AuthorType.Line, theme: textTheme })), url && buttonText && !button && ((0, jsx_runtime_1.jsx)(components_1.Button, { theme: "outlined", size: "xl", url: url, className: b('link-button', { theme: textTheme }), onClick: handleButtonClick, urlTitle: urlTitle, text: buttonText })), button && (0, jsx_runtime_1.jsx)(components_1.Button, Object.assign({ size: "xl" }, button))] }));
24
24
  const themedLogoProps = (0, utils_2.getThemedValue)(logo, theme);
25
25
  const logoProps = (0, utils_1.getMediaImage)(themedLogoProps);
26
- return ((0, jsx_runtime_1.jsxs)("div", { className: b({ theme: textTheme, border }), style: color ? { backgroundColor: color } : {}, children: [(0, jsx_runtime_1.jsxs)("div", { className: b('content-wrapper'), children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(components_1.Image, Object.assign({ className: b('logo') }, logoProps)), (0, jsx_runtime_1.jsxs)("div", { className: b('content', { 'quote-type': quoteType }), children: [text && ((0, jsx_runtime_1.jsx)("span", { className: b('text'), children: (0, jsx_runtime_1.jsx)(components_1.HTML, { children: text }) })), yfmText && ((0, jsx_runtime_1.jsx)(components_1.YFMWrapper, { className: b('text'), content: yfmText, modifiers: { constructor: true } }))] })] }), renderFooter] }, text), (0, jsx_runtime_1.jsx)("div", { className: b('image-wrapper'), children: (0, jsx_runtime_1.jsx)(components_1.Image, Object.assign({}, imageData, { className: b('image') })) })] }));
26
+ const textLocal = yfmText || text;
27
+ return ((0, jsx_runtime_1.jsxs)("div", { className: b({ theme: textTheme, border }), style: color ? { backgroundColor: color } : {}, children: [(0, jsx_runtime_1.jsxs)("div", { className: b('content-wrapper'), children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(components_1.Image, Object.assign({ className: b('logo') }, logoProps)), (0, jsx_runtime_1.jsx)("div", { className: b('content', { 'quote-type': quoteType }), children: textLocal && ((0, jsx_runtime_1.jsx)(components_1.YFMWrapper, { tagName: "span", contentClassName: b('text'), content: textLocal, modifiers: { constructor: true } })) })] }), renderFooter] }, text), (0, jsx_runtime_1.jsx)("div", { className: b('image-wrapper'), children: (0, jsx_runtime_1.jsx)(components_1.Image, Object.assign({}, imageData, { className: b('image') })) })] }));
27
28
  };
28
29
  exports.default = Quote;
29
30
  //# sourceMappingURL=Quote.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Quote.js","sourceRoot":"../../../../src","sources":["sub-blocks/Quote/Quote.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\n\nimport {Author, Button, HTML, Image, YFMWrapper} from '../../components';\nimport {getMediaImage} from '../../components/Media/Image/utils';\nimport {useTheme} from '../../context/theme';\nimport {useAnalytics} from '../../hooks';\nimport {AuthorItem, AuthorType, DefaultEventNames, QuoteProps, QuoteType} from '../../models';\nimport {block, getThemedValue} from '../../utils';\n\nimport './Quote.scss';\n\nconst b = block('quote');\n\nconst Quote = (props: QuoteProps) => {\n const {\n theme: textTheme = 'light',\n color,\n image,\n border = 'shadow',\n text,\n yfmText,\n logo,\n author,\n url,\n urlTitle,\n buttonText,\n quoteType = QuoteType.Chevron,\n button,\n } = props;\n const theme = useTheme();\n const imageThemed = getThemedValue(image, theme);\n const imageData = getMediaImage(imageThemed);\n const handleAnalytics = useAnalytics(DefaultEventNames.QuoteButton, url);\n\n const handleButtonClick = React.useCallback(() => handleAnalytics(), [handleAnalytics]);\n const themedAuthor = author\n ? ({\n ...author,\n avatar: getThemedValue(author.avatar, theme),\n } as AuthorItem)\n : author;\n\n const renderFooter = Boolean(author || url) && (\n <div className={b('author-wrapper')}>\n {themedAuthor && (\n <Author\n className={b('author', {theme: textTheme})}\n author={themedAuthor}\n type={AuthorType.Line}\n theme={textTheme}\n />\n )}\n {url && buttonText && !button && (\n <Button\n theme=\"outlined\"\n size=\"xl\"\n url={url}\n className={b('link-button', {theme: textTheme})}\n onClick={handleButtonClick}\n urlTitle={urlTitle}\n text={buttonText}\n />\n )}\n {button && <Button size=\"xl\" {...button} />}\n </div>\n );\n\n const themedLogoProps = getThemedValue(logo, theme);\n const logoProps = getMediaImage(themedLogoProps);\n\n return (\n <div\n className={b({theme: textTheme, border})}\n style={color ? {backgroundColor: color} : {}}\n >\n <div key={text} className={b('content-wrapper')}>\n <div>\n <Image className={b('logo')} {...logoProps} />\n <div className={b('content', {'quote-type': quoteType})}>\n {text && (\n <span className={b('text')}>\n <HTML>{text}</HTML>\n </span>\n )}\n {yfmText && (\n <YFMWrapper\n className={b('text')}\n content={yfmText}\n modifiers={{constructor: true}}\n />\n )}\n </div>\n </div>\n {renderFooter}\n </div>\n <div className={b('image-wrapper')}>\n <Image {...imageData} className={b('image')} />\n </div>\n </div>\n );\n};\n\nexport default Quote;\n"]}
1
+ {"version":3,"file":"Quote.js","sourceRoot":"../../../../src","sources":["sub-blocks/Quote/Quote.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,0DAAmE;AACnE,iEAAiE;AACjE,wDAA6C;AAC7C,gDAAyC;AACzC,kDAA8F;AAC9F,gDAAkD;AAIlD,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,OAAO,CAAC,CAAC;AAEzB,MAAM,KAAK,GAAG,CAAC,KAAiB,EAAE,EAAE;IAChC,MAAM,EACF,KAAK,EAAE,SAAS,GAAG,OAAO,EAC1B,KAAK,EACL,KAAK,EACL,MAAM,GAAG,QAAQ,EACjB,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,MAAM,EACN,GAAG,EACH,QAAQ,EACR,UAAU,EACV,SAAS,GAAG,kBAAS,CAAC,OAAO,EAC7B,MAAM,GACT,GAAG,KAAK,CAAC;IACV,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IACzB,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,IAAA,qBAAa,EAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,eAAe,GAAG,IAAA,oBAAY,EAAC,0BAAiB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAEzE,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,MAAM;QACvB,CAAC,CAAE,gCACM,MAAM,KACT,MAAM,EAAE,IAAA,sBAAc,EAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAChC;QAClB,CAAC,CAAC,MAAM,CAAC;IAEb,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAC3C,iCAAK,SAAS,EAAE,CAAC,CAAC,gBAAgB,CAAC,aAC9B,YAAY,IAAI,CACb,uBAAC,mBAAM,IACH,SAAS,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,EAC1C,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,mBAAU,CAAC,IAAI,EACrB,KAAK,EAAE,SAAS,GAClB,CACL,EACA,GAAG,IAAI,UAAU,IAAI,CAAC,MAAM,IAAI,CAC7B,uBAAC,mBAAM,IACH,KAAK,EAAC,UAAU,EAChB,IAAI,EAAC,IAAI,EACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,CAAC,CAAC,aAAa,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,EAC/C,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,UAAU,GAClB,CACL,EACA,MAAM,IAAI,uBAAC,mBAAM,kBAAC,IAAI,EAAC,IAAI,IAAK,MAAM,EAAI,IACzC,CACT,CAAC;IAEF,MAAM,eAAe,GAAG,IAAA,sBAAc,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,IAAA,qBAAa,EAAC,eAAe,CAAC,CAAC;IAEjD,MAAM,SAAS,GAAG,OAAO,IAAI,IAAI,CAAC;IAElC,OAAO,CACH,iCACI,SAAS,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAC,CAAC,EACxC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAC,eAAe,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC,EAAE,aAE5C,iCAAgB,SAAS,EAAE,CAAC,CAAC,iBAAiB,CAAC,aAC3C,4CACI,uBAAC,kBAAK,kBAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,IAAM,SAAS,EAAI,EAC9C,gCAAK,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,YAAY,EAAE,SAAS,EAAC,CAAC,YAClD,SAAS,IAAI,CACV,uBAAC,uBAAU,IACP,OAAO,EAAC,MAAM,EACd,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,EAC3B,OAAO,EAAE,SAAS,EAClB,SAAS,EAAE,EAAC,WAAW,EAAE,IAAI,EAAC,GAChC,CACL,GACC,IACJ,EACL,YAAY,KAdP,IAAI,CAeR,EACN,gCAAK,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,YAC9B,uBAAC,kBAAK,oBAAK,SAAS,IAAE,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,GAC7C,IACJ,CACT,CAAC;AACN,CAAC,CAAC;AAEF,kBAAe,KAAK,CAAC","sourcesContent":["import * as React from 'react';\n\nimport {Author, Button, Image, YFMWrapper} from '../../components';\nimport {getMediaImage} from '../../components/Media/Image/utils';\nimport {useTheme} from '../../context/theme';\nimport {useAnalytics} from '../../hooks';\nimport {AuthorItem, AuthorType, DefaultEventNames, QuoteProps, QuoteType} from '../../models';\nimport {block, getThemedValue} from '../../utils';\n\nimport './Quote.scss';\n\nconst b = block('quote');\n\nconst Quote = (props: QuoteProps) => {\n const {\n theme: textTheme = 'light',\n color,\n image,\n border = 'shadow',\n text,\n yfmText,\n logo,\n author,\n url,\n urlTitle,\n buttonText,\n quoteType = QuoteType.Chevron,\n button,\n } = props;\n const theme = useTheme();\n const imageThemed = getThemedValue(image, theme);\n const imageData = getMediaImage(imageThemed);\n const handleAnalytics = useAnalytics(DefaultEventNames.QuoteButton, url);\n\n const handleButtonClick = React.useCallback(() => handleAnalytics(), [handleAnalytics]);\n const themedAuthor = author\n ? ({\n ...author,\n avatar: getThemedValue(author.avatar, theme),\n } as AuthorItem)\n : author;\n\n const renderFooter = Boolean(author || url) && (\n <div className={b('author-wrapper')}>\n {themedAuthor && (\n <Author\n className={b('author', {theme: textTheme})}\n author={themedAuthor}\n type={AuthorType.Line}\n theme={textTheme}\n />\n )}\n {url && buttonText && !button && (\n <Button\n theme=\"outlined\"\n size=\"xl\"\n url={url}\n className={b('link-button', {theme: textTheme})}\n onClick={handleButtonClick}\n urlTitle={urlTitle}\n text={buttonText}\n />\n )}\n {button && <Button size=\"xl\" {...button} />}\n </div>\n );\n\n const themedLogoProps = getThemedValue(logo, theme);\n const logoProps = getMediaImage(themedLogoProps);\n\n const textLocal = yfmText || text;\n\n return (\n <div\n className={b({theme: textTheme, border})}\n style={color ? {backgroundColor: color} : {}}\n >\n <div key={text} className={b('content-wrapper')}>\n <div>\n <Image className={b('logo')} {...logoProps} />\n <div className={b('content', {'quote-type': quoteType})}>\n {textLocal && (\n <YFMWrapper\n tagName=\"span\"\n contentClassName={b('text')}\n content={textLocal}\n modifiers={{constructor: true}}\n />\n )}\n </div>\n </div>\n {renderFooter}\n </div>\n <div className={b('image-wrapper')}>\n <Image {...imageData} className={b('image')} />\n </div>\n </div>\n );\n};\n\nexport default Quote;\n"]}
@@ -1,18 +1,19 @@
1
1
  import { MarkdownItPluginCb } from '@diplodoc/transform/lib/plugins/typings';
2
2
  import { Lang } from "./types.js";
3
3
  export type ComplexItem = {
4
- [key: string]: string;
4
+ [key: string]: string | object;
5
5
  };
6
6
  export type Item = string | null | ComplexItem;
7
7
  export type Transformer = (text: string) => string;
8
8
  export type TransformerRaw = (lang: Lang, content: string, options: {
9
9
  plugins: MarkdownItPluginCb[];
10
+ renderInline?: boolean;
10
11
  }) => string;
11
12
  export type Parser<T = any> = (transformer: Transformer, block: T) => T;
12
13
  export declare const createItemsParser: (fields: string[]) => (transformer: Transformer, items: Item[]) => (string | {
13
- [x: string]: string;
14
+ [x: string]: string | object;
14
15
  } | null)[];
15
16
  export declare function yfmTransformer(lang: Lang, content: string, options?: {
16
17
  plugins?: MarkdownItPluginCb[];
17
- }): string;
18
+ }, renderInline?: boolean): string;
18
19
  export declare function typografTransformer(lang: Lang, content: string): string;
@@ -6,29 +6,52 @@ exports.typografTransformer = typografTransformer;
6
6
  const tslib_1 = require("tslib");
7
7
  const plugins_1 = tslib_1.__importDefault(require("@diplodoc/transform/lib/plugins"));
8
8
  const utils_1 = require("./utils.js");
9
- const createItemsParser = (fields) => (transformer, items) => items.map((item) => {
10
- if (!item) {
11
- return item;
12
- }
13
- else if (typeof item === 'string') {
14
- return transformer(item);
15
- }
16
- else {
17
- return Object.assign(Object.assign({}, item), fields.reduce((acc, fieldName) => {
18
- if (item[fieldName]) {
19
- // eslint-disable-next-line no-param-reassign
20
- acc[fieldName] = transformer(item[fieldName]);
21
- }
22
- return acc;
23
- }, {}));
24
- }
25
- });
9
+ const createItemsParser = (fields) => (transformer, items) => {
10
+ const applyTransform = (itemLocal) => typeof itemLocal === 'string' ? transformer(itemLocal) : itemLocal;
11
+ return items.map((item) => {
12
+ if (!item) {
13
+ return item;
14
+ }
15
+ else if (typeof item === 'string') {
16
+ return transformer(item);
17
+ }
18
+ else {
19
+ return Object.assign(Object.assign({}, item), fields.reduce((acc, fieldName) => {
20
+ if (fieldName.includes('.')) {
21
+ const [firstProperty, secondProperty] = fieldName.split('.');
22
+ const root = item[firstProperty];
23
+ if (!root || typeof root !== 'object') {
24
+ return acc;
25
+ }
26
+ if (Array.isArray(root)) {
27
+ if (!acc[firstProperty]) {
28
+ // eslint-disable-next-line no-param-reassign
29
+ acc[firstProperty] = [];
30
+ }
31
+ // eslint-disable-next-line no-param-reassign
32
+ acc[firstProperty] = root.map((subItem) => (Object.assign(Object.assign({}, subItem), { [secondProperty]: applyTransform(subItem[secondProperty]) })));
33
+ }
34
+ else {
35
+ // eslint-disable-next-line no-param-reassign
36
+ acc[firstProperty] = Object.assign(Object.assign({}, root), { [secondProperty]: applyTransform(root[secondProperty]) });
37
+ }
38
+ }
39
+ else if (item[fieldName]) {
40
+ // eslint-disable-next-line no-param-reassign
41
+ acc[fieldName] = applyTransform(item[fieldName]);
42
+ }
43
+ return acc;
44
+ }, {}));
45
+ }
46
+ });
47
+ };
26
48
  exports.createItemsParser = createItemsParser;
27
- function yfmTransformer(lang, content, options = {}) {
49
+ function yfmTransformer(lang, content, options = {}, renderInline = false) {
28
50
  const { plugins = [] } = options;
29
51
  const { html } = (0, utils_1.fullTransform)(content, {
30
52
  lang,
31
53
  plugins: [...plugins_1.default, ...plugins],
54
+ renderInline,
32
55
  });
33
56
  return html;
34
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"../../../src","sources":["text-transform/common.ts"],"names":[],"mappings":";;;AAsCA,wCAYC;AAED,kDAEC;;AAtDD,sFAA6D;AAI7D,sCAAsD;AAa/C,MAAM,iBAAiB,GAAG,CAAC,MAAgB,EAAE,EAAE,CAAC,CAAC,WAAwB,EAAE,KAAa,EAAE,EAAE,CAC/F,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;IACf,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,IAAI,CAAC;IAChB,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACJ,uCACO,IAAI,GACJ,MAAM,CAAC,MAAM,CAAc,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClB,6CAA6C;gBAC7C,GAAG,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAClD,CAAC;YAED,OAAO,GAAG,CAAC;QACf,CAAC,EAAE,EAAE,CAAC,EACR;IACN,CAAC;AACL,CAAC,CAAC,CAAC;AAnBM,QAAA,iBAAiB,qBAmBvB;AAEP,SAAgB,cAAc,CAC1B,IAAU,EACV,OAAe,EACf,UAA4C,EAAE;IAE9C,MAAM,EAAC,OAAO,GAAG,EAAE,EAAC,GAAG,OAAO,CAAC;IAC/B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE;QAClC,IAAI;QACJ,OAAO,EAAE,CAAC,GAAG,iBAAc,EAAE,GAAG,OAAO,CAAC;KAC3C,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAU,EAAE,OAAe;IAC3D,OAAO,IAAA,sBAAc,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC","sourcesContent":["import defaultPlugins from '@diplodoc/transform/lib/plugins';\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\n\nimport {Lang} from './types';\nimport {fullTransform, typografToHTML} from './utils';\n\nexport type ComplexItem = {[key: string]: string};\nexport type Item = string | null | ComplexItem;\nexport type Transformer = (text: string) => string;\nexport type TransformerRaw = (\n lang: Lang,\n content: string,\n options: {plugins: MarkdownItPluginCb[]},\n) => string;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Parser<T = any> = (transformer: Transformer, block: T) => T;\n\nexport const createItemsParser = (fields: string[]) => (transformer: Transformer, items: Item[]) =>\n items.map((item) => {\n if (!item) {\n return item;\n } else if (typeof item === 'string') {\n return transformer(item);\n } else {\n return {\n ...item,\n ...fields.reduce<ComplexItem>((acc, fieldName) => {\n if (item[fieldName]) {\n // eslint-disable-next-line no-param-reassign\n acc[fieldName] = transformer(item[fieldName]);\n }\n\n return acc;\n }, {}),\n };\n }\n });\n\nexport function yfmTransformer(\n lang: Lang,\n content: string,\n options: {plugins?: MarkdownItPluginCb[]} = {},\n) {\n const {plugins = []} = options;\n const {html} = fullTransform(content, {\n lang,\n plugins: [...defaultPlugins, ...plugins],\n });\n\n return html;\n}\n\nexport function typografTransformer(lang: Lang, content: string) {\n return typografToHTML(content, lang);\n}\n"]}
1
+ {"version":3,"file":"common.js","sourceRoot":"../../../src","sources":["text-transform/common.ts"],"names":[],"mappings":";;;AAoEA,wCAcC;AAED,kDAEC;;AAtFD,sFAA6D;AAI7D,sCAAsD;AAa/C,MAAM,iBAAiB,GAC1B,CAAC,MAAgB,EAAE,EAAE,CAAC,CAAC,WAAwB,EAAE,KAAa,EAAE,EAAE;IAC9D,MAAM,cAAc,GAAG,CAAC,SAA0B,EAAE,EAAE,CAClD,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,SAAmB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjF,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,IAAI,CAAC;QAChB,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACJ,uCACO,IAAI,GACJ,MAAM,CAAC,MAAM,CAAc,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC7C,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAsC,CAAC;oBACtE,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACpC,OAAO,GAAG,CAAC;oBACf,CAAC;oBAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;wBACtB,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;4BACtB,6CAA6C;4BAC7C,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;wBAC5B,CAAC;wBAED,6CAA6C;wBAC7C,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAoB,EAAE,EAAE,CAAC,iCACjD,OAAO,KACV,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,IAC3D,CAAC,CAAC;oBACR,CAAC;yBAAM,CAAC;wBACJ,6CAA6C;wBAC7C,GAAG,CAAC,aAAa,CAAC,mCACX,IAAI,KACP,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GACzD,CAAC;oBACN,CAAC;gBACL,CAAC;qBAAM,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzB,6CAA6C;oBAC7C,GAAG,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBACrD,CAAC;gBAED,OAAO,GAAG,CAAC;YACf,CAAC,EAAE,EAAiB,CAAC,EACvB;QACN,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAjDO,QAAA,iBAAiB,qBAiDxB;AAEN,SAAgB,cAAc,CAC1B,IAAU,EACV,OAAe,EACf,UAA4C,EAAE,EAC9C,YAAY,GAAG,KAAK;IAEpB,MAAM,EAAC,OAAO,GAAG,EAAE,EAAC,GAAG,OAAO,CAAC;IAC/B,MAAM,EAAC,IAAI,EAAC,GAAG,IAAA,qBAAa,EAAC,OAAO,EAAE;QAClC,IAAI;QACJ,OAAO,EAAE,CAAC,GAAG,iBAAc,EAAE,GAAG,OAAO,CAAC;QACxC,YAAY;KACf,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAU,EAAE,OAAe;IAC3D,OAAO,IAAA,sBAAc,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC","sourcesContent":["import defaultPlugins from '@diplodoc/transform/lib/plugins';\nimport {MarkdownItPluginCb} from '@diplodoc/transform/lib/plugins/typings';\n\nimport {Lang} from './types';\nimport {fullTransform, typografToHTML} from './utils';\n\nexport type ComplexItem = {[key: string]: string | object};\nexport type Item = string | null | ComplexItem;\nexport type Transformer = (text: string) => string;\nexport type TransformerRaw = (\n lang: Lang,\n content: string,\n options: {plugins: MarkdownItPluginCb[]; renderInline?: boolean},\n) => string;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type Parser<T = any> = (transformer: Transformer, block: T) => T;\n\nexport const createItemsParser =\n (fields: string[]) => (transformer: Transformer, items: Item[]) => {\n const applyTransform = (itemLocal: string | object) =>\n typeof itemLocal === 'string' ? transformer(itemLocal as string) : itemLocal;\n\n return items.map((item) => {\n if (!item) {\n return item;\n } else if (typeof item === 'string') {\n return transformer(item);\n } else {\n return {\n ...item,\n ...fields.reduce<ComplexItem>((acc, fieldName) => {\n if (fieldName.includes('.')) {\n const [firstProperty, secondProperty] = fieldName.split('.');\n const root = item[firstProperty] as unknown as Record<string, string>;\n if (!root || typeof root !== 'object') {\n return acc;\n }\n\n if (Array.isArray(root)) {\n if (!acc[firstProperty]) {\n // eslint-disable-next-line no-param-reassign\n acc[firstProperty] = [];\n }\n\n // eslint-disable-next-line no-param-reassign\n acc[firstProperty] = root.map((subItem: ComplexItem) => ({\n ...subItem,\n [secondProperty]: applyTransform(subItem[secondProperty]),\n }));\n } else {\n // eslint-disable-next-line no-param-reassign\n acc[firstProperty] = {\n ...root,\n [secondProperty]: applyTransform(root[secondProperty]),\n };\n }\n } else if (item[fieldName]) {\n // eslint-disable-next-line no-param-reassign\n acc[fieldName] = applyTransform(item[fieldName]);\n }\n\n return acc;\n }, {} as ComplexItem),\n };\n }\n });\n };\n\nexport function yfmTransformer(\n lang: Lang,\n content: string,\n options: {plugins?: MarkdownItPluginCb[]} = {},\n renderInline = false,\n) {\n const {plugins = []} = options;\n const {html} = fullTransform(content, {\n lang,\n plugins: [...defaultPlugins, ...plugins],\n renderInline,\n });\n\n return html;\n}\n\nexport function typografTransformer(lang: Lang, content: string) {\n return typografToHTML(content, lang);\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  import { TitleItemProps } from "../models/index.js";
2
- import { Parser, Transformer, TransformerRaw, typografTransformer, yfmTransformer } from "./common.js";
2
+ import { Parser, Transformer, TransformerRaw, yfmTransformer } from "./common.js";
3
3
  export declare const blockHeaderTransformer: ({
4
4
  fields: string[];
5
- transformer: typeof typografTransformer;
5
+ transformer: typeof yfmTransformer;
6
6
  parser: (transformer: Transformer, title: TitleItemProps | string) => string | {
7
7
  text: string;
8
8
  navTitle?: string;
@@ -14,15 +14,18 @@ export declare const blockHeaderTransformer: ({
14
14
  custom?: string | React.ReactNode;
15
15
  onClick?: () => void;
16
16
  };
17
+ renderInline: boolean;
17
18
  } | {
18
19
  fields: string[];
19
20
  transformer: typeof yfmTransformer;
20
21
  parser?: undefined;
22
+ renderInline?: undefined;
21
23
  })[];
22
24
  interface BlockConfig {
23
25
  transformer: TransformerRaw;
24
26
  fields?: string[];
25
27
  parser?: Parser;
28
+ renderInline?: boolean;
26
29
  }
27
30
  export type BlocksConfig = Record<string, BlockConfig | BlockConfig[]>;
28
31
  export declare const config: BlocksConfig;
@@ -6,10 +6,26 @@ exports.config = exports.blockHeaderTransformer = void 0;
6
6
  const tslib_1 = require("tslib");
7
7
  const models_1 = require("../models/index.js");
8
8
  const common_1 = require("./common.js");
9
- function parseTableBlock(transformer, content) {
9
+ function parseTableBlockLegend(transformer, content) {
10
10
  const legend = content === null || content === void 0 ? void 0 : content.legend;
11
11
  return Object.assign(Object.assign({}, (content || {})), { legend: legend && legend.map((string) => transformer(string)) });
12
12
  }
13
+ function parseTableBlockContent(transformer, content) {
14
+ const legend = content === null || content === void 0 ? void 0 : content.legend;
15
+ const tableContent = content === null || content === void 0 ? void 0 : content.content;
16
+ return Object.assign(Object.assign({}, (content || {})), { content: tableContent &&
17
+ tableContent.map((row, i) => row.map((cell, j) => {
18
+ if (legend) {
19
+ if (i === 0 || j === 0) {
20
+ return transformer(cell);
21
+ }
22
+ return cell;
23
+ }
24
+ else {
25
+ return transformer(cell);
26
+ }
27
+ })) });
28
+ }
13
29
  function parseFeatures(transformer, items) {
14
30
  return items.map((_a) => {
15
31
  var { title, text } = _a, rest = tslib_1.__rest(_a, ["title", "text"]);
@@ -84,8 +100,9 @@ function parseContentLayoutTitle(transformer, content) {
84
100
  exports.blockHeaderTransformer = [
85
101
  {
86
102
  fields: ['title'],
87
- transformer: common_1.typografTransformer,
103
+ transformer: common_1.yfmTransformer,
88
104
  parser: parseTitle,
105
+ renderInline: true,
89
106
  },
90
107
  {
91
108
  fields: ['description'],
@@ -96,7 +113,8 @@ exports.config = {
96
113
  [models_1.SubBlockType.BasicCard]: [
97
114
  {
98
115
  fields: ['title'],
99
- transformer: common_1.typografTransformer,
116
+ transformer: common_1.yfmTransformer,
117
+ renderInline: true,
100
118
  },
101
119
  {
102
120
  fields: ['text', 'additionalInfo'],
@@ -105,22 +123,16 @@ exports.config = {
105
123
  ],
106
124
  [models_1.SubBlockType.BackgroundCard]: [
107
125
  {
108
- fields: ['text', 'additionalInfo'],
126
+ fields: ['title', 'text', 'additionalInfo'],
109
127
  transformer: common_1.yfmTransformer,
110
- },
111
- {
112
- fields: ['title'],
113
- transformer: common_1.typografTransformer,
128
+ renderInline: true,
114
129
  },
115
130
  ],
116
131
  [models_1.SubBlockType.ImageCard]: [
117
132
  {
118
- fields: ['text', 'additionalInfo'],
133
+ fields: ['title', 'text', 'additionalInfo'],
119
134
  transformer: common_1.yfmTransformer,
120
- },
121
- {
122
- fields: ['title'],
123
- transformer: common_1.typografTransformer,
135
+ renderInline: true,
124
136
  },
125
137
  ],
126
138
  [models_1.SubBlockType.LayoutItem]: [
@@ -132,7 +144,8 @@ exports.config = {
132
144
  {
133
145
  fields: ['content'],
134
146
  parser: parseContentLayoutTitle,
135
- transformer: common_1.typografTransformer,
147
+ transformer: common_1.yfmTransformer,
148
+ renderInline: true,
136
149
  },
137
150
  {
138
151
  fields: ['metaInfo'],
@@ -142,26 +155,30 @@ exports.config = {
142
155
  ],
143
156
  [models_1.SubBlockType.Quote]: [
144
157
  {
145
- fields: ['text'],
146
- transformer: common_1.typografTransformer,
147
- },
148
- {
149
- fields: ['yfmText'],
158
+ fields: ['text', 'yfmText'],
150
159
  transformer: common_1.yfmTransformer,
160
+ renderInline: true,
151
161
  },
152
162
  ],
153
163
  [models_1.BlockType.ExtendedFeaturesBlock]: [
154
164
  ...exports.blockHeaderTransformer,
155
165
  {
156
166
  fields: ['items'],
157
- transformer: common_1.typografTransformer,
167
+ transformer: common_1.yfmTransformer,
158
168
  parser: (0, common_1.createItemsParser)(['title']),
169
+ renderInline: true,
159
170
  },
160
171
  {
161
172
  fields: ['items'],
162
173
  transformer: common_1.yfmTransformer,
163
174
  parser: (0, common_1.createItemsParser)(['text', 'additionalInfo']),
164
175
  },
176
+ {
177
+ fields: ['items'],
178
+ transformer: common_1.yfmTransformer,
179
+ parser: (0, common_1.createItemsParser)(['list.text']),
180
+ renderInline: true,
181
+ },
165
182
  ],
166
183
  [models_1.BlockType.PromoFeaturesBlock]: [
167
184
  ...exports.blockHeaderTransformer,
@@ -171,16 +188,14 @@ exports.config = {
171
188
  parser: parsePromoFeatures,
172
189
  },
173
190
  ],
191
+ [models_1.BlockType.SliderOldBlock]: exports.blockHeaderTransformer,
174
192
  [models_1.BlockType.SliderBlock]: exports.blockHeaderTransformer,
175
193
  [models_1.BlockType.CompaniesBlock]: exports.blockHeaderTransformer,
176
194
  [models_1.BlockType.QuestionsBlock]: [
177
195
  {
178
- fields: ['title'],
179
- transformer: common_1.typografTransformer,
180
- },
181
- {
182
- fields: ['text', 'additionalInfo'],
196
+ fields: ['title', 'text', 'additionalInfo'],
183
197
  transformer: common_1.yfmTransformer,
198
+ renderInline: true,
184
199
  },
185
200
  {
186
201
  fields: ['items'],
@@ -191,7 +206,8 @@ exports.config = {
191
206
  [models_1.BlockType.BannerBlock]: [
192
207
  {
193
208
  fields: ['title'],
194
- transformer: common_1.typografTransformer,
209
+ transformer: common_1.yfmTransformer,
210
+ renderInline: true,
195
211
  },
196
212
  {
197
213
  fields: ['subtitle'],
@@ -201,7 +217,8 @@ exports.config = {
201
217
  [models_1.SubBlockType.BannerCard]: [
202
218
  {
203
219
  fields: ['title'],
204
- transformer: common_1.typografTransformer,
220
+ transformer: common_1.yfmTransformer,
221
+ renderInline: true,
205
222
  },
206
223
  {
207
224
  fields: ['subtitle'],
@@ -211,7 +228,7 @@ exports.config = {
211
228
  [models_1.BlockType.MediaBlock]: [
212
229
  ...exports.blockHeaderTransformer,
213
230
  {
214
- fields: ['title', 'additionalInfo'],
231
+ fields: ['additionalInfo'],
215
232
  transformer: common_1.yfmTransformer,
216
233
  },
217
234
  {
@@ -236,27 +253,35 @@ exports.config = {
236
253
  },
237
254
  {
238
255
  fields: ['items'],
239
- transformer: common_1.typografTransformer,
256
+ transformer: common_1.yfmTransformer,
240
257
  parser: parseItemsTitle,
258
+ renderInline: true,
241
259
  },
242
260
  ],
243
261
  [models_1.BlockType.TableBlock]: [
262
+ {
263
+ fields: ['title'],
264
+ transformer: common_1.yfmTransformer,
265
+ renderInline: true,
266
+ },
244
267
  {
245
268
  fields: ['table'],
246
269
  transformer: common_1.yfmTransformer,
247
- parser: parseTableBlock,
270
+ parser: parseTableBlockLegend,
248
271
  },
249
- ],
250
- [models_1.BlockType.HeaderSliderBlock]: [
251
272
  {
252
- fields: ['items'],
253
- transformer: common_1.typografTransformer,
254
- parser: (0, common_1.createItemsParser)(['title', 'overtitle']),
273
+ fields: ['table'],
274
+ transformer: common_1.yfmTransformer,
275
+ parser: parseTableBlockContent,
276
+ renderInline: true,
255
277
  },
278
+ ],
279
+ [models_1.BlockType.HeaderSliderBlock]: [
256
280
  {
257
281
  fields: ['items'],
258
282
  transformer: common_1.yfmTransformer,
259
- parser: (0, common_1.createItemsParser)(['description']),
283
+ parser: (0, common_1.createItemsParser)(['title', 'overtitle', 'description']),
284
+ renderInline: true,
260
285
  },
261
286
  ],
262
287
  [models_1.SubBlockType.PriceDetailed]: [
@@ -270,6 +295,11 @@ exports.config = {
270
295
  fields: ['description'],
271
296
  transformer: common_1.yfmTransformer,
272
297
  },
298
+ {
299
+ fields: ['overtitle', 'title'],
300
+ transformer: common_1.yfmTransformer,
301
+ renderInline: true,
302
+ },
273
303
  ],
274
304
  [models_1.BlockType.ContentLayoutBlock]: [
275
305
  {
@@ -279,8 +309,9 @@ exports.config = {
279
309
  },
280
310
  {
281
311
  fields: ['textContent'],
282
- transformer: common_1.typografTransformer,
312
+ transformer: common_1.yfmTransformer,
283
313
  parser: parseContentLayoutTitle,
314
+ renderInline: true,
284
315
  },
285
316
  ],
286
317
  [models_1.SubBlockType.Content]: [
@@ -290,8 +321,9 @@ exports.config = {
290
321
  },
291
322
  {
292
323
  fields: ['title'],
293
- transformer: common_1.typografTransformer,
324
+ transformer: common_1.yfmTransformer,
294
325
  parser: parseTitle,
326
+ renderInline: true,
295
327
  },
296
328
  {
297
329
  fields: ['list'],
@@ -300,6 +332,11 @@ exports.config = {
300
332
  },
301
333
  ],
302
334
  [models_1.BlockType.InfoBlock]: [
335
+ {
336
+ fields: ['title'],
337
+ transformer: common_1.yfmTransformer,
338
+ renderInline: true,
339
+ },
303
340
  {
304
341
  fields: ['rightContent', 'leftContent'],
305
342
  transformer: common_1.yfmTransformer,
@@ -307,14 +344,16 @@ exports.config = {
307
344
  },
308
345
  {
309
346
  fields: ['rightContent', 'leftContent'],
310
- transformer: common_1.typografTransformer,
347
+ transformer: common_1.yfmTransformer,
311
348
  parser: parseContentLayoutTitle,
349
+ renderInline: true,
312
350
  },
313
351
  ],
314
352
  [models_1.BlockType.ShareBlock]: [
315
353
  {
316
354
  fields: ['title'],
317
- transformer: common_1.typografTransformer,
355
+ transformer: common_1.yfmTransformer,
356
+ renderInline: true,
318
357
  },
319
358
  ],
320
359
  [models_1.BlockType.CardLayoutBlock]: exports.blockHeaderTransformer,
@@ -323,12 +362,13 @@ exports.config = {
323
362
  [models_1.SubBlockType.PriceCard]: [
324
363
  {
325
364
  fields: ['title'],
326
- transformer: common_1.typografTransformer,
365
+ transformer: common_1.yfmTransformer,
366
+ renderInline: true,
327
367
  },
328
368
  {
329
369
  fields: ['list'],
330
370
  transformer: common_1.yfmTransformer,
331
- parser: (0, common_1.createItemsParser)(['text']),
371
+ parser: (0, common_1.createItemsParser)(['title', 'text']),
332
372
  },
333
373
  ],
334
374
  [models_1.BlockType.FormBlock]: [
@@ -339,8 +379,9 @@ exports.config = {
339
379
  },
340
380
  {
341
381
  fields: ['textContent'],
342
- transformer: common_1.typografTransformer,
382
+ transformer: common_1.yfmTransformer,
343
383
  parser: parseContentLayoutTitle,
384
+ renderInline: true,
344
385
  },
345
386
  ],
346
387
  };
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"../../../src","sources":["text-transform/config.ts"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,4EAA4E;;;;AAE5E,+CAWmB;AAEnB,wCAOkB;AAElB,SAAS,eAAe,CAAC,WAAwB,EAAE,OAAmB;IAClE,MAAM,MAAM,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAC;IAE/B,uCACO,CAAC,OAAO,IAAI,EAAE,CAAC,KAClB,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAC/D;AACN,CAAC;AAED,SAAS,aAAa,CAAC,WAAwB,EAAE,KAA6B;IAC1E,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,EAAsB,EAAE,EAAE;YAA1B,EAAC,KAAK,EAAE,IAAI,OAAU,EAAL,IAAI,sBAArB,iBAAsB,CAAD;QAAM,OAAA,iBACzC,KAAK,EAAE,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,EAClC,IAAI,EAAE,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,IAC5B,IAAI,EACT,CAAA;KAAA,CAAC,CAAC;AACR,CAAC;AAED,SAAS,kBAAkB,CAAC,WAAwB,EAAE,KAA0B;IAC5E,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,EAAe,EAAE,EAAE;YAAnB,EAAC,IAAI,OAAU,EAAL,IAAI,sBAAd,QAAe,CAAD;QAAM,OAAA,iBAClC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IACpB,IAAI,EACT,CAAA;KAAA,CAAC,CAAC;AACR,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,WAAwB,EAAE,KAA8B,EAAE,EAAE,CAC5E,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK;IACxC,CAAC,iCAAK,KAAK,KAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAC1C,CAAC,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;AAEtC,MAAM,eAAe,GAAG,CAAC,WAAwB,EAAE,KAA6B,EAAE,EAAE,CAChF,KAAK,CAAC,GAAG,CAAC,CAAC,EAAgB,EAAE,EAAE;QAApB,EAAC,KAAK,OAAU,EAAL,IAAI,sBAAf,SAAgB,CAAD;IAAM,OAAA,iBAC5B,KAAK,EAAE,KAAK,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,IAC3C,IAAI,EACT,CAAA;CAAA,CAAC,CAAC;AAER,SAAS,uBAAuB,CAAC,WAAwB,EAAE,KAAyB;IAChF,MAAM,EAAC,SAAS,EAAC,GAAG,KAAK,CAAC;IAE1B,4EAA4E;IAC5E,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACnC,MAAM,EAAC,WAAW,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,EAAC,GAAG,IAAI,CAAC;QAEhD,IAAI,SAAS,KAAK,aAAa,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,GAAI,OAAmC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC7D,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAEtD,OAAO,MAAM,CAAC;YAClB,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,GAAI,OAAuC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjE,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAE3E,OAAO,MAAM,CAAC;YAClB,CAAC,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,2EAA2E;IAE3E,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,kBAAkB,GAAG,CAAC,WAAwB,EAAE,OAA0B,EAAE,EAAE;IAChF,IAAI,OAAO,EAAE,CAAC;QACV,MAAM,EAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAC,GAAG,OAAO,CAAC;QAE7C,4EAA4E;QAC5E,IAAI,IAAI,EAAE,CAAC;YACP,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,cAAc,EAAE,CAAC;YACjB,OAAO,CAAC,cAAc,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACP,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC7B,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAE,CAAC;oBACb,uCACO,IAAI,KACP,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAC9B;gBACN,CAAC;gBAED,OAAO,IAAI,CAAC;YAChB,CAAC,CAAC,CAAC;QACP,CAAC;QACD,2EAA2E;IAC/E,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC,CAAC;AAEF,SAAS,uBAAuB,CAAC,WAAwB,EAAE,OAA0B;IACjF,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,EAAE,CAAC;QACjB,MAAM,EAAC,KAAK,EAAC,GAAG,OAAO,CAAC;QAExB,mFAAmF;QACnF,OAAO,CAAC,KAAK,GAAG,KAAK,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC;AAEY,QAAA,sBAAsB,GAAG;IAClC;QACI,MAAM,EAAE,CAAC,OAAO,CAAC;QACjB,WAAW,EAAE,4BAAmB;QAChC,MAAM,EAAE,UAAU;KACrB;IACD;QACI,MAAM,EAAE,CAAC,aAAa,CAAC;QACvB,WAAW,EAAE,uBAAc;KAC9B;CACJ,CAAC;AAUW,QAAA,MAAM,GAAiB;IAChC,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE;QACtB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;QACD;YACI,MAAM,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC;YAClC,WAAW,EAAE,uBAAc;SAC9B;KACJ;IACD,CAAC,qBAAY,CAAC,cAAc,CAAC,EAAE;QAC3B;YACI,MAAM,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC;YAClC,WAAW,EAAE,uBAAc;SAC9B;QACD;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;KACJ;IACD,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE;QACtB;YACI,MAAM,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC;YAClC,WAAW,EAAE,uBAAc;SAC9B;QACD;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;KACJ;IACD,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE;QACvB;YACI,MAAM,EAAE,CAAC,SAAS,CAAC;YACnB,MAAM,EAAE,kBAAkB;YAC1B,WAAW,EAAE,uBAAc;SAC9B;QACD;YACI,MAAM,EAAE,CAAC,SAAS,CAAC;YACnB,MAAM,EAAE,uBAAuB;YAC/B,WAAW,EAAE,4BAAmB;SACnC;QACD;YACI,MAAM,EAAE,CAAC,UAAU,CAAC;YACpB,MAAM,EAAE,IAAA,0BAAiB,EAAC,EAAE,CAAC;YAC7B,WAAW,EAAE,uBAAc;SAC9B;KACJ;IACD,CAAC,qBAAY,CAAC,KAAK,CAAC,EAAE;QAClB;YACI,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,4BAAmB;SACnC;QACD;YACI,MAAM,EAAE,CAAC,SAAS,CAAC;YACnB,WAAW,EAAE,uBAAc;SAC9B;KACJ;IACD,CAAC,kBAAS,CAAC,qBAAqB,CAAC,EAAE;QAC/B,GAAG,8BAAsB;QACzB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;YAChC,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,OAAO,CAAC,CAAC;SACvC;QACD;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;SACxD;KACJ;IACD,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE;QAC5B,GAAG,8BAAsB;QACzB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,kBAAkB;SAC7B;KACJ;IACD,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,8BAAsB;IAC/C,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE,8BAAsB;IAClD,CAAC,kBAAS,CAAC,cAAc,CAAC,EAAE;QACxB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;QACD;YACI,MAAM,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC;YAClC,WAAW,EAAE,uBAAc;SAC9B;QACD;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,aAAa;SACxB;KACJ;IAED,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE;QACrB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;QACD;YACI,MAAM,EAAE,CAAC,UAAU,CAAC;YACpB,WAAW,EAAE,uBAAc;SAC9B;KACJ;IACD,CAAC,qBAAY,CAAC,UAAU,CAAC,EAAE;QACvB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;QACD;YACI,MAAM,EAAE,CAAC,UAAU,CAAC;YACpB,WAAW,EAAE,uBAAc;SAC9B;KACJ;IACD,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE;QACpB,GAAG,8BAAsB;QACzB;YACI,MAAM,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC;YACnC,WAAW,EAAE,uBAAc;SAC9B;QACD;YACI,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,MAAM,CAAC,CAAC;SACtC;KACJ;IACD,CAAC,kBAAS,CAAC,QAAQ,CAAC,EAAE;QAClB,GAAG,8BAAsB;QACzB;YACI,MAAM,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC;YACnC,WAAW,EAAE,uBAAc;SAC9B;KACJ;IACD,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE;QACnB,GAAG,8BAAsB;QACzB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,MAAM,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;SACnE;QACD;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;YAChC,MAAM,EAAE,eAAe;SAC1B;KACJ;IACD,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE;QACpB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,eAAe;SAC1B;KACJ;IACD,CAAC,kBAAS,CAAC,iBAAiB,CAAC,EAAE;QAC3B;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;YAChC,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;SACpD;QACD;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,aAAa,CAAC,CAAC;SAC7C;KACJ;IACD,CAAC,qBAAY,CAAC,aAAa,CAAC,EAAE;QAC1B;YACI,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,uBAAuB;SAClC;KACJ;IACD,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE;QACrB;YACI,MAAM,EAAE,CAAC,aAAa,CAAC;YACvB,WAAW,EAAE,uBAAc;SAC9B;KACJ;IACD,CAAC,kBAAS,CAAC,kBAAkB,CAAC,EAAE;QAC5B;YACI,MAAM,EAAE,CAAC,aAAa,CAAC;YACvB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,kBAAkB;SAC7B;QACD;YACI,MAAM,EAAE,CAAC,aAAa,CAAC;YACvB,WAAW,EAAE,4BAAmB;YAChC,MAAM,EAAE,uBAAuB;SAClC;KACJ;IACD,CAAC,qBAAY,CAAC,OAAO,CAAC,EAAE;QACpB;YACI,MAAM,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC;YAClC,WAAW,EAAE,uBAAc;SAC9B;QACD;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;YAChC,MAAM,EAAE,UAAU;SACrB;QACD;YACI,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;SAC/C;KACJ;IACD,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE;QACnB;YACI,MAAM,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC;YACvC,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,kBAAkB;SAC7B;QACD;YACI,MAAM,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC;YACvC,WAAW,EAAE,4BAAmB;YAChC,MAAM,EAAE,uBAAuB;SAClC;KACJ;IACD,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE;QACpB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;KACJ;IACD,CAAC,kBAAS,CAAC,eAAe,CAAC,EAAE,8BAAsB;IACnD,CAAC,kBAAS,CAAC,WAAW,CAAC,EAAE,8BAAsB;IAC/C,CAAC,kBAAS,CAAC,UAAU,CAAC,EAAE,8BAAsB;IAC9C,CAAC,qBAAY,CAAC,SAAS,CAAC,EAAE;QACtB;YACI,MAAM,EAAE,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,4BAAmB;SACnC;QACD;YACI,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,IAAA,0BAAiB,EAAC,CAAC,MAAM,CAAC,CAAC;SACtC;KACJ;IACD,CAAC,kBAAS,CAAC,SAAS,CAAC,EAAE;QACnB;YACI,MAAM,EAAE,CAAC,aAAa,CAAC;YACvB,WAAW,EAAE,uBAAc;YAC3B,MAAM,EAAE,kBAAkB;SAC7B;QACD;YACI,MAAM,EAAE,CAAC,aAAa,CAAC;YACvB,WAAW,EAAE,4BAAmB;YAChC,MAAM,EAAE,uBAAuB;SAClC;KACJ;CACJ,CAAC","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\nimport {\n BlockType,\n ContentBlockProps,\n ExtendedFeaturesItem,\n PriceDetailedProps,\n PriceDetailsListProps,\n PriceDetailsSettingsProps,\n PromoFeaturesItem,\n SubBlockType,\n TableProps,\n TitleItemProps,\n} from '../models';\n\nimport {\n Parser,\n Transformer,\n TransformerRaw,\n createItemsParser,\n typografTransformer,\n yfmTransformer,\n} from './common';\n\nfunction parseTableBlock(transformer: Transformer, content: TableProps) {\n const legend = content?.legend;\n\n return {\n ...(content || {}),\n legend: legend && legend.map((string) => transformer(string)),\n };\n}\n\nfunction parseFeatures(transformer: Transformer, items: ExtendedFeaturesItem[]) {\n return items.map(({title, text, ...rest}) => ({\n title: title && transformer(title),\n text: text && transformer(text),\n ...rest,\n }));\n}\n\nfunction parsePromoFeatures(transformer: Transformer, items: PromoFeaturesItem[]) {\n return items.map(({text, ...rest}) => ({\n text: transformer(text),\n ...rest,\n }));\n}\n\nconst parseTitle = (transformer: Transformer, title: TitleItemProps | string) =>\n typeof title === 'object' && 'text' in title\n ? {...title, text: transformer(title.text)}\n : title && transformer(title);\n\nconst parseItemsTitle = (transformer: Transformer, items: ExtendedFeaturesItem[]) =>\n items.map(({title, ...rest}) => ({\n title: title && parseTitle(transformer, title),\n ...rest,\n }));\n\nfunction parsePriceDetailedBlock(transformer: Transformer, block: PriceDetailedProps) {\n const {priceType} = block;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n block.items = block.items.map((item) => {\n const {description, items: details = []} = item;\n\n if (priceType === 'marked-list') {\n item.items = (details as PriceDetailsListProps[]).map((detail) => {\n detail.text = detail.text && transformer(detail.text);\n\n return detail;\n });\n } else {\n item.items = (details as PriceDetailsSettingsProps[]).map((detail) => {\n detail.description = detail.description && transformer(detail.description);\n\n return detail;\n });\n }\n\n item.description = transformer(description);\n\n return item;\n });\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\n return block;\n}\n\nconst parseContentLayout = (transformer: Transformer, content: ContentBlockProps) => {\n if (content) {\n const {text, additionalInfo, list} = content;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n if (text) {\n content.text = transformer(text);\n }\n\n if (additionalInfo) {\n content.additionalInfo = transformer(additionalInfo);\n }\n\n if (list) {\n content.list = list.map((item) => {\n if (item?.text) {\n return {\n ...item,\n text: transformer(item.text),\n };\n }\n\n return item;\n });\n }\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n }\n\n return content;\n};\n\nfunction parseContentLayoutTitle(transformer: Transformer, content: ContentBlockProps) {\n if (content?.title) {\n const {title} = content;\n\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign\n content.title = title && parseTitle(transformer, title);\n }\n\n return content;\n}\n\nexport const blockHeaderTransformer = [\n {\n fields: ['title'],\n transformer: typografTransformer,\n parser: parseTitle,\n },\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n];\n\ninterface BlockConfig {\n transformer: TransformerRaw;\n fields?: string[];\n parser?: Parser;\n}\n\nexport type BlocksConfig = Record<string, BlockConfig | BlockConfig[]>;\n\nexport const config: BlocksConfig = {\n [SubBlockType.BasicCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BackgroundCard]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [SubBlockType.ImageCard]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [SubBlockType.LayoutItem]: [\n {\n fields: ['content'],\n parser: parseContentLayout,\n transformer: yfmTransformer,\n },\n {\n fields: ['content'],\n parser: parseContentLayoutTitle,\n transformer: typografTransformer,\n },\n {\n fields: ['metaInfo'],\n parser: createItemsParser([]),\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.Quote]: [\n {\n fields: ['text'],\n transformer: typografTransformer,\n },\n {\n fields: ['yfmText'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.ExtendedFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: createItemsParser(['title']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo']),\n },\n ],\n [BlockType.PromoFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parsePromoFeatures,\n },\n ],\n [BlockType.SliderBlock]: blockHeaderTransformer,\n [BlockType.CompaniesBlock]: blockHeaderTransformer,\n [BlockType.QuestionsBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parseFeatures,\n },\n ],\n\n [BlockType.BannerBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BannerCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.MediaBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['title', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text']),\n },\n ],\n [BlockType.MapBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['title', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.TabsBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo', 'caption']),\n },\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: parseItemsTitle,\n },\n ],\n [BlockType.TableBlock]: [\n {\n fields: ['table'],\n transformer: yfmTransformer,\n parser: parseTableBlock,\n },\n ],\n [BlockType.HeaderSliderBlock]: [\n {\n fields: ['items'],\n transformer: typografTransformer,\n parser: createItemsParser(['title', 'overtitle']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['description']),\n },\n ],\n [SubBlockType.PriceDetailed]: [\n {\n transformer: yfmTransformer,\n parser: parsePriceDetailedBlock,\n },\n ],\n [BlockType.HeaderBlock]: [\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.ContentLayoutBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n [SubBlockType.Content]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: typografTransformer,\n parser: parseTitle,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['title', 'text']),\n },\n ],\n [BlockType.InfoBlock]: [\n {\n fields: ['rightContent', 'leftContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['rightContent', 'leftContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n [BlockType.ShareBlock]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n ],\n [BlockType.CardLayoutBlock]: blockHeaderTransformer,\n [BlockType.FilterBlock]: blockHeaderTransformer,\n [BlockType.IconsBlock]: blockHeaderTransformer,\n [SubBlockType.PriceCard]: [\n {\n fields: ['title'],\n transformer: typografTransformer,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text']),\n },\n ],\n [BlockType.FormBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: typografTransformer,\n parser: parseContentLayoutTitle,\n },\n ],\n};\n"]}
1
+ {"version":3,"file":"config.js","sourceRoot":"../../../src","sources":["text-transform/config.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\nimport {\n BlockType,\n ContentBlockProps,\n ExtendedFeaturesItem,\n PriceDetailedProps,\n PriceDetailsListProps,\n PriceDetailsSettingsProps,\n PromoFeaturesItem,\n SubBlockType,\n TableProps,\n TitleItemProps,\n} from '../models';\n\nimport {Parser, Transformer, TransformerRaw, createItemsParser, yfmTransformer} from './common';\n\nfunction parseTableBlockLegend(transformer: Transformer, content: TableProps) {\n const legend = content?.legend;\n\n return {\n ...(content || {}),\n legend: legend && legend.map((string) => transformer(string)),\n };\n}\n\nfunction parseTableBlockContent(transformer: Transformer, content: TableProps) {\n const legend = content?.legend;\n const tableContent = content?.content;\n\n return {\n ...(content || {}),\n content:\n tableContent &&\n tableContent.map((row, i) =>\n row.map((cell, j) => {\n if (legend) {\n if (i === 0 || j === 0) {\n return transformer(cell);\n }\n return cell;\n } else {\n return transformer(cell);\n }\n }),\n ),\n };\n}\n\nfunction parseFeatures(transformer: Transformer, items: ExtendedFeaturesItem[]) {\n return items.map(({title, text, ...rest}) => ({\n title: title && transformer(title),\n text: text && transformer(text),\n ...rest,\n }));\n}\n\nfunction parsePromoFeatures(transformer: Transformer, items: PromoFeaturesItem[]) {\n return items.map(({text, ...rest}) => ({\n text: transformer(text),\n ...rest,\n }));\n}\n\nconst parseTitle = (transformer: Transformer, title: TitleItemProps | string) =>\n typeof title === 'object' && 'text' in title\n ? {...title, text: transformer(title.text)}\n : title && transformer(title);\n\nconst parseItemsTitle = (transformer: Transformer, items: ExtendedFeaturesItem[]) =>\n items.map(({title, ...rest}) => ({\n title: title && parseTitle(transformer, title),\n ...rest,\n }));\n\nfunction parsePriceDetailedBlock(transformer: Transformer, block: PriceDetailedProps) {\n const {priceType} = block;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n block.items = block.items.map((item) => {\n const {description, items: details = []} = item;\n\n if (priceType === 'marked-list') {\n item.items = (details as PriceDetailsListProps[]).map((detail) => {\n detail.text = detail.text && transformer(detail.text);\n\n return detail;\n });\n } else {\n item.items = (details as PriceDetailsSettingsProps[]).map((detail) => {\n detail.description = detail.description && transformer(detail.description);\n\n return detail;\n });\n }\n\n item.description = transformer(description);\n\n return item;\n });\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n\n return block;\n}\n\nconst parseContentLayout = (transformer: Transformer, content: ContentBlockProps) => {\n if (content) {\n const {text, additionalInfo, list} = content;\n\n /* eslint-disable no-not-accumulator-reassign/no-not-accumulator-reassign */\n if (text) {\n content.text = transformer(text);\n }\n\n if (additionalInfo) {\n content.additionalInfo = transformer(additionalInfo);\n }\n\n if (list) {\n content.list = list.map((item) => {\n if (item?.text) {\n return {\n ...item,\n text: transformer(item.text),\n };\n }\n\n return item;\n });\n }\n /* eslint-enable no-not-accumulator-reassign/no-not-accumulator-reassign */\n }\n\n return content;\n};\n\nfunction parseContentLayoutTitle(transformer: Transformer, content: ContentBlockProps) {\n if (content?.title) {\n const {title} = content;\n\n // eslint-disable-next-line no-not-accumulator-reassign/no-not-accumulator-reassign\n content.title = title && parseTitle(transformer, title);\n }\n\n return content;\n}\n\nexport const blockHeaderTransformer = [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n parser: parseTitle,\n renderInline: true,\n },\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n];\n\ninterface BlockConfig {\n transformer: TransformerRaw;\n fields?: string[];\n parser?: Parser;\n renderInline?: boolean;\n}\n\nexport type BlocksConfig = Record<string, BlockConfig | BlockConfig[]>;\n\nexport const config: BlocksConfig = {\n [SubBlockType.BasicCard]: [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BackgroundCard]: [\n {\n fields: ['title', 'text', 'additionalInfo'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n ],\n [SubBlockType.ImageCard]: [\n {\n fields: ['title', 'text', 'additionalInfo'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n ],\n [SubBlockType.LayoutItem]: [\n {\n fields: ['content'],\n parser: parseContentLayout,\n transformer: yfmTransformer,\n },\n {\n fields: ['content'],\n parser: parseContentLayoutTitle,\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['metaInfo'],\n parser: createItemsParser([]),\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.Quote]: [\n {\n fields: ['text', 'yfmText'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n ],\n [BlockType.ExtendedFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['title']),\n renderInline: true,\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['list.text']),\n renderInline: true,\n },\n ],\n [BlockType.PromoFeaturesBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parsePromoFeatures,\n },\n ],\n [BlockType.SliderOldBlock]: blockHeaderTransformer,\n [BlockType.SliderBlock]: blockHeaderTransformer,\n [BlockType.CompaniesBlock]: blockHeaderTransformer,\n [BlockType.QuestionsBlock]: [\n {\n fields: ['title', 'text', 'additionalInfo'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parseFeatures,\n },\n ],\n\n [BlockType.BannerBlock]: [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [SubBlockType.BannerCard]: [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['subtitle'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.MediaBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text']),\n },\n ],\n [BlockType.MapBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['title', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n ],\n [BlockType.TabsBlock]: [\n ...blockHeaderTransformer,\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['text', 'additionalInfo', 'caption']),\n },\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: parseItemsTitle,\n renderInline: true,\n },\n ],\n [BlockType.TableBlock]: [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['table'],\n transformer: yfmTransformer,\n parser: parseTableBlockLegend,\n },\n {\n fields: ['table'],\n transformer: yfmTransformer,\n parser: parseTableBlockContent,\n renderInline: true,\n },\n ],\n [BlockType.HeaderSliderBlock]: [\n {\n fields: ['items'],\n transformer: yfmTransformer,\n parser: createItemsParser(['title', 'overtitle', 'description']),\n renderInline: true,\n },\n ],\n [SubBlockType.PriceDetailed]: [\n {\n transformer: yfmTransformer,\n parser: parsePriceDetailedBlock,\n },\n ],\n [BlockType.HeaderBlock]: [\n {\n fields: ['description'],\n transformer: yfmTransformer,\n },\n {\n fields: ['overtitle', 'title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n ],\n [BlockType.ContentLayoutBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayoutTitle,\n renderInline: true,\n },\n ],\n [SubBlockType.Content]: [\n {\n fields: ['text', 'additionalInfo'],\n transformer: yfmTransformer,\n },\n {\n fields: ['title'],\n transformer: yfmTransformer,\n parser: parseTitle,\n renderInline: true,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['title', 'text']),\n },\n ],\n [BlockType.InfoBlock]: [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['rightContent', 'leftContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['rightContent', 'leftContent'],\n transformer: yfmTransformer,\n parser: parseContentLayoutTitle,\n renderInline: true,\n },\n ],\n [BlockType.ShareBlock]: [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n ],\n [BlockType.CardLayoutBlock]: blockHeaderTransformer,\n [BlockType.FilterBlock]: blockHeaderTransformer,\n [BlockType.IconsBlock]: blockHeaderTransformer,\n [SubBlockType.PriceCard]: [\n {\n fields: ['title'],\n transformer: yfmTransformer,\n renderInline: true,\n },\n {\n fields: ['list'],\n transformer: yfmTransformer,\n parser: createItemsParser(['title', 'text']),\n },\n ],\n [BlockType.FormBlock]: [\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayout,\n },\n {\n fields: ['textContent'],\n transformer: yfmTransformer,\n parser: parseContentLayoutTitle,\n renderInline: true,\n },\n ],\n};\n"]}