@gravity-ui/blog-constructor 5.16.1 → 6.0.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 (109) hide show
  1. package/README.md +5 -5
  2. package/build/cjs/blocks/Banner/Banner.js +7 -9
  3. package/build/cjs/blocks/CTA/CTA.js +7 -9
  4. package/build/cjs/blocks/Feed/Feed.js +5 -12
  5. package/build/cjs/blocks/Header/Header.js +10 -14
  6. package/build/cjs/blocks/Media/Media.js +1 -0
  7. package/build/cjs/blocks/Meta/Meta.js +11 -15
  8. package/build/cjs/blocks/Suggest/Suggest.js +8 -11
  9. package/build/cjs/components/FeedHeader/components/Controls/Controls.css +19 -5
  10. package/build/cjs/components/FeedHeader/components/Controls/Controls.js +22 -27
  11. package/build/cjs/components/FeedHeader/components/Controls/customRenders.js +1 -1
  12. package/build/cjs/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +1 -1
  13. package/build/cjs/components/Paginator/Paginator.js +16 -19
  14. package/build/cjs/components/Paginator/components/NavigationButton.js +1 -1
  15. package/build/cjs/components/PostCard/PostCard.d.ts +3 -6
  16. package/build/cjs/components/PostCard/PostCard.js +2 -2
  17. package/build/cjs/components/PostInfo/PostInfo.d.ts +4 -10
  18. package/build/cjs/components/PostInfo/PostInfo.js +4 -4
  19. package/build/cjs/components/PostInfo/SuggestPostInfo.js +4 -1
  20. package/build/cjs/components/PostInfo/components/ReadingTime.js +1 -1
  21. package/build/cjs/components/PostInfo/components/Save.d.ts +4 -6
  22. package/build/cjs/components/PostInfo/components/Save.js +3 -6
  23. package/build/cjs/components/PostInfo/components/Sharing.d.ts +3 -5
  24. package/build/cjs/components/PostInfo/components/Sharing.js +4 -10
  25. package/build/cjs/components/Posts/Posts.js +3 -3
  26. package/build/cjs/components/PostsEmpty/PostsEmpty.js +2 -2
  27. package/build/cjs/components/PostsError/PostsError.js +3 -3
  28. package/build/cjs/components/PromptSignIn/PromptSignIn.js +2 -2
  29. package/build/cjs/components/Search/Search.js +1 -1
  30. package/build/cjs/constants.d.ts +2 -1
  31. package/build/cjs/constants.js +20 -19
  32. package/build/cjs/constructor/BlogConstructorProvider.js +1 -0
  33. package/build/cjs/containers/BlogPostPage/BlogPostPage.css +1 -1
  34. package/build/cjs/contexts/LocaleContext.js +2 -2
  35. package/build/cjs/counters/metrika.js +0 -3
  36. package/build/cjs/counters/utils.d.ts +1 -1
  37. package/build/cjs/counters/utils.js +7 -7
  38. package/build/cjs/i18n/index.d.ts +1 -3
  39. package/build/cjs/i18n/index.js +8 -10
  40. package/build/cjs/index.d.ts +0 -1
  41. package/build/cjs/index.js +1 -3
  42. package/build/cjs/models/common.d.ts +1 -1
  43. package/build/cjs/models/locale.d.ts +1 -4
  44. package/build/cjs/models/locale.js +1 -6
  45. package/build/cjs/utils/common.d.ts +15 -3
  46. package/build/cjs/utils/common.js +20 -19
  47. package/build/esm/blocks/Banner/Banner.js +8 -10
  48. package/build/esm/blocks/CTA/CTA.js +8 -10
  49. package/build/esm/blocks/Feed/Feed.js +8 -15
  50. package/build/esm/blocks/Header/Header.js +12 -16
  51. package/build/esm/blocks/Media/Media.js +1 -0
  52. package/build/esm/blocks/Meta/Meta.js +13 -17
  53. package/build/esm/blocks/Suggest/Suggest.js +9 -12
  54. package/build/esm/components/FeedHeader/components/Controls/Controls.css +19 -5
  55. package/build/esm/components/FeedHeader/components/Controls/Controls.js +25 -30
  56. package/build/esm/components/FeedHeader/components/Controls/customRenders.js +2 -2
  57. package/build/esm/components/FeedHeader/components/CustomSwitcher/CustomSwitcher.css +1 -1
  58. package/build/esm/components/Paginator/Paginator.js +18 -21
  59. package/build/esm/components/Paginator/components/NavigationButton.js +2 -2
  60. package/build/esm/components/PostCard/PostCard.d.ts +3 -6
  61. package/build/esm/components/PostCard/PostCard.js +2 -2
  62. package/build/esm/components/PostInfo/PostInfo.d.ts +4 -10
  63. package/build/esm/components/PostInfo/PostInfo.js +4 -4
  64. package/build/esm/components/PostInfo/SuggestPostInfo.js +4 -1
  65. package/build/esm/components/PostInfo/components/ReadingTime.js +2 -2
  66. package/build/esm/components/PostInfo/components/Save.d.ts +4 -6
  67. package/build/esm/components/PostInfo/components/Save.js +3 -6
  68. package/build/esm/components/PostInfo/components/Sharing.d.ts +3 -5
  69. package/build/esm/components/PostInfo/components/Sharing.js +5 -11
  70. package/build/esm/components/Posts/Posts.js +4 -4
  71. package/build/esm/components/PostsEmpty/PostsEmpty.js +3 -3
  72. package/build/esm/components/PostsError/PostsError.js +4 -4
  73. package/build/esm/components/PromptSignIn/PromptSignIn.js +3 -3
  74. package/build/esm/components/Search/Search.js +2 -2
  75. package/build/esm/constants.d.ts +2 -1
  76. package/build/esm/constants.js +19 -18
  77. package/build/esm/constructor/BlogConstructorProvider.js +2 -1
  78. package/build/esm/containers/BlogPostPage/BlogPostPage.css +1 -1
  79. package/build/esm/contexts/LocaleContext.js +1 -1
  80. package/build/esm/counters/metrika.js +0 -3
  81. package/build/esm/counters/utils.d.ts +1 -1
  82. package/build/esm/counters/utils.js +6 -6
  83. package/build/esm/i18n/index.d.ts +1 -3
  84. package/build/esm/i18n/index.js +7 -9
  85. package/build/esm/index.d.ts +0 -1
  86. package/build/esm/index.js +0 -1
  87. package/build/esm/models/common.d.ts +1 -1
  88. package/build/esm/models/locale.d.ts +1 -4
  89. package/build/esm/models/locale.js +0 -5
  90. package/build/esm/utils/common.d.ts +15 -3
  91. package/build/esm/utils/common.js +18 -17
  92. package/package.json +15 -14
  93. package/server/data/contentFilter.d.ts +1 -1
  94. package/server/data/contentFilter.js +2 -1
  95. package/server/data/transformPageContent.d.ts +2 -2
  96. package/server/data/transformPost.d.ts +7 -2
  97. package/server/data/transformPost.js +1 -1
  98. package/server/index.d.ts +1 -1
  99. package/server/models/common.d.ts +1 -1
  100. package/server/models/locale.d.ts +1 -4
  101. package/server/models/locale.js +1 -6
  102. package/styles/storybook/common.scss +8 -0
  103. package/styles/storybook/index.scss +1 -1
  104. package/styles/styles.css +115 -0
  105. package/styles/styles.scss +1 -0
  106. package/build/cjs/configure.d.ts +0 -5
  107. package/build/cjs/configure.js +0 -8
  108. package/build/esm/configure.d.ts +0 -5
  109. package/build/esm/configure.js +0 -4
@@ -2,7 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.filterContent = exports.filterItems = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const evaluation_1 = tslib_1.__importDefault(require("@doc-tools/transform/lib/liquid/evaluation"));
5
+ // eslint-disable-next-line import/no-extraneous-dependencies
6
+ const evaluation_1 = tslib_1.__importDefault(require("@diplodoc/transform/lib/liquid/evaluation"));
6
7
  /**
7
8
  * Filters items by expression and removes empty items.
8
9
  * @param {Array} items
@@ -1,5 +1,5 @@
1
- import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
2
- import { Lang } from '../models/locale';
1
+ import { MarkdownItPluginCb } from '@diplodoc/transform/lib/plugins/typings';
2
+ import { Lang } from '@gravity-ui/uikit';
3
3
  type TypographyConfigType = {
4
4
  [x: string]: Record<string, unknown>;
5
5
  };
@@ -1,5 +1,10 @@
1
1
  import { PostData, TransformPostOptions } from '../models/common';
2
- import { Lang } from '../models/locale';
2
+ import { Lang } from '@gravity-ui/uikit';
3
+ export type TransformPostType = {
4
+ postData: PostData;
5
+ lang: Lang;
6
+ options: TransformPostOptions;
7
+ };
3
8
  /**
4
9
  * Func for transform post data
5
10
  *
@@ -9,4 +14,4 @@ import { Lang } from '../models/locale';
9
14
  * @param plugins - YFM plugins list
10
15
  * @returns -prepared post
11
16
  */
12
- export declare const transformPost: (postData: PostData, lang: Lang, { plugins }?: TransformPostOptions) => PostData;
17
+ export declare const transformPost: ({ postData, lang, options: { plugins } }: TransformPostType) => PostData;
@@ -12,7 +12,7 @@ const server_1 = require("@gravity-ui/page-constructor/server");
12
12
  * @param plugins - YFM plugins list
13
13
  * @returns -prepared post
14
14
  */
15
- const transformPost = (postData, lang, { plugins } = {}) => {
15
+ const transformPost = ({ postData, lang, options: { plugins } = {} }) => {
16
16
  if (!postData) {
17
17
  // eslint-disable-next-line no-console
18
18
  console.error('Post not found');
package/server/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export { transformPageContent } from "./data/transformPageContent";
2
2
  export { createReadableContent } from "./data/createReadableContent";
3
3
  export { sanitizeMeta } from "./data/sanitizeMeta";
4
- export { transformPost } from "./data/transformPost";
4
+ export { transformPost, TransformPostType } from "./data/transformPost";
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { MarkdownItPluginCb } from '@doc-tools/transform/lib/plugins/typings';
2
+ import { MarkdownItPluginCb } from '@diplodoc/transform/lib/plugins/typings';
3
3
  import { HeaderBlockProps as PageConstructorHeaderBlockProps } from '@gravity-ui/page-constructor';
4
4
  import { IBrowser, IDevice } from 'ua-parser-js';
5
5
  import { Locale } from '../models/locale';
@@ -1,7 +1,4 @@
1
- export declare enum Lang {
2
- Ru = "ru",
3
- En = "en"
4
- }
1
+ import { Lang } from '@gravity-ui/uikit';
5
2
  export declare enum Currency {
6
3
  RUB = "RUB",
7
4
  USD = "USD",
@@ -1,11 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Currency = exports.Lang = void 0;
4
- var Lang;
5
- (function (Lang) {
6
- Lang["Ru"] = "ru";
7
- Lang["En"] = "en";
8
- })(Lang = exports.Lang || (exports.Lang = {}));
3
+ exports.Currency = void 0;
9
4
  var Currency;
10
5
  (function (Currency) {
11
6
  Currency["RUB"] = "RUB";
@@ -1,3 +1,5 @@
1
+ @import '../mixins.scss';
2
+
1
3
  .demo-container {
2
4
  min-height: calc(100vh - 1px);
3
5
  padding: 50px;
@@ -33,3 +35,9 @@
33
35
  --pc-first-block-indent: 64px;
34
36
  margin-bottom: 120px;
35
37
  }
38
+
39
+ .pc-layout {
40
+ @include add-specificity(&) {
41
+ min-height: auto;
42
+ }
43
+ }
@@ -3,7 +3,7 @@
3
3
  @import './common';
4
4
  @import './palette';
5
5
  @import './typography';
6
- @import '~@doc-tools/transform/dist/css/yfm.css';
6
+ @import '~@diplodoc/transform/dist/css/yfm.css';
7
7
  /**
8
8
  * storybook-host container style overrides
9
9
  * @see {@link https://github.com/philcockfield/storybook-host/issues/43}
package/styles/styles.css CHANGED
@@ -1,4 +1,119 @@
1
1
  @import '~@gravity-ui/uikit/styles/styles.css';
2
+ /* use this for style redefinitions to awoid problems with
3
+ unpredictable css rules order in build */
4
+ .yfm_blog {
5
+ font-size: var(--g-text-body-3-font-size);
6
+ line-height: var(--g-text-body-3-line-height);
7
+ color: var(--g-color-text-primary);
8
+ }
9
+ .yfm_blog h1:first-child,
10
+ .yfm_blog h2:first-child,
11
+ .yfm_blog h3:first-child,
12
+ .yfm_blog h4:first-child {
13
+ padding: 0;
14
+ margin-top: 0;
15
+ padding-top: 0;
16
+ }
17
+ .yfm_blog h2 {
18
+ font-size: var(--g-text-display-2-font-size);
19
+ line-height: var(--g-text-display-2-line-height);
20
+ }
21
+ .yfm_blog h3 {
22
+ font-size: var(--g-text-header-2-font-size);
23
+ line-height: var(--g-text-header-2-line-height);
24
+ }
25
+ .yfm_blog h4 {
26
+ font-size: var(--g-text-header-1-font-size);
27
+ line-height: var(--g-text-header-1-line-height);
28
+ }
29
+ .yfm_blog.yfm_blog h1,
30
+ .yfm_blog.yfm_blog h2,
31
+ .yfm_blog.yfm_blog h3,
32
+ .yfm_blog.yfm_blog h4,
33
+ .yfm_blog.yfm_blog h5,
34
+ .yfm_blog.yfm_blog h6 {
35
+ margin-bottom: 16px;
36
+ margin-top: 32px;
37
+ padding-top: 0;
38
+ font-weight: var(--g-text-header-font-weight);
39
+ }
40
+
41
+ .yfm_blog blockquote,
42
+ .yfm_blog dl,
43
+ .yfm_blog ol,
44
+ .yfm_blog p,
45
+ .yfm_blog pre,
46
+ .yfm_blog table,
47
+ .yfm_blog ul {
48
+ margin: 0 0 16px;
49
+ }
50
+ .yfm_blog img {
51
+ margin-bottom: 32px;
52
+ margin-top: 16px;
53
+ border-radius: 24px;
54
+ }
55
+ .yfm_blog hr {
56
+ height: 1px;
57
+ }
58
+ .yfm_blog ol,
59
+ .yfm_blog ul {
60
+ padding-left: 1.4em;
61
+ }
62
+ .yfm_blog code {
63
+ color: var(--g-color-text-misc);
64
+ }
65
+ .yfm_blog pre > code {
66
+ color: var(--g-color-text-primary);
67
+ }
68
+ .yfm_blog table {
69
+ color: var(--g-color-text-primary);
70
+ border: 1px solid var(--g-color-line-generic);
71
+ background: var(--g-color-base-background);
72
+ }
73
+ .yfm_blog thead tr,
74
+ .yfm_blog table tr:nth-child(2n) {
75
+ background-color: var(--g-color-base-generic);
76
+ }
77
+ .yfm_blog_media {
78
+ font-size: var(--g-text-body-3-font-size);
79
+ line-height: var(--g-text-body-3-line-height);
80
+ color: var(--g-color-text-secondary);
81
+ }
82
+ .yfm_blog_breadcrumbs {
83
+ font-size: var(--g-text-body-2-font-size);
84
+ line-height: var(--g-text-body-2-line-height);
85
+ color: var(--g-text-color-base);
86
+ }
87
+ .yfm_blog a {
88
+ color: var(--g-color-text-link);
89
+ border-radius: var(--g-focus-border-radius);
90
+ }
91
+ .yfm_blog a:hover {
92
+ color: var(--g-color-text-link-hover);
93
+ }
94
+ .yfm_blog a:focus {
95
+ box-shadow: 0 0 0 2px var(--g-color-line-focus);
96
+ }
97
+ .yfm_blog a:focus:not(:focus-visible) {
98
+ box-shadow: none;
99
+ }
100
+ .yfm_blog a:focus {
101
+ outline: 0;
102
+ }
103
+ .yfm_blog .yfm-tab:hover, .yfm_blog .yfm-tab:active {
104
+ color: var(--g-color-text-link-hover);
105
+ }
106
+ .yfm_blog .yfm-tab.active {
107
+ border-bottom-color: var(--g-color-text-link);
108
+ }
109
+ .yfm_blog .yfm-clipboard {
110
+ margin: 32px 0;
111
+ }
112
+
113
+ .yfm_blog_card p {
114
+ color: var(--pc-text-header-color);
115
+ }
116
+
2
117
  @font-face {
3
118
  font-family: "YS Display";
4
119
  src: url("https://yastatic.net/s3/home/fonts/ys/1/display-thin.woff2") format("woff2"), url("https://yastatic.net/s3/home/fonts/ys/1/display-thin.woff") format("woff");
@@ -1,2 +1,3 @@
1
1
  @import '~@gravity-ui/uikit/styles/styles.css';
2
+ @import './yfm.scss';
2
3
  @import './fonts.scss';
@@ -1,5 +0,0 @@
1
- import { Lang } from './models/locale';
2
- export interface ProjectConfigParams {
3
- lang: Lang;
4
- }
5
- export declare const configure: ({ lang }: ProjectConfigParams) => void;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.configure = void 0;
4
- const i18n_1 = require("./i18n");
5
- const configure = ({ lang }) => {
6
- i18n_1.i18n.setLang(lang);
7
- };
8
- exports.configure = configure;
@@ -1,5 +0,0 @@
1
- import { Lang } from './models/locale';
2
- export interface ProjectConfigParams {
3
- lang: Lang;
4
- }
5
- export declare const configure: ({ lang }: ProjectConfigParams) => void;
@@ -1,4 +0,0 @@
1
- import { i18n } from './i18n';
2
- export const configure = ({ lang }) => {
3
- i18n.setLang(lang);
4
- };