stormcloud-video-player 0.8.39 → 0.8.41
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/stormcloud-vp.min.js +1 -1
- package/lib/index.cjs +73 -8
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +74 -9
- package/lib/index.js.map +1 -1
- package/lib/player/AdBreakOrchestrator.cjs +10 -1
- package/lib/player/AdBreakOrchestrator.cjs.map +1 -1
- package/lib/player/AdConfigManager.cjs +10 -1
- package/lib/player/AdConfigManager.cjs.map +1 -1
- package/lib/player/StormcloudVideoPlayer.cjs +11 -4
- package/lib/player/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/players/HlsPlayer.cjs +11 -4
- package/lib/players/HlsPlayer.cjs.map +1 -1
- package/lib/players/index.cjs +11 -4
- package/lib/players/index.cjs.map +1 -1
- package/lib/ui/StormcloudVideoPlayer.cjs +73 -8
- package/lib/ui/StormcloudVideoPlayer.cjs.map +1 -1
- package/lib/utils/mqttClient.cjs +10 -1
- package/lib/utils/mqttClient.cjs.map +1 -1
- package/lib/utils/tracking.cjs +10 -1
- package/lib/utils/tracking.cjs.map +1 -1
- package/package.json +1 -1
|
@@ -1968,10 +1968,19 @@ function openConnection() {
|
|
|
1968
1968
|
password: mqttConfig.password,
|
|
1969
1969
|
keepalive: KEEPALIVE_SECONDS,
|
|
1970
1970
|
clean: true,
|
|
1971
|
+
// Disable MQTT.js internal reconnect; we manage reconnection ourselves.
|
|
1971
1972
|
reconnectPeriod: 0,
|
|
1972
1973
|
connectTimeout: CONNECT_TIMEOUT_MS,
|
|
1973
1974
|
queueQoSZero: false,
|
|
1974
|
-
reschedulePings: true
|
|
1975
|
+
reschedulePings: true,
|
|
1976
|
+
// Root-cause fix for the Tizen 4.0 "Keepalive timeout" loop: MQTT.js's
|
|
1977
|
+
// default timerVariant "auto" runs the keepalive interval inside a
|
|
1978
|
+
// Blob-URL Web Worker (via worker-timers). On Samsung Tizen 4.0 (old
|
|
1979
|
+
// WebKit) served from a file:// origin that worker can't tick reliably,
|
|
1980
|
+
// so the keepalive counter trips onKeepaliveTimeout almost immediately
|
|
1981
|
+
// after connect. Force the native setInterval timer instead; the main
|
|
1982
|
+
// thread is free because video is decoded by the native AVPlay pipeline.
|
|
1983
|
+
timerVariant: "native"
|
|
1975
1984
|
});
|
|
1976
1985
|
} catch (err) {
|
|
1977
1986
|
status = "error";
|
|
@@ -8766,12 +8775,10 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
|
|
|
8766
8775
|
];
|
|
8767
8776
|
case 3:
|
|
8768
8777
|
error = _state.sent();
|
|
8769
|
-
this.adBreak.adPodQueue = [];
|
|
8770
|
-
this.adBreak.inAdBreak = false;
|
|
8771
|
-
this.adBreak.showAds = false;
|
|
8772
8778
|
if (this.debug) {
|
|
8773
8779
|
console.warn("[StormcloudVideoPlayer] VMAP ad request failed:", error);
|
|
8774
8780
|
}
|
|
8781
|
+
this.adBreak.handleAdPodComplete();
|
|
8775
8782
|
return [
|
|
8776
8783
|
3,
|
|
8777
8784
|
4
|
|
@@ -8941,6 +8948,64 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
|
|
|
8941
8948
|
// src/ui/StormcloudVideoPlayer.tsx
|
|
8942
8949
|
var import_fa = require("react-icons/fa");
|
|
8943
8950
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
8951
|
+
var ExpandIcon = function ExpandIcon(param) {
|
|
8952
|
+
var _param_size = param.size, size = _param_size === void 0 ? 18 : _param_size;
|
|
8953
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", {
|
|
8954
|
+
width: size,
|
|
8955
|
+
height: size,
|
|
8956
|
+
viewBox: "0 0 24 24",
|
|
8957
|
+
fill: "none",
|
|
8958
|
+
stroke: "currentColor",
|
|
8959
|
+
strokeWidth: 2,
|
|
8960
|
+
strokeLinecap: "round",
|
|
8961
|
+
strokeLinejoin: "round",
|
|
8962
|
+
"aria-hidden": "true",
|
|
8963
|
+
focusable: "false",
|
|
8964
|
+
children: [
|
|
8965
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
8966
|
+
d: "M9 4H4v5"
|
|
8967
|
+
}),
|
|
8968
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
8969
|
+
d: "M20 9V4h-5"
|
|
8970
|
+
}),
|
|
8971
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
8972
|
+
d: "M15 20h5v-5"
|
|
8973
|
+
}),
|
|
8974
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
8975
|
+
d: "M4 15v5h5"
|
|
8976
|
+
})
|
|
8977
|
+
]
|
|
8978
|
+
});
|
|
8979
|
+
};
|
|
8980
|
+
var CompressIcon = function CompressIcon(param) {
|
|
8981
|
+
var _param_size = param.size, size = _param_size === void 0 ? 18 : _param_size;
|
|
8982
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", {
|
|
8983
|
+
width: size,
|
|
8984
|
+
height: size,
|
|
8985
|
+
viewBox: "0 0 24 24",
|
|
8986
|
+
fill: "none",
|
|
8987
|
+
stroke: "currentColor",
|
|
8988
|
+
strokeWidth: 2,
|
|
8989
|
+
strokeLinecap: "round",
|
|
8990
|
+
strokeLinejoin: "round",
|
|
8991
|
+
"aria-hidden": "true",
|
|
8992
|
+
focusable: "false",
|
|
8993
|
+
children: [
|
|
8994
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
8995
|
+
d: "M4 9h5V4"
|
|
8996
|
+
}),
|
|
8997
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
8998
|
+
d: "M15 4v5h5"
|
|
8999
|
+
}),
|
|
9000
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
9001
|
+
d: "M20 15h-5v5"
|
|
9002
|
+
}),
|
|
9003
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", {
|
|
9004
|
+
d: "M9 20v-5H4"
|
|
9005
|
+
})
|
|
9006
|
+
]
|
|
9007
|
+
});
|
|
9008
|
+
};
|
|
8944
9009
|
var CRITICAL_PROPS = [
|
|
8945
9010
|
"src",
|
|
8946
9011
|
"allowNativeHls",
|
|
@@ -9978,9 +10043,9 @@ var StormcloudVideoPlayerComponent = import_react.default.memo(function(props) {
|
|
|
9978
10043
|
minHeight: "".concat(36 * responsiveScale, "px")
|
|
9979
10044
|
},
|
|
9980
10045
|
title: isFullscreen2 ? "Exit Fullscreen" : "Enter Fullscreen",
|
|
9981
|
-
children: isFullscreen2 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
10046
|
+
children: isFullscreen2 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CompressIcon, {
|
|
9982
10047
|
size: Math.max(14, 18 * responsiveScale)
|
|
9983
|
-
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
10048
|
+
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ExpandIcon, {
|
|
9984
10049
|
size: Math.max(14, 18 * responsiveScale)
|
|
9985
10050
|
})
|
|
9986
10051
|
})
|
|
@@ -10179,9 +10244,9 @@ var StormcloudVideoPlayerComponent = import_react.default.memo(function(props) {
|
|
|
10179
10244
|
background: "rgba(0, 0, 0, 0.6)"
|
|
10180
10245
|
},
|
|
10181
10246
|
title: isFullscreen2 ? "Exit Fullscreen" : "Enter Fullscreen",
|
|
10182
|
-
children: isFullscreen2 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
10247
|
+
children: isFullscreen2 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CompressIcon, {
|
|
10183
10248
|
size: Math.max(14, 18 * responsiveScale)
|
|
10184
|
-
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
10249
|
+
}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ExpandIcon, {
|
|
10185
10250
|
size: Math.max(14, 18 * responsiveScale)
|
|
10186
10251
|
})
|
|
10187
10252
|
})
|