@gravity-ui/page-constructor 5.14.3 → 5.15.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 (69) hide show
  1. package/build/cjs/blocks/CardLayout/CardLayout.js +3 -1
  2. package/build/cjs/blocks/ContentLayout/ContentLayout.js +4 -1
  3. package/build/cjs/blocks/ExtendedFeatures/schema.d.ts +13 -0
  4. package/build/cjs/blocks/Form/schema.d.ts +13 -0
  5. package/build/cjs/blocks/Header/schema.d.ts +104 -0
  6. package/build/cjs/blocks/HeaderSlider/schema.d.ts +39 -0
  7. package/build/cjs/blocks/Icons/Icons.js +4 -1
  8. package/build/cjs/blocks/Media/schema.d.ts +52 -0
  9. package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +4 -1
  10. package/build/cjs/blocks/PromoFeaturesBlock/schema.d.ts +26 -0
  11. package/build/cjs/blocks/Tabs/schema.d.ts +39 -0
  12. package/build/cjs/components/Author/schema.d.ts +13 -0
  13. package/build/cjs/components/Image/schema.d.ts +13 -0
  14. package/build/cjs/components/Image/schema.js +10 -0
  15. package/build/cjs/editor/containers/Editor/hooks/useEditorState.js +1 -1
  16. package/build/cjs/editor/types/index.d.ts +2 -1
  17. package/build/cjs/models/constructor-items/blocks.d.ts +5 -5
  18. package/build/cjs/models/constructor-items/common.d.ts +1 -1
  19. package/build/cjs/models/constructor-items/sub-blocks.d.ts +5 -5
  20. package/build/cjs/navigation/schema.d.ts +13 -0
  21. package/build/cjs/schema/constants.d.ts +91 -0
  22. package/build/cjs/schema/validators/common.d.ts +52 -0
  23. package/build/cjs/sub-blocks/BasicCard/BasicCard.js +4 -1
  24. package/build/cjs/sub-blocks/BasicCard/schema.d.ts +13 -0
  25. package/build/cjs/sub-blocks/Content/schema.d.ts +13 -0
  26. package/build/cjs/sub-blocks/ImageCard/ImageCard.js +4 -1
  27. package/build/cjs/sub-blocks/ImageCard/schema.d.ts +13 -0
  28. package/build/cjs/sub-blocks/LayoutItem/LayoutItem.js +2 -1
  29. package/build/cjs/sub-blocks/LayoutItem/schema.d.ts +26 -0
  30. package/build/cjs/sub-blocks/MediaCard/schema.d.ts +26 -0
  31. package/build/cjs/sub-blocks/Quote/Quote.js +6 -2
  32. package/build/cjs/sub-blocks/Quote/schema.d.ts +39 -0
  33. package/build/esm/blocks/CardLayout/CardLayout.js +4 -2
  34. package/build/esm/blocks/ContentLayout/ContentLayout.js +5 -2
  35. package/build/esm/blocks/ExtendedFeatures/schema.d.ts +13 -0
  36. package/build/esm/blocks/Form/schema.d.ts +13 -0
  37. package/build/esm/blocks/Header/schema.d.ts +104 -0
  38. package/build/esm/blocks/HeaderSlider/schema.d.ts +39 -0
  39. package/build/esm/blocks/Icons/Icons.js +5 -2
  40. package/build/esm/blocks/Media/schema.d.ts +52 -0
  41. package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.js +5 -2
  42. package/build/esm/blocks/PromoFeaturesBlock/schema.d.ts +26 -0
  43. package/build/esm/blocks/Tabs/schema.d.ts +39 -0
  44. package/build/esm/components/Author/schema.d.ts +13 -0
  45. package/build/esm/components/Image/schema.d.ts +13 -0
  46. package/build/esm/components/Image/schema.js +10 -0
  47. package/build/esm/editor/containers/Editor/hooks/useEditorState.js +1 -1
  48. package/build/esm/editor/types/index.d.ts +2 -1
  49. package/build/esm/models/constructor-items/blocks.d.ts +5 -5
  50. package/build/esm/models/constructor-items/common.d.ts +1 -1
  51. package/build/esm/models/constructor-items/sub-blocks.d.ts +5 -5
  52. package/build/esm/navigation/schema.d.ts +13 -0
  53. package/build/esm/schema/constants.d.ts +91 -0
  54. package/build/esm/schema/validators/common.d.ts +52 -0
  55. package/build/esm/sub-blocks/BasicCard/BasicCard.js +5 -2
  56. package/build/esm/sub-blocks/BasicCard/schema.d.ts +13 -0
  57. package/build/esm/sub-blocks/Content/schema.d.ts +13 -0
  58. package/build/esm/sub-blocks/ImageCard/ImageCard.js +5 -2
  59. package/build/esm/sub-blocks/ImageCard/schema.d.ts +13 -0
  60. package/build/esm/sub-blocks/LayoutItem/LayoutItem.js +2 -1
  61. package/build/esm/sub-blocks/LayoutItem/schema.d.ts +26 -0
  62. package/build/esm/sub-blocks/MediaCard/schema.d.ts +26 -0
  63. package/build/esm/sub-blocks/Quote/Quote.js +6 -2
  64. package/build/esm/sub-blocks/Quote/schema.d.ts +39 -0
  65. package/package.json +1 -1
  66. package/server/models/constructor-items/blocks.d.ts +5 -5
  67. package/server/models/constructor-items/common.d.ts +1 -1
  68. package/server/models/constructor-items/sub-blocks.d.ts +5 -5
  69. package/widget/index.js +1 -1
@@ -26,6 +26,19 @@ export declare const HeaderBackgroundProps: {
26
26
  type: string;
27
27
  pattern: string;
28
28
  optionName: string;
29
+ items?: undefined;
30
+ } | {
31
+ type: string;
32
+ items: {
33
+ type: string;
34
+ properties: {
35
+ when: {
36
+ type: string;
37
+ };
38
+ };
39
+ };
40
+ optionName: string;
41
+ pattern?: undefined;
29
42
  })[];
30
43
  type?: undefined;
31
44
  items?: undefined;
@@ -43,6 +56,19 @@ export declare const HeaderBackgroundProps: {
43
56
  type: string;
44
57
  pattern: string;
45
58
  optionName: string;
59
+ items?: undefined;
60
+ } | {
61
+ type: string;
62
+ items: {
63
+ type: string;
64
+ properties: {
65
+ when: {
66
+ type: string;
67
+ };
68
+ };
69
+ };
70
+ optionName: string;
71
+ pattern?: undefined;
46
72
  })[];
47
73
  };
48
74
  optionName: string;
@@ -327,6 +353,19 @@ export declare const HeaderProperties: {
327
353
  type: string;
328
354
  pattern: string;
329
355
  optionName: string;
356
+ items?: undefined;
357
+ } | {
358
+ type: string;
359
+ items: {
360
+ type: string;
361
+ properties: {
362
+ when: {
363
+ type: string;
364
+ };
365
+ };
366
+ };
367
+ optionName: string;
368
+ pattern?: undefined;
330
369
  })[];
331
370
  } & {
332
371
  optionName: string;
@@ -489,6 +528,19 @@ export declare const HeaderProperties: {
489
528
  type: string;
490
529
  pattern: string;
491
530
  optionName: string;
531
+ items?: undefined;
532
+ } | {
533
+ type: string;
534
+ items: {
535
+ type: string;
536
+ properties: {
537
+ when: {
538
+ type: string;
539
+ };
540
+ };
541
+ };
542
+ optionName: string;
543
+ pattern?: undefined;
492
544
  })[];
493
545
  type?: undefined;
494
546
  items?: undefined;
@@ -506,6 +558,19 @@ export declare const HeaderProperties: {
506
558
  type: string;
507
559
  pattern: string;
508
560
  optionName: string;
561
+ items?: undefined;
562
+ } | {
563
+ type: string;
564
+ items: {
565
+ type: string;
566
+ properties: {
567
+ when: {
568
+ type: string;
569
+ };
570
+ };
571
+ };
572
+ optionName: string;
573
+ pattern?: undefined;
509
574
  })[];
510
575
  };
511
576
  optionName: string;
@@ -839,6 +904,19 @@ export declare const HeaderBlock: {
839
904
  type: string;
840
905
  pattern: string;
841
906
  optionName: string;
907
+ items?: undefined;
908
+ } | {
909
+ type: string;
910
+ items: {
911
+ type: string;
912
+ properties: {
913
+ when: {
914
+ type: string;
915
+ };
916
+ };
917
+ };
918
+ optionName: string;
919
+ pattern?: undefined;
842
920
  })[];
843
921
  } & {
844
922
  optionName: string;
@@ -1001,6 +1079,19 @@ export declare const HeaderBlock: {
1001
1079
  type: string;
1002
1080
  pattern: string;
1003
1081
  optionName: string;
1082
+ items?: undefined;
1083
+ } | {
1084
+ type: string;
1085
+ items: {
1086
+ type: string;
1087
+ properties: {
1088
+ when: {
1089
+ type: string;
1090
+ };
1091
+ };
1092
+ };
1093
+ optionName: string;
1094
+ pattern?: undefined;
1004
1095
  })[];
1005
1096
  type?: undefined;
1006
1097
  items?: undefined;
@@ -1018,6 +1109,19 @@ export declare const HeaderBlock: {
1018
1109
  type: string;
1019
1110
  pattern: string;
1020
1111
  optionName: string;
1112
+ items?: undefined;
1113
+ } | {
1114
+ type: string;
1115
+ items: {
1116
+ type: string;
1117
+ properties: {
1118
+ when: {
1119
+ type: string;
1120
+ };
1121
+ };
1122
+ };
1123
+ optionName: string;
1124
+ pattern?: undefined;
1021
1125
  })[];
1022
1126
  };
1023
1127
  optionName: string;
@@ -55,6 +55,19 @@ export declare const HeaderSliderBlock: {
55
55
  type: string;
56
56
  pattern: string;
57
57
  optionName: string;
58
+ items?: undefined;
59
+ } | {
60
+ type: string;
61
+ items: {
62
+ type: string;
63
+ properties: {
64
+ when: {
65
+ type: string;
66
+ };
67
+ };
68
+ };
69
+ optionName: string;
70
+ pattern?: undefined;
58
71
  })[];
59
72
  } & {
60
73
  optionName: string;
@@ -217,6 +230,19 @@ export declare const HeaderSliderBlock: {
217
230
  type: string;
218
231
  pattern: string;
219
232
  optionName: string;
233
+ items?: undefined;
234
+ } | {
235
+ type: string;
236
+ items: {
237
+ type: string;
238
+ properties: {
239
+ when: {
240
+ type: string;
241
+ };
242
+ };
243
+ };
244
+ optionName: string;
245
+ pattern?: undefined;
220
246
  })[];
221
247
  type?: undefined;
222
248
  items?: undefined;
@@ -234,6 +260,19 @@ export declare const HeaderSliderBlock: {
234
260
  type: string;
235
261
  pattern: string;
236
262
  optionName: string;
263
+ items?: undefined;
264
+ } | {
265
+ type: string;
266
+ items: {
267
+ type: string;
268
+ properties: {
269
+ when: {
270
+ type: string;
271
+ };
272
+ };
273
+ };
274
+ optionName: string;
275
+ pattern?: undefined;
237
276
  })[];
238
277
  };
239
278
  optionName: string;
@@ -1,8 +1,9 @@
1
1
  import React, { Fragment, useCallback, useContext } from 'react';
2
2
  import { Image, Title } from '../../components';
3
3
  import { LocationContext } from '../../context/locationContext';
4
+ import { useTheme } from '../../context/theme';
4
5
  import { useAnalytics } from '../../hooks';
5
- import { block, getLinkProps } from '../../utils';
6
+ import { block, getLinkProps, getThemedValue } from '../../utils';
6
7
  import './Icons.css';
7
8
  const b = block('icons-block');
8
9
  const getItemContent = (item) => (React.createElement(Fragment, null,
@@ -11,13 +12,15 @@ const getItemContent = (item) => (React.createElement(Fragment, null,
11
12
  const Icons = ({ title, description, size = 's', colSizes = { all: 12 }, items }) => {
12
13
  const { hostname } = useContext(LocationContext);
13
14
  const handleAnalytics = useAnalytics();
15
+ const theme = useTheme();
14
16
  const onClick = useCallback(({ analyticsEvents, url }) => {
15
17
  handleAnalytics(analyticsEvents, { url });
16
18
  }, [handleAnalytics]);
17
19
  return (React.createElement("div", { className: b({ size }) },
18
20
  (title || description) && (React.createElement(Title, { className: b('header'), title: title, subtitle: description, colSizes: colSizes })),
19
21
  items.map((item) => {
20
- const itemContent = getItemContent(item);
22
+ const themedSrc = getThemedValue(item.src, theme);
23
+ const itemContent = getItemContent(Object.assign(Object.assign({}, item), { src: themedSrc }));
21
24
  const { url, text } = item;
22
25
  return url ? (React.createElement("a", Object.assign({ className: b('item'), key: url, href: url, "aria-label": text, title: text }, getLinkProps(url, hostname), { onClick: () => onClick(item) }), itemContent)) : (React.createElement("div", { className: b('item'), key: text }, itemContent));
23
26
  })));
@@ -20,6 +20,19 @@ export declare const Media: {
20
20
  type: string;
21
21
  pattern: string;
22
22
  optionName: string;
23
+ items?: undefined;
24
+ } | {
25
+ type: string;
26
+ items: {
27
+ type: string;
28
+ properties: {
29
+ when: {
30
+ type: string;
31
+ };
32
+ };
33
+ };
34
+ optionName: string;
35
+ pattern?: undefined;
23
36
  })[];
24
37
  type?: undefined;
25
38
  items?: undefined;
@@ -37,6 +50,19 @@ export declare const Media: {
37
50
  type: string;
38
51
  pattern: string;
39
52
  optionName: string;
53
+ items?: undefined;
54
+ } | {
55
+ type: string;
56
+ items: {
57
+ type: string;
58
+ properties: {
59
+ when: {
60
+ type: string;
61
+ };
62
+ };
63
+ };
64
+ optionName: string;
65
+ pattern?: undefined;
40
66
  })[];
41
67
  };
42
68
  optionName: string;
@@ -617,6 +643,19 @@ export declare const MediaBlock: {
617
643
  type: string;
618
644
  pattern: string;
619
645
  optionName: string;
646
+ items?: undefined;
647
+ } | {
648
+ type: string;
649
+ items: {
650
+ type: string;
651
+ properties: {
652
+ when: {
653
+ type: string;
654
+ };
655
+ };
656
+ };
657
+ optionName: string;
658
+ pattern?: undefined;
620
659
  })[];
621
660
  type?: undefined;
622
661
  items?: undefined;
@@ -634,6 +673,19 @@ export declare const MediaBlock: {
634
673
  type: string;
635
674
  pattern: string;
636
675
  optionName: string;
676
+ items?: undefined;
677
+ } | {
678
+ type: string;
679
+ items: {
680
+ type: string;
681
+ properties: {
682
+ when: {
683
+ type: string;
684
+ };
685
+ };
686
+ };
687
+ optionName: string;
688
+ pattern?: undefined;
637
689
  })[];
638
690
  };
639
691
  optionName: string;
@@ -6,7 +6,8 @@ import Media from '../../components/Media/Media';
6
6
  import Title from '../../components/Title/Title';
7
7
  import YFMWrapper from '../../components/YFMWrapper/YFMWrapper';
8
8
  import { BREAKPOINTS } from '../../constants';
9
- import { block } from '../../utils';
9
+ import { useTheme } from '../../context/theme';
10
+ import { block, getThemedValue } from '../../utils';
10
11
  import './PromoFeaturesBlock.css';
11
12
  const b = block('PromoFeaturesBlock');
12
13
  const breakpointColumns = {
@@ -17,12 +18,14 @@ const breakpointColumns = {
17
18
  const PromoFeaturesBlock = (props) => {
18
19
  const { items, title, description, theme, animated = true } = props;
19
20
  const backgroundTheme = theme || 'default';
21
+ const globalTheme = useTheme();
20
22
  return (React.createElement(AnimateBlock, { className: b({ [backgroundTheme]: true }), animate: animated },
21
23
  React.createElement(FullWidthBackground, { className: b('background', { [backgroundTheme]: true }) }),
22
24
  React.createElement(Title, { title: title, subtitle: description, className: b('header') }),
23
25
  React.createElement(BalancedMasonry, { breakpointCols: breakpointColumns, className: b('card-container'), columnClassName: b('card-container-column') }, items.map(({ title: cardTitle, text, media, theme: cardTheme }, index) => {
24
26
  const blockModifier = backgroundTheme === 'default' ? 'default' : 'light';
25
27
  const themeMod = cardTheme || blockModifier || '';
28
+ const themedMedia = getThemedValue(media, globalTheme);
26
29
  return (React.createElement("div", { key: index, className: b('card', {
27
30
  'no-media': !media,
28
31
  [themeMod]: Boolean(themeMod),
@@ -31,7 +34,7 @@ const PromoFeaturesBlock = (props) => {
31
34
  React.createElement("h3", { className: b('card-title') }, cardTitle),
32
35
  React.createElement("div", { className: b('card-text') },
33
36
  React.createElement(YFMWrapper, { content: text, modifiers: { constructor: true } }))),
34
- media && React.createElement(Media, Object.assign({ className: b('card-media') }, media))));
37
+ media && React.createElement(Media, Object.assign({ className: b('card-media') }, themedMedia))));
35
38
  }))));
36
39
  };
37
40
  export default PromoFeaturesBlock;
@@ -36,6 +36,19 @@ export declare const PromoFeaturesItem: {
36
36
  type: string;
37
37
  pattern: string;
38
38
  optionName: string;
39
+ items?: undefined;
40
+ } | {
41
+ type: string;
42
+ items: {
43
+ type: string;
44
+ properties: {
45
+ when: {
46
+ type: string;
47
+ };
48
+ };
49
+ };
50
+ optionName: string;
51
+ pattern?: undefined;
39
52
  })[];
40
53
  type?: undefined;
41
54
  items?: undefined;
@@ -53,6 +66,19 @@ export declare const PromoFeaturesItem: {
53
66
  type: string;
54
67
  pattern: string;
55
68
  optionName: string;
69
+ items?: undefined;
70
+ } | {
71
+ type: string;
72
+ items: {
73
+ type: string;
74
+ properties: {
75
+ when: {
76
+ type: string;
77
+ };
78
+ };
79
+ };
80
+ optionName: string;
81
+ pattern?: undefined;
56
82
  })[];
57
83
  };
58
84
  optionName: string;
@@ -31,6 +31,19 @@ export declare const tabsItem: {
31
31
  type: string;
32
32
  pattern: string;
33
33
  optionName: string;
34
+ items?: undefined;
35
+ } | {
36
+ type: string;
37
+ items: {
38
+ type: string;
39
+ properties: {
40
+ when: {
41
+ type: string;
42
+ };
43
+ };
44
+ };
45
+ optionName: string;
46
+ pattern?: undefined;
34
47
  })[];
35
48
  type?: undefined;
36
49
  items?: undefined;
@@ -48,6 +61,19 @@ export declare const tabsItem: {
48
61
  type: string;
49
62
  pattern: string;
50
63
  optionName: string;
64
+ items?: undefined;
65
+ } | {
66
+ type: string;
67
+ items: {
68
+ type: string;
69
+ properties: {
70
+ when: {
71
+ type: string;
72
+ };
73
+ };
74
+ };
75
+ optionName: string;
76
+ pattern?: undefined;
51
77
  })[];
52
78
  };
53
79
  optionName: string;
@@ -425,6 +451,19 @@ export declare const tabsItem: {
425
451
  type: string;
426
452
  pattern: string;
427
453
  optionName: string;
454
+ items?: undefined;
455
+ } | {
456
+ type: string;
457
+ items: {
458
+ type: string;
459
+ properties: {
460
+ when: {
461
+ type: string;
462
+ };
463
+ };
464
+ };
465
+ optionName: string;
466
+ pattern?: undefined;
428
467
  })[];
429
468
  } & {
430
469
  optionName: string;
@@ -28,6 +28,19 @@ export declare const author: {
28
28
  type: string;
29
29
  pattern: string;
30
30
  optionName: string;
31
+ items?: undefined;
32
+ } | {
33
+ type: string;
34
+ items: {
35
+ type: string;
36
+ properties: {
37
+ when: {
38
+ type: string;
39
+ };
40
+ };
41
+ };
42
+ optionName: string;
43
+ pattern?: undefined;
31
44
  })[];
32
45
  };
33
46
  description: {
@@ -110,6 +110,19 @@ export declare const ImageProps: {
110
110
  type: string;
111
111
  pattern: string;
112
112
  optionName: string;
113
+ items?: undefined;
114
+ } | {
115
+ type: string;
116
+ items: {
117
+ type: string;
118
+ properties: {
119
+ when: {
120
+ type: string;
121
+ };
122
+ };
123
+ };
124
+ optionName: string;
125
+ pattern?: undefined;
113
126
  })[];
114
127
  };
115
128
  export declare const BackgroundImageProps: {
@@ -50,6 +50,16 @@ export const ImageProps = {
50
50
  },
51
51
  filteredItem(Object.assign(Object.assign({}, ImageObjectProps), { optionName: 'options' })),
52
52
  filteredItem(Object.assign(Object.assign({}, ImageDeviceProps), { optionName: 'device options' })),
53
+ {
54
+ type: 'array',
55
+ items: filteredItem(Object.assign({}, ImageObjectProps)),
56
+ optionName: 'options list',
57
+ },
58
+ {
59
+ type: 'array',
60
+ items: filteredItem(Object.assign({}, ImageDeviceProps)),
61
+ optionName: 'device options list',
62
+ },
53
63
  ],
54
64
  };
55
65
  export const BackgroundImageProps = {
@@ -20,7 +20,7 @@ export const useEditorState = (_a) => {
20
20
  const isFormEditMode = editMode === EditModeItem.Form;
21
21
  const isDesktopViewMode = viewMode === ViewModeItem.Desktop;
22
22
  const isCodeOnlyMode = codeFullscreeModeOn && isCodeEditMode;
23
- const transformedContent = useMemo(() => (transformContent ? transformContent(content, { viewMode }) : content), [content, transformContent, viewMode]);
23
+ const transformedContent = useMemo(() => (transformContent ? transformContent(content, { viewMode, editMode }) : content), [content, transformContent, viewMode, editMode]);
24
24
  const schema = useMemo(() => generateDefaultSchema(customSchema), [customSchema]);
25
25
  const codeValidator = useCodeValidator(schema);
26
26
  const outgoingProps = useMemo(() => {
@@ -5,7 +5,8 @@ import { SchemaCustomConfig } from '../../schema';
5
5
  import { EditBlockActions } from '../components/EditBlock/EditBlock';
6
6
  export type EditorBlockId = number | string;
7
7
  interface ContentTransformersOptions {
8
- viewMode: ViewModeItem;
8
+ viewMode?: ViewModeItem;
9
+ editMode?: EditModeItem;
9
10
  }
10
11
  export type ContentTransformer = (content: PageContent, options: ContentTransformersOptions) => PageContent;
11
12
  export interface DeviceEmulationSettings {
@@ -133,7 +133,7 @@ export interface PromoFeaturesItem {
133
133
  title: string;
134
134
  text: string;
135
135
  theme?: 'accent' | 'accent-light' | 'primary';
136
- media?: MediaProps;
136
+ media?: ThemeSupporting<MediaProps>;
137
137
  }
138
138
  export interface PromoFeaturesProps extends Animatable {
139
139
  items: PromoFeaturesItem[];
@@ -233,9 +233,9 @@ export interface CardLayoutBlockProps extends Childable, Animatable, LoadableChi
233
233
  titleClassName?: string;
234
234
  description?: string;
235
235
  colSizes?: GridColumnSizesType;
236
- background?: BackgroundImageProps & {
236
+ background?: ThemeSupporting<BackgroundImageProps & {
237
237
  border?: CardBorder;
238
- };
238
+ }>;
239
239
  }
240
240
  export type FilterTag = {
241
241
  id: string;
@@ -258,7 +258,7 @@ export interface FilterBlockProps extends Animatable, LoadableChildren {
258
258
  export interface IconsBlockItemProps extends AnalyticsEventsBase {
259
259
  url: string;
260
260
  text: string;
261
- src: string;
261
+ src: ThemeSupporting<string>;
262
262
  }
263
263
  export interface IconsBlockProps {
264
264
  title?: string;
@@ -269,7 +269,7 @@ export interface IconsBlockProps {
269
269
  }
270
270
  interface ContentLayoutBlockParams {
271
271
  size?: ContentSize;
272
- background?: BackgroundImageProps;
272
+ background?: ThemeSupporting<BackgroundImageProps>;
273
273
  centered?: boolean;
274
274
  theme?: ContentTheme;
275
275
  textWidth?: ContentTextSize;
@@ -249,7 +249,7 @@ export interface AuthorItem {
249
249
  firstName: string;
250
250
  secondName: string;
251
251
  description?: string;
252
- avatar?: ImageProps | JSX.Element;
252
+ avatar?: ThemeSupporting<ImageProps> | JSX.Element;
253
253
  }
254
254
  export interface HeaderBreadCrumbsProps extends ClassNameProps {
255
255
  items: {
@@ -77,7 +77,7 @@ export interface QuoteProps extends Themable, CardBaseProps {
77
77
  text?: string;
78
78
  yfmText?: string;
79
79
  image: ThemedImage;
80
- logo: ImageProps;
80
+ logo: ThemeSupporting<ImageProps>;
81
81
  color?: string;
82
82
  /**
83
83
  * @deprecated use property button instead
@@ -106,7 +106,7 @@ export interface BackgroundCardProps extends CardBaseProps, AnalyticsEventsBase,
106
106
  export interface BasicCardProps extends CardBaseProps, AnalyticsEventsBase, CardLayoutProps, Omit<ContentBlockProps, 'colSizes' | 'centered' | 'size' | 'theme' | 'controlPosition'> {
107
107
  url: string;
108
108
  urlTitle?: string;
109
- icon?: ImageProps;
109
+ icon?: ThemeSupporting<ImageProps>;
110
110
  target?: string;
111
111
  iconPosition?: IconPosition;
112
112
  }
@@ -135,14 +135,14 @@ export interface PriceCardProps extends CardBaseProps, Pick<ContentBlockProps, '
135
135
  }
136
136
  export interface LayoutItemProps extends ClassNameProps, CardLayoutProps, AnalyticsEventsBase {
137
137
  content: Omit<ContentBlockProps, 'colSizes' | 'centered' | 'size'>;
138
- media?: MediaProps;
138
+ media?: ThemeSupporting<MediaProps>;
139
139
  metaInfo?: string[];
140
140
  border?: boolean;
141
141
  fullscreen?: boolean;
142
- icon?: PositionedIcon;
142
+ icon?: ThemeSupporting<PositionedIcon>;
143
143
  }
144
144
  export interface ImageCardProps extends CardBaseProps, CardLayoutProps, Omit<ContentBlockProps, 'colSizes' | 'centered' | 'controlPosition'> {
145
- image: ImageProps;
145
+ image: ThemeSupporting<ImageProps>;
146
146
  enableImageBorderRadius?: boolean;
147
147
  margins?: ImageCardMargins;
148
148
  direction?: ImageCardDirection;
@@ -15,6 +15,19 @@ export declare const LogoProps: {
15
15
  type: string;
16
16
  pattern: string;
17
17
  optionName: string;
18
+ items?: undefined;
19
+ } | {
20
+ type: string;
21
+ items: {
22
+ type: string;
23
+ properties: {
24
+ when: {
25
+ type: string;
26
+ };
27
+ };
28
+ };
29
+ optionName: string;
30
+ pattern?: undefined;
18
31
  })[];
19
32
  };
20
33
  text: {