ecomlab-components-next 0.1.322 → 0.1.323
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/dist/components/ConstructorComponents/VideoBlockV3/VideoBlockV3.js +90 -0
- package/dist/components/ConstructorComponents/VideoBlockV3/VideoBlockV3.scss +576 -0
- package/dist/components/ConstructorComponents/VideoBlockV3/VideoBlockV3.stories.js +18 -0
- package/dist/index.js +7 -0
- package/package.json +1 -1
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
|
|
4
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
require("./VideoBlockV3.scss");
|
|
11
|
+
var _ButtonBasicV = _interopRequireDefault(require("../../Buttons/ButtonBasicV2/ButtonBasicV2"));
|
|
12
|
+
var _useReveal = _interopRequireDefault(require("../../../common/hooks/useReveal"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
16
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
17
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
18
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
19
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
20
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
21
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
22
|
+
var VideoBlockV3 = function VideoBlockV3(_ref) {
|
|
23
|
+
var src = _ref.src,
|
|
24
|
+
hideTitle = _ref.hideTitle,
|
|
25
|
+
title = _ref.title,
|
|
26
|
+
poster = _ref.poster,
|
|
27
|
+
_ref$description = _ref.description,
|
|
28
|
+
description = _ref$description === void 0 ? 'Платформа за 2 минуты: аналитика, конкуренты и перенос контента' : _ref$description,
|
|
29
|
+
_ref$buttonText = _ref.buttonText,
|
|
30
|
+
buttonText = _ref$buttonText === void 0 ? 'Смотреть видео' : _ref$buttonText;
|
|
31
|
+
var videoRef = (0, _react.useRef)(null);
|
|
32
|
+
var _useState = (0, _react.useState)(false),
|
|
33
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
34
|
+
isPlaying = _useState2[0],
|
|
35
|
+
setIsPlaying = _useState2[1];
|
|
36
|
+
(0, _useReveal["default"])();
|
|
37
|
+
var handlePlay = function handlePlay() {
|
|
38
|
+
var video = videoRef.current;
|
|
39
|
+
if (!video) return;
|
|
40
|
+
video.play();
|
|
41
|
+
};
|
|
42
|
+
var handlePlayState = function handlePlayState() {
|
|
43
|
+
setIsPlaying(true);
|
|
44
|
+
};
|
|
45
|
+
var handlePauseState = function handlePauseState() {
|
|
46
|
+
setIsPlaying(false);
|
|
47
|
+
};
|
|
48
|
+
var handleEnded = function handleEnded() {
|
|
49
|
+
setIsPlaying(false);
|
|
50
|
+
};
|
|
51
|
+
return /*#__PURE__*/_react["default"].createElement("section", {
|
|
52
|
+
className: "video-block-v3"
|
|
53
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
54
|
+
className: "\n video-block-v3__card\n reveal\n ".concat(hideTitle ? 'video-block-v3__card--center' : '', "\n ")
|
|
55
|
+
}, !hideTitle && /*#__PURE__*/_react["default"].createElement("div", {
|
|
56
|
+
className: "video-block-v3__content"
|
|
57
|
+
}, /*#__PURE__*/_react["default"].createElement("h2", {
|
|
58
|
+
className: "video-block-v3__title"
|
|
59
|
+
}, title || 'Посмотрите видео о нас'), description && /*#__PURE__*/_react["default"].createElement("p", {
|
|
60
|
+
className: "video-block-v3__description"
|
|
61
|
+
}, description), /*#__PURE__*/_react["default"].createElement("div", {
|
|
62
|
+
className: "video-block-v3__action"
|
|
63
|
+
}, /*#__PURE__*/_react["default"].createElement(_ButtonBasicV["default"], {
|
|
64
|
+
white: true,
|
|
65
|
+
onClick: handlePlay,
|
|
66
|
+
text: buttonText,
|
|
67
|
+
size: "44px"
|
|
68
|
+
}))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
69
|
+
className: "\n video-block-v3__laptop\n ".concat(isPlaying ? 'video-block-v3__laptop--playing' : '', "\n ")
|
|
70
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
71
|
+
className: "video-block-v3__screen"
|
|
72
|
+
}, /*#__PURE__*/_react["default"].createElement("video", {
|
|
73
|
+
ref: videoRef,
|
|
74
|
+
className: "video-block-v3__video",
|
|
75
|
+
src: src,
|
|
76
|
+
poster: poster,
|
|
77
|
+
controls: true,
|
|
78
|
+
playsInline: true,
|
|
79
|
+
preload: "metadata",
|
|
80
|
+
onPlay: handlePlayState,
|
|
81
|
+
onPause: handlePauseState,
|
|
82
|
+
onEnded: handleEnded
|
|
83
|
+
}, /*#__PURE__*/_react["default"].createElement("source", {
|
|
84
|
+
src: src,
|
|
85
|
+
type: "video/mp4"
|
|
86
|
+
}))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
87
|
+
className: "video-block-v3__base"
|
|
88
|
+
}))));
|
|
89
|
+
};
|
|
90
|
+
var _default = exports["default"] = VideoBlockV3;
|
|
@@ -0,0 +1,576 @@
|
|
|
1
|
+
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
|
|
2
|
+
@import '../variables.scss';
|
|
3
|
+
|
|
4
|
+
.video-block-v3 {
|
|
5
|
+
font-family: 'Manrope', sans-serif;
|
|
6
|
+
background: $white;
|
|
7
|
+
width: 100%;
|
|
8
|
+
padding: 96px 40px;
|
|
9
|
+
|
|
10
|
+
* {
|
|
11
|
+
font-family: 'Manrope', 'Golos Text', sans-serif !important;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
// ========================================
|
|
15
|
+
// CARD
|
|
16
|
+
// ========================================
|
|
17
|
+
|
|
18
|
+
&__card {
|
|
19
|
+
position: relative;
|
|
20
|
+
|
|
21
|
+
max-width: 1280px;
|
|
22
|
+
min-height: 360px;
|
|
23
|
+
|
|
24
|
+
margin: 0 auto;
|
|
25
|
+
|
|
26
|
+
// ====================================
|
|
27
|
+
// ДОПОЛНИТЕЛЬНЫЙ ЗЕЛЁНЫЙ ГРАДИЕНТ
|
|
28
|
+
// (справа, мягкое свечение)
|
|
29
|
+
// ====================================
|
|
30
|
+
|
|
31
|
+
background:
|
|
32
|
+
radial-gradient(
|
|
33
|
+
ellipse 640px 460px at 98% 112%,
|
|
34
|
+
rgba(22, 185, 129, 0.34) 0%,
|
|
35
|
+
rgba(44, 207, 164, 0.18) 40%,
|
|
36
|
+
rgba(44, 207, 164, 0) 75%
|
|
37
|
+
),
|
|
38
|
+
radial-gradient(
|
|
39
|
+
ellipse 460px 320px at 88% -14%,
|
|
40
|
+
rgba(110, 231, 183, 0.28) 0%,
|
|
41
|
+
rgba(110, 231, 183, 0) 70%
|
|
42
|
+
),
|
|
43
|
+
#f8fcfb;
|
|
44
|
+
|
|
45
|
+
border-radius: 24px;
|
|
46
|
+
|
|
47
|
+
display: flex;
|
|
48
|
+
align-items: center;
|
|
49
|
+
justify-content: space-between;
|
|
50
|
+
|
|
51
|
+
gap: 48px;
|
|
52
|
+
|
|
53
|
+
// Отступы сохраняем
|
|
54
|
+
padding: 56px;
|
|
55
|
+
|
|
56
|
+
overflow: hidden;
|
|
57
|
+
|
|
58
|
+
// ====================================
|
|
59
|
+
// ШИРОКИЙ РАСПЛЫВЧАТЫЙ ГРАДИЕНТ
|
|
60
|
+
// ====================================
|
|
61
|
+
|
|
62
|
+
&::before {
|
|
63
|
+
content: '';
|
|
64
|
+
|
|
65
|
+
position: absolute;
|
|
66
|
+
|
|
67
|
+
width: 820px;
|
|
68
|
+
height: 620px;
|
|
69
|
+
|
|
70
|
+
right: -60px;
|
|
71
|
+
top: 50%;
|
|
72
|
+
|
|
73
|
+
transform: translateY(-50%);
|
|
74
|
+
|
|
75
|
+
border-radius: 50%;
|
|
76
|
+
|
|
77
|
+
background:
|
|
78
|
+
radial-gradient(
|
|
79
|
+
closest-side at 42% 50%,
|
|
80
|
+
#16b981 0%,
|
|
81
|
+
#38bdf8 22%,
|
|
82
|
+
#bef264 60%,
|
|
83
|
+
rgba(69, 84, 220, 0.6) 62%,
|
|
84
|
+
rgba(69, 204, 232, 0.25) 80%,
|
|
85
|
+
rgba(69, 204, 232, 0) 100%
|
|
86
|
+
);
|
|
87
|
+
|
|
88
|
+
// Чем больше blur — тем мягче края
|
|
89
|
+
filter: blur(36px);
|
|
90
|
+
|
|
91
|
+
z-index: 0;
|
|
92
|
+
|
|
93
|
+
pointer-events: none;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
// Широкая мягкая подсветка вокруг основного градиента
|
|
97
|
+
&::after {
|
|
98
|
+
content: '';
|
|
99
|
+
|
|
100
|
+
position: absolute;
|
|
101
|
+
|
|
102
|
+
width: 1000px;
|
|
103
|
+
height: 760px;
|
|
104
|
+
|
|
105
|
+
right: -160px;
|
|
106
|
+
top: 50%;
|
|
107
|
+
|
|
108
|
+
transform: translateY(-50%);
|
|
109
|
+
|
|
110
|
+
border-radius: 50%;
|
|
111
|
+
|
|
112
|
+
background:
|
|
113
|
+
radial-gradient(
|
|
114
|
+
closest-side,
|
|
115
|
+
rgba(45, 212, 191, 0.16) 0%,
|
|
116
|
+
rgba(56, 189, 248, 0.10) 50%,
|
|
117
|
+
transparent 100%
|
|
118
|
+
);
|
|
119
|
+
|
|
120
|
+
filter: blur(60px);
|
|
121
|
+
|
|
122
|
+
z-index: 0;
|
|
123
|
+
|
|
124
|
+
pointer-events: none;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// Без заголовка
|
|
128
|
+
&--center {
|
|
129
|
+
justify-content: center;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
// ========================================
|
|
135
|
+
// CONTENT
|
|
136
|
+
// ========================================
|
|
137
|
+
|
|
138
|
+
&__content {
|
|
139
|
+
position: relative;
|
|
140
|
+
|
|
141
|
+
z-index: 3;
|
|
142
|
+
|
|
143
|
+
flex: 1;
|
|
144
|
+
|
|
145
|
+
max-width: 480px;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
&__title {
|
|
149
|
+
font-size: 30px;
|
|
150
|
+
font-weight: 800;
|
|
151
|
+
line-height: 1.2;
|
|
152
|
+
|
|
153
|
+
letter-spacing: -1px;
|
|
154
|
+
|
|
155
|
+
color: $green-dark;
|
|
156
|
+
|
|
157
|
+
margin: 0 0 16px 0;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
&__description {
|
|
161
|
+
font-size: 15px;
|
|
162
|
+
line-height: 1.5;
|
|
163
|
+
|
|
164
|
+
color: #66817a;
|
|
165
|
+
|
|
166
|
+
max-width: 420px;
|
|
167
|
+
|
|
168
|
+
margin: 0 0 28px 0;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
&__action {
|
|
172
|
+
position: relative;
|
|
173
|
+
|
|
174
|
+
z-index: 3;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
// ========================================
|
|
179
|
+
// LAPTOP
|
|
180
|
+
// ========================================
|
|
181
|
+
|
|
182
|
+
&__laptop {
|
|
183
|
+
position: relative;
|
|
184
|
+
|
|
185
|
+
z-index: 2;
|
|
186
|
+
|
|
187
|
+
flex-shrink: 0;
|
|
188
|
+
|
|
189
|
+
width: 560px;
|
|
190
|
+
|
|
191
|
+
/*
|
|
192
|
+
* В обычном состоянии ноутбук немного
|
|
193
|
+
* повернут, как в референсе.
|
|
194
|
+
*/
|
|
195
|
+
transform:
|
|
196
|
+
perspective(1400px)
|
|
197
|
+
rotateY(-10deg)
|
|
198
|
+
rotateZ(-1deg);
|
|
199
|
+
|
|
200
|
+
transform-origin: center center;
|
|
201
|
+
|
|
202
|
+
transition:
|
|
203
|
+
transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
// ========================================
|
|
208
|
+
// VIDEO PLAYING
|
|
209
|
+
// ========================================
|
|
210
|
+
|
|
211
|
+
/*
|
|
212
|
+
* Когда видео включено —
|
|
213
|
+
* ноутбук становится прямым.
|
|
214
|
+
*/
|
|
215
|
+
|
|
216
|
+
&__laptop--playing {
|
|
217
|
+
transform:
|
|
218
|
+
perspective(1400px)
|
|
219
|
+
rotateY(0deg)
|
|
220
|
+
rotateZ(0deg);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
// ========================================
|
|
225
|
+
// SCREEN
|
|
226
|
+
// ========================================
|
|
227
|
+
|
|
228
|
+
&__screen {
|
|
229
|
+
position: relative;
|
|
230
|
+
|
|
231
|
+
background: #102b25;
|
|
232
|
+
|
|
233
|
+
border-radius: 14px 14px 0 0;
|
|
234
|
+
|
|
235
|
+
padding: 10px 10px 12px;
|
|
236
|
+
|
|
237
|
+
box-shadow:
|
|
238
|
+
0 24px 45px rgba(0, 0, 0, 0.18),
|
|
239
|
+
0 10px 20px rgba(0, 0, 0, 0.10);
|
|
240
|
+
|
|
241
|
+
z-index: 2;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
&__video {
|
|
245
|
+
display: block;
|
|
246
|
+
|
|
247
|
+
width: 100%;
|
|
248
|
+
|
|
249
|
+
aspect-ratio: 16 / 10;
|
|
250
|
+
|
|
251
|
+
object-fit: cover;
|
|
252
|
+
|
|
253
|
+
border-radius: 6px;
|
|
254
|
+
|
|
255
|
+
background: #000;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
// ========================================
|
|
260
|
+
// LAPTOP BASE
|
|
261
|
+
// ========================================
|
|
262
|
+
|
|
263
|
+
&__base {
|
|
264
|
+
position: relative;
|
|
265
|
+
|
|
266
|
+
height: 12px;
|
|
267
|
+
|
|
268
|
+
width: calc(100% + 56px);
|
|
269
|
+
|
|
270
|
+
margin: 0 -28px;
|
|
271
|
+
|
|
272
|
+
background:
|
|
273
|
+
linear-gradient(
|
|
274
|
+
180deg,
|
|
275
|
+
#e7f0ed 0%,
|
|
276
|
+
#c2d5cf 100%
|
|
277
|
+
);
|
|
278
|
+
|
|
279
|
+
border-radius: 0 0 16px 16px;
|
|
280
|
+
|
|
281
|
+
box-shadow:
|
|
282
|
+
0 10px 22px rgba(0, 0, 0, 0.18);
|
|
283
|
+
|
|
284
|
+
z-index: 2;
|
|
285
|
+
|
|
286
|
+
&::after {
|
|
287
|
+
content: '';
|
|
288
|
+
|
|
289
|
+
position: absolute;
|
|
290
|
+
|
|
291
|
+
left: 50%;
|
|
292
|
+
top: 0;
|
|
293
|
+
|
|
294
|
+
width: 80px;
|
|
295
|
+
height: 4px;
|
|
296
|
+
|
|
297
|
+
transform: translateX(-50%);
|
|
298
|
+
|
|
299
|
+
background: rgba(0, 0, 0, 0.10);
|
|
300
|
+
|
|
301
|
+
border-radius: 0 0 6px 6px;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
|
|
306
|
+
// ========================================
|
|
307
|
+
// HOVER
|
|
308
|
+
// ========================================
|
|
309
|
+
|
|
310
|
+
&__card:hover {
|
|
311
|
+
.video-block-v3__laptop:not(.video-block-v3__laptop--playing) {
|
|
312
|
+
transform:
|
|
313
|
+
perspective(1400px)
|
|
314
|
+
rotateY(-13deg)
|
|
315
|
+
rotateZ(-1.5deg)
|
|
316
|
+
translateY(-3px);
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
// ========================================
|
|
322
|
+
// ANIMATION
|
|
323
|
+
// ========================================
|
|
324
|
+
|
|
325
|
+
@keyframes fadeUp {
|
|
326
|
+
from {
|
|
327
|
+
opacity: 0;
|
|
328
|
+
transform: translateY(24px);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
to {
|
|
332
|
+
opacity: 1;
|
|
333
|
+
transform: translateY(0);
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
|
|
339
|
+
// ========================================
|
|
340
|
+
// TABLET
|
|
341
|
+
// ========================================
|
|
342
|
+
|
|
343
|
+
@media (max-width: 1100px) {
|
|
344
|
+
.video-block-v3 {
|
|
345
|
+
padding: 72px 24px;
|
|
346
|
+
|
|
347
|
+
&__card {
|
|
348
|
+
padding: 48px 40px;
|
|
349
|
+
gap: 32px;
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
&__title {
|
|
353
|
+
font-size: 26px;
|
|
354
|
+
}
|
|
355
|
+
|
|
356
|
+
&__laptop {
|
|
357
|
+
width: 460px;
|
|
358
|
+
|
|
359
|
+
transform:
|
|
360
|
+
perspective(1200px)
|
|
361
|
+
rotateY(-8deg)
|
|
362
|
+
rotateZ(-1deg);
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
&__laptop--playing {
|
|
366
|
+
transform:
|
|
367
|
+
perspective(1200px)
|
|
368
|
+
rotateY(0deg)
|
|
369
|
+
rotateZ(0deg);
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
&__base {
|
|
373
|
+
width: calc(100% + 40px);
|
|
374
|
+
margin: 0 -20px;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
&__card::before {
|
|
378
|
+
width: 680px;
|
|
379
|
+
height: 520px;
|
|
380
|
+
|
|
381
|
+
right: -40px;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
&__card::after {
|
|
385
|
+
width: 820px;
|
|
386
|
+
height: 640px;
|
|
387
|
+
|
|
388
|
+
right: -120px;
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
|
|
394
|
+
// ========================================
|
|
395
|
+
// MOBILE
|
|
396
|
+
// ========================================
|
|
397
|
+
|
|
398
|
+
@media (max-width: 900px) {
|
|
399
|
+
.video-block-v3 {
|
|
400
|
+
padding: 60px 24px;
|
|
401
|
+
|
|
402
|
+
&__card {
|
|
403
|
+
flex-direction: column;
|
|
404
|
+
|
|
405
|
+
background:
|
|
406
|
+
radial-gradient(
|
|
407
|
+
ellipse 520px 360px at 50% 110%,
|
|
408
|
+
rgba(22, 185, 129, 0.28) 0%,
|
|
409
|
+
rgba(44, 207, 164, 0.12) 45%,
|
|
410
|
+
rgba(44, 207, 164, 0) 75%
|
|
411
|
+
),
|
|
412
|
+
#f8fcfb;
|
|
413
|
+
|
|
414
|
+
gap: 32px;
|
|
415
|
+
|
|
416
|
+
padding: 40px 32px 48px;
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
&__content {
|
|
420
|
+
max-width: 100%;
|
|
421
|
+
|
|
422
|
+
text-align: center;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
&__description {
|
|
426
|
+
font-size: 14px;
|
|
427
|
+
|
|
428
|
+
margin-left: auto;
|
|
429
|
+
margin-right: auto;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
&__laptop {
|
|
433
|
+
width: 100%;
|
|
434
|
+
max-width: 520px;
|
|
435
|
+
|
|
436
|
+
transform:
|
|
437
|
+
perspective(1100px)
|
|
438
|
+
rotateY(-5deg)
|
|
439
|
+
rotateZ(-1deg);
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
&__laptop--playing {
|
|
443
|
+
transform:
|
|
444
|
+
perspective(1100px)
|
|
445
|
+
rotateY(0deg)
|
|
446
|
+
rotateZ(0deg);
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
&__card::before {
|
|
450
|
+
width: 760px;
|
|
451
|
+
height: 560px;
|
|
452
|
+
|
|
453
|
+
right: 50%;
|
|
454
|
+
top: 65%;
|
|
455
|
+
|
|
456
|
+
transform: translate(50%, -50%);
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
&__card::after {
|
|
460
|
+
width: 900px;
|
|
461
|
+
height: 680px;
|
|
462
|
+
|
|
463
|
+
right: 50%;
|
|
464
|
+
top: 65%;
|
|
465
|
+
|
|
466
|
+
transform: translate(50%, -50%);
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
|
|
472
|
+
// ========================================
|
|
473
|
+
// 600px
|
|
474
|
+
// ========================================
|
|
475
|
+
|
|
476
|
+
@media (max-width: 600px) {
|
|
477
|
+
.video-block-v3 {
|
|
478
|
+
|
|
479
|
+
&__card {
|
|
480
|
+
border-radius: 20px;
|
|
481
|
+
|
|
482
|
+
padding: 32px 24px 40px;
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
&__title {
|
|
486
|
+
font-size: 24px;
|
|
487
|
+
}
|
|
488
|
+
|
|
489
|
+
&__description {
|
|
490
|
+
font-size: 13px;
|
|
491
|
+
|
|
492
|
+
margin-bottom: 20px;
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
&__laptop {
|
|
496
|
+
transform:
|
|
497
|
+
perspective(900px)
|
|
498
|
+
rotateY(-3deg)
|
|
499
|
+
rotateZ(-1deg);
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
&__laptop--playing {
|
|
503
|
+
transform:
|
|
504
|
+
perspective(900px)
|
|
505
|
+
rotateY(0deg)
|
|
506
|
+
rotateZ(0deg);
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
// На мобильных blur поменьше — легче для слабых устройств
|
|
510
|
+
&__card::before {
|
|
511
|
+
width: 640px;
|
|
512
|
+
height: 480px;
|
|
513
|
+
|
|
514
|
+
filter: blur(24px);
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
&__card::after {
|
|
518
|
+
width: 760px;
|
|
519
|
+
height: 560px;
|
|
520
|
+
|
|
521
|
+
filter: blur(36px);
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
|
|
527
|
+
// ========================================
|
|
528
|
+
// 430px
|
|
529
|
+
// ========================================
|
|
530
|
+
|
|
531
|
+
@media (max-width: 430px) {
|
|
532
|
+
.video-block-v3 {
|
|
533
|
+
padding: 40px 20px;
|
|
534
|
+
|
|
535
|
+
&__card {
|
|
536
|
+
border-radius: 16px;
|
|
537
|
+
|
|
538
|
+
padding: 28px 16px 32px;
|
|
539
|
+
}
|
|
540
|
+
|
|
541
|
+
&__title {
|
|
542
|
+
font-size: 20px;
|
|
543
|
+
}
|
|
544
|
+
|
|
545
|
+
&__description {
|
|
546
|
+
font-size: 12px;
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
&__screen {
|
|
550
|
+
padding: 6px 6px 8px;
|
|
551
|
+
|
|
552
|
+
border-radius: 10px 10px 0 0;
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
&__base {
|
|
556
|
+
width: calc(100% + 24px);
|
|
557
|
+
|
|
558
|
+
margin: 0 -12px;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
&__card::before {
|
|
562
|
+
width: 520px;
|
|
563
|
+
height: 400px;
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
&__card::after {
|
|
567
|
+
width: 620px;
|
|
568
|
+
height: 470px;
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
&__action > * {
|
|
572
|
+
max-width: 100% !important;
|
|
573
|
+
width: 100% !important;
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = exports.VideoBlockV3Test = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _VideoBlockV = _interopRequireDefault(require("./VideoBlockV3"));
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
10
|
+
var _default = exports["default"] = {
|
|
11
|
+
title: 'VideoBlockV3',
|
|
12
|
+
component: _VideoBlockV["default"]
|
|
13
|
+
};
|
|
14
|
+
var VideoBlockV3Test = exports.VideoBlockV3Test = function VideoBlockV3Test() {
|
|
15
|
+
return /*#__PURE__*/_react["default"].createElement(_VideoBlockV["default"], {
|
|
16
|
+
src: "https://dl.ecomru.ru:9001/redactor-videos/ecomru_1.mp4"
|
|
17
|
+
});
|
|
18
|
+
};
|
package/dist/index.js
CHANGED
|
@@ -441,6 +441,12 @@ Object.defineProperty(exports, "VideoBlockV2", {
|
|
|
441
441
|
return _VideoBlockV["default"];
|
|
442
442
|
}
|
|
443
443
|
});
|
|
444
|
+
Object.defineProperty(exports, "VideoBlockV3", {
|
|
445
|
+
enumerable: true,
|
|
446
|
+
get: function get() {
|
|
447
|
+
return _VideoBlockV2["default"];
|
|
448
|
+
}
|
|
449
|
+
});
|
|
444
450
|
Object.defineProperty(exports, "ViewSwitch", {
|
|
445
451
|
enumerable: true,
|
|
446
452
|
get: function get() {
|
|
@@ -474,6 +480,7 @@ var _TariffPlan = _interopRequireDefault(require("./components/ConstructorCompon
|
|
|
474
480
|
var _TariffPlanV = _interopRequireDefault(require("./components/ConstructorComponents/TariffPlanV2/TariffPlanV2"));
|
|
475
481
|
var _VideoBlock = _interopRequireDefault(require("./components/ConstructorComponents/VideoBlock/VideoBlock"));
|
|
476
482
|
var _VideoBlockV = _interopRequireDefault(require("./components/ConstructorComponents/VideoBlockV2/VideoBlockV2"));
|
|
483
|
+
var _VideoBlockV2 = _interopRequireDefault(require("./components/ConstructorComponents/VideoBlockV3/VideoBlockV3"));
|
|
477
484
|
var _ArticlesBlock = _interopRequireDefault(require("./components/ConstructorComponents/ArticlesBlock/ArticlesBlock"));
|
|
478
485
|
var _ArticlesBlock2 = _interopRequireDefault(require("./components/ConstructorComponents/ArticlesBlock2/ArticlesBlock2"));
|
|
479
486
|
var _ArticlesBlockV = _interopRequireDefault(require("./components/ConstructorComponents/ArticlesBlockV2/ArticlesBlockV2"));
|