@gravity-ui/page-constructor 4.29.2 → 4.31.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 (78) hide show
  1. package/build/cjs/blocks/Banner/schema.d.ts +9 -0
  2. package/build/cjs/blocks/CardLayout/schema.d.ts +12 -0
  3. package/build/cjs/blocks/ContentLayout/schema.d.ts +6 -0
  4. package/build/cjs/blocks/ExtendedFeatures/schema.d.ts +9 -0
  5. package/build/cjs/blocks/FilterBlock/schema.d.ts +12 -0
  6. package/build/cjs/blocks/Header/Header.js +2 -2
  7. package/build/cjs/blocks/Header/schema.d.ts +3 -0
  8. package/build/cjs/blocks/HeaderSlider/schema.d.ts +3 -0
  9. package/build/cjs/blocks/Icons/schema.d.ts +6 -0
  10. package/build/cjs/blocks/Info/schema.d.ts +6 -0
  11. package/build/cjs/blocks/Map/schema.d.ts +9 -0
  12. package/build/cjs/blocks/Media/schema.d.ts +18 -0
  13. package/build/cjs/blocks/PromoFeaturesBlock/schema.d.ts +6 -0
  14. package/build/cjs/blocks/Questions/schema.d.ts +6 -0
  15. package/build/cjs/blocks/Slider/schema.d.ts +6 -0
  16. package/build/cjs/blocks/Table/schema.d.ts +3 -0
  17. package/build/cjs/blocks/Tabs/schema.d.ts +12 -0
  18. package/build/cjs/components/Button/Button.d.ts +1 -0
  19. package/build/cjs/components/Button/Button.js +2 -2
  20. package/build/cjs/models/constructor-items/blocks.d.ts +2 -1
  21. package/build/cjs/models/constructor-items/common.d.ts +4 -0
  22. package/build/cjs/models/constructor-items/common.js +6 -1
  23. package/build/cjs/models/constructor-items/sub-blocks.d.ts +4 -1
  24. package/build/cjs/schema/constants.d.ts +22 -0
  25. package/build/cjs/schema/validators/common.d.ts +23 -1
  26. package/build/cjs/schema/validators/common.js +13 -1
  27. package/build/cjs/sub-blocks/BackgroundCard/schema.d.ts +6 -0
  28. package/build/cjs/sub-blocks/BackgroundCard/schema.js +2 -0
  29. package/build/cjs/sub-blocks/BasicCard/schema.d.ts +6 -0
  30. package/build/cjs/sub-blocks/BasicCard/schema.js +2 -0
  31. package/build/cjs/sub-blocks/Content/schema.d.ts +6 -0
  32. package/build/cjs/sub-blocks/LayoutItem/schema.d.ts +3 -0
  33. package/build/cjs/sub-blocks/Quote/Quote.css +12 -3
  34. package/build/cjs/sub-blocks/Quote/Quote.js +3 -3
  35. package/build/cjs/sub-blocks/Quote/schema.d.ts +7 -0
  36. package/build/cjs/sub-blocks/Quote/schema.js +6 -1
  37. package/build/esm/blocks/Banner/schema.d.ts +9 -0
  38. package/build/esm/blocks/CardLayout/schema.d.ts +12 -0
  39. package/build/esm/blocks/ContentLayout/schema.d.ts +6 -0
  40. package/build/esm/blocks/ExtendedFeatures/schema.d.ts +9 -0
  41. package/build/esm/blocks/FilterBlock/schema.d.ts +12 -0
  42. package/build/esm/blocks/Header/Header.js +2 -2
  43. package/build/esm/blocks/Header/schema.d.ts +3 -0
  44. package/build/esm/blocks/HeaderSlider/schema.d.ts +3 -0
  45. package/build/esm/blocks/Icons/schema.d.ts +6 -0
  46. package/build/esm/blocks/Info/schema.d.ts +6 -0
  47. package/build/esm/blocks/Map/schema.d.ts +9 -0
  48. package/build/esm/blocks/Media/schema.d.ts +18 -0
  49. package/build/esm/blocks/PromoFeaturesBlock/schema.d.ts +6 -0
  50. package/build/esm/blocks/Questions/schema.d.ts +6 -0
  51. package/build/esm/blocks/Slider/schema.d.ts +6 -0
  52. package/build/esm/blocks/Table/schema.d.ts +3 -0
  53. package/build/esm/blocks/Tabs/schema.d.ts +12 -0
  54. package/build/esm/components/Button/Button.d.ts +1 -0
  55. package/build/esm/components/Button/Button.js +2 -2
  56. package/build/esm/models/constructor-items/blocks.d.ts +2 -1
  57. package/build/esm/models/constructor-items/common.d.ts +4 -0
  58. package/build/esm/models/constructor-items/common.js +5 -0
  59. package/build/esm/models/constructor-items/sub-blocks.d.ts +4 -1
  60. package/build/esm/schema/constants.d.ts +22 -0
  61. package/build/esm/schema/validators/common.d.ts +23 -1
  62. package/build/esm/schema/validators/common.js +13 -1
  63. package/build/esm/sub-blocks/BackgroundCard/schema.d.ts +6 -0
  64. package/build/esm/sub-blocks/BackgroundCard/schema.js +2 -0
  65. package/build/esm/sub-blocks/BasicCard/schema.d.ts +6 -0
  66. package/build/esm/sub-blocks/BasicCard/schema.js +2 -0
  67. package/build/esm/sub-blocks/Content/schema.d.ts +6 -0
  68. package/build/esm/sub-blocks/LayoutItem/schema.d.ts +3 -0
  69. package/build/esm/sub-blocks/Quote/Quote.css +12 -3
  70. package/build/esm/sub-blocks/Quote/Quote.js +4 -4
  71. package/build/esm/sub-blocks/Quote/schema.d.ts +7 -0
  72. package/build/esm/sub-blocks/Quote/schema.js +7 -2
  73. package/package.json +1 -1
  74. package/server/models/constructor-items/blocks.d.ts +2 -1
  75. package/server/models/constructor-items/common.d.ts +4 -0
  76. package/server/models/constructor-items/common.js +6 -1
  77. package/server/models/constructor-items/sub-blocks.d.ts +4 -1
  78. package/widget/index.js +1 -1
@@ -1,4 +1,4 @@
1
- import { CustomControlsButtonPositioning, CustomControlsType, MediaVideoControlsType, Theme } from '../../models';
1
+ import { CustomControlsButtonPositioning, CustomControlsType, MediaVideoControlsType, QuoteType, Theme } from '../../models';
2
2
  export declare const mediaDirection: string[];
3
3
  export declare const textSize: string[];
4
4
  export declare const containerSizesArray: string[];
@@ -19,6 +19,7 @@ export declare const sizeNumber: {
19
19
  minimum: number;
20
20
  };
21
21
  export declare const contentThemes: string[];
22
+ export declare const quoteTypes: QuoteType[];
22
23
  export declare const customControlsType: CustomControlsType[];
23
24
  export declare const customControlsButtonPositioning: CustomControlsButtonPositioning[];
24
25
  export declare const BaseProps: {
@@ -376,6 +377,9 @@ export declare const LinkProps: {
376
377
  url: {
377
378
  type: string;
378
379
  };
380
+ urlTitle: {
381
+ type: string;
382
+ };
379
383
  arrow: {
380
384
  type: string;
381
385
  };
@@ -544,6 +548,9 @@ export declare const ButtonProps: {
544
548
  url: {
545
549
  type: string;
546
550
  };
551
+ urlTitle: {
552
+ type: string;
553
+ };
547
554
  primary: {
548
555
  type: string;
549
556
  };
@@ -795,6 +802,9 @@ export declare const AnchorProps: {
795
802
  url: {
796
803
  type: string;
797
804
  };
805
+ urlTitle: {
806
+ type: string;
807
+ };
798
808
  };
799
809
  };
800
810
  export declare const BlockBaseProps: {
@@ -810,6 +820,9 @@ export declare const BlockBaseProps: {
810
820
  url: {
811
821
  type: string;
812
822
  };
823
+ urlTitle: {
824
+ type: string;
825
+ };
813
826
  };
814
827
  };
815
828
  visible: {
@@ -843,6 +856,9 @@ export declare const TitleProps: {
843
856
  url: {
844
857
  type: string;
845
858
  };
859
+ urlTitle: {
860
+ type: string;
861
+ };
846
862
  resetMargin: {
847
863
  type: string;
848
864
  };
@@ -859,6 +875,9 @@ export declare const ButtonBlock: {
859
875
  url: {
860
876
  type: string;
861
877
  };
878
+ urlTitle: {
879
+ type: string;
880
+ };
862
881
  primary: {
863
882
  type: string;
864
883
  };
@@ -1463,6 +1482,9 @@ export declare const BlockHeaderProps: {
1463
1482
  url: {
1464
1483
  type: string;
1465
1484
  };
1485
+ urlTitle: {
1486
+ type: string;
1487
+ };
1466
1488
  resetMargin: {
1467
1489
  type: string;
1468
1490
  };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BlockHeaderProps = exports.CardBase = exports.MapProps = exports.YMapMarker = exports.YMapMarkerLabel = exports.MediaProps = exports.ButtonBlock = exports.TitleProps = exports.BlockBaseProps = exports.AnchorProps = exports.withTheme = 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.BaseProps = exports.customControlsButtonPositioning = exports.customControlsType = 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;
3
+ exports.BlockHeaderProps = exports.CardBase = exports.MapProps = exports.YMapMarker = exports.YMapMarkerLabel = exports.MediaProps = exports.ButtonBlock = exports.TitleProps = exports.BlockBaseProps = exports.AnchorProps = exports.withTheme = 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.BaseProps = exports.customControlsButtonPositioning = exports.customControlsType = 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
4
  const schema_1 = require("../../components/Image/schema");
5
5
  const models_1 = require("../../models");
6
6
  const event_1 = require("./event");
@@ -19,6 +19,7 @@ exports.fileLinkTypes = ['vertical', 'horizontal'];
19
19
  exports.dividerEnum = { enum: [0, 'xxs', 'xs', 's', 'm', 'l', 'xl', 'xxl', 'xxxl'] };
20
20
  exports.sizeNumber = { type: 'number', maximum: 12, minimum: 1 };
21
21
  exports.contentThemes = ['default', 'dark', 'light'];
22
+ exports.quoteTypes = Object.values(models_1.QuoteType);
22
23
  exports.customControlsType = [
23
24
  models_1.CustomControlsType.WithMuteButton,
24
25
  models_1.CustomControlsType.WithPlayPauseButton,
@@ -210,6 +211,8 @@ exports.LinkProps = {
210
211
  contentType: 'text',
211
212
  }, url: {
212
213
  type: 'string',
214
+ }, urlTitle: {
215
+ type: 'string',
213
216
  }, arrow: {
214
217
  type: 'boolean',
215
218
  }, theme: {
@@ -285,6 +288,9 @@ exports.ButtonProps = {
285
288
  url: {
286
289
  type: 'string',
287
290
  },
291
+ urlTitle: {
292
+ type: 'string',
293
+ },
288
294
  primary: {
289
295
  type: 'boolean',
290
296
  },
@@ -439,6 +445,9 @@ exports.AnchorProps = {
439
445
  url: {
440
446
  type: 'string',
441
447
  },
448
+ urlTitle: {
449
+ type: 'string',
450
+ },
442
451
  },
443
452
  };
444
453
  exports.BlockBaseProps = Object.assign(Object.assign({}, exports.BaseProps), { anchor: exports.AnchorProps, visible: {
@@ -465,6 +474,9 @@ exports.TitleProps = {
465
474
  url: {
466
475
  type: 'string',
467
476
  },
477
+ urlTitle: {
478
+ type: 'string',
479
+ },
468
480
  resetMargin: {
469
481
  type: 'boolean',
470
482
  },
@@ -6,6 +6,9 @@ export declare const BackgroundCard: {
6
6
  url: {
7
7
  type: string;
8
8
  };
9
+ urlTitle: {
10
+ type: string;
11
+ };
9
12
  background: {
10
13
  oneOf: (({
11
14
  type: string;
@@ -163,6 +166,9 @@ export declare const BackgroundCard: {
163
166
  url: {
164
167
  type: string;
165
168
  };
169
+ urlTitle: {
170
+ type: string;
171
+ };
166
172
  resetMargin: {
167
173
  type: string;
168
174
  };
@@ -14,6 +14,8 @@ exports.BackgroundCard = {
14
14
  required: ['title', 'text'],
15
15
  properties: Object.assign(Object.assign(Object.assign(Object.assign({}, common_1.BaseProps), common_1.CardBase), BackgroundCardContentProps), { url: {
16
16
  type: 'string',
17
+ }, urlTitle: {
18
+ type: 'string',
17
19
  }, background: (0, common_1.withTheme)(schema_1.ImageObjectProps), backgroundColor: {
18
20
  type: 'string',
19
21
  }, paddingBottom: {
@@ -6,6 +6,9 @@ export declare const BasicCard: {
6
6
  url: {
7
7
  type: string;
8
8
  };
9
+ urlTitle: {
10
+ type: string;
11
+ };
9
12
  icon: {
10
13
  oneOf: ({
11
14
  type: string;
@@ -50,6 +53,9 @@ export declare const BasicCard: {
50
53
  url: {
51
54
  type: string;
52
55
  };
56
+ urlTitle: {
57
+ type: string;
58
+ };
53
59
  resetMargin: {
54
60
  type: string;
55
61
  };
@@ -13,6 +13,8 @@ exports.BasicCard = {
13
13
  required: [],
14
14
  properties: Object.assign(Object.assign(Object.assign(Object.assign({}, common_1.BaseProps), common_1.CardBase), BasicCardContentProps), { url: {
15
15
  type: 'string',
16
+ }, urlTitle: {
17
+ type: 'string',
16
18
  }, icon: schema_1.ImageProps, target: {
17
19
  type: 'string',
18
20
  enum: ['_blank', '_parent', '_top', '_self'],
@@ -59,6 +59,9 @@ export declare const ContentBase: {
59
59
  url: {
60
60
  type: string;
61
61
  };
62
+ urlTitle: {
63
+ type: string;
64
+ };
62
65
  resetMargin: {
63
66
  type: string;
64
67
  };
@@ -147,6 +150,9 @@ export declare const ContentBlock: {
147
150
  url: {
148
151
  type: string;
149
152
  };
153
+ urlTitle: {
154
+ type: string;
155
+ };
150
156
  resetMargin: {
151
157
  type: string;
152
158
  };
@@ -270,6 +270,9 @@ export declare const LayoutItem: {
270
270
  url: {
271
271
  type: string;
272
272
  };
273
+ urlTitle: {
274
+ type: string;
275
+ };
273
276
  resetMargin: {
274
277
  type: string;
275
278
  };
@@ -60,14 +60,23 @@ unpredictable css rules order in build */
60
60
  font-size: var(--g-text-body-3-font-size);
61
61
  line-height: var(--g-text-body-3-line-height);
62
62
  }
63
- .pc-quote__content::before {
63
+ .pc-quote__content_quote-type_chevron::before {
64
64
  position: absolute;
65
65
  top: -1px;
66
66
  left: -10px;
67
67
  content: "«";
68
68
  }
69
- .pc-quote__text::after {
70
- content: "».";
69
+ .pc-quote__content_quote-type_chevron .pc-quote__text::after {
70
+ content: "»";
71
+ }
72
+ .pc-quote__content_quote-type_english-double::before {
73
+ position: absolute;
74
+ top: -1px;
75
+ left: -8px;
76
+ content: "“";
77
+ }
78
+ .pc-quote__content_quote-type_english-double .pc-quote__text::after {
79
+ content: "”";
71
80
  }
72
81
  .pc-quote__image {
73
82
  width: 100%;
@@ -11,7 +11,7 @@ const models_1 = require("../../models");
11
11
  const utils_2 = require("../../utils");
12
12
  const b = (0, utils_2.block)('quote');
13
13
  const Quote = (props) => {
14
- const { theme: textTheme = 'light', color, image, border = 'shadow', text, logo, author, url, buttonText, } = props;
14
+ const { theme: textTheme = 'light', color, image, border = 'shadow', text, logo, author, url, urlTitle, buttonText, quoteType = models_1.QuoteType.Chevron, } = props;
15
15
  const theme = (0, theme_1.useTheme)();
16
16
  const imageThemed = (0, utils_2.getThemedValue)(image, theme);
17
17
  const imageData = (0, utils_1.getMediaImage)(imageThemed);
@@ -19,13 +19,13 @@ const Quote = (props) => {
19
19
  const handleButtonClick = (0, react_1.useCallback)(() => handleAnalytics(), [handleAnalytics]);
20
20
  const renderFooter = Boolean(author || url) && (react_1.default.createElement("div", { className: b('author-wrapper') },
21
21
  author && (react_1.default.createElement(components_1.Author, { className: b('author', { theme: textTheme }), author: author, type: models_1.AuthorType.Line })),
22
- url && buttonText && (react_1.default.createElement(uikit_1.Button, { view: "outlined", size: "xl", href: url, className: b('link-button', { theme: textTheme }), onClick: handleButtonClick }, buttonText))));
22
+ url && buttonText && (react_1.default.createElement(uikit_1.Button, { view: "outlined", size: "xl", href: url, className: b('link-button', { theme: textTheme }), onClick: handleButtonClick, title: urlTitle }, buttonText))));
23
23
  const logoProps = (0, utils_1.getMediaImage)(logo);
24
24
  return (react_1.default.createElement("div", { className: b({ theme: textTheme, border }), style: color ? { backgroundColor: color } : {} },
25
25
  react_1.default.createElement("div", { key: text, className: b('content-wrapper') },
26
26
  react_1.default.createElement("div", null,
27
27
  react_1.default.createElement(components_1.Image, Object.assign({ className: b('logo') }, logoProps)),
28
- react_1.default.createElement("div", { className: b('content') },
28
+ react_1.default.createElement("div", { className: b('content', { 'quote-type': quoteType }) },
29
29
  react_1.default.createElement("span", { className: b('text') },
30
30
  react_1.default.createElement(components_1.HTML, null, text)))),
31
31
  renderFooter),
@@ -51,6 +51,9 @@ export declare const Quote: {
51
51
  url: {
52
52
  type: string;
53
53
  };
54
+ urlTitle: {
55
+ type: string;
56
+ };
54
57
  buttonText: {
55
58
  type: string;
56
59
  };
@@ -90,6 +93,10 @@ export declare const Quote: {
90
93
  };
91
94
  };
92
95
  };
96
+ quoteType: {
97
+ type: string;
98
+ enum: import("../..").QuoteType[];
99
+ };
93
100
  type: {};
94
101
  when: {
95
102
  type: string;
@@ -14,8 +14,13 @@ exports.Quote = {
14
14
  type: 'string',
15
15
  }, url: {
16
16
  type: 'string',
17
+ }, urlTitle: {
18
+ type: 'string',
17
19
  }, buttonText: {
18
20
  type: 'string',
19
- }, theme: common_1.ThemeProps, author: common_1.authorItem }),
21
+ }, theme: common_1.ThemeProps, author: common_1.authorItem, quoteType: {
22
+ type: 'string',
23
+ enum: common_1.quoteTypes,
24
+ } }),
20
25
  },
21
26
  };
@@ -58,6 +58,9 @@ export declare const BannerCardProps: {
58
58
  url: {
59
59
  type: string;
60
60
  };
61
+ urlTitle: {
62
+ type: string;
63
+ };
61
64
  primary: {
62
65
  type: string;
63
66
  };
@@ -354,6 +357,9 @@ export declare const BannerBlock: {
354
357
  url: {
355
358
  type: string;
356
359
  };
360
+ urlTitle: {
361
+ type: string;
362
+ };
357
363
  primary: {
358
364
  type: string;
359
365
  };
@@ -651,6 +657,9 @@ export declare const BannerCard: {
651
657
  url: {
652
658
  type: string;
653
659
  };
660
+ urlTitle: {
661
+ type: string;
662
+ };
654
663
  primary: {
655
664
  type: string;
656
665
  };
@@ -34,6 +34,9 @@ export declare const CardLayoutProps: {
34
34
  url: {
35
35
  type: string;
36
36
  };
37
+ urlTitle: {
38
+ type: string;
39
+ };
37
40
  resetMargin: {
38
41
  type: string;
39
42
  };
@@ -60,6 +63,9 @@ export declare const CardLayoutProps: {
60
63
  url: {
61
64
  type: string;
62
65
  };
66
+ urlTitle: {
67
+ type: string;
68
+ };
63
69
  };
64
70
  };
65
71
  visible: {
@@ -115,6 +121,9 @@ export declare const CardLayoutBlock: {
115
121
  url: {
116
122
  type: string;
117
123
  };
124
+ urlTitle: {
125
+ type: string;
126
+ };
118
127
  resetMargin: {
119
128
  type: string;
120
129
  };
@@ -141,6 +150,9 @@ export declare const CardLayoutBlock: {
141
150
  url: {
142
151
  type: string;
143
152
  };
153
+ urlTitle: {
154
+ type: string;
155
+ };
144
156
  };
145
157
  };
146
158
  visible: {
@@ -83,6 +83,9 @@ export declare const ContentLayoutBlock: {
83
83
  url: {
84
84
  type: string;
85
85
  };
86
+ urlTitle: {
87
+ type: string;
88
+ };
86
89
  resetMargin: {
87
90
  type: string;
88
91
  };
@@ -224,6 +227,9 @@ export declare const ContentLayoutBlock: {
224
227
  url: {
225
228
  type: string;
226
229
  };
230
+ urlTitle: {
231
+ type: string;
232
+ };
227
233
  };
228
234
  };
229
235
  visible: {
@@ -26,6 +26,9 @@ export declare const ExtendedFeaturesItem: {
26
26
  url: {
27
27
  type: string;
28
28
  };
29
+ urlTitle: {
30
+ type: string;
31
+ };
29
32
  arrow: {
30
33
  type: string;
31
34
  };
@@ -196,6 +199,9 @@ export declare const ExtendedFeaturesBlock: {
196
199
  url: {
197
200
  type: string;
198
201
  };
202
+ urlTitle: {
203
+ type: string;
204
+ };
199
205
  resetMargin: {
200
206
  type: string;
201
207
  };
@@ -222,6 +228,9 @@ export declare const ExtendedFeaturesBlock: {
222
228
  url: {
223
229
  type: string;
224
230
  };
231
+ urlTitle: {
232
+ type: string;
233
+ };
225
234
  };
226
235
  };
227
236
  visible: {
@@ -90,6 +90,9 @@ export declare const FilterProps: {
90
90
  url: {
91
91
  type: string;
92
92
  };
93
+ urlTitle: {
94
+ type: string;
95
+ };
93
96
  resetMargin: {
94
97
  type: string;
95
98
  };
@@ -116,6 +119,9 @@ export declare const FilterProps: {
116
119
  url: {
117
120
  type: string;
118
121
  };
122
+ urlTitle: {
123
+ type: string;
124
+ };
119
125
  };
120
126
  };
121
127
  visible: {
@@ -200,6 +206,9 @@ export declare const FilterBlock: {
200
206
  url: {
201
207
  type: string;
202
208
  };
209
+ urlTitle: {
210
+ type: string;
211
+ };
203
212
  resetMargin: {
204
213
  type: string;
205
214
  };
@@ -226,6 +235,9 @@ export declare const FilterBlock: {
226
235
  url: {
227
236
  type: string;
228
237
  };
238
+ urlTitle: {
239
+ type: string;
240
+ };
229
241
  };
230
242
  };
231
243
  visible: {
@@ -18,7 +18,7 @@ const Background = ({ background, isMobile }) => {
18
18
  };
19
19
  const FullWidthBackground = ({ background }) => (React.createElement("div", { className: b('background', { ['full-width']: true }), style: { backgroundColor: background === null || background === void 0 ? void 0 : background.color } }));
20
20
  export const HeaderBlock = (props) => {
21
- const { title, overtitle, description, buttons, image, video, width = 'm', imageSize, offset = 'default', background, theme: textTheme = 'light', verticalOffset = 'm', className, breadcrumbs, status, children, mediaView = 'full', } = props;
21
+ const { title, overtitle, description, buttons, image, video, width = 'm', imageSize, offset = 'default', background, theme: textTheme = 'light', verticalOffset = 'm', className, breadcrumbs, status, renderTitle, children, mediaView = 'full', } = props;
22
22
  const isMobile = useContext(MobileContext);
23
23
  const theme = useTheme();
24
24
  const hasRightSideImage = Boolean(image || video);
@@ -56,7 +56,7 @@ export const HeaderBlock = (props) => {
56
56
  React.createElement(HTML, null, overtitle))),
57
57
  React.createElement("h1", { className: b('title') },
58
58
  status,
59
- React.createElement(HTML, null, title)),
59
+ renderTitle ? renderTitle(title) : React.createElement(HTML, null, title)),
60
60
  description && (React.createElement("div", { className: b('description') },
61
61
  React.createElement(YFMWrapper, { content: description, modifiers: {
62
62
  constructor: true,
@@ -1228,6 +1228,9 @@ export declare const HeaderBlock: {
1228
1228
  url: {
1229
1229
  type: string;
1230
1230
  };
1231
+ urlTitle: {
1232
+ type: string;
1233
+ };
1231
1234
  };
1232
1235
  };
1233
1236
  visible: {
@@ -547,6 +547,9 @@ export declare const HeaderSliderBlock: {
547
547
  url: {
548
548
  type: string;
549
549
  };
550
+ urlTitle: {
551
+ type: string;
552
+ };
550
553
  };
551
554
  };
552
555
  visible: {
@@ -127,6 +127,9 @@ export declare const IconsProps: {
127
127
  url: {
128
128
  type: string;
129
129
  };
130
+ urlTitle: {
131
+ type: string;
132
+ };
130
133
  };
131
134
  };
132
135
  visible: {
@@ -275,6 +278,9 @@ export declare const IconsBlock: {
275
278
  url: {
276
279
  type: string;
277
280
  };
281
+ urlTitle: {
282
+ type: string;
283
+ };
278
284
  };
279
285
  };
280
286
  visible: {
@@ -75,6 +75,9 @@ export declare const InfoBlock: {
75
75
  url: {
76
76
  type: string;
77
77
  };
78
+ urlTitle: {
79
+ type: string;
80
+ };
78
81
  resetMargin: {
79
82
  type: string;
80
83
  };
@@ -159,6 +162,9 @@ export declare const InfoBlock: {
159
162
  url: {
160
163
  type: string;
161
164
  };
165
+ urlTitle: {
166
+ type: string;
167
+ };
162
168
  resetMargin: {
163
169
  type: string;
164
170
  };
@@ -141,6 +141,9 @@ export declare const MapBlock: {
141
141
  url: {
142
142
  type: string;
143
143
  };
144
+ urlTitle: {
145
+ type: string;
146
+ };
144
147
  primary: {
145
148
  type: string;
146
149
  };
@@ -389,6 +392,9 @@ export declare const MapBlock: {
389
392
  url: {
390
393
  type: string;
391
394
  };
395
+ urlTitle: {
396
+ type: string;
397
+ };
392
398
  resetMargin: {
393
399
  type: string;
394
400
  };
@@ -452,6 +458,9 @@ export declare const MapBlock: {
452
458
  url: {
453
459
  type: string;
454
460
  };
461
+ urlTitle: {
462
+ type: string;
463
+ };
455
464
  };
456
465
  };
457
466
  visible: {
@@ -280,6 +280,9 @@ export declare const MediaBlockBaseProps: {
280
280
  url: {
281
281
  type: string;
282
282
  };
283
+ urlTitle: {
284
+ type: string;
285
+ };
283
286
  primary: {
284
287
  type: string;
285
288
  };
@@ -528,6 +531,9 @@ export declare const MediaBlockBaseProps: {
528
531
  url: {
529
532
  type: string;
530
533
  };
534
+ urlTitle: {
535
+ type: string;
536
+ };
531
537
  resetMargin: {
532
538
  type: string;
533
539
  };
@@ -591,6 +597,9 @@ export declare const MediaBlockBaseProps: {
591
597
  url: {
592
598
  type: string;
593
599
  };
600
+ urlTitle: {
601
+ type: string;
602
+ };
594
603
  };
595
604
  };
596
605
  visible: {
@@ -904,6 +913,9 @@ export declare const MediaBlock: {
904
913
  url: {
905
914
  type: string;
906
915
  };
916
+ urlTitle: {
917
+ type: string;
918
+ };
907
919
  primary: {
908
920
  type: string;
909
921
  };
@@ -1152,6 +1164,9 @@ export declare const MediaBlock: {
1152
1164
  url: {
1153
1165
  type: string;
1154
1166
  };
1167
+ urlTitle: {
1168
+ type: string;
1169
+ };
1155
1170
  resetMargin: {
1156
1171
  type: string;
1157
1172
  };
@@ -1215,6 +1230,9 @@ export declare const MediaBlock: {
1215
1230
  url: {
1216
1231
  type: string;
1217
1232
  };
1233
+ urlTitle: {
1234
+ type: string;
1235
+ };
1218
1236
  };
1219
1237
  };
1220
1238
  visible: {
@@ -305,6 +305,9 @@ export declare const PromoFeaturesBlock: {
305
305
  url: {
306
306
  type: string;
307
307
  };
308
+ urlTitle: {
309
+ type: string;
310
+ };
308
311
  resetMargin: {
309
312
  type: string;
310
313
  };
@@ -331,6 +334,9 @@ export declare const PromoFeaturesBlock: {
331
334
  url: {
332
335
  type: string;
333
336
  };
337
+ urlTitle: {
338
+ type: string;
339
+ };
334
340
  };
335
341
  };
336
342
  visible: {