@gravity-ui/page-constructor 8.3.0 → 8.4.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 (140) hide show
  1. package/build/cjs/blocks/Header/Header.css +6 -0
  2. package/build/cjs/blocks/Header/schema.js +1 -25
  3. package/build/cjs/blocks/Header/schema.js.map +1 -1
  4. package/build/cjs/blocks/Hero/Hero.css +211 -0
  5. package/build/cjs/blocks/Hero/Hero.d.ts +3 -0
  6. package/build/cjs/blocks/Hero/Hero.js +50 -0
  7. package/build/cjs/blocks/Hero/Hero.js.map +1 -0
  8. package/build/cjs/blocks/Hero/hooks.d.ts +4 -0
  9. package/build/cjs/blocks/Hero/hooks.js +38 -0
  10. package/build/cjs/blocks/Hero/hooks.js.map +1 -0
  11. package/build/cjs/blocks/Hero/schema.d.ts +2076 -0
  12. package/build/cjs/blocks/Hero/schema.js +66 -0
  13. package/build/cjs/blocks/Hero/schema.js.map +1 -0
  14. package/build/cjs/blocks/index.d.ts +1 -0
  15. package/build/cjs/blocks/index.js +3 -1
  16. package/build/cjs/blocks/index.js.map +1 -1
  17. package/build/cjs/components/Buttons/Buttons.d.ts +2 -1
  18. package/build/cjs/components/Buttons/Buttons.js +6 -3
  19. package/build/cjs/components/Buttons/Buttons.js.map +1 -1
  20. package/build/cjs/components/DefaultVideo/DefaultVideo.d.ts +1 -0
  21. package/build/cjs/components/DefaultVideo/DefaultVideo.js +2 -2
  22. package/build/cjs/components/DefaultVideo/DefaultVideo.js.map +1 -1
  23. package/build/cjs/components/Image/Image.d.ts +5 -1
  24. package/build/cjs/components/Image/Image.js +4 -2
  25. package/build/cjs/components/Image/Image.js.map +1 -1
  26. package/build/cjs/components/ImageBase/ImageBase.d.ts +2 -2
  27. package/build/cjs/components/ImageBase/ImageBase.js +5 -5
  28. package/build/cjs/components/ImageBase/ImageBase.js.map +1 -1
  29. package/build/cjs/components/Media/Image/Image.d.ts +4 -0
  30. package/build/cjs/components/Media/Image/Image.js +3 -3
  31. package/build/cjs/components/Media/Image/Image.js.map +1 -1
  32. package/build/cjs/components/Media/Media.js +8 -4
  33. package/build/cjs/components/Media/Media.js.map +1 -1
  34. package/build/cjs/components/Media/Video/Video.d.ts +5 -0
  35. package/build/cjs/components/Media/Video/Video.js +30 -4
  36. package/build/cjs/components/Media/Video/Video.js.map +1 -1
  37. package/build/cjs/components/ReactPlayer/ReactPlayer.css +5 -0
  38. package/build/cjs/components/ReactPlayer/ReactPlayer.d.ts +5 -0
  39. package/build/cjs/components/ReactPlayer/ReactPlayer.js +12 -4
  40. package/build/cjs/components/ReactPlayer/ReactPlayer.js.map +1 -1
  41. package/build/cjs/components/Title/TitleItem.css +6 -0
  42. package/build/cjs/constructor-items.d.ts +1 -0
  43. package/build/cjs/constructor-items.js +1 -0
  44. package/build/cjs/constructor-items.js.map +1 -1
  45. package/build/cjs/context/imageContext/imageContext.d.ts +1 -1
  46. package/build/cjs/context/imageContext/imageContext.js.map +1 -1
  47. package/build/cjs/demo/ComponentsText.stories.js +3 -3
  48. package/build/cjs/demo/ComponentsText.stories.js.map +1 -1
  49. package/build/cjs/hooks/index.d.ts +1 -0
  50. package/build/cjs/hooks/index.js +1 -0
  51. package/build/cjs/hooks/index.js.map +1 -1
  52. package/build/cjs/hooks/useImageSize.d.ts +8 -0
  53. package/build/cjs/hooks/useImageSize.js +52 -0
  54. package/build/cjs/hooks/useImageSize.js.map +1 -0
  55. package/build/cjs/models/constructor-items/blocks.d.ts +22 -3
  56. package/build/cjs/models/constructor-items/blocks.js +6 -1
  57. package/build/cjs/models/constructor-items/blocks.js.map +1 -1
  58. package/build/cjs/schema/constants.js +1 -0
  59. package/build/cjs/schema/constants.js.map +1 -1
  60. package/build/cjs/schema/validators/blocks.d.ts +1 -0
  61. package/build/cjs/schema/validators/blocks.js +1 -0
  62. package/build/cjs/schema/validators/blocks.js.map +1 -1
  63. package/build/cjs/schema/validators/common.d.ts +28 -0
  64. package/build/cjs/schema/validators/common.js +26 -1
  65. package/build/cjs/schema/validators/common.js.map +1 -1
  66. package/build/cjs/text-transform/config.js +17 -0
  67. package/build/cjs/text-transform/config.js.map +1 -1
  68. package/build/esm/blocks/Header/Header.css +6 -0
  69. package/build/esm/blocks/Header/schema.js +2 -26
  70. package/build/esm/blocks/Header/schema.js.map +1 -1
  71. package/build/esm/blocks/Hero/Hero.css +211 -0
  72. package/build/esm/blocks/Hero/Hero.d.ts +4 -0
  73. package/build/esm/blocks/Hero/Hero.js +48 -0
  74. package/build/esm/blocks/Hero/Hero.js.map +1 -0
  75. package/build/esm/blocks/Hero/hooks.d.ts +4 -0
  76. package/build/esm/blocks/Hero/hooks.js +33 -0
  77. package/build/esm/blocks/Hero/hooks.js.map +1 -0
  78. package/build/esm/blocks/Hero/schema.d.ts +2076 -0
  79. package/build/esm/blocks/Hero/schema.js +62 -0
  80. package/build/esm/blocks/Hero/schema.js.map +1 -0
  81. package/build/esm/blocks/index.d.ts +1 -0
  82. package/build/esm/blocks/index.js +1 -0
  83. package/build/esm/blocks/index.js.map +1 -1
  84. package/build/esm/components/Buttons/Buttons.d.ts +2 -1
  85. package/build/esm/components/Buttons/Buttons.js +6 -3
  86. package/build/esm/components/Buttons/Buttons.js.map +1 -1
  87. package/build/esm/components/DefaultVideo/DefaultVideo.d.ts +1 -0
  88. package/build/esm/components/DefaultVideo/DefaultVideo.js +2 -2
  89. package/build/esm/components/DefaultVideo/DefaultVideo.js.map +1 -1
  90. package/build/esm/components/Image/Image.d.ts +5 -1
  91. package/build/esm/components/Image/Image.js +4 -2
  92. package/build/esm/components/Image/Image.js.map +1 -1
  93. package/build/esm/components/ImageBase/ImageBase.d.ts +2 -2
  94. package/build/esm/components/ImageBase/ImageBase.js +5 -4
  95. package/build/esm/components/ImageBase/ImageBase.js.map +1 -1
  96. package/build/esm/components/Media/Image/Image.d.ts +4 -0
  97. package/build/esm/components/Media/Image/Image.js +3 -3
  98. package/build/esm/components/Media/Image/Image.js.map +1 -1
  99. package/build/esm/components/Media/Media.js +8 -4
  100. package/build/esm/components/Media/Media.js.map +1 -1
  101. package/build/esm/components/Media/Video/Video.d.ts +5 -0
  102. package/build/esm/components/Media/Video/Video.js +30 -4
  103. package/build/esm/components/Media/Video/Video.js.map +1 -1
  104. package/build/esm/components/ReactPlayer/ReactPlayer.css +5 -0
  105. package/build/esm/components/ReactPlayer/ReactPlayer.d.ts +5 -0
  106. package/build/esm/components/ReactPlayer/ReactPlayer.js +13 -5
  107. package/build/esm/components/ReactPlayer/ReactPlayer.js.map +1 -1
  108. package/build/esm/components/Title/TitleItem.css +6 -0
  109. package/build/esm/constructor-items.d.ts +1 -0
  110. package/build/esm/constructor-items.js +2 -1
  111. package/build/esm/constructor-items.js.map +1 -1
  112. package/build/esm/context/imageContext/imageContext.d.ts +1 -1
  113. package/build/esm/context/imageContext/imageContext.js.map +1 -1
  114. package/build/esm/demo/ComponentsText.stories.js +3 -3
  115. package/build/esm/demo/ComponentsText.stories.js.map +1 -1
  116. package/build/esm/hooks/index.d.ts +1 -0
  117. package/build/esm/hooks/index.js +1 -0
  118. package/build/esm/hooks/index.js.map +1 -1
  119. package/build/esm/hooks/useImageSize.d.ts +8 -0
  120. package/build/esm/hooks/useImageSize.js +47 -0
  121. package/build/esm/hooks/useImageSize.js.map +1 -0
  122. package/build/esm/models/constructor-items/blocks.d.ts +22 -3
  123. package/build/esm/models/constructor-items/blocks.js +6 -1
  124. package/build/esm/models/constructor-items/blocks.js.map +1 -1
  125. package/build/esm/schema/constants.js +2 -1
  126. package/build/esm/schema/constants.js.map +1 -1
  127. package/build/esm/schema/validators/blocks.d.ts +1 -0
  128. package/build/esm/schema/validators/blocks.js +1 -0
  129. package/build/esm/schema/validators/blocks.js.map +1 -1
  130. package/build/esm/schema/validators/common.d.ts +28 -0
  131. package/build/esm/schema/validators/common.js +25 -0
  132. package/build/esm/schema/validators/common.js.map +1 -1
  133. package/build/esm/text-transform/config.js +17 -0
  134. package/build/esm/text-transform/config.js.map +1 -1
  135. package/package.json +1 -1
  136. package/schema/index.js +1 -1
  137. package/server/models/constructor-items/blocks.d.ts +22 -3
  138. package/server/models/constructor-items/blocks.js +6 -1
  139. package/server/text-transform/config.js +17 -0
  140. package/styles/mixins.scss +4 -0
@@ -4,7 +4,7 @@ import { GridColumnSize, GridColumnSizesType, IndentValue } from "../../grid/typ
4
4
  import { ThemeSupporting } from "../../utils/index.js";
5
5
  import { DeviceSupporting } from "../../utils/breakpoint.js";
6
6
  import { AnalyticsEventsBase } from "../common.js";
7
- import { AnchorProps, Animatable, BackgroundImageProps, ButtonProps, CardBorder, ContentSize, ContentTextSize, ContentTheme, FileLinkProps, GravityIconProps, HeaderBreadCrumbsProps, HeaderImageSize, HeaderOffset, HeaderWidth, ImageDeviceProps, ImageProps, Justify, LegendTableMarkerType, LinkProps, MapProps, MediaDirection, MediaProps, MediaView, TextSize, TextTheme, ThemedImage, ThemedMediaProps, ThemedMediaVideoProps, TitleItemBaseProps, TitleItemProps, WithBorder, YandexFormProps } from "./common.js";
7
+ import { AnchorProps, Animatable, BackgroundImageProps, ButtonProps, CardBorder, ContentSize, ContentTextSize, ContentTheme, FileLinkProps, GravityIconProps, HeaderBreadCrumbsProps, HeaderImageSize, HeaderOffset, HeaderWidth, ImageDeviceProps, ImageProps, Justify, LegendTableMarkerType, LinkProps, MapProps, MediaComponentImageProps, MediaComponentVideoProps, MediaDirection, MediaProps, MediaView, TextSize, TextTheme, ThemedImage, ThemedMediaProps, ThemedMediaVideoProps, TitleItemBaseProps, TitleItemProps, WithBorder, YandexFormProps } from "./common.js";
8
8
  import { BannerCardProps, HubspotFormProps, SubBlock, SubBlockModels } from "./sub-blocks.js";
9
9
  export declare enum BlockType {
10
10
  PromoFeaturesBlock = "promo-features-block",
@@ -22,6 +22,7 @@ export declare enum BlockType {
22
22
  TabsBlock = "tabs-block",
23
23
  HeaderSliderBlock = "header-slider-block",
24
24
  HeaderBlock = "header-block",
25
+ HeroBlock = "hero-block",
25
26
  IconsBlock = "icons-block",
26
27
  CardLayoutBlock = "card-layout-block",
27
28
  ContentLayoutBlock = "content-layout-block",
@@ -144,6 +145,21 @@ export interface HeaderBlockProps {
144
145
  status?: JSX.Element;
145
146
  renderTitle?: (title: string) => React.ReactNode;
146
147
  }
148
+ export interface HeroBlockBackground extends Partial<MediaComponentImageProps>, Partial<MediaComponentVideoProps> {
149
+ color?: string;
150
+ }
151
+ export interface HeroBlockMedia extends Partial<MediaProps> {
152
+ roundCorners?: boolean;
153
+ }
154
+ export interface HeroBlockProps extends Pick<ContentBlockProps, 'title' | 'text' | 'list' | 'additionalInfo' | 'links' | 'theme'> {
155
+ breadcrumbs?: HeaderBreadCrumbsProps;
156
+ overtitle?: string | JSX.Element;
157
+ buttons?: ThemeSupporting<Pick<ButtonProps, 'url' | 'text' | 'theme' | 'primary' | 'extraProps'> | React.ReactNode>[];
158
+ media?: ThemeSupporting<HeroBlockMedia>;
159
+ fullWidth?: boolean;
160
+ verticalOffset?: 's' | 'm' | 'l' | 'xl';
161
+ background?: ThemeSupporting<HeroBlockBackground>;
162
+ }
147
163
  export interface ExtendedFeaturesItem extends Omit<ContentBlockProps, 'theme' | 'centered' | 'colSizes' | 'size' | 'title'> {
148
164
  title: string;
149
165
  label?: string;
@@ -339,7 +355,7 @@ export interface ContentBlockProps {
339
355
  textId?: string;
340
356
  additionalInfo?: string;
341
357
  links?: LinkProps[];
342
- buttons?: ButtonProps[];
358
+ buttons?: (ButtonProps | React.ReactNode)[];
343
359
  size?: ContentSize;
344
360
  colSizes?: GridColumnSizesType;
345
361
  centered?: boolean;
@@ -389,6 +405,9 @@ export interface FormBlockProps {
389
405
  export type HeaderBlockModel = {
390
406
  type: BlockType.HeaderBlock;
391
407
  } & HeaderBlockProps;
408
+ export type HeroBlockModel = {
409
+ type: BlockType.HeroBlock;
410
+ } & HeroBlockProps;
392
411
  export type SliderOldBlockModel = {
393
412
  type: BlockType.SliderOldBlock;
394
413
  } & SliderOldProps;
@@ -449,6 +468,6 @@ export type FormBlockModel = {
449
468
  export type SliderBlockModel = {
450
469
  type: BlockType.SliderBlock;
451
470
  } & SliderProps;
452
- type BlockModels = SliderOldBlockModel | SliderBlockModel | ExtendedFeaturesBlockModel | PromoFeaturesBlockModel | QuestionsBlockModel | FoldableListBlockModel | BannerBlockModel | CompaniesBlockModel | MediaBlockModel | MapBlockModel | InfoBlockModel | TableBlockModel | TabsBlockModel | HeaderBlockModel | IconsBlockModel | HeaderSliderBlockModel | CardLayoutBlockModel | ContentLayoutBlockModel | ShareBLockModel | FilterBlockModel | FormBlockModel;
471
+ type BlockModels = SliderOldBlockModel | SliderBlockModel | ExtendedFeaturesBlockModel | PromoFeaturesBlockModel | QuestionsBlockModel | FoldableListBlockModel | BannerBlockModel | CompaniesBlockModel | MediaBlockModel | MapBlockModel | InfoBlockModel | TableBlockModel | TabsBlockModel | HeaderBlockModel | HeroBlockModel | IconsBlockModel | HeaderSliderBlockModel | CardLayoutBlockModel | ContentLayoutBlockModel | ShareBLockModel | FilterBlockModel | FormBlockModel;
453
472
  export type Block = BlockModels & BlockBaseProps;
454
473
  export {};
@@ -18,6 +18,7 @@ var BlockType;
18
18
  BlockType["TabsBlock"] = "tabs-block";
19
19
  BlockType["HeaderSliderBlock"] = "header-slider-block";
20
20
  BlockType["HeaderBlock"] = "header-block";
21
+ BlockType["HeroBlock"] = "hero-block";
21
22
  BlockType["IconsBlock"] = "icons-block";
22
23
  BlockType["CardLayoutBlock"] = "card-layout-block";
23
24
  BlockType["ContentLayoutBlock"] = "content-layout-block";
@@ -27,7 +28,11 @@ var BlockType;
27
28
  BlockType["FormBlock"] = "form-block";
28
29
  })(BlockType || (exports.BlockType = BlockType = {}));
29
30
  exports.BlockTypes = Object.values(BlockType);
30
- exports.HeaderBlockTypes = [BlockType.HeaderBlock, BlockType.HeaderSliderBlock];
31
+ exports.HeaderBlockTypes = [
32
+ BlockType.HeaderBlock,
33
+ BlockType.HeaderSliderBlock,
34
+ BlockType.HeroBlock,
35
+ ];
31
36
  var SliderBreakpointNames;
32
37
  (function (SliderBreakpointNames) {
33
38
  SliderBreakpointNames["Sm"] = "sm";
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.js","sourceRoot":"../../../../src","sources":["models/constructor-items/blocks.ts"],"names":[],"mappings":";;;AA6CA,IAAY,SAuBX;AAvBD,WAAY,SAAS;IACjB,wDAA2C,CAAA;IAC3C,8DAAiD,CAAA;IACjD,kBAAkB;IAClB,gDAAmC,CAAA;IACnC,yCAA4B,CAAA;IAC5B,+CAAkC,CAAA;IAClC,sDAAyC,CAAA;IACzC,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;AAC5B,CAAC,EAvBW,SAAS,yBAAT,SAAS,QAuBpB;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,UAIX;AAJD,WAAY,UAAU;IAClB,sCAAwB,CAAA;IACxB,wCAA0B,CAAA;IAC1B,gDAAkC,CAAA;AACtC,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AA4UD,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 {DeviceSupporting} from '../../utils/breakpoint';\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 GravityIconProps,\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 /** @deprecated */\n SliderOldBlock = 'slider-old-block',\n SliderBlock = 'slider-block',\n QuestionsBlock = 'questions-block',\n FoldableListBlock = 'foldable-list-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}\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 FullscreenCard = 'fullscreen-card',\n}\n\nexport type SliderBreakpointParams = Record<SliderBreakpointNames, number>;\nexport type SlidesToShow = Partial<SliderBreakpointParams> | number;\n\nexport interface SliderOldProps 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 | string;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n adaptive?: boolean;\n}\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 | string;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n adaptive?: boolean;\n}\n\nexport interface HeaderSliderBlockProps extends Omit<SliderOldProps, '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 HeaderBlockVideoIframe {\n src: string;\n autoplay?: boolean;\n previewImg?: string;\n height?: number;\n}\n\nexport interface HeaderBlockProps {\n title: string;\n overtitle?: string | JSX.Element;\n description?: string;\n additionalInfo?: 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 videoIframe?: HeaderBlockVideoIframe;\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 onClick?: (index: number, newOpenState: boolean) => void;\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 FoldableListItem {\n title: string;\n text: string;\n listStyle?: 'dash' | 'disk';\n link?: LinkProps;\n}\n\nexport interface FoldableListProps\n extends Omit<ContentBlockProps, 'colSizes' | 'centered' | 'size' | 'theme'> {\n items: FoldableListItem[];\n}\n\nexport interface FoldableListBlockItemProps extends FoldableListItem {\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' | 'theme' | 'centered'> {\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: Omit<MapProps, 'forceAspectRatio' | 'areaMargin' | 'copyrightPosition'>;\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 centered?: boolean;\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 {\n tags: FilterTag[];\n items: FilterItem[];\n title?: TitleItemProps | string;\n description?: string;\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 = (props: React.SVGProps<SVGSVGElement>) => React.ReactNode;\n\nexport interface ContentItemProps {\n title?: string;\n text?: string;\n icon?: ThemeSupporting<ImageProps | SVGIcon>;\n gravityIcon?: ThemeSupporting<GravityIconProps>;\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 FormBlockBackgroundProps extends Omit<BackgroundImageProps, 'style'> {\n style?: DeviceSupporting<React.CSSProperties>;\n}\n\nexport interface FormBlockProps {\n formData: FormBlockData;\n title?: string;\n textContent?: Omit<ContentBlockProps, 'centered' | 'colSizes' | 'size'>;\n direction?: FormBlockDirection;\n background?: ThemeSupporting<FormBlockBackgroundProps>;\n customFormNode?: React.ReactNode;\n additionalContentNode?: React.ReactNode;\n}\n\n//block models\nexport type HeaderBlockModel = {\n type: BlockType.HeaderBlock;\n} & HeaderBlockProps;\n\nexport type SliderOldBlockModel = {\n type: BlockType.SliderOldBlock;\n} & SliderOldProps;\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 FoldableListBlockModel = {\n type: BlockType.FoldableListBlock;\n} & FoldableListProps;\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\nexport type SliderBlockModel = {\n type: BlockType.SliderBlock;\n} & SliderProps;\n\ntype BlockModels =\n | SliderOldBlockModel\n | SliderBlockModel\n | ExtendedFeaturesBlockModel\n | PromoFeaturesBlockModel\n | QuestionsBlockModel\n | FoldableListBlockModel\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\nexport type Block = BlockModels & BlockBaseProps;\n"]}
1
+ {"version":3,"file":"blocks.js","sourceRoot":"../../../../src","sources":["models/constructor-items/blocks.ts"],"names":[],"mappings":";;;AA+CA,IAAY,SAwBX;AAxBD,WAAY,SAAS;IACjB,wDAA2C,CAAA;IAC3C,8DAAiD,CAAA;IACjD,kBAAkB;IAClB,gDAAmC,CAAA;IACnC,yCAA4B,CAAA;IAC5B,+CAAkC,CAAA;IAClC,sDAAyC,CAAA;IACzC,yCAA4B,CAAA;IAC5B,+CAAkC,CAAA;IAClC,uCAA0B,CAAA;IAC1B,qCAAwB,CAAA;IACxB,uCAA0B,CAAA;IAC1B,qCAAwB,CAAA;IACxB,sDAAyC,CAAA;IACzC,yCAA4B,CAAA;IAC5B,qCAAwB,CAAA;IACxB,uCAA0B,CAAA;IAC1B,kDAAqC,CAAA;IACrC,wDAA2C,CAAA;IAC3C,uCAA0B,CAAA;IAC1B,mCAAsB,CAAA;IACtB,yCAA4B,CAAA;IAC5B,qCAAwB,CAAA;AAC5B,CAAC,EAxBW,SAAS,yBAAT,SAAS,QAwBpB;AAEY,QAAA,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AACtC,QAAA,gBAAgB,GAAG;IAC5B,SAAS,CAAC,WAAW;IACrB,SAAS,CAAC,iBAAiB;IAC3B,SAAS,CAAC,SAAS;CACtB,CAAC;AAgCF,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,UAIX;AAJD,WAAY,UAAU;IAClB,sCAAwB,CAAA;IACxB,wCAA0B,CAAA;IAC1B,gDAAkC,CAAA;AACtC,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB;AAuWD,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 {DeviceSupporting} from '../../utils/breakpoint';\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 GravityIconProps,\n HeaderBreadCrumbsProps,\n HeaderImageSize,\n HeaderOffset,\n HeaderWidth,\n ImageDeviceProps,\n ImageProps,\n Justify,\n LegendTableMarkerType,\n LinkProps,\n MapProps,\n MediaComponentImageProps,\n MediaComponentVideoProps,\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 /** @deprecated */\n SliderOldBlock = 'slider-old-block',\n SliderBlock = 'slider-block',\n QuestionsBlock = 'questions-block',\n FoldableListBlock = 'foldable-list-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 HeroBlock = 'hero-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}\n\nexport const BlockTypes = Object.values(BlockType);\nexport const HeaderBlockTypes = [\n BlockType.HeaderBlock,\n BlockType.HeaderSliderBlock,\n BlockType.HeroBlock,\n];\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 FullscreenCard = 'fullscreen-card',\n}\n\nexport type SliderBreakpointParams = Record<SliderBreakpointNames, number>;\nexport type SlidesToShow = Partial<SliderBreakpointParams> | number;\n\nexport interface SliderOldProps 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 | string;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n adaptive?: boolean;\n}\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 | string;\n description?: string;\n autoplay?: number;\n //for server transforms\n randomOrder?: boolean;\n adaptive?: boolean;\n}\n\nexport interface HeaderSliderBlockProps extends Omit<SliderOldProps, '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 HeaderBlockVideoIframe {\n src: string;\n autoplay?: boolean;\n previewImg?: string;\n height?: number;\n}\n\nexport interface HeaderBlockProps {\n title: string;\n overtitle?: string | JSX.Element;\n description?: string;\n additionalInfo?: 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 videoIframe?: HeaderBlockVideoIframe;\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 HeroBlockBackground\n extends Partial<MediaComponentImageProps>,\n Partial<MediaComponentVideoProps> {\n color?: string;\n}\n\nexport interface HeroBlockMedia extends Partial<MediaProps> {\n roundCorners?: boolean;\n}\n\nexport interface HeroBlockProps\n extends Pick<\n ContentBlockProps,\n 'title' | 'text' | 'list' | 'additionalInfo' | 'links' | 'theme'\n > {\n breadcrumbs?: HeaderBreadCrumbsProps;\n // TODO: add overtitle to ContentProps\n overtitle?: string | JSX.Element;\n buttons?: ThemeSupporting<\n Pick<ButtonProps, 'url' | 'text' | 'theme' | 'primary' | 'extraProps'> | React.ReactNode\n >[];\n media?: ThemeSupporting<HeroBlockMedia>;\n fullWidth?: boolean;\n verticalOffset?: 's' | 'm' | 'l' | 'xl';\n background?: ThemeSupporting<HeroBlockBackground>;\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 onClick?: (index: number, newOpenState: boolean) => void;\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 FoldableListItem {\n title: string;\n text: string;\n listStyle?: 'dash' | 'disk';\n link?: LinkProps;\n}\n\nexport interface FoldableListProps\n extends Omit<ContentBlockProps, 'colSizes' | 'centered' | 'size' | 'theme'> {\n items: FoldableListItem[];\n}\n\nexport interface FoldableListBlockItemProps extends FoldableListItem {\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' | 'theme' | 'centered'> {\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: Omit<MapProps, 'forceAspectRatio' | 'areaMargin' | 'copyrightPosition'>;\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 centered?: boolean;\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 {\n tags: FilterTag[];\n items: FilterItem[];\n title?: TitleItemProps | string;\n description?: string;\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 = (props: React.SVGProps<SVGSVGElement>) => React.ReactNode;\n\nexport interface ContentItemProps {\n title?: string;\n text?: string;\n icon?: ThemeSupporting<ImageProps | SVGIcon>;\n gravityIcon?: ThemeSupporting<GravityIconProps>;\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 | React.ReactNode)[];\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 FormBlockBackgroundProps extends Omit<BackgroundImageProps, 'style'> {\n style?: DeviceSupporting<React.CSSProperties>;\n}\n\nexport interface FormBlockProps {\n formData: FormBlockData;\n title?: string;\n textContent?: Omit<ContentBlockProps, 'centered' | 'colSizes' | 'size'>;\n direction?: FormBlockDirection;\n background?: ThemeSupporting<FormBlockBackgroundProps>;\n customFormNode?: React.ReactNode;\n additionalContentNode?: React.ReactNode;\n}\n\n//block models\nexport type HeaderBlockModel = {\n type: BlockType.HeaderBlock;\n} & HeaderBlockProps;\n\nexport type HeroBlockModel = {\n type: BlockType.HeroBlock;\n} & HeroBlockProps;\n\nexport type SliderOldBlockModel = {\n type: BlockType.SliderOldBlock;\n} & SliderOldProps;\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 FoldableListBlockModel = {\n type: BlockType.FoldableListBlock;\n} & FoldableListProps;\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\nexport type SliderBlockModel = {\n type: BlockType.SliderBlock;\n} & SliderProps;\n\ntype BlockModels =\n | SliderOldBlockModel\n | SliderBlockModel\n | ExtendedFeaturesBlockModel\n | PromoFeaturesBlockModel\n | QuestionsBlockModel\n | FoldableListBlockModel\n | BannerBlockModel\n | CompaniesBlockModel\n | MediaBlockModel\n | MapBlockModel\n | InfoBlockModel\n | TableBlockModel\n | TabsBlockModel\n | HeaderBlockModel\n | HeroBlockModel\n | IconsBlockModel\n | HeaderSliderBlockModel\n | CardLayoutBlockModel\n | ContentLayoutBlockModel\n | ShareBLockModel\n | FilterBlockModel\n | FormBlockModel;\n\nexport type Block = BlockModels & BlockBaseProps;\n"]}
@@ -11,6 +11,7 @@ exports.blockSchemas = {
11
11
  ...blocks_1.QuestionsBlock,
12
12
  ...blocks_1.FoldableListBlock,
13
13
  ...blocks_1.HeaderBlock,
14
+ ...blocks_1.HeroBlock,
14
15
  ...blocks_1.BannerBlock,
15
16
  ...blocks_1.CompaniesBlock,
16
17
  ...blocks_1.MediaBlock,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"../../../src","sources":["schema/constants.ts"],"names":[],"mappings":";;;AAEA,mDAuB6B;AAC7B,2DASiC;AAEpB,QAAA,YAAY,GAA8B;IACnD,GAAG,oBAAO;IACV,GAAG,8BAAqB;IACxB,GAAG,2BAAkB;IACrB,GAAG,uBAAc;IACjB,GAAG,uBAAc;IACjB,GAAG,0BAAiB;IACpB,GAAG,oBAAW;IACd,GAAG,oBAAW;IACd,GAAG,uBAAc;IACjB,GAAG,mBAAU;IACb,GAAG,iBAAQ;IACX,GAAG,kBAAS;IACZ,GAAG,mBAAU;IACb,GAAG,kBAAS;IACZ,GAAG,0BAAiB;IACpB,GAAG,mBAAU;IACb,GAAG,wBAAe;IAClB,GAAG,2BAAkB;IACrB,GAAG,mBAAU;IACb,GAAG,oBAAW;IACd,GAAG,kBAAS;IACZ,GAAG,oBAAW;CACjB,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,GAAG,2BAAc;IACjB,GAAG,mBAAU;IACb,GAAG,+BAAkB;IACrB,GAAG,2BAAc;IACjB,GAAG,kBAAK;IACR,GAAG,sBAAS;IACZ,GAAG,2BAAc;IACjB,GAAG,sBAAS;CACf,CAAC;AAEW,QAAA,2BAA2B,GAAG;IACvC,SAAS;IACT,OAAO;IACP,OAAO;IACP,MAAM;IACN,yBAAyB;IACzB,sBAAsB;IACtB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,aAAa;IACb,WAAW;IACX,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,gBAAgB;IAChB,qBAAqB;IACrB,wBAAwB;IACxB,aAAa;IACb,mBAAmB;IACnB,sBAAsB;IACtB,aAAa;IACb,cAAc;IACd,YAAY;CACf,CAAC;AAEW,QAAA,0BAA0B,GAAG;IACtC,YAAY;IACZ,aAAa;IACb,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB;IACjB,OAAO;IACP,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,YAAY;CACf,CAAC","sourcesContent":["import {BlockType} from '../models';\n\nimport {\n BannerBlock,\n BannerCard,\n CardLayoutBlock,\n CompaniesBlock,\n ContentLayoutBlock,\n ExtendedFeaturesBlock,\n FilterBlock,\n FoldableListBlock,\n FormBlock,\n HeaderBlock,\n HeaderSliderBlock,\n IconsBlock,\n InfoBlock,\n MapBlock,\n MediaBlock,\n PromoFeaturesBlock,\n QuestionsBlock,\n ShareBlock,\n SliderBlock,\n SliderOldBlock,\n TableBlock,\n TabsBlock,\n} from './validators/blocks';\nimport {\n BackgroundCard,\n BasicCard,\n Divider,\n ImageCard,\n MediaCardBlock,\n PriceCardBlock,\n PriceDetailedBlock,\n Quote,\n} from './validators/sub-blocks';\n\nexport const blockSchemas: Record<BlockType, object> = {\n ...Divider,\n ...ExtendedFeaturesBlock,\n ...PromoFeaturesBlock,\n ...SliderOldBlock,\n ...QuestionsBlock,\n ...FoldableListBlock,\n ...HeaderBlock,\n ...BannerBlock,\n ...CompaniesBlock,\n ...MediaBlock,\n ...MapBlock,\n ...InfoBlock,\n ...TableBlock,\n ...TabsBlock,\n ...HeaderSliderBlock,\n ...IconsBlock,\n ...CardLayoutBlock,\n ...ContentLayoutBlock,\n ...ShareBlock,\n ...FilterBlock,\n ...FormBlock,\n ...SliderBlock,\n};\n\nexport const cardSchemas = {\n ...MediaCardBlock,\n ...BannerCard,\n ...PriceDetailedBlock,\n ...BackgroundCard,\n ...Quote,\n ...BasicCard,\n ...PriceCardBlock,\n ...ImageCard,\n};\n\nexport const constructorBlockSchemaNames = [\n 'divider',\n 'quote',\n 'event',\n 'post',\n 'extended-features-block',\n 'promo-features-block',\n /** @deprecated */\n 'slider-old-block',\n 'slider-block',\n 'questions-block',\n 'header-block',\n 'banner-block',\n 'companies-block',\n 'media-block',\n 'map-block',\n 'info-block',\n 'table-block',\n 'tabs-block',\n /** @deprecated */\n 'price-detailed',\n 'header-slider-block',\n 'cards-with-image-block',\n 'icons-block',\n 'card-layout-block',\n 'content-layout-block',\n 'share-block',\n 'filter-block',\n 'form-block',\n];\n\nexport const constructorCardSchemaNames = [\n 'media-card',\n 'banner-card',\n /** @deprecated */\n 'price-detailed',\n 'background-card',\n 'quote',\n 'basic-card',\n 'layout-item',\n 'price-card',\n 'image-card',\n];\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"../../../src","sources":["schema/constants.ts"],"names":[],"mappings":";;;AAEA,mDAwB6B;AAC7B,2DASiC;AAEpB,QAAA,YAAY,GAA8B;IACnD,GAAG,oBAAO;IACV,GAAG,8BAAqB;IACxB,GAAG,2BAAkB;IACrB,GAAG,uBAAc;IACjB,GAAG,uBAAc;IACjB,GAAG,0BAAiB;IACpB,GAAG,oBAAW;IACd,GAAG,kBAAS;IACZ,GAAG,oBAAW;IACd,GAAG,uBAAc;IACjB,GAAG,mBAAU;IACb,GAAG,iBAAQ;IACX,GAAG,kBAAS;IACZ,GAAG,mBAAU;IACb,GAAG,kBAAS;IACZ,GAAG,0BAAiB;IACpB,GAAG,mBAAU;IACb,GAAG,wBAAe;IAClB,GAAG,2BAAkB;IACrB,GAAG,mBAAU;IACb,GAAG,oBAAW;IACd,GAAG,kBAAS;IACZ,GAAG,oBAAW;CACjB,CAAC;AAEW,QAAA,WAAW,GAAG;IACvB,GAAG,2BAAc;IACjB,GAAG,mBAAU;IACb,GAAG,+BAAkB;IACrB,GAAG,2BAAc;IACjB,GAAG,kBAAK;IACR,GAAG,sBAAS;IACZ,GAAG,2BAAc;IACjB,GAAG,sBAAS;CACf,CAAC;AAEW,QAAA,2BAA2B,GAAG;IACvC,SAAS;IACT,OAAO;IACP,OAAO;IACP,MAAM;IACN,yBAAyB;IACzB,sBAAsB;IACtB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,iBAAiB;IACjB,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,aAAa;IACb,WAAW;IACX,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,gBAAgB;IAChB,qBAAqB;IACrB,wBAAwB;IACxB,aAAa;IACb,mBAAmB;IACnB,sBAAsB;IACtB,aAAa;IACb,cAAc;IACd,YAAY;CACf,CAAC;AAEW,QAAA,0BAA0B,GAAG;IACtC,YAAY;IACZ,aAAa;IACb,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB;IACjB,OAAO;IACP,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,YAAY;CACf,CAAC","sourcesContent":["import {BlockType} from '../models';\n\nimport {\n BannerBlock,\n BannerCard,\n CardLayoutBlock,\n CompaniesBlock,\n ContentLayoutBlock,\n ExtendedFeaturesBlock,\n FilterBlock,\n FoldableListBlock,\n FormBlock,\n HeaderBlock,\n HeaderSliderBlock,\n HeroBlock,\n IconsBlock,\n InfoBlock,\n MapBlock,\n MediaBlock,\n PromoFeaturesBlock,\n QuestionsBlock,\n ShareBlock,\n SliderBlock,\n SliderOldBlock,\n TableBlock,\n TabsBlock,\n} from './validators/blocks';\nimport {\n BackgroundCard,\n BasicCard,\n Divider,\n ImageCard,\n MediaCardBlock,\n PriceCardBlock,\n PriceDetailedBlock,\n Quote,\n} from './validators/sub-blocks';\n\nexport const blockSchemas: Record<BlockType, object> = {\n ...Divider,\n ...ExtendedFeaturesBlock,\n ...PromoFeaturesBlock,\n ...SliderOldBlock,\n ...QuestionsBlock,\n ...FoldableListBlock,\n ...HeaderBlock,\n ...HeroBlock,\n ...BannerBlock,\n ...CompaniesBlock,\n ...MediaBlock,\n ...MapBlock,\n ...InfoBlock,\n ...TableBlock,\n ...TabsBlock,\n ...HeaderSliderBlock,\n ...IconsBlock,\n ...CardLayoutBlock,\n ...ContentLayoutBlock,\n ...ShareBlock,\n ...FilterBlock,\n ...FormBlock,\n ...SliderBlock,\n};\n\nexport const cardSchemas = {\n ...MediaCardBlock,\n ...BannerCard,\n ...PriceDetailedBlock,\n ...BackgroundCard,\n ...Quote,\n ...BasicCard,\n ...PriceCardBlock,\n ...ImageCard,\n};\n\nexport const constructorBlockSchemaNames = [\n 'divider',\n 'quote',\n 'event',\n 'post',\n 'extended-features-block',\n 'promo-features-block',\n /** @deprecated */\n 'slider-old-block',\n 'slider-block',\n 'questions-block',\n 'header-block',\n 'banner-block',\n 'companies-block',\n 'media-block',\n 'map-block',\n 'info-block',\n 'table-block',\n 'tabs-block',\n /** @deprecated */\n 'price-detailed',\n 'header-slider-block',\n 'cards-with-image-block',\n 'icons-block',\n 'card-layout-block',\n 'content-layout-block',\n 'share-block',\n 'filter-block',\n 'form-block',\n];\n\nexport const constructorCardSchemaNames = [\n 'media-card',\n 'banner-card',\n /** @deprecated */\n 'price-detailed',\n 'background-card',\n 'quote',\n 'basic-card',\n 'layout-item',\n 'price-card',\n 'image-card',\n];\n"]}
@@ -3,6 +3,7 @@ export * from "../../blocks/Companies/schema.js";
3
3
  export * from "../../blocks/ExtendedFeatures/schema.js";
4
4
  export * from "../../blocks/PromoFeaturesBlock/schema.js";
5
5
  export * from "../../blocks/Header/schema.js";
6
+ export * from "../../blocks/Hero/schema.js";
6
7
  export * from "../../blocks/Info/schema.js";
7
8
  export * from "../../blocks/Media/schema.js";
8
9
  export * from "../../blocks/Map/schema.js";
@@ -6,6 +6,7 @@ tslib_1.__exportStar(require("../../blocks/Companies/schema.js"), exports);
6
6
  tslib_1.__exportStar(require("../../blocks/ExtendedFeatures/schema.js"), exports);
7
7
  tslib_1.__exportStar(require("../../blocks/PromoFeaturesBlock/schema.js"), exports);
8
8
  tslib_1.__exportStar(require("../../blocks/Header/schema.js"), exports);
9
+ tslib_1.__exportStar(require("../../blocks/Hero/schema.js"), exports);
9
10
  tslib_1.__exportStar(require("../../blocks/Info/schema.js"), exports);
10
11
  tslib_1.__exportStar(require("../../blocks/Media/schema.js"), exports);
11
12
  tslib_1.__exportStar(require("../../blocks/Map/schema.js"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.js","sourceRoot":"../../../../src","sources":["schema/validators/blocks.ts"],"names":[],"mappings":";;;AAAA,wEAA2C;AAC3C,2EAA8C;AAC9C,kFAAqD;AACrD,oFAAuD;AACvD,wEAA2C;AAC3C,sEAAyC;AACzC,uEAA0C;AAC1C,qEAAwC;AACxC,2EAA8C;AAC9C,8EAAiD;AACjD,wEAA2C;AAC3C,2EAA8C;AAC9C,uEAA0C;AAC1C,sEAAyC;AACzC,8EAAiD;AACjD,uEAA0C;AAC1C,4EAA+C;AAC/C,+EAAkD;AAClD,uEAA0C;AAC1C,6EAAgD;AAChD,sEAAyC;AACzC,wEAA2C","sourcesContent":["export * from '../../blocks/Banner/schema';\nexport * from '../../blocks/Companies/schema';\nexport * from '../../blocks/ExtendedFeatures/schema';\nexport * from '../../blocks/PromoFeaturesBlock/schema';\nexport * from '../../blocks/Header/schema';\nexport * from '../../blocks/Info/schema';\nexport * from '../../blocks/Media/schema';\nexport * from '../../blocks/Map/schema';\nexport * from '../../blocks/Questions/schema';\nexport * from '../../blocks/FoldableList/schema';\nexport * from '../../blocks/Slider/schema';\nexport * from '../../blocks/SliderOld/schema';\nexport * from '../../blocks/Table/schema';\nexport * from '../../blocks/Tabs/schema';\nexport * from '../../blocks/HeaderSlider/schema';\nexport * from '../../blocks/Icons/schema';\nexport * from '../../blocks/CardLayout/schema';\nexport * from '../../blocks/ContentLayout/schema';\nexport * from '../../blocks/Share/schema';\nexport * from '../../blocks/FilterBlock/schema';\nexport * from '../../blocks/Form/schema';\nexport * from '../../blocks/Slider/schema';\n"]}
1
+ {"version":3,"file":"blocks.js","sourceRoot":"../../../../src","sources":["schema/validators/blocks.ts"],"names":[],"mappings":";;;AAAA,wEAA2C;AAC3C,2EAA8C;AAC9C,kFAAqD;AACrD,oFAAuD;AACvD,wEAA2C;AAC3C,sEAAyC;AACzC,sEAAyC;AACzC,uEAA0C;AAC1C,qEAAwC;AACxC,2EAA8C;AAC9C,8EAAiD;AACjD,wEAA2C;AAC3C,2EAA8C;AAC9C,uEAA0C;AAC1C,sEAAyC;AACzC,8EAAiD;AACjD,uEAA0C;AAC1C,4EAA+C;AAC/C,+EAAkD;AAClD,uEAA0C;AAC1C,6EAAgD;AAChD,sEAAyC;AACzC,wEAA2C","sourcesContent":["export * from '../../blocks/Banner/schema';\nexport * from '../../blocks/Companies/schema';\nexport * from '../../blocks/ExtendedFeatures/schema';\nexport * from '../../blocks/PromoFeaturesBlock/schema';\nexport * from '../../blocks/Header/schema';\nexport * from '../../blocks/Hero/schema';\nexport * from '../../blocks/Info/schema';\nexport * from '../../blocks/Media/schema';\nexport * from '../../blocks/Map/schema';\nexport * from '../../blocks/Questions/schema';\nexport * from '../../blocks/FoldableList/schema';\nexport * from '../../blocks/Slider/schema';\nexport * from '../../blocks/SliderOld/schema';\nexport * from '../../blocks/Table/schema';\nexport * from '../../blocks/Tabs/schema';\nexport * from '../../blocks/HeaderSlider/schema';\nexport * from '../../blocks/Icons/schema';\nexport * from '../../blocks/CardLayout/schema';\nexport * from '../../blocks/ContentLayout/schema';\nexport * from '../../blocks/Share/schema';\nexport * from '../../blocks/FilterBlock/schema';\nexport * from '../../blocks/Form/schema';\nexport * from '../../blocks/Slider/schema';\n"]}
@@ -1747,3 +1747,31 @@ export declare const GravityIconProps: {
1747
1747
  };
1748
1748
  })[];
1749
1749
  };
1750
+ export declare const HeaderBreadcrumbsProps: {
1751
+ type: string;
1752
+ additionalProperties: boolean;
1753
+ required: string[];
1754
+ properties: {
1755
+ items: {
1756
+ type: string;
1757
+ items: {
1758
+ type: string;
1759
+ additionalProperties: boolean;
1760
+ required: string[];
1761
+ properties: {
1762
+ url: {
1763
+ type: string;
1764
+ };
1765
+ text: {
1766
+ type: string;
1767
+ contentType: string;
1768
+ };
1769
+ };
1770
+ };
1771
+ };
1772
+ theme: {
1773
+ type: string;
1774
+ enum: string[];
1775
+ };
1776
+ };
1777
+ };
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BlockHeaderProps = exports.CardBase = exports.BorderProps = exports.MapProps = exports.YMapMarker = exports.YMapMarkerLabel = exports.MediaProps = exports.ButtonBlock = exports.TitleProps = exports.BlockBaseProps = exports.AnchorProps = exports.MenuProps = exports.ButtonProps = exports.authorItem = exports.FileLinkProps = exports.LinkProps = exports.BackgroundProps = exports.DataLensProps = exports.DataLensObjectProps = exports.JustifyProps = exports.ThemeProps = exports.VideoProps = exports.CustomControlsOptionsProps = exports.PlayButtonProps = exports.LoopProps = exports.ChildrenCardsProps = exports.ChildrenProps = exports.AnimatableProps = exports.sliderSizesObject = exports.containerSizesObject = exports.CardLayoutProps = exports.BaseProps = exports.customControlsButtonPositioning = exports.customControlsType = exports.mediaView = exports.quoteTypes = exports.contentThemes = exports.sizeNumber = exports.dividerEnum = exports.fileLinkTypes = exports.videoControlsTypes = exports.playIconThemes = exports.playIconTypes = exports.videoTypes = exports.contentTextWidth = exports.contentSizes = exports.sliderSizesArray = exports.containerSizesArray = exports.textSize = exports.mediaDirection = void 0;
4
- exports.GravityIconProps = void 0;
4
+ exports.HeaderBreadcrumbsProps = exports.GravityIconProps = void 0;
5
5
  exports.withTheme = withTheme;
6
6
  exports.withDevice = withDevice;
7
7
  const schema_1 = require("../../components/Image/schema.js");
@@ -753,4 +753,29 @@ exports.GravityIconProps = {
753
753
  },
754
754
  ],
755
755
  };
756
+ exports.HeaderBreadcrumbsProps = {
757
+ type: 'object',
758
+ additionalProperties: false,
759
+ required: ['items'],
760
+ properties: {
761
+ items: {
762
+ type: 'array',
763
+ items: {
764
+ type: 'object',
765
+ additionalProperties: false,
766
+ required: ['url', 'text'],
767
+ properties: {
768
+ url: {
769
+ type: 'string',
770
+ },
771
+ text: {
772
+ type: 'string',
773
+ contentType: 'text',
774
+ },
775
+ },
776
+ },
777
+ },
778
+ theme: { type: 'string', enum: ['light', 'dark'] },
779
+ },
780
+ };
756
781
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
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 Device,\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 = ['xs', 's', 'sm', 'm', 'l'];\nexport const containerSizesArray = ['sm', 'md', 'lg', 'xl', 'all'];\nexport const sliderSizesArray = ['sm', 'md', 'lg', 'xl'];\nexport const contentSizes = ['s', 'm', 'l', 'xl'];\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 function withDevice<T extends object>(value: T) {\n return {\n oneOf: [\n {\n ...value,\n optionName: 'no device',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: [Device.Desktop, Device.Mobile],\n properties: Object.values(Device).reduce(\n (result, deviceName) => ({\n ...result,\n [deviceName]: value,\n }),\n {},\n ),\n optionName: 'devices',\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 analyticsEvents: {\n anyOf: [AnalyticsEventSchema, {type: 'array', items: AnalyticsEventSchema}],\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\nconst YMapXY = {\n type: 'array',\n items: {type: 'number'},\n minItems: 2,\n maxItems: 2,\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 iconImageHref: {\n type: 'string',\n },\n iconImageSize: YMapXY,\n iconImageOffset: YMapXY,\n iconImageClipRect: {\n type: 'array',\n items: YMapXY,\n minItems: 2,\n maxItems: 2,\n },\n iconLayout: {\n type: 'string',\n },\n iconShape: {\n type: 'object',\n additionalProperties: true,\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 disableControls: {\n type: 'boolean',\n },\n disableBalloons: {\n type: 'boolean',\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\nexport const GravityIconProps = {\n oneOf: [\n {\n type: 'string',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: ['name'],\n properties: {\n name: {\n type: 'string',\n },\n color: {\n type: 'string',\n enum: ['brand', 'text-color'],\n },\n },\n },\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 Device,\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 = ['xs', 's', 'sm', 'm', 'l'];\nexport const containerSizesArray = ['sm', 'md', 'lg', 'xl', 'all'];\nexport const sliderSizesArray = ['sm', 'md', 'lg', 'xl'];\nexport const contentSizes = ['s', 'm', 'l', 'xl'];\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 function withDevice<T extends object>(value: T) {\n return {\n oneOf: [\n {\n ...value,\n optionName: 'no device',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: [Device.Desktop, Device.Mobile],\n properties: Object.values(Device).reduce(\n (result, deviceName) => ({\n ...result,\n [deviceName]: value,\n }),\n {},\n ),\n optionName: 'devices',\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 analyticsEvents: {\n anyOf: [AnalyticsEventSchema, {type: 'array', items: AnalyticsEventSchema}],\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\nconst YMapXY = {\n type: 'array',\n items: {type: 'number'},\n minItems: 2,\n maxItems: 2,\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 iconImageHref: {\n type: 'string',\n },\n iconImageSize: YMapXY,\n iconImageOffset: YMapXY,\n iconImageClipRect: {\n type: 'array',\n items: YMapXY,\n minItems: 2,\n maxItems: 2,\n },\n iconLayout: {\n type: 'string',\n },\n iconShape: {\n type: 'object',\n additionalProperties: true,\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 disableControls: {\n type: 'boolean',\n },\n disableBalloons: {\n type: 'boolean',\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\nexport const GravityIconProps = {\n oneOf: [\n {\n type: 'string',\n },\n {\n type: 'object',\n additionalProperties: false,\n required: ['name'],\n properties: {\n name: {\n type: 'string',\n },\n color: {\n type: 'string',\n enum: ['brand', 'text-color'],\n },\n },\n },\n ],\n};\n\nexport const HeaderBreadcrumbsProps = {\n type: 'object',\n additionalProperties: false,\n required: ['items'],\n properties: {\n items: {\n type: 'array',\n items: {\n type: 'object',\n additionalProperties: false,\n required: ['url', 'text'],\n properties: {\n url: {\n type: 'string',\n },\n text: {\n type: 'string',\n contentType: 'text',\n },\n },\n },\n },\n theme: {type: 'string', enum: ['light', 'dark']},\n },\n};\n"]}
@@ -345,6 +345,23 @@ exports.config = {
345
345
  renderInline: true,
346
346
  },
347
347
  ],
348
+ [models_1.BlockType.HeroBlock]: [
349
+ {
350
+ fields: ['text', 'additionalInfo', 'list'],
351
+ transformer: common_1.yfmTransformer,
352
+ },
353
+ {
354
+ fields: ['title'],
355
+ transformer: common_1.yfmTransformer,
356
+ parser: parseTitle,
357
+ renderInline: true,
358
+ },
359
+ {
360
+ fields: ['list'],
361
+ transformer: common_1.yfmTransformer,
362
+ parser: (0, common_1.createItemsParser)(['title', 'text']),
363
+ },
364
+ ],
348
365
  [models_1.BlockType.ContentLayoutBlock]: [
349
366
  {
350
367
  fields: ['textContent'],