@gravity-ui/page-constructor 4.46.2 → 4.47.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 (71) hide show
  1. package/README.md +2 -2
  2. package/build/cjs/blocks/Map/Map.css +14 -0
  3. package/build/cjs/blocks/Map/Map.d.ts +1 -1
  4. package/build/cjs/blocks/Map/Map.js +9 -2
  5. package/build/cjs/blocks/Map/schema.d.ts +4 -0
  6. package/build/cjs/blocks/Media/Media.css +14 -0
  7. package/build/cjs/blocks/Media/Media.js +8 -2
  8. package/build/cjs/blocks/Media/schema.d.ts +14 -0
  9. package/build/cjs/blocks/Media/schema.js +9 -2
  10. package/build/cjs/components/Map/GoogleMap.js +2 -2
  11. package/build/cjs/components/Map/YMap/YandexMap.js +2 -2
  12. package/build/cjs/components/MediaBase/MediaBase.css +6 -0
  13. package/build/cjs/components/MediaBase/MediaBase.js +2 -2
  14. package/build/cjs/constructor-items.d.ts +1 -1
  15. package/build/cjs/editor/data/templates/banner-block.json +1 -2
  16. package/build/cjs/editor/data/templates/card-layout-block.json +3 -3
  17. package/build/cjs/editor/data/templates/companies-block.json +3 -9
  18. package/build/cjs/editor/data/templates/extended-features-block.json +3 -6
  19. package/build/cjs/editor/data/templates/filter-block.json +3 -3
  20. package/build/cjs/editor/data/templates/form-block.json +1 -1
  21. package/build/cjs/editor/data/templates/header-slider-block.json +2 -12
  22. package/build/cjs/editor/data/templates/icons-block.json +5 -5
  23. package/build/cjs/editor/data/templates/media-block.json +1 -4
  24. package/build/cjs/editor/data/templates/promo-features-block.json +5 -5
  25. package/build/cjs/editor/data/templates/slider-block.json +5 -5
  26. package/build/cjs/editor/data/templates/tabs-block.json +9 -42
  27. package/build/cjs/models/constructor-items/blocks.d.ts +3 -4
  28. package/build/cjs/models/constructor-items/common.d.ts +10 -1
  29. package/build/cjs/utils/borderSelector.d.ts +7 -0
  30. package/build/cjs/utils/borderSelector.js +18 -0
  31. package/build/esm/blocks/Map/Map.css +14 -0
  32. package/build/esm/blocks/Map/Map.d.ts +2 -1
  33. package/build/esm/blocks/Map/Map.js +10 -2
  34. package/build/esm/blocks/Map/schema.d.ts +4 -0
  35. package/build/esm/blocks/Media/Media.css +14 -0
  36. package/build/esm/blocks/Media/Media.d.ts +1 -0
  37. package/build/esm/blocks/Media/Media.js +10 -3
  38. package/build/esm/blocks/Media/schema.d.ts +14 -0
  39. package/build/esm/blocks/Media/schema.js +9 -2
  40. package/build/esm/components/Map/GoogleMap.js +2 -2
  41. package/build/esm/components/Map/YMap/YandexMap.js +2 -2
  42. package/build/esm/components/MediaBase/MediaBase.css +6 -0
  43. package/build/esm/components/MediaBase/MediaBase.js +2 -2
  44. package/build/esm/constructor-items.d.ts +1 -1
  45. package/build/esm/editor/data/templates/banner-block.json +1 -2
  46. package/build/esm/editor/data/templates/card-layout-block.json +3 -3
  47. package/build/esm/editor/data/templates/companies-block.json +3 -9
  48. package/build/esm/editor/data/templates/extended-features-block.json +3 -6
  49. package/build/esm/editor/data/templates/filter-block.json +3 -3
  50. package/build/esm/editor/data/templates/form-block.json +1 -1
  51. package/build/esm/editor/data/templates/header-slider-block.json +2 -12
  52. package/build/esm/editor/data/templates/icons-block.json +5 -5
  53. package/build/esm/editor/data/templates/media-block.json +1 -4
  54. package/build/esm/editor/data/templates/promo-features-block.json +5 -5
  55. package/build/esm/editor/data/templates/slider-block.json +5 -5
  56. package/build/esm/editor/data/templates/tabs-block.json +9 -42
  57. package/build/esm/models/constructor-items/blocks.d.ts +3 -4
  58. package/build/esm/models/constructor-items/common.d.ts +10 -1
  59. package/build/esm/utils/borderSelector.d.ts +7 -0
  60. package/build/esm/utils/borderSelector.js +14 -0
  61. package/package.json +2 -1
  62. package/server/models/constructor-items/blocks.d.ts +3 -4
  63. package/server/models/constructor-items/common.d.ts +10 -1
  64. package/styles/mixins.scss +17 -0
  65. package/widget/index.js +1 -1
  66. package/build/cjs/editor/data/templates/preview-block.json +0 -38
  67. package/build/cjs/editor/data/templates/security-block.json +0 -36
  68. package/build/cjs/editor/data/templates/simple-block.json +0 -7
  69. package/build/esm/editor/data/templates/preview-block.json +0 -38
  70. package/build/esm/editor/data/templates/security-block.json +0 -36
  71. package/build/esm/editor/data/templates/simple-block.json +0 -7
@@ -22,41 +22,12 @@
22
22
  }
23
23
  ],
24
24
  "image": {
25
- "light": "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/img_8-12_white.png",
26
- "dark": "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/img_8-12_dark.png"
25
+ "light": "data:image/png;base64,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"
27
26
  }
28
27
  },
29
28
  {
30
29
  "tabName": "Lorem ipsum",
31
30
  "title": "Lorem ipsum",
32
- "media": {
33
- "light": {
34
- "video": {
35
- "src": [
36
- "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_light.webm",
37
- "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_light.mp4",
38
- "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_light.png"
39
- ],
40
- "loop": {
41
- "start": 0
42
- }
43
- },
44
- "image": "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/img_8-12_white.png"
45
- },
46
- "dark": {
47
- "video": {
48
- "src": [
49
- "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_dark.webm",
50
- "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_dark.mp4",
51
- "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_dark.png"
52
- ],
53
- "loop": {
54
- "start": 0
55
- }
56
- },
57
- "image": "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/img_8-12_dark.png"
58
- }
59
- },
60
31
  "caption": "Dolor sit amet",
61
32
  "text": "* Ut enim ad minim veniam\n* Ut enim ad minim veniam",
62
33
  "links": [
@@ -66,24 +37,20 @@
66
37
  "theme": "normal",
67
38
  "arrow": true
68
39
  }
69
- ]
40
+ ],
41
+ "image": {
42
+ "light": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQBAMAAACkCxkHAAAAKlBMVEX////P1uT09vrt7/Xh5e7W3Ojn6/La4Or8/f75+vzq7fTk6PDw8vfc4ewW56QlAAAJ+UlEQVR42uzRoU0DYQCA0RMI7B/CAsXUwgQ4NKJBMAIWFiirMAIwACgWQDANORBNapv0PvHeCm8quBzX0+JOxtmEkCQhMUJihMQIiRESIyRGSIyQGCExQmKExAiJERIjJEZIjJAYITFCYoTECIkREiMkRkiMkBghMUJihMQIiRESIyRGSIyQGCExQmKExAiJERIjJEZIjJAYITFCYoTECIkREiMkRkiMkBghMUJihMQIiRESIyRGSIyQGCExQmKExAiJERIjJEZIjJAYITFCYoTECIkREiMk5pCQ7efDzdNmrFZjc/f4frUWsmDI6cXr7fgzh/w7//4QskzI9mXe2A+ZT37WQo4e8vw2xtgL2bn/EvLLbh2rthEEYRwXElJ0Cik+yXciJga5CKoCEkakdnCKdD7kRt3dG0joBUQKN27OhR/AVXCXJpAy6VLGZd4mqYyau+zuzYwO8/2r3WqKHwNjCvL5G1AFAlz9IogZSP8L8D8QYFsQxAbkegMXEIwfCBIM4rcebiDAtiCINkh7A3cQHP0giC7INeADgviBIJog7+AJAnwgiB7IFP4g2BJEC2SBEBAsCaIDskAYCJYE0QBZIBQES4LIg0wRDoIlQaRBpqgDgj8EkQW5QT0QfCKIJMgAdUHiGUHkQNqb2iCIC4KIgeSoD4KEIFIgbyEBghVBZEB6kAFBRhAJkCiVAokLggiA3EMKBMcEqQ9yAzkQfCdIXZAolQSJC4LUBJlDEgQjgtQD6UEWBBlB6oD0H6VBTnYEqQFyB2kQrAgSDtJO5UHigiDBIKeQB8EbgoSCdKABghlBAkFyHZCEIGEgPeiAICNIEEiuBZIQJASkBy0QZAQJAMn1QBKC+IP0oAeCjCDeILkmSEIQX5ABNEEwI4gnyE9dkCFB/EAi6IJgQhAvkDttkBVBfED6qTZIvCOIB8graIPgN0E8QHJ9kIQg7iAd6INgRhBnkFsLkNcEcQXppxYg8Y4gjiAvYQGCrwRxBLm3ATkmiBtIBBsQFARxAulagawJ4gSSW4EkBHEBiWAFgglBHEC6diCXBHEAye1AkgaCXDSgDa72frADwd7YjxhfNKAWnkf/QJ5HBGlYBGlYrbMGdI7t03uBgMJBlk+D3+PorAG1mtD+lXVrCzJs3JXVhPZBHm1BxgSpBunAFgQTglSCdK1B1gSpBJlbg4wIUgmSWoPEBKkC6cAaBDOCVIB07UEuCVIBMrcHGRGkAiS1B4kJUg7SgT0IJgQpBXlxCJA1QUpBTg8BMiRIKcj5IUBOCFIGEuEQINgRpARkcBiQjCB/2bt3HKehKADDh4S8eEjcTOIZhkEirMAjhGiJBH0saOjiHUzEBjI1TSjomR1AR8nsgNkRBBAP+zqyHfueo9H/V0mV4ivix73nFoD0dEDuAVIAculK1DzIGJACkLkOyCEgfpCR0wFxa0C8IF0tkI+AeEEGWiBngHhB3muBHAHiBbnQAokA8YKstEAOAfGBjJwWiFsD4gHp6oF8BMQDMtADOQPEA3KuB3IEiAfkUg9kDIgHZK4H8gAQD0iiBzIFJA8ycnogbg1IDuSOJkgMSA7ktibIJ0ByID1NkAUgOZBzTZAjQHIgM02QMSA5kAtNkGNAciBXmiATQHIgiSbIFJAciNMEcWtAMiAdXZBHgGRA7uiCxIBkQPq6IJ8AyYDc1QV5DkgGpKcLsgAkA3JDF+QeIBmQc1eydkCOAMmAzHRBxoDYAjkBJANyqgtyAEgGJNUFiQDJgHzWBXkASAZkrgsyASQDstIFOQQEELttQRJdkCkggNgNEGNtQZwuiAMEELttQR4rBwggdgPEWIAYiz91YwFiLG4MjQWIsQAxFo/fjQWIsXiFaywWORiLZUDGYqGcsbYgl65srO31d73W9gLCdgTDsWHHWGxpM9YW5KYuyDdAMiC3dUGWgGRAurogXwFhtIbdtiBDXRCmATGeyXA/QeaaIA8BYcSf4RiCaSzGxBqLQcrGYtS4sX6CdDVBvgKSAxlqgmwA4UAXw/0C+awHMgHEAzLTAzkBhGPzLMfBksb6BXJLDyQGxAMy1APZAMLx3Zb7DZJqgRwD4gU51wK5D4gXZKAFcgaIF+SWFkgMiBdkqAWyAcQLIisdkIkA4geZ6YCcAFIAckMHZAFIAUhfB+QjIAUgQx2QDSAFIHKlATIRQIpAZhogY0AKQQYaIGeAFIJ0NEBiQApBJAkPMhVAikFOw4McALIDpBceZAHIDpBueJAYkB0gkoQGmQogu0BOQ4McALITZBAaZAHITpBOaJAYkJ0gsgoL8lAA2Q0yCwty3xzIEwPN3ds/n5+GBXn154efuckTA4m7Hv0AuR4BYixAjCUvDLRyr//55qpXG+TF3166wxcGEgttr7L+loYDiUTMXWVZ6H+QXjiQBSAlQDrhQDaAlACRNBRIJICUAemFAlkAUgpkFApkA0gpELkIA3IsgJQDuR0G5BMgJUGGSQiQ6RqQkiDyPgTIfQGkLEg3BEgMSGkQSdsHiQSQ8iB32wf5BkgFkGHSNsh0DUgFEPnQNsgbAaQKSKdtkA0glUBk1i7IiQBSDaTbLkgMSEUQSdsEiQSQqiD9NkGWgFQGkbQ9kEgAqQ7Sbw9kCUgNEEnbAokEkDog/bZAloDUApG0HZBIAKkHcqsdkBiQmiBy2QbIWACpCzJKmgeZPgKkNoh8aB7kjQBSH2R41TTIwzUge4BIv2mQpQCyD4icNgtyIIDsBzJKmgSZbgDZE0TeNQnyRQDZF0QumgM5FkC+s0/HKg1DYRzFDwhCwDVmFXTI4CSEOLg4iKDTNRSHLroVxMGgi1Pp7NBBl6LgCzha+hx9otK1hLbJ/e7t8j+v8OP4gyTOCiQdC8QAhH0rkAcEYgHClw3IHQKxAeHRAuQQgViBJM4fJBsLxAyEPecN8otA7ED49AWZIRBLEH78QGoEYgtC4QNSIxBrEIruIBUCsQeh6ApSIZAQIBTdQCoEEgaEsgtIjUBCgXDSHmSOQMKBMHEtQQYIJCQIB5dtQLIjBBIWhKTcHuR9iEBCg8DkZTuQbAACiQBCUjaANO0hkDgg8HG1CaSfg0CigcD3/zqQ/jkIJCoIjP5cM0h6k4NAooMAp89uFSS9PRuCQHYDAoyOn67fekuQ3v3r9CIHEIgByM5bsEfHAgAAAACD/K2nsaMUEiJkS8iMkBkhM0JmhMwImREyI2RGyIyQGSEzQmaEzAiZETIjZEbIjJAZITNCZoTMCJmpPTokAAAAYBjUv/XlK0xABYTECIkREiMkRkiMkBghMUJihMQIiRESIyRGSIyQGCExQmKExAiJERIjJEZIjJAYITFCYoTECIkREiMkRkiMkBghMUJihMQIiRESIyRGSIyQGCExQmKExAiJERIjJEZIjJAYITFCbt/6/exm95rhAAAAAElFTkSuQmCC"
43
+ }
70
44
  },
71
45
  {
72
46
  "tabName": "Consectetur adipiscing elit",
73
47
  "title": "Consectetur adipiscing elit",
74
48
  "additionalInfo": "Duis aute irure dolor in [reprehenderit](https://example.com) n voluptate velit esse cillum dolore eu fugiat nulla pariatur.",
75
- "media": {
76
- "light": {
77
- "youtube": "https://youtu.be/0Qd3T6skprA",
78
- "previewImg": "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_light.png"
79
- },
80
- "dark": {
81
- "youtube": "https://youtu.be/0Qd3T6skprA",
82
- "previewImg": "https://storage.yandexcloud.net/cloud-www-assets/constructor/storybook/images/video_8-12_dark.png"
83
- }
84
- },
85
49
  "caption": "Consectetur adipiscing elit",
86
- "text": "Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
50
+ "text": "Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.",
51
+ "image": {
52
+ "light": "data:image/png;base64,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"
53
+ }
87
54
  }
88
55
  ]
89
56
  }
@@ -3,7 +3,7 @@ import { ButtonSize } from '@gravity-ui/uikit';
3
3
  import { GridColumnSize, GridColumnSizesType, IndentValue } from '../../grid/types';
4
4
  import { ThemeSupporting } from '../../utils';
5
5
  import { AnalyticsEventsBase } from '../common';
6
- import { AnchorProps, Animatable, BackgroundImageProps, ButtonProps, CardBorder, ContentSize, ContentTextSize, ContentTheme, FileLinkProps, HeaderBreadCrumbsProps, HeaderImageSize, HeaderOffset, HeaderWidth, ImageDeviceProps, ImageProps, Justify, LegendTableMarkerType, LinkProps, MapProps, MediaDirection, MediaProps, TextSize, TextTheme, ThemedImage, ThemedMediaProps, ThemedMediaVideoProps, TitleItemBaseProps, TitleItemProps, YandexFormProps } from './common';
6
+ import { AnchorProps, Animatable, BackgroundImageProps, ButtonProps, CardBorder, ContentSize, ContentTextSize, ContentTheme, FileLinkProps, HeaderBreadCrumbsProps, HeaderImageSize, HeaderOffset, HeaderWidth, ImageDeviceProps, ImageProps, Justify, LegendTableMarkerType, LinkProps, MapProps, MediaDirection, MediaProps, TextSize, TextTheme, ThemedImage, ThemedMediaProps, ThemedMediaVideoProps, TitleItemBaseProps, TitleItemProps, WithBorder, YandexFormProps } from './common';
7
7
  import { BannerCardProps, HubspotFormProps, SubBlock, SubBlockModels } from './sub-blocks';
8
8
  export declare enum BlockType {
9
9
  PromoFeaturesBlock = "promo-features-block",
@@ -166,7 +166,6 @@ export interface MediaBaseBlockProps extends Animatable, MediaContentProps {
166
166
  mobileDirection?: MediaDirection;
167
167
  largeMedia?: boolean;
168
168
  mediaOnly?: boolean;
169
- disableShadow?: boolean;
170
169
  mediaOnlyColSizes?: GridColumnSizesType;
171
170
  }
172
171
  export interface MediaContentProps extends Omit<ContentBlockProps, 'colSizes' | 'text' | 'title' | 'theme' | 'centered'> {
@@ -175,10 +174,10 @@ export interface MediaContentProps extends Omit<ContentBlockProps, 'colSizes' |
175
174
  /** @deprecated Use array of buttons from ContentBlockProps instead**/
176
175
  button?: ButtonProps;
177
176
  }
178
- export interface MediaBlockProps extends MediaBaseBlockProps {
177
+ export interface MediaBlockProps extends MediaBaseBlockProps, WithBorder {
179
178
  media: ThemeSupporting<MediaProps>;
180
179
  }
181
- export interface MapBlockProps extends MediaBaseBlockProps {
180
+ export interface MapBlockProps extends MediaBaseBlockProps, WithBorder {
182
181
  map: MapProps;
183
182
  }
184
183
  export interface InfoBlockProps {
@@ -215,6 +215,7 @@ export interface BackgroundMediaProps extends MediaProps, Animatable, QAProps {
215
215
  export type Coordinate = number[];
216
216
  export interface MapBaseProps {
217
217
  zoom?: number;
218
+ className?: string;
218
219
  }
219
220
  export interface GMapProps extends MapBaseProps {
220
221
  address: string;
@@ -292,7 +293,8 @@ export interface TitleItemBaseProps {
292
293
  custom?: string | ReactNode;
293
294
  onClick?: () => void;
294
295
  }
295
- export type CardBorder = 'shadow' | 'line' | 'none';
296
+ export type MediaBorder = 'shadow' | 'line' | 'none';
297
+ export type CardBorder = MediaBorder;
296
298
  export interface CardBaseProps {
297
299
  border?: CardBorder;
298
300
  }
@@ -368,4 +370,11 @@ export interface YandexFormProps extends AnalyticsEventsBase {
368
370
  metrikaGoals?: string | string[];
369
371
  pixelEvents?: string | string[] | PixelEvent | PixelEvent[];
370
372
  }
373
+ export interface WithBorder {
374
+ border?: MediaBorder;
375
+ /**
376
+ * @deprecated use custom class for media-component
377
+ */
378
+ disableShadow?: boolean;
379
+ }
371
380
  export {};
@@ -0,0 +1,7 @@
1
+ import { MediaBorder } from '../models';
2
+ type GetMediaBorderArgs = {
3
+ border?: MediaBorder;
4
+ disableShadow?: boolean;
5
+ };
6
+ export declare const getMediaBorder: ({ border, disableShadow }: GetMediaBorderArgs) => MediaBorder;
7
+ export {};
@@ -0,0 +1,14 @@
1
+ // This is a crutch
2
+ // The crutch is created in order to help us to work with sites, which use
3
+ // "disableShadow" flag in their content.
4
+ // We have deprecated the flag.
5
+ // We have to remove it after deleting of "disableShadow" and migration of projects content
6
+ export const getMediaBorder = ({ border, disableShadow }) => {
7
+ if (border) {
8
+ return border;
9
+ }
10
+ if (disableShadow) {
11
+ return 'none';
12
+ }
13
+ return 'shadow';
14
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravity-ui/page-constructor",
3
- "version": "4.46.2",
3
+ "version": "4.47.0",
4
4
  "description": "Gravity UI Page Constructor",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -182,6 +182,7 @@
182
182
  "sass": "^1.63.6",
183
183
  "sass-loader": "^10.4.1",
184
184
  "storybook": "^7.1.0",
185
+ "string-replace-loader": "^3.1.0",
185
186
  "style-loader": "^2.0.0",
186
187
  "stylelint": "^14.11.0",
187
188
  "svg-sprite-loader": "^6.0.11",
@@ -3,7 +3,7 @@ import { ButtonSize } from '@gravity-ui/uikit';
3
3
  import { GridColumnSize, GridColumnSizesType, IndentValue } from '../../grid/types';
4
4
  import { ThemeSupporting } from '../../utils';
5
5
  import { AnalyticsEventsBase } from '../common';
6
- import { AnchorProps, Animatable, BackgroundImageProps, ButtonProps, CardBorder, ContentSize, ContentTextSize, ContentTheme, FileLinkProps, HeaderBreadCrumbsProps, HeaderImageSize, HeaderOffset, HeaderWidth, ImageDeviceProps, ImageProps, Justify, LegendTableMarkerType, LinkProps, MapProps, MediaDirection, MediaProps, TextSize, TextTheme, ThemedImage, ThemedMediaProps, ThemedMediaVideoProps, TitleItemBaseProps, TitleItemProps, YandexFormProps } from './common';
6
+ import { AnchorProps, Animatable, BackgroundImageProps, ButtonProps, CardBorder, ContentSize, ContentTextSize, ContentTheme, FileLinkProps, HeaderBreadCrumbsProps, HeaderImageSize, HeaderOffset, HeaderWidth, ImageDeviceProps, ImageProps, Justify, LegendTableMarkerType, LinkProps, MapProps, MediaDirection, MediaProps, TextSize, TextTheme, ThemedImage, ThemedMediaProps, ThemedMediaVideoProps, TitleItemBaseProps, TitleItemProps, WithBorder, YandexFormProps } from './common';
7
7
  import { BannerCardProps, HubspotFormProps, SubBlock, SubBlockModels } from './sub-blocks';
8
8
  export declare enum BlockType {
9
9
  PromoFeaturesBlock = "promo-features-block",
@@ -166,7 +166,6 @@ export interface MediaBaseBlockProps extends Animatable, MediaContentProps {
166
166
  mobileDirection?: MediaDirection;
167
167
  largeMedia?: boolean;
168
168
  mediaOnly?: boolean;
169
- disableShadow?: boolean;
170
169
  mediaOnlyColSizes?: GridColumnSizesType;
171
170
  }
172
171
  export interface MediaContentProps extends Omit<ContentBlockProps, 'colSizes' | 'text' | 'title' | 'theme' | 'centered'> {
@@ -175,10 +174,10 @@ export interface MediaContentProps extends Omit<ContentBlockProps, 'colSizes' |
175
174
  /** @deprecated Use array of buttons from ContentBlockProps instead**/
176
175
  button?: ButtonProps;
177
176
  }
178
- export interface MediaBlockProps extends MediaBaseBlockProps {
177
+ export interface MediaBlockProps extends MediaBaseBlockProps, WithBorder {
179
178
  media: ThemeSupporting<MediaProps>;
180
179
  }
181
- export interface MapBlockProps extends MediaBaseBlockProps {
180
+ export interface MapBlockProps extends MediaBaseBlockProps, WithBorder {
182
181
  map: MapProps;
183
182
  }
184
183
  export interface InfoBlockProps {
@@ -215,6 +215,7 @@ export interface BackgroundMediaProps extends MediaProps, Animatable, QAProps {
215
215
  export type Coordinate = number[];
216
216
  export interface MapBaseProps {
217
217
  zoom?: number;
218
+ className?: string;
218
219
  }
219
220
  export interface GMapProps extends MapBaseProps {
220
221
  address: string;
@@ -292,7 +293,8 @@ export interface TitleItemBaseProps {
292
293
  custom?: string | ReactNode;
293
294
  onClick?: () => void;
294
295
  }
295
- export type CardBorder = 'shadow' | 'line' | 'none';
296
+ export type MediaBorder = 'shadow' | 'line' | 'none';
297
+ export type CardBorder = MediaBorder;
296
298
  export interface CardBaseProps {
297
299
  border?: CardBorder;
298
300
  }
@@ -368,4 +370,11 @@ export interface YandexFormProps extends AnalyticsEventsBase {
368
370
  metrikaGoals?: string | string[];
369
371
  pixelEvents?: string | string[] | PixelEvent | PixelEvent[];
370
372
  }
373
+ export interface WithBorder {
374
+ border?: MediaBorder;
375
+ /**
376
+ * @deprecated use custom class for media-component
377
+ */
378
+ disableShadow?: boolean;
379
+ }
371
380
  export {};
@@ -619,3 +619,20 @@ unpredictable css rules order in build */
619
619
  }
620
620
  }
621
621
  }
622
+
623
+ @mixin media-border() {
624
+ &_border {
625
+ &_shadow {
626
+ @include image-shadow();
627
+ }
628
+
629
+ &_line {
630
+ border-radius: $borderRadius;
631
+ border: 1px solid var(--g-color-line-generic);
632
+ }
633
+
634
+ &_none {
635
+ border-radius: $borderRadius;
636
+ }
637
+ }
638
+ }