@gravity-ui/page-constructor 4.42.0 → 4.42.2

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 (88) hide show
  1. package/build/cjs/blocks/CardLayout/schema.d.ts +24 -0
  2. package/build/cjs/blocks/Companies/schema.d.ts +4 -0
  3. package/build/cjs/blocks/Companies/schema.js +3 -0
  4. package/build/cjs/blocks/ContentLayout/schema.d.ts +12 -0
  5. package/build/cjs/blocks/ExtendedFeatures/schema.d.ts +12 -0
  6. package/build/cjs/blocks/FilterBlock/schema.d.ts +24 -0
  7. package/build/cjs/blocks/Form/schema.d.ts +12 -0
  8. package/build/cjs/blocks/Header/schema.d.ts +12 -0
  9. package/build/cjs/blocks/HeaderSlider/schema.d.ts +12 -0
  10. package/build/cjs/blocks/Icons/schema.d.ts +42 -0
  11. package/build/cjs/blocks/Icons/schema.js +4 -1
  12. package/build/cjs/blocks/Map/schema.d.ts +12 -0
  13. package/build/cjs/blocks/Media/schema.d.ts +24 -0
  14. package/build/cjs/blocks/PromoFeaturesBlock/schema.d.ts +12 -0
  15. package/build/cjs/blocks/Questions/schema.d.ts +12 -0
  16. package/build/cjs/blocks/Slider/schema.d.ts +12 -0
  17. package/build/cjs/blocks/Table/schema.d.ts +12 -0
  18. package/build/cjs/blocks/Tabs/schema.d.ts +12 -0
  19. package/build/cjs/components/Author/Author.css +4 -2
  20. package/build/cjs/components/Author/Author.js +2 -2
  21. package/build/cjs/editor/components/CodeEditor/CodeEditor.css +2 -5
  22. package/build/cjs/editor/components/CodeEditor/CodeEditor.d.ts +2 -2
  23. package/build/cjs/editor/components/CodeEditor/CodeEditor.js +12 -9
  24. package/build/cjs/editor/containers/Editor/Editor.d.ts +1 -1
  25. package/build/cjs/editor/containers/Editor/Editor.js +19 -8
  26. package/build/cjs/editor/containers/Form/Form.js +3 -1
  27. package/build/cjs/editor/containers/Form/hooks.d.ts +8 -0
  28. package/build/cjs/editor/containers/Form/hooks.js +39 -0
  29. package/build/cjs/editor/context.d.ts +2 -0
  30. package/build/cjs/editor/types/index.d.ts +2 -0
  31. package/build/cjs/models/constructor-items/common.d.ts +1 -0
  32. package/build/cjs/models/constructor-items/sub-blocks.d.ts +12 -1
  33. package/build/cjs/schema/constants.d.ts +4 -0
  34. package/build/cjs/schema/validators/common.d.ts +13 -1
  35. package/build/cjs/schema/validators/common.js +8 -1
  36. package/build/cjs/sub-blocks/Divider/schema.d.ts +1 -1
  37. package/build/cjs/sub-blocks/Quote/Quote.css +11 -18
  38. package/build/cjs/sub-blocks/Quote/Quote.js +7 -6
  39. package/build/cjs/sub-blocks/Quote/schema.d.ts +4 -0
  40. package/build/cjs/sub-blocks/Quote/schema.js +4 -1
  41. package/build/cjs/text-transform/config.js +10 -4
  42. package/build/esm/blocks/CardLayout/schema.d.ts +24 -0
  43. package/build/esm/blocks/Companies/schema.d.ts +4 -0
  44. package/build/esm/blocks/Companies/schema.js +3 -0
  45. package/build/esm/blocks/ContentLayout/schema.d.ts +12 -0
  46. package/build/esm/blocks/ExtendedFeatures/schema.d.ts +12 -0
  47. package/build/esm/blocks/FilterBlock/schema.d.ts +24 -0
  48. package/build/esm/blocks/Form/schema.d.ts +12 -0
  49. package/build/esm/blocks/Header/schema.d.ts +12 -0
  50. package/build/esm/blocks/HeaderSlider/schema.d.ts +12 -0
  51. package/build/esm/blocks/Icons/schema.d.ts +42 -0
  52. package/build/esm/blocks/Icons/schema.js +5 -2
  53. package/build/esm/blocks/Map/schema.d.ts +12 -0
  54. package/build/esm/blocks/Media/schema.d.ts +24 -0
  55. package/build/esm/blocks/PromoFeaturesBlock/schema.d.ts +12 -0
  56. package/build/esm/blocks/Questions/schema.d.ts +12 -0
  57. package/build/esm/blocks/Slider/schema.d.ts +12 -0
  58. package/build/esm/blocks/Table/schema.d.ts +12 -0
  59. package/build/esm/blocks/Tabs/schema.d.ts +12 -0
  60. package/build/esm/components/Author/Author.css +4 -2
  61. package/build/esm/components/Author/Author.js +2 -2
  62. package/build/esm/editor/components/CodeEditor/CodeEditor.css +2 -5
  63. package/build/esm/editor/components/CodeEditor/CodeEditor.d.ts +2 -2
  64. package/build/esm/editor/components/CodeEditor/CodeEditor.js +13 -10
  65. package/build/esm/editor/containers/Editor/Editor.d.ts +1 -1
  66. package/build/esm/editor/containers/Editor/Editor.js +19 -8
  67. package/build/esm/editor/containers/Form/Form.js +3 -1
  68. package/build/esm/editor/containers/Form/hooks.d.ts +8 -0
  69. package/build/esm/editor/containers/Form/hooks.js +34 -0
  70. package/build/esm/editor/context.d.ts +2 -0
  71. package/build/esm/editor/types/index.d.ts +2 -0
  72. package/build/esm/models/constructor-items/common.d.ts +1 -0
  73. package/build/esm/models/constructor-items/sub-blocks.d.ts +12 -1
  74. package/build/esm/schema/constants.d.ts +4 -0
  75. package/build/esm/schema/validators/common.d.ts +13 -1
  76. package/build/esm/schema/validators/common.js +8 -1
  77. package/build/esm/sub-blocks/Divider/schema.d.ts +1 -1
  78. package/build/esm/sub-blocks/Quote/Quote.css +11 -18
  79. package/build/esm/sub-blocks/Quote/Quote.js +8 -7
  80. package/build/esm/sub-blocks/Quote/schema.d.ts +4 -0
  81. package/build/esm/sub-blocks/Quote/schema.js +4 -1
  82. package/build/esm/text-transform/config.js +10 -4
  83. package/package.json +1 -1
  84. package/server/models/constructor-items/common.d.ts +1 -0
  85. package/server/models/constructor-items/sub-blocks.d.ts +12 -1
  86. package/server/text-transform/config.js +10 -4
  87. package/styles/variables.scss +2 -0
  88. package/widget/index.js +1 -1
@@ -0,0 +1,8 @@
1
+ import { FormProps } from './Form';
2
+ /**
3
+ * Transorms PageConstructor content in JSON to YAML on code editor mode switching
4
+ *
5
+ * @param {Object} props - props parent from form
6
+ * @returns {string} - updated code
7
+ */
8
+ export declare function useCode({ activeTab, content, codeFullscreeModeOn, }: Pick<FormProps, 'activeTab' | 'content' | 'codeFullscreeModeOn'>): string;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useCode = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = require("react");
6
+ const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
7
+ const usePreviousValue_1 = tslib_1.__importDefault(require("../../hooks/usePreviousValue"));
8
+ const types_1 = require("../../types");
9
+ /**
10
+ * Transorms PageConstructor content in JSON to YAML on code editor mode switching
11
+ *
12
+ * @param {Object} props - props parent from form
13
+ * @returns {string} - updated code
14
+ */
15
+ function useCode({ activeTab, content, codeFullscreeModeOn, }) {
16
+ var _a;
17
+ const [code, setCode] = (0, react_1.useState)('');
18
+ const prevTab = (0, usePreviousValue_1.default)(activeTab);
19
+ const prevContentLength = (0, usePreviousValue_1.default)((_a = content.blocks) === null || _a === void 0 ? void 0 : _a.length);
20
+ const prevCodeFullscreeModeOn = (0, usePreviousValue_1.default)(codeFullscreeModeOn);
21
+ (0, react_1.useEffect)(() => {
22
+ var _a;
23
+ const switchedToCodeEditing = activeTab !== prevTab && activeTab === types_1.FormTab.Code;
24
+ const blocksCountChanged = prevContentLength !== ((_a = content.blocks) === null || _a === void 0 ? void 0 : _a.length);
25
+ const codeModeSwitched = codeFullscreeModeOn !== prevCodeFullscreeModeOn;
26
+ if (blocksCountChanged || switchedToCodeEditing || codeModeSwitched) {
27
+ setCode(js_yaml_1.default.dump(content, { lineWidth: -1 }));
28
+ }
29
+ }, [
30
+ activeTab,
31
+ prevTab,
32
+ content,
33
+ prevContentLength,
34
+ codeFullscreeModeOn,
35
+ prevCodeFullscreeModeOn,
36
+ ]);
37
+ return code;
38
+ }
39
+ exports.useCode = useCode;
@@ -1,9 +1,11 @@
1
1
  import React from 'react';
2
2
  import { PageConstructorProps, PageConstructorProviderProps } from '../containers/PageConstructor';
3
+ import { Theme } from '../models/common';
3
4
  import { EditorProps } from './types';
4
5
  export interface EditorContextType {
5
6
  constructorProps?: PageConstructorProps;
6
7
  providerProps?: PageConstructorProviderProps;
7
8
  deviceEmulationSettings?: EditorProps['deviceEmulationSettings'];
9
+ theme?: Theme;
8
10
  }
9
11
  export declare const EditorContext: React.Context<Partial<EditorContextType>>;
@@ -1,5 +1,6 @@
1
1
  import { PageConstructorProps, PageConstructorProviderProps } from '../../containers/PageConstructor';
2
2
  import { BlockDecorationProps, PageContent } from '../../models';
3
+ import { Theme } from '../../models/common';
3
4
  import { SchemaCustomConfig } from '../../schema';
4
5
  import { EditBlockActions } from '../components/EditBlock/EditBlock';
5
6
  export type EditorBlockId = number | string;
@@ -17,6 +18,7 @@ export interface EditorProps extends Required<Pick<PageConstructorProps, 'conten
17
18
  transformContent?: ContentTransformer;
18
19
  customSchema?: SchemaCustomConfig;
19
20
  deviceEmulationSettings?: DeviceEmulationSettings;
21
+ theme?: Theme;
20
22
  }
21
23
  export interface EditBlockEditorProps {
22
24
  isActive?: boolean;
@@ -346,6 +346,7 @@ export interface AuthorProps extends QAProps {
346
346
  className?: string;
347
347
  authorContainerClassName?: string;
348
348
  type?: AuthorType;
349
+ theme?: ContentTheme;
349
350
  }
350
351
  export interface TitleProps {
351
352
  title?: TitleItemProps | string;
@@ -63,16 +63,27 @@ export interface HubspotFormProps extends HubspotEventHandlers, AnalyticsEventsB
63
63
  createDOMElement?: boolean;
64
64
  }
65
65
  export interface QuoteProps extends Themable, CardBaseProps {
66
- text: string;
66
+ text?: string;
67
+ yfmText?: string;
67
68
  image: ThemedImage;
68
69
  logo: ImageProps;
69
70
  color?: string;
71
+ /**
72
+ * @deprecated use property button instead
73
+ */
70
74
  url?: string;
75
+ /**
76
+ * @deprecated use property button instead
77
+ */
71
78
  urlTitle?: string;
72
79
  author?: AuthorItem;
80
+ /**
81
+ * @deprecated use property button instead
82
+ */
73
83
  buttonText?: string;
74
84
  theme?: TextTheme;
75
85
  quoteType?: QuoteType;
86
+ button?: ButtonProps;
76
87
  }
77
88
  export interface BackgroundCardProps extends CardBaseProps, AnalyticsEventsBase, Omit<ContentBlockProps, 'colSizes' | 'centered'> {
78
89
  url?: string;
@@ -125,6 +125,10 @@ export declare const cardSchemas: {
125
125
  type: string;
126
126
  contentType: string;
127
127
  };
128
+ yfmText: {
129
+ type: string;
130
+ contentType: string;
131
+ };
128
132
  image: {
129
133
  oneOf: (({
130
134
  oneOf: ({
@@ -11,7 +11,7 @@ export declare const playIconThemes: string[];
11
11
  export declare const videoControlsTypes: MediaVideoControlsType[];
12
12
  export declare const fileLinkTypes: string[];
13
13
  export declare const dividerEnum: {
14
- enum: (string | number)[];
14
+ enum: string[];
15
15
  };
16
16
  export declare const sizeNumber: {
17
17
  type: string;
@@ -835,6 +835,18 @@ export declare const BlockBaseProps: {
835
835
  context: {
836
836
  type: string;
837
837
  };
838
+ indent: {
839
+ type: string;
840
+ additionalProperties: boolean;
841
+ properties: {
842
+ top: {
843
+ enum: string[];
844
+ };
845
+ bottom: {
846
+ enum: string[];
847
+ };
848
+ };
849
+ };
838
850
  type: {};
839
851
  when: {
840
852
  type: string;
@@ -16,7 +16,7 @@ exports.playIconTypes = ['default', 'text'];
16
16
  exports.playIconThemes = ['blue', 'grey'];
17
17
  exports.videoControlsTypes = [models_1.MediaVideoControlsType.Default, models_1.MediaVideoControlsType.Custom];
18
18
  exports.fileLinkTypes = ['vertical', 'horizontal'];
19
- exports.dividerEnum = { enum: [0, 'xxs', 'xs', 's', 'm', 'l', 'xl', 'xxl', 'xxxl'] };
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
22
  exports.quoteTypes = Object.values(models_1.QuoteType);
@@ -457,6 +457,13 @@ exports.BlockBaseProps = Object.assign(Object.assign({}, exports.BaseProps), { a
457
457
  type: 'boolean',
458
458
  }, context: {
459
459
  type: 'string',
460
+ }, indent: {
461
+ type: 'object',
462
+ additionalProperties: false,
463
+ properties: {
464
+ top: exports.dividerEnum,
465
+ bottom: exports.dividerEnum,
466
+ },
460
467
  } });
461
468
  exports.TitleProps = {
462
469
  type: 'object',
@@ -6,7 +6,7 @@ export declare const Divider: {
6
6
  type: string;
7
7
  };
8
8
  size: {
9
- enum: (string | number)[];
9
+ enum: string[];
10
10
  };
11
11
  type: {};
12
12
  when: {
@@ -76,6 +76,17 @@ unpredictable css rules order in build */
76
76
  .pc-quote__content_quote-type_english-double .pc-quote__text::after {
77
77
  content: "”";
78
78
  }
79
+ .pc-quote__content .yfm {
80
+ font-size: var(--g-text-body-3-font-size);
81
+ line-height: var(--g-text-body-3-line-height);
82
+ }
83
+ .pc-quote__content .yfm > * {
84
+ display: inline;
85
+ }
86
+ .pc-quote__content .yfm:after {
87
+ position: relative;
88
+ left: -5px;
89
+ }
79
90
  .pc-quote__image {
80
91
  width: 100%;
81
92
  height: 100%;
@@ -87,24 +98,6 @@ unpredictable css rules order in build */
87
98
  align-items: flex-end;
88
99
  margin-top: 20px;
89
100
  }
90
- .pc-quote__author_theme_dark, .pc-quote_theme_dark {
91
- color: var(--g-color-text-light-primary);
92
- }
93
- .pc-quote__author_theme_dark h1,
94
- .pc-quote__author_theme_dark h2,
95
- .pc-quote__author_theme_dark h3,
96
- .pc-quote__author_theme_dark h4,
97
- .pc-quote__author_theme_dark h5,
98
- .pc-quote__author_theme_dark h6,
99
- .pc-quote__author_theme_dark .yfm, .pc-quote_theme_dark h1,
100
- .pc-quote_theme_dark h2,
101
- .pc-quote_theme_dark h3,
102
- .pc-quote_theme_dark h4,
103
- .pc-quote_theme_dark h5,
104
- .pc-quote_theme_dark h6,
105
- .pc-quote_theme_dark .yfm {
106
- color: var(--g-color-text-light-primary);
107
- }
108
101
  .pc-quote__author {
109
102
  max-width: calc(60% - 20px);
110
103
  margin-right: 20px;
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const react_1 = tslib_1.__importStar(require("react"));
5
- const uikit_1 = require("@gravity-ui/uikit");
6
5
  const components_1 = require("../../components");
7
6
  const utils_1 = require("../../components/Media/Image/utils");
8
7
  const theme_1 = require("../../context/theme");
@@ -11,23 +10,25 @@ const models_1 = require("../../models");
11
10
  const utils_2 = require("../../utils");
12
11
  const b = (0, utils_2.block)('quote');
13
12
  const Quote = (props) => {
14
- const { theme: textTheme = 'light', color, image, border = 'shadow', text, logo, author, url, urlTitle, buttonText, quoteType = models_1.QuoteType.Chevron, } = props;
13
+ const { theme: textTheme = 'light', color, image, border = 'shadow', text, yfmText, logo, author, url, urlTitle, buttonText, quoteType = models_1.QuoteType.Chevron, button, } = props;
15
14
  const theme = (0, theme_1.useTheme)();
16
15
  const imageThemed = (0, utils_2.getThemedValue)(image, theme);
17
16
  const imageData = (0, utils_1.getMediaImage)(imageThemed);
18
17
  const handleAnalytics = (0, hooks_1.useAnalytics)(models_1.DefaultEventNames.QuoteButton, url);
19
18
  const handleButtonClick = (0, react_1.useCallback)(() => handleAnalytics(), [handleAnalytics]);
20
19
  const renderFooter = Boolean(author || url) && (react_1.default.createElement("div", { className: b('author-wrapper') },
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, title: urlTitle }, buttonText))));
20
+ author && (react_1.default.createElement(components_1.Author, { className: b('author', { theme: textTheme }), author: author, type: models_1.AuthorType.Line, theme: textTheme })),
21
+ url && buttonText && !button && (react_1.default.createElement(components_1.Button, { theme: "outlined", size: "xl", url: url, className: b('link-button', { theme: textTheme }), onClick: handleButtonClick, urlTitle: urlTitle, text: buttonText })),
22
+ button && react_1.default.createElement(components_1.Button, Object.assign({ size: "xl" }, button))));
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
28
  react_1.default.createElement("div", { className: b('content', { 'quote-type': quoteType }) },
29
- react_1.default.createElement("span", { className: b('text') },
30
- react_1.default.createElement(components_1.HTML, null, text)))),
29
+ text && (react_1.default.createElement("span", { className: b('text') },
30
+ react_1.default.createElement(components_1.HTML, null, text))),
31
+ yfmText && (react_1.default.createElement(components_1.YFMWrapper, { className: b('text'), content: yfmText, modifiers: { constructor: true } })))),
31
32
  renderFooter),
32
33
  react_1.default.createElement("div", { className: b('image-wrapper') },
33
34
  react_1.default.createElement(components_1.Image, Object.assign({}, imageData, { className: b('image') })))));
@@ -7,6 +7,10 @@ export declare const Quote: {
7
7
  type: string;
8
8
  contentType: string;
9
9
  };
10
+ yfmText: {
11
+ type: string;
12
+ contentType: string;
13
+ };
10
14
  image: {
11
15
  oneOf: (({
12
16
  oneOf: ({
@@ -6,10 +6,13 @@ const common_1 = require("../../schema/validators/common");
6
6
  exports.Quote = {
7
7
  quote: {
8
8
  additionalProperties: false,
9
- required: ['text', 'image', 'logo'],
9
+ required: ['image', 'logo'],
10
10
  properties: Object.assign(Object.assign({}, common_1.BaseProps), { text: {
11
11
  type: 'string',
12
12
  contentType: 'text',
13
+ }, yfmText: {
14
+ type: 'string',
15
+ contentType: 'text',
13
16
  }, image: (0, common_1.withTheme)(schema_1.ImageProps), logo: schema_1.ImageProps, color: {
14
17
  type: 'string',
15
18
  }, url: {
@@ -130,10 +130,16 @@ exports.config = {
130
130
  transformer: common_1.yfmTransformer,
131
131
  },
132
132
  ],
133
- [models_1.SubBlockType.Quote]: {
134
- fields: ['text'],
135
- transformer: common_1.typografTransformer,
136
- },
133
+ [models_1.SubBlockType.Quote]: [
134
+ {
135
+ fields: ['text'],
136
+ transformer: common_1.typografTransformer,
137
+ },
138
+ {
139
+ fields: ['yfmText'],
140
+ transformer: common_1.yfmTransformer,
141
+ },
142
+ ],
137
143
  [models_1.BlockType.ExtendedFeaturesBlock]: [
138
144
  ...exports.blockHeaderTransformer,
139
145
  {
@@ -78,6 +78,18 @@ export declare const CardLayoutProps: {
78
78
  context: {
79
79
  type: string;
80
80
  };
81
+ indent: {
82
+ type: string;
83
+ additionalProperties: boolean;
84
+ properties: {
85
+ top: {
86
+ enum: string[];
87
+ };
88
+ bottom: {
89
+ enum: string[];
90
+ };
91
+ };
92
+ };
81
93
  type: {};
82
94
  when: {
83
95
  type: string;
@@ -165,6 +177,18 @@ export declare const CardLayoutBlock: {
165
177
  context: {
166
178
  type: string;
167
179
  };
180
+ indent: {
181
+ type: string;
182
+ additionalProperties: boolean;
183
+ properties: {
184
+ top: {
185
+ enum: string[];
186
+ };
187
+ bottom: {
188
+ enum: string[];
189
+ };
190
+ };
191
+ };
168
192
  type: {};
169
193
  when: {
170
194
  type: string;
@@ -7,6 +7,10 @@ export declare const CompaniesBlock: {
7
7
  type: string;
8
8
  contentType: string;
9
9
  };
10
+ description: {
11
+ type: string;
12
+ contentType: string;
13
+ };
10
14
  images: {
11
15
  oneOf: (({
12
16
  type: string;
@@ -6,6 +6,9 @@ export const CompaniesBlock = {
6
6
  properties: Object.assign(Object.assign(Object.assign({}, BaseProps), AnimatableProps), { title: {
7
7
  type: 'string',
8
8
  contentType: 'text',
9
+ }, description: {
10
+ type: 'string',
11
+ contentType: 'text',
9
12
  }, images: withTheme({
10
13
  type: 'object',
11
14
  required: ['desktop', 'tablet', 'mobile'],
@@ -242,6 +242,18 @@ export declare const ContentLayoutBlock: {
242
242
  context: {
243
243
  type: string;
244
244
  };
245
+ indent: {
246
+ type: string;
247
+ additionalProperties: boolean;
248
+ properties: {
249
+ top: {
250
+ enum: string[];
251
+ };
252
+ bottom: {
253
+ enum: string[];
254
+ };
255
+ };
256
+ };
245
257
  type: {};
246
258
  when: {
247
259
  type: string;
@@ -243,6 +243,18 @@ export declare const ExtendedFeaturesBlock: {
243
243
  context: {
244
244
  type: string;
245
245
  };
246
+ indent: {
247
+ type: string;
248
+ additionalProperties: boolean;
249
+ properties: {
250
+ top: {
251
+ enum: string[];
252
+ };
253
+ bottom: {
254
+ enum: string[];
255
+ };
256
+ };
257
+ };
246
258
  type: {};
247
259
  when: {
248
260
  type: string;
@@ -134,6 +134,18 @@ export declare const FilterProps: {
134
134
  context: {
135
135
  type: string;
136
136
  };
137
+ indent: {
138
+ type: string;
139
+ additionalProperties: boolean;
140
+ properties: {
141
+ top: {
142
+ enum: string[];
143
+ };
144
+ bottom: {
145
+ enum: string[];
146
+ };
147
+ };
148
+ };
137
149
  type: {};
138
150
  when: {
139
151
  type: string;
@@ -250,6 +262,18 @@ export declare const FilterBlock: {
250
262
  context: {
251
263
  type: string;
252
264
  };
265
+ indent: {
266
+ type: string;
267
+ additionalProperties: boolean;
268
+ properties: {
269
+ top: {
270
+ enum: string[];
271
+ };
272
+ bottom: {
273
+ enum: string[];
274
+ };
275
+ };
276
+ };
253
277
  type: {};
254
278
  when: {
255
279
  type: string;
@@ -193,6 +193,18 @@ export declare const FormBlock: {
193
193
  context: {
194
194
  type: string;
195
195
  };
196
+ indent: {
197
+ type: string;
198
+ additionalProperties: boolean;
199
+ properties: {
200
+ top: {
201
+ enum: string[];
202
+ };
203
+ bottom: {
204
+ enum: string[];
205
+ };
206
+ };
207
+ };
196
208
  type: {};
197
209
  when: {
198
210
  type: string;
@@ -1318,6 +1318,18 @@ export declare const HeaderBlock: {
1318
1318
  context: {
1319
1319
  type: string;
1320
1320
  };
1321
+ indent: {
1322
+ type: string;
1323
+ additionalProperties: boolean;
1324
+ properties: {
1325
+ top: {
1326
+ enum: string[];
1327
+ };
1328
+ bottom: {
1329
+ enum: string[];
1330
+ };
1331
+ };
1332
+ };
1321
1333
  type: {};
1322
1334
  when: {
1323
1335
  type: string;
@@ -587,6 +587,18 @@ export declare const HeaderSliderBlock: {
587
587
  context: {
588
588
  type: string;
589
589
  };
590
+ indent: {
591
+ type: string;
592
+ additionalProperties: boolean;
593
+ properties: {
594
+ top: {
595
+ enum: string[];
596
+ };
597
+ bottom: {
598
+ enum: string[];
599
+ };
600
+ };
601
+ };
590
602
  type: {};
591
603
  when: {
592
604
  type: string;
@@ -6,11 +6,20 @@ export declare const IconsProps: {
6
6
  type: string;
7
7
  contentType: string;
8
8
  };
9
+ description: {
10
+ type: string;
11
+ contentType: string;
12
+ };
9
13
  size: {
10
14
  type: string;
11
15
  enum: string[];
12
16
  default: string;
13
17
  };
18
+ colSizes: {
19
+ type: string;
20
+ additionalProperties: boolean;
21
+ properties: {};
22
+ };
14
23
  items: {
15
24
  type: string;
16
25
  items: {
@@ -142,6 +151,18 @@ export declare const IconsProps: {
142
151
  context: {
143
152
  type: string;
144
153
  };
154
+ indent: {
155
+ type: string;
156
+ additionalProperties: boolean;
157
+ properties: {
158
+ top: {
159
+ enum: string[];
160
+ };
161
+ bottom: {
162
+ enum: string[];
163
+ };
164
+ };
165
+ };
145
166
  type: {};
146
167
  when: {
147
168
  type: string;
@@ -157,11 +178,20 @@ export declare const IconsBlock: {
157
178
  type: string;
158
179
  contentType: string;
159
180
  };
181
+ description: {
182
+ type: string;
183
+ contentType: string;
184
+ };
160
185
  size: {
161
186
  type: string;
162
187
  enum: string[];
163
188
  default: string;
164
189
  };
190
+ colSizes: {
191
+ type: string;
192
+ additionalProperties: boolean;
193
+ properties: {};
194
+ };
165
195
  items: {
166
196
  type: string;
167
197
  items: {
@@ -293,6 +323,18 @@ export declare const IconsBlock: {
293
323
  context: {
294
324
  type: string;
295
325
  };
326
+ indent: {
327
+ type: string;
328
+ additionalProperties: boolean;
329
+ properties: {
330
+ top: {
331
+ enum: string[];
332
+ };
333
+ bottom: {
334
+ enum: string[];
335
+ };
336
+ };
337
+ };
296
338
  type: {};
297
339
  when: {
298
340
  type: string;
@@ -1,4 +1,4 @@
1
- import { AnimatableProps, BlockBaseProps } from '../../schema/validators/common';
1
+ import { AnimatableProps, BlockBaseProps, containerSizesObject, } from '../../schema/validators/common';
2
2
  import { AnalyticsEventSchema } from '../../schema/validators/event';
3
3
  export const IconsProps = {
4
4
  additionalProperties: false,
@@ -6,11 +6,14 @@ export const IconsProps = {
6
6
  properties: Object.assign(Object.assign(Object.assign({}, BlockBaseProps), AnimatableProps), { title: {
7
7
  type: 'string',
8
8
  contentType: 'text',
9
+ }, description: {
10
+ type: 'string',
11
+ contentType: 'text',
9
12
  }, size: {
10
13
  type: 'string',
11
14
  enum: ['s', 'm', 'l'],
12
15
  default: 's',
13
- }, items: {
16
+ }, colSizes: containerSizesObject, items: {
14
17
  type: 'array',
15
18
  items: {
16
19
  type: 'object',
@@ -473,6 +473,18 @@ export declare const MapBlock: {
473
473
  context: {
474
474
  type: string;
475
475
  };
476
+ indent: {
477
+ type: string;
478
+ additionalProperties: boolean;
479
+ properties: {
480
+ top: {
481
+ enum: string[];
482
+ };
483
+ bottom: {
484
+ enum: string[];
485
+ };
486
+ };
487
+ };
476
488
  type: {};
477
489
  when: {
478
490
  type: string;