@gravity-ui/blog-constructor 5.16.1 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
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
- };