@mottosports/motto-video-player 1.0.1-rc.29 → 1.0.1-rc.30

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/index.mjs CHANGED
@@ -1107,7 +1107,7 @@ import { forwardRef, useEffect as useEffect5, useRef as useRef8, useImperativeHa
1107
1107
  import shaka3 from "shaka-player/dist/shaka-player.ui";
1108
1108
 
1109
1109
  // src/hooks/useShakePlayer.ts
1110
- import { useCallback } from "react";
1110
+ import { useRef, useCallback } from "react";
1111
1111
  import shaka from "shaka-player/dist/shaka-player.ui";
1112
1112
 
1113
1113
  // src/utils/devices.ts
@@ -1134,6 +1134,12 @@ var isPlayReadySupported = () => {
1134
1134
  return isWindows || isXbox || isEdge || isIE;
1135
1135
  };
1136
1136
 
1137
+ // src/hooks/useShakePlayer.ts
1138
+ import initShakaPlayerMux from "@mux/mux-data-shakaplayer";
1139
+
1140
+ // package.json
1141
+ var version = "1.0.1-rc.30";
1142
+
1137
1143
  // src/hooks/useShakePlayer.ts
1138
1144
  var useShakePlayer = ({
1139
1145
  src,
@@ -1141,9 +1147,11 @@ var useShakePlayer = ({
1141
1147
  drmConfig,
1142
1148
  onError,
1143
1149
  onPlayerReady,
1144
- onBeforeLoad,
1145
- playerRef
1150
+ muxConfig,
1151
+ onMuxReady,
1152
+ onMuxDataUpdate
1146
1153
  }) => {
1154
+ const playerRef = useRef(null);
1147
1155
  const initializePlayer = useCallback(async (video) => {
1148
1156
  try {
1149
1157
  shaka.polyfill.installAll();
@@ -1213,7 +1221,33 @@ var useShakePlayer = ({
1213
1221
  console.error("Shaka Player Error:", error);
1214
1222
  onError?.(new Error(`Shaka Player Error: ${error.message || "Unknown error"}`));
1215
1223
  });
1216
- onBeforeLoad?.();
1224
+ if (muxConfig) {
1225
+ try {
1226
+ const playerInitTime = initShakaPlayerMux.utils.now();
1227
+ const muxOptions = {
1228
+ debug: muxConfig.debug || false,
1229
+ disableCookies: muxConfig.disableCookies || false,
1230
+ respectDoNotTrack: muxConfig.respectDoNotTrack || false,
1231
+ automaticErrorTracking: muxConfig.automaticErrorTracking !== false,
1232
+ ...muxConfig.beaconCollectionDomain && { beaconCollectionDomain: muxConfig.beaconCollectionDomain },
1233
+ ...muxConfig.errorTranslator && { errorTranslator: muxConfig.errorTranslator },
1234
+ data: {
1235
+ env_key: muxConfig.envKey,
1236
+ player_name: muxConfig?.metadata?.player_name,
1237
+ player_version: version,
1238
+ player_init_time: playerInitTime,
1239
+ video_title: muxConfig?.metadata?.video_title ?? "",
1240
+ video_id: muxConfig?.metadata?.video_id ?? "",
1241
+ viewer_user_id: muxConfig?.metadata?.viewer_user_id ?? "",
1242
+ ...muxConfig.metadata
1243
+ }
1244
+ };
1245
+ initShakaPlayerMux(player, muxOptions, shaka);
1246
+ onMuxReady?.();
1247
+ } catch (error) {
1248
+ console.error("Failed to initialize Mux Analytics:", error);
1249
+ }
1250
+ }
1217
1251
  await player.load(manifestUrl);
1218
1252
  onPlayerReady?.(player);
1219
1253
  return player;
@@ -1225,7 +1259,7 @@ var useShakePlayer = ({
1225
1259
  onError?.(error);
1226
1260
  throw error;
1227
1261
  }
1228
- }, [shakaConfig, drmConfig, src, onError, onPlayerReady, onBeforeLoad, playerRef]);
1262
+ }, [shakaConfig, drmConfig, src, onError, onPlayerReady, muxConfig, onMuxReady]);
1229
1263
  const destroyPlayer = useCallback(async () => {
1230
1264
  if (playerRef.current) {
1231
1265
  try {
@@ -1238,6 +1272,7 @@ var useShakePlayer = ({
1238
1272
  }
1239
1273
  }, [playerRef]);
1240
1274
  return {
1275
+ playerRef,
1241
1276
  initializePlayer,
1242
1277
  destroyPlayer
1243
1278
  };
@@ -1359,19 +1394,14 @@ var useSkipControls = (videoRef, onSkipBack, onSkipForward) => {
1359
1394
 
1360
1395
  // src/hooks/useMuxAnalytics.ts
1361
1396
  import { useCallback as useCallback4, useRef as useRef3 } from "react";
1362
- import initShakaPlayerMux from "@mux/mux-data-shakaplayer";
1397
+ import initShakaPlayerMux2 from "@mux/mux-data-shakaplayer";
1363
1398
  import shaka2 from "shaka-player/dist/shaka-player.ui";
1364
-
1365
- // package.json
1366
- var version = "1.0.1-rc.29";
1367
-
1368
- // src/hooks/useMuxAnalytics.ts
1369
1399
  var useMuxAnalytics = (playerRef, muxConfig, onMuxReady, onMuxDataUpdate) => {
1370
1400
  const shakaPlayerMuxRef = useRef3(null);
1371
1401
  const initializeMux = useCallback4(() => {
1372
1402
  if (!muxConfig || !playerRef.current) return;
1373
1403
  try {
1374
- const playerInitTime = initShakaPlayerMux.utils.now();
1404
+ const playerInitTime = initShakaPlayerMux2.utils.now();
1375
1405
  const muxOptions = {
1376
1406
  debug: muxConfig.debug || false,
1377
1407
  disableCookies: muxConfig.disableCookies || false,
@@ -1390,7 +1420,7 @@ var useMuxAnalytics = (playerRef, muxConfig, onMuxReady, onMuxDataUpdate) => {
1390
1420
  ...muxConfig.metadata
1391
1421
  }
1392
1422
  };
1393
- shakaPlayerMuxRef.current = initShakaPlayerMux(playerRef.current, muxOptions, shaka2);
1423
+ shakaPlayerMuxRef.current = initShakaPlayerMux2(playerRef.current, muxOptions, shaka2);
1394
1424
  onMuxReady?.();
1395
1425
  } catch (error) {
1396
1426
  console.error("Failed to initialize Mux Analytics:", error);
@@ -3268,22 +3298,22 @@ var Player = forwardRef(
3268
3298
  const containerRef = useRef8(null);
3269
3299
  const adContainerRef = useRef8(null);
3270
3300
  useImperativeHandle(ref, () => videoRef.current, []);
3271
- const playerRef = useRef8(null);
3272
- const {
3273
- initializeMux,
3274
- updateMuxData,
3275
- handleMuxError,
3276
- destroyMux
3277
- } = useMuxAnalytics(playerRef, muxConfig, events?.onMuxReady, events?.onMuxDataUpdate);
3278
- const { initializePlayer, destroyPlayer } = useShakePlayer({
3301
+ const { playerRef, initializePlayer, destroyPlayer } = useShakePlayer({
3279
3302
  src,
3280
3303
  shakaConfig,
3281
3304
  drmConfig,
3282
3305
  onError: events?.onError,
3283
3306
  onPlayerReady: events?.onPlayerReady,
3284
- onBeforeLoad: initializeMux,
3285
- playerRef
3307
+ muxConfig,
3308
+ onMuxReady: events?.onMuxReady,
3309
+ onMuxDataUpdate: events?.onMuxDataUpdate
3286
3310
  });
3311
+ const {
3312
+ initializeMux,
3313
+ updateMuxData,
3314
+ handleMuxError,
3315
+ destroyMux
3316
+ } = useMuxAnalytics(playerRef, muxConfig, events?.onMuxReady, events?.onMuxDataUpdate);
3287
3317
  const {
3288
3318
  getAvailableQualities,
3289
3319
  setQuality,