@gravity-ui/page-constructor 5.14.4-alpha.2 → 5.14.4-alpha.3

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 (126) hide show
  1. package/build/cjs/blocks/Banner/index.js +1 -0
  2. package/build/cjs/blocks/CardLayout/index.js +21 -3
  3. package/build/cjs/blocks/Companies/index.js +1 -0
  4. package/build/cjs/blocks/ContentLayout/index.d.ts +31 -1
  5. package/build/cjs/blocks/ContentLayout/index.js +64 -1
  6. package/build/cjs/blocks/ExtendedFeatures/index.d.ts +48 -2
  7. package/build/cjs/blocks/ExtendedFeatures/index.js +60 -2
  8. package/build/cjs/blocks/FilterBlock/index.d.ts +18 -0
  9. package/build/cjs/blocks/FilterBlock/index.js +81 -1
  10. package/build/cjs/blocks/Form/index.d.ts +1 -0
  11. package/build/cjs/blocks/Form/index.js +1 -0
  12. package/build/cjs/blocks/Header/index.d.ts +11 -0
  13. package/build/cjs/blocks/Header/index.js +18 -0
  14. package/build/cjs/blocks/HeaderSlider/index.d.ts +1 -0
  15. package/build/cjs/blocks/HeaderSlider/index.js +1 -0
  16. package/build/cjs/blocks/Icons/Icons.js +2 -2
  17. package/build/cjs/blocks/Icons/index.d.ts +7 -0
  18. package/build/cjs/blocks/Icons/index.js +44 -0
  19. package/build/cjs/blocks/Info/index.d.ts +1 -0
  20. package/build/cjs/blocks/Info/index.js +1 -0
  21. package/build/cjs/blocks/Map/index.d.ts +1 -0
  22. package/build/cjs/blocks/Map/index.js +1 -0
  23. package/build/cjs/blocks/Media/index.d.ts +26 -2
  24. package/build/cjs/blocks/Media/index.js +39 -4
  25. package/build/cjs/blocks/PromoFeaturesBlock/index.d.ts +11 -1
  26. package/build/cjs/blocks/PromoFeaturesBlock/index.js +31 -1
  27. package/build/cjs/blocks/Questions/index.d.ts +1 -0
  28. package/build/cjs/blocks/Questions/index.js +1 -0
  29. package/build/cjs/blocks/Share/index.d.ts +1 -0
  30. package/build/cjs/blocks/Share/index.js +1 -0
  31. package/build/cjs/blocks/Slider/index.d.ts +19 -0
  32. package/build/cjs/blocks/Slider/index.js +31 -0
  33. package/build/cjs/blocks/Table/index.d.ts +10 -0
  34. package/build/cjs/blocks/Table/index.js +17 -0
  35. package/build/cjs/blocks/Tabs/index.d.ts +1 -0
  36. package/build/cjs/blocks/Tabs/index.js +1 -0
  37. package/build/cjs/common/types/forms.d.ts +1 -0
  38. package/build/cjs/constructor-items.d.ts +2 -6
  39. package/build/cjs/constructor-items.js +2 -2
  40. package/build/cjs/editor-v2/components/BlocksList/BlocksList.css +27 -1
  41. package/build/cjs/editor-v2/components/BlocksList/BlocksList.js +34 -2
  42. package/build/cjs/editor-v2/components/Panels/Panels.css +36 -0
  43. package/build/cjs/editor-v2/components/Panels/Panels.d.ts +8 -0
  44. package/build/cjs/editor-v2/components/Panels/Panels.js +41 -0
  45. package/build/cjs/editor-v2/components/Tree/Tree.css +11 -0
  46. package/build/cjs/editor-v2/components/Tree/Tree.js +10 -2
  47. package/build/cjs/editor-v2/containers/Editor/Editor.css +0 -10
  48. package/build/cjs/editor-v2/containers/Editor/Editor.js +2 -13
  49. package/build/cjs/editor-v2/context/contentConfig/store.d.ts +1 -0
  50. package/build/cjs/editor-v2/context/contentConfig/store.js +3 -0
  51. package/build/cjs/sub-blocks/BackgroundCard/index.js +2 -0
  52. package/build/cjs/sub-blocks/BannerCard/index.js +1 -0
  53. package/build/cjs/sub-blocks/BasicCard/index.js +1 -0
  54. package/build/cjs/sub-blocks/Content/index.js +1 -0
  55. package/build/cjs/sub-blocks/ImageCard/index.js +1 -0
  56. package/build/cjs/sub-blocks/LayoutItem/index.js +7 -2
  57. package/build/cjs/sub-blocks/MediaCard/index.js +2 -0
  58. package/build/cjs/sub-blocks/PriceCard/index.js +1 -0
  59. package/build/cjs/sub-blocks/PriceDetailed/index.js +1 -0
  60. package/build/cjs/sub-blocks/Quote/index.js +1 -0
  61. package/build/esm/blocks/Banner/index.js +1 -0
  62. package/build/esm/blocks/CardLayout/index.js +21 -3
  63. package/build/esm/blocks/Companies/index.js +1 -0
  64. package/build/esm/blocks/ContentLayout/index.d.ts +31 -1
  65. package/build/esm/blocks/ContentLayout/index.js +64 -1
  66. package/build/esm/blocks/ExtendedFeatures/index.d.ts +48 -2
  67. package/build/esm/blocks/ExtendedFeatures/index.js +60 -2
  68. package/build/esm/blocks/FilterBlock/index.d.ts +18 -0
  69. package/build/esm/blocks/FilterBlock/index.js +81 -1
  70. package/build/esm/blocks/Form/index.d.ts +1 -0
  71. package/build/esm/blocks/Form/index.js +1 -0
  72. package/build/esm/blocks/Header/index.d.ts +11 -0
  73. package/build/esm/blocks/Header/index.js +18 -0
  74. package/build/esm/blocks/HeaderSlider/index.d.ts +1 -0
  75. package/build/esm/blocks/HeaderSlider/index.js +1 -0
  76. package/build/esm/blocks/Icons/Icons.js +2 -2
  77. package/build/esm/blocks/Icons/index.d.ts +7 -0
  78. package/build/esm/blocks/Icons/index.js +44 -0
  79. package/build/esm/blocks/Info/index.d.ts +1 -0
  80. package/build/esm/blocks/Info/index.js +1 -0
  81. package/build/esm/blocks/Map/index.d.ts +1 -0
  82. package/build/esm/blocks/Map/index.js +1 -0
  83. package/build/esm/blocks/Media/index.d.ts +26 -2
  84. package/build/esm/blocks/Media/index.js +39 -4
  85. package/build/esm/blocks/PromoFeaturesBlock/index.d.ts +11 -1
  86. package/build/esm/blocks/PromoFeaturesBlock/index.js +31 -1
  87. package/build/esm/blocks/Questions/index.d.ts +1 -0
  88. package/build/esm/blocks/Questions/index.js +1 -0
  89. package/build/esm/blocks/Share/index.d.ts +1 -0
  90. package/build/esm/blocks/Share/index.js +1 -0
  91. package/build/esm/blocks/Slider/index.d.ts +19 -0
  92. package/build/esm/blocks/Slider/index.js +31 -0
  93. package/build/esm/blocks/Table/index.d.ts +10 -0
  94. package/build/esm/blocks/Table/index.js +17 -0
  95. package/build/esm/blocks/Tabs/index.d.ts +1 -0
  96. package/build/esm/blocks/Tabs/index.js +1 -0
  97. package/build/esm/common/types/forms.d.ts +1 -0
  98. package/build/esm/constructor-items.d.ts +2 -6
  99. package/build/esm/constructor-items.js +1 -1
  100. package/build/esm/editor-v2/components/BlocksList/BlocksList.css +27 -1
  101. package/build/esm/editor-v2/components/BlocksList/BlocksList.js +35 -3
  102. package/build/esm/editor-v2/components/Panels/Panels.css +36 -0
  103. package/build/esm/editor-v2/components/Panels/Panels.d.ts +9 -0
  104. package/build/esm/editor-v2/components/Panels/Panels.js +37 -0
  105. package/build/esm/editor-v2/components/Tree/Tree.css +11 -0
  106. package/build/esm/editor-v2/components/Tree/Tree.js +11 -3
  107. package/build/esm/editor-v2/containers/Editor/Editor.css +0 -10
  108. package/build/esm/editor-v2/containers/Editor/Editor.js +2 -13
  109. package/build/esm/editor-v2/context/contentConfig/store.d.ts +1 -0
  110. package/build/esm/editor-v2/context/contentConfig/store.js +3 -0
  111. package/build/esm/sub-blocks/BackgroundCard/index.js +2 -0
  112. package/build/esm/sub-blocks/BannerCard/index.js +1 -0
  113. package/build/esm/sub-blocks/BasicCard/index.js +1 -0
  114. package/build/esm/sub-blocks/Content/index.js +1 -0
  115. package/build/esm/sub-blocks/ImageCard/index.js +1 -0
  116. package/build/esm/sub-blocks/LayoutItem/index.js +7 -2
  117. package/build/esm/sub-blocks/MediaCard/index.js +2 -0
  118. package/build/esm/sub-blocks/PriceCard/index.js +1 -0
  119. package/build/esm/sub-blocks/PriceDetailed/index.js +1 -0
  120. package/build/esm/sub-blocks/Quote/index.js +1 -0
  121. package/package.json +1 -1
  122. package/widget/index.js +1 -1
  123. package/build/cjs/sub-blocks/LayoutItem/form.d.ts +0 -8
  124. package/build/cjs/sub-blocks/LayoutItem/form.js +0 -14
  125. package/build/esm/sub-blocks/LayoutItem/form.d.ts +0 -8
  126. package/build/esm/sub-blocks/LayoutItem/form.js +0 -11
@@ -8,6 +8,7 @@ const BannerBlockConfig = {
8
8
  component: Banner_1.default,
9
9
  schema: {
10
10
  name: 'Banner Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.BannerCardProps),
12
13
  default: {
13
14
  color: 'rgba(54, 151, 241, 0.4)',
@@ -3,7 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.blockConfig = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const common_1 = require("../../schema/validators/common");
6
+ const form_generator_1 = require("../../utils/form-generator");
6
7
  const CardLayout_1 = tslib_1.__importDefault(require("./CardLayout"));
8
+ const schema_1 = require("./schema");
7
9
  const textSizeEnum = common_1.textSize.map((size) => ({ value: size, content: size }));
8
10
  exports.blockConfig = [
9
11
  {
@@ -153,11 +155,27 @@ const CardLayoutBlockConfig = {
153
155
  component: CardLayout_1.default,
154
156
  schema: {
155
157
  name: 'Card Layout Block',
156
- inputs: exports.blockConfig,
157
- // inputs: generateFromAJV(CardLayoutProps as unknown as JSONSchemaType<{}>),
158
+ group: 'card-containers',
159
+ inputs: (0, form_generator_1.generateFromAJV)(schema_1.CardLayoutProps),
158
160
  default: {
159
161
  type: 'card-layout-block',
160
- children: [],
162
+ children: [
163
+ {
164
+ type: 'background-card',
165
+ title: 'Tell a story and build a narrative',
166
+ text: 'We are all storytellers. Stories are a powerful way to communicate ideas and share information. The right story can lead to a better understanding of a situation, make us laugh, or even inspire us to do something in the future.',
167
+ },
168
+ {
169
+ type: 'background-card',
170
+ title: 'Tell a story and build a narrative',
171
+ text: 'We are all storytellers. Stories are a powerful way to communicate ideas and share information. The right story can lead to a better understanding of a situation, make us laugh, or even inspire us to do something in the future.',
172
+ },
173
+ {
174
+ type: 'background-card',
175
+ title: 'Tell a story and build a narrative',
176
+ text: 'We are all storytellers. Stories are a powerful way to communicate ideas and share information. The right story can lead to a better understanding of a situation, make us laugh, or even inspire us to do something in the future.',
177
+ },
178
+ ],
161
179
  title: 'Card Layout Block',
162
180
  description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
163
181
  },
@@ -8,6 +8,7 @@ const CompaniesBlockConfig = {
8
8
  component: Companies_1.default,
9
9
  schema: {
10
10
  name: 'Companies Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.CompaniesBlock['companies-block']),
12
13
  default: {
13
14
  title: 'Companies Block',
@@ -2,9 +2,39 @@ declare const ContentLayoutBlockConfig: {
2
2
  component: (props: import("../..").ContentLayoutBlockProps) => JSX.Element;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
7
- title: string;
8
+ textContent: {
9
+ title: string;
10
+ text: string;
11
+ };
12
+ additionalInfo: string;
13
+ buttons: {
14
+ text: string;
15
+ theme: string;
16
+ url: string;
17
+ }[];
18
+ links: {
19
+ url: string;
20
+ text: string;
21
+ theme: string;
22
+ arrow: boolean;
23
+ }[];
24
+ fileContent: {
25
+ href: string;
26
+ text: string;
27
+ }[];
28
+ list: ({
29
+ title: string;
30
+ text: string;
31
+ } | {
32
+ text: string;
33
+ title?: undefined;
34
+ } | {
35
+ title: string;
36
+ text?: undefined;
37
+ })[];
8
38
  };
9
39
  };
10
40
  };
@@ -8,9 +8,72 @@ const ContentLayoutBlockConfig = {
8
8
  component: ContentLayout_1.default,
9
9
  schema: {
10
10
  name: 'Content Layout Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.ContentLayoutBlock['content-layout-block']),
12
13
  default: {
13
- title: 'Content Layout Block',
14
+ textContent: {
15
+ title: 'Lorem ipsum dolor sit amet',
16
+ text: 'Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 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.',
17
+ },
18
+ additionalInfo: 'Duis aute irure dolor in reprehenderit n voluptate velit esse cillum dolore eu fugiat nulla pariatur.',
19
+ buttons: [
20
+ {
21
+ text: 'Button',
22
+ theme: 'action',
23
+ url: 'https://example.com',
24
+ },
25
+ {
26
+ text: 'Button',
27
+ theme: 'outlined',
28
+ url: 'https://example.com',
29
+ },
30
+ ],
31
+ links: [
32
+ {
33
+ url: 'https://example.com',
34
+ text: 'Link',
35
+ theme: 'normal',
36
+ arrow: true,
37
+ },
38
+ ],
39
+ fileContent: [
40
+ {
41
+ href: 'https://example.xls',
42
+ text: 'File xls',
43
+ },
44
+ {
45
+ href: 'https://example.fig',
46
+ text: 'File PNG, JPG, and SVG format',
47
+ },
48
+ {
49
+ href: 'https://example.pdf',
50
+ text: 'Pdf file',
51
+ },
52
+ {
53
+ href: 'https://example.zip',
54
+ text: 'Archive file',
55
+ },
56
+ {
57
+ href: 'https://example.doc',
58
+ text: 'Microsoft Word document',
59
+ },
60
+ {
61
+ href: 'https://example.ppt',
62
+ text: 'PPT file',
63
+ },
64
+ ],
65
+ list: [
66
+ {
67
+ title: 'Lorem ipsum',
68
+ text: 'Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 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.',
69
+ },
70
+ {
71
+ text: 'Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 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.',
72
+ },
73
+ {
74
+ title: 'Lorem ipsum ipsum',
75
+ },
76
+ ],
14
77
  },
15
78
  },
16
79
  };
@@ -2,10 +2,56 @@ declare const ExtendedFeaturesBlockConfig: {
2
2
  component: ({ title, description, items, colSizes, animated, }: import("../..").ExtendedFeaturesProps) => JSX.Element;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
7
- title: string;
8
- items: {}[];
8
+ type: string;
9
+ title: {
10
+ text: string;
11
+ textSize: string;
12
+ };
13
+ description: string;
14
+ items: ({
15
+ title: string;
16
+ text: string;
17
+ additionalInfo: string;
18
+ buttons?: undefined;
19
+ links?: undefined;
20
+ list?: undefined;
21
+ } | {
22
+ title: string;
23
+ text: string;
24
+ buttons: {
25
+ text: string;
26
+ theme: string;
27
+ url: string;
28
+ }[];
29
+ additionalInfo?: undefined;
30
+ links?: undefined;
31
+ list?: undefined;
32
+ } | {
33
+ title: string;
34
+ text: string;
35
+ links: {
36
+ text: string;
37
+ url: string;
38
+ arrow: boolean;
39
+ theme: string;
40
+ }[];
41
+ additionalInfo?: undefined;
42
+ buttons?: undefined;
43
+ list?: undefined;
44
+ } | {
45
+ title: string;
46
+ text: string;
47
+ list: {
48
+ title: string;
49
+ text: string;
50
+ }[];
51
+ additionalInfo?: undefined;
52
+ buttons?: undefined;
53
+ links?: undefined;
54
+ })[];
9
55
  };
10
56
  };
11
57
  };
@@ -8,10 +8,68 @@ const ExtendedFeaturesBlockConfig = {
8
8
  component: ExtendedFeatures_1.default,
9
9
  schema: {
10
10
  name: 'Extended Features Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.ExtendedFeaturesBlock['extended-features-block']),
12
13
  default: {
13
- title: 'Extended Features Block',
14
- items: [{}],
14
+ type: 'extended-features-block',
15
+ title: {
16
+ text: 'Lorem ipsum dolor sit amet',
17
+ textSize: 'm',
18
+ },
19
+ description: 'Three cards in a row on the desktop, two cards in a row on a tablet, one card in a row on a mobile phone.',
20
+ items: [
21
+ {
22
+ title: 'Sed do eiusmod tempor incididunt',
23
+ text: 'Ut enim ad minim veniam quis nostrud ullamco laboris nisi ut aliquip ex ea commodo consequat.',
24
+ additionalInfo: 'Duis aute irure dolor in reprehenderit n voluptate velit esse cillum dolore eu fugiat nulla pariatur.',
25
+ },
26
+ {
27
+ title: 'Sed do eiusmod tempor',
28
+ text: 'Ut enim ad minim veniam quis nostrud ullamco laboris nisi ut aliquip ex ea commodo consequat.',
29
+ buttons: [
30
+ {
31
+ text: 'Button',
32
+ theme: 'action',
33
+ url: 'https://example.com',
34
+ },
35
+ {
36
+ text: 'Button',
37
+ theme: 'outlined',
38
+ url: 'https://example.com',
39
+ },
40
+ ],
41
+ },
42
+ {
43
+ title: 'Sed do eiusmod tempor incididunt',
44
+ text: 'Ut enim ad minim veniam quis nostrud ullamco laboris nisi ut aliquip ex ea commodo consequat.',
45
+ links: [
46
+ {
47
+ text: 'Go',
48
+ url: '#',
49
+ arrow: true,
50
+ theme: 'normal',
51
+ },
52
+ ],
53
+ },
54
+ {
55
+ title: 'Sed do eiusmod tempor incididunt',
56
+ text: 'Ut enim ad minim veniam quis nostrud ullamco laboris nisi ut aliquip ex ea commodo consequat.',
57
+ list: [
58
+ {
59
+ title: 'Lorem ipsum',
60
+ text: 'Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 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.',
61
+ },
62
+ {
63
+ title: 'Lorem ipsum ipsum',
64
+ text: 'Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 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.',
65
+ },
66
+ {
67
+ title: 'Lorem ipsum',
68
+ text: 'Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 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.',
69
+ },
70
+ ],
71
+ },
72
+ ],
15
73
  },
16
74
  },
17
75
  };
@@ -2,9 +2,27 @@ declare const FilterBlockConfig: {
2
2
  component: import("react").FC<import("../..").FilterBlockProps>;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
8
+ allTag: boolean;
9
+ description: string;
10
+ items: {
11
+ card: {
12
+ content: {
13
+ title: string;
14
+ text: string;
15
+ };
16
+ type: string;
17
+ };
18
+ tags: string[];
19
+ }[];
20
+ tags: {
21
+ id: string;
22
+ label: string;
23
+ }[];
7
24
  title: string;
25
+ type: string;
8
26
  };
9
27
  };
10
28
  };
@@ -8,9 +8,89 @@ const FilterBlockConfig = {
8
8
  component: FilterBlock_1.default,
9
9
  schema: {
10
10
  name: 'Filter Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.FilterProps),
12
13
  default: {
13
- title: 'Filter Block',
14
+ allTag: true,
15
+ description: 'Three cards in a row on the desktop, two cards in a row on a tablet, one card in a row on a mobile phone.',
16
+ items: [
17
+ {
18
+ card: {
19
+ content: {
20
+ title: 'Layout Item 1',
21
+ text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
22
+ },
23
+ type: 'layout-item',
24
+ },
25
+ tags: ['one'],
26
+ },
27
+ {
28
+ card: {
29
+ content: {
30
+ title: 'Layout Item 2',
31
+ text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
32
+ },
33
+ type: 'layout-item',
34
+ },
35
+ tags: ['two'],
36
+ },
37
+ {
38
+ card: {
39
+ content: {
40
+ title: 'Layout Item 3',
41
+ text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
42
+ },
43
+ type: 'layout-item',
44
+ },
45
+ tags: ['three'],
46
+ },
47
+ {
48
+ card: {
49
+ content: {
50
+ title: 'Layout Item 4',
51
+ text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
52
+ },
53
+ type: 'layout-item',
54
+ },
55
+ tags: ['one'],
56
+ },
57
+ {
58
+ card: {
59
+ content: {
60
+ title: 'Layout Item 5',
61
+ text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
62
+ },
63
+ type: 'layout-item',
64
+ },
65
+ tags: ['two'],
66
+ },
67
+ {
68
+ card: {
69
+ content: {
70
+ title: 'Layout Item 6',
71
+ text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
72
+ },
73
+ type: 'layout-item',
74
+ },
75
+ tags: ['three'],
76
+ },
77
+ ],
78
+ tags: [
79
+ {
80
+ id: 'one',
81
+ label: 'First very long label',
82
+ },
83
+ {
84
+ id: 'two',
85
+ label: 'Second very long label',
86
+ },
87
+ {
88
+ id: 'three',
89
+ label: 'Third very long label',
90
+ },
91
+ ],
92
+ title: 'Card Layout',
93
+ type: 'filter-block',
14
94
  },
15
95
  },
16
96
  };
@@ -2,6 +2,7 @@ declare const FormBlockConfig: {
2
2
  component: import("react").FC<import("../..").FormBlockProps>;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
7
8
  title: string;
@@ -8,6 +8,7 @@ const FormBlockConfig = {
8
8
  component: Form_1.default,
9
9
  schema: {
10
10
  name: 'Form Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.FormBlock['form-block']),
12
13
  default: {
13
14
  title: 'Form Block',
@@ -2,7 +2,18 @@ declare const HeaderBlockConfig: {
2
2
  component: (props: import("../..").WithChildren<import("../..").HeaderBlockProps & import("../..").ClassNameProps>) => JSX.Element;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
7
+ default: {
8
+ type: string;
9
+ title: string;
10
+ description: string;
11
+ buttons: {
12
+ text: string;
13
+ theme: string;
14
+ url: string;
15
+ }[];
16
+ };
6
17
  };
7
18
  };
8
19
  export default HeaderBlockConfig;
@@ -8,7 +8,25 @@ const HeaderBlockConfig = {
8
8
  component: Header_1.default,
9
9
  schema: {
10
10
  name: 'Header Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.HeaderBlock['header-block']),
13
+ default: {
14
+ type: 'header-block',
15
+ title: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
16
+ description: 'Ut enim ad minim veniam quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.',
17
+ buttons: [
18
+ {
19
+ text: 'Button\r',
20
+ theme: 'action',
21
+ url: 'https://example.com',
22
+ },
23
+ {
24
+ text: 'Button',
25
+ theme: 'outlined',
26
+ url: 'https://example.com',
27
+ },
28
+ ],
29
+ },
12
30
  },
13
31
  };
14
32
  exports.default = HeaderBlockConfig;
@@ -2,6 +2,7 @@ declare const HeaderSliderBlockConfig: {
2
2
  component: ({ items, arrows, ...props }: import("../..").HeaderSliderBlockProps) => JSX.Element;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
7
8
  type: string;
@@ -8,6 +8,7 @@ const HeaderSliderBlockConfig = {
8
8
  component: HeaderSlider_1.default,
9
9
  schema: {
10
10
  name: 'Header Slider Block',
11
+ group: 'card-containers',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.HeaderSliderBlock['header-slider-block']),
12
13
  default: {
13
14
  type: 'header-slider-block',
@@ -17,8 +17,8 @@ const Icons = ({ title, description, size = 's', colSizes = { all: 12 }, items }
17
17
  const onClick = (0, react_1.useCallback)(({ analyticsEvents, url }) => {
18
18
  handleAnalytics(analyticsEvents, { url });
19
19
  }, [handleAnalytics]);
20
- return (react_1.default.createElement("div", { className: b({ size }) },
21
- react_1.default.createElement(grid_1.Grid, null,
20
+ return (react_1.default.createElement(grid_1.Grid, null,
21
+ react_1.default.createElement("div", { className: b({ size }) },
22
22
  (title || description) && (react_1.default.createElement(components_1.Title, { className: b('header'), title: title, subtitle: description, colSizes: colSizes })),
23
23
  items &&
24
24
  items.map((item) => {
@@ -2,11 +2,18 @@ declare const IconsBlockConfig: {
2
2
  component: ({ title, description, size, colSizes, items }: import("../..").IconsBlockProps) => JSX.Element;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
7
8
  type: string;
8
9
  title: string;
9
10
  description: string;
11
+ size: string;
12
+ items: {
13
+ url: string;
14
+ text: string;
15
+ src: string;
16
+ }[];
10
17
  };
11
18
  };
12
19
  };
@@ -8,11 +8,55 @@ const IconsBlockConfig = {
8
8
  component: Icons_1.default,
9
9
  schema: {
10
10
  name: 'Icons Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.IconsProps),
12
13
  default: {
13
14
  type: 'icons-block',
14
15
  title: 'Icons Block',
15
16
  description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
17
+ size: 'm',
18
+ items: [
19
+ {
20
+ url: '/security/standards/software-registry',
21
+ text: 'Государственные реестры РФ',
22
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/main-shield/security-software-registry.svg',
23
+ },
24
+ {
25
+ url: '/security/standards/gdpr',
26
+ text: 'Общий регламент защиты данных (GDPR)',
27
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/main-shield/security-gdpr.svg',
28
+ },
29
+ {
30
+ url: '/security/standards/cloud-security-alliance',
31
+ text: 'Cloud Security Alliance',
32
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/main-shield/security-csa.svg',
33
+ },
34
+ {
35
+ url: '/security/standards/iso-standards',
36
+ text: 'Международная организация по стандартизации (ISO)',
37
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/main-shield/security-iso.svg',
38
+ },
39
+ {
40
+ url: '/security/standards/152-fz',
41
+ text: '№152-ФЗ «О персональных данных»',
42
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/main-shield/security-152-fz.svg',
43
+ },
44
+ {
45
+ url: '/security/standards/gost-p-57580',
46
+ text: 'ГОСТ Р 57580',
47
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/main-shield/security-gost.svg',
48
+ },
49
+ {
50
+ url: '/security/standards/pci',
51
+ text: 'Payment Card Industry Data Security Standard',
52
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/main-shield/security-pci.svg',
53
+ },
54
+ {
55
+ url: '/docs/security/standard/all',
56
+ text: 'Стандарт по защите облачной инфраструктуры',
57
+ src: 'https://storage.yandexcloud.net/cloud-www-assets/security-new/icons/security_yc.svg',
58
+ },
59
+ ],
16
60
  },
17
61
  },
18
62
  };
@@ -2,6 +2,7 @@ declare const InfoBlockConfig: {
2
2
  component: (props: import("../..").InfoBlockProps) => JSX.Element;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
7
8
  type: string;
@@ -8,6 +8,7 @@ const InfoBlockConfig = {
8
8
  component: Info_1.default,
9
9
  schema: {
10
10
  name: 'Info Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.InfoBlock['info-block']),
12
13
  default: {
13
14
  type: 'info-block',
@@ -2,6 +2,7 @@ declare const MapBlockConfig: {
2
2
  component: ({ map, border, disableShadow, ...props }: import("../..").MapBlockProps) => JSX.Element;
3
3
  schema: {
4
4
  name: string;
5
+ group: string;
5
6
  inputs: import("../../editor-v2").ConfigInput[];
6
7
  default: {
7
8
  title: string;
@@ -8,6 +8,7 @@ const MapBlockConfig = {
8
8
  component: Map_1.default,
9
9
  schema: {
10
10
  name: 'Map Block',
11
+ group: 'block',
11
12
  inputs: (0, form_generator_1.generateFromAJV)(schema_1.MapBlock['map-block']),
12
13
  default: {
13
14
  title: 'Map Block',