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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (285) hide show
  1. package/build/cjs/blocks/CardLayout/CardLayout.js +1 -1
  2. package/build/cjs/blocks/CardLayout/CardLayout.js.map +1 -1
  3. package/build/cjs/blocks/Form/schema.js +1 -1
  4. package/build/cjs/blocks/Form/schema.js.map +1 -1
  5. package/build/cjs/blocks/Header/Header.css +6 -0
  6. package/build/cjs/blocks/Header/Header.js +10 -4
  7. package/build/cjs/blocks/Header/Header.js.map +1 -1
  8. package/build/cjs/blocks/Header/schema.d.ts +6 -0
  9. package/build/cjs/blocks/Header/schema.js +3 -0
  10. package/build/cjs/blocks/Header/schema.js.map +1 -1
  11. package/build/cjs/blocks/HeaderSlider/schema.d.ts +3 -0
  12. package/build/cjs/blocks/HeaderSlider/schema.js +1 -1
  13. package/build/cjs/blocks/HeaderSlider/schema.js.map +1 -1
  14. package/build/cjs/blocks/Info/schema.js +1 -1
  15. package/build/cjs/blocks/Info/schema.js.map +1 -1
  16. package/build/cjs/blocks/Media/schema.js +1 -1
  17. package/build/cjs/blocks/Media/schema.js.map +1 -1
  18. package/build/cjs/blocks/Questions/schema.js +1 -1
  19. package/build/cjs/blocks/Questions/schema.js.map +1 -1
  20. package/build/cjs/blocks/Slider/Slider.js +3 -3
  21. package/build/cjs/blocks/Slider/Slider.js.map +1 -1
  22. package/build/cjs/blocks/Slider/utils.js +1 -1
  23. package/build/cjs/blocks/Slider/utils.js.map +1 -1
  24. package/build/cjs/blocks/SliderNew/Slider.d.ts +1 -1
  25. package/build/cjs/blocks/SliderNew/Slider.js +13 -2
  26. package/build/cjs/blocks/SliderNew/Slider.js.map +1 -1
  27. package/build/cjs/blocks/SliderNew/utils.js +2 -2
  28. package/build/cjs/blocks/SliderNew/utils.js.map +1 -1
  29. package/build/cjs/blocks/Tabs/schema.js +1 -1
  30. package/build/cjs/blocks/Tabs/schema.js.map +1 -1
  31. package/build/cjs/components/BackLink/BackLink.js +5 -2
  32. package/build/cjs/components/BackLink/BackLink.js.map +1 -1
  33. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js +3 -3
  34. package/build/cjs/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  35. package/build/cjs/components/BrandFooter/BrandFooter.css +21 -17
  36. package/build/cjs/components/BrandFooter/BrandFooter.js +1 -1
  37. package/build/cjs/components/BrandFooter/BrandFooter.js.map +1 -1
  38. package/build/cjs/components/Button/Button.js +2 -3
  39. package/build/cjs/components/Button/Button.js.map +1 -1
  40. package/build/cjs/components/CardBase/CardBase.css +1 -0
  41. package/build/cjs/components/ContentList/ContentList.css +7 -7
  42. package/build/cjs/components/FileLink/FileLink.js +8 -1
  43. package/build/cjs/components/FileLink/FileLink.js.map +1 -1
  44. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js +1 -1
  45. package/build/cjs/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  46. package/build/cjs/components/ImageBase/ImageBase.js +1 -1
  47. package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
  48. package/build/cjs/components/Link/Link.js +11 -2
  49. package/build/cjs/components/Link/Link.js.map +1 -1
  50. package/build/cjs/components/Map/GoogleMap.js +1 -1
  51. package/build/cjs/components/Map/GoogleMap.js.map +1 -1
  52. package/build/cjs/components/Map/YMap/YandexMap.js +1 -1
  53. package/build/cjs/components/Map/YMap/YandexMap.js.map +1 -1
  54. package/build/cjs/components/Media/Image/Image.js +1 -1
  55. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  56. package/build/cjs/components/OutsideClick/OutsideClick.js +1 -1
  57. package/build/cjs/components/OutsideClick/OutsideClick.js.map +1 -1
  58. package/build/cjs/components/OverflowScroller/OverflowScroller.js +1 -1
  59. package/build/cjs/components/OverflowScroller/OverflowScroller.js.map +1 -1
  60. package/build/cjs/components/ReactPlayer/ReactPlayer.js +1 -1
  61. package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
  62. package/build/cjs/components/Title/TitleItem.css +8 -1
  63. package/build/cjs/components/Title/TitleItem.js +1 -0
  64. package/build/cjs/components/Title/TitleItem.js.map +1 -1
  65. package/build/cjs/components/VideoBlock/VideoBlock.js +1 -1
  66. package/build/cjs/components/VideoBlock/VideoBlock.js.map +1 -1
  67. package/build/cjs/containers/PageConstructor/PageConstructor.css +1 -0
  68. package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +1 -1
  69. package/build/cjs/containers/PageConstructor/PageConstructor.js +1 -1
  70. package/build/cjs/containers/PageConstructor/PageConstructor.js.map +1 -1
  71. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  72. package/build/cjs/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  73. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +1 -1
  74. package/build/cjs/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  75. package/build/cjs/editor/components/AddBlock/AddBlock.js +1 -1
  76. package/build/cjs/editor/components/AddBlock/AddBlock.js.map +1 -1
  77. package/build/cjs/editor/components/BlockForm/BlockForm.js +2 -2
  78. package/build/cjs/editor/components/BlockForm/BlockForm.js.map +1 -1
  79. package/build/cjs/editor/components/CodeEditor/CodeEditor.js +1 -1
  80. package/build/cjs/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  81. package/build/cjs/editor/components/ControlPanel/ControlPanel.css +1 -1
  82. package/build/cjs/editor/components/PageSettings/PageSettings.js +1 -1
  83. package/build/cjs/editor/components/PageSettings/PageSettings.js.map +1 -1
  84. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +1 -1
  85. package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  86. package/build/cjs/editor/dynamic-forms-custom/config.js +1 -1
  87. package/build/cjs/editor/dynamic-forms-custom/config.js.map +1 -1
  88. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js +2 -2
  89. package/build/cjs/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  90. package/build/cjs/editor/store/main/utils.js +1 -1
  91. package/build/cjs/editor/store/main/utils.js.map +1 -1
  92. package/build/cjs/editor/utils/index.js +1 -1
  93. package/build/cjs/editor/utils/index.js.map +1 -1
  94. package/build/cjs/editor/utils/validation.js +1 -1
  95. package/build/cjs/editor/utils/validation.js.map +1 -1
  96. package/build/cjs/hooks/useFocus.js +1 -1
  97. package/build/cjs/hooks/useFocus.js.map +1 -1
  98. package/build/cjs/hooks/useHeightCalculator.js +1 -1
  99. package/build/cjs/hooks/useHeightCalculator.js.map +1 -1
  100. package/build/cjs/hooks/useWindowBreakpoint.js +1 -1
  101. package/build/cjs/hooks/useWindowBreakpoint.js.map +1 -1
  102. package/build/cjs/models/constructor-items/blocks.d.ts +2 -1
  103. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  104. package/build/cjs/models/constructor-items/common.d.ts +2 -2
  105. package/build/cjs/models/constructor-items/common.js.map +1 -1
  106. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js +1 -1
  107. package/build/cjs/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  108. package/build/cjs/navigation/components/NavigationItem/hooks/useNavigationItemMap.js +1 -1
  109. package/build/cjs/navigation/components/NavigationItem/hooks/useNavigationItemMap.js.map +1 -1
  110. package/build/cjs/navigation/hooks/useActiveNavItem.d.ts +2 -2
  111. package/build/cjs/navigation/hooks/useShowBorder.js +1 -1
  112. package/build/cjs/navigation/hooks/useShowBorder.js.map +1 -1
  113. package/build/cjs/navigation/schema.js +1 -1
  114. package/build/cjs/navigation/schema.js.map +1 -1
  115. package/build/cjs/navigation/utils.d.ts +1 -1
  116. package/build/cjs/schema/validators/common.js +1 -1
  117. package/build/cjs/schema/validators/common.js.map +1 -1
  118. package/build/cjs/sub-blocks/BackgroundCard/schema.js +1 -1
  119. package/build/cjs/sub-blocks/BackgroundCard/schema.js.map +1 -1
  120. package/build/cjs/sub-blocks/BasicCard/schema.js +1 -1
  121. package/build/cjs/sub-blocks/BasicCard/schema.js.map +1 -1
  122. package/build/cjs/sub-blocks/Content/Content.css +53 -6
  123. package/build/cjs/sub-blocks/Content/Content.js +2 -0
  124. package/build/cjs/sub-blocks/Content/Content.js.map +1 -1
  125. package/build/cjs/sub-blocks/ImageCard/ImageCard.css +2 -0
  126. package/build/cjs/sub-blocks/ImageCard/schema.js +1 -1
  127. package/build/cjs/sub-blocks/ImageCard/schema.js.map +1 -1
  128. package/build/cjs/sub-blocks/LayoutItem/schema.js +1 -1
  129. package/build/cjs/sub-blocks/LayoutItem/schema.js.map +1 -1
  130. package/build/cjs/sub-blocks/PriceCard/PriceCard.js +2 -3
  131. package/build/cjs/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  132. package/build/cjs/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js +1 -1
  133. package/build/cjs/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js.map +1 -1
  134. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -0
  135. package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  136. package/build/cjs/text-transform/transformers.js +2 -2
  137. package/build/cjs/text-transform/transformers.js.map +1 -1
  138. package/build/cjs/utils/blocks.js +3 -2
  139. package/build/cjs/utils/blocks.js.map +1 -1
  140. package/build/esm/blocks/CardLayout/CardLayout.js +1 -1
  141. package/build/esm/blocks/CardLayout/CardLayout.js.map +1 -1
  142. package/build/esm/blocks/Form/schema.js +1 -1
  143. package/build/esm/blocks/Form/schema.js.map +1 -1
  144. package/build/esm/blocks/Header/Header.css +6 -0
  145. package/build/esm/blocks/Header/Header.js +10 -4
  146. package/build/esm/blocks/Header/Header.js.map +1 -1
  147. package/build/esm/blocks/Header/schema.d.ts +6 -0
  148. package/build/esm/blocks/Header/schema.js +3 -0
  149. package/build/esm/blocks/Header/schema.js.map +1 -1
  150. package/build/esm/blocks/HeaderSlider/schema.d.ts +3 -0
  151. package/build/esm/blocks/HeaderSlider/schema.js +1 -1
  152. package/build/esm/blocks/HeaderSlider/schema.js.map +1 -1
  153. package/build/esm/blocks/Info/schema.js +1 -1
  154. package/build/esm/blocks/Info/schema.js.map +1 -1
  155. package/build/esm/blocks/Media/schema.js +1 -1
  156. package/build/esm/blocks/Media/schema.js.map +1 -1
  157. package/build/esm/blocks/Questions/schema.js +1 -1
  158. package/build/esm/blocks/Questions/schema.js.map +1 -1
  159. package/build/esm/blocks/Slider/Slider.js +3 -3
  160. package/build/esm/blocks/Slider/Slider.js.map +1 -1
  161. package/build/esm/blocks/Slider/utils.js +1 -1
  162. package/build/esm/blocks/Slider/utils.js.map +1 -1
  163. package/build/esm/blocks/SliderNew/Slider.d.ts +1 -1
  164. package/build/esm/blocks/SliderNew/Slider.js +13 -2
  165. package/build/esm/blocks/SliderNew/Slider.js.map +1 -1
  166. package/build/esm/blocks/SliderNew/utils.js +2 -2
  167. package/build/esm/blocks/SliderNew/utils.js.map +1 -1
  168. package/build/esm/blocks/Tabs/schema.js +1 -1
  169. package/build/esm/blocks/Tabs/schema.js.map +1 -1
  170. package/build/esm/components/BackLink/BackLink.js +5 -2
  171. package/build/esm/components/BackLink/BackLink.js.map +1 -1
  172. package/build/esm/components/BalancedMasonry/BalancedMasonry.js +3 -3
  173. package/build/esm/components/BalancedMasonry/BalancedMasonry.js.map +1 -1
  174. package/build/esm/components/BrandFooter/BrandFooter.css +21 -17
  175. package/build/esm/components/BrandFooter/BrandFooter.js +1 -1
  176. package/build/esm/components/BrandFooter/BrandFooter.js.map +1 -1
  177. package/build/esm/components/Button/Button.js +3 -4
  178. package/build/esm/components/Button/Button.js.map +1 -1
  179. package/build/esm/components/CardBase/CardBase.css +1 -0
  180. package/build/esm/components/ContentList/ContentList.css +7 -7
  181. package/build/esm/components/FileLink/FileLink.js +8 -1
  182. package/build/esm/components/FileLink/FileLink.js.map +1 -1
  183. package/build/esm/components/FullWidthBackground/FullWidthBackground.js +1 -1
  184. package/build/esm/components/FullWidthBackground/FullWidthBackground.js.map +1 -1
  185. package/build/esm/components/ImageBase/ImageBase.js +1 -1
  186. package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
  187. package/build/esm/components/Link/Link.js +12 -3
  188. package/build/esm/components/Link/Link.js.map +1 -1
  189. package/build/esm/components/Map/GoogleMap.js +1 -1
  190. package/build/esm/components/Map/GoogleMap.js.map +1 -1
  191. package/build/esm/components/Map/YMap/YandexMap.js +1 -1
  192. package/build/esm/components/Map/YMap/YandexMap.js.map +1 -1
  193. package/build/esm/components/Media/Image/Image.js +1 -1
  194. package/build/esm/components/Media/Image/Image.js.map +1 -1
  195. package/build/esm/components/OutsideClick/OutsideClick.js +1 -1
  196. package/build/esm/components/OutsideClick/OutsideClick.js.map +1 -1
  197. package/build/esm/components/OverflowScroller/OverflowScroller.js +1 -1
  198. package/build/esm/components/OverflowScroller/OverflowScroller.js.map +1 -1
  199. package/build/esm/components/ReactPlayer/ReactPlayer.js +1 -1
  200. package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
  201. package/build/esm/components/Title/TitleItem.css +8 -1
  202. package/build/esm/components/Title/TitleItem.js +1 -0
  203. package/build/esm/components/Title/TitleItem.js.map +1 -1
  204. package/build/esm/components/VideoBlock/VideoBlock.js +1 -1
  205. package/build/esm/components/VideoBlock/VideoBlock.js.map +1 -1
  206. package/build/esm/containers/PageConstructor/PageConstructor.css +1 -0
  207. package/build/esm/containers/PageConstructor/PageConstructor.d.ts +1 -1
  208. package/build/esm/containers/PageConstructor/PageConstructor.js +1 -1
  209. package/build/esm/containers/PageConstructor/PageConstructor.js.map +1 -1
  210. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js +1 -1
  211. package/build/esm/containers/PageConstructor/components/ConstructorBlock/ConstructorBlock.js.map +1 -1
  212. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js +1 -1
  213. package/build/esm/containers/PageConstructor/components/ConstructorBlocks/ConstructorBlocks.js.map +1 -1
  214. package/build/esm/editor/components/AddBlock/AddBlock.js +1 -1
  215. package/build/esm/editor/components/AddBlock/AddBlock.js.map +1 -1
  216. package/build/esm/editor/components/BlockForm/BlockForm.js +2 -2
  217. package/build/esm/editor/components/BlockForm/BlockForm.js.map +1 -1
  218. package/build/esm/editor/components/CodeEditor/CodeEditor.js +1 -1
  219. package/build/esm/editor/components/CodeEditor/CodeEditor.js.map +1 -1
  220. package/build/esm/editor/components/ControlPanel/ControlPanel.css +1 -1
  221. package/build/esm/editor/components/PageSettings/PageSettings.js +1 -1
  222. package/build/esm/editor/components/PageSettings/PageSettings.js.map +1 -1
  223. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js +1 -1
  224. package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.js.map +1 -1
  225. package/build/esm/editor/dynamic-forms-custom/config.js +1 -1
  226. package/build/esm/editor/dynamic-forms-custom/config.js.map +1 -1
  227. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js +2 -2
  228. package/build/esm/editor/dynamic-forms-custom/hooks/useOneOf.js.map +1 -1
  229. package/build/esm/editor/store/main/utils.js +1 -1
  230. package/build/esm/editor/store/main/utils.js.map +1 -1
  231. package/build/esm/editor/utils/index.js +1 -1
  232. package/build/esm/editor/utils/index.js.map +1 -1
  233. package/build/esm/editor/utils/validation.js +1 -1
  234. package/build/esm/editor/utils/validation.js.map +1 -1
  235. package/build/esm/hooks/useFocus.js +1 -1
  236. package/build/esm/hooks/useFocus.js.map +1 -1
  237. package/build/esm/hooks/useHeightCalculator.js +1 -1
  238. package/build/esm/hooks/useHeightCalculator.js.map +1 -1
  239. package/build/esm/hooks/useWindowBreakpoint.js +1 -1
  240. package/build/esm/hooks/useWindowBreakpoint.js.map +1 -1
  241. package/build/esm/models/constructor-items/blocks.d.ts +2 -1
  242. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  243. package/build/esm/models/constructor-items/common.d.ts +2 -2
  244. package/build/esm/models/constructor-items/common.js.map +1 -1
  245. package/build/esm/navigation/components/NavigationItem/NavigationItem.js +1 -1
  246. package/build/esm/navigation/components/NavigationItem/NavigationItem.js.map +1 -1
  247. package/build/esm/navigation/components/NavigationItem/hooks/useNavigationItemMap.js +1 -1
  248. package/build/esm/navigation/components/NavigationItem/hooks/useNavigationItemMap.js.map +1 -1
  249. package/build/esm/navigation/hooks/useActiveNavItem.d.ts +2 -2
  250. package/build/esm/navigation/hooks/useShowBorder.js +1 -1
  251. package/build/esm/navigation/hooks/useShowBorder.js.map +1 -1
  252. package/build/esm/navigation/schema.js +1 -1
  253. package/build/esm/navigation/schema.js.map +1 -1
  254. package/build/esm/navigation/utils.d.ts +1 -1
  255. package/build/esm/schema/validators/common.js +1 -1
  256. package/build/esm/schema/validators/common.js.map +1 -1
  257. package/build/esm/sub-blocks/BackgroundCard/schema.js +1 -1
  258. package/build/esm/sub-blocks/BackgroundCard/schema.js.map +1 -1
  259. package/build/esm/sub-blocks/BasicCard/schema.js +1 -1
  260. package/build/esm/sub-blocks/BasicCard/schema.js.map +1 -1
  261. package/build/esm/sub-blocks/Content/Content.css +53 -6
  262. package/build/esm/sub-blocks/Content/Content.js +2 -0
  263. package/build/esm/sub-blocks/Content/Content.js.map +1 -1
  264. package/build/esm/sub-blocks/ImageCard/ImageCard.css +2 -0
  265. package/build/esm/sub-blocks/ImageCard/schema.js +1 -1
  266. package/build/esm/sub-blocks/ImageCard/schema.js.map +1 -1
  267. package/build/esm/sub-blocks/LayoutItem/schema.js +1 -1
  268. package/build/esm/sub-blocks/LayoutItem/schema.js.map +1 -1
  269. package/build/esm/sub-blocks/PriceCard/PriceCard.js +1 -1
  270. package/build/esm/sub-blocks/PriceCard/PriceCard.js.map +1 -1
  271. package/build/esm/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js +1 -1
  272. package/build/esm/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.js.map +1 -1
  273. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +1 -0
  274. package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js.map +1 -1
  275. package/build/esm/text-transform/transformers.js +2 -2
  276. package/build/esm/text-transform/transformers.js.map +1 -1
  277. package/build/esm/utils/blocks.js +3 -2
  278. package/build/esm/utils/blocks.js.map +1 -1
  279. package/package.json +16 -11
  280. package/schema/index.js +1 -1
  281. package/server/models/constructor-items/blocks.d.ts +2 -1
  282. package/server/models/constructor-items/common.d.ts +2 -2
  283. package/server/utils/blocks.js +1 -0
  284. package/styles/root.scss +1 -0
  285. package/widget/2957.index.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useFocus.js","sourceRoot":"../../../src","sources":["hooks/useFocus.ts"],"names":[],"mappings":";;AAMA,2BAkCC;;AAxCD,qDAA+B;AAE/B,+DAA+B;AAE/B,qEAAuD;AAEvD,SAAwB,QAAQ,CAAC,OAAqB;IAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IAEjD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAEnE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,QAAQ,EAAE,CAAC;gBACX,OAAO,CAAC,gBAAgB,CAAC,aAAa,EAAE,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,UAAU,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;YACxE,CAAC;YAED,OAAO,GAAG,EAAE;gBACR,IAAI,QAAQ,EAAE,CAAC;oBACX,OAAO,CAAC,mBAAmB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBACzD,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;oBACpD,OAAO,CAAC,mBAAmB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;gBAC1D,CAAC;YACL,CAAC,CAAC;QACN,CAAC;QAED,OAAO,cAAI,CAAC;IAChB,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAE9C,OAAO;QACH,QAAQ;QACR,QAAQ;QACR,UAAU;KACb,CAAC;AACN,CAAC","sourcesContent":["import * as React from 'react';\n\nimport noop from 'lodash/noop';\n\nimport {MobileContext} from '../context/mobileContext';\n\nexport default function useFocus(element?: HTMLElement) {\n const isMobile = React.useContext(MobileContext);\n\n const [hasFocus, setHasFocus] = React.useState(false);\n const setFocus = React.useCallback(() => setHasFocus(true), []);\n const unsetFocus = React.useCallback(() => setHasFocus(false), []);\n\n React.useEffect(() => {\n if (element) {\n if (isMobile) {\n element.addEventListener('pointerdown', setFocus, {passive: true});\n } else {\n element.addEventListener('mouseenter', setFocus, {passive: true});\n element.addEventListener('mouseleave', unsetFocus, {passive: true});\n }\n\n return () => {\n if (isMobile) {\n element.removeEventListener('pointerdown', setFocus);\n } else {\n element.removeEventListener('mouseenter', setFocus);\n element.removeEventListener('mouseleave', unsetFocus);\n }\n };\n }\n\n return noop;\n }, [element, isMobile, setFocus, unsetFocus]);\n\n return {\n hasFocus,\n setFocus,\n unsetFocus,\n };\n}\n"]}
1
+ {"version":3,"file":"useFocus.js","sourceRoot":"../../../src","sources":["hooks/useFocus.ts"],"names":[],"mappings":";;AAMA,2BAkCC;;AAxCD,qDAA+B;AAE/B,kEAA+B;AAE/B,qEAAuD;AAEvD,SAAwB,QAAQ,CAAC,OAAqB;IAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,6BAAa,CAAC,CAAC;IAEjD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAEnE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,QAAQ,EAAE,CAAC;gBACX,OAAO,CAAC,gBAAgB,CAAC,aAAa,EAAE,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,UAAU,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;YACxE,CAAC;YAED,OAAO,GAAG,EAAE;gBACR,IAAI,QAAQ,EAAE,CAAC;oBACX,OAAO,CAAC,mBAAmB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;gBACzD,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;oBACpD,OAAO,CAAC,mBAAmB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;gBAC1D,CAAC;YACL,CAAC,CAAC;QACN,CAAC;QAED,OAAO,cAAI,CAAC;IAChB,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;IAE9C,OAAO;QACH,QAAQ;QACR,QAAQ;QACR,UAAU;KACb,CAAC;AACN,CAAC","sourcesContent":["import * as React from 'react';\n\nimport noop from 'lodash/noop';\n\nimport {MobileContext} from '../context/mobileContext';\n\nexport default function useFocus(element?: HTMLElement) {\n const isMobile = React.useContext(MobileContext);\n\n const [hasFocus, setHasFocus] = React.useState(false);\n const setFocus = React.useCallback(() => setHasFocus(true), []);\n const unsetFocus = React.useCallback(() => setHasFocus(false), []);\n\n React.useEffect(() => {\n if (element) {\n if (isMobile) {\n element.addEventListener('pointerdown', setFocus, {passive: true});\n } else {\n element.addEventListener('mouseenter', setFocus, {passive: true});\n element.addEventListener('mouseleave', unsetFocus, {passive: true});\n }\n\n return () => {\n if (isMobile) {\n element.removeEventListener('pointerdown', setFocus);\n } else {\n element.removeEventListener('mouseenter', setFocus);\n element.removeEventListener('mouseleave', unsetFocus);\n }\n };\n }\n\n return noop;\n }, [element, isMobile, setFocus, unsetFocus]);\n\n return {\n hasFocus,\n setFocus,\n unsetFocus,\n };\n}\n"]}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const React = tslib_1.__importStar(require("react"));
5
- const debounce_1 = tslib_1.__importDefault(require("lodash/debounce"));
5
+ const debounce_1 = tslib_1.__importDefault(require("lodash/debounce.js"));
6
6
  const DEFAULT_RECALCULATE_ON_RESIZE_DELAY = 1000;
7
7
  const DEFAULT_OPTIONS = {
8
8
  recalculateOnResizeDelay: DEFAULT_RECALCULATE_ON_RESIZE_DELAY,
@@ -1 +1 @@
1
- {"version":3,"file":"useHeightCalculator.js","sourceRoot":"../../../src","sources":["hooks/useHeightCalculator.ts"],"names":[],"mappings":";;;AAAA,qDAA+B;AAE/B,uEAAuC;AAMvC,MAAM,mCAAmC,GAAG,IAAI,CAAC;AACjD,MAAM,eAAe,GAAG;IACpB,wBAAwB,EAAE,mCAAmC;CAChE,CAAC;AAEF,MAAM,mBAAmB,GAGC,CAAC,YAAY,EAAE,OAAO,GAAG,eAAe,EAAE,EAAE;IAClE,MAAM,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAClE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAE5F,MAAM,wBAAwB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACpD,IAAI,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,YAAY,KAAK,eAAe;YAC7E,kBAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAExD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,YAAY,GAAG,IAAA,kBAAQ,EAAC,wBAAwB,EAAE,wBAAwB,CAAC,CAAC;QAElF,YAAY,EAAE,CAAC;QAEf,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QACjE,OAAO,GAAG,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEzD,OAAO,eAAe,CAAC;AAC3B,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport debounce from 'lodash/debounce';\n\ntype HeightCalculatorOptions = {\n recalculateOnResizeDelay: number;\n};\n\nconst DEFAULT_RECALCULATE_ON_RESIZE_DELAY = 1000;\nconst DEFAULT_OPTIONS = {\n recalculateOnResizeDelay: DEFAULT_RECALCULATE_ON_RESIZE_DELAY,\n};\n\nconst useHeightCalculator: (\n containerRef: React.RefObject<HTMLElement>,\n options?: HeightCalculatorOptions,\n) => number | undefined = (containerRef, options = DEFAULT_OPTIONS) => {\n const recalculateOnResizeDelay = options.recalculateOnResizeDelay;\n const [containerHeight, setContainerHeight] = React.useState<number | undefined>(undefined);\n\n const calculateContainerHeight = React.useCallback(() => {\n if (containerRef.current && containerRef.current.offsetHeight !== containerHeight)\n setContainerHeight(containerRef.current.offsetHeight);\n }, [containerRef, containerHeight, setContainerHeight]);\n\n React.useEffect(() => {\n const handleResize = debounce(calculateContainerHeight, recalculateOnResizeDelay);\n\n handleResize();\n\n window.addEventListener('resize', handleResize, {passive: true});\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, [calculateContainerHeight, recalculateOnResizeDelay]);\n\n return containerHeight;\n};\n\nexport default useHeightCalculator;\n"]}
1
+ {"version":3,"file":"useHeightCalculator.js","sourceRoot":"../../../src","sources":["hooks/useHeightCalculator.ts"],"names":[],"mappings":";;;AAAA,qDAA+B;AAE/B,0EAAuC;AAMvC,MAAM,mCAAmC,GAAG,IAAI,CAAC;AACjD,MAAM,eAAe,GAAG;IACpB,wBAAwB,EAAE,mCAAmC;CAChE,CAAC;AAEF,MAAM,mBAAmB,GAGC,CAAC,YAAY,EAAE,OAAO,GAAG,eAAe,EAAE,EAAE;IAClE,MAAM,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAClE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAE5F,MAAM,wBAAwB,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACpD,IAAI,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,YAAY,KAAK,eAAe;YAC7E,kBAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAExD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,YAAY,GAAG,IAAA,kBAAQ,EAAC,wBAAwB,EAAE,wBAAwB,CAAC,CAAC;QAElF,YAAY,EAAE,CAAC;QAEf,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QACjE,OAAO,GAAG,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEzD,OAAO,eAAe,CAAC;AAC3B,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport debounce from 'lodash/debounce';\n\ntype HeightCalculatorOptions = {\n recalculateOnResizeDelay: number;\n};\n\nconst DEFAULT_RECALCULATE_ON_RESIZE_DELAY = 1000;\nconst DEFAULT_OPTIONS = {\n recalculateOnResizeDelay: DEFAULT_RECALCULATE_ON_RESIZE_DELAY,\n};\n\nconst useHeightCalculator: (\n containerRef: React.RefObject<HTMLElement>,\n options?: HeightCalculatorOptions,\n) => number | undefined = (containerRef, options = DEFAULT_OPTIONS) => {\n const recalculateOnResizeDelay = options.recalculateOnResizeDelay;\n const [containerHeight, setContainerHeight] = React.useState<number | undefined>(undefined);\n\n const calculateContainerHeight = React.useCallback(() => {\n if (containerRef.current && containerRef.current.offsetHeight !== containerHeight)\n setContainerHeight(containerRef.current.offsetHeight);\n }, [containerRef, containerHeight, setContainerHeight]);\n\n React.useEffect(() => {\n const handleResize = debounce(calculateContainerHeight, recalculateOnResizeDelay);\n\n handleResize();\n\n window.addEventListener('resize', handleResize, {passive: true});\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, [calculateContainerHeight, recalculateOnResizeDelay]);\n\n return containerHeight;\n};\n\nexport default useHeightCalculator;\n"]}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = useWindowBreakpoint;
4
4
  const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
- const debounce_1 = tslib_1.__importDefault(require("lodash/debounce"));
6
+ const debounce_1 = tslib_1.__importDefault(require("lodash/debounce.js"));
7
7
  const constants_1 = require("../constants.js");
8
8
  function calculate(windowWidth) {
9
9
  const breakpointsSorted = Object.values(constants_1.BREAKPOINTS).sort((b1, b2) => b1 - b2);
@@ -1 +1 @@
1
- {"version":3,"file":"useWindowBreakpoint.js","sourceRoot":"../../../src","sources":["hooks/useWindowBreakpoint.ts"],"names":[],"mappings":";;AAsBA,sCAkBC;;AAxCD,qDAA+B;AAE/B,uEAAuC;AAEvC,+CAAyC;AAEzC,SAAS,SAAS,CAAC,WAAmB;IAClC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,uBAAW,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAE/E,IAAI,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAElC,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QACzC,IAAI,WAAW,IAAI,UAAU,EAAE,CAAC;YAC5B,MAAM,GAAG,UAAU,CAAC;QACxB,CAAC;aAAM,CAAC;YACJ,OAAO,MAAM,CAAC;QAClB,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAwB,mBAAmB;IACvC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,uBAAW,CAAC,EAAE,CAAC,CAAC;IAEnE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAE5C,MAAM,MAAM,GAAG,IAAA,kBAAQ,EAAC,GAAG,EAAE;YACzB,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAChD,CAAC,EAAE,GAAG,CAAC,CAAC;QAER,MAAM,EAAE,CAAC;QAET,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QAE3D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,UAAU,CAAC;AACtB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport debounce from 'lodash/debounce';\n\nimport {BREAKPOINTS} from '../constants';\n\nfunction calculate(windowWidth: number) {\n const breakpointsSorted = Object.values(BREAKPOINTS).sort((b1, b2) => b1 - b2);\n\n let result = breakpointsSorted[0];\n\n for (const breakpoint of breakpointsSorted) {\n if (windowWidth >= breakpoint) {\n result = breakpoint;\n } else {\n return result;\n }\n }\n\n return result;\n}\n\nexport default function useWindowBreakpoint() {\n const [breakpoint, setBreakpoint] = React.useState(BREAKPOINTS.sm);\n\n React.useEffect(() => {\n setBreakpoint(calculate(window.innerWidth));\n\n const detect = debounce(() => {\n setBreakpoint(calculate(window.innerWidth));\n }, 100);\n\n detect();\n\n window.addEventListener('resize', detect, {passive: true});\n\n return () => window.removeEventListener('resize', detect);\n }, []);\n\n return breakpoint;\n}\n"]}
1
+ {"version":3,"file":"useWindowBreakpoint.js","sourceRoot":"../../../src","sources":["hooks/useWindowBreakpoint.ts"],"names":[],"mappings":";;AAsBA,sCAkBC;;AAxCD,qDAA+B;AAE/B,0EAAuC;AAEvC,+CAAyC;AAEzC,SAAS,SAAS,CAAC,WAAmB;IAClC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,uBAAW,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAE/E,IAAI,MAAM,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAElC,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QACzC,IAAI,WAAW,IAAI,UAAU,EAAE,CAAC;YAC5B,MAAM,GAAG,UAAU,CAAC;QACxB,CAAC;aAAM,CAAC;YACJ,OAAO,MAAM,CAAC;QAClB,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAwB,mBAAmB;IACvC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,uBAAW,CAAC,EAAE,CAAC,CAAC;IAEnE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAE5C,MAAM,MAAM,GAAG,IAAA,kBAAQ,EAAC,GAAG,EAAE;YACzB,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QAChD,CAAC,EAAE,GAAG,CAAC,CAAC;QAER,MAAM,EAAE,CAAC;QAET,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QAE3D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,UAAU,CAAC;AACtB,CAAC","sourcesContent":["import * as React from 'react';\n\nimport debounce from 'lodash/debounce';\n\nimport {BREAKPOINTS} from '../constants';\n\nfunction calculate(windowWidth: number) {\n const breakpointsSorted = Object.values(BREAKPOINTS).sort((b1, b2) => b1 - b2);\n\n let result = breakpointsSorted[0];\n\n for (const breakpoint of breakpointsSorted) {\n if (windowWidth >= breakpoint) {\n result = breakpoint;\n } else {\n return result;\n }\n }\n\n return result;\n}\n\nexport default function useWindowBreakpoint() {\n const [breakpoint, setBreakpoint] = React.useState(BREAKPOINTS.sm);\n\n React.useEffect(() => {\n setBreakpoint(calculate(window.innerWidth));\n\n const detect = debounce(() => {\n setBreakpoint(calculate(window.innerWidth));\n }, 100);\n\n detect();\n\n window.addEventListener('resize', detect, {passive: true});\n\n return () => window.removeEventListener('resize', detect);\n }, []);\n\n return breakpoint;\n}\n"]}
@@ -109,7 +109,7 @@ export interface HeaderBlockBackground extends Partial<HeaderBackgroundProps>, P
109
109
  export type ThemedHeaderBlockBackground = ThemeSupporting<HeaderBlockBackground>;
110
110
  export interface HeaderBlockProps {
111
111
  title: string;
112
- overtitle?: string;
112
+ overtitle?: string | JSX.Element;
113
113
  description?: string;
114
114
  buttons?: Pick<ButtonProps, 'url' | 'text' | 'theme' | 'primary' | 'size' | 'extraProps'>[];
115
115
  width?: HeaderWidth;
@@ -123,6 +123,7 @@ export interface HeaderBlockProps {
123
123
  image?: ThemedImage;
124
124
  video?: ThemedMediaVideoProps;
125
125
  mediaView?: MediaView;
126
+ centered?: boolean;
126
127
  background?: ThemedHeaderBlockBackground;
127
128
  theme?: 'light' | 'dark';
128
129
  verticalOffset?: '0' | 's' | 'm' | 'l' | 'xl';
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.js","sourceRoot":"../../../../src","sources":["models/constructor-items/blocks.ts"],"names":[],"mappings":";;;AA2CA,IAAY,SAsBX;AAtBD,WAAY,SAAS;IACjB,wDAA2C,CAAA;IAC3C,8DAAiD,CAAA;IACjD,yCAA4B,CAAA;IAC5B,+CAAkC,CAAA;IAClC,yCAA4B,CAAA;IAC5B,+CAAkC,CAAA;IAClC,uCAA0B,CAAA;IAC1B,qCAAwB,CAAA;IACxB,uCAA0B,CAAA;IAC1B,qCAAwB,CAAA;IACxB,sDAAyC,CAAA;IACzC,yCAA4B,CAAA;IAC5B,uCAA0B,CAAA;IAC1B,kDAAqC,CAAA;IACrC,wDAA2C,CAAA;IAC3C,uCAA0B,CAAA;IAC1B,mCAAsB,CAAA;IACtB,yCAA4B,CAAA;IAC5B,qCAAwB,CAAA;IACxB,WAAW;IACX,gDAAmC,CAAA;AACvC,CAAC,EAtBW,SAAS,yBAAT,SAAS,QAsBpB;AAEY,QAAA,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACtC,QAAA,gBAAgB,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;AAgCrF,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC7B,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;AACb,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC;AAED,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,sCAAwB,CAAA;IACxB,wCAA0B,CAAA;AAC9B,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AA8SD,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC5B,iCAAS,CAAA;IACT,6CAAqB,CAAA;IACrB,2CAAmB,CAAA;IACnB,6CAAqB,CAAA;IACrB,6CAAqB,CAAA;AACzB,CAAC,EANW,oBAAoB,oCAApB,oBAAoB,QAM/B;AAOD,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;AACvB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC1B,kDAA4B,CAAA;IAC5B,kDAA4B,CAAA;IAC5B,uCAAiB,CAAA;AACrB,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B","sourcesContent":["import * as React from 'react';\n\nimport {ButtonSize} from '@gravity-ui/uikit';\n\nimport {GridColumnSize, GridColumnSizesType, IndentValue} from '../../grid/types';\nimport {ThemeSupporting} from '../../utils';\nimport {AnalyticsEventsBase} from '../common';\n\nimport {\n AnchorProps,\n Animatable,\n BackgroundImageProps,\n ButtonProps,\n CardBorder,\n ContentSize,\n ContentTextSize,\n ContentTheme,\n FileLinkProps,\n HeaderBreadCrumbsProps,\n HeaderImageSize,\n HeaderOffset,\n HeaderWidth,\n ImageDeviceProps,\n ImageProps,\n Justify,\n LegendTableMarkerType,\n LinkProps,\n MapProps,\n MediaDirection,\n MediaProps,\n MediaView,\n TextSize,\n TextTheme,\n ThemedImage,\n ThemedMediaProps,\n ThemedMediaVideoProps,\n TitleItemBaseProps,\n TitleItemProps,\n WithBorder,\n YandexFormProps,\n} from './common';\nimport {BannerCardProps, HubspotFormProps, SubBlock, SubBlockModels} from './sub-blocks';\n\nexport enum BlockType {\n PromoFeaturesBlock = 'promo-features-block',\n ExtendedFeaturesBlock = 'extended-features-block',\n SliderBlock = 'slider-block',\n QuestionsBlock = 'questions-block',\n BannerBlock = 'banner-block',\n CompaniesBlock = 'companies-block',\n MediaBlock = 'media-block',\n InfoBlock = 'info-block',\n TableBlock = 'table-block',\n TabsBlock = 'tabs-block',\n HeaderSliderBlock = 'header-slider-block',\n HeaderBlock = 'header-block',\n IconsBlock = 'icons-block',\n CardLayoutBlock = 'card-layout-block',\n ContentLayoutBlock = 'content-layout-block',\n ShareBlock = 'share-block',\n MapBlock = 'map-block',\n FilterBlock = 'filter-block',\n FormBlock = 'form-block',\n // unstable\n SliderNewBlock = 'slider-new-block',\n}\n\nexport const BlockTypes = Object.values(BlockType);\nexport const HeaderBlockTypes = [BlockType.HeaderBlock, BlockType.HeaderSliderBlock];\n\nexport interface Childable {\n children?: SubBlock[];\n}\n\n//block props\nexport interface BlockBaseProps {\n anchor?: AnchorProps;\n visible?: GridColumnSize;\n /** @deprecated */\n resetPaddings?: boolean;\n indent?: {\n top?: IndentValue;\n bottom?: IndentValue;\n };\n qa?: string;\n}\n\nexport interface LoadableProps {\n source: string;\n /**\n * @deprecated Will be moved to params\n */\n serviceId?: number;\n params?: Record<string, string | number | boolean | object>;\n}\n\nexport interface LoadableChildren {\n loadable?: LoadableProps;\n}\n\nexport enum SliderBreakpointNames {\n Sm = 'sm',\n Md = 'md',\n Lg = 'lg',\n Xl = 'xl',\n}\n\nexport enum SliderType {\n MediaCard = 'media-card',\n HeaderCard = 'header-card',\n}\n\nexport type SliderBreakpointParams = Record<SliderBreakpointNames, number>;\nexport type SlidesToShow = Partial<SliderBreakpointParams> | number;\n\nexport interface SliderProps extends Childable, Animatable, LoadableChildren {\n dots?: boolean;\n arrows?: boolean;\n slidesToShow?: SlidesToShow;\n disclaimer?: {\n text: string;\n size?: TextSize;\n };\n title?: TitleItemBaseProps;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n adaptive?: boolean;\n}\n\nexport interface SliderNewProps extends Childable, Animatable, LoadableChildren {\n dots?: boolean;\n arrows?: boolean;\n slidesToShow?: SlidesToShow;\n disclaimer?: {\n text: string;\n size?: TextSize;\n };\n title?: TitleItemBaseProps;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n}\n\nexport interface HeaderSliderBlockProps extends Omit<SliderProps, 'title' | 'description'> {\n items: HeaderBlockProps[];\n}\n\ninterface HeaderBackgroundProps {\n /** @deprecated replaced by Media Props image */\n url?: string;\n /** @deprecated replaced by Media Props image */\n disableCompress?: boolean;\n}\n\nexport interface HeaderBlockBackground extends Partial<HeaderBackgroundProps>, Partial<MediaProps> {\n fullWidth?: boolean;\n fullWidthMedia?: boolean;\n}\n\nexport type ThemedHeaderBlockBackground = ThemeSupporting<HeaderBlockBackground>;\n\nexport interface HeaderBlockProps {\n title: string;\n overtitle?: string;\n description?: string;\n buttons?: Pick<ButtonProps, 'url' | 'text' | 'theme' | 'primary' | 'size' | 'extraProps'>[];\n width?: HeaderWidth;\n /** @deprecated imageSize now depends on width */\n imageSize?: HeaderImageSize;\n /**\n * @deprecated used only on the main page\n * TODO: delete after the possibility to remove padding-bottom in the block\n */\n offset?: HeaderOffset;\n image?: ThemedImage;\n video?: ThemedMediaVideoProps;\n mediaView?: MediaView;\n background?: ThemedHeaderBlockBackground;\n theme?: 'light' | 'dark';\n verticalOffset?: '0' | 's' | 'm' | 'l' | 'xl';\n breadcrumbs?: HeaderBreadCrumbsProps;\n status?: JSX.Element;\n renderTitle?: (title: string) => React.ReactNode;\n}\n\nexport interface ExtendedFeaturesItem\n extends Omit<ContentBlockProps, 'theme' | 'centered' | 'colSizes' | 'size' | 'title'> {\n title: string;\n label?: string;\n icon?: ThemedImage;\n /** @deprecated **/\n link?: LinkProps;\n}\n\nexport interface ExtendedFeaturesProps extends Animatable {\n items: ExtendedFeaturesItem[];\n title?: TitleItemProps | string;\n description?: string;\n colSizes?: GridColumnSizesType;\n}\n\nexport interface PromoFeaturesItem {\n title: string;\n text: string;\n theme?: 'accent' | 'accent-light' | 'primary';\n media?: ThemeSupporting<MediaProps>;\n}\n\nexport interface PromoFeaturesProps extends Animatable {\n items: PromoFeaturesItem[];\n title?: TitleItemProps | string;\n description?: string;\n theme?: 'grey' | 'default';\n}\n\nexport interface QuestionItem {\n title: string;\n text: string;\n listStyle?: 'dash' | 'disk';\n link?: LinkProps;\n}\n\nexport interface QuestionsProps\n extends Omit<ContentBlockProps, 'colSizes' | 'centered' | 'size' | 'theme'> {\n items: QuestionItem[];\n}\n\nexport interface QuestionBlockItemProps extends QuestionItem {\n isOpened: boolean;\n onClick: () => void;\n}\n\nexport interface BannerBlockProps extends BannerCardProps, Animatable {}\n\nexport interface CompaniesBlockProps extends Animatable {\n title: string;\n description?: string;\n images: ThemeSupporting<ImageDeviceProps>;\n}\n\nexport interface MediaBaseBlockProps extends Animatable, MediaContentProps {\n direction?: MediaDirection;\n mobileDirection?: MediaDirection;\n largeMedia?: boolean;\n mediaOnly?: boolean;\n mediaOnlyColSizes?: GridColumnSizesType;\n}\n\nexport interface MediaContentProps\n extends Omit<ContentBlockProps, 'colSizes' | 'text' | 'title' | 'theme' | 'centered'> {\n title: string;\n description?: string;\n /** @deprecated Use array of buttons from ContentBlockProps instead**/\n button?: ButtonProps;\n}\n\nexport interface MediaBlockProps extends MediaBaseBlockProps, WithBorder {\n media: ThemeSupporting<MediaProps>;\n}\n\nexport interface MapBlockProps extends MediaBaseBlockProps, WithBorder {\n map: MapProps;\n}\n\nexport interface InfoBlockProps {\n theme?: TextTheme;\n backgroundColor?: ThemeSupporting<string>;\n /** @deprecated **/\n title?: string;\n /** @deprecated **/\n buttons?: Pick<ButtonProps, 'url' | 'text' | 'theme'>[];\n /** @deprecated **/\n sectionsTitle?: string;\n /** @deprecated **/\n links?: Pick<LinkProps, 'text' | 'url'>[];\n leftContent?: Omit<ContentBlockProps, 'colSizes' | 'theme' | 'size'>;\n rightContent?: Omit<ContentBlockProps, 'colSizes' | 'theme' | 'size'>;\n}\n\nexport interface TableProps {\n content: string[][];\n legend?: string[];\n hideLegend?: boolean;\n justify?: Justify[];\n marker?: LegendTableMarkerType;\n /**\n * Only as accessible name, not displayed explicitly\n */\n caption?: string;\n}\n\nexport interface TableBlockProps {\n title: string;\n table: TableProps;\n}\n\nexport interface TabsBlockItem\n extends Omit<ContentBlockProps, 'size' | 'colSizes' | 'centered' | 'theme'>,\n WithBorder {\n tabName: string;\n /**\n * @deprecated Use array links from ContentBlockProps instead\n */\n link?: LinkProps;\n image?: ThemedImage;\n caption?: string;\n media?: ThemedMediaProps;\n}\n\nexport interface TabsBlockProps extends Animatable {\n title?: TitleItemProps | string;\n description?: string;\n tabsColSizes?: GridColumnSizesType;\n centered?: boolean;\n direction?: MediaDirection;\n items: TabsBlockItem[];\n contentSize?: ContentSize;\n}\n\nexport interface CardLayoutBlockProps extends Childable, Animatable, LoadableChildren {\n title?: TitleItemProps | string;\n titleClassName?: string;\n description?: string;\n colSizes?: GridColumnSizesType;\n background?: ThemeSupporting<\n BackgroundImageProps & {\n border?: CardBorder;\n }\n >;\n}\n\nexport type FilterTag = {\n id: string;\n label: string;\n};\n\nexport type FilterItem = {\n tags: string[];\n card: SubBlockModels;\n};\n\nexport interface FilterBlockProps extends Animatable, LoadableChildren {\n title?: TitleItemProps | string;\n description?: string;\n tags: FilterTag[];\n items: FilterItem[];\n tagButtonSize?: ButtonSize;\n allTag?: boolean | string;\n colSizes?: GridColumnSizesType;\n centered?: boolean;\n}\n\nexport interface IconsBlockItemProps extends AnalyticsEventsBase {\n url: string;\n text: string;\n src: ThemeSupporting<string>;\n}\n\nexport interface IconsBlockProps {\n title?: string;\n description?: string;\n size?: 's' | 'm' | 'l';\n items: IconsBlockItemProps[];\n colSizes?: GridColumnSizesType;\n}\n\ninterface ContentLayoutBlockParams {\n size?: ContentSize;\n background?: ThemeSupporting<BackgroundImageProps>;\n centered?: boolean;\n theme?: ContentTheme;\n textWidth?: ContentTextSize;\n}\n\nexport interface ContentLayoutBlockProps extends ContentLayoutBlockParams {\n textContent: ContentBlockProps;\n fileContent?: FileLinkProps[];\n}\n\nexport type SVGIcon = React.FC<React.SVGProps<SVGSVGElement>>;\n\nexport interface ContentItemProps {\n title?: string;\n text?: string;\n icon: ThemeSupporting<ImageProps | SVGIcon>;\n}\n\nexport interface ContentListProps {\n list: ContentItemProps[];\n size: ContentSize;\n theme?: ContentTheme;\n}\n\nexport interface ContentBlockProps {\n title?: TitleItemBaseProps | string;\n titleId?: string;\n text?: string;\n textId?: string;\n additionalInfo?: string;\n links?: LinkProps[];\n buttons?: ButtonProps[];\n size?: ContentSize;\n colSizes?: GridColumnSizesType;\n centered?: boolean;\n theme?: ContentTheme;\n list?: ContentItemProps[];\n controlPosition?: 'default' | 'bottom';\n}\n\nexport enum PCShareSocialNetwork {\n Vk = 'vk',\n Telegram = 'telegram',\n Twitter = 'twitter',\n Facebook = 'facebook',\n LinkedIn = 'linkedin',\n}\n\nexport interface ShareBlockProps {\n items: PCShareSocialNetwork[];\n title?: string;\n}\n\nexport enum FormBlockDataTypes {\n YANDEX = 'yandex',\n HUBSPOT = 'hubspot',\n}\n\nexport enum FormBlockDirection {\n FormContent = 'form-content',\n ContentForm = 'content-form',\n Center = 'center',\n}\n\nexport interface FormBlockYandexData {\n yandex: ThemeSupporting<YandexFormProps>;\n}\n\nexport interface FormBlockHubspotData {\n hubspot: ThemeSupporting<HubspotFormProps>;\n}\n\nexport type FormBlockData = FormBlockYandexData | FormBlockHubspotData;\n\nexport interface FormBlockProps {\n formData: FormBlockData;\n title?: string;\n textContent?: Omit<ContentBlockProps, 'centered' | 'colSizes' | 'size'>;\n direction?: FormBlockDirection;\n background?: ThemeSupporting<BackgroundImageProps>;\n}\n\n//block models\nexport type HeaderBlockModel = {\n type: BlockType.HeaderBlock;\n} & HeaderBlockProps;\n\nexport type SliderBlockModel = {\n type: BlockType.SliderBlock;\n} & SliderProps;\n\nexport type ExtendedFeaturesBlockModel = {\n type: BlockType.ExtendedFeaturesBlock;\n} & ExtendedFeaturesProps;\n\nexport type PromoFeaturesBlockModel = {\n type: BlockType.PromoFeaturesBlock;\n} & PromoFeaturesProps;\n\nexport type QuestionsBlockModel = {\n type: BlockType.QuestionsBlock;\n} & QuestionsProps;\n\nexport type BannerBlockModel = {\n type: BlockType.BannerBlock;\n} & BannerBlockProps;\n\nexport type CompaniesBlockModel = {\n type: BlockType.CompaniesBlock;\n} & CompaniesBlockProps;\n\nexport type MediaBlockModel = {\n type: BlockType.MediaBlock;\n} & MediaBlockProps;\n\nexport type MapBlockModel = {\n type: BlockType.MapBlock;\n} & MapBlockProps;\n\nexport type InfoBlockModel = {\n type: BlockType.InfoBlock;\n} & InfoBlockProps;\n\nexport type TableBlockModel = {\n type: BlockType.TableBlock;\n} & TableBlockProps;\n\nexport type TabsBlockModel = {\n type: BlockType.TabsBlock;\n} & TabsBlockProps;\n\nexport type CardLayoutBlockModel = {\n type: BlockType.CardLayoutBlock;\n} & CardLayoutBlockProps;\n\nexport type FilterBlockModel = {\n type: BlockType.FilterBlock;\n} & FilterBlockProps;\n\nexport type IconsBlockModel = {\n type: BlockType.IconsBlock;\n} & IconsBlockProps;\n\nexport type HeaderSliderBlockModel = {\n type: BlockType.HeaderSliderBlock;\n} & HeaderSliderBlockProps;\n\nexport type ContentLayoutBlockModel = {\n type: BlockType.ContentLayoutBlock;\n} & ContentLayoutBlockProps;\n\nexport type ShareBLockModel = {\n type: BlockType.ShareBlock;\n} & ShareBlockProps;\n\nexport type FormBlockModel = {\n type: BlockType.FormBlock;\n} & FormBlockProps;\n\n// unstable block models\nexport type SliderNewBlockModel = {\n type: BlockType.SliderNewBlock;\n} & SliderNewProps;\n\ntype BlockModels =\n | SliderBlockModel\n | ExtendedFeaturesBlockModel\n | PromoFeaturesBlockModel\n | QuestionsBlockModel\n | BannerBlockModel\n | CompaniesBlockModel\n | MediaBlockModel\n | MapBlockModel\n | InfoBlockModel\n | TableBlockModel\n | TabsBlockModel\n | HeaderBlockModel\n | IconsBlockModel\n | HeaderSliderBlockModel\n | CardLayoutBlockModel\n | ContentLayoutBlockModel\n | ShareBLockModel\n | FilterBlockModel\n | FormBlockModel;\n\ntype UnstableBlockModels = SliderNewBlockModel;\n\nexport type Block = (BlockModels | UnstableBlockModels) & BlockBaseProps;\n"]}
1
+ {"version":3,"file":"blocks.js","sourceRoot":"../../../../src","sources":["models/constructor-items/blocks.ts"],"names":[],"mappings":";;;AA2CA,IAAY,SAsBX;AAtBD,WAAY,SAAS;IACjB,wDAA2C,CAAA;IAC3C,8DAAiD,CAAA;IACjD,yCAA4B,CAAA;IAC5B,+CAAkC,CAAA;IAClC,yCAA4B,CAAA;IAC5B,+CAAkC,CAAA;IAClC,uCAA0B,CAAA;IAC1B,qCAAwB,CAAA;IACxB,uCAA0B,CAAA;IAC1B,qCAAwB,CAAA;IACxB,sDAAyC,CAAA;IACzC,yCAA4B,CAAA;IAC5B,uCAA0B,CAAA;IAC1B,kDAAqC,CAAA;IACrC,wDAA2C,CAAA;IAC3C,uCAA0B,CAAA;IAC1B,mCAAsB,CAAA;IACtB,yCAA4B,CAAA;IAC5B,qCAAwB,CAAA;IACxB,WAAW;IACX,gDAAmC,CAAA;AACvC,CAAC,EAtBW,SAAS,yBAAT,SAAS,QAsBpB;AAEY,QAAA,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACtC,QAAA,gBAAgB,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;AAgCrF,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC7B,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;IACT,kCAAS,CAAA;AACb,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC;AAED,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,sCAAwB,CAAA;IACxB,wCAA0B,CAAA;AAC9B,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AA+SD,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC5B,iCAAS,CAAA;IACT,6CAAqB,CAAA;IACrB,2CAAmB,CAAA;IACnB,6CAAqB,CAAA;IACrB,6CAAqB,CAAA;AACzB,CAAC,EANW,oBAAoB,oCAApB,oBAAoB,QAM/B;AAOD,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;AACvB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC1B,kDAA4B,CAAA;IAC5B,kDAA4B,CAAA;IAC5B,uCAAiB,CAAA;AACrB,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B","sourcesContent":["import * as React from 'react';\n\nimport {ButtonSize} from '@gravity-ui/uikit';\n\nimport {GridColumnSize, GridColumnSizesType, IndentValue} from '../../grid/types';\nimport {ThemeSupporting} from '../../utils';\nimport {AnalyticsEventsBase} from '../common';\n\nimport {\n AnchorProps,\n Animatable,\n BackgroundImageProps,\n ButtonProps,\n CardBorder,\n ContentSize,\n ContentTextSize,\n ContentTheme,\n FileLinkProps,\n HeaderBreadCrumbsProps,\n HeaderImageSize,\n HeaderOffset,\n HeaderWidth,\n ImageDeviceProps,\n ImageProps,\n Justify,\n LegendTableMarkerType,\n LinkProps,\n MapProps,\n MediaDirection,\n MediaProps,\n MediaView,\n TextSize,\n TextTheme,\n ThemedImage,\n ThemedMediaProps,\n ThemedMediaVideoProps,\n TitleItemBaseProps,\n TitleItemProps,\n WithBorder,\n YandexFormProps,\n} from './common';\nimport {BannerCardProps, HubspotFormProps, SubBlock, SubBlockModels} from './sub-blocks';\n\nexport enum BlockType {\n PromoFeaturesBlock = 'promo-features-block',\n ExtendedFeaturesBlock = 'extended-features-block',\n SliderBlock = 'slider-block',\n QuestionsBlock = 'questions-block',\n BannerBlock = 'banner-block',\n CompaniesBlock = 'companies-block',\n MediaBlock = 'media-block',\n InfoBlock = 'info-block',\n TableBlock = 'table-block',\n TabsBlock = 'tabs-block',\n HeaderSliderBlock = 'header-slider-block',\n HeaderBlock = 'header-block',\n IconsBlock = 'icons-block',\n CardLayoutBlock = 'card-layout-block',\n ContentLayoutBlock = 'content-layout-block',\n ShareBlock = 'share-block',\n MapBlock = 'map-block',\n FilterBlock = 'filter-block',\n FormBlock = 'form-block',\n // unstable\n SliderNewBlock = 'slider-new-block',\n}\n\nexport const BlockTypes = Object.values(BlockType);\nexport const HeaderBlockTypes = [BlockType.HeaderBlock, BlockType.HeaderSliderBlock];\n\nexport interface Childable {\n children?: SubBlock[];\n}\n\n//block props\nexport interface BlockBaseProps {\n anchor?: AnchorProps;\n visible?: GridColumnSize;\n /** @deprecated */\n resetPaddings?: boolean;\n indent?: {\n top?: IndentValue;\n bottom?: IndentValue;\n };\n qa?: string;\n}\n\nexport interface LoadableProps {\n source: string;\n /**\n * @deprecated Will be moved to params\n */\n serviceId?: number;\n params?: Record<string, string | number | boolean | object>;\n}\n\nexport interface LoadableChildren {\n loadable?: LoadableProps;\n}\n\nexport enum SliderBreakpointNames {\n Sm = 'sm',\n Md = 'md',\n Lg = 'lg',\n Xl = 'xl',\n}\n\nexport enum SliderType {\n MediaCard = 'media-card',\n HeaderCard = 'header-card',\n}\n\nexport type SliderBreakpointParams = Record<SliderBreakpointNames, number>;\nexport type SlidesToShow = Partial<SliderBreakpointParams> | number;\n\nexport interface SliderProps extends Childable, Animatable, LoadableChildren {\n dots?: boolean;\n arrows?: boolean;\n slidesToShow?: SlidesToShow;\n disclaimer?: {\n text: string;\n size?: TextSize;\n };\n title?: TitleItemBaseProps;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n adaptive?: boolean;\n}\n\nexport interface SliderNewProps extends Childable, Animatable, LoadableChildren {\n dots?: boolean;\n arrows?: boolean;\n slidesToShow?: SlidesToShow;\n disclaimer?: {\n text: string;\n size?: TextSize;\n };\n title?: TitleItemBaseProps;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n}\n\nexport interface HeaderSliderBlockProps extends Omit<SliderProps, 'title' | 'description'> {\n items: HeaderBlockProps[];\n}\n\ninterface HeaderBackgroundProps {\n /** @deprecated replaced by Media Props image */\n url?: string;\n /** @deprecated replaced by Media Props image */\n disableCompress?: boolean;\n}\n\nexport interface HeaderBlockBackground extends Partial<HeaderBackgroundProps>, Partial<MediaProps> {\n fullWidth?: boolean;\n fullWidthMedia?: boolean;\n}\n\nexport type ThemedHeaderBlockBackground = ThemeSupporting<HeaderBlockBackground>;\n\nexport interface HeaderBlockProps {\n title: string;\n overtitle?: string | JSX.Element;\n description?: string;\n buttons?: Pick<ButtonProps, 'url' | 'text' | 'theme' | 'primary' | 'size' | 'extraProps'>[];\n width?: HeaderWidth;\n /** @deprecated imageSize now depends on width */\n imageSize?: HeaderImageSize;\n /**\n * @deprecated used only on the main page\n * TODO: delete after the possibility to remove padding-bottom in the block\n */\n offset?: HeaderOffset;\n image?: ThemedImage;\n video?: ThemedMediaVideoProps;\n mediaView?: MediaView;\n centered?: boolean;\n background?: ThemedHeaderBlockBackground;\n theme?: 'light' | 'dark';\n verticalOffset?: '0' | 's' | 'm' | 'l' | 'xl';\n breadcrumbs?: HeaderBreadCrumbsProps;\n status?: JSX.Element;\n renderTitle?: (title: string) => React.ReactNode;\n}\n\nexport interface ExtendedFeaturesItem\n extends Omit<ContentBlockProps, 'theme' | 'centered' | 'colSizes' | 'size' | 'title'> {\n title: string;\n label?: string;\n icon?: ThemedImage;\n /** @deprecated **/\n link?: LinkProps;\n}\n\nexport interface ExtendedFeaturesProps extends Animatable {\n items: ExtendedFeaturesItem[];\n title?: TitleItemProps | string;\n description?: string;\n colSizes?: GridColumnSizesType;\n}\n\nexport interface PromoFeaturesItem {\n title: string;\n text: string;\n theme?: 'accent' | 'accent-light' | 'primary';\n media?: ThemeSupporting<MediaProps>;\n}\n\nexport interface PromoFeaturesProps extends Animatable {\n items: PromoFeaturesItem[];\n title?: TitleItemProps | string;\n description?: string;\n theme?: 'grey' | 'default';\n}\n\nexport interface QuestionItem {\n title: string;\n text: string;\n listStyle?: 'dash' | 'disk';\n link?: LinkProps;\n}\n\nexport interface QuestionsProps\n extends Omit<ContentBlockProps, 'colSizes' | 'centered' | 'size' | 'theme'> {\n items: QuestionItem[];\n}\n\nexport interface QuestionBlockItemProps extends QuestionItem {\n isOpened: boolean;\n onClick: () => void;\n}\n\nexport interface BannerBlockProps extends BannerCardProps, Animatable {}\n\nexport interface CompaniesBlockProps extends Animatable {\n title: string;\n description?: string;\n images: ThemeSupporting<ImageDeviceProps>;\n}\n\nexport interface MediaBaseBlockProps extends Animatable, MediaContentProps {\n direction?: MediaDirection;\n mobileDirection?: MediaDirection;\n largeMedia?: boolean;\n mediaOnly?: boolean;\n mediaOnlyColSizes?: GridColumnSizesType;\n}\n\nexport interface MediaContentProps\n extends Omit<ContentBlockProps, 'colSizes' | 'text' | 'title' | 'theme' | 'centered'> {\n title: string;\n description?: string;\n /** @deprecated Use array of buttons from ContentBlockProps instead**/\n button?: ButtonProps;\n}\n\nexport interface MediaBlockProps extends MediaBaseBlockProps, WithBorder {\n media: ThemeSupporting<MediaProps>;\n}\n\nexport interface MapBlockProps extends MediaBaseBlockProps, WithBorder {\n map: MapProps;\n}\n\nexport interface InfoBlockProps {\n theme?: TextTheme;\n backgroundColor?: ThemeSupporting<string>;\n /** @deprecated **/\n title?: string;\n /** @deprecated **/\n buttons?: Pick<ButtonProps, 'url' | 'text' | 'theme'>[];\n /** @deprecated **/\n sectionsTitle?: string;\n /** @deprecated **/\n links?: Pick<LinkProps, 'text' | 'url'>[];\n leftContent?: Omit<ContentBlockProps, 'colSizes' | 'theme' | 'size'>;\n rightContent?: Omit<ContentBlockProps, 'colSizes' | 'theme' | 'size'>;\n}\n\nexport interface TableProps {\n content: string[][];\n legend?: string[];\n hideLegend?: boolean;\n justify?: Justify[];\n marker?: LegendTableMarkerType;\n /**\n * Only as accessible name, not displayed explicitly\n */\n caption?: string;\n}\n\nexport interface TableBlockProps {\n title: string;\n table: TableProps;\n}\n\nexport interface TabsBlockItem\n extends Omit<ContentBlockProps, 'size' | 'colSizes' | 'centered' | 'theme'>,\n WithBorder {\n tabName: string;\n /**\n * @deprecated Use array links from ContentBlockProps instead\n */\n link?: LinkProps;\n image?: ThemedImage;\n caption?: string;\n media?: ThemedMediaProps;\n}\n\nexport interface TabsBlockProps extends Animatable {\n title?: TitleItemProps | string;\n description?: string;\n tabsColSizes?: GridColumnSizesType;\n centered?: boolean;\n direction?: MediaDirection;\n items: TabsBlockItem[];\n contentSize?: ContentSize;\n}\n\nexport interface CardLayoutBlockProps extends Childable, Animatable, LoadableChildren {\n title?: TitleItemProps | string;\n titleClassName?: string;\n description?: string;\n colSizes?: GridColumnSizesType;\n background?: ThemeSupporting<\n BackgroundImageProps & {\n border?: CardBorder;\n }\n >;\n}\n\nexport type FilterTag = {\n id: string;\n label: string;\n};\n\nexport type FilterItem = {\n tags: string[];\n card: SubBlockModels;\n};\n\nexport interface FilterBlockProps extends Animatable, LoadableChildren {\n title?: TitleItemProps | string;\n description?: string;\n tags: FilterTag[];\n items: FilterItem[];\n tagButtonSize?: ButtonSize;\n allTag?: boolean | string;\n colSizes?: GridColumnSizesType;\n centered?: boolean;\n}\n\nexport interface IconsBlockItemProps extends AnalyticsEventsBase {\n url: string;\n text: string;\n src: ThemeSupporting<string>;\n}\n\nexport interface IconsBlockProps {\n title?: string;\n description?: string;\n size?: 's' | 'm' | 'l';\n items: IconsBlockItemProps[];\n colSizes?: GridColumnSizesType;\n}\n\ninterface ContentLayoutBlockParams {\n size?: ContentSize;\n background?: ThemeSupporting<BackgroundImageProps>;\n centered?: boolean;\n theme?: ContentTheme;\n textWidth?: ContentTextSize;\n}\n\nexport interface ContentLayoutBlockProps extends ContentLayoutBlockParams {\n textContent: ContentBlockProps;\n fileContent?: FileLinkProps[];\n}\n\nexport type SVGIcon = React.FC<React.SVGProps<SVGSVGElement>>;\n\nexport interface ContentItemProps {\n title?: string;\n text?: string;\n icon: ThemeSupporting<ImageProps | SVGIcon>;\n}\n\nexport interface ContentListProps {\n list: ContentItemProps[];\n size: ContentSize;\n theme?: ContentTheme;\n}\n\nexport interface ContentBlockProps {\n title?: TitleItemBaseProps | string;\n titleId?: string;\n text?: string;\n textId?: string;\n additionalInfo?: string;\n links?: LinkProps[];\n buttons?: ButtonProps[];\n size?: ContentSize;\n colSizes?: GridColumnSizesType;\n centered?: boolean;\n theme?: ContentTheme;\n list?: ContentItemProps[];\n controlPosition?: 'default' | 'bottom';\n}\n\nexport enum PCShareSocialNetwork {\n Vk = 'vk',\n Telegram = 'telegram',\n Twitter = 'twitter',\n Facebook = 'facebook',\n LinkedIn = 'linkedin',\n}\n\nexport interface ShareBlockProps {\n items: PCShareSocialNetwork[];\n title?: string;\n}\n\nexport enum FormBlockDataTypes {\n YANDEX = 'yandex',\n HUBSPOT = 'hubspot',\n}\n\nexport enum FormBlockDirection {\n FormContent = 'form-content',\n ContentForm = 'content-form',\n Center = 'center',\n}\n\nexport interface FormBlockYandexData {\n yandex: ThemeSupporting<YandexFormProps>;\n}\n\nexport interface FormBlockHubspotData {\n hubspot: ThemeSupporting<HubspotFormProps>;\n}\n\nexport type FormBlockData = FormBlockYandexData | FormBlockHubspotData;\n\nexport interface FormBlockProps {\n formData: FormBlockData;\n title?: string;\n textContent?: Omit<ContentBlockProps, 'centered' | 'colSizes' | 'size'>;\n direction?: FormBlockDirection;\n background?: ThemeSupporting<BackgroundImageProps>;\n}\n\n//block models\nexport type HeaderBlockModel = {\n type: BlockType.HeaderBlock;\n} & HeaderBlockProps;\n\nexport type SliderBlockModel = {\n type: BlockType.SliderBlock;\n} & SliderProps;\n\nexport type ExtendedFeaturesBlockModel = {\n type: BlockType.ExtendedFeaturesBlock;\n} & ExtendedFeaturesProps;\n\nexport type PromoFeaturesBlockModel = {\n type: BlockType.PromoFeaturesBlock;\n} & PromoFeaturesProps;\n\nexport type QuestionsBlockModel = {\n type: BlockType.QuestionsBlock;\n} & QuestionsProps;\n\nexport type BannerBlockModel = {\n type: BlockType.BannerBlock;\n} & BannerBlockProps;\n\nexport type CompaniesBlockModel = {\n type: BlockType.CompaniesBlock;\n} & CompaniesBlockProps;\n\nexport type MediaBlockModel = {\n type: BlockType.MediaBlock;\n} & MediaBlockProps;\n\nexport type MapBlockModel = {\n type: BlockType.MapBlock;\n} & MapBlockProps;\n\nexport type InfoBlockModel = {\n type: BlockType.InfoBlock;\n} & InfoBlockProps;\n\nexport type TableBlockModel = {\n type: BlockType.TableBlock;\n} & TableBlockProps;\n\nexport type TabsBlockModel = {\n type: BlockType.TabsBlock;\n} & TabsBlockProps;\n\nexport type CardLayoutBlockModel = {\n type: BlockType.CardLayoutBlock;\n} & CardLayoutBlockProps;\n\nexport type FilterBlockModel = {\n type: BlockType.FilterBlock;\n} & FilterBlockProps;\n\nexport type IconsBlockModel = {\n type: BlockType.IconsBlock;\n} & IconsBlockProps;\n\nexport type HeaderSliderBlockModel = {\n type: BlockType.HeaderSliderBlock;\n} & HeaderSliderBlockProps;\n\nexport type ContentLayoutBlockModel = {\n type: BlockType.ContentLayoutBlock;\n} & ContentLayoutBlockProps;\n\nexport type ShareBLockModel = {\n type: BlockType.ShareBlock;\n} & ShareBlockProps;\n\nexport type FormBlockModel = {\n type: BlockType.FormBlock;\n} & FormBlockProps;\n\n// unstable block models\nexport type SliderNewBlockModel = {\n type: BlockType.SliderNewBlock;\n} & SliderNewProps;\n\ntype BlockModels =\n | SliderBlockModel\n | ExtendedFeaturesBlockModel\n | PromoFeaturesBlockModel\n | QuestionsBlockModel\n | BannerBlockModel\n | CompaniesBlockModel\n | MediaBlockModel\n | MapBlockModel\n | InfoBlockModel\n | TableBlockModel\n | TabsBlockModel\n | HeaderBlockModel\n | IconsBlockModel\n | HeaderSliderBlockModel\n | CardLayoutBlockModel\n | ContentLayoutBlockModel\n | ShareBLockModel\n | FilterBlockModel\n | FormBlockModel;\n\ntype UnstableBlockModels = SliderNewBlockModel;\n\nexport type Block = (BlockModels | UnstableBlockModels) & BlockBaseProps;\n"]}
@@ -47,7 +47,7 @@ export declare enum QuoteType {
47
47
  EnglishDouble = "english-double"
48
48
  }
49
49
  export type TextTheme = 'light' | 'dark';
50
- export type TextSize = 'xs' | 's' | 'm' | 'l';
50
+ export type TextSize = 'xs' | 's' | 'sm' | 'm' | 'l';
51
51
  export type DividerSize = '0' | 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl';
52
52
  export type HeaderWidth = 's' | 'm' | 'l';
53
53
  export type HeaderImageSize = 's' | 'm';
@@ -58,7 +58,7 @@ export type LegendTableMarkerType = 'disk' | 'tick';
58
58
  export type LinkTheme = 'file-link' | 'normal' | 'back' | 'underline';
59
59
  export type MediaDirection = 'media-content' | 'content-media';
60
60
  export type PriceDescriptionColor = 'cornflower' | 'black';
61
- export type ContentSize = 's' | 'l';
61
+ export type ContentSize = 's' | 'm' | 'l';
62
62
  export type ContentTextSize = 's' | 'm' | 'l';
63
63
  export type ContentTheme = 'default' | 'dark' | 'light';
64
64
  export type FileLinkType = 'vertical' | 'horizontal';
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"../../../../src","sources":["models/constructor-items/common.ts"],"names":[],"mappings":";;;AAOA,QAAQ;AACR,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,+BAAiB,CAAA;IACjB,2BAAa,CAAA;AACjB,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAED,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,+CAA2B,CAAA;IAC3B,yCAAqB,CAAA;AACzB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B;AAED,IAAY,eAMX;AAND,WAAY,eAAe;IACvB,gCAAa,CAAA;IACb,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;IACjB,8BAAW,CAAA;AACf,CAAC,EANW,eAAe,+BAAf,eAAe,QAM1B;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,qCAAmB,CAAA;IACnB,+BAAa,CAAA;AACjB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,iCAAa,CAAA;IACb,iCAAa,CAAA;AACjB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B;AAED,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,yDAAmC,CAAA;IACnC,oEAA8C,CAAA;AAClD,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,+BAIX;AAJD,WAAY,+BAA+B;IACvC,gDAAa,CAAA;IACb,kDAAe,CAAA;IACf,oDAAiB,CAAA;AACrB,CAAC,EAJW,+BAA+B,+CAA/B,+BAA+B,QAI1C;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,qCAAmB,CAAA;IACnB,mCAAiB,CAAA;AACrB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAC9B,6CAAmB,CAAA;IACnB,2CAAiB,CAAA;AACrB,CAAC,EAHW,sBAAsB,sCAAtB,sBAAsB,QAGjC;AAED,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,gCAAmB,CAAA;IACnB,6CAAgC,CAAA;AACpC,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB","sourcesContent":["import * as React from 'react';\n\nimport {ButtonView, ButtonProps as UikitButtonProps} from '@gravity-ui/uikit';\n\nimport {ThemeSupporting} from '../../utils';\nimport {AnalyticsEventsBase, AnalyticsEventsProp, ClassNameProps, QAProps} from '../common';\n\n// enums\nexport enum AuthorType {\n Column = 'column',\n Line = 'line',\n}\n\nexport enum PriceDetailsType {\n MARKED_LIST = 'marked-list',\n SETTINGS = 'settings',\n}\n\nexport enum PriceLabelColor {\n BLUE = 'blue',\n GREEN = 'green',\n YELLOW = 'yellow',\n PURPLE = 'purple',\n RED = 'red',\n}\n\nexport enum PlayButtonType {\n Default = 'default',\n Text = 'text',\n}\n\nexport enum PlayButtonThemes {\n Blue = 'blue',\n Grey = 'grey',\n}\n\nexport enum CustomControlsType {\n WithMuteButton = 'with-mute-button',\n WithPlayPauseButton = 'with-play-pause-button',\n}\n\nexport enum CustomControlsButtonPositioning {\n Left = 'left',\n Right = 'right',\n Center = 'center',\n}\n\nexport enum MediaVideoType {\n Default = 'default',\n Player = 'player',\n}\n\nexport enum MediaVideoControlsType {\n Default = 'default',\n Custom = 'custom',\n}\n\nexport enum QuoteType {\n Chevron = 'chevron', // « »\n EnglishDouble = 'english-double', // “ ”\n}\n\n// types\nexport type TextTheme = 'light' | 'dark';\nexport type TextSize = 'xs' | 's' | 'm' | 'l';\nexport type DividerSize = '0' | 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl';\nexport type HeaderWidth = 's' | 'm' | 'l';\nexport type HeaderImageSize = 's' | 'm';\nexport type HeaderOffset = 'default' | 'large';\nexport type Justify = 'start' | 'center' | 'end';\nexport type ColumnsCount = 1 | 2 | 3 | 4;\nexport type LegendTableMarkerType = 'disk' | 'tick';\nexport type LinkTheme = 'file-link' | 'normal' | 'back' | 'underline';\nexport type MediaDirection = 'media-content' | 'content-media';\nexport type PriceDescriptionColor = 'cornflower' | 'black';\nexport type ContentSize = 's' | 'l';\nexport type ContentTextSize = 's' | 'm' | 'l';\nexport type ContentTheme = 'default' | 'dark' | 'light';\nexport type FileLinkType = 'vertical' | 'horizontal';\nexport type ImageCardMargins = 's' | 'm';\nexport type LayoutItemContentMargin = 'm' | 'l';\n\n// modifiers\nexport interface Themable {\n theme?: TextTheme;\n}\n\nexport interface Justifyable {\n justify?: Justify;\n}\n\nexport interface Stylable {\n className?: string;\n}\n\nexport interface Animatable {\n animated?: boolean;\n}\n\nexport interface Tabbable {\n tabIndex?: number;\n}\n\nexport interface Roleable {\n role?: React.AriaRole;\n}\n\n//common props\nexport interface Background {\n image?: string;\n color?: string;\n}\n\nexport interface AnchorProps {\n text: string;\n url: string;\n}\n\n/**\n * @deprecated Component VideoBlock will be deleted, which uses this logic\n */\ninterface LoopProps {\n start: number;\n end?: number;\n}\n\n// images\n\nexport interface ImageInfoProps\n extends Pick<\n React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>,\n 'aria-describedby' | 'loading'\n > {\n alt?: string;\n fetchPriority?: 'high' | 'low' | 'auto';\n disableCompress?: boolean;\n}\n\nexport interface ImageObjectProps extends ImageInfoProps {\n src: string;\n}\n\nexport interface ImageDeviceProps extends ImageInfoProps {\n desktop: string;\n mobile: string;\n tablet?: string;\n}\n\nexport type ImageProps = string | ImageObjectProps | ImageDeviceProps;\nexport type ThemedImage = ThemeSupporting<ImageProps>;\n\nexport interface BackgroundImageProps\n extends React.HTMLProps<HTMLDivElement>,\n Partial<ImageDeviceProps>,\n Partial<ImageObjectProps>,\n QAProps {\n style?: React.CSSProperties;\n imageClassName?: string;\n hide?: boolean;\n}\n\n//components props\nexport interface MediaVideoProps extends AnalyticsEventsBase {\n src: string[];\n type?: MediaVideoType;\n loop?: LoopProps | boolean;\n muted?: boolean;\n autoplay?: boolean;\n elapsedTime?: number;\n playButton?: PlayButtonProps;\n controls?: MediaVideoControlsType;\n customControlsOptions?: CustomControlsOptions;\n ariaLabel?: string;\n contain?: boolean;\n}\n\n// links\nexport interface LinkProps extends AnalyticsEventsBase, Stylable, Tabbable {\n url: string;\n urlTitle?: string;\n text?: string;\n textSize?: TextSize;\n theme?: LinkTheme;\n colorTheme?: TextTheme;\n arrow?: boolean;\n target?: string;\n extraProps?: React.HTMLProps<HTMLAnchorElement>;\n}\n\nexport interface FileLinkProps extends ClassNameProps, Tabbable {\n href: string;\n text: React.ReactNode;\n type?: FileLinkType;\n textSize?: TextSize;\n theme?: ContentTheme;\n urlTitle?: string;\n onClick?: () => void;\n extraProps?: React.HTMLProps<HTMLAnchorElement>;\n}\n\n// buttons\nexport type ButtonTheme =\n | ButtonView\n | 'github'\n | 'app-store'\n | 'google-play'\n | 'scale'\n | 'monochrome';\n\nexport interface ButtonProps\n extends AnalyticsEventsBase,\n Pick<UikitButtonProps, 'size' | 'width' | 'extraProps'> {\n text: string;\n url: string;\n urlTitle?: string;\n primary?: boolean;\n theme?: ButtonTheme;\n img?: ButtonImageProps | string;\n target?: string;\n}\n\nexport type ButtonImagePosition = 'left' | 'right';\n\nexport interface ButtonImageProps {\n url: string;\n position?: ButtonImagePosition;\n alt?: string;\n}\n\nexport interface CustomControlsOptions {\n type?: CustomControlsType;\n muteButtonShown?: boolean;\n positioning?: CustomControlsButtonPositioning;\n}\n\nexport interface PlayButtonProps extends ClassNameProps {\n type?: PlayButtonType;\n theme?: PlayButtonThemes;\n text?: string;\n}\n\nexport type ThemedMediaVideoProps = ThemeSupporting<MediaVideoProps>;\n\nexport interface MediaComponentVideoProps extends AnalyticsEventsBase {\n video: MediaVideoProps;\n height?: number;\n ratio?: number | 'auto';\n previewImg?: string;\n}\n\nexport interface MediaComponentVideoIframeProps {\n videoIframe: string;\n}\n\nexport interface MediaComponentYoutubeProps {\n youtube: string;\n previewImg?: string;\n fullscreen?: boolean;\n}\n\nexport interface MediaComponentImageProps {\n image: ImageProps | ImageProps[] | ImageDeviceProps;\n video?: MediaVideoProps;\n parallax?: boolean;\n height?: number;\n disableImageSliderForArrayInput?: boolean;\n}\n\nexport interface MediaComponentDataLensProps {\n dataLens: DataLensProps;\n}\n\nexport interface MediaComponentIframeProps {\n iframe: IframeProps;\n margins?: boolean;\n}\n\nexport interface MediaProps\n extends Animatable,\n Partial<MediaComponentDataLensProps>,\n Partial<MediaComponentYoutubeProps>,\n Partial<MediaComponentVideoIframeProps>,\n Partial<MediaComponentImageProps>,\n Partial<MediaComponentIframeProps>,\n Partial<MediaComponentVideoProps> {\n color?: string;\n videoMicrodata?: {\n name?: string;\n description?: string;\n duration?: string;\n uploadDate?: string;\n contentUrl?: string;\n thumbnailUrl?: string;\n };\n}\n\nexport interface BackgroundMediaProps extends MediaProps, Animatable, QAProps {\n fullWidthMedia?: boolean;\n className?: string;\n mediaClassName?: string;\n}\n\nexport type Coordinate = number[];\n\nexport interface MapBaseProps {\n zoom?: number;\n className?: string;\n}\n\nexport interface GMapProps extends MapBaseProps {\n address: string;\n}\n\nexport interface YMapProps extends MapBaseProps {\n markers: YMapMarker[];\n id: string;\n}\n\nexport interface YMapMarker {\n address?: string;\n coordinate?: Coordinate;\n label?: YMapMarkerLabel;\n}\n\nexport interface YMapMarkerLabel {\n iconCaption?: string;\n iconContent?: string;\n iconColor?: string;\n preset?: string;\n}\n\nexport type MapProps = GMapProps | YMapProps;\n\nexport type ThemedMediaProps = ThemeSupporting<MediaProps>;\n\nexport interface DataLensObjectProps {\n id: string;\n theme: 'dark' | 'light';\n}\n\nexport interface IframeProps {\n src: string;\n width?: number;\n height?: number;\n title?: string;\n name?: string;\n}\n\nexport type DataLensProps = string | DataLensObjectProps;\n\nexport interface AuthorItem {\n firstName: string;\n secondName: string;\n description?: string;\n avatar?: ThemeSupporting<ImageProps> | JSX.Element;\n}\n\nexport interface HeaderBreadCrumbsProps extends ClassNameProps {\n items: {\n url: string;\n text: React.ReactNode;\n }[];\n theme?: TextTheme;\n analyticsEvents?: AnalyticsEventsProp;\n}\n\nexport interface TitleItemProps extends Justifyable, TitleItemBaseProps {\n navTitle?: string;\n anchor?: string;\n}\n\nexport interface TitleItemBaseProps {\n text: string;\n textSize?: TextSize;\n url?: string;\n urlTitle?: string;\n custom?: string | React.ReactNode;\n onClick?: () => void;\n}\n\nexport type MediaView = 'fit' | 'full';\n\n// card\nexport type MediaBorder = 'shadow' | 'line' | 'none';\nexport type CardBorder = MediaBorder;\nexport type ControlPosition = 'content' | 'footer';\n\nexport interface CardBaseProps {\n border?: CardBorder;\n}\n\nexport type CardLayoutProps = {\n controlPosition?: ControlPosition;\n};\n\n//price\nexport interface PriceDescriptionProps {\n title: string;\n detailedTitle?: string;\n description: string;\n label?: {\n color: PriceLabelColor;\n text?: string;\n size?: TextSize;\n };\n}\n\nexport interface PriceDetailsSettingsProps {\n title: string;\n description: string;\n}\n\nexport interface PriceDetailsListProps {\n text: string;\n}\n\nexport interface PriceDetailsProps {\n items?: PriceDetailsSettingsProps[] | PriceDetailsListProps[];\n}\n\nexport interface PriceItemProps\n extends PriceDetailsProps,\n PriceDescriptionProps,\n AnalyticsEventsBase {}\n\nexport interface PriceFoldableDetailsProps {\n title: string;\n size?: TextSize;\n titleColor?: PriceDescriptionColor;\n}\n\n/** @deprecated */\nexport interface PriceDetailedProps extends CardBaseProps {\n items: PriceItemProps[];\n description?: {\n titleSize?: TextSize;\n descriptionSize?: TextSize;\n titleColor?: PriceDescriptionColor;\n };\n details?: {\n titleSize?: TextSize;\n descriptionSize?: TextSize;\n };\n priceType?: PriceDetailsType;\n numberGroupItems?: 3 | 4 | 5;\n isCombined?: boolean;\n useMixedView?: boolean;\n foldable?: PriceFoldableDetailsProps;\n labelsDefaultText?: Record<PriceLabelColor, string>;\n}\n\nexport interface AuthorProps extends QAProps {\n author: AuthorItem;\n className?: string;\n authorContainerClassName?: string;\n type?: AuthorType;\n theme?: ContentTheme;\n}\n\nexport interface TitleProps {\n title?: TitleItemProps | string;\n subtitle?: string;\n}\n\nexport interface YandexFormProps extends AnalyticsEventsBase {\n id: number | string;\n containerId?: string;\n theme?: string;\n className?: string;\n headerHeight?: number;\n customFormOrigin?: string;\n customFormSection?: string;\n params?: {[key: string]: string};\n\n onSubmit?: () => void;\n onLoad?: () => void;\n}\n\nexport interface WithBorder {\n border?: MediaBorder;\n /**\n * @deprecated use custom class for media-component\n */\n disableShadow?: boolean;\n}\n"]}
1
+ {"version":3,"file":"common.js","sourceRoot":"../../../../src","sources":["models/constructor-items/common.ts"],"names":[],"mappings":";;;AAOA,QAAQ;AACR,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,+BAAiB,CAAA;IACjB,2BAAa,CAAA;AACjB,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAED,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,+CAA2B,CAAA;IAC3B,yCAAqB,CAAA;AACzB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B;AAED,IAAY,eAMX;AAND,WAAY,eAAe;IACvB,gCAAa,CAAA;IACb,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,oCAAiB,CAAA;IACjB,8BAAW,CAAA;AACf,CAAC,EANW,eAAe,+BAAf,eAAe,QAM1B;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,qCAAmB,CAAA;IACnB,+BAAa,CAAA;AACjB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IACxB,iCAAa,CAAA;IACb,iCAAa,CAAA;AACjB,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B;AAED,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,yDAAmC,CAAA;IACnC,oEAA8C,CAAA;AAClD,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,+BAIX;AAJD,WAAY,+BAA+B;IACvC,gDAAa,CAAA;IACb,kDAAe,CAAA;IACf,oDAAiB,CAAA;AACrB,CAAC,EAJW,+BAA+B,+CAA/B,+BAA+B,QAI1C;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,qCAAmB,CAAA;IACnB,mCAAiB,CAAA;AACrB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAC9B,6CAAmB,CAAA;IACnB,2CAAiB,CAAA;AACrB,CAAC,EAHW,sBAAsB,sCAAtB,sBAAsB,QAGjC;AAED,IAAY,SAGX;AAHD,WAAY,SAAS;IACjB,gCAAmB,CAAA;IACnB,6CAAgC,CAAA;AACpC,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB","sourcesContent":["import * as React from 'react';\n\nimport {ButtonView, ButtonProps as UikitButtonProps} from '@gravity-ui/uikit';\n\nimport {ThemeSupporting} from '../../utils';\nimport {AnalyticsEventsBase, AnalyticsEventsProp, ClassNameProps, QAProps} from '../common';\n\n// enums\nexport enum AuthorType {\n Column = 'column',\n Line = 'line',\n}\n\nexport enum PriceDetailsType {\n MARKED_LIST = 'marked-list',\n SETTINGS = 'settings',\n}\n\nexport enum PriceLabelColor {\n BLUE = 'blue',\n GREEN = 'green',\n YELLOW = 'yellow',\n PURPLE = 'purple',\n RED = 'red',\n}\n\nexport enum PlayButtonType {\n Default = 'default',\n Text = 'text',\n}\n\nexport enum PlayButtonThemes {\n Blue = 'blue',\n Grey = 'grey',\n}\n\nexport enum CustomControlsType {\n WithMuteButton = 'with-mute-button',\n WithPlayPauseButton = 'with-play-pause-button',\n}\n\nexport enum CustomControlsButtonPositioning {\n Left = 'left',\n Right = 'right',\n Center = 'center',\n}\n\nexport enum MediaVideoType {\n Default = 'default',\n Player = 'player',\n}\n\nexport enum MediaVideoControlsType {\n Default = 'default',\n Custom = 'custom',\n}\n\nexport enum QuoteType {\n Chevron = 'chevron', // « »\n EnglishDouble = 'english-double', // “ ”\n}\n\n// types\nexport type TextTheme = 'light' | 'dark';\nexport type TextSize = 'xs' | 's' | 'sm' | 'm' | 'l';\nexport type DividerSize = '0' | 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl';\nexport type HeaderWidth = 's' | 'm' | 'l';\nexport type HeaderImageSize = 's' | 'm';\nexport type HeaderOffset = 'default' | 'large';\nexport type Justify = 'start' | 'center' | 'end';\nexport type ColumnsCount = 1 | 2 | 3 | 4;\nexport type LegendTableMarkerType = 'disk' | 'tick';\nexport type LinkTheme = 'file-link' | 'normal' | 'back' | 'underline';\nexport type MediaDirection = 'media-content' | 'content-media';\nexport type PriceDescriptionColor = 'cornflower' | 'black';\nexport type ContentSize = 's' | 'm' | 'l';\nexport type ContentTextSize = 's' | 'm' | 'l';\nexport type ContentTheme = 'default' | 'dark' | 'light';\nexport type FileLinkType = 'vertical' | 'horizontal';\nexport type ImageCardMargins = 's' | 'm';\nexport type LayoutItemContentMargin = 'm' | 'l';\n\n// modifiers\nexport interface Themable {\n theme?: TextTheme;\n}\n\nexport interface Justifyable {\n justify?: Justify;\n}\n\nexport interface Stylable {\n className?: string;\n}\n\nexport interface Animatable {\n animated?: boolean;\n}\n\nexport interface Tabbable {\n tabIndex?: number;\n}\n\nexport interface Roleable {\n role?: React.AriaRole;\n}\n\n//common props\nexport interface Background {\n image?: string;\n color?: string;\n}\n\nexport interface AnchorProps {\n text: string;\n url: string;\n}\n\n/**\n * @deprecated Component VideoBlock will be deleted, which uses this logic\n */\ninterface LoopProps {\n start: number;\n end?: number;\n}\n\n// images\n\nexport interface ImageInfoProps\n extends Pick<\n React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>,\n 'aria-describedby' | 'loading'\n > {\n alt?: string;\n fetchPriority?: 'high' | 'low' | 'auto';\n disableCompress?: boolean;\n}\n\nexport interface ImageObjectProps extends ImageInfoProps {\n src: string;\n}\n\nexport interface ImageDeviceProps extends ImageInfoProps {\n desktop: string;\n mobile: string;\n tablet?: string;\n}\n\nexport type ImageProps = string | ImageObjectProps | ImageDeviceProps;\nexport type ThemedImage = ThemeSupporting<ImageProps>;\n\nexport interface BackgroundImageProps\n extends React.HTMLProps<HTMLDivElement>,\n Partial<ImageDeviceProps>,\n Partial<ImageObjectProps>,\n QAProps {\n style?: React.CSSProperties;\n imageClassName?: string;\n hide?: boolean;\n}\n\n//components props\nexport interface MediaVideoProps extends AnalyticsEventsBase {\n src: string[];\n type?: MediaVideoType;\n loop?: LoopProps | boolean;\n muted?: boolean;\n autoplay?: boolean;\n elapsedTime?: number;\n playButton?: PlayButtonProps;\n controls?: MediaVideoControlsType;\n customControlsOptions?: CustomControlsOptions;\n ariaLabel?: string;\n contain?: boolean;\n}\n\n// links\nexport interface LinkProps extends AnalyticsEventsBase, Stylable, Tabbable {\n url: string;\n urlTitle?: string;\n text?: string;\n textSize?: TextSize;\n theme?: LinkTheme;\n colorTheme?: TextTheme;\n arrow?: boolean;\n target?: string;\n extraProps?: React.HTMLProps<HTMLAnchorElement>;\n}\n\nexport interface FileLinkProps extends ClassNameProps, Tabbable {\n href: string;\n text: React.ReactNode;\n type?: FileLinkType;\n textSize?: TextSize;\n theme?: ContentTheme;\n urlTitle?: string;\n onClick?: () => void;\n extraProps?: React.HTMLProps<HTMLAnchorElement>;\n}\n\n// buttons\nexport type ButtonTheme =\n | ButtonView\n | 'github'\n | 'app-store'\n | 'google-play'\n | 'scale'\n | 'monochrome';\n\nexport interface ButtonProps\n extends AnalyticsEventsBase,\n Pick<UikitButtonProps, 'size' | 'width' | 'extraProps'> {\n text: string;\n url: string;\n urlTitle?: string;\n primary?: boolean;\n theme?: ButtonTheme;\n img?: ButtonImageProps | string;\n target?: string;\n}\n\nexport type ButtonImagePosition = 'left' | 'right';\n\nexport interface ButtonImageProps {\n url: string;\n position?: ButtonImagePosition;\n alt?: string;\n}\n\nexport interface CustomControlsOptions {\n type?: CustomControlsType;\n muteButtonShown?: boolean;\n positioning?: CustomControlsButtonPositioning;\n}\n\nexport interface PlayButtonProps extends ClassNameProps {\n type?: PlayButtonType;\n theme?: PlayButtonThemes;\n text?: string;\n}\n\nexport type ThemedMediaVideoProps = ThemeSupporting<MediaVideoProps>;\n\nexport interface MediaComponentVideoProps extends AnalyticsEventsBase {\n video: MediaVideoProps;\n height?: number;\n ratio?: number | 'auto';\n previewImg?: string;\n}\n\nexport interface MediaComponentVideoIframeProps {\n videoIframe: string;\n}\n\nexport interface MediaComponentYoutubeProps {\n youtube: string;\n previewImg?: string;\n fullscreen?: boolean;\n}\n\nexport interface MediaComponentImageProps {\n image: ImageProps | ImageProps[] | ImageDeviceProps;\n video?: MediaVideoProps;\n parallax?: boolean;\n height?: number;\n disableImageSliderForArrayInput?: boolean;\n}\n\nexport interface MediaComponentDataLensProps {\n dataLens: DataLensProps;\n}\n\nexport interface MediaComponentIframeProps {\n iframe: IframeProps;\n margins?: boolean;\n}\n\nexport interface MediaProps\n extends Animatable,\n Partial<MediaComponentDataLensProps>,\n Partial<MediaComponentYoutubeProps>,\n Partial<MediaComponentVideoIframeProps>,\n Partial<MediaComponentImageProps>,\n Partial<MediaComponentIframeProps>,\n Partial<MediaComponentVideoProps> {\n color?: string;\n videoMicrodata?: {\n name?: string;\n description?: string;\n duration?: string;\n uploadDate?: string;\n contentUrl?: string;\n thumbnailUrl?: string;\n };\n}\n\nexport interface BackgroundMediaProps extends MediaProps, Animatable, QAProps {\n fullWidthMedia?: boolean;\n className?: string;\n mediaClassName?: string;\n}\n\nexport type Coordinate = number[];\n\nexport interface MapBaseProps {\n zoom?: number;\n className?: string;\n}\n\nexport interface GMapProps extends MapBaseProps {\n address: string;\n}\n\nexport interface YMapProps extends MapBaseProps {\n markers: YMapMarker[];\n id: string;\n}\n\nexport interface YMapMarker {\n address?: string;\n coordinate?: Coordinate;\n label?: YMapMarkerLabel;\n}\n\nexport interface YMapMarkerLabel {\n iconCaption?: string;\n iconContent?: string;\n iconColor?: string;\n preset?: string;\n}\n\nexport type MapProps = GMapProps | YMapProps;\n\nexport type ThemedMediaProps = ThemeSupporting<MediaProps>;\n\nexport interface DataLensObjectProps {\n id: string;\n theme: 'dark' | 'light';\n}\n\nexport interface IframeProps {\n src: string;\n width?: number;\n height?: number;\n title?: string;\n name?: string;\n}\n\nexport type DataLensProps = string | DataLensObjectProps;\n\nexport interface AuthorItem {\n firstName: string;\n secondName: string;\n description?: string;\n avatar?: ThemeSupporting<ImageProps> | JSX.Element;\n}\n\nexport interface HeaderBreadCrumbsProps extends ClassNameProps {\n items: {\n url: string;\n text: React.ReactNode;\n }[];\n theme?: TextTheme;\n analyticsEvents?: AnalyticsEventsProp;\n}\n\nexport interface TitleItemProps extends Justifyable, TitleItemBaseProps {\n navTitle?: string;\n anchor?: string;\n}\n\nexport interface TitleItemBaseProps {\n text: string;\n textSize?: TextSize;\n url?: string;\n urlTitle?: string;\n custom?: string | React.ReactNode;\n onClick?: () => void;\n}\n\nexport type MediaView = 'fit' | 'full';\n\n// card\nexport type MediaBorder = 'shadow' | 'line' | 'none';\nexport type CardBorder = MediaBorder;\nexport type ControlPosition = 'content' | 'footer';\n\nexport interface CardBaseProps {\n border?: CardBorder;\n}\n\nexport type CardLayoutProps = {\n controlPosition?: ControlPosition;\n};\n\n//price\nexport interface PriceDescriptionProps {\n title: string;\n detailedTitle?: string;\n description: string;\n label?: {\n color: PriceLabelColor;\n text?: string;\n size?: TextSize;\n };\n}\n\nexport interface PriceDetailsSettingsProps {\n title: string;\n description: string;\n}\n\nexport interface PriceDetailsListProps {\n text: string;\n}\n\nexport interface PriceDetailsProps {\n items?: PriceDetailsSettingsProps[] | PriceDetailsListProps[];\n}\n\nexport interface PriceItemProps\n extends PriceDetailsProps,\n PriceDescriptionProps,\n AnalyticsEventsBase {}\n\nexport interface PriceFoldableDetailsProps {\n title: string;\n size?: TextSize;\n titleColor?: PriceDescriptionColor;\n}\n\n/** @deprecated */\nexport interface PriceDetailedProps extends CardBaseProps {\n items: PriceItemProps[];\n description?: {\n titleSize?: TextSize;\n descriptionSize?: TextSize;\n titleColor?: PriceDescriptionColor;\n };\n details?: {\n titleSize?: TextSize;\n descriptionSize?: TextSize;\n };\n priceType?: PriceDetailsType;\n numberGroupItems?: 3 | 4 | 5;\n isCombined?: boolean;\n useMixedView?: boolean;\n foldable?: PriceFoldableDetailsProps;\n labelsDefaultText?: Record<PriceLabelColor, string>;\n}\n\nexport interface AuthorProps extends QAProps {\n author: AuthorItem;\n className?: string;\n authorContainerClassName?: string;\n type?: AuthorType;\n theme?: ContentTheme;\n}\n\nexport interface TitleProps {\n title?: TitleItemProps | string;\n subtitle?: string;\n}\n\nexport interface YandexFormProps extends AnalyticsEventsBase {\n id: number | string;\n containerId?: string;\n theme?: string;\n className?: string;\n headerHeight?: number;\n customFormOrigin?: string;\n customFormSection?: string;\n params?: {[key: string]: string};\n\n onSubmit?: () => void;\n onLoad?: () => void;\n}\n\nexport interface WithBorder {\n border?: MediaBorder;\n /**\n * @deprecated use custom class for media-component\n */\n disableShadow?: boolean;\n}\n"]}
@@ -4,7 +4,7 @@ exports.NavigationItem = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const jsx_runtime_1 = require("react/jsx-runtime");
6
6
  const React = tslib_1.__importStar(require("react"));
7
- const omit_1 = tslib_1.__importDefault(require("lodash/omit"));
7
+ const omit_1 = tslib_1.__importDefault(require("lodash/omit.js"));
8
8
  const blockIdContext_1 = require("../../../context/blockIdContext/index.js");
9
9
  const models_1 = require("../../../models/index.js");
10
10
  const utils_1 = require("../../../utils/index.js");
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationItem.js","sourceRoot":"../../../../../src","sources":["navigation/components/NavigationItem/NavigationItem.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,+DAA+B;AAE/B,6EAA+D;AAC/D,qDAAoF;AACpF,mDAAqC;AAGrC,0EAAkE;AAIlE,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,iBAAiB,CAAC,CAAC;AAEnC,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC,MAAM,6BAA6B,GAAG,4BAAmB,CAAC,MAAM,CAC5D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,2BAAkB,CAAC,QAAQ,CACjD,CAAC;AAEK,MAAM,cAAc,GAAkC,CAAC,EAKxC,EAAE,EAAE;QALoC,EAC1D,IAAI,EACJ,SAAS,EACT,UAAU,OAEQ,EADf,KAAK,sBAJkD,mCAK7D,CADW;IAER,MAAM,EAAC,IAAI,GAAG,2BAAkB,CAAC,IAAI,EAAC,GAAG,IAAI,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAA,2CAAoB,GAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAe,CAAC;IACjD,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,mBAAmB,mCAClB,IAAI,GACJ,KAAK,CACX,CAAC;QAEF,IACI,6BAA6B,CAAC,QAAQ,CAClC,IAAsD,CACzD,EACH,CAAC;YACC,OAAO,IAAA,cAAI,EAAC,mBAAmB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,4BAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,mBAAmB;YACrB,CAAC,iCAAK,mBAAmB,KAAE,UAAU,GAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEpC,OAAO,CACH,uBAAC,+BAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YACxC,+BAAI,SAAS,EAAE,CAAC,CAAC,EAAC,aAAa,EAAE,UAAU,EAAC,EAAE,SAAS,CAAC,YACpD,uBAAC,SAAS,oBAAK,cAAc,IAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,IAAI,GACjE,GACiB,CAC7B,CAAC;AACN,CAAC,CAAC;AAnCW,QAAA,cAAc,kBAmCzB;AAEF,kBAAe,sBAAc,CAAC","sourcesContent":["import * as React from 'react';\n\nimport omit from 'lodash/omit';\n\nimport {BlockIdContext} from '../../../context/blockIdContext';\nimport {CustomItem, NavigationItemType, NavigationItemTypes} from '../../../models';\nimport {block} from '../../../utils';\nimport {NavigationItemProps} from '../../models';\n\nimport {useNavigationItemMap} from './hooks/useNavigationItemMap';\n\nimport './NavigationItem.scss';\n\nconst b = block('navigation-item');\n\nconst ANALYTICS_ID = 'navigation';\n\nconst nonComplexNavigationItemTypes = NavigationItemTypes.filter(\n (type) => type !== NavigationItemType.Dropdown,\n);\n\nexport const NavigationItem: React.FC<NavigationItemProps> = ({\n data,\n className,\n menuLayout,\n ...props\n}: NavigationItemProps) => {\n const {type = NavigationItemType.Link} = data;\n const navItemMap = useNavigationItemMap();\n const Component = navItemMap[type] as CustomItem;\n const componentProps = React.useMemo(() => {\n const componentProperties = {\n ...data,\n ...props,\n };\n\n if (\n nonComplexNavigationItemTypes.includes(\n type as (typeof nonComplexNavigationItemTypes)[number],\n )\n ) {\n return omit(componentProperties, 'hidePopup', 'isActive');\n }\n\n return NavigationItemTypes.includes(type)\n ? componentProperties\n : {...componentProperties, menuLayout};\n }, [data, props, type, menuLayout]);\n\n return (\n <BlockIdContext.Provider value={ANALYTICS_ID}>\n <li className={b({'menu-layout': menuLayout}, className)}>\n <Component {...componentProps} className={b('content', {type})} />\n </li>\n </BlockIdContext.Provider>\n );\n};\n\nexport default NavigationItem;\n"]}
1
+ {"version":3,"file":"NavigationItem.js","sourceRoot":"../../../../../src","sources":["navigation/components/NavigationItem/NavigationItem.tsx"],"names":[],"mappings":";;;;;AAAA,qDAA+B;AAE/B,kEAA+B;AAE/B,6EAA+D;AAC/D,qDAAoF;AACpF,mDAAqC;AAGrC,0EAAkE;AAIlE,MAAM,CAAC,GAAG,IAAA,aAAK,EAAC,iBAAiB,CAAC,CAAC;AAEnC,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC,MAAM,6BAA6B,GAAG,4BAAmB,CAAC,MAAM,CAC5D,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,2BAAkB,CAAC,QAAQ,CACjD,CAAC;AAEK,MAAM,cAAc,GAAkC,CAAC,EAKxC,EAAE,EAAE;QALoC,EAC1D,IAAI,EACJ,SAAS,EACT,UAAU,OAEQ,EADf,KAAK,sBAJkD,mCAK7D,CADW;IAER,MAAM,EAAC,IAAI,GAAG,2BAAkB,CAAC,IAAI,EAAC,GAAG,IAAI,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAA,2CAAoB,GAAE,CAAC;IAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAe,CAAC;IACjD,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,mBAAmB,mCAClB,IAAI,GACJ,KAAK,CACX,CAAC;QAEF,IACI,6BAA6B,CAAC,QAAQ,CAClC,IAAsD,CACzD,EACH,CAAC;YACC,OAAO,IAAA,cAAI,EAAC,mBAAmB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,4BAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrC,CAAC,CAAC,mBAAmB;YACrB,CAAC,iCAAK,mBAAmB,KAAE,UAAU,GAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAEpC,OAAO,CACH,uBAAC,+BAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YACxC,+BAAI,SAAS,EAAE,CAAC,CAAC,EAAC,aAAa,EAAE,UAAU,EAAC,EAAE,SAAS,CAAC,YACpD,uBAAC,SAAS,oBAAK,cAAc,IAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,IAAI,EAAC,CAAC,IAAI,GACjE,GACiB,CAC7B,CAAC;AACN,CAAC,CAAC;AAnCW,QAAA,cAAc,kBAmCzB;AAEF,kBAAe,sBAAc,CAAC","sourcesContent":["import * as React from 'react';\n\nimport omit from 'lodash/omit';\n\nimport {BlockIdContext} from '../../../context/blockIdContext';\nimport {CustomItem, NavigationItemType, NavigationItemTypes} from '../../../models';\nimport {block} from '../../../utils';\nimport {NavigationItemProps} from '../../models';\n\nimport {useNavigationItemMap} from './hooks/useNavigationItemMap';\n\nimport './NavigationItem.scss';\n\nconst b = block('navigation-item');\n\nconst ANALYTICS_ID = 'navigation';\n\nconst nonComplexNavigationItemTypes = NavigationItemTypes.filter(\n (type) => type !== NavigationItemType.Dropdown,\n);\n\nexport const NavigationItem: React.FC<NavigationItemProps> = ({\n data,\n className,\n menuLayout,\n ...props\n}: NavigationItemProps) => {\n const {type = NavigationItemType.Link} = data;\n const navItemMap = useNavigationItemMap();\n const Component = navItemMap[type] as CustomItem;\n const componentProps = React.useMemo(() => {\n const componentProperties = {\n ...data,\n ...props,\n };\n\n if (\n nonComplexNavigationItemTypes.includes(\n type as (typeof nonComplexNavigationItemTypes)[number],\n )\n ) {\n return omit(componentProperties, 'hidePopup', 'isActive');\n }\n\n return NavigationItemTypes.includes(type)\n ? componentProperties\n : {...componentProperties, menuLayout};\n }, [data, props, type, menuLayout]);\n\n return (\n <BlockIdContext.Provider value={ANALYTICS_ID}>\n <li className={b({'menu-layout': menuLayout}, className)}>\n <Component {...componentProps} className={b('content', {type})} />\n </li>\n </BlockIdContext.Provider>\n );\n};\n\nexport default NavigationItem;\n"]}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useNavigationItemMap = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
- const isEmpty_1 = tslib_1.__importDefault(require("lodash/isEmpty"));
6
+ const isEmpty_1 = tslib_1.__importDefault(require("lodash/isEmpty.js"));
7
7
  const constructor_items_1 = require("../../../../constructor-items.js");
8
8
  const innerContext_1 = require("../../../../context/innerContext/index.js");
9
9
  const useNavigationItemMap = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"useNavigationItemMap.js","sourceRoot":"../../../../../../src","sources":["navigation/components/NavigationItem/hooks/useNavigationItemMap.ts"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,qEAAqC;AAErC,wEAA8E;AAC9E,4EAA8D;AAEvD,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAC,UAAU,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,2BAAY,CAAC,CAAC;IAEpD,OAAO,IAAA,iBAAO,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,8BAAiB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChE,CAAC,CAAC;AAJW,QAAA,oBAAoB,wBAI/B","sourcesContent":["import * as React from 'react';\n\nimport isEmpty from 'lodash/isEmpty';\n\nimport {navItemMap as NavItemMapDefault} from '../../../../constructor-items';\nimport {InnerContext} from '../../../../context/innerContext';\n\nexport const useNavigationItemMap = () => {\n const {navItemMap} = React.useContext(InnerContext);\n\n return isEmpty(navItemMap) ? NavItemMapDefault : navItemMap;\n};\n"]}
1
+ {"version":3,"file":"useNavigationItemMap.js","sourceRoot":"../../../../../../src","sources":["navigation/components/NavigationItem/hooks/useNavigationItemMap.ts"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAE/B,wEAAqC;AAErC,wEAA8E;AAC9E,4EAA8D;AAEvD,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAC,UAAU,EAAC,GAAG,KAAK,CAAC,UAAU,CAAC,2BAAY,CAAC,CAAC;IAEpD,OAAO,IAAA,iBAAO,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,8BAAiB,CAAC,CAAC,CAAC,UAAU,CAAC;AAChE,CAAC,CAAC;AAJW,QAAA,oBAAoB,wBAI/B","sourcesContent":["import * as React from 'react';\n\nimport isEmpty from 'lodash/isEmpty';\n\nimport {navItemMap as NavItemMapDefault} from '../../../../constructor-items';\nimport {InnerContext} from '../../../../context/innerContext';\n\nexport const useNavigationItemMap = () => {\n const {navItemMap} = React.useContext(InnerContext);\n\n return isEmpty(navItemMap) ? NavItemMapDefault : navItemMap;\n};\n"]}
@@ -23,7 +23,7 @@ declare const useActiveNavItem: (iconSize: number, leftItems: NavigationItemMode
23
23
  analyticsEvents?: import("../../models/index.js").AnalyticsEventsProp;
24
24
  size?: import("@gravity-ui/uikit").ButtonSize | undefined;
25
25
  width?: import("@gravity-ui/uikit").ButtonWidth | undefined;
26
- extraProps?: React.ButtonHTMLAttributes<HTMLButtonElement> | Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> | React.AnchorHTMLAttributes<HTMLAnchorElement> | undefined;
26
+ extraProps?: React.AnchorHTMLAttributes<HTMLAnchorElement> | React.ButtonHTMLAttributes<HTMLButtonElement> | undefined;
27
27
  } | {
28
28
  type: import("../../models/index.js").NavigationItemType.Dropdown;
29
29
  items: import("../../models/index.js").NavigationLinkItem[];
@@ -55,7 +55,7 @@ declare const useActiveNavItem: (iconSize: number, leftItems: NavigationItemMode
55
55
  analyticsEvents?: import("../../models/index.js").AnalyticsEventsProp;
56
56
  size?: import("@gravity-ui/uikit").ButtonSize | undefined;
57
57
  width?: import("@gravity-ui/uikit").ButtonWidth | undefined;
58
- extraProps?: React.ButtonHTMLAttributes<HTMLButtonElement> | Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> | React.AnchorHTMLAttributes<HTMLAnchorElement> | undefined;
58
+ extraProps?: React.AnchorHTMLAttributes<HTMLAnchorElement> | React.ButtonHTMLAttributes<HTMLButtonElement> | undefined;
59
59
  } | {
60
60
  type: import("../../models/index.js").NavigationItemType.Dropdown;
61
61
  items: import("../../models/index.js").NavigationLinkItem[];
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const React = tslib_1.__importStar(require("react"));
5
- const debounce_1 = tslib_1.__importDefault(require("lodash/debounce"));
5
+ const debounce_1 = tslib_1.__importDefault(require("lodash/debounce.js"));
6
6
  const useShowBorder = (withBorder, withBorderOnScroll) => {
7
7
  const [showBorder, setShowBorder] = React.useState(withBorder);
8
8
  React.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"useShowBorder.js","sourceRoot":"../../../../src","sources":["navigation/hooks/useShowBorder.ts"],"names":[],"mappings":";;;AAAA,qDAA+B;AAE/B,uEAAuC;AAEvC,MAAM,aAAa,GAAG,CAAC,UAAmB,EAAE,kBAA2B,EAAE,EAAE;IACvE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE/D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,CAAC,kBAAkB;YAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;QAEzC,MAAM,kBAAkB,GAAG,GAAG,EAAE;YAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,aAAa,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACtC,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,IAAA,kBAAQ,EAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAEvD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QAClE,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC","sourcesContent":["import * as React from 'react';\n\nimport debounce from 'lodash/debounce';\n\nconst useShowBorder = (withBorder: boolean, withBorderOnScroll: boolean) => {\n const [showBorder, setShowBorder] = React.useState(withBorder);\n\n React.useEffect(() => {\n if (!withBorderOnScroll) return () => {};\n\n const showBorderOnScroll = () => {\n if (!withBorder) {\n setShowBorder(window.scrollY > 0);\n }\n };\n\n const scrollHandler = debounce(showBorderOnScroll, 20);\n\n window.addEventListener('scroll', scrollHandler, {passive: true});\n return () => window.removeEventListener('scroll', scrollHandler);\n });\n\n return [showBorder];\n};\n\nexport default useShowBorder;\n"]}
1
+ {"version":3,"file":"useShowBorder.js","sourceRoot":"../../../../src","sources":["navigation/hooks/useShowBorder.ts"],"names":[],"mappings":";;;AAAA,qDAA+B;AAE/B,0EAAuC;AAEvC,MAAM,aAAa,GAAG,CAAC,UAAmB,EAAE,kBAA2B,EAAE,EAAE;IACvE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE/D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,CAAC,kBAAkB;YAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;QAEzC,MAAM,kBAAkB,GAAG,GAAG,EAAE;YAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,aAAa,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACtC,CAAC;QACL,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,IAAA,kBAAQ,EAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAEvD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;QAClE,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,kBAAe,aAAa,CAAC","sourcesContent":["import * as React from 'react';\n\nimport debounce from 'lodash/debounce';\n\nconst useShowBorder = (withBorder: boolean, withBorderOnScroll: boolean) => {\n const [showBorder, setShowBorder] = React.useState(withBorder);\n\n React.useEffect(() => {\n if (!withBorderOnScroll) return () => {};\n\n const showBorderOnScroll = () => {\n if (!withBorder) {\n setShowBorder(window.scrollY > 0);\n }\n };\n\n const scrollHandler = debounce(showBorderOnScroll, 20);\n\n window.addEventListener('scroll', scrollHandler, {passive: true});\n return () => window.removeEventListener('scroll', scrollHandler);\n });\n\n return [showBorder];\n};\n\nexport default useShowBorder;\n"]}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NavigationHeaderProps = exports.LogoProps = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const omit_1 = tslib_1.__importDefault(require("lodash/omit"));
5
+ const omit_1 = tslib_1.__importDefault(require("lodash/omit.js"));
6
6
  const schema_1 = require("../components/Image/schema.js");
7
7
  const common_1 = require("../schema/validators/common.js");
8
8
  const utils_1 = require("../schema/validators/utils.js");
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../src","sources":["navigation/schema.ts"],"names":[],"mappings":";;;;AAAA,+DAA+B;AAE/B,0DAAuE;AACvE,2DAAwD;AACxD,yDAAyD;AAEzD,MAAM,kBAAkB,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC;CACvC,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,UAAU,EAAE;QACR,IAAI,EAAE,mBAAU;QAChB,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;QACD,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC;AAEF,MAAM,uBAAuB,GAAG;IAC5B,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,MAAM;KACtB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,QAAQ;KACjB;IACD,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,wBAAe;KAC3B;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,QAAQ;KACjB;CACJ,CAAC;AAEF,MAAM,2BAA2B,GAAG,IAAA,cAAI,EAAC,uBAAuB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAE3E,MAAM,uBAAuB,GAAG;IAC5B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAC1B,UAAU,kCACH,2BAA2B,KAC9B,IAAI,oBAAM,kBAAkB,GAC5B,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB,EACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;SACjB,EACD,KAAK,EAAE;YACH,IAAI,EAAE,SAAS;SAClB,GACJ;CACJ,CAAC;AAEF,MAAM,yBAAyB,GAAG;IAC9B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACjC,UAAU,kCACH,oBAAW,KACd,IAAI,oBAAM,kBAAkB,IAC/B;CACJ,CAAC;AAEF,MAAM,2BAA2B,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3B,UAAU,kCACH,uBAAuB,KAC1B,IAAI,oBAAM,kBAAkB,GAC5B,KAAK,EAAE,IAAA,qBAAa,EAAC,uBAAuB,CAAC,GAChD;CACJ,CAAC;AAEF,MAAM,mBAAmB,GAAG;IACxB,KAAK,EAAE;QACH,IAAA,qBAAa,EAAC,uBAAuB,CAAC;QACtC,IAAA,qBAAa,EAAC,yBAAyB,CAAC;QACxC,IAAA,qBAAa,EAAC,2BAA2B,CAAC;KAC7C;CACJ,CAAC;AAEW,QAAA,qBAAqB,GAAG;IACjC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,WAAW,CAAC;IACvB,UAAU,EAAE;QACR,SAAS,EAAE,mBAAmB;QAC9B,UAAU,EAAE,mBAAmB;QAC/B,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport {ImageProps, imageUrlPattern} from '../components/Image/schema';\nimport {ButtonProps} from '../schema/validators/common';\nimport {filteredArray} from '../schema/validators/utils';\n\nconst NavigationItemType = {\n type: 'string',\n enum: ['link', 'button', 'dropdown'],\n};\n\nexport const LogoProps = {\n type: 'object',\n additionalProperties: false,\n required: ['icon'],\n properties: {\n icon: ImageProps,\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n },\n};\n\nconst NavigationItemBaseProps = {\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n icon: {\n type: 'string',\n pattern: imageUrlPattern,\n },\n iconSize: {\n type: 'number',\n },\n};\n\nconst NavigationItemBaseLinkProps = omit(NavigationItemBaseProps, ['url']);\n\nconst NavigationLinkItemProps = {\n type: 'object',\n additionalProperties: false,\n required: ['type', 'text'],\n properties: {\n ...NavigationItemBaseLinkProps,\n type: {...NavigationItemType},\n url: {\n type: 'string',\n },\n target: {\n type: 'string',\n },\n arrow: {\n type: 'boolean',\n },\n },\n};\n\nconst NavigationButtonItemProps = {\n type: 'object',\n additionalProperties: false,\n required: ['type', 'text', 'url'],\n properties: {\n ...ButtonProps,\n type: {...NavigationItemType},\n },\n};\n\nconst NavigationDropdownItemProps = {\n type: 'object',\n additionalProperties: false,\n required: ['type', 'items'],\n properties: {\n ...NavigationItemBaseProps,\n type: {...NavigationItemType},\n items: filteredArray(NavigationLinkItemProps),\n },\n};\n\nconst NavigationItemProps = {\n oneOf: [\n filteredArray(NavigationLinkItemProps),\n filteredArray(NavigationButtonItemProps),\n filteredArray(NavigationDropdownItemProps),\n ],\n};\n\nexport const NavigationHeaderProps = {\n type: 'object',\n additionalProperties: false,\n required: ['leftItems'],\n properties: {\n leftItems: NavigationItemProps,\n rightItems: NavigationItemProps,\n iconSize: {\n type: 'number',\n },\n },\n};\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../src","sources":["navigation/schema.ts"],"names":[],"mappings":";;;;AAAA,kEAA+B;AAE/B,0DAAuE;AACvE,2DAAwD;AACxD,yDAAyD;AAEzD,MAAM,kBAAkB,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC;CACvC,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,UAAU,EAAE;QACR,IAAI,EAAE,mBAAU;QAChB,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;QACD,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC;AAEF,MAAM,uBAAuB,GAAG;IAC5B,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,MAAM;KACtB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,QAAQ;KACjB;IACD,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,wBAAe;KAC3B;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,QAAQ;KACjB;CACJ,CAAC;AAEF,MAAM,2BAA2B,GAAG,IAAA,cAAI,EAAC,uBAAuB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAE3E,MAAM,uBAAuB,GAAG;IAC5B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAC1B,UAAU,kCACH,2BAA2B,KAC9B,IAAI,oBAAM,kBAAkB,GAC5B,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB,EACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;SACjB,EACD,KAAK,EAAE;YACH,IAAI,EAAE,SAAS;SAClB,GACJ;CACJ,CAAC;AAEF,MAAM,yBAAyB,GAAG;IAC9B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;IACjC,UAAU,kCACH,oBAAW,KACd,IAAI,oBAAM,kBAAkB,IAC/B;CACJ,CAAC;AAEF,MAAM,2BAA2B,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;IAC3B,UAAU,kCACH,uBAAuB,KAC1B,IAAI,oBAAM,kBAAkB,GAC5B,KAAK,EAAE,IAAA,qBAAa,EAAC,uBAAuB,CAAC,GAChD;CACJ,CAAC;AAEF,MAAM,mBAAmB,GAAG;IACxB,KAAK,EAAE;QACH,IAAA,qBAAa,EAAC,uBAAuB,CAAC;QACtC,IAAA,qBAAa,EAAC,yBAAyB,CAAC;QACxC,IAAA,qBAAa,EAAC,2BAA2B,CAAC;KAC7C;CACJ,CAAC;AAEW,QAAA,qBAAqB,GAAG;IACjC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,WAAW,CAAC;IACvB,UAAU,EAAE;QACR,SAAS,EAAE,mBAAmB;QAC9B,UAAU,EAAE,mBAAmB;QAC/B,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport {ImageProps, imageUrlPattern} from '../components/Image/schema';\nimport {ButtonProps} from '../schema/validators/common';\nimport {filteredArray} from '../schema/validators/utils';\n\nconst NavigationItemType = {\n type: 'string',\n enum: ['link', 'button', 'dropdown'],\n};\n\nexport const LogoProps = {\n type: 'object',\n additionalProperties: false,\n required: ['icon'],\n properties: {\n icon: ImageProps,\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n },\n};\n\nconst NavigationItemBaseProps = {\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n icon: {\n type: 'string',\n pattern: imageUrlPattern,\n },\n iconSize: {\n type: 'number',\n },\n};\n\nconst NavigationItemBaseLinkProps = omit(NavigationItemBaseProps, ['url']);\n\nconst NavigationLinkItemProps = {\n type: 'object',\n additionalProperties: false,\n required: ['type', 'text'],\n properties: {\n ...NavigationItemBaseLinkProps,\n type: {...NavigationItemType},\n url: {\n type: 'string',\n },\n target: {\n type: 'string',\n },\n arrow: {\n type: 'boolean',\n },\n },\n};\n\nconst NavigationButtonItemProps = {\n type: 'object',\n additionalProperties: false,\n required: ['type', 'text', 'url'],\n properties: {\n ...ButtonProps,\n type: {...NavigationItemType},\n },\n};\n\nconst NavigationDropdownItemProps = {\n type: 'object',\n additionalProperties: false,\n required: ['type', 'items'],\n properties: {\n ...NavigationItemBaseProps,\n type: {...NavigationItemType},\n items: filteredArray(NavigationLinkItemProps),\n },\n};\n\nconst NavigationItemProps = {\n oneOf: [\n filteredArray(NavigationLinkItemProps),\n filteredArray(NavigationButtonItemProps),\n filteredArray(NavigationDropdownItemProps),\n ],\n};\n\nexport const NavigationHeaderProps = {\n type: 'object',\n additionalProperties: false,\n required: ['leftItems'],\n properties: {\n leftItems: NavigationItemProps,\n rightItems: NavigationItemProps,\n iconSize: {\n type: 'number',\n },\n },\n};\n"]}
@@ -29,7 +29,7 @@ export declare function getNavigationItemWithIconSize(iconSize?: number): (item:
29
29
  analyticsEvents?: import("../models/index.js").AnalyticsEventsProp;
30
30
  size?: import("@gravity-ui/uikit").ButtonSize | undefined;
31
31
  width?: import("@gravity-ui/uikit").ButtonWidth | undefined;
32
- extraProps?: React.ButtonHTMLAttributes<HTMLButtonElement> | Omit<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> | React.AnchorHTMLAttributes<HTMLAnchorElement> | undefined;
32
+ extraProps?: React.AnchorHTMLAttributes<HTMLAnchorElement> | React.ButtonHTMLAttributes<HTMLButtonElement> | undefined;
33
33
  } | {
34
34
  type: NavigationItemType.Dropdown;
35
35
  items: NavigationLinkItem[];
@@ -9,7 +9,7 @@ exports.mediaDirection = ['media-content', 'content-media'];
9
9
  exports.textSize = ['s', 'm', 'l'];
10
10
  exports.containerSizesArray = ['sm', 'md', 'lg', 'xl', 'all'];
11
11
  exports.sliderSizesArray = ['sm', 'md', 'lg', 'xl'];
12
- exports.contentSizes = ['s', 'l'];
12
+ exports.contentSizes = ['s', 'm', 'l'];
13
13
  exports.contentTextWidth = ['s', 'm', 'l'];
14
14
  exports.videoTypes = ['default', 'player'];
15
15
  exports.playIconTypes = ['default', 'text'];
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"../../../../src","sources":["schema/validators/common.ts"],"names":[],"mappings":";;;AA4cA,8BAsBC;AAleD,6DAAyD;AACzD,kDAMsB;AAEtB,sCAA6C;AAEhC,QAAA,cAAc,GAAG,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AACpD,QAAA,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3B,QAAA,mBAAmB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACtD,QAAA,gBAAgB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC5C,QAAA,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC1B,QAAA,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAEnC,QAAA,UAAU,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACnC,QAAA,aAAa,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACpC,QAAA,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClC,QAAA,kBAAkB,GAAG,CAAC,+BAAsB,CAAC,OAAO,EAAE,+BAAsB,CAAC,MAAM,CAAC,CAAC;AACrF,QAAA,aAAa,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AAE3C,QAAA,WAAW,GAAG,EAAC,IAAI,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,EAAC,CAAC;AAC7E,QAAA,UAAU,GAAG,EAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAC,CAAC;AACvD,QAAA,aAAa,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAC7C,QAAA,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAS,CAAC,CAAC;AACtC,QAAA,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAC5B,QAAA,kBAAkB,GAAG;IAC9B,2BAAkB,CAAC,cAAc;IACjC,2BAAkB,CAAC,mBAAmB;CACzC,CAAC;AACW,QAAA,+BAA+B,GAAG;IAC3C,wCAA+B,CAAC,MAAM;IACtC,wCAA+B,CAAC,IAAI;IACpC,wCAA+B,CAAC,KAAK;CACxC,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,IAAI,EAAE,EAAE;IACR,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;KACjB;CACJ,CAAC;AAEW,QAAA,eAAe,GAAG;IAC3B,eAAe,EAAE;QACb,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;KAC9B;CACJ,CAAC;AAEW,QAAA,oBAAoB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE,2BAAmB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,iCAAK,GAAG,KAAE,CAAC,IAAI,CAAC,EAAE,kBAAU,IAAE,EAAE,EAAE,CAAC;CAC5F,CAAC;AAEW,QAAA,iBAAiB,GAAG;IAC7B,KAAK,EAAE;QACH;YACI,IAAI,EAAE,QAAQ;YACd,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE,wBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,iCAAK,GAAG,KAAE,CAAC,IAAI,CAAC,EAAE,kBAAU,IAAE,EAAE,EAAE,CAAC;YACtF,UAAU,EAAE,QAAQ;SACvB;QACD;YACI,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,UAAU;SACzB;KACJ;CACJ,CAAC;AAEW,QAAA,eAAe,GAAG;IAC3B,QAAQ,EAAE;QACN,IAAI,EAAE,SAAS;KAClB;CACJ,CAAC;AAEW,QAAA,aAAa,GAAG;IACzB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,EAAC,IAAI,EAAE,4BAA4B,EAAC;CAC9C,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAC9B,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,EAAC,IAAI,EAAE,yBAAyB,EAAC;CAC3C,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,UAAU,EAAE;QACR,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;SACjB;QACD,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC;AAEW,QAAA,eAAe,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACR,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,qBAAa;SACtB;QACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,sBAAc;SACvB;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;KACJ;CACJ,CAAC;AAEW,QAAA,0BAA0B,GAAG;IACtC,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACR,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,0BAAkB;SAC3B;QACD,eAAe,EAAE;YACb,IAAI,EAAE,SAAS;SAClB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,uCAA+B;SACxC;KACJ;CACJ,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,KAAK,CAAC;IACjB,UAAU,EAAE;QACR,GAAG,EAAE;YACD,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,IAAI,EAAE;YACF,KAAK,EAAE;gDAEI,iBAAS,KACZ,UAAU,EAAE,SAAS;gBAEzB;oBACI,IAAI,EAAE,SAAS;oBACf,UAAU,EAAE,SAAS;iBACxB;aACJ;SACJ;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,kBAAU;SACnB;QACD,KAAK,EAAE;YACH,IAAI,EAAE,SAAS;SAClB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,SAAS;SAClB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;SACjB;QACD,UAAU,EAAE,uBAAe;QAC3B,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,0BAAkB;SAC3B;QACD,qBAAqB,EAAE,kCAA0B;QACjD,SAAS,EAAE;YACP,IAAI,EAAE,QAAQ;SACjB;QACD,OAAO,EAAE;YACL,IAAI,EAAE,SAAS;SAClB;KACJ;CACJ,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEW,QAAA,YAAY,GAAG;IACxB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC;CACnC,CAAC;AAEW,QAAA,mBAAmB,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,IAAI,CAAC;IAChB,UAAU,EAAE;QACR,EAAE,EAAE;YACA,IAAI,EAAE,QAAQ;SACjB;QACD,KAAK,EAAE,kBAAU;KACpB;CACJ,CAAC;AAEW,QAAA,aAAa,GAAG;IACzB,KAAK,EAAE;QACH;YACI,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;SACnB;wCAEM,2BAAmB,KACtB,UAAU,EAAE,SAAS;KAE5B;CACJ,CAAC;AAEW,QAAA,eAAe,GAAG;IAC3B,oBAAoB,EAAE,KAAK;IAC3B,UAAU,kCACH,uBAAe,KAClB,KAAK,EAAE,mBAAU,EACjB,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;SACjB,EACD,KAAK,EAAE,kBAAU,EACjB,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;SACjB,EACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC;SAC7B,EACD,QAAQ,EAAE;YACN,IAAI,EAAE,SAAS;SAClB,EACD,cAAc,EAAE;YACZ,IAAI,EAAE,SAAS;SAClB,GACJ;CACJ,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;IACzB,UAAU,kCACH,iBAAS,KACZ,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB,EACD,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB,EACD,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;SACjB,EACD,KAAK,EAAE;YACH,IAAI,EAAE,SAAS;SAClB,EACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC;SACxC,EACD,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,gBAAQ;SACjB,EACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;SAC/C,EACD,eAAe,EAAE;YACb,KAAK,EAAE;gDAEI,4BAAoB,KACvB,UAAU,EAAE,QAAQ;gBAExB;oBACI,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,4BAAoB;oBAC3B,UAAU,EAAE,MAAM;iBACrB;aACJ;SACJ,GACJ;CACJ,CAAC;AAEW,QAAA,aAAa,GAAG;IACzB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE;QACR,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;SACjB;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,qBAAa;SACtB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,gBAAQ;SACjB;QACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,qBAAa;SACtB;KACJ;CACJ,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;IACrC,UAAU,EAAE;QACR,SAAS,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;QACD,UAAU,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;QACD,MAAM,EAAE,mBAAU;QAClB,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,KAAK;SACrB;KACJ;CACJ,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,MAAM;KACtB;IACD,GAAG,EAAE;QACD,IAAI,EAAE,QAAQ;KACjB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,QAAQ;KACjB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACF,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,sBAAsB;YAC5B,GAAG;YACH,GAAG,EAAE,sBAAsB;YAC3B,GAAG;YACH,GAAG;YACH,IAAI;YACJ,MAAM,EAAE,sBAAsB;YAC9B,OAAO,EAAE,uBAAuB;SACnC;KACJ;IACD,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACF,QAAQ;YACR,QAAQ;YACR,UAAU;YACV,eAAe;YACf,iBAAiB;YACjB,QAAQ;YACR,MAAM;YACN,WAAW;YACX,aAAa;YACb,gBAAgB;YAChB,OAAO;YACP,iBAAiB;YACjB,mBAAmB;YACnB,eAAe;YACf,MAAM,EAAE,kCAAkC;YAC1C,QAAQ,EAAE,6BAA6B;YACvC,gBAAgB,EAAE,sCAAsC;YACxD,WAAW,EAAE,2BAA2B;YACxC,aAAa,EAAE,sCAAsC;YACrD,gBAAgB,EAAE,oCAAoC;YACtD,QAAQ,EAAE,2BAA2B;YACrC,WAAW,EAAE,2BAA2B;YACxC,WAAW;YACX,aAAa;YACb,OAAO;YACP,QAAQ;YACR,YAAY;SACf;KACJ;IACD,GAAG,EAAE;QACD,KAAK,EAAE;YACH;gBACI,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,KAAK;aACpB;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,QAAQ,EAAE,CAAC,MAAM,CAAC;gBAClB,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;qBACjB;oBACD,QAAQ,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;qBAC1B;oBACD,GAAG,EAAE;wBACD,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,MAAM;qBACtB;iBACJ;gBACD,UAAU,EAAE,SAAS;aACxB;SACJ;KACJ;IACD,eAAe,EAAE;QACb,KAAK,EAAE;4CACC,4BAAoB,KAAE,UAAU,EAAE,QAAQ;YAC9C,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,4BAAoB,EAAE,UAAU,EAAE,MAAM,EAAC;SACnE;KACJ;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC;KAC/C;IACD,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;KACxB;CACJ,CAAC;AAEW,QAAA,SAAS,GAAG;IACrB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACR,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;KACJ;CACJ,CAAC;AAEF,SAAgB,SAAS,CAAmB,KAAQ;IAChD,OAAO;QACH,KAAK,EAAE;4CAEI,KAAK,KACR,UAAU,EAAE,UAAU;YAE1B;gBACI,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,QAAQ,EAAE,CAAC,cAAK,CAAC,KAAK,CAAC;gBACvB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,cAAK,CAAC,CAAC,MAAM,CACnC,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,iCAChB,MAAM,KACT,CAAC,SAAS,CAAC,EAAE,KAAK,IACpB,EACF,EAAE,CACL;gBACD,UAAU,EAAE,QAAQ;aACvB;SACJ;KACJ,CAAC;AACN,CAAC;AAEY,QAAA,WAAW,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;IACzB,UAAU,EAAE;QACR,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;QACD,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC;AAEW,QAAA,cAAc,mCACpB,iBAAS,KACZ,MAAM,EAAE,mBAAW,EACnB,OAAO,EAAE;QACL,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,2BAAmB;KAC5B,EACD,aAAa,EAAE;QACX,IAAI,EAAE,SAAS;KAClB,EACD,OAAO,EAAE;QACL,IAAI,EAAE,QAAQ;KACjB,EACD,MAAM,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,oBAAoB,EAAE,KAAK;QAC3B,UAAU,EAAE;YACR,GAAG,EAAE,mBAAW;YAChB,MAAM,EAAE,mBAAW;SACtB;KACJ,IACH;AAEW,QAAA,UAAU,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,MAAM,CAAC;IAClB,UAAU,EAAE;QACR,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,MAAM;SACtB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,gBAAQ;SACjB;QACD,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB;QACD,QAAQ,EAAE;YACN,IAAI,EAAE,QAAQ;SACjB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,SAAS;SAClB;KACJ;CACJ,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE,mBAAW;IACvB,EAAE,EAAE;QACA,UAAU,EAAE;YACR,KAAK,EAAE;gBACH,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;aACrC;SACJ;KACJ;IACD,IAAI,EAAE;QACF,QAAQ,EAAE,CAAC,KAAK,CAAC;KACpB;IACD,IAAI,EAAE;QACF,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;KAC5B;CACJ,CAAC;AAEF,MAAM,WAAW,GAAG;IAChB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,KAAK,CAAC;IACjB,UAAU,EAAE;QACR,GAAG,EAAE;YACD,IAAI,EAAE,QAAQ;SACjB;QACD,IAAI,EAAE;YACF,IAAI,EAAE,QAAQ;SACjB;QACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;SACjB;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;SACjB;QACD,KAAK,EAAE;YACH,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,KAAK,EAAE;QACH,IAAI,EAAE,QAAQ;KACjB;IACD,KAAK,EAAE;QACH,KAAK,EAAE;4CACC,mBAAU,KAAE,UAAU,EAAE,QAAQ;YACpC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAU,EAAE,UAAU,EAAE,MAAM,EAAC;SACzD;KACJ;IACD,+BAA+B,EAAE;QAC7B,IAAI,EAAE,SAAS;KAClB;IACD,KAAK,EAAE,kBAAU;IACjB,OAAO,EAAE;QACL,IAAI,EAAE,QAAQ;KACjB;IACD,WAAW,EAAE;QACT,IAAI,EAAE,QAAQ;KACjB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,SAAS;KAClB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,SAAS;KAClB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,QAAQ;KACjB;IACD,UAAU,EAAE;QACR,IAAI,EAAE,QAAQ;KACjB;IACD,QAAQ,EAAE,qBAAa;IACvB,UAAU,EAAE;QACR,IAAI,EAAE,SAAS;KAClB;IACD,eAAe,EAAE;QACb,KAAK,EAAE,CAAC,4BAAoB,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,4BAAoB,EAAC,CAAC;KAC9E;IACD,KAAK,EAAE;QACH,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC1B,OAAO,EAAE,QAAQ;KACpB;IACD,MAAM,oBACC,WAAW,CACjB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,SAAS;KAClB;CACJ,CAAC;AAEW,QAAA,eAAe,GAAG;IAC3B,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE;QACR,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;SACjB;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;SACjB;QACD,SAAS,EAAE;YACP,IAAI,EAAE,QAAQ;SACjB;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,QAAQ;SACjB;KACJ;CACJ,CAAC;AAEW,QAAA,UAAU,GAAG;IACtB,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE;QACR,UAAU,EAAE;YACR,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC;SAC1B;QACD,OAAO,EAAE;YACL,IAAI,EAAE,QAAQ;SACjB;QACD,KAAK,EAAE,uBAAe;KACzB;CACJ,CAAC;AAEW,QAAA,QAAQ,GAAG;IACpB,IAAI,EAAE;QACF,IAAI,EAAE,QAAQ;KACjB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,QAAQ;KACjB;IACD,EAAE,EAAE;QACA,IAAI,EAAE,QAAQ;KACjB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,kBAAU;KACpB;CACJ,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC;CACnC,CAAC;AAEW,QAAA,QAAQ,GAAG;IACpB,MAAM,EAAE,mBAAW;CACtB,CAAC;AAEW,QAAA,gBAAgB,GAAG;IAC5B,KAAK,EAAE;QACH,KAAK,EAAE;YACH;gBACI,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,MAAM;aACrB;4CAEM,kBAAU,KACb,UAAU,EAAE,SAAS;SAE5B;KACJ;IACD,WAAW,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,KAAK;QAClB,SAAS,EAAE,UAAU;KACxB;CACJ,CAAC","sourcesContent":["import {ImageProps} from '../../components/Image/schema';\nimport {\n CustomControlsButtonPositioning,\n CustomControlsType,\n MediaVideoControlsType,\n QuoteType,\n Theme,\n} from '../../models';\n\nimport {AnalyticsEventSchema} from './event';\n\nexport const mediaDirection = ['media-content', 'content-media'];\nexport const textSize = ['s', 'm', 'l'];\nexport const containerSizesArray = ['sm', 'md', 'lg', 'xl', 'all'];\nexport const sliderSizesArray = ['sm', 'md', 'lg', 'xl'];\nexport const contentSizes = ['s', 'l'];\nexport const contentTextWidth = ['s', 'm', 'l'];\n\nexport const videoTypes = ['default', 'player'];\nexport const playIconTypes = ['default', 'text'];\nexport const playIconThemes = ['blue', 'grey'];\nexport const videoControlsTypes = [MediaVideoControlsType.Default, MediaVideoControlsType.Custom];\nexport const fileLinkTypes = ['vertical', 'horizontal'];\n\nexport const dividerEnum = {enum: ['0', 'xxs', 'xs', 's', 'm', 'l', 'xl', 'xxl', 'xxxl']};\nexport const sizeNumber = {type: 'number', maximum: 12, minimum: 1};\nexport const contentThemes = ['default', 'dark', 'light'];\nexport const quoteTypes = Object.values(QuoteType);\nexport const mediaView = ['fit', 'full'];\nexport const customControlsType = [\n CustomControlsType.WithMuteButton,\n CustomControlsType.WithPlayPauseButton,\n];\nexport const customControlsButtonPositioning = [\n CustomControlsButtonPositioning.Center,\n CustomControlsButtonPositioning.Left,\n CustomControlsButtonPositioning.Right,\n];\n\nexport const BaseProps = {\n type: {},\n when: {\n type: 'string',\n },\n};\n\nexport const CardLayoutProps = {\n controlPosition: {\n type: 'string',\n enum: ['content', 'footer'],\n },\n};\n\nexport const containerSizesObject = {\n type: 'object',\n additionalProperties: false,\n properties: containerSizesArray.reduce((acc, size) => ({...acc, [size]: sizeNumber}), {}),\n};\n\nexport const sliderSizesObject = {\n oneOf: [\n {\n type: 'object',\n additionalProperties: false,\n properties: sliderSizesArray.reduce((acc, size) => ({...acc, [size]: sizeNumber}), {}),\n optionName: 'custom',\n },\n {\n type: 'number',\n optionName: 'constant',\n },\n ],\n};\n\nexport const AnimatableProps = {\n animated: {\n type: 'boolean',\n },\n};\n\nexport const ChildrenProps = {\n type: 'array',\n items: {$ref: 'self#/definitions/children'},\n};\n\nexport const ChildrenCardsProps = {\n type: 'array',\n items: {$ref: 'self#/definitions/cards'},\n};\n\nexport const LoopProps = {\n type: 'object',\n additionalProperties: false,\n required: ['start'],\n properties: {\n start: {\n type: 'number',\n },\n end: {\n type: 'number',\n },\n },\n};\n\nexport const PlayButtonProps = {\n type: 'object',\n additionalProperties: false,\n properties: {\n type: {\n type: 'string',\n enum: playIconTypes,\n },\n theme: {\n type: 'string',\n enum: playIconThemes,\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n },\n};\n\nexport const CustomControlsOptionsProps = {\n type: 'object',\n additionalProperties: false,\n properties: {\n type: {\n type: 'string',\n enum: customControlsType,\n },\n muteButtonShown: {\n type: 'boolean',\n },\n positioning: {\n type: 'string',\n enum: customControlsButtonPositioning,\n },\n },\n};\n\nexport const VideoProps = {\n type: 'object',\n additionalProperties: false,\n required: ['src'],\n properties: {\n src: {\n type: 'array',\n items: {\n type: 'string',\n },\n },\n loop: {\n oneOf: [\n {\n ...LoopProps,\n optionName: 'options',\n },\n {\n type: 'boolean',\n optionName: 'enabled',\n },\n ],\n },\n type: {\n type: 'string',\n enum: videoTypes,\n },\n muted: {\n type: 'boolean',\n },\n autoplay: {\n type: 'boolean',\n },\n elapsedTime: {\n type: 'number',\n },\n playButton: PlayButtonProps,\n controls: {\n type: 'string',\n enum: videoControlsTypes,\n },\n customControlsOptions: CustomControlsOptionsProps,\n ariaLabel: {\n type: 'string',\n },\n contain: {\n type: 'boolean',\n },\n },\n};\n\nexport const ThemeProps = {\n type: 'string',\n enum: ['light', 'dark'],\n};\n\nexport const JustifyProps = {\n type: 'string',\n enum: ['start', 'center', 'end'],\n};\n\nexport const DataLensObjectProps = {\n type: 'object',\n additionalProperties: false,\n required: ['id'],\n properties: {\n id: {\n type: 'string',\n },\n theme: ThemeProps,\n },\n};\n\nexport const DataLensProps = {\n oneOf: [\n {\n type: 'string',\n optionName: 'id',\n },\n {\n ...DataLensObjectProps,\n optionName: 'options',\n },\n ],\n};\n\nexport const BackgroundProps = {\n additionalProperties: false,\n properties: {\n ...AnimatableProps,\n image: ImageProps,\n color: {\n type: 'string',\n },\n video: VideoProps,\n height: {\n type: 'number',\n },\n size: {\n type: 'string',\n enum: ['contain', 'cover'],\n },\n parallax: {\n type: 'boolean',\n },\n fullWidthMedia: {\n type: 'boolean',\n },\n },\n};\n\nexport const LinkProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text', 'url'],\n properties: {\n ...BaseProps,\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n arrow: {\n type: 'boolean',\n },\n theme: {\n type: 'string',\n enum: ['back', 'file-link', 'normal'],\n },\n textSize: {\n type: 'string',\n enum: textSize,\n },\n target: {\n type: 'string',\n enum: ['_blank', '_parent', '_top', '_self'],\n },\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n },\n};\n\nexport const FileLinkProps = {\n type: 'object',\n additionalProperties: false,\n required: ['href', 'text'],\n properties: {\n href: {\n type: 'string',\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n type: {\n type: 'string',\n enum: fileLinkTypes,\n },\n textSize: {\n type: 'string',\n enum: textSize,\n },\n theme: {\n type: 'string',\n enum: contentThemes,\n },\n },\n};\n\nexport const authorItem = {\n type: 'object',\n required: ['firstName', 'secondName'],\n properties: {\n firstName: {\n type: 'string',\n contentType: 'text',\n },\n secondName: {\n type: 'string',\n contentType: 'text',\n },\n avatar: ImageProps,\n description: {\n type: 'string',\n contentType: 'yfm',\n },\n },\n};\n\nexport const ButtonProps = {\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n primary: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: [\n 'xs', // deprecated, use 's'\n 'ns', // deprecated, use 's'\n 's',\n 'n', // deprecated, use 'l'\n 'm',\n 'l',\n 'xl',\n 'head', // deprecated, use 'l'\n 'promo', // deprecated, use 'xl'\n ],\n },\n theme: {\n type: 'string',\n enum: [\n 'normal',\n 'action',\n 'outlined',\n 'outlined-info',\n 'outlined-danger',\n 'raised',\n 'flat',\n 'flat-info',\n 'flat-danger',\n 'flat-secondary',\n 'clear',\n 'normal-contrast',\n 'outlined-contrast',\n 'flat-contrast',\n 'link', // deprecated, use 'outlined-info'\n 'pseudo', // deprecated, use 'outlined'\n 'pseudo-special', // deprecated, use 'outlined-contrast'\n 'websearch', // deprecated, use 'action'\n 'normal-dark', // deprecated, use 'outlined-contrast'\n 'normal-special', // deprecated, use 'normal-contrast'\n 'accent', // deprecated, use 'action'\n 'dark-grey', // deprecated, use 'github'\n 'app-store',\n 'google-play',\n 'scale',\n 'github',\n 'monochrome',\n ],\n },\n img: {\n oneOf: [\n {\n type: 'string',\n optionName: 'url',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: ['data'],\n properties: {\n data: {\n type: 'string',\n },\n position: {\n type: 'string',\n enum: ['left', 'right'],\n },\n alt: {\n type: 'string',\n contentType: 'text',\n },\n },\n optionName: 'options',\n },\n ],\n },\n analyticsEvents: {\n oneOf: [\n {...AnalyticsEventSchema, optionName: 'single'},\n {type: 'array', items: AnalyticsEventSchema, optionName: 'list'},\n ],\n },\n target: {\n type: 'string',\n enum: ['_self', '_blank', '_parent', '_top'],\n },\n width: {\n type: 'string',\n enum: ['auto', 'max'],\n },\n};\n\nexport const MenuProps = {\n type: 'object',\n additionalProperties: false,\n properties: {\n title: {\n type: 'string',\n contentType: 'text',\n },\n },\n};\n\nexport function withTheme<T extends object>(value: T) {\n return {\n oneOf: [\n {\n ...value,\n optionName: 'no theme',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: [Theme.Light],\n properties: Object.values(Theme).reduce(\n (result, themeName) => ({\n ...result,\n [themeName]: value,\n }),\n {},\n ),\n optionName: 'themes',\n },\n ],\n };\n}\n\nexport const AnchorProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text', 'url'],\n properties: {\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n },\n};\n\nexport const BlockBaseProps = {\n ...BaseProps,\n anchor: AnchorProps,\n visible: {\n type: 'string',\n enum: containerSizesArray,\n },\n resetPaddings: {\n type: 'boolean',\n },\n context: {\n type: 'string',\n },\n indent: {\n type: 'object',\n additionalProperties: false,\n properties: {\n top: dividerEnum,\n bottom: dividerEnum,\n },\n },\n};\n\nexport const TitleProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text'],\n properties: {\n text: {\n type: 'string',\n contentType: 'text',\n },\n textSize: {\n type: 'string',\n enum: textSize,\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n resetMargin: {\n type: 'boolean',\n },\n },\n};\n\nexport const ButtonBlock = {\n type: 'object',\n additionalProperties: false,\n properties: ButtonProps,\n if: {\n properties: {\n theme: {\n enum: ['app-store', 'google-play'],\n },\n },\n },\n then: {\n required: ['url'],\n },\n else: {\n required: ['text', 'url'],\n },\n};\n\nconst IframeProps = {\n type: 'object',\n additionalProperties: false,\n required: ['src'],\n properties: {\n src: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n height: {\n type: 'number',\n },\n width: {\n type: 'number',\n },\n },\n};\n\nexport const MediaProps = {\n color: {\n type: 'string',\n },\n image: {\n oneOf: [\n {...ImageProps, optionName: 'single'},\n {type: 'array', items: ImageProps, optionName: 'list'},\n ],\n },\n disableImageSliderForArrayInput: {\n type: 'boolean',\n },\n video: VideoProps,\n youtube: {\n type: 'string',\n },\n videoIframe: {\n type: 'string',\n },\n autoplay: {\n type: 'boolean',\n },\n parallax: {\n type: 'boolean',\n },\n height: {\n type: 'number',\n },\n previewImg: {\n type: 'string',\n },\n dataLens: DataLensProps,\n fullscreen: {\n type: 'boolean',\n },\n analyticsEvents: {\n anyOf: [AnalyticsEventSchema, {type: 'array', items: AnalyticsEventSchema}],\n },\n ratio: {\n type: ['number', 'string'],\n pattern: '^auto$',\n },\n iframe: {\n ...IframeProps,\n },\n margins: {\n type: 'boolean',\n },\n};\n\nexport const YMapMarkerLabel = {\n type: 'object',\n required: [],\n properties: {\n iconCaption: {\n type: 'string',\n },\n iconContent: {\n type: 'string',\n },\n iconColor: {\n type: 'string',\n },\n preset: {\n type: 'string',\n },\n },\n};\n\nexport const YMapMarker = {\n type: 'object',\n additionalProperties: false,\n required: [],\n properties: {\n coordinate: {\n type: 'array',\n items: {type: 'number'},\n },\n address: {\n type: 'string',\n },\n label: YMapMarkerLabel,\n },\n};\n\nexport const MapProps = {\n zoom: {\n type: 'number',\n },\n address: {\n type: 'string',\n },\n id: {\n type: 'string',\n },\n markers: {\n type: 'array',\n items: YMapMarker,\n },\n};\n\nexport const BorderProps = {\n type: 'string',\n enum: ['line', 'shadow', 'none'],\n};\n\nexport const CardBase = {\n border: BorderProps,\n};\n\nexport const BlockHeaderProps = {\n title: {\n oneOf: [\n {\n type: 'string',\n optionName: 'text',\n },\n {\n ...TitleProps,\n optionName: 'options',\n },\n ],\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n inputType: 'textarea',\n },\n};\n"]}
1
+ {"version":3,"file":"common.js","sourceRoot":"../../../../src","sources":["schema/validators/common.ts"],"names":[],"mappings":"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","sourcesContent":["import {ImageProps} from '../../components/Image/schema';\nimport {\n CustomControlsButtonPositioning,\n CustomControlsType,\n MediaVideoControlsType,\n QuoteType,\n Theme,\n} from '../../models';\n\nimport {AnalyticsEventSchema} from './event';\n\nexport const mediaDirection = ['media-content', 'content-media'];\nexport const textSize = ['s', 'm', 'l'];\nexport const containerSizesArray = ['sm', 'md', 'lg', 'xl', 'all'];\nexport const sliderSizesArray = ['sm', 'md', 'lg', 'xl'];\nexport const contentSizes = ['s', 'm', 'l'];\nexport const contentTextWidth = ['s', 'm', 'l'];\n\nexport const videoTypes = ['default', 'player'];\nexport const playIconTypes = ['default', 'text'];\nexport const playIconThemes = ['blue', 'grey'];\nexport const videoControlsTypes = [MediaVideoControlsType.Default, MediaVideoControlsType.Custom];\nexport const fileLinkTypes = ['vertical', 'horizontal'];\n\nexport const dividerEnum = {enum: ['0', 'xxs', 'xs', 's', 'm', 'l', 'xl', 'xxl', 'xxxl']};\nexport const sizeNumber = {type: 'number', maximum: 12, minimum: 1};\nexport const contentThemes = ['default', 'dark', 'light'];\nexport const quoteTypes = Object.values(QuoteType);\nexport const mediaView = ['fit', 'full'];\nexport const customControlsType = [\n CustomControlsType.WithMuteButton,\n CustomControlsType.WithPlayPauseButton,\n];\nexport const customControlsButtonPositioning = [\n CustomControlsButtonPositioning.Center,\n CustomControlsButtonPositioning.Left,\n CustomControlsButtonPositioning.Right,\n];\n\nexport const BaseProps = {\n type: {},\n when: {\n type: 'string',\n },\n};\n\nexport const CardLayoutProps = {\n controlPosition: {\n type: 'string',\n enum: ['content', 'footer'],\n },\n};\n\nexport const containerSizesObject = {\n type: 'object',\n additionalProperties: false,\n properties: containerSizesArray.reduce((acc, size) => ({...acc, [size]: sizeNumber}), {}),\n};\n\nexport const sliderSizesObject = {\n oneOf: [\n {\n type: 'object',\n additionalProperties: false,\n properties: sliderSizesArray.reduce((acc, size) => ({...acc, [size]: sizeNumber}), {}),\n optionName: 'custom',\n },\n {\n type: 'number',\n optionName: 'constant',\n },\n ],\n};\n\nexport const AnimatableProps = {\n animated: {\n type: 'boolean',\n },\n};\n\nexport const ChildrenProps = {\n type: 'array',\n items: {$ref: 'self#/definitions/children'},\n};\n\nexport const ChildrenCardsProps = {\n type: 'array',\n items: {$ref: 'self#/definitions/cards'},\n};\n\nexport const LoopProps = {\n type: 'object',\n additionalProperties: false,\n required: ['start'],\n properties: {\n start: {\n type: 'number',\n },\n end: {\n type: 'number',\n },\n },\n};\n\nexport const PlayButtonProps = {\n type: 'object',\n additionalProperties: false,\n properties: {\n type: {\n type: 'string',\n enum: playIconTypes,\n },\n theme: {\n type: 'string',\n enum: playIconThemes,\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n },\n};\n\nexport const CustomControlsOptionsProps = {\n type: 'object',\n additionalProperties: false,\n properties: {\n type: {\n type: 'string',\n enum: customControlsType,\n },\n muteButtonShown: {\n type: 'boolean',\n },\n positioning: {\n type: 'string',\n enum: customControlsButtonPositioning,\n },\n },\n};\n\nexport const VideoProps = {\n type: 'object',\n additionalProperties: false,\n required: ['src'],\n properties: {\n src: {\n type: 'array',\n items: {\n type: 'string',\n },\n },\n loop: {\n oneOf: [\n {\n ...LoopProps,\n optionName: 'options',\n },\n {\n type: 'boolean',\n optionName: 'enabled',\n },\n ],\n },\n type: {\n type: 'string',\n enum: videoTypes,\n },\n muted: {\n type: 'boolean',\n },\n autoplay: {\n type: 'boolean',\n },\n elapsedTime: {\n type: 'number',\n },\n playButton: PlayButtonProps,\n controls: {\n type: 'string',\n enum: videoControlsTypes,\n },\n customControlsOptions: CustomControlsOptionsProps,\n ariaLabel: {\n type: 'string',\n },\n contain: {\n type: 'boolean',\n },\n },\n};\n\nexport const ThemeProps = {\n type: 'string',\n enum: ['light', 'dark'],\n};\n\nexport const JustifyProps = {\n type: 'string',\n enum: ['start', 'center', 'end'],\n};\n\nexport const DataLensObjectProps = {\n type: 'object',\n additionalProperties: false,\n required: ['id'],\n properties: {\n id: {\n type: 'string',\n },\n theme: ThemeProps,\n },\n};\n\nexport const DataLensProps = {\n oneOf: [\n {\n type: 'string',\n optionName: 'id',\n },\n {\n ...DataLensObjectProps,\n optionName: 'options',\n },\n ],\n};\n\nexport const BackgroundProps = {\n additionalProperties: false,\n properties: {\n ...AnimatableProps,\n image: ImageProps,\n color: {\n type: 'string',\n },\n video: VideoProps,\n height: {\n type: 'number',\n },\n size: {\n type: 'string',\n enum: ['contain', 'cover'],\n },\n parallax: {\n type: 'boolean',\n },\n fullWidthMedia: {\n type: 'boolean',\n },\n },\n};\n\nexport const LinkProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text', 'url'],\n properties: {\n ...BaseProps,\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n arrow: {\n type: 'boolean',\n },\n theme: {\n type: 'string',\n enum: ['back', 'file-link', 'normal'],\n },\n textSize: {\n type: 'string',\n enum: textSize,\n },\n target: {\n type: 'string',\n enum: ['_blank', '_parent', '_top', '_self'],\n },\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n },\n};\n\nexport const FileLinkProps = {\n type: 'object',\n additionalProperties: false,\n required: ['href', 'text'],\n properties: {\n href: {\n type: 'string',\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n type: {\n type: 'string',\n enum: fileLinkTypes,\n },\n textSize: {\n type: 'string',\n enum: textSize,\n },\n theme: {\n type: 'string',\n enum: contentThemes,\n },\n },\n};\n\nexport const authorItem = {\n type: 'object',\n required: ['firstName', 'secondName'],\n properties: {\n firstName: {\n type: 'string',\n contentType: 'text',\n },\n secondName: {\n type: 'string',\n contentType: 'text',\n },\n avatar: ImageProps,\n description: {\n type: 'string',\n contentType: 'yfm',\n },\n },\n};\n\nexport const ButtonProps = {\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n primary: {\n type: 'boolean',\n },\n size: {\n type: 'string',\n enum: [\n 'xs', // deprecated, use 's'\n 'ns', // deprecated, use 's'\n 's',\n 'n', // deprecated, use 'l'\n 'm',\n 'l',\n 'xl',\n 'head', // deprecated, use 'l'\n 'promo', // deprecated, use 'xl'\n ],\n },\n theme: {\n type: 'string',\n enum: [\n 'normal',\n 'action',\n 'outlined',\n 'outlined-info',\n 'outlined-danger',\n 'raised',\n 'flat',\n 'flat-info',\n 'flat-danger',\n 'flat-secondary',\n 'clear',\n 'normal-contrast',\n 'outlined-contrast',\n 'flat-contrast',\n 'link', // deprecated, use 'outlined-info'\n 'pseudo', // deprecated, use 'outlined'\n 'pseudo-special', // deprecated, use 'outlined-contrast'\n 'websearch', // deprecated, use 'action'\n 'normal-dark', // deprecated, use 'outlined-contrast'\n 'normal-special', // deprecated, use 'normal-contrast'\n 'accent', // deprecated, use 'action'\n 'dark-grey', // deprecated, use 'github'\n 'app-store',\n 'google-play',\n 'scale',\n 'github',\n 'monochrome',\n ],\n },\n img: {\n oneOf: [\n {\n type: 'string',\n optionName: 'url',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: ['data'],\n properties: {\n data: {\n type: 'string',\n },\n position: {\n type: 'string',\n enum: ['left', 'right'],\n },\n alt: {\n type: 'string',\n contentType: 'text',\n },\n },\n optionName: 'options',\n },\n ],\n },\n analyticsEvents: {\n oneOf: [\n {...AnalyticsEventSchema, optionName: 'single'},\n {type: 'array', items: AnalyticsEventSchema, optionName: 'list'},\n ],\n },\n target: {\n type: 'string',\n enum: ['_self', '_blank', '_parent', '_top'],\n },\n width: {\n type: 'string',\n enum: ['auto', 'max'],\n },\n};\n\nexport const MenuProps = {\n type: 'object',\n additionalProperties: false,\n properties: {\n title: {\n type: 'string',\n contentType: 'text',\n },\n },\n};\n\nexport function withTheme<T extends object>(value: T) {\n return {\n oneOf: [\n {\n ...value,\n optionName: 'no theme',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: [Theme.Light],\n properties: Object.values(Theme).reduce(\n (result, themeName) => ({\n ...result,\n [themeName]: value,\n }),\n {},\n ),\n optionName: 'themes',\n },\n ],\n };\n}\n\nexport const AnchorProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text', 'url'],\n properties: {\n text: {\n type: 'string',\n contentType: 'text',\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n },\n};\n\nexport const BlockBaseProps = {\n ...BaseProps,\n anchor: AnchorProps,\n visible: {\n type: 'string',\n enum: containerSizesArray,\n },\n resetPaddings: {\n type: 'boolean',\n },\n context: {\n type: 'string',\n },\n indent: {\n type: 'object',\n additionalProperties: false,\n properties: {\n top: dividerEnum,\n bottom: dividerEnum,\n },\n },\n};\n\nexport const TitleProps = {\n type: 'object',\n additionalProperties: false,\n required: ['text'],\n properties: {\n text: {\n type: 'string',\n contentType: 'text',\n },\n textSize: {\n type: 'string',\n enum: textSize,\n },\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n resetMargin: {\n type: 'boolean',\n },\n },\n};\n\nexport const ButtonBlock = {\n type: 'object',\n additionalProperties: false,\n properties: ButtonProps,\n if: {\n properties: {\n theme: {\n enum: ['app-store', 'google-play'],\n },\n },\n },\n then: {\n required: ['url'],\n },\n else: {\n required: ['text', 'url'],\n },\n};\n\nconst IframeProps = {\n type: 'object',\n additionalProperties: false,\n required: ['src'],\n properties: {\n src: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n height: {\n type: 'number',\n },\n width: {\n type: 'number',\n },\n },\n};\n\nexport const MediaProps = {\n color: {\n type: 'string',\n },\n image: {\n oneOf: [\n {...ImageProps, optionName: 'single'},\n {type: 'array', items: ImageProps, optionName: 'list'},\n ],\n },\n disableImageSliderForArrayInput: {\n type: 'boolean',\n },\n video: VideoProps,\n youtube: {\n type: 'string',\n },\n videoIframe: {\n type: 'string',\n },\n autoplay: {\n type: 'boolean',\n },\n parallax: {\n type: 'boolean',\n },\n height: {\n type: 'number',\n },\n previewImg: {\n type: 'string',\n },\n dataLens: DataLensProps,\n fullscreen: {\n type: 'boolean',\n },\n analyticsEvents: {\n anyOf: [AnalyticsEventSchema, {type: 'array', items: AnalyticsEventSchema}],\n },\n ratio: {\n type: ['number', 'string'],\n pattern: '^auto$',\n },\n iframe: {\n ...IframeProps,\n },\n margins: {\n type: 'boolean',\n },\n};\n\nexport const YMapMarkerLabel = {\n type: 'object',\n required: [],\n properties: {\n iconCaption: {\n type: 'string',\n },\n iconContent: {\n type: 'string',\n },\n iconColor: {\n type: 'string',\n },\n preset: {\n type: 'string',\n },\n },\n};\n\nexport const YMapMarker = {\n type: 'object',\n additionalProperties: false,\n required: [],\n properties: {\n coordinate: {\n type: 'array',\n items: {type: 'number'},\n },\n address: {\n type: 'string',\n },\n label: YMapMarkerLabel,\n },\n};\n\nexport const MapProps = {\n zoom: {\n type: 'number',\n },\n address: {\n type: 'string',\n },\n id: {\n type: 'string',\n },\n markers: {\n type: 'array',\n items: YMapMarker,\n },\n};\n\nexport const BorderProps = {\n type: 'string',\n enum: ['line', 'shadow', 'none'],\n};\n\nexport const CardBase = {\n border: BorderProps,\n};\n\nexport const BlockHeaderProps = {\n title: {\n oneOf: [\n {\n type: 'string',\n optionName: 'text',\n },\n {\n ...TitleProps,\n optionName: 'options',\n },\n ],\n },\n description: {\n type: 'string',\n contentType: 'yfm',\n inputType: 'textarea',\n },\n};\n"]}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BackgroundCard = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const omit_1 = tslib_1.__importDefault(require("lodash/omit"));
5
+ const omit_1 = tslib_1.__importDefault(require("lodash/omit.js"));
6
6
  const schema_1 = require("../../components/Image/schema.js");
7
7
  const common_1 = require("../../schema/validators/common.js");
8
8
  const event_1 = require("../../schema/validators/event.js");
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/BackgroundCard/schema.ts"],"names":[],"mappings":";;;;AAAA,+DAA+B;AAE/B,6DAA+D;AAC/D,8DAA+F;AAC/F,4DAAmE;AACnE,iDAA8C;AAE9C,MAAM,0BAA0B,GAAG,IAAA,cAAI,EAAC,oBAAW,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAErE,QAAA,cAAc,GAAG;IAC1B,iBAAiB,EAAE;QACf,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC3B,UAAU,4EACH,kBAAS,GACT,iBAAQ,GACR,wBAAe,GACf,0BAA0B,KAC7B,GAAG,EAAE;gBACD,IAAI,EAAE,QAAQ;aACjB,EACD,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB,EACD,UAAU,EAAE,IAAA,kBAAS,EAAC,yBAAgB,CAAC,EACvC,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;aACjB,EACD,aAAa,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;aAC9B,EACD,eAAe,EAAE;gBACb,KAAK,EAAE;oDAEI,4BAAoB,KACvB,UAAU,EAAE,QAAQ;oBAExB;wBACI,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,4BAAoB;wBAC3B,UAAU,EAAE,MAAM;qBACrB;iBACJ;aACJ,EACD,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;aAC9B,GACJ;KACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport {ImageObjectProps} from '../../components/Image/schema';\nimport {BaseProps, CardBase, CardLayoutProps, withTheme} from '../../schema/validators/common';\nimport {AnalyticsEventSchema} from '../../schema/validators/event';\nimport {ContentBase} from '../Content/schema';\n\nconst BackgroundCardContentProps = omit(ContentBase, ['size', 'controlPosition']);\n\nexport const BackgroundCard = {\n 'background-card': {\n additionalProperties: false,\n required: ['title', 'text'],\n properties: {\n ...BaseProps,\n ...CardBase,\n ...CardLayoutProps,\n ...BackgroundCardContentProps,\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n background: withTheme(ImageObjectProps),\n backgroundColor: {\n type: 'string',\n },\n paddingBottom: {\n type: 'string',\n enum: ['s', 'm', 'l', 'xl'],\n },\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n controlPosition: {\n type: 'string',\n enum: ['content', 'footer'],\n },\n },\n },\n};\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"../../../../src","sources":["sub-blocks/BackgroundCard/schema.ts"],"names":[],"mappings":";;;;AAAA,kEAA+B;AAE/B,6DAA+D;AAC/D,8DAA+F;AAC/F,4DAAmE;AACnE,iDAA8C;AAE9C,MAAM,0BAA0B,GAAG,IAAA,cAAI,EAAC,oBAAW,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAErE,QAAA,cAAc,GAAG;IAC1B,iBAAiB,EAAE;QACf,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;QAC3B,UAAU,4EACH,kBAAS,GACT,iBAAQ,GACR,wBAAe,GACf,0BAA0B,KAC7B,GAAG,EAAE;gBACD,IAAI,EAAE,QAAQ;aACjB,EACD,QAAQ,EAAE;gBACN,IAAI,EAAE,QAAQ;aACjB,EACD,UAAU,EAAE,IAAA,kBAAS,EAAC,yBAAgB,CAAC,EACvC,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;aACjB,EACD,aAAa,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;aAC9B,EACD,eAAe,EAAE;gBACb,KAAK,EAAE;oDAEI,4BAAoB,KACvB,UAAU,EAAE,QAAQ;oBAExB;wBACI,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,4BAAoB;wBAC3B,UAAU,EAAE,MAAM;qBACrB;iBACJ;aACJ,EACD,eAAe,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;aAC9B,GACJ;KACJ;CACJ,CAAC","sourcesContent":["import omit from 'lodash/omit';\n\nimport {ImageObjectProps} from '../../components/Image/schema';\nimport {BaseProps, CardBase, CardLayoutProps, withTheme} from '../../schema/validators/common';\nimport {AnalyticsEventSchema} from '../../schema/validators/event';\nimport {ContentBase} from '../Content/schema';\n\nconst BackgroundCardContentProps = omit(ContentBase, ['size', 'controlPosition']);\n\nexport const BackgroundCard = {\n 'background-card': {\n additionalProperties: false,\n required: ['title', 'text'],\n properties: {\n ...BaseProps,\n ...CardBase,\n ...CardLayoutProps,\n ...BackgroundCardContentProps,\n url: {\n type: 'string',\n },\n urlTitle: {\n type: 'string',\n },\n background: withTheme(ImageObjectProps),\n backgroundColor: {\n type: 'string',\n },\n paddingBottom: {\n type: 'string',\n enum: ['s', 'm', 'l', 'xl'],\n },\n analyticsEvents: {\n oneOf: [\n {\n ...AnalyticsEventSchema,\n optionName: 'single',\n },\n {\n type: 'array',\n items: AnalyticsEventSchema,\n optionName: 'list',\n },\n ],\n },\n controlPosition: {\n type: 'string',\n enum: ['content', 'footer'],\n },\n },\n },\n};\n"]}