@doyourjob/gravity-ui-page-constructor 5.31.273 → 5.31.276

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.
package/README.md CHANGED
@@ -14,6 +14,18 @@ For the format of input data and list of available blocks, see the [documentatio
14
14
  npm install @doyourjob/gravity-ui-page-constructor
15
15
  ```
16
16
 
17
+ ## Release patch
18
+
19
+ Run from a clean branch with an upstream configured:
20
+
21
+ ```shell
22
+ pnpm bump-patch-release
23
+ ```
24
+
25
+ The script fetches the upstream remote, refuses to continue if upstream has commits missing
26
+ locally, bumps the package patch version, commits `chore: release vX.Y.Z`, creates the
27
+ `vX.Y.Z` tag, then pushes the commit and tag.
28
+
17
29
  ## Required dependencies
18
30
 
19
31
  Please note that to start using the package, your project must also have the following installed: `@diplodoc/transform`, `@gravity-ui/uikit`, `react`. Check out the `peerDependencies` section of `package.json` for accurate information.
@@ -67,6 +67,10 @@ unpredictable css rules order in build */
67
67
  padding-top: 160px;
68
68
  padding-bottom: 160px;
69
69
  }
70
+ .pc-header-minify-block_vertical-offset_xxl .pc-header-minify-block__container {
71
+ padding-top: 192px;
72
+ padding-bottom: 192px;
73
+ }
70
74
  .pc-header-minify-block_vertical-offset-top_0 .pc-header-minify-block__container {
71
75
  padding-top: 0;
72
76
  }
@@ -82,6 +86,9 @@ unpredictable css rules order in build */
82
86
  .pc-header-minify-block_vertical-offset-top_xl .pc-header-minify-block__container {
83
87
  padding-top: 160px;
84
88
  }
89
+ .pc-header-minify-block_vertical-offset-top_xxl .pc-header-minify-block__container {
90
+ padding-top: 192px;
91
+ }
85
92
  .pc-header-minify-block_vertical-offset-bottom_0 .pc-header-minify-block__container {
86
93
  padding-bottom: 0;
87
94
  }
@@ -97,15 +104,18 @@ unpredictable css rules order in build */
97
104
  .pc-header-minify-block_vertical-offset-bottom_xl .pc-header-minify-block__container {
98
105
  padding-bottom: 160px;
99
106
  }
107
+ .pc-header-minify-block_vertical-offset-bottom_xxl .pc-header-minify-block__container {
108
+ padding-bottom: 192px;
109
+ }
100
110
  @media (max-width: 769px) {
101
- .pc-header-minify-block_vertical-offset_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_xl .pc-header-minify-block__container {
111
+ .pc-header-minify-block_vertical-offset_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_xl .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_xxl .pc-header-minify-block__container {
102
112
  padding-top: 96px;
103
113
  padding-bottom: 96px;
104
114
  }
105
- .pc-header-minify-block_vertical-offset-top_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_xl .pc-header-minify-block__container {
115
+ .pc-header-minify-block_vertical-offset-top_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_xl .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_xxl .pc-header-minify-block__container {
106
116
  padding-top: 96px;
107
117
  }
108
- .pc-header-minify-block_vertical-offset-bottom_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_xl .pc-header-minify-block__container {
118
+ .pc-header-minify-block_vertical-offset-bottom_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_xl .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_xxl .pc-header-minify-block__container {
109
119
  padding-bottom: 96px;
110
120
  }
111
121
  }
@@ -36,15 +36,15 @@ exports.HeaderMinifyProperties = {
36
36
  },
37
37
  verticalOffset: {
38
38
  type: 'string',
39
- enum: ['0', 's', 'm', 'l', 'xl'],
39
+ enum: ['0', 's', 'm', 'l', 'xl', 'xxl'],
40
40
  },
41
41
  verticalOffsetTop: {
42
42
  type: 'string',
43
- enum: ['0', 's', 'm', 'l', 'xl'],
43
+ enum: ['0', 's', 'm', 'l', 'xl', 'xxl'],
44
44
  },
45
45
  verticalOffsetBottom: {
46
46
  type: 'string',
47
- enum: ['0', 's', 'm', 'l', 'xl'],
47
+ enum: ['0', 's', 'm', 'l', 'xl', 'xxl'],
48
48
  },
49
49
  };
50
50
  exports.HeaderMinifyBlock = {
@@ -65,7 +65,7 @@ export declare const blockMap: {
65
65
  "whats-new-block": import("react").FC<import("./models").WhatsNewBlockProps>;
66
66
  };
67
67
  export declare const subBlockMap: {
68
- divider: ({ size, border }: import("./models").DividerProps) => JSX.Element;
68
+ divider: ({ size, border, visibility }: import("./models").DividerProps) => JSX.Element;
69
69
  "price-detailed": (props: import("./models").PriceDetailedProps) => JSX.Element;
70
70
  "media-card": ({ border, analyticsEvents, label, ...mediaProps }: import("./models").MediaCardProps) => JSX.Element;
71
71
  "banner-card": (props: import("./models").BannerCardProps) => JSX.Element;
@@ -256,9 +256,9 @@ export interface HeaderMinifyBlockProps {
256
256
  image?: string;
257
257
  video?: string;
258
258
  headerSpace?: boolean;
259
- verticalOffset?: '0' | 's' | 'm' | 'l' | 'xl';
260
- verticalOffsetTop?: '0' | 's' | 'm' | 'l' | 'xl';
261
- verticalOffsetBottom?: '0' | 's' | 'm' | 'l' | 'xl';
259
+ verticalOffset?: '0' | 's' | 'm' | 'l' | 'xl' | 'xxl';
260
+ verticalOffsetTop?: '0' | 's' | 'm' | 'l' | 'xl' | 'xxl';
261
+ verticalOffsetBottom?: '0' | 's' | 'm' | 'l' | 'xl' | 'xxl';
262
262
  }
263
263
  export interface ExtendedFeaturesItem extends Omit<ContentBlockProps, 'theme' | 'centered' | 'colSizes' | 'size' | 'title'> {
264
264
  title: Pick<TitleItemProps, 'text' | 'textSize'> | string;
@@ -2,7 +2,7 @@ import { ClassNameProps, QuoteType } from '../../models';
2
2
  import { ThemeSupporting } from '../../utils';
3
3
  import { HubspotEventData, HubspotEventHandlers } from '../../utils/hubspot';
4
4
  import { AnalyticsEventsBase } from '../common';
5
- import { ContentBlockProps } from './blocks';
5
+ import { ContentBlockProps, VisibilityPreset } from './blocks';
6
6
  import { AuthorItem, ButtonProps, CardBaseProps, CardLayoutProps, ContentTheme, DividerSize, ImageCardMargins, ImageObjectProps, ImageProps, LinkProps, MediaProps, MediaView, PriceDetailedProps, ServiceLabelProps, TagProps, TextTheme, Themable, ThemedImage, TitleItemBaseProps, TitleTextSize } from './common';
7
7
  export declare enum SubBlockType {
8
8
  Divider = "divider",
@@ -52,6 +52,7 @@ export declare const SubBlockTypes: SubBlockType[];
52
52
  export interface DividerProps {
53
53
  size?: DividerSize;
54
54
  border?: boolean;
55
+ visibility?: VisibilityPreset;
55
56
  }
56
57
  export interface HubspotFormProps extends HubspotEventHandlers, AnalyticsEventsBase {
57
58
  className?: string;
@@ -1,3 +1,39 @@
1
+ /* use this for style redefinitions to awoid problems with
2
+ unpredictable css rules order in build */
3
+ .pc-divider-block.pc-divider-block_hidden {
4
+ display: none;
5
+ }
6
+ @media (min-width: 577px) and (max-width: 768px) {
7
+ .pc-divider-block.pc-divider-block_visible-sm {
8
+ display: block;
9
+ }
10
+ }
11
+ @media (min-width: 769px) and (max-width: 1080px) {
12
+ .pc-divider-block.pc-divider-block_visible-md {
13
+ display: block;
14
+ }
15
+ }
16
+ @media (min-width: 1081px) and (max-width: 1184px) {
17
+ .pc-divider-block.pc-divider-block_visible-lg {
18
+ display: block;
19
+ }
20
+ }
21
+ @media (min-width: 1185px) and (max-width: 1247px) {
22
+ .pc-divider-block.pc-divider-block_visible-xl {
23
+ display: block;
24
+ }
25
+ }
26
+ @media (min-width: 1248px) {
27
+ .pc-divider-block.pc-divider-block_visible-xxl {
28
+ display: block;
29
+ }
30
+ }
31
+ @media (max-width: 576px) {
32
+ .pc-divider-block.pc-divider-block_visible-xs {
33
+ display: block;
34
+ }
35
+ }
36
+
1
37
  .pc-divider-block_size_xxs {
2
38
  padding-top: 12px;
3
39
  }
@@ -1,3 +1,3 @@
1
1
  import { DividerProps } from '../../models';
2
- declare const Divider: ({ size, border }: DividerProps) => JSX.Element;
2
+ declare const Divider: ({ size, border, visibility }: DividerProps) => JSX.Element;
3
3
  export default Divider;
@@ -4,5 +4,5 @@ const tslib_1 = require("tslib");
4
4
  const react_1 = tslib_1.__importDefault(require("react"));
5
5
  const utils_1 = require("../../utils");
6
6
  const b = (0, utils_1.block)('divider-block');
7
- const Divider = ({ size = 'm', border }) => react_1.default.createElement("div", { className: b({ size, border }) });
7
+ const Divider = ({ size = 'm', border, visibility }) => (react_1.default.createElement("div", { className: b(Object.assign({ size, border }, (0, utils_1.getBlockVisibilityClasses)(visibility))) }));
8
8
  exports.default = Divider;
@@ -5,6 +5,10 @@ export declare const Divider: {
5
5
  border: {
6
6
  type: string;
7
7
  };
8
+ visibility: {
9
+ type: string;
10
+ enum: string[];
11
+ };
8
12
  size: {
9
13
  enum: string[];
10
14
  };
@@ -7,6 +7,9 @@ exports.Divider = {
7
7
  additionalProperties: false,
8
8
  properties: Object.assign(Object.assign({}, common_1.BaseProps), { border: {
9
9
  type: 'boolean',
10
+ }, visibility: {
11
+ type: 'string',
12
+ enum: ['mobile', 'desktop'],
10
13
  }, size: common_1.dividerEnum }),
11
14
  },
12
15
  };
@@ -67,6 +67,10 @@ unpredictable css rules order in build */
67
67
  padding-top: 160px;
68
68
  padding-bottom: 160px;
69
69
  }
70
+ .pc-header-minify-block_vertical-offset_xxl .pc-header-minify-block__container {
71
+ padding-top: 192px;
72
+ padding-bottom: 192px;
73
+ }
70
74
  .pc-header-minify-block_vertical-offset-top_0 .pc-header-minify-block__container {
71
75
  padding-top: 0;
72
76
  }
@@ -82,6 +86,9 @@ unpredictable css rules order in build */
82
86
  .pc-header-minify-block_vertical-offset-top_xl .pc-header-minify-block__container {
83
87
  padding-top: 160px;
84
88
  }
89
+ .pc-header-minify-block_vertical-offset-top_xxl .pc-header-minify-block__container {
90
+ padding-top: 192px;
91
+ }
85
92
  .pc-header-minify-block_vertical-offset-bottom_0 .pc-header-minify-block__container {
86
93
  padding-bottom: 0;
87
94
  }
@@ -97,15 +104,18 @@ unpredictable css rules order in build */
97
104
  .pc-header-minify-block_vertical-offset-bottom_xl .pc-header-minify-block__container {
98
105
  padding-bottom: 160px;
99
106
  }
107
+ .pc-header-minify-block_vertical-offset-bottom_xxl .pc-header-minify-block__container {
108
+ padding-bottom: 192px;
109
+ }
100
110
  @media (max-width: 769px) {
101
- .pc-header-minify-block_vertical-offset_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_xl .pc-header-minify-block__container {
111
+ .pc-header-minify-block_vertical-offset_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_xl .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset_xxl .pc-header-minify-block__container {
102
112
  padding-top: 96px;
103
113
  padding-bottom: 96px;
104
114
  }
105
- .pc-header-minify-block_vertical-offset-top_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_xl .pc-header-minify-block__container {
115
+ .pc-header-minify-block_vertical-offset-top_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_xl .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-top_xxl .pc-header-minify-block__container {
106
116
  padding-top: 96px;
107
117
  }
108
- .pc-header-minify-block_vertical-offset-bottom_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_xl .pc-header-minify-block__container {
118
+ .pc-header-minify-block_vertical-offset-bottom_s .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_m .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_l .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_xl .pc-header-minify-block__container, .pc-header-minify-block_vertical-offset-bottom_xxl .pc-header-minify-block__container {
109
119
  padding-bottom: 96px;
110
120
  }
111
121
  }
@@ -33,15 +33,15 @@ export const HeaderMinifyProperties = {
33
33
  },
34
34
  verticalOffset: {
35
35
  type: 'string',
36
- enum: ['0', 's', 'm', 'l', 'xl'],
36
+ enum: ['0', 's', 'm', 'l', 'xl', 'xxl'],
37
37
  },
38
38
  verticalOffsetTop: {
39
39
  type: 'string',
40
- enum: ['0', 's', 'm', 'l', 'xl'],
40
+ enum: ['0', 's', 'm', 'l', 'xl', 'xxl'],
41
41
  },
42
42
  verticalOffsetBottom: {
43
43
  type: 'string',
44
- enum: ['0', 's', 'm', 'l', 'xl'],
44
+ enum: ['0', 's', 'm', 'l', 'xl', 'xxl'],
45
45
  },
46
46
  };
47
47
  export const HeaderMinifyBlock = {
@@ -65,7 +65,7 @@ export declare const blockMap: {
65
65
  "whats-new-block": import("react").FC<import("./models").WhatsNewBlockProps>;
66
66
  };
67
67
  export declare const subBlockMap: {
68
- divider: ({ size, border }: import("./models").DividerProps) => JSX.Element;
68
+ divider: ({ size, border, visibility }: import("./models").DividerProps) => JSX.Element;
69
69
  "price-detailed": (props: import("./models").PriceDetailedProps) => JSX.Element;
70
70
  "media-card": ({ border, analyticsEvents, label, ...mediaProps }: import("./models").MediaCardProps) => JSX.Element;
71
71
  "banner-card": (props: import("./models").BannerCardProps) => JSX.Element;
@@ -256,9 +256,9 @@ export interface HeaderMinifyBlockProps {
256
256
  image?: string;
257
257
  video?: string;
258
258
  headerSpace?: boolean;
259
- verticalOffset?: '0' | 's' | 'm' | 'l' | 'xl';
260
- verticalOffsetTop?: '0' | 's' | 'm' | 'l' | 'xl';
261
- verticalOffsetBottom?: '0' | 's' | 'm' | 'l' | 'xl';
259
+ verticalOffset?: '0' | 's' | 'm' | 'l' | 'xl' | 'xxl';
260
+ verticalOffsetTop?: '0' | 's' | 'm' | 'l' | 'xl' | 'xxl';
261
+ verticalOffsetBottom?: '0' | 's' | 'm' | 'l' | 'xl' | 'xxl';
262
262
  }
263
263
  export interface ExtendedFeaturesItem extends Omit<ContentBlockProps, 'theme' | 'centered' | 'colSizes' | 'size' | 'title'> {
264
264
  title: Pick<TitleItemProps, 'text' | 'textSize'> | string;
@@ -2,7 +2,7 @@ import { ClassNameProps, QuoteType } from '../../models';
2
2
  import { ThemeSupporting } from '../../utils';
3
3
  import { HubspotEventData, HubspotEventHandlers } from '../../utils/hubspot';
4
4
  import { AnalyticsEventsBase } from '../common';
5
- import { ContentBlockProps } from './blocks';
5
+ import { ContentBlockProps, VisibilityPreset } from './blocks';
6
6
  import { AuthorItem, ButtonProps, CardBaseProps, CardLayoutProps, ContentTheme, DividerSize, ImageCardMargins, ImageObjectProps, ImageProps, LinkProps, MediaProps, MediaView, PriceDetailedProps, ServiceLabelProps, TagProps, TextTheme, Themable, ThemedImage, TitleItemBaseProps, TitleTextSize } from './common';
7
7
  export declare enum SubBlockType {
8
8
  Divider = "divider",
@@ -52,6 +52,7 @@ export declare const SubBlockTypes: SubBlockType[];
52
52
  export interface DividerProps {
53
53
  size?: DividerSize;
54
54
  border?: boolean;
55
+ visibility?: VisibilityPreset;
55
56
  }
56
57
  export interface HubspotFormProps extends HubspotEventHandlers, AnalyticsEventsBase {
57
58
  className?: string;
@@ -1,3 +1,39 @@
1
+ /* use this for style redefinitions to awoid problems with
2
+ unpredictable css rules order in build */
3
+ .pc-divider-block.pc-divider-block_hidden {
4
+ display: none;
5
+ }
6
+ @media (min-width: 577px) and (max-width: 768px) {
7
+ .pc-divider-block.pc-divider-block_visible-sm {
8
+ display: block;
9
+ }
10
+ }
11
+ @media (min-width: 769px) and (max-width: 1080px) {
12
+ .pc-divider-block.pc-divider-block_visible-md {
13
+ display: block;
14
+ }
15
+ }
16
+ @media (min-width: 1081px) and (max-width: 1184px) {
17
+ .pc-divider-block.pc-divider-block_visible-lg {
18
+ display: block;
19
+ }
20
+ }
21
+ @media (min-width: 1185px) and (max-width: 1247px) {
22
+ .pc-divider-block.pc-divider-block_visible-xl {
23
+ display: block;
24
+ }
25
+ }
26
+ @media (min-width: 1248px) {
27
+ .pc-divider-block.pc-divider-block_visible-xxl {
28
+ display: block;
29
+ }
30
+ }
31
+ @media (max-width: 576px) {
32
+ .pc-divider-block.pc-divider-block_visible-xs {
33
+ display: block;
34
+ }
35
+ }
36
+
1
37
  .pc-divider-block_size_xxs {
2
38
  padding-top: 12px;
3
39
  }
@@ -1,4 +1,4 @@
1
1
  import { DividerProps } from '../../models';
2
2
  import './Divider.css';
3
- declare const Divider: ({ size, border }: DividerProps) => JSX.Element;
3
+ declare const Divider: ({ size, border, visibility }: DividerProps) => JSX.Element;
4
4
  export default Divider;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { block } from '../../utils';
2
+ import { block, getBlockVisibilityClasses } from '../../utils';
3
3
  import './Divider.css';
4
4
  const b = block('divider-block');
5
- const Divider = ({ size = 'm', border }) => React.createElement("div", { className: b({ size, border }) });
5
+ const Divider = ({ size = 'm', border, visibility }) => (React.createElement("div", { className: b(Object.assign({ size, border }, getBlockVisibilityClasses(visibility))) }));
6
6
  export default Divider;
@@ -5,6 +5,10 @@ export declare const Divider: {
5
5
  border: {
6
6
  type: string;
7
7
  };
8
+ visibility: {
9
+ type: string;
10
+ enum: string[];
11
+ };
8
12
  size: {
9
13
  enum: string[];
10
14
  };
@@ -4,6 +4,9 @@ export const Divider = {
4
4
  additionalProperties: false,
5
5
  properties: Object.assign(Object.assign({}, BaseProps), { border: {
6
6
  type: 'boolean',
7
+ }, visibility: {
8
+ type: 'string',
9
+ enum: ['mobile', 'desktop'],
7
10
  }, size: dividerEnum }),
8
11
  },
9
12
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@doyourjob/gravity-ui-page-constructor",
3
- "version": "5.31.273",
3
+ "version": "5.31.276",
4
4
  "description": "Gravity UI Page Constructor",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -55,6 +55,7 @@
55
55
  "*.scss"
56
56
  ],
57
57
  "scripts": {
58
+ "bump-patch-release": "node ./scripts/bump-patch.mjs",
58
59
  "deps:install": "npm ci",
59
60
  "deps:truncate": "npm prune --production",
60
61
  "lint:fix": "run-s lint:js:fix lint:styles:fix lint:prettier:fix typecheck",