@gravity-ui/blog-constructor 4.4.1 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (95) hide show
  1. package/build/cjs/blocks/Author/Author.css +2 -2
  2. package/build/cjs/blocks/Banner/schema.d.ts +11 -0
  3. package/build/cjs/blocks/CTA/CTA.css +1 -1
  4. package/build/cjs/blocks/CTA/CTA.js +1 -1
  5. package/build/cjs/blocks/CTA/schema.d.ts +11 -0
  6. package/build/cjs/blocks/ColoredText/schema.d.ts +11 -0
  7. package/build/cjs/blocks/Header/Header.js +1 -1
  8. package/build/cjs/blocks/Media/Media.css +1 -1
  9. package/build/cjs/blocks/Meta/Meta.js +2 -2
  10. package/build/cjs/components/ButtonWithIcon/ButtonWithIcon.css +6 -6
  11. package/build/cjs/components/FeedHeader/FeedHeader.css +3 -3
  12. package/build/cjs/components/FeedHeader/FeedHeader.js +1 -1
  13. package/build/cjs/components/FeedHeader/components/Controls/Controls.css +14 -12
  14. package/build/cjs/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.css +2 -2
  15. package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +9 -9
  16. package/build/cjs/components/Paginator/Paginator.css +6 -6
  17. package/build/cjs/components/PostCard/PostCard.css +15 -15
  18. package/build/cjs/components/PostCard/PostCard.js +1 -1
  19. package/build/cjs/components/PostInfo/PostInfo.css +20 -20
  20. package/build/cjs/components/PostInfo/PostInfo.d.ts +3 -4
  21. package/build/cjs/components/PostInfo/PostInfo.js +3 -3
  22. package/build/cjs/components/PostInfo/SuggestPostInfo.d.ts +3 -4
  23. package/build/cjs/components/PostInfo/SuggestPostInfo.js +3 -3
  24. package/build/cjs/components/PostInfo/components/Save.d.ts +3 -3
  25. package/build/cjs/components/PostInfo/components/Save.js +3 -3
  26. package/build/cjs/components/PostInfo/components/Sharing.js +2 -2
  27. package/build/cjs/components/Posts/Posts.css +1 -1
  28. package/build/cjs/components/PostsEmpty/PostsEmpty.css +5 -5
  29. package/build/cjs/components/PostsError/PostError.css +5 -5
  30. package/build/cjs/components/Prompt/Prompt.css +2 -2
  31. package/build/cjs/components/Search/Search.css +4 -4
  32. package/build/cjs/components/Wrapper/Wrapper.d.ts +2 -3
  33. package/build/cjs/components/Wrapper/Wrapper.js +2 -2
  34. package/build/cjs/constants.d.ts +2 -0
  35. package/build/cjs/constants.js +3 -1
  36. package/build/cjs/containers/BlogPage/BlogPage.css +8 -8
  37. package/build/cjs/containers/BlogPostPage/BlogPostPage.css +49 -49
  38. package/build/cjs/containers/BlogPostPage/BlogPostPage.d.ts +1 -1
  39. package/build/cjs/contexts/PostPageContext.d.ts +1 -1
  40. package/build/cjs/contexts/theme/ThemeProvider.js +4 -4
  41. package/build/cjs/models/common.d.ts +3 -0
  42. package/build/cjs/schema/index.d.ts +33 -0
  43. package/build/cjs/utils/common.d.ts +1 -0
  44. package/build/esm/blocks/Author/Author.css +2 -2
  45. package/build/esm/blocks/Banner/schema.d.ts +11 -0
  46. package/build/esm/blocks/CTA/CTA.css +1 -1
  47. package/build/esm/blocks/CTA/CTA.js +1 -1
  48. package/build/esm/blocks/CTA/schema.d.ts +11 -0
  49. package/build/esm/blocks/ColoredText/schema.d.ts +11 -0
  50. package/build/esm/blocks/Header/Header.js +1 -1
  51. package/build/esm/blocks/Media/Media.css +1 -1
  52. package/build/esm/blocks/Meta/Meta.js +2 -2
  53. package/build/esm/components/ButtonWithIcon/ButtonWithIcon.css +6 -6
  54. package/build/esm/components/FeedHeader/FeedHeader.css +3 -3
  55. package/build/esm/components/FeedHeader/FeedHeader.js +1 -1
  56. package/build/esm/components/FeedHeader/components/Controls/Controls.css +14 -12
  57. package/build/esm/components/FeedHeader/components/CustomSelectOption/CustomSelectOption.css +2 -2
  58. package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +9 -9
  59. package/build/esm/components/Paginator/Paginator.css +6 -6
  60. package/build/esm/components/PostCard/PostCard.css +15 -15
  61. package/build/esm/components/PostCard/PostCard.js +1 -1
  62. package/build/esm/components/PostInfo/PostInfo.css +20 -20
  63. package/build/esm/components/PostInfo/PostInfo.d.ts +3 -4
  64. package/build/esm/components/PostInfo/PostInfo.js +3 -3
  65. package/build/esm/components/PostInfo/SuggestPostInfo.d.ts +3 -4
  66. package/build/esm/components/PostInfo/SuggestPostInfo.js +3 -3
  67. package/build/esm/components/PostInfo/components/Save.d.ts +3 -3
  68. package/build/esm/components/PostInfo/components/Save.js +3 -3
  69. package/build/esm/components/PostInfo/components/Sharing.js +2 -2
  70. package/build/esm/components/Posts/Posts.css +1 -1
  71. package/build/esm/components/PostsEmpty/PostsEmpty.css +5 -5
  72. package/build/esm/components/PostsError/PostError.css +5 -5
  73. package/build/esm/components/Prompt/Prompt.css +2 -2
  74. package/build/esm/components/Search/Search.css +4 -4
  75. package/build/esm/components/Wrapper/Wrapper.d.ts +2 -3
  76. package/build/esm/components/Wrapper/Wrapper.js +2 -2
  77. package/build/esm/constants.d.ts +2 -0
  78. package/build/esm/constants.js +2 -0
  79. package/build/esm/containers/BlogPage/BlogPage.css +8 -8
  80. package/build/esm/containers/BlogPostPage/BlogPostPage.css +49 -49
  81. package/build/esm/containers/BlogPostPage/BlogPostPage.d.ts +1 -1
  82. package/build/esm/contexts/PostPageContext.d.ts +1 -1
  83. package/build/esm/contexts/theme/ThemeProvider.js +5 -5
  84. package/build/esm/models/common.d.ts +3 -0
  85. package/build/esm/schema/index.d.ts +33 -0
  86. package/build/esm/utils/common.d.ts +1 -0
  87. package/package.json +8 -7
  88. package/server/models/common.d.ts +3 -0
  89. package/styles/root.css +8 -8
  90. package/styles/root.scss +8 -8
  91. package/styles/storybook/common.scss +12 -6
  92. package/styles/storybook/palette.scss +6 -6
  93. package/styles/storybook/typography.scss +46 -46
  94. package/styles/yfm.css +26 -26
  95. package/styles/yfm.scss +14 -14
@@ -16,14 +16,14 @@ unpredictable css rules order in build */
16
16
  }
17
17
  .bc-posts-error__title {
18
18
  margin-top: 24px;
19
- font-size: var(--yc-text-display-2-font-size);
20
- line-height: var(--yc-text-display-2-line-height);
21
- font-weight: var(--yc-text-accent-font-weight);
19
+ font-size: var(--g-text-display-2-font-size);
20
+ line-height: var(--g-text-display-2-line-height);
21
+ font-weight: var(--g-text-accent-font-weight);
22
22
  }
23
23
  .bc-posts-error__subtitle {
24
24
  margin-top: 16px;
25
- font-size: var(--yc-text-body-3-font-size);
26
- line-height: var(--yc-text-body-3-line-height);
25
+ font-size: var(--g-text-body-3-font-size);
26
+ line-height: var(--g-text-body-3-line-height);
27
27
  }
28
28
  .bc-posts-error__button {
29
29
  padding: 24px 0 48px;
@@ -43,8 +43,8 @@ unpredictable css rules order in build */
43
43
  margin: 24px;
44
44
  padding: 16px 20px;
45
45
  border-radius: calc(var(--pc-border-radius) / 2);
46
- background-color: var(--yc-color-base-float);
47
- font-size: var(--yc-text-body-2-font-size);
46
+ background-color: var(--g-color-base-float);
47
+ font-size: var(--g-text-body-2-font-size);
48
48
  }
49
49
  .bc-prompt_close {
50
50
  pointer-events: none;
@@ -1,8 +1,8 @@
1
1
  /* use this for style redefinitions to awoid problems with
2
2
  unpredictable css rules order in build */
3
3
  .bc-search {
4
- font-size: var(--yc-text-body-1-font-size);
5
- line-height: var(--yc-text-body-1-line-height);
4
+ font-size: var(--g-text-body-1-font-size);
5
+ line-height: var(--g-text-body-1-line-height);
6
6
  position: relative;
7
7
  display: flex;
8
8
  align-items: center;
@@ -14,10 +14,10 @@ unpredictable css rules order in build */
14
14
  position: absolute;
15
15
  z-index: 2;
16
16
  right: 10px;
17
- color: var(--yc-color-text-hint);
17
+ color: var(--g-color-text-hint);
18
18
  }
19
19
  .bc-search__search-button:hover {
20
- color: var(--yc-color-text-secondary);
20
+ color: var(--g-color-text-secondary);
21
21
  }
22
22
  .bc-search__search-suggest-container {
23
23
  width: 100%;
@@ -1,10 +1,9 @@
1
1
  import React from 'react';
2
- import { ClassNameProps } from '../../models/common';
2
+ import { ClassNameProps, QAProps } from '../../models/common';
3
3
  import { Paddings } from '../../models/paddings';
4
4
  import './Wrapper.css';
5
- type WrapperProps = ClassNameProps & {
5
+ type WrapperProps = ClassNameProps & QAProps & {
6
6
  paddings?: Paddings;
7
- dataQa?: string;
8
7
  children?: React.ReactNode;
9
8
  };
10
9
  export declare const Wrapper: React.FunctionComponent<WrapperProps>;
@@ -3,9 +3,9 @@ import { DEFAULT_PADDINGS } from '../../constants';
3
3
  import { block } from '../../utils/cn';
4
4
  import './Wrapper.css';
5
5
  const b = block('wrapper');
6
- export const Wrapper = ({ children, paddings = DEFAULT_PADDINGS, className, dataQa, }) => (React.createElement("section", { className: b({
6
+ export const Wrapper = ({ children, paddings = DEFAULT_PADDINGS, className, qa, }) => (React.createElement("section", { className: b({
7
7
  ['padding-top']: (paddings === null || paddings === void 0 ? void 0 : paddings.top) || 'xs',
8
8
  ['padding-bottom']: (paddings === null || paddings === void 0 ? void 0 : paddings.bottom) || 'l',
9
9
  ['padding-left']: (paddings === null || paddings === void 0 ? void 0 : paddings.left) || '',
10
10
  ['padding-right']: (paddings === null || paddings === void 0 ? void 0 : paddings.right) || '',
11
- }, className), "data-qa": dataQa }, children));
11
+ }, className), "data-qa": qa }, children));
@@ -7,6 +7,8 @@ export declare const BREAKPOINTS: {
7
7
  xl: number;
8
8
  };
9
9
  export declare const DEFAULT_THEME = "light";
10
+ export declare const UIKIT_ROOT_CLASS = "g-root";
11
+ export declare const UIKIT_THEME_LIGHT_CLASS: string;
10
12
  export declare enum BlogMetrikaGoalIds {
11
13
  shareTop = "SITE_BLOG_SHARE-TOP_CLICK",
12
14
  shareBottom = "SITE_BLOG_SHARE-BOTTOM_CLICK",
@@ -7,6 +7,8 @@ export const BREAKPOINTS = {
7
7
  xl: 1185,
8
8
  };
9
9
  export const DEFAULT_THEME = 'light';
10
+ export const UIKIT_ROOT_CLASS = 'g-root';
11
+ export const UIKIT_THEME_LIGHT_CLASS = `${UIKIT_ROOT_CLASS}_theme_${DEFAULT_THEME}`;
10
12
  export var BlogMetrikaGoalIds;
11
13
  (function (BlogMetrikaGoalIds) {
12
14
  BlogMetrikaGoalIds["shareTop"] = "SITE_BLOG_SHARE-TOP_CLICK";
@@ -2,20 +2,20 @@
2
2
  --header-height: 64px;
3
3
  }
4
4
 
5
- .yc-root {
6
- --yc-text-accent-font-weight: 500;
5
+ .g-root {
6
+ --g-text-accent-font-weight: 500;
7
7
  --bc-transparent: rgba(255, 255, 255, 0);
8
8
  --bc-image-padding: 4px;
9
9
  --bc-border-radius: var(--pc-border-radius, 24px);
10
- --bc-color-sfx-shadow: var(--yc-color-base-simple-hover);
10
+ --bc-color-sfx-shadow: var(--g-color-base-simple-hover);
11
11
  --bc-color-line-generic-active-solid: #b3b3b3;
12
- --bc-color-base-float-hover: var(--yc-color-base-float);
12
+ --bc-color-base-float-hover: var(--g-color-base-float);
13
13
  --bc-monochrome-button: #262626;
14
14
  --bc-monochrome-button-hover: #393939;
15
- --bc-text-header-color: var(--yc-color-text-primary);
15
+ --bc-text-header-color: var(--g-color-text-primary);
16
16
  }
17
- .yc-root.yc-root_theme_dark {
18
- --bc-color-sfx-shadow: var(--yc-color-sfx-shadow);
17
+ .g-root.g-root_theme_dark {
18
+ --bc-color-sfx-shadow: var(--g-color-sfx-shadow);
19
19
  --bc-color-line-generic-active-solid: #6c6c70;
20
- --bc-color-base-float-hover: var(--yc-color-base-float-hover);
20
+ --bc-color-base-float-hover: var(--g-color-base-float-hover);
21
21
  }
@@ -4,30 +4,30 @@
4
4
  --header-height: 64px;
5
5
  }
6
6
 
7
- .yc-root {
8
- --yc-text-accent-font-weight: 500;
7
+ .g-root {
8
+ --g-text-accent-font-weight: 500;
9
9
  --bc-transparent: rgba(255, 255, 255, 0);
10
10
  --bc-image-padding: 4px;
11
11
  --bc-border-radius: var(--pc-border-radius, 24px);
12
- --bc-color-sfx-shadow: var(--yc-color-base-simple-hover);
12
+ --bc-color-sfx-shadow: var(--g-color-base-simple-hover);
13
13
  --bc-color-line-generic-active-solid: #b3b3b3;
14
- --bc-color-base-float-hover: var(--yc-color-base-float);
14
+ --bc-color-base-float-hover: var(--g-color-base-float);
15
15
  --bc-monochrome-button: #262626;
16
16
  --bc-monochrome-button-hover: #393939;
17
- --bc-text-header-color: var(--yc-color-text-primary);
17
+ --bc-text-header-color: var(--g-color-text-primary);
18
18
  }
19
- .yc-root.yc-root_theme_dark {
20
- --bc-color-sfx-shadow: var(--yc-color-sfx-shadow);
19
+ .g-root.g-root_theme_dark {
20
+ --bc-color-sfx-shadow: var(--g-color-sfx-shadow);
21
21
  --bc-color-line-generic-active-solid: #6c6c70;
22
- --bc-color-base-float-hover: var(--yc-color-base-float-hover);
22
+ --bc-color-base-float-hover: var(--g-color-base-float-hover);
23
23
  }
24
24
 
25
25
  /* use this for style redefinitions to awoid problems with
26
26
  unpredictable css rules order in build */
27
27
  .yfm_blog {
28
- font-size: var(--yc-text-body-3-font-size);
29
- line-height: var(--yc-text-body-3-line-height);
30
- color: var(--yc-color-text-primary);
28
+ font-size: var(--g-text-body-3-font-size);
29
+ line-height: var(--g-text-body-3-line-height);
30
+ color: var(--g-color-text-primary);
31
31
  }
32
32
  .yfm_blog h1:first-child,
33
33
  .yfm_blog h2:first-child,
@@ -38,16 +38,16 @@ unpredictable css rules order in build */
38
38
  padding-top: 0;
39
39
  }
40
40
  .yfm_blog h2 {
41
- font-size: var(--yc-text-display-2-font-size);
42
- line-height: var(--yc-text-display-2-line-height);
41
+ font-size: var(--g-text-display-2-font-size);
42
+ line-height: var(--g-text-display-2-line-height);
43
43
  }
44
44
  .yfm_blog h3 {
45
- font-size: var(--yc-text-header-2-font-size);
46
- line-height: var(--yc-text-header-2-line-height);
45
+ font-size: var(--g-text-header-2-font-size);
46
+ line-height: var(--g-text-header-2-line-height);
47
47
  }
48
48
  .yfm_blog h4 {
49
- font-size: var(--yc-text-header-1-font-size);
50
- line-height: var(--yc-text-header-1-line-height);
49
+ font-size: var(--g-text-header-1-font-size);
50
+ line-height: var(--g-text-header-1-line-height);
51
51
  }
52
52
  .yfm_blog.yfm_blog h1,
53
53
  .yfm_blog.yfm_blog h2,
@@ -58,7 +58,7 @@ unpredictable css rules order in build */
58
58
  margin-bottom: 16px;
59
59
  margin-top: 32px;
60
60
  padding-top: 0;
61
- font-weight: var(--yc-text-header-font-weight);
61
+ font-weight: var(--g-text-header-font-weight);
62
62
  }
63
63
 
64
64
  .yfm_blog blockquote,
@@ -83,41 +83,41 @@ unpredictable css rules order in build */
83
83
  padding-left: 1.4em;
84
84
  }
85
85
  .yfm_blog code {
86
- color: var(--yc-color-text-misc);
86
+ color: var(--g-color-text-misc);
87
87
  }
88
88
  .yfm_blog pre > code {
89
- color: var(--yc-color-text-primary);
89
+ color: var(--g-color-text-primary);
90
90
  }
91
91
  .yfm_blog table {
92
- color: var(--yc-color-text-primary);
93
- border: 1px solid var(--yc-color-line-generic);
94
- background: var(--yc-color-base-background);
92
+ color: var(--g-color-text-primary);
93
+ border: 1px solid var(--g-color-line-generic);
94
+ background: var(--g-color-base-background);
95
95
  }
96
96
  .yfm_blog thead tr,
97
97
  .yfm_blog table tr:nth-child(2n) {
98
- background-color: var(--yc-color-base-generic);
98
+ background-color: var(--g-color-base-generic);
99
99
  }
100
100
  .yfm_blog_media {
101
- font-size: var(--yc-text-body-3-font-size);
102
- line-height: var(--yc-text-body-3-line-height);
103
- color: var(--yc-color-text-secondary);
101
+ font-size: var(--g-text-body-3-font-size);
102
+ line-height: var(--g-text-body-3-line-height);
103
+ color: var(--g-color-text-secondary);
104
104
  }
105
105
  .yfm_blog_breadcrumbs {
106
- font-size: var(--yc-text-body-2-font-size);
107
- line-height: var(--yc-text-body-2-line-height);
108
- color: var(--yc-text-color-base);
106
+ font-size: var(--g-text-body-2-font-size);
107
+ line-height: var(--g-text-body-2-line-height);
108
+ color: var(--g-text-color-base);
109
109
  }
110
110
  .yfm_blog a {
111
- color: var(--yc-color-text-link);
111
+ color: var(--g-color-text-link);
112
112
  }
113
113
  .yfm_blog a:hover {
114
- color: var(--yc-color-text-link-hover);
114
+ color: var(--g-color-text-link-hover);
115
115
  }
116
116
  .yfm_blog .yfm-tab:hover, .yfm_blog .yfm-tab:active {
117
- color: var(--yc-color-text-link-hover);
117
+ color: var(--g-color-text-link-hover);
118
118
  }
119
119
  .yfm_blog .yfm-tab.active {
120
- border-bottom-color: var(--yc-color-text-link);
120
+ border-bottom-color: var(--g-color-text-link);
121
121
  }
122
122
  .yfm_blog .yfm-clipboard {
123
123
  margin: 32px 0;
@@ -130,14 +130,14 @@ unpredictable css rules order in build */
130
130
  /* use this for style redefinitions to awoid problems with
131
131
  unpredictable css rules order in build */
132
132
  .yfm_constructor {
133
- font-family: var(--yc-font-family-sans);
134
- color: var(--yc-color-text-primary);
133
+ font-family: var(--g-font-family-sans);
134
+ color: var(--g-color-text-primary);
135
135
  }
136
136
  .yfm_constructor code,
137
137
  .yfm_constructor kbd,
138
138
  .yfm_constructor pre {
139
- font-family: var(--yc-font-family-monospace);
140
- color: var(--yc-color-text-primary);
139
+ font-family: var(--g-font-family-monospace);
140
+ color: var(--g-color-text-primary);
141
141
  }
142
142
  .yfm_constructor.yfm_constructor h1,
143
143
  .yfm_constructor.yfm_constructor h2,
@@ -148,11 +148,11 @@ unpredictable css rules order in build */
148
148
  .yfm_constructor.yfm_constructor span,
149
149
  .yfm_constructor.yfm_constructor p,
150
150
  .yfm_constructor.yfm_constructor li {
151
- color: var(--yc-color-text-primary);
151
+ color: var(--g-color-text-primary);
152
152
  }
153
153
  .yfm_constructor.yfm_constructor_notice li,
154
154
  .yfm_constructor.yfm_constructor_notice p {
155
- color: var(--yc-color-text-secondary);
155
+ color: var(--g-color-text-secondary);
156
156
  }
157
157
  .yfm_constructor.yfm_constructor ul,
158
158
  .yfm_constructor.yfm_constructor ol,
@@ -171,7 +171,7 @@ unpredictable css rules order in build */
171
171
  }
172
172
 
173
173
  .yfm_constructor_theme_dark p {
174
- color: var(--yc-color-text-light-primary);
174
+ color: var(--g-color-text-light-primary);
175
175
  }
176
176
  .yfm_constructor_list_style ul {
177
177
  padding-left: 20px;
@@ -187,7 +187,7 @@ unpredictable css rules order in build */
187
187
  }
188
188
  .yfm_constructor a {
189
189
  outline: none;
190
- color: var(--yc-color-text-link);
190
+ color: var(--g-color-text-link);
191
191
  text-decoration: none;
192
192
  cursor: pointer;
193
193
  }
@@ -195,17 +195,17 @@ unpredictable css rules order in build */
195
195
  outline: 2px solid #ffdb4d;
196
196
  }
197
197
  .yfm_constructor a:hover, .yfm_constructor a:active {
198
- --pc-text-header-color: var(--yc-color-text-link-hover);
199
- color: var(--yc-color-text-link-hover);
198
+ --pc-text-header-color: var(--g-color-text-link-hover);
199
+ color: var(--g-color-text-link-hover);
200
200
  }
201
201
  .yfm_constructor table {
202
- color: var(--yc-color-text-primary);
203
- border: 1px solid var(--yc-color-line-generic);
204
- background: var(--yc-color-base-background);
202
+ color: var(--g-color-text-primary);
203
+ border: 1px solid var(--g-color-line-generic);
204
+ background: var(--g-color-base-background);
205
205
  }
206
206
  .yfm_constructor thead,
207
207
  .yfm_constructor table tr:nth-child(2n) {
208
- background-color: var(--yc-color-base-generic);
208
+ background-color: var(--g-color-base-generic);
209
209
  }
210
210
 
211
211
  .yfm_constructor_table {
@@ -221,7 +221,7 @@ unpredictable css rules order in build */
221
221
  background-color: transparent !important;
222
222
  }
223
223
  .yfm_constructor_table tbody tr {
224
- border-top: 1px solid var(--yc-color-line-generic);
224
+ border-top: 1px solid var(--g-color-line-generic);
225
225
  }
226
226
  .yfm_constructor_table td,
227
227
  .yfm_constructor_table th {
@@ -1,6 +1,6 @@
1
1
  import React, { SyntheticEvent } from 'react';
2
+ import { ShareOptions } from '@gravity-ui/components';
2
3
  import { NavigationData, PageConstructorProviderProps, PageContent } from '@gravity-ui/page-constructor';
3
- import { ShareOptions } from '@gravity-ui/uikit';
4
4
  import { MetaProps, PostData, ToggleLikeCallbackType } from '../../models/common';
5
5
  import './BlogPostPage.css';
6
6
  export interface BlogPostPageProps {
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { ShareOptions } from '@gravity-ui/uikit';
2
+ import { ShareOptions } from '@gravity-ui/components';
3
3
  import { PostData } from '../models/common';
4
4
  export interface PostPageContextProps {
5
5
  post: PostData;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { DEFAULT_THEME } from '../../constants';
2
+ import { DEFAULT_THEME, UIKIT_ROOT_CLASS } from '../../constants';
3
3
  import { ThemeContext } from './ThemeContext';
4
4
  import { ThemeValueContext } from './ThemeValueContext';
5
5
  export class ThemeProvider extends React.Component {
@@ -32,11 +32,11 @@ export class ThemeProvider extends React.Component {
32
32
  }
33
33
  updateBodyClassName(theme) {
34
34
  const bodyEl = document.body;
35
- if (!bodyEl.classList.contains('yc-root')) {
36
- bodyEl.classList.add('yc-root');
35
+ if (!bodyEl.classList.contains(UIKIT_ROOT_CLASS)) {
36
+ bodyEl.classList.add(UIKIT_ROOT_CLASS);
37
37
  }
38
- bodyEl.classList.toggle('yc-root_theme_light', theme === 'light');
39
- bodyEl.classList.toggle('yc-root_theme_dark', theme === 'dark');
38
+ bodyEl.classList.toggle(`${UIKIT_ROOT_CLASS}_theme_light`, theme === 'light');
39
+ bodyEl.classList.toggle(`${UIKIT_ROOT_CLASS}_theme_dark`, theme === 'dark');
40
40
  }
41
41
  }
42
42
  ThemeProvider.defaultProps = {
@@ -165,3 +165,6 @@ export type FetchArgs = {
165
165
  page?: number;
166
166
  query: Query;
167
167
  };
168
+ export interface QAProps {
169
+ qa?: string;
170
+ }
@@ -629,6 +629,17 @@ export declare const schemasForCustom: {
629
629
  type: string;
630
630
  enum: string[];
631
631
  };
632
+ list: {
633
+ type: string;
634
+ items: {
635
+ type: string;
636
+ properties: {
637
+ when: {
638
+ type: string;
639
+ };
640
+ };
641
+ };
642
+ };
632
643
  paddingTop: {
633
644
  type: string;
634
645
  enum: string[];
@@ -776,6 +787,17 @@ export declare const schemasForCustom: {
776
787
  type: string;
777
788
  enum: string[];
778
789
  };
790
+ list: {
791
+ type: string;
792
+ items: {
793
+ type: string;
794
+ properties: {
795
+ when: {
796
+ type: string;
797
+ };
798
+ };
799
+ };
800
+ };
779
801
  paddingTop: {
780
802
  type: string;
781
803
  enum: string[];
@@ -903,6 +925,17 @@ export declare const schemasForCustom: {
903
925
  type: string;
904
926
  enum: string[];
905
927
  };
928
+ list: {
929
+ type: string;
930
+ items: {
931
+ type: string;
932
+ properties: {
933
+ when: {
934
+ type: string;
935
+ };
936
+ };
937
+ };
938
+ };
906
939
  };
907
940
  };
908
941
  };
@@ -29,6 +29,7 @@ export declare const updateContentSizes: ({ size, colSizes, theme, ...contentDat
29
29
  links?: import("@gravity-ui/page-constructor").LinkProps[] | undefined;
30
30
  buttons?: import("@gravity-ui/page-constructor").ButtonProps[] | undefined;
31
31
  centered?: boolean | undefined;
32
+ list?: import("@gravity-ui/page-constructor").ContentItemProps[] | undefined;
32
33
  };
33
34
  type GetBreadcrumbsProps = {
34
35
  tags?: Tag[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravity-ui/blog-constructor",
3
- "version": "4.4.1",
3
+ "version": "5.0.0",
4
4
  "description": "Gravity UI Blog Constructor",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -46,6 +46,7 @@
46
46
  "test:watch": "jest --watchAll --maxWorkers=25%"
47
47
  },
48
48
  "dependencies": {
49
+ "@gravity-ui/components": "^2.0.0",
49
50
  "@gravity-ui/i18n": "^1.0.0",
50
51
  "bem-cn-lite": "^4.0.0",
51
52
  "lodash": "^4.17.21",
@@ -63,9 +64,9 @@
63
64
  "url-join": "^5.0.0"
64
65
  },
65
66
  "peerDependencies": {
66
- "@doc-tools/transform": "^2.9.0",
67
- "@gravity-ui/page-constructor": "^3.1.1",
68
- "@gravity-ui/uikit": "^4.1.0",
67
+ "@doc-tools/transform": "^3.3.2",
68
+ "@gravity-ui/page-constructor": "^4.0.0",
69
+ "@gravity-ui/uikit": "^5.1.0",
69
70
  "react": "^16.0.0 || ^17.0.0 || ^18.0.0"
70
71
  },
71
72
  "devDependencies": {
@@ -73,13 +74,13 @@
73
74
  "@babel/preset-react": "^7.22.5",
74
75
  "@babel/preset-typescript": "^7.22.5",
75
76
  "@commitlint/config-conventional": "^17.4.3",
76
- "@doc-tools/transform": "^2.9.0",
77
+ "@doc-tools/transform": "^3.3.2",
77
78
  "@gravity-ui/eslint-config": "^2.0.0",
78
- "@gravity-ui/page-constructor": "^3.9.2",
79
+ "@gravity-ui/page-constructor": "^4.0.0",
79
80
  "@gravity-ui/prettier-config": "^1.0.1",
80
81
  "@gravity-ui/stylelint-config": "^1.0.0",
81
82
  "@gravity-ui/tsconfig": "^1.0.0",
82
- "@gravity-ui/uikit": "^4.25.0",
83
+ "@gravity-ui/uikit": "^5.1.0",
83
84
  "@storybook/addon-essentials": "^7.0.27",
84
85
  "@storybook/cli": "^7.0.27",
85
86
  "@storybook/preset-scss": "^1.0.3",
@@ -165,3 +165,6 @@ export type FetchArgs = {
165
165
  page?: number;
166
166
  query: Query;
167
167
  };
168
+ export interface QAProps {
169
+ qa?: string;
170
+ }
package/styles/root.css CHANGED
@@ -2,20 +2,20 @@
2
2
  --header-height: 64px;
3
3
  }
4
4
 
5
- .yc-root {
6
- --yc-text-accent-font-weight: 500;
5
+ .g-root {
6
+ --g-text-accent-font-weight: 500;
7
7
  --bc-transparent: rgba(255, 255, 255, 0);
8
8
  --bc-image-padding: 4px;
9
9
  --bc-border-radius: var(--pc-border-radius, 24px);
10
- --bc-color-sfx-shadow: var(--yc-color-base-simple-hover);
10
+ --bc-color-sfx-shadow: var(--g-color-base-simple-hover);
11
11
  --bc-color-line-generic-active-solid: #b3b3b3;
12
- --bc-color-base-float-hover: var(--yc-color-base-float);
12
+ --bc-color-base-float-hover: var(--g-color-base-float);
13
13
  --bc-monochrome-button: #262626;
14
14
  --bc-monochrome-button-hover: #393939;
15
- --bc-text-header-color: var(--yc-color-text-primary);
15
+ --bc-text-header-color: var(--g-color-text-primary);
16
16
  }
17
- .yc-root.yc-root_theme_dark {
18
- --bc-color-sfx-shadow: var(--yc-color-sfx-shadow);
17
+ .g-root.g-root_theme_dark {
18
+ --bc-color-sfx-shadow: var(--g-color-sfx-shadow);
19
19
  --bc-color-line-generic-active-solid: #6c6c70;
20
- --bc-color-base-float-hover: var(--yc-color-base-float-hover);
20
+ --bc-color-base-float-hover: var(--g-color-base-float-hover);
21
21
  }
package/styles/root.scss CHANGED
@@ -2,24 +2,24 @@
2
2
  --header-height: 64px;
3
3
  }
4
4
 
5
- .yc-root {
6
- --yc-text-accent-font-weight: 500;
5
+ .g-root {
6
+ --g-text-accent-font-weight: 500;
7
7
 
8
8
  // cross-browser transparent color
9
9
  --bc-transparent: rgba(255, 255, 255, 0);
10
10
  --bc-image-padding: 4px;
11
11
 
12
12
  --bc-border-radius: var(--pc-border-radius, 24px);
13
- --bc-color-sfx-shadow: var(--yc-color-base-simple-hover);
13
+ --bc-color-sfx-shadow: var(--g-color-base-simple-hover);
14
14
  --bc-color-line-generic-active-solid: #b3b3b3;
15
- --bc-color-base-float-hover: var(--yc-color-base-float);
15
+ --bc-color-base-float-hover: var(--g-color-base-float);
16
16
  --bc-monochrome-button: #262626;
17
17
  --bc-monochrome-button-hover: #393939;
18
- --bc-text-header-color: var(--yc-color-text-primary);
18
+ --bc-text-header-color: var(--g-color-text-primary);
19
19
 
20
- &.yc-root_theme_dark {
21
- --bc-color-sfx-shadow: var(--yc-color-sfx-shadow);
20
+ &.g-root_theme_dark {
21
+ --bc-color-sfx-shadow: var(--g-color-sfx-shadow);
22
22
  --bc-color-line-generic-active-solid: #6c6c70;
23
- --bc-color-base-float-hover: var(--yc-color-base-float-hover);
23
+ --bc-color-base-float-hover: var(--g-color-base-float-hover);
24
24
  }
25
25
  }
@@ -5,25 +5,31 @@
5
5
 
6
6
  .demo-header {
7
7
  margin-bottom: 20px;
8
- font-size: var(--yc-text-body-1-font-size);
8
+ font-size: var(--g-text-body-1-font-size);
9
9
  font-weight: bold;
10
10
  text-transform: uppercase;
11
- color: var(--yc-color-text-primary);
11
+ color: var(--g-color-text-primary);
12
12
  }
13
13
 
14
14
  .demo-description {
15
15
  margin-bottom: 25px;
16
- font-size: var(--yc-text-body-2-font-size);
17
- line-height: var(--yc-text-body-2-line-height);
16
+ font-size: var(--g-text-body-2-font-size);
17
+ line-height: var(--g-text-body-2-line-height);
18
18
  }
19
19
 
20
20
  .demo-markdown {
21
21
  .markdown-body {
22
22
  padding: 20px;
23
- color: var(--yc-color-text-primary);
23
+ color: var(--g-color-text-primary);
24
24
 
25
25
  a {
26
- color: var(--yc-color-text-link);
26
+ color: var(--g-color-text-link);
27
27
  }
28
28
  }
29
29
  }
30
+
31
+ .pc-page-constructor {
32
+ --pc-first-block-mobile-indent: 32px;
33
+ --pc-first-block-indent: 64px;
34
+ margin-bottom: 120px;
35
+ }
@@ -6,7 +6,7 @@
6
6
  }
7
7
 
8
8
  &__section-message {
9
- color: var(--yc-color-text-special);
9
+ color: var(--g-color-text-brand);
10
10
  margin-bottom: 10px;
11
11
  margin-top: -10px;
12
12
  }
@@ -40,7 +40,7 @@
40
40
  &-description {
41
41
  margin-top: 8px;
42
42
  height: 40px;
43
- color: var(--yc-color-text-primary);
43
+ color: var(--g-color-text-primary);
44
44
  font-size: 13px;
45
45
  }
46
46
  &-caption {
@@ -55,21 +55,21 @@
55
55
  justify-content: center;
56
56
 
57
57
  &_border_yes {
58
- border: 1px solid var(--yc-color-line-generic);
58
+ border: 1px solid var(--g-color-line-generic);
59
59
  }
60
60
 
61
61
  &_skip_yes {
62
- color: var(--yc-color-text-info);
62
+ color: var(--g-color-text-info);
63
63
  }
64
64
  }
65
65
  }
66
66
  }
67
67
 
68
- .yc-root_theme_light .palette__section-contrast-layer {
68
+ .g-root_theme_light .palette__section-contrast-layer {
69
69
  background: #000;
70
70
  opacity: 0.02;
71
71
  }
72
72
 
73
- .yc-root_theme_dark .palette__section-contrast-layer {
73
+ .g-root_theme_dark .palette__section-contrast-layer {
74
74
  background: #323138;
75
75
  }