@micromag/screen-video 0.3.140 → 0.3.145

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.
@@ -1 +1 @@
1
- .micromag-screen-video-container .micromag-screen-video-showControlsButton,.micromag-screen-video-unmuteAndPlayButton{display:inline-block;position:relative;padding:0;border:0;background:rgba(0,0,0,0);color:inherit;font-family:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.micromag-screen-video-container .micromag-screen-video-content,.micromag-screen-video-container .micromag-screen-video-empty,.micromag-screen-video-container .micromag-screen-video-emptyContainer,.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-image,.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-placeholder,.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-video{position:absolute;top:0;left:0;width:100%;height:100%}.micromag-screen-video-container{position:relative;width:100%;height:100%;overflow:hidden}.micromag-screen-video-disabled.micromag-screen-video-container{overflow:hidden;pointer-events:none}.micromag-screen-video-hidden.micromag-screen-video-container{display:none;visibility:hidden}.micromag-screen-video-placeholder.micromag-screen-video-container .micromag-screen-video-content{position:relative;padding:6px}.micromag-screen-video-container .micromag-screen-video-empty{margin:5px auto;border:2px dashed #343434;color:#343434}.micromag-screen-video-container .micromag-screen-video-emptyContainer{top:50%;height:0;padding-bottom:56.25%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.micromag-screen-video-container .micromag-screen-video-empty{margin:0}.micromag-screen-video-container .micromag-screen-video-content{overflow:hidden}.micromag-screen-video-container .micromag-screen-video-callToAction{padding-bottom:5px}.micromag-screen-video-container .micromag-screen-video-bottom{-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.micromag-screen-video-container .micromag-screen-video-bottom.micromag-screen-video-withGradient{background:-webkit-gradient(linear,left top, left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.4)));background:-o-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.4));background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.4))}.micromag-screen-video-container .micromag-screen-video-controls{position:relative}.micromag-screen-video-container .micromag-screen-video-mediaControls{position:relative;z-index:1;padding:10px 20px 20px;-webkit-transition:z-index .15s linear,opacity .15s linear;-o-transition:z-index .15s linear,opacity .15s linear;transition:z-index .15s linear,opacity .15s linear;opacity:0}.micromag-screen-video-container .micromag-screen-video-mediaControls.micromag-screen-video-visible{z-index:3;opacity:1}.micromag-screen-video-container .micromag-screen-video-showControlsButton{display:block;position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;opacity:0;background-color:rgba(0,0,0,0)}.micromag-screen-video-container .micromag-screen-video-placeholder{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;height:100%}.micromag-screen-video-container .micromag-screen-video-videoContainer{position:absolute}.micromag-screen-video-container .micromag-screen-video-bottomContent{position:absolute;right:0;bottom:0;left:0;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0)}.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-emptyContainer{top:0;height:100%;padding-bottom:0;-webkit-transform:none;-ms-transform:none;transform:none}.micromag-screen-video-unmuteAndPlayButton{display:block;position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;opacity:.2;background-color:#a13dff}.micromag-screen-video-bottomSeekBar{-webkit-transition:-webkit-transform .5s ease-out .5s;transition:-webkit-transform .5s ease-out .5s;-o-transition:transform .5s ease-out .5s;transition:transform .5s ease-out .5s;transition:transform .5s ease-out .5s, -webkit-transform .5s ease-out .5s}.micromag-screen-video-bottomSeekBar.micromag-screen-video-isHidden{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;-o-transition:transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out, -webkit-transform .2s ease-out}
1
+ .micromag-screen-video-container .micromag-screen-video-showControlsButton,.micromag-screen-video-unmuteAndPlayButton{display:inline-block;position:relative;padding:0;border:0;background:rgba(0,0,0,0);color:inherit;font-family:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.micromag-screen-video-container .micromag-screen-video-content,.micromag-screen-video-container .micromag-screen-video-empty,.micromag-screen-video-container .micromag-screen-video-emptyContainer,.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-image,.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-placeholder,.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-video{position:absolute;top:0;left:0;width:100%;height:100%}.micromag-screen-video-container{position:relative;width:100%;height:100%;overflow:hidden}.micromag-screen-video-disabled.micromag-screen-video-container{overflow:hidden;pointer-events:none}.micromag-screen-video-hidden.micromag-screen-video-container{display:none;visibility:hidden}.micromag-screen-video-placeholder.micromag-screen-video-container .micromag-screen-video-content{position:relative;padding:6px}.micromag-screen-video-container .micromag-screen-video-empty{margin:5px auto;border:2px dashed #343434;color:#343434}.micromag-screen-video-container .micromag-screen-video-emptyContainer{top:50%;height:0;padding-bottom:56.25%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.micromag-screen-video-container .micromag-screen-video-empty{margin:0}.micromag-screen-video-container .micromag-screen-video-content{overflow:hidden}.micromag-screen-video-container .micromag-screen-video-callToAction{padding-bottom:5px}.micromag-screen-video-container .micromag-screen-video-bottom{-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.micromag-screen-video-container .micromag-screen-video-bottom.micromag-screen-video-withGradient{background:-webkit-gradient(linear,left top, left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.4)));background:-o-linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.4));background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.4))}.micromag-screen-video-container .micromag-screen-video-controls{position:relative}.micromag-screen-video-container .micromag-screen-video-mediaControls{position:relative;z-index:1;padding:10px 20px 20px;-webkit-transition:z-index .15s linear,opacity .15s linear;-o-transition:z-index .15s linear,opacity .15s linear;transition:z-index .15s linear,opacity .15s linear;opacity:0}.micromag-screen-video-container .micromag-screen-video-mediaControls.micromag-screen-video-visible{z-index:3;opacity:1}.micromag-screen-video-container .micromag-screen-video-showControlsButton{display:block;position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;opacity:0;background-color:rgba(0,0,0,0)}.micromag-screen-video-container .micromag-screen-video-placeholder{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;height:100%}.micromag-screen-video-container .micromag-screen-video-videoContainer{position:absolute}.micromag-screen-video-container .micromag-screen-video-bottomContent{position:absolute;right:0;bottom:0;left:0;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0)}.micromag-screen-video-container.micromag-screen-video-fullscreen .micromag-screen-video-emptyContainer{top:0;height:100%;padding-bottom:0;-webkit-transform:none;-ms-transform:none;transform:none}.micromag-screen-video-unmuteAndPlayButton{display:block;position:absolute;z-index:3;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;opacity:0;background-color:rgba(0,0,0,0)}.micromag-screen-video-bottomSeekBar{-webkit-transition:-webkit-transform .5s ease-out .5s;transition:-webkit-transform .5s ease-out .5s;-o-transition:transform .5s ease-out .5s;transition:transform .5s ease-out .5s;transition:transform .5s ease-out .5s, -webkit-transform .5s ease-out .5s}.micromag-screen-video-bottomSeekBar.micromag-screen-video-isHidden{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform .2s ease-out;transition:-webkit-transform .2s ease-out;-o-transition:transform .2s ease-out;transition:transform .2s ease-out;transition:transform .2s ease-out, -webkit-transform .2s ease-out}
package/es/index.js CHANGED
@@ -117,7 +117,6 @@ var VideoScreen = function VideoScreen(_ref) {
117
117
  seek = _ref3.seek,
118
118
  play = _ref3.play,
119
119
  pause = _ref3.pause,
120
- suspended = _ref3.suspended,
121
120
  _ref3$mediaRef = _ref3.mediaRef,
122
121
  apiMediaRef = _ref3$mediaRef === void 0 ? null : _ref3$mediaRef;
123
122
 
@@ -154,6 +153,11 @@ var VideoScreen = function VideoScreen(_ref) {
154
153
  muted = _useState10[0],
155
154
  setMuted = _useState10[1];
156
155
 
156
+ var _useState11 = useState(false),
157
+ _useState12 = _slicedToArray(_useState11, 2),
158
+ allowManualPlayOnTap = _useState12[0],
159
+ setAllowManualPlayOnTap = _useState12[1];
160
+
157
161
  var onTimeUpdate = useCallback(function (time) {
158
162
  setCurrentTime(time);
159
163
  }, [duration, setCurrentTime]);
@@ -236,10 +240,10 @@ var VideoScreen = function VideoScreen(_ref) {
236
240
  var hasCallToAction = callToAction !== null && callToAction.active === true;
237
241
  var hasVideo = video !== null;
238
242
 
239
- var _useState11 = useState(hasVideo),
240
- _useState12 = _slicedToArray(_useState11, 2),
241
- ready = _useState12[0],
242
- setReady = _useState12[1]; // useState(!hasVideo);
243
+ var _useState13 = useState(hasVideo),
244
+ _useState14 = _slicedToArray(_useState13, 2),
245
+ ready = _useState14[0],
246
+ setReady = _useState14[1]; // useState(!hasVideo);
243
247
 
244
248
 
245
249
  var transitionPlaying = current && ready;
@@ -285,11 +289,20 @@ var VideoScreen = function VideoScreen(_ref) {
285
289
  var onVideoReady = useCallback(function () {
286
290
  setReady(true);
287
291
  }, [setReady]);
292
+ var onCanPlay = useCallback(function () {
293
+ if (current && autoPlay && !playing) {
294
+ setAllowManualPlayOnTap(true);
295
+ }
296
+ }, [current, autoPlay, playing, play, allowManualPlayOnTap, setAllowManualPlayOnTap]);
297
+ var onForcePlay = useCallback(function () {
298
+ setAllowManualPlayOnTap(false);
299
+ play();
300
+ }, [setAllowManualPlayOnTap, play]);
288
301
  var visibleControls = !autoPlay && !playing || muted || showMediaControls;
289
- var items = [autoPlay && suspended && !playing && !withControls ? /*#__PURE__*/React.createElement("button", {
302
+ var items = [allowManualPlayOnTap ? /*#__PURE__*/React.createElement("button", {
290
303
  key: "tap-catcher-button",
291
304
  type: "button",
292
- onTouchStart: play,
305
+ onTouchStart: onForcePlay,
293
306
  className: styles.unmuteAndPlayButton
294
307
  }) : null, /*#__PURE__*/React.createElement(ScreenElement, {
295
308
  key: "video",
@@ -334,6 +347,7 @@ var VideoScreen = function VideoScreen(_ref) {
334
347
  className: styles.video,
335
348
  onReady: onVideoReady,
336
349
  onPlay: onPlay,
350
+ onCanPlay: onCanPlay,
337
351
  onPause: onPause,
338
352
  onTimeUpdate: onTimeUpdate,
339
353
  onProgressStep: onProgressStep,
package/lib/index.js CHANGED
@@ -138,7 +138,6 @@ var VideoScreen = function VideoScreen(_ref) {
138
138
  seek = _ref3.seek,
139
139
  play = _ref3.play,
140
140
  pause = _ref3.pause,
141
- suspended = _ref3.suspended,
142
141
  _ref3$mediaRef = _ref3.mediaRef,
143
142
  apiMediaRef = _ref3$mediaRef === void 0 ? null : _ref3$mediaRef;
144
143
 
@@ -175,6 +174,11 @@ var VideoScreen = function VideoScreen(_ref) {
175
174
  muted = _useState10[0],
176
175
  setMuted = _useState10[1];
177
176
 
177
+ var _useState11 = React.useState(false),
178
+ _useState12 = _slicedToArray__default["default"](_useState11, 2),
179
+ allowManualPlayOnTap = _useState12[0],
180
+ setAllowManualPlayOnTap = _useState12[1];
181
+
178
182
  var onTimeUpdate = React.useCallback(function (time) {
179
183
  setCurrentTime(time);
180
184
  }, [duration, setCurrentTime]);
@@ -257,10 +261,10 @@ var VideoScreen = function VideoScreen(_ref) {
257
261
  var hasCallToAction = callToAction !== null && callToAction.active === true;
258
262
  var hasVideo = video !== null;
259
263
 
260
- var _useState11 = React.useState(hasVideo),
261
- _useState12 = _slicedToArray__default["default"](_useState11, 2),
262
- ready = _useState12[0],
263
- setReady = _useState12[1]; // useState(!hasVideo);
264
+ var _useState13 = React.useState(hasVideo),
265
+ _useState14 = _slicedToArray__default["default"](_useState13, 2),
266
+ ready = _useState14[0],
267
+ setReady = _useState14[1]; // useState(!hasVideo);
264
268
 
265
269
 
266
270
  var transitionPlaying = current && ready;
@@ -306,11 +310,20 @@ var VideoScreen = function VideoScreen(_ref) {
306
310
  var onVideoReady = React.useCallback(function () {
307
311
  setReady(true);
308
312
  }, [setReady]);
313
+ var onCanPlay = React.useCallback(function () {
314
+ if (current && autoPlay && !playing) {
315
+ setAllowManualPlayOnTap(true);
316
+ }
317
+ }, [current, autoPlay, playing, play, allowManualPlayOnTap, setAllowManualPlayOnTap]);
318
+ var onForcePlay = React.useCallback(function () {
319
+ setAllowManualPlayOnTap(false);
320
+ play();
321
+ }, [setAllowManualPlayOnTap, play]);
309
322
  var visibleControls = !autoPlay && !playing || muted || showMediaControls;
310
- var items = [autoPlay && suspended && !playing && !withControls ? /*#__PURE__*/React__default["default"].createElement("button", {
323
+ var items = [allowManualPlayOnTap ? /*#__PURE__*/React__default["default"].createElement("button", {
311
324
  key: "tap-catcher-button",
312
325
  type: "button",
313
- onTouchStart: play,
326
+ onTouchStart: onForcePlay,
314
327
  className: styles.unmuteAndPlayButton
315
328
  }) : null, /*#__PURE__*/React__default["default"].createElement(components.ScreenElement, {
316
329
  key: "video",
@@ -355,6 +368,7 @@ var VideoScreen = function VideoScreen(_ref) {
355
368
  className: styles.video,
356
369
  onReady: onVideoReady,
357
370
  onPlay: onPlay,
371
+ onCanPlay: onCanPlay,
358
372
  onPause: onPause,
359
373
  onTimeUpdate: onTimeUpdate,
360
374
  onProgressStep: onProgressStep,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@micromag/screen-video",
3
- "version": "0.3.140",
3
+ "version": "0.3.145",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "javascript"
@@ -50,15 +50,15 @@
50
50
  "dependencies": {
51
51
  "@babel/runtime": "^7.13.10",
52
52
  "@folklore/size": "^0.1.20",
53
- "@micromag/core": "^0.3.140",
54
- "@micromag/element-background": "^0.3.140",
55
- "@micromag/element-call-to-action": "^0.3.140",
56
- "@micromag/element-closed-captions": "^0.3.140",
57
- "@micromag/element-container": "^0.3.140",
58
- "@micromag/element-image": "^0.3.140",
59
- "@micromag/element-media-controls": "^0.3.140",
60
- "@micromag/element-video": "^0.3.140",
61
- "@micromag/transforms": "^0.3.140",
53
+ "@micromag/core": "^0.3.144",
54
+ "@micromag/element-background": "^0.3.144",
55
+ "@micromag/element-call-to-action": "^0.3.144",
56
+ "@micromag/element-closed-captions": "^0.3.144",
57
+ "@micromag/element-container": "^0.3.144",
58
+ "@micromag/element-image": "^0.3.144",
59
+ "@micromag/element-media-controls": "^0.3.144",
60
+ "@micromag/element-video": "^0.3.144",
61
+ "@micromag/transforms": "^0.3.144",
62
62
  "classnames": "^2.2.6",
63
63
  "lodash": "^4.17.21",
64
64
  "prop-types": "^15.7.2",
@@ -68,5 +68,5 @@
68
68
  "publishConfig": {
69
69
  "access": "public"
70
70
  },
71
- "gitHead": "580f0f9c5bc9d85057750f7f710bc27c933dd21a"
71
+ "gitHead": "2a108f03c2666189c35a226df90490c02b42e493"
72
72
  }