stormcloud-video-player 0.7.45 → 0.7.47

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.
@@ -7199,7 +7199,8 @@ var SHOWCASE_PERSISTENT_TYPES = /* @__PURE__ */ new Set([
7199
7199
  "text",
7200
7200
  "shape",
7201
7201
  "countdown",
7202
- "qr_code"
7202
+ "qr_code",
7203
+ "coming_up_next"
7203
7204
  ]);
7204
7205
  function easeOutCubic(t) {
7205
7206
  var u = 1 - t;
@@ -7322,11 +7323,26 @@ var OverlayRenderer = function OverlayRenderer(param) {
7322
7323
  var rafRef = (0, import_react.useRef)(null);
7323
7324
  var _ref1 = _sliced_to_array((0, import_react.useState)(/* @__PURE__ */ new Map()), 2), fadeMap = _ref1[0], setFadeMap = _ref1[1];
7324
7325
  var removeTimers = (0, import_react.useRef)(/* @__PURE__ */ new Map());
7325
- var _ref2 = (0, import_react.useMemo)(function() {
7326
+ var mountTimeRef = (0, import_react.useRef)(Date.now());
7327
+ var _ref2 = _sliced_to_array((0, import_react.useState)(0), 2), wallclockSec = _ref2[0], setWallclockSec = _ref2[1];
7328
+ (0, import_react.useEffect)(function() {
7329
+ if (!showcaseMode) return;
7330
+ var tick = function tick() {
7331
+ return setWallclockSec((Date.now() - mountTimeRef.current) / 1e3);
7332
+ };
7333
+ tick();
7334
+ var id = window.setInterval(tick, 200);
7335
+ return function() {
7336
+ return clearInterval(id);
7337
+ };
7338
+ }, [
7339
+ showcaseMode
7340
+ ]);
7341
+ var _ref3 = (0, import_react.useMemo)(function() {
7326
7342
  return partitionShowcase(overlays);
7327
7343
  }, [
7328
7344
  overlays
7329
- ]), showcasePersistent = _ref2.persistent, showcaseBeats = _ref2.beats;
7345
+ ]), showcasePersistent = _ref3.persistent, showcaseBeats = _ref3.beats;
7330
7346
  var _useShowcaseBeat = useShowcaseBeat(showcaseMode, showcaseCycleMs, showcaseBeats.length), showcaseBeatIndex = _useShowcaseBeat.beatIndex, showcaseBeatPhase = _useShowcaseBeat.beatPhase, showcaseBeatMs = _useShowcaseBeat.beatMs;
7331
7347
  var showcasePersistentIds = (0, import_react.useMemo)(function() {
7332
7348
  return new Set(showcasePersistent.map(function(o) {
@@ -7378,7 +7394,10 @@ var OverlayRenderer = function OverlayRenderer(param) {
7378
7394
  if (showcaseMode) {
7379
7395
  var _showcaseBeats_showcaseBeatIndex;
7380
7396
  var beat = (_showcaseBeats_showcaseBeatIndex = showcaseBeats[showcaseBeatIndex]) !== null && _showcaseBeats_showcaseBeatIndex !== void 0 ? _showcaseBeats_showcaseBeatIndex : [];
7381
- return _to_consumable_array(showcasePersistent).concat(_to_consumable_array(beat));
7397
+ var scheduledPersistent = showcasePersistent.filter(function(o) {
7398
+ return isOverlayActive(o, wallclockSec);
7399
+ });
7400
+ return _to_consumable_array(scheduledPersistent).concat(_to_consumable_array(beat));
7382
7401
  }
7383
7402
  return overlays.filter(function(o) {
7384
7403
  return isOverlayActive(o, currentTime);
@@ -7386,6 +7405,7 @@ var OverlayRenderer = function OverlayRenderer(param) {
7386
7405
  }, [
7387
7406
  overlays,
7388
7407
  currentTime,
7408
+ wallclockSec,
7389
7409
  showcaseMode,
7390
7410
  showcasePersistent,
7391
7411
  showcaseBeats,
@@ -8098,6 +8118,7 @@ var StormcloudVideoPlayerComponent = import_react2.default.memo(function(props)
8098
8118
  var _player_getMinHlsResolution;
8099
8119
  var fixed = swirlOverlayCoordinateSpace;
8100
8120
  if (fixed && fixed.width > 0 && fixed.height > 0) {
8121
+ console.debug("[StormcloudVideoPlayer] overlay coord space (prop):", fixed.width, "x", fixed.height);
8101
8122
  setOverlayCoordSpace({
8102
8123
  width: fixed.width,
8103
8124
  height: fixed.height
@@ -8108,6 +8129,7 @@ var StormcloudVideoPlayerComponent = import_react2.default.memo(function(props)
8108
8129
  if (!player) return false;
8109
8130
  var minRes = (_player_getMinHlsResolution = player.getMinHlsResolution) === null || _player_getMinHlsResolution === void 0 ? void 0 : _player_getMinHlsResolution.call(player);
8110
8131
  if (minRes && minRes.width > 0 && minRes.height > 0) {
8132
+ console.debug("[StormcloudVideoPlayer] overlay coord space (minHlsResolution):", minRes.width, "x", minRes.height);
8111
8133
  setOverlayCoordSpace({
8112
8134
  width: minRes.width,
8113
8135
  height: minRes.height
@@ -8116,6 +8138,7 @@ var StormcloudVideoPlayerComponent = import_react2.default.memo(function(props)
8116
8138
  }
8117
8139
  var video2 = player.videoElement;
8118
8140
  if (video2 && video2.videoWidth > 0 && video2.videoHeight > 0) {
8141
+ console.debug("[StormcloudVideoPlayer] overlay coord space (videoNative):", video2.videoWidth, "x", video2.videoHeight);
8119
8142
  setOverlayCoordSpace({
8120
8143
  width: video2.videoWidth,
8121
8144
  height: video2.videoHeight
@@ -8148,8 +8171,7 @@ var StormcloudVideoPlayerComponent = import_react2.default.memo(function(props)
8148
8171
  }, [
8149
8172
  swirlProjectId,
8150
8173
  criticalPropsKey,
8151
- swirlOverlayCoordinateSpace,
8152
- overlays
8174
+ swirlOverlayCoordinateSpace
8153
8175
  ]);
8154
8176
  (0, import_react2.useEffect)(function() {
8155
8177
  if (!playerRef.current) return;
@@ -8576,11 +8598,11 @@ var StormcloudVideoPlayerComponent = import_react2.default.memo(function(props)
8576
8598
  }, restVideoAttrs), {
8577
8599
  children: children
8578
8600
  })),
8579
- displayOverlays.length > 0 && !adStatus.showAds && !overlaysDisabled && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(OverlayRenderer, {
8601
+ displayOverlays.length > 0 && !adStatus.showAds && !overlaysDisabled && overlayCoordSpace && /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(OverlayRenderer, {
8580
8602
  overlays: displayOverlays,
8581
8603
  currentTime: currentTime,
8582
8604
  videoRef: videoRef,
8583
- coordinateSpace: swirlOverlayCoordinateSpace && swirlOverlayCoordinateSpace.width > 0 && swirlOverlayCoordinateSpace.height > 0 ? swirlOverlayCoordinateSpace : null,
8605
+ coordinateSpace: overlayCoordSpace,
8584
8606
  showcaseMode: !!swirlShowcaseDemo
8585
8607
  }),
8586
8608
  (isLoading || isBuffering) && !hideLoadingIndicator && /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", {