@megafon/ui-shared 5.4.1 → 5.5.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 (40) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/es/components/Card/Card.css +39 -8
  3. package/dist/es/components/Card/Card.js +8 -6
  4. package/dist/es/components/StoreBanner/StoreBanner.d.ts +6 -0
  5. package/dist/es/components/StoreBanner/StoreBanner.js +20 -2
  6. package/dist/es/components/StoreButton/StoreButton.css +248 -6
  7. package/dist/es/components/StoreButton/StoreButton.d.ts +17 -1
  8. package/dist/es/components/StoreButton/StoreButton.js +27 -2
  9. package/dist/es/components/StoreButton/img/app-store-large.png +0 -0
  10. package/dist/es/components/StoreButton/img/galaxy-store-large.png +0 -0
  11. package/dist/es/components/StoreButton/img/google-play-large.png +0 -0
  12. package/dist/es/components/StoreButton/img/huawei-store-large.png +0 -0
  13. package/dist/es/components/StoreButton/img/mi-store-large.png +0 -0
  14. package/dist/es/components/StoreButton/img/ru-store-large.png +0 -0
  15. package/dist/es/components/StoreButton/img/v-appstore-large.png +0 -0
  16. package/dist/es/components/StoreButton/img/v-appstore.png +0 -0
  17. package/dist/es/components/VideoBanner/VideoBanner.d.ts +3 -2
  18. package/dist/es/components/VideoBanner/VideoBanner.js +10 -4
  19. package/dist/es/components/VideoBlock/VideoBlock.d.ts +1 -0
  20. package/dist/es/components/VideoBlock/VideoBlock.js +7 -3
  21. package/dist/lib/components/Card/Card.css +39 -8
  22. package/dist/lib/components/Card/Card.js +8 -6
  23. package/dist/lib/components/StoreBanner/StoreBanner.d.ts +6 -0
  24. package/dist/lib/components/StoreBanner/StoreBanner.js +20 -2
  25. package/dist/lib/components/StoreButton/StoreButton.css +248 -6
  26. package/dist/lib/components/StoreButton/StoreButton.d.ts +17 -1
  27. package/dist/lib/components/StoreButton/StoreButton.js +29 -3
  28. package/dist/lib/components/StoreButton/img/app-store-large.png +0 -0
  29. package/dist/lib/components/StoreButton/img/galaxy-store-large.png +0 -0
  30. package/dist/lib/components/StoreButton/img/google-play-large.png +0 -0
  31. package/dist/lib/components/StoreButton/img/huawei-store-large.png +0 -0
  32. package/dist/lib/components/StoreButton/img/mi-store-large.png +0 -0
  33. package/dist/lib/components/StoreButton/img/ru-store-large.png +0 -0
  34. package/dist/lib/components/StoreButton/img/v-appstore-large.png +0 -0
  35. package/dist/lib/components/StoreButton/img/v-appstore.png +0 -0
  36. package/dist/lib/components/VideoBanner/VideoBanner.d.ts +3 -2
  37. package/dist/lib/components/VideoBanner/VideoBanner.js +12 -5
  38. package/dist/lib/components/VideoBlock/VideoBlock.d.ts +1 -0
  39. package/dist/lib/components/VideoBlock/VideoBlock.js +9 -4
  40. package/package.json +4 -4
package/CHANGELOG.md CHANGED
@@ -3,6 +3,29 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [5.5.0](https://hq-gitlab.megafon.ru/site-portal/services/megafon-ui/compare/@megafon/ui-shared@5.4.2...@megafon/ui-shared@5.5.0) (2024-01-30)
7
+
8
+
9
+ ### Features
10
+
11
+ * **storebanner:** add v-appstore button to banner ([b11115e](https://hq-gitlab.megafon.ru/site-portal/services/megafon-ui/commit/b11115e6436c2f6d8486aea78dd356e4447abefb))
12
+ * **storebutton:** add v-appstore button, add size props ([5096d03](https://hq-gitlab.megafon.ru/site-portal/services/megafon-ui/commit/5096d039e91623807caf07b9f2d1347b24529bca))
13
+
14
+
15
+
16
+
17
+
18
+ ## [5.4.2](https://hq-gitlab.megafon.ru/site-portal/services/megafon-ui/compare/@megafon/ui-shared@5.4.1...@megafon/ui-shared@5.4.2) (2024-01-22)
19
+
20
+
21
+ ### Bug Fixes
22
+
23
+ * **card:** fix features list ([0fef3cb](https://hq-gitlab.megafon.ru/site-portal/services/megafon-ui/commit/0fef3cb3609c50e97edba24074562a13f72ffa55))
24
+
25
+
26
+
27
+
28
+
6
29
  ## [5.4.1](https://hq-gitlab.megafon.ru/site-portal/services/megafon-ui/compare/@megafon/ui-shared@5.4.0...@megafon/ui-shared@5.4.1) (2024-01-15)
7
30
 
8
31
  **Note:** Version bump only for package @megafon/ui-shared
@@ -130,27 +130,58 @@ h5 {
130
130
  flex-direction: column;
131
131
  gap: 12px;
132
132
  margin-top: 16px;
133
+ overflow: hidden;
134
+ }
135
+ .mfui-card__features-list {
136
+ margin: 0;
137
+ padding: 0;
138
+ list-style: none;
133
139
  }
134
140
  .mfui-card__features-item {
141
+ position: relative;
135
142
  display: -webkit-box;
136
143
  display: -ms-flexbox;
137
144
  display: flex;
138
- gap: 4px;
139
- -webkit-box-align: baseline;
140
- -ms-flex-align: baseline;
141
- align-items: baseline;
145
+ -webkit-box-align: end;
146
+ -ms-flex-align: end;
147
+ align-items: flex-end;
142
148
  -webkit-box-pack: justify;
143
149
  -ms-flex-pack: justify;
144
150
  justify-content: space-between;
145
151
  }
146
- .mfui-card__features-item-separator {
147
- -webkit-box-flex: 1;
148
- -ms-flex-positive: 1;
149
- flex-grow: 1;
152
+ .mfui-card__features-item:before {
153
+ content: '';
154
+ position: absolute;
155
+ bottom: 0.4em;
156
+ width: 100%;
150
157
  height: 2px;
151
158
  background-image: radial-gradient(circle, var(--spbSky3) 1px, transparent 1px);
152
159
  background-size: 6px 2px;
153
160
  }
161
+ .mfui-card__features-item-value {
162
+ -ms-flex-negative: 0;
163
+ flex-shrink: 0;
164
+ text-align: end;
165
+ }
166
+ .mfui-card__features-item-text {
167
+ position: relative;
168
+ z-index: 1;
169
+ background-color: var(--base);
170
+ -webkit-transition: background-color 0.3s;
171
+ transition: background-color 0.3s;
172
+ }
173
+ .mfui-card_view_background .mfui-card__features-item-text {
174
+ background-color: var(--spbSky0);
175
+ }
176
+ .mfui-card_link.mfui-card_view_background:hover .mfui-card__features-item-text {
177
+ background-color: var(--spbSky1);
178
+ }
179
+ .mfui-card__features-item-title .mfui-card__features-item-text {
180
+ padding-right: 4px;
181
+ }
182
+ .mfui-card__features-item-value .mfui-card__features-item-text {
183
+ padding-left: 4px;
184
+ }
154
185
  .mfui-card__icons {
155
186
  margin-top: 16px;
156
187
  }
@@ -104,19 +104,21 @@ var Card = function Card(_ref5) {
104
104
  if (featuresList) {
105
105
  return /*#__PURE__*/React.createElement("div", {
106
106
  className: cn('features')
107
- }, /*#__PURE__*/React.createElement("div", {
107
+ }, /*#__PURE__*/React.createElement("ul", {
108
108
  className: cn('features-list')
109
109
  }, featuresList.items.map(function (item, i) {
110
- return /*#__PURE__*/React.createElement("div", {
110
+ return /*#__PURE__*/React.createElement("li", {
111
111
  className: cn('features-item'),
112
112
  key: i
113
113
  }, /*#__PURE__*/React.createElement("div", {
114
114
  className: cn('features-item-title')
115
- }, item.title), /*#__PURE__*/React.createElement("div", {
116
- className: cn('features-item-separator')
117
- }), /*#__PURE__*/React.createElement("div", {
115
+ }, /*#__PURE__*/React.createElement("span", {
116
+ className: cn('features-item-text')
117
+ }, item.title)), /*#__PURE__*/React.createElement("div", {
118
118
  className: cn('features-item-value')
119
- }, item.value));
119
+ }, /*#__PURE__*/React.createElement("span", {
120
+ className: cn('features-item-text')
121
+ }, item.value)));
120
122
  })), featuresList.desc);
121
123
  }
122
124
 
@@ -47,6 +47,10 @@ export interface IStoreBannerProps {
47
47
  linkMiStore?: LinkHrefType;
48
48
  /** Обработчик клика по ссылке в Mi App Store */
49
49
  onClickMiStore?: LinkOnClickType;
50
+ /** Ссылка на скачивание приложения в V-Appstore */
51
+ linkVAppstore?: LinkHrefType;
52
+ /** Обработчик клика по ссылке в V-Appstore */
53
+ onClickVAppstore?: LinkOnClickType;
50
54
  /** Текст кнопки */
51
55
  textButton?: string;
52
56
  /** Ссылка для кнопки */
@@ -74,6 +78,7 @@ export interface IStoreBannerProps {
74
78
  huaweiLink?: string;
75
79
  miStoreLink?: string;
76
80
  ruStoreLink?: string;
81
+ vAppstoreLink?: string;
77
82
  button?: string;
78
83
  };
79
84
  /** Ссылка на корневой элемент */
@@ -88,6 +93,7 @@ export interface IStoreBannerProps {
88
93
  linkHuawei?: Record<string, string>;
89
94
  linkMiStore?: Record<string, string>;
90
95
  linkRuStore?: Record<string, string>;
96
+ linkVAppstore?: Record<string, string>;
91
97
  };
92
98
  }
93
99
  declare const StoreBanner: React.FC<IStoreBannerProps>;
@@ -33,6 +33,7 @@ var StoreBanner = function StoreBanner(_ref) {
33
33
  huaweiLinkClassName = _ref$classes.huaweiLink,
34
34
  miStoreLinkClassName = _ref$classes.miStoreLink,
35
35
  ruStoreLinkClassName = _ref$classes.ruStoreLink,
36
+ vAppstoreLinkClassName = _ref$classes.vAppstoreLink,
36
37
  buttonClassName = _ref$classes.button,
37
38
  title = _ref.title,
38
39
  text = _ref.text,
@@ -42,6 +43,7 @@ var StoreBanner = function StoreBanner(_ref) {
42
43
  linkHuawei = _ref.linkHuawei,
43
44
  linkMiStore = _ref.linkMiStore,
44
45
  linkRuStore = _ref.linkRuStore,
46
+ linkVAppstore = _ref.linkVAppstore,
45
47
  linkButton = _ref.linkButton,
46
48
  _ref$textButton = _ref.textButton,
47
49
  textButton = _ref$textButton === void 0 ? 'Установите приложение' : _ref$textButton,
@@ -59,7 +61,8 @@ var StoreBanner = function StoreBanner(_ref) {
59
61
  onClickGoogle = _ref.onClickGoogle,
60
62
  onClickHuawei = _ref.onClickHuawei,
61
63
  onClickMiStore = _ref.onClickMiStore,
62
- onClickRuStore = _ref.onClickRuStore;
64
+ onClickRuStore = _ref.onClickRuStore,
65
+ onClickVAppstore = _ref.onClickVAppstore;
63
66
  return /*#__PURE__*/React.createElement("div", _extends({
64
67
  className: cn({
65
68
  theme: theme,
@@ -163,6 +166,17 @@ var StoreBanner = function StoreBanner(_ref) {
163
166
  'mi-store': true
164
167
  }, miStoreLinkClassName),
165
168
  onClick: onClickMiStore
169
+ }), linkVAppstore && /*#__PURE__*/React.createElement(StoreButton, {
170
+ dataAttrs: {
171
+ root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.linkVAppstore
172
+ },
173
+ theme: StoreButtonTheme.V_APPSTORE,
174
+ href: linkVAppstore,
175
+ rel: rel,
176
+ className: cn('store-link', {
177
+ 'v-appstore': true
178
+ }, vAppstoreLinkClassName),
179
+ onClick: onClickVAppstore
166
180
  })), linkButton && /*#__PURE__*/React.createElement(Button, {
167
181
  dataAttrs: {
168
182
  root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button
@@ -202,6 +216,8 @@ StoreBanner.propTypes = {
202
216
  onClickMiStore: PropTypes.func,
203
217
  linkRuStore: PropTypes.string,
204
218
  onClickRuStore: PropTypes.func,
219
+ linkVAppstore: PropTypes.string,
220
+ onClickVAppstore: PropTypes.func,
205
221
  textButton: PropTypes.string,
206
222
  linkButton: PropTypes.string,
207
223
  rel: PropTypes.string,
@@ -216,6 +232,7 @@ StoreBanner.propTypes = {
216
232
  huaweiLink: PropTypes.string,
217
233
  miStoreLink: PropTypes.string,
218
234
  ruStoreLink: PropTypes.string,
235
+ vAppstoreLink: PropTypes.string,
219
236
  button: PropTypes.string
220
237
  }),
221
238
  rootRef: PropTypes.oneOfType([PropTypes.func, PropTypes.oneOfType([PropTypes.shape({
@@ -230,7 +247,8 @@ StoreBanner.propTypes = {
230
247
  linkGoogle: PropTypes.objectOf(PropTypes.string.isRequired),
231
248
  linkHuawei: PropTypes.objectOf(PropTypes.string.isRequired),
232
249
  linkMiStore: PropTypes.objectOf(PropTypes.string.isRequired),
233
- linkRuStore: PropTypes.objectOf(PropTypes.string.isRequired)
250
+ linkRuStore: PropTypes.objectOf(PropTypes.string.isRequired),
251
+ linkVAppstore: PropTypes.objectOf(PropTypes.string.isRequired)
234
252
  })
235
253
  };
236
254
  export default StoreBanner;
@@ -1,24 +1,266 @@
1
+ h1,
2
+ h2,
3
+ h3,
4
+ h4,
5
+ h5 {
6
+ margin: 0;
7
+ }
1
8
  .mfui-store-button {
2
9
  border-radius: 8px;
3
10
  background-repeat: no-repeat;
4
11
  background-position: center;
5
12
  background-size: cover;
6
13
  }
7
- .mfui-store-button_theme_app-store {
14
+ .mfui-store-button_size-all_small.mfui-store-button_theme_app-store,
15
+ .mfui-store-button_size-all_medium.mfui-store-button_theme_app-store {
8
16
  background-image: url('./img/app-store.png');
9
17
  }
10
- .mfui-store-button_theme_galaxy-store {
18
+ .mfui-store-button_size-all_small.mfui-store-button_theme_galaxy-store,
19
+ .mfui-store-button_size-all_medium.mfui-store-button_theme_galaxy-store {
11
20
  background-image: url('./img/galaxy-store.png');
12
21
  }
13
- .mfui-store-button_theme_google-play {
22
+ .mfui-store-button_size-all_small.mfui-store-button_theme_google-play,
23
+ .mfui-store-button_size-all_medium.mfui-store-button_theme_google-play {
14
24
  background-image: url('./img/google-play.png');
15
25
  }
16
- .mfui-store-button_theme_huawei-store {
26
+ .mfui-store-button_size-all_small.mfui-store-button_theme_huawei-store,
27
+ .mfui-store-button_size-all_medium.mfui-store-button_theme_huawei-store {
17
28
  background-image: url('./img/huawei-store.png');
18
29
  }
19
- .mfui-store-button_theme_mi-store {
30
+ .mfui-store-button_size-all_small.mfui-store-button_theme_mi-store,
31
+ .mfui-store-button_size-all_medium.mfui-store-button_theme_mi-store {
20
32
  background-image: url('./img/mi-store.png');
21
33
  }
22
- .mfui-store-button_theme_ru-store {
34
+ .mfui-store-button_size-all_small.mfui-store-button_theme_ru-store,
35
+ .mfui-store-button_size-all_medium.mfui-store-button_theme_ru-store {
23
36
  background-image: url('./img/ru-store.png');
24
37
  }
38
+ .mfui-store-button_size-all_small.mfui-store-button_theme_v-appstore,
39
+ .mfui-store-button_size-all_medium.mfui-store-button_theme_v-appstore {
40
+ background-image: url('./img/v-appstore.png');
41
+ }
42
+ .mfui-store-button_size-all_large.mfui-store-button_theme_app-store {
43
+ background-image: url('./img/app-store-large.png');
44
+ }
45
+ .mfui-store-button_size-all_large.mfui-store-button_theme_galaxy-store {
46
+ background-image: url('./img/galaxy-store-large.png');
47
+ }
48
+ .mfui-store-button_size-all_large.mfui-store-button_theme_google-play {
49
+ background-image: url('./img/google-play-large.png');
50
+ }
51
+ .mfui-store-button_size-all_large.mfui-store-button_theme_huawei-store {
52
+ background-image: url('./img/huawei-store-large.png');
53
+ }
54
+ .mfui-store-button_size-all_large.mfui-store-button_theme_mi-store {
55
+ background-image: url('./img/mi-store-large.png');
56
+ }
57
+ .mfui-store-button_size-all_large.mfui-store-button_theme_ru-store {
58
+ background-image: url('./img/ru-store-large.png');
59
+ }
60
+ .mfui-store-button_size-all_large.mfui-store-button_theme_v-appstore {
61
+ background-image: url('./img/v-appstore-large.png');
62
+ }
63
+ @media screen and (min-width: 1024px) {
64
+ .mfui-store-button_size-desktop_small.mfui-store-button_theme_app-store,
65
+ .mfui-store-button_size-desktop_medium.mfui-store-button_theme_app-store {
66
+ background-image: url('./img/app-store.png');
67
+ }
68
+ .mfui-store-button_size-desktop_small.mfui-store-button_theme_galaxy-store,
69
+ .mfui-store-button_size-desktop_medium.mfui-store-button_theme_galaxy-store {
70
+ background-image: url('./img/galaxy-store.png');
71
+ }
72
+ .mfui-store-button_size-desktop_small.mfui-store-button_theme_google-play,
73
+ .mfui-store-button_size-desktop_medium.mfui-store-button_theme_google-play {
74
+ background-image: url('./img/google-play.png');
75
+ }
76
+ .mfui-store-button_size-desktop_small.mfui-store-button_theme_huawei-store,
77
+ .mfui-store-button_size-desktop_medium.mfui-store-button_theme_huawei-store {
78
+ background-image: url('./img/huawei-store.png');
79
+ }
80
+ .mfui-store-button_size-desktop_small.mfui-store-button_theme_mi-store,
81
+ .mfui-store-button_size-desktop_medium.mfui-store-button_theme_mi-store {
82
+ background-image: url('./img/mi-store.png');
83
+ }
84
+ .mfui-store-button_size-desktop_small.mfui-store-button_theme_ru-store,
85
+ .mfui-store-button_size-desktop_medium.mfui-store-button_theme_ru-store {
86
+ background-image: url('./img/ru-store.png');
87
+ }
88
+ .mfui-store-button_size-desktop_small.mfui-store-button_theme_v-appstore,
89
+ .mfui-store-button_size-desktop_medium.mfui-store-button_theme_v-appstore {
90
+ background-image: url('./img/v-appstore.png');
91
+ }
92
+ .mfui-store-button_size-desktop_large.mfui-store-button_theme_app-store {
93
+ background-image: url('./img/app-store-large.png');
94
+ }
95
+ .mfui-store-button_size-desktop_large.mfui-store-button_theme_galaxy-store {
96
+ background-image: url('./img/galaxy-store-large.png');
97
+ }
98
+ .mfui-store-button_size-desktop_large.mfui-store-button_theme_google-play {
99
+ background-image: url('./img/google-play-large.png');
100
+ }
101
+ .mfui-store-button_size-desktop_large.mfui-store-button_theme_huawei-store {
102
+ background-image: url('./img/huawei-store-large.png');
103
+ }
104
+ .mfui-store-button_size-desktop_large.mfui-store-button_theme_mi-store {
105
+ background-image: url('./img/mi-store-large.png');
106
+ }
107
+ .mfui-store-button_size-desktop_large.mfui-store-button_theme_ru-store {
108
+ background-image: url('./img/ru-store-large.png');
109
+ }
110
+ .mfui-store-button_size-desktop_large.mfui-store-button_theme_v-appstore {
111
+ background-image: url('./img/v-appstore-large.png');
112
+ }
113
+ }
114
+ @media screen and (min-width: 1280px) {
115
+ .mfui-store-button_size-wide_small.mfui-store-button_theme_app-store,
116
+ .mfui-store-button_size-wide_medium.mfui-store-button_theme_app-store {
117
+ background-image: url('./img/app-store.png');
118
+ }
119
+ .mfui-store-button_size-wide_small.mfui-store-button_theme_galaxy-store,
120
+ .mfui-store-button_size-wide_medium.mfui-store-button_theme_galaxy-store {
121
+ background-image: url('./img/galaxy-store.png');
122
+ }
123
+ .mfui-store-button_size-wide_small.mfui-store-button_theme_google-play,
124
+ .mfui-store-button_size-wide_medium.mfui-store-button_theme_google-play {
125
+ background-image: url('./img/google-play.png');
126
+ }
127
+ .mfui-store-button_size-wide_small.mfui-store-button_theme_huawei-store,
128
+ .mfui-store-button_size-wide_medium.mfui-store-button_theme_huawei-store {
129
+ background-image: url('./img/huawei-store.png');
130
+ }
131
+ .mfui-store-button_size-wide_small.mfui-store-button_theme_mi-store,
132
+ .mfui-store-button_size-wide_medium.mfui-store-button_theme_mi-store {
133
+ background-image: url('./img/mi-store.png');
134
+ }
135
+ .mfui-store-button_size-wide_small.mfui-store-button_theme_ru-store,
136
+ .mfui-store-button_size-wide_medium.mfui-store-button_theme_ru-store {
137
+ background-image: url('./img/ru-store.png');
138
+ }
139
+ .mfui-store-button_size-wide_small.mfui-store-button_theme_v-appstore,
140
+ .mfui-store-button_size-wide_medium.mfui-store-button_theme_v-appstore {
141
+ background-image: url('./img/v-appstore.png');
142
+ }
143
+ .mfui-store-button_size-wide_large.mfui-store-button_theme_app-store {
144
+ background-image: url('./img/app-store-large.png');
145
+ }
146
+ .mfui-store-button_size-wide_large.mfui-store-button_theme_galaxy-store {
147
+ background-image: url('./img/galaxy-store-large.png');
148
+ }
149
+ .mfui-store-button_size-wide_large.mfui-store-button_theme_google-play {
150
+ background-image: url('./img/google-play-large.png');
151
+ }
152
+ .mfui-store-button_size-wide_large.mfui-store-button_theme_huawei-store {
153
+ background-image: url('./img/huawei-store-large.png');
154
+ }
155
+ .mfui-store-button_size-wide_large.mfui-store-button_theme_mi-store {
156
+ background-image: url('./img/mi-store-large.png');
157
+ }
158
+ .mfui-store-button_size-wide_large.mfui-store-button_theme_ru-store {
159
+ background-image: url('./img/ru-store-large.png');
160
+ }
161
+ .mfui-store-button_size-wide_large.mfui-store-button_theme_v-appstore {
162
+ background-image: url('./img/v-appstore-large.png');
163
+ }
164
+ }
165
+ @media screen and (min-width: 768px) and (max-width: 1023px) {
166
+ .mfui-store-button_size-tablet_small.mfui-store-button_theme_app-store,
167
+ .mfui-store-button_size-tablet_medium.mfui-store-button_theme_app-store {
168
+ background-image: url('./img/app-store.png');
169
+ }
170
+ .mfui-store-button_size-tablet_small.mfui-store-button_theme_galaxy-store,
171
+ .mfui-store-button_size-tablet_medium.mfui-store-button_theme_galaxy-store {
172
+ background-image: url('./img/galaxy-store.png');
173
+ }
174
+ .mfui-store-button_size-tablet_small.mfui-store-button_theme_google-play,
175
+ .mfui-store-button_size-tablet_medium.mfui-store-button_theme_google-play {
176
+ background-image: url('./img/google-play.png');
177
+ }
178
+ .mfui-store-button_size-tablet_small.mfui-store-button_theme_huawei-store,
179
+ .mfui-store-button_size-tablet_medium.mfui-store-button_theme_huawei-store {
180
+ background-image: url('./img/huawei-store.png');
181
+ }
182
+ .mfui-store-button_size-tablet_small.mfui-store-button_theme_mi-store,
183
+ .mfui-store-button_size-tablet_medium.mfui-store-button_theme_mi-store {
184
+ background-image: url('./img/mi-store.png');
185
+ }
186
+ .mfui-store-button_size-tablet_small.mfui-store-button_theme_ru-store,
187
+ .mfui-store-button_size-tablet_medium.mfui-store-button_theme_ru-store {
188
+ background-image: url('./img/ru-store.png');
189
+ }
190
+ .mfui-store-button_size-tablet_small.mfui-store-button_theme_v-appstore,
191
+ .mfui-store-button_size-tablet_medium.mfui-store-button_theme_v-appstore {
192
+ background-image: url('./img/v-appstore.png');
193
+ }
194
+ .mfui-store-button_size-tablet_large.mfui-store-button_theme_app-store {
195
+ background-image: url('./img/app-store-large.png');
196
+ }
197
+ .mfui-store-button_size-tablet_large.mfui-store-button_theme_galaxy-store {
198
+ background-image: url('./img/galaxy-store-large.png');
199
+ }
200
+ .mfui-store-button_size-tablet_large.mfui-store-button_theme_google-play {
201
+ background-image: url('./img/google-play-large.png');
202
+ }
203
+ .mfui-store-button_size-tablet_large.mfui-store-button_theme_huawei-store {
204
+ background-image: url('./img/huawei-store-large.png');
205
+ }
206
+ .mfui-store-button_size-tablet_large.mfui-store-button_theme_mi-store {
207
+ background-image: url('./img/mi-store-large.png');
208
+ }
209
+ .mfui-store-button_size-tablet_large.mfui-store-button_theme_ru-store {
210
+ background-image: url('./img/ru-store-large.png');
211
+ }
212
+ .mfui-store-button_size-tablet_large.mfui-store-button_theme_v-appstore {
213
+ background-image: url('./img/v-appstore-large.png');
214
+ }
215
+ }
216
+ @media screen and (max-width: 767px) {
217
+ .mfui-store-button_size-mobile_small.mfui-store-button_theme_app-store,
218
+ .mfui-store-button_size-mobile_medium.mfui-store-button_theme_app-store {
219
+ background-image: url('./img/app-store.png');
220
+ }
221
+ .mfui-store-button_size-mobile_small.mfui-store-button_theme_galaxy-store,
222
+ .mfui-store-button_size-mobile_medium.mfui-store-button_theme_galaxy-store {
223
+ background-image: url('./img/galaxy-store.png');
224
+ }
225
+ .mfui-store-button_size-mobile_small.mfui-store-button_theme_google-play,
226
+ .mfui-store-button_size-mobile_medium.mfui-store-button_theme_google-play {
227
+ background-image: url('./img/google-play.png');
228
+ }
229
+ .mfui-store-button_size-mobile_small.mfui-store-button_theme_huawei-store,
230
+ .mfui-store-button_size-mobile_medium.mfui-store-button_theme_huawei-store {
231
+ background-image: url('./img/huawei-store.png');
232
+ }
233
+ .mfui-store-button_size-mobile_small.mfui-store-button_theme_mi-store,
234
+ .mfui-store-button_size-mobile_medium.mfui-store-button_theme_mi-store {
235
+ background-image: url('./img/mi-store.png');
236
+ }
237
+ .mfui-store-button_size-mobile_small.mfui-store-button_theme_ru-store,
238
+ .mfui-store-button_size-mobile_medium.mfui-store-button_theme_ru-store {
239
+ background-image: url('./img/ru-store.png');
240
+ }
241
+ .mfui-store-button_size-mobile_small.mfui-store-button_theme_v-appstore,
242
+ .mfui-store-button_size-mobile_medium.mfui-store-button_theme_v-appstore {
243
+ background-image: url('./img/v-appstore.png');
244
+ }
245
+ .mfui-store-button_size-mobile_large.mfui-store-button_theme_app-store {
246
+ background-image: url('./img/app-store-large.png');
247
+ }
248
+ .mfui-store-button_size-mobile_large.mfui-store-button_theme_galaxy-store {
249
+ background-image: url('./img/galaxy-store-large.png');
250
+ }
251
+ .mfui-store-button_size-mobile_large.mfui-store-button_theme_google-play {
252
+ background-image: url('./img/google-play-large.png');
253
+ }
254
+ .mfui-store-button_size-mobile_large.mfui-store-button_theme_huawei-store {
255
+ background-image: url('./img/huawei-store-large.png');
256
+ }
257
+ .mfui-store-button_size-mobile_large.mfui-store-button_theme_mi-store {
258
+ background-image: url('./img/mi-store-large.png');
259
+ }
260
+ .mfui-store-button_size-mobile_large.mfui-store-button_theme_ru-store {
261
+ background-image: url('./img/ru-store-large.png');
262
+ }
263
+ .mfui-store-button_size-mobile_large.mfui-store-button_theme_v-appstore {
264
+ background-image: url('./img/v-appstore-large.png');
265
+ }
266
+ }
@@ -1,13 +1,19 @@
1
1
  import * as React from 'react';
2
2
  import { Link } from '@megafon/ui-core';
3
3
  import './StoreButton.less';
4
+ export declare enum ButtonSizes {
5
+ SMALL = "small",
6
+ MEDIUM = "medium",
7
+ LARGE = "large"
8
+ }
4
9
  export declare enum Theme {
5
10
  APP_STORE = "app-store",
6
11
  GALAXY_STORE = "galaxy-store",
7
12
  GOOGLE_PLAY = "google-play",
8
13
  HUAWEI_STORE = "huawei-store",
9
14
  MI_STORE = "mi-store",
10
- RU_STORE = "ru-store"
15
+ RU_STORE = "ru-store",
16
+ V_APPSTORE = "v-appstore"
11
17
  }
12
18
  declare type LinkPropTypes = React.ComponentProps<typeof Link>;
13
19
  export declare type Props = Required<Pick<LinkPropTypes, 'href'>> & Pick<LinkPropTypes, 'target' | 'rel' | 'onClick' | 'dataAttrs'> & {
@@ -15,6 +21,16 @@ export declare type Props = Required<Pick<LinkPropTypes, 'href'>> & Pick<LinkPro
15
21
  theme: Theme;
16
22
  /** Дополнительный класс */
17
23
  className?: string;
24
+ /** Размер на всех разрешениях экрана */
25
+ sizeAll?: ButtonSizes;
26
+ /** Размер на разрешении экрана 1280+ */
27
+ sizeWide?: ButtonSizes;
28
+ /** Размер на разрешении экрана 1024+ */
29
+ sizeDesktop?: ButtonSizes;
30
+ /** Размер на разрешении экрана 768-1023 */
31
+ sizeTablet?: ButtonSizes;
32
+ /** Размер на разрешении экрана 0-767 */
33
+ sizeMobile?: ButtonSizes;
18
34
  };
19
35
  declare const StoreButton: React.FC<Props>;
20
36
  export default StoreButton;
@@ -21,6 +21,14 @@ import { Link } from '@megafon/ui-core';
21
21
  import { cnCreate } from '@megafon/ui-helpers';
22
22
  import PropTypes from 'prop-types';
23
23
  import "./StoreButton.css";
24
+ export var ButtonSizes;
25
+
26
+ (function (ButtonSizes) {
27
+ ButtonSizes["SMALL"] = "small";
28
+ ButtonSizes["MEDIUM"] = "medium";
29
+ ButtonSizes["LARGE"] = "large";
30
+ })(ButtonSizes || (ButtonSizes = {}));
31
+
24
32
  export var Theme;
25
33
 
26
34
  (function (Theme) {
@@ -30,6 +38,7 @@ export var Theme;
30
38
  Theme["HUAWEI_STORE"] = "huawei-store";
31
39
  Theme["MI_STORE"] = "mi-store";
32
40
  Theme["RU_STORE"] = "ru-store";
41
+ Theme["V_APPSTORE"] = "v-appstore";
33
42
  })(Theme || (Theme = {}));
34
43
 
35
44
  var cn = cnCreate('mfui-store-button');
@@ -40,14 +49,25 @@ var StoreButton = function StoreButton(_a) {
40
49
  onClick = _a.onClick,
41
50
  theme = _a.theme,
42
51
  className = _a.className,
43
- rest = __rest(_a, ["href", "rel", "onClick", "theme", "className"]);
52
+ _a$sizeAll = _a.sizeAll,
53
+ sizeAll = _a$sizeAll === void 0 ? ButtonSizes.MEDIUM : _a$sizeAll,
54
+ sizeWide = _a.sizeWide,
55
+ sizeDesktop = _a.sizeDesktop,
56
+ sizeTablet = _a.sizeTablet,
57
+ sizeMobile = _a.sizeMobile,
58
+ rest = __rest(_a, ["href", "rel", "onClick", "theme", "className", "sizeAll", "sizeWide", "sizeDesktop", "sizeTablet", "sizeMobile"]);
44
59
 
45
60
  return /*#__PURE__*/React.createElement(Link, _extends({}, rest, {
46
61
  href: href,
47
62
  rel: rel,
48
63
  onClick: onClick,
49
64
  className: cn({
50
- theme: theme
65
+ theme: theme,
66
+ 'size-all': sizeAll,
67
+ 'size-wide': sizeWide,
68
+ 'size-desktop': sizeDesktop,
69
+ 'size-tablet': sizeTablet,
70
+ 'size-mobile': sizeMobile
51
71
  }, className)
52
72
  }));
53
73
  };
@@ -59,6 +79,11 @@ StoreButton.propTypes = {
59
79
  onClick: PropTypes.func,
60
80
  className: PropTypes.string,
61
81
  target: PropTypes.oneOf(['_self', '_blank', '_parent', '_top']),
82
+ sizeAll: PropTypes.oneOf(Object.values(ButtonSizes)).isRequired,
83
+ sizeWide: PropTypes.oneOf(Object.values(ButtonSizes)).isRequired,
84
+ sizeDesktop: PropTypes.oneOf(Object.values(ButtonSizes)).isRequired,
85
+ sizeTablet: PropTypes.oneOf(Object.values(ButtonSizes)).isRequired,
86
+ sizeMobile: PropTypes.oneOf(Object.values(ButtonSizes)).isRequired,
62
87
  dataAttrs: PropTypes.shape({
63
88
  root: PropTypes.objectOf(PropTypes.string.isRequired)
64
89
  })
@@ -1,7 +1,8 @@
1
1
  import React, { Ref } from 'react';
2
2
  import { Props as BreadcrumbsPropsType } from '../Breadcrumbs/Breadcrumbs';
3
3
  import './VideoBanner.less';
4
- declare type BreadCrumbsItemsType = BreadcrumbsPropsType['items'];
4
+ export declare type BreadCrumbsItemsType = BreadcrumbsPropsType['items'];
5
+ export declare const testIdPrefix = "VideoBanner";
5
6
  export declare enum ClassName {
6
7
  BUTTON = "button",
7
8
  LINK = "link"
@@ -59,7 +60,7 @@ export interface IContent {
59
60
  /** Строка со стоимостью услуги */
60
61
  cost?: string;
61
62
  }
62
- interface IVideoBannerProps {
63
+ export interface IVideoBannerProps {
63
64
  /** Дополнительные data атрибуты к внутренним элементам */
64
65
  dataAttrs?: {
65
66
  root?: Record<string, string>;