softbuilders-react-video-player 1.2.14 → 1.2.16

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. package/dist/components/BigPlayButton/index.d.ts +4 -1
  2. package/dist/components/BigPlayButton/index.js +4 -2
  3. package/dist/components/BigPlayButton/index.js.map +1 -1
  4. package/dist/components/BigPlayButton/index.tsx +18 -3
  5. package/dist/components/ControlBar/index.d.ts +2 -1
  6. package/dist/components/ControlBar/index.js +16 -12
  7. package/dist/components/ControlBar/index.js.map +1 -1
  8. package/dist/components/ControlBar/index.tsx +58 -46
  9. package/dist/components/QualityMenu/index.d.ts +2 -1
  10. package/dist/components/QualityMenu/index.js +6 -6
  11. package/dist/components/QualityMenu/index.js.map +1 -1
  12. package/dist/components/QualityMenu/index.tsx +13 -5
  13. package/dist/components/Slider/index.js +1 -1
  14. package/dist/components/Slider/index.js.map +1 -1
  15. package/dist/components/Slider/index.tsx +36 -36
  16. package/dist/components/SoftBuildersVideoPlayer/index.d.ts +2 -0
  17. package/dist/components/SoftBuildersVideoPlayer/index.js +2 -2
  18. package/dist/components/SoftBuildersVideoPlayer/index.js.map +1 -1
  19. package/dist/components/SoftBuildersVideoPlayer/index.tsx +6 -0
  20. package/dist/components/SubtitleMenu/index.d.ts +2 -1
  21. package/dist/components/SubtitleMenu/index.js +2 -2
  22. package/dist/components/SubtitleMenu/index.js.map +1 -1
  23. package/dist/components/SubtitleMenu/index.tsx +6 -2
  24. package/dist/components/TimeSlider/index.js.map +1 -1
  25. package/dist/components/TimeSlider/index.tsx +0 -1
  26. package/dist/components/VideoPlayerComponent/index.d.ts +2 -0
  27. package/dist/components/VideoPlayerComponent/index.js +35 -20
  28. package/dist/components/VideoPlayerComponent/index.js.map +1 -1
  29. package/dist/components/VideoPlayerComponent/index.tsx +76 -41
  30. package/dist/components/VolumeSlider/index.d.ts +2 -1
  31. package/dist/components/VolumeSlider/index.js +29 -8
  32. package/dist/components/VolumeSlider/index.js.map +1 -1
  33. package/dist/components/VolumeSlider/index.tsx +57 -15
  34. package/dist/components/icons/SubIcon.js +1 -1
  35. package/dist/components/icons/SubIcon.js.map +1 -1
  36. package/dist/components/icons/SubIcon.tsx +27 -28
  37. package/dist/components/icons/VolumeHigh.d.ts +3 -0
  38. package/dist/components/icons/VolumeHigh.js +4 -0
  39. package/dist/components/icons/VolumeHigh.js.map +1 -0
  40. package/dist/components/icons/VolumeHigh.tsx +15 -0
  41. package/dist/components/icons/VolumeHighIcon.d.ts +3 -0
  42. package/dist/components/icons/VolumeHighIcon.js +4 -0
  43. package/dist/components/icons/VolumeHighIcon.js.map +1 -0
  44. package/dist/components/icons/VolumeHighIcon.tsx +16 -0
  45. package/dist/components/icons/VolumeIconHigh.d.ts +3 -0
  46. package/dist/components/icons/VolumeIconHigh.js +4 -0
  47. package/dist/components/icons/VolumeIconHigh.js.map +1 -0
  48. package/dist/components/icons/VolumeIconHigh.tsx +16 -0
  49. package/dist/components/icons/VolumeIconLow copy.d.ts +3 -0
  50. package/dist/components/icons/VolumeIconLow copy.js +4 -0
  51. package/dist/components/icons/VolumeIconLow copy.js.map +1 -0
  52. package/dist/components/icons/VolumeIconLow copy.tsx +17 -0
  53. package/dist/components/icons/VolumeLow.d.ts +3 -0
  54. package/dist/components/icons/VolumeLow.js +4 -0
  55. package/dist/components/icons/VolumeLow.js.map +1 -0
  56. package/dist/components/icons/VolumeLow.tsx +14 -0
  57. package/dist/components/icons/VolumeLowIcon.d.ts +3 -0
  58. package/dist/components/icons/VolumeLowIcon.js +4 -0
  59. package/dist/components/icons/VolumeLowIcon.js.map +1 -0
  60. package/dist/components/icons/VolumeLowIcon.tsx +15 -0
  61. package/dist/components/icons/VolumeMute.d.ts +3 -0
  62. package/dist/components/icons/VolumeMute.js +10 -0
  63. package/dist/components/icons/VolumeMute.js.map +1 -0
  64. package/dist/components/icons/VolumeMute.tsx +25 -0
  65. package/dist/components/icons/VolumeVLow.d.ts +3 -0
  66. package/dist/components/icons/VolumeVLow.js +4 -0
  67. package/dist/components/icons/VolumeVLow.js.map +1 -0
  68. package/dist/components/icons/VolumeVLow.tsx +14 -0
  69. package/dist/components/icons/index.d.ts +4 -0
  70. package/dist/components/icons/index.js +4 -0
  71. package/dist/components/icons/index.js.map +1 -1
  72. package/dist/components/icons/index.ts +19 -15
  73. package/dist/index.css +17 -2
  74. package/dist/index.d.mts +4 -1
  75. package/dist/index.mjs +370 -262
  76. package/dist/styles/tailwind.css +17 -2
  77. package/dist/types.d.ts +2 -1
  78. package/package.json +2 -1
package/dist/index.mjs CHANGED
@@ -352,31 +352,6 @@ var LeftArrowIcon_default = SvgLeftArrowIcon;
352
352
 
353
353
  // src/components/icons/MuteIcon.tsx
354
354
  import { jsx as jsx10, jsxs } from "react/jsx-runtime";
355
- var SvgMuteIcon = (props) => /* @__PURE__ */ jsxs(
356
- "svg",
357
- __spreadProps(__spreadValues({
358
- xmlns: "http://www.w3.org/2000/svg",
359
- width: "1em",
360
- height: "1em",
361
- fill: "none",
362
- viewBox: "0 0 17 13"
363
- }, props), {
364
- children: [
365
- /* @__PURE__ */ jsx10("path", { fill: "#FFF", d: "M7.925 1.5 4.59 4.357H1.925v4.286H4.59L7.925 11.5z" }),
366
- /* @__PURE__ */ jsx10(
367
- "path",
368
- {
369
- stroke: "#E5E7EB",
370
- strokeLinecap: "round",
371
- strokeLinejoin: "round",
372
- strokeWidth: 2,
373
- d: "m15.925 4.357-4 4.286m0-4.286 4 4.286m-8-7.143L4.59 4.357H1.925v4.286H4.59L7.925 11.5z"
374
- }
375
- )
376
- ]
377
- })
378
- );
379
- var MuteIcon_default = SvgMuteIcon;
380
355
 
381
356
  // src/components/icons/NoteIcon.tsx
382
357
  import { jsx as jsx11 } from "react/jsx-runtime";
@@ -447,58 +422,32 @@ var SvgSettingsIcon = (props) => /* @__PURE__ */ jsx15(
447
422
  );
448
423
  var SettingsIcon_default = SvgSettingsIcon;
449
424
 
450
- // src/components/icons/UnmuteIcon.tsx
451
- import { jsx as jsx16 } from "react/jsx-runtime";
452
- var SvgUnmuteIcon = (props) => /* @__PURE__ */ jsx16(
453
- "svg",
454
- __spreadProps(__spreadValues({
455
- xmlns: "http://www.w3.org/2000/svg",
456
- width: "1em",
457
- height: "1em",
458
- fill: "none",
459
- viewBox: "0 0 8 15"
460
- }, props), {
461
- children: /* @__PURE__ */ jsx16(
462
- "path",
463
- {
464
- fill: "#FFF",
465
- d: "M7.659 14.275h-.001l-3.979-3.251a.16.16 0 0 0-.104-.035H2.252A1.33 1.33 0 0 1 .924 9.66V5.32A1.33 1.33 0 0 1 2.252 3.99h1.323a.16.16 0 0 0 .101-.035L7.66.725a.163.163 0 0 1 .265.126v13.297a.162.162 0 0 1-.264.127z"
466
- }
467
- )
468
- })
469
- );
470
- var UnmuteIcon_default = SvgUnmuteIcon;
471
-
472
- // src/components/icons/SubtitlesIcon.tsx
473
- import { jsx as jsx17, jsxs as jsxs2 } from "react/jsx-runtime";
474
-
475
425
  // src/components/icons/SubIcon.tsx
476
- import { jsx as jsx18, jsxs as jsxs3 } from "react/jsx-runtime";
477
- var SvgSubIcon = (props) => /* @__PURE__ */ jsxs3(
426
+ import { jsx as jsx16, jsxs as jsxs2 } from "react/jsx-runtime";
427
+ var SvgSubIcon = (props) => /* @__PURE__ */ jsxs2(
478
428
  "svg",
479
429
  __spreadProps(__spreadValues({
480
430
  xmlns: "http://www.w3.org/2000/svg",
481
431
  width: "1em",
482
432
  height: "1em",
483
433
  fill: "none",
484
- stroke: "currentColor",
485
434
  viewBox: "0 0 15 15"
486
435
  }, props), {
487
436
  children: [
488
- /* @__PURE__ */ jsx18(
437
+ /* @__PURE__ */ jsx16(
489
438
  "path",
490
439
  {
491
- stroke: "currentColor",
440
+ stroke: "#D1D5DB",
492
441
  strokeLinecap: "round",
493
442
  strokeLinejoin: "round",
494
443
  strokeWidth: 1.5,
495
444
  d: "M1.25 7.5c0-2.487 0-3.731.658-4.561q.159-.2.346-.367c.785-.697 1.96-.697 4.309-.697h1.875c2.349 0 3.523 0 4.307.697q.19.168.347.367c.658.83.658 2.074.658 4.561s0 3.731-.658 4.561q-.157.2-.347.367c-.784.697-1.957.697-4.307.697H6.562c-2.349 0-3.523 0-4.308-.697a3 3 0 0 1-.346-.367c-.658-.83-.658-2.073-.658-4.561"
496
445
  }
497
446
  ),
498
- /* @__PURE__ */ jsx18(
447
+ /* @__PURE__ */ jsx16(
499
448
  "path",
500
449
  {
501
- stroke: "currentColor",
450
+ stroke: "#D1D5DB",
502
451
  strokeLinecap: "round",
503
452
  strokeLinejoin: "round",
504
453
  strokeWidth: 1.5,
@@ -510,15 +459,105 @@ var SvgSubIcon = (props) => /* @__PURE__ */ jsxs3(
510
459
  );
511
460
  var SubIcon_default = SvgSubIcon;
512
461
 
513
- // src/components/VolumeSlider/index.tsx
462
+ // src/components/icons/SubtitlesIcon.tsx
463
+ import { jsx as jsx17, jsxs as jsxs3 } from "react/jsx-runtime";
464
+
465
+ // src/components/icons/UnmuteIcon.tsx
466
+ import { jsx as jsx18 } from "react/jsx-runtime";
467
+
468
+ // src/components/icons/VolumeHigh.tsx
514
469
  import { jsx as jsx19, jsxs as jsxs4 } from "react/jsx-runtime";
470
+ var SvgVolumeHigh = (props) => /* @__PURE__ */ jsxs4(
471
+ "svg",
472
+ __spreadProps(__spreadValues({
473
+ xmlns: "http://www.w3.org/2000/svg",
474
+ width: "1em",
475
+ height: "1em",
476
+ fill: "#fff",
477
+ viewBox: "0 0 512 512"
478
+ }, props), {
479
+ children: [
480
+ /* @__PURE__ */ jsx19("path", { d: "M264 416.19a23.92 23.92 0 0 1-14.21-4.69l-.66-.51-91.46-75H88a24 24 0 0 1-24-24V200a24 24 0 0 1 24-24h69.65l91.46-75 .66-.51A24 24 0 0 1 288 119.83v272.34a24 24 0 0 1-24 24ZM352 336a16 16 0 0 1-14.29-23.18c9.49-18.9 14.3-38 14.3-56.82 0-19.36-4.66-37.92-14.25-56.73a16 16 0 0 1 28.5-14.54C378.2 208.16 384 231.47 384 256c0 23.83-6 47.78-17.7 71.18A16 16 0 0 1 352 336" }),
481
+ /* @__PURE__ */ jsx19("path", { d: "M400 384a16 16 0 0 1-13.87-24C405 327.05 416 299.45 416 256c0-44.12-10.94-71.52-29.83-103.95A16 16 0 0 1 413.83 136C434.92 172.16 448 204.88 448 256c0 50.36-13.06 83.24-34.12 120a16 16 0 0 1-13.88 8" })
482
+ ]
483
+ })
484
+ );
485
+ var VolumeHigh_default = SvgVolumeHigh;
486
+
487
+ // src/components/icons/VolumeLow.tsx
488
+ import { jsx as jsx20 } from "react/jsx-runtime";
489
+ var SvgVolumeLow = (props) => /* @__PURE__ */ jsx20(
490
+ "svg",
491
+ __spreadProps(__spreadValues({
492
+ xmlns: "http://www.w3.org/2000/svg",
493
+ width: "1em",
494
+ height: "1em",
495
+ fill: "#fff",
496
+ viewBox: "0 0 512 512"
497
+ }, props), {
498
+ children: /* @__PURE__ */ jsx20("path", { d: "M296 416.19a23.92 23.92 0 0 1-14.21-4.69l-.66-.51-91.46-75H120a24 24 0 0 1-24-24V200a24 24 0 0 1 24-24h69.65l91.46-75 .66-.51A24 24 0 0 1 320 119.83v272.34a24 24 0 0 1-24 24ZM384 336a16 16 0 0 1-14.29-23.18c9.49-18.9 14.3-38 14.3-56.82 0-19.36-4.66-37.92-14.25-56.73a16 16 0 0 1 28.5-14.54C410.2 208.16 416 231.47 416 256c0 23.83-6 47.78-17.7 71.18A16 16 0 0 1 384 336" })
499
+ })
500
+ );
501
+ var VolumeLow_default = SvgVolumeLow;
502
+
503
+ // src/components/icons/VolumeMute.tsx
504
+ import { jsx as jsx21, jsxs as jsxs5 } from "react/jsx-runtime";
505
+ var SvgVolumeMute = (props) => /* @__PURE__ */ jsxs5(
506
+ "svg",
507
+ __spreadProps(__spreadValues({
508
+ xmlns: "http://www.w3.org/2000/svg",
509
+ width: "1em",
510
+ height: "1em",
511
+ fill: "#fff",
512
+ viewBox: "0 0 512 512"
513
+ }, props), {
514
+ children: [
515
+ /* @__PURE__ */ jsx21(
516
+ "path",
517
+ {
518
+ d: "M416 432 64 80",
519
+ style: {
520
+ fill: "none",
521
+ stroke: "#fff",
522
+ strokeLinecap: "round",
523
+ strokeMiterlimit: 10,
524
+ strokeWidth: 32
525
+ }
526
+ }
527
+ ),
528
+ /* @__PURE__ */ jsx21("path", { d: "M243.33 98.86a23.89 23.89 0 0 0-25.55 1.82l-.66.51-28.52 23.35a8 8 0 0 0-.59 11.85l54.33 54.33a8 8 0 0 0 13.66-5.66v-64.49a24.51 24.51 0 0 0-12.67-21.71M251.33 335.29 96.69 180.69A16 16 0 0 0 85.38 176H56a24 24 0 0 0-24 24v112a24 24 0 0 0 24 24h69.76l92 75.31a23.9 23.9 0 0 0 25.87 1.69A24.51 24.51 0 0 0 256 391.45v-44.86a16 16 0 0 0-4.67-11.3M352 256c0-24.56-5.81-47.87-17.75-71.27a16 16 0 1 0-28.5 14.55C315.34 218.06 320 236.62 320 256q0 4-.31 8.13a8 8 0 0 0 2.32 6.25l14.36 14.36a8 8 0 0 0 13.55-4.31A146 146 0 0 0 352 256M416 256c0-51.18-13.08-83.89-34.18-120.06a16 16 0 0 0-27.64 16.12C373.07 184.44 384 211.83 384 256c0 23.83-3.29 42.88-9.37 60.65a8 8 0 0 0 1.9 8.26L389 337.4a8 8 0 0 0 13.13-2.79C411 311.76 416 287.26 416 256" }),
529
+ /* @__PURE__ */ jsx21("path", { d: "M480 256c0-74.25-20.19-121.11-50.51-168.61a16 16 0 1 0-27 17.22C429.82 147.38 448 189.5 448 256c0 46.19-8.43 80.27-22.43 110.53a8 8 0 0 0 1.59 9l11.92 11.92a8 8 0 0 0 12.92-2.16C471.6 344.9 480 305 480 256" })
530
+ ]
531
+ })
532
+ );
533
+ var VolumeMute_default = SvgVolumeMute;
534
+
535
+ // src/components/icons/VolumeVLow.tsx
536
+ import { jsx as jsx22 } from "react/jsx-runtime";
537
+ var SvgVolumeVLow = (props) => /* @__PURE__ */ jsx22(
538
+ "svg",
539
+ __spreadProps(__spreadValues({
540
+ xmlns: "http://www.w3.org/2000/svg",
541
+ width: "1em",
542
+ height: "1em",
543
+ fill: "#fff",
544
+ viewBox: "0 0 512 512"
545
+ }, props), {
546
+ children: /* @__PURE__ */ jsx22("path", { d: "M344 416a23.92 23.92 0 0 1-14.21-4.69c-.23-.16-.44-.33-.66-.51l-91.46-74.9H168a24 24 0 0 1-24-24V200.07a24 24 0 0 1 24-24h69.65l91.46-74.9c.22-.18.43-.35.66-.51A24 24 0 0 1 368 120v272a24 24 0 0 1-24 24" })
547
+ })
548
+ );
549
+ var VolumeVLow_default = SvgVolumeVLow;
550
+
551
+ // src/components/VolumeSlider/index.tsx
552
+ import { jsx as jsx23, jsxs as jsxs6 } from "react/jsx-runtime";
515
553
  var MIN = 0;
516
554
  var MAX = 100;
517
555
  var VolumeSlider = ({
518
556
  width = 0,
519
557
  setIsSeeking,
520
558
  handleControlDisplayTimer,
521
- volumeSliderToggler
559
+ volumeSliderToggler,
560
+ isTrailer
522
561
  }) => {
523
562
  const { player } = useSoftBuildersVideoPlayerContext();
524
563
  const [isVisible, setVisible] = useState2(false);
@@ -534,6 +573,20 @@ var VolumeSlider = ({
534
573
  player == null ? void 0 : player.off("volumechange", updateVolumeState);
535
574
  };
536
575
  }, [player]);
576
+ const handleVolumeSliderClick = (e) => {
577
+ e.stopPropagation();
578
+ const slider = e.currentTarget;
579
+ const rect = slider.getBoundingClientRect();
580
+ const offsetX = e.clientY - rect.top;
581
+ const newVolume = offsetX / rect.height * 100;
582
+ setVolume(newVolume);
583
+ player == null ? void 0 : player.volume(newVolume / 100);
584
+ if (newVolume === 0) {
585
+ player == null ? void 0 : player.muted(true);
586
+ } else {
587
+ player == null ? void 0 : player.muted(false);
588
+ }
589
+ };
537
590
  const timeoutRef = React2.useRef(null);
538
591
  useEffect2(() => {
539
592
  setVisible(false);
@@ -549,7 +602,7 @@ var VolumeSlider = ({
549
602
  if (volume == 0 && !isVisible) {
550
603
  setVolume(60);
551
604
  player == null ? void 0 : player.volume(0.6);
552
- player == null ? void 0 : player.muted(false);
605
+ player && (player == null ? void 0 : player.muted(false));
553
606
  }
554
607
  setVisible((prev) => !prev);
555
608
  timeoutRef.current = setTimeout(() => {
@@ -563,46 +616,62 @@ var VolumeSlider = ({
563
616
  setVolume(newVolume);
564
617
  player == null ? void 0 : player.volume(newVolume / 100);
565
618
  if (newVolume === 0) {
566
- player == null ? void 0 : player.muted(true);
619
+ player && (player == null ? void 0 : player.muted(true));
567
620
  } else {
568
- player == null ? void 0 : player.muted(false);
621
+ player && (player == null ? void 0 : player.muted(false));
569
622
  }
570
623
  };
571
- return /* @__PURE__ */ jsxs4(
624
+ const handleDoubleClick = (e) => {
625
+ setVolume(0);
626
+ player == null ? void 0 : player.muted(true);
627
+ };
628
+ return /* @__PURE__ */ jsxs6(
572
629
  "div",
573
630
  {
574
- className: `sb-flex ${isVisible ? "" : ""} ${width > 400 ? "sb-flex-col-reverse" : "sb-flex-col !sb-justify-start"} sb-items-center sb-gap-1 sb-h-full`,
631
+ className: `sb-flex ${isVisible ? "" : ""} ${width > 400 && !isTrailer ? "sb-flex-col-reverse" : `sb-flex-col ${isTrailer ? "sb-justify-start" : ""}`} sb-items-center sb-gap-1 sb-h-full`,
575
632
  children: [
576
- /* @__PURE__ */ jsx19(
633
+ /* @__PURE__ */ jsx23(
577
634
  "div",
578
635
  {
579
- className: `sb-flex sb-relative ${width < 400 ? "-sb-top-1" : "sb-top-1"}`,
636
+ className: `sb-flex sb-relative ${width < 400 || isTrailer ? "-sb-top-1" : "sb-top-1"}`,
580
637
  onClick: toggleVisibility,
581
- children: volume == 0 || (player == null ? void 0 : player.muted()) ? /* @__PURE__ */ jsx19(
582
- MuteIcon_default,
638
+ onDoubleClick: handleDoubleClick,
639
+ children: volume == 0 || (player == null ? void 0 : player.muted()) ? /* @__PURE__ */ jsx23(
640
+ VolumeMute_default,
583
641
  {
584
- className: `sb-w-3 sb-h-3 ${width < 400 ? "" : ""} sb-h-5 sb-w-5`
642
+ className: `sb-w-3 sb-h-3 ${width < 400 || isTrailer ? "" : ""} sb-h-5 sb-w-5`
585
643
  }
586
- ) : /* @__PURE__ */ jsx19(
587
- UnmuteIcon_default,
644
+ ) : volume < 25 ? /* @__PURE__ */ jsx23(
645
+ VolumeVLow_default,
588
646
  {
589
- className: `sb-w-3 sb-h-3 ${width < 400 ? "" : ""} sb-h-5 sb-w-5`
647
+ className: `sb-w-3 sb-h-3 ${width < 400 || isTrailer ? "" : ""} sb-h-5 sb-w-5`
648
+ }
649
+ ) : volume < 50 ? /* @__PURE__ */ jsx23(
650
+ VolumeLow_default,
651
+ {
652
+ className: `sb-w-3 sb-h-3 ${width < 400 || isTrailer ? "" : ""} sb-h-5 sb-w-5`
653
+ }
654
+ ) : /* @__PURE__ */ jsx23(
655
+ VolumeHigh_default,
656
+ {
657
+ className: `sb-w-3 sb-h-3 ${width < 400 || isTrailer ? "" : ""} sb-h-5 sb-w-5`
590
658
  }
591
659
  )
592
660
  }
593
661
  ),
594
- /* @__PURE__ */ jsx19("div", { className: "sb-flex sb-items-center sb-justify-center", children: /* @__PURE__ */ jsx19(
662
+ /* @__PURE__ */ jsx23("div", { className: "sb-flex sb-w-fit sb-h-fit sb-items-center sb-justify-center", children: /* @__PURE__ */ jsx23(
595
663
  "div",
596
664
  {
597
- className: `sb-transition-all sb-ease-in-out sb-duration-500 ${isVisible ? "sb-w-[22px] sb-opacity-100 sb-visible" : "sb-w-[22px] sb-opacity-0 sb-invisible"} ${width > 400 ? "-sb-rotate-90 -sb-translate-y-1" : "sb-rotate-90 sb-translate-y-1"} sb-relative`,
598
- children: /* @__PURE__ */ jsx19(
665
+ className: `sb-p-1 !sb-h-fit sb-transition-all sb-ease-in-out sb-duration-500 ${isVisible ? "sb-w-[22px] sb-opacity-100 sb-visible" : "sb-w-[22px] sb-opacity-0 sb-invisible"} ${width > 400 && !isTrailer ? "-sb-rotate-90 -sb-translate-y-1" : "sb-rotate-90 sb-translate-y-1"} sb-relative`,
666
+ children: /* @__PURE__ */ jsx23(
599
667
  Slider_default,
600
668
  {
601
669
  value: volume,
602
670
  handleValueChange,
603
671
  min: MIN,
604
672
  max: MAX,
605
- className: "!sb-w-16"
673
+ className: "!sb-w-16 ",
674
+ handleSliderClick: handleVolumeSliderClick
606
675
  }
607
676
  )
608
677
  }
@@ -618,7 +687,7 @@ import { useEffect as useEffect4, useState as useState4 } from "react";
618
687
 
619
688
  // src/components/MenuButton/index.tsx
620
689
  import { useCallback, useEffect as useEffect3, useRef, useState as useState3 } from "react";
621
- import { jsx as jsx20, jsxs as jsxs5 } from "react/jsx-runtime";
690
+ import { jsx as jsx24, jsxs as jsxs7 } from "react/jsx-runtime";
622
691
  var MenuButton = ({
623
692
  buttonContent,
624
693
  menuContent,
@@ -653,14 +722,14 @@ var MenuButton = ({
653
722
  useEffect3(() => {
654
723
  setNoteOpen && setNoteOpen(isOpen);
655
724
  }, [isOpen]);
656
- return /* @__PURE__ */ jsxs5(
725
+ return /* @__PURE__ */ jsxs7(
657
726
  "div",
658
727
  {
659
728
  onMouseEnter,
660
729
  onMouseLeave,
661
730
  className: "sb-relative sb-flex sb-items-end",
662
731
  children: [
663
- /* @__PURE__ */ jsx20(
732
+ /* @__PURE__ */ jsx24(
664
733
  "button",
665
734
  {
666
735
  ref: buttonRef,
@@ -676,7 +745,7 @@ var MenuButton = ({
676
745
  children: buttonContent
677
746
  }
678
747
  ),
679
- !disablePopUp && isOpen && /* @__PURE__ */ jsx20(
748
+ !disablePopUp && isOpen && /* @__PURE__ */ jsx24(
680
749
  "div",
681
750
  {
682
751
  ref: menuRef,
@@ -694,31 +763,32 @@ var MenuButton = ({
694
763
  var MenuButton_default = MenuButton;
695
764
 
696
765
  // src/components/QualityMenu/index.tsx
697
- import { jsx as jsx21, jsxs as jsxs6 } from "react/jsx-runtime";
766
+ import { jsx as jsx25, jsxs as jsxs8 } from "react/jsx-runtime";
698
767
  var QualityOption = ({
699
768
  isSelected,
700
769
  quality,
701
770
  onClick,
702
- width
771
+ width,
772
+ isTrailer
703
773
  }) => {
704
- return /* @__PURE__ */ jsx21(
774
+ return /* @__PURE__ */ jsx25(
705
775
  "button",
706
776
  {
707
- className: `hover:sb-text-orange-500 ${width > 400 ? "sb-p-2" : "sp-pb-1"}`,
777
+ className: `hover:sb-text-orange-500 ${width > 400 && !isTrailer ? "sb-p-2" : "sp-pb-1"}`,
708
778
  onClick,
709
- children: /* @__PURE__ */ jsxs6("div", { className: "sb-grid sb-grid-cols-12 sb-items-center sb-gap-2", children: [
710
- /* @__PURE__ */ jsx21("div", { className: "sb-col-span-3", children: isSelected ? /* @__PURE__ */ jsx21(
779
+ children: /* @__PURE__ */ jsxs8("div", { className: "sb-grid sb-grid-cols-12 sb-items-center sb-gap-2", children: [
780
+ /* @__PURE__ */ jsx25("div", { className: "sb-col-span-3", children: isSelected ? /* @__PURE__ */ jsx25(
711
781
  CheckedIcon_default,
712
782
  {
713
- className: `${width > 400 ? "sb-w-5 sb-h-5" : "sb-w-3 sb-h-3"}`
783
+ className: `${width > 400 && !isTrailer ? "sb-w-5 sb-h-5" : "sb-w-3 sb-h-3"}`
714
784
  }
715
- ) : /* @__PURE__ */ jsx21("div", {}) }),
716
- /* @__PURE__ */ jsx21("p", { className: "sb-text-left sb-col-span-9", children: quality == null ? void 0 : quality.label })
785
+ ) : /* @__PURE__ */ jsx25("div", {}) }),
786
+ /* @__PURE__ */ jsx25("p", { className: "sb-text-left sb-col-span-9", children: quality == null ? void 0 : quality.label })
717
787
  ] })
718
788
  }
719
789
  );
720
790
  };
721
- var QualityMenu = ({ width, onClick }) => {
791
+ var QualityMenu = ({ width, onClick, isTrailer }) => {
722
792
  const { player } = useSoftBuildersVideoPlayerContext();
723
793
  const [closeMenuFunction, setCloseMenuFunction] = useState4(void 0);
724
794
  const [qualities, setQualities] = useState4(
@@ -742,25 +812,25 @@ var QualityMenu = ({ width, onClick }) => {
742
812
  }
743
813
  }
744
814
  }, [player]);
745
- return /* @__PURE__ */ jsx21(
815
+ return /* @__PURE__ */ jsx25(
746
816
  MenuButton_default,
747
817
  {
748
- classContainer: `${width < 400 ? "!sb-top-8 -sb-left-9" : ""}`,
818
+ classContainer: `${width < 400 || isTrailer ? "!sb-top-8 -sb-left-9" : ""}`,
749
819
  onClick: (e, isOpen) => {
750
820
  onClick && onClick(e, isOpen);
751
821
  },
752
- buttonContent: /* @__PURE__ */ jsx21(SettingsIcon_default, { className: "sb-w-3 sb-h-3" }),
753
- menuContent: /* @__PURE__ */ jsx21(
822
+ buttonContent: /* @__PURE__ */ jsx25(SettingsIcon_default, { className: "sb-w-3 sb-h-3" }),
823
+ menuContent: /* @__PURE__ */ jsx25(
754
824
  "div",
755
825
  {
756
- className: `sb-rounded-md sb-bg-[#303030] sb-bg-opacity-50 ${width > 400 ? "sb-w-[150px] sb-py-5" : "sb-w-[90px] sb-items-center sb-justify-center sb-py-1"}`,
757
- children: /* @__PURE__ */ jsxs6("div", { className: "sb-flex sb-flex-col sb-gap-3", children: [
758
- /* @__PURE__ */ jsxs6(
826
+ className: `sb-rounded-md sb-bg-[#303030] sb-bg-opacity-50 ${width > 400 && !isTrailer ? "sb-w-[150px] sb-py-5" : "sb-w-[90px] sb-items-center sb-justify-center sb-py-1"}`,
827
+ children: /* @__PURE__ */ jsxs8("div", { className: "sb-flex sb-flex-col sb-gap-3", children: [
828
+ /* @__PURE__ */ jsxs8(
759
829
  "div",
760
830
  {
761
831
  className: `sb-px-5 sb-flex sb-flex-row sb-gap-3 sb-items-start sb-relative sb-top-2`,
762
832
  children: [
763
- /* @__PURE__ */ jsx21(
833
+ /* @__PURE__ */ jsx25(
764
834
  "button",
765
835
  {
766
836
  onClick: () => {
@@ -769,19 +839,20 @@ var QualityMenu = ({ width, onClick }) => {
769
839
  }
770
840
  },
771
841
  className: "hover:sb-scale-150",
772
- children: /* @__PURE__ */ jsx21(LeftArrowIcon_default, { className: "sb-w-3 sb-h-3" })
842
+ children: /* @__PURE__ */ jsx25(LeftArrowIcon_default, { className: "sb-w-3 sb-h-3" })
773
843
  }
774
844
  ),
775
- /* @__PURE__ */ jsx21("h3", { children: "Quality" })
845
+ /* @__PURE__ */ jsx25("h3", { children: "Quality" })
776
846
  ]
777
847
  }
778
848
  ),
779
- /* @__PURE__ */ jsx21("div", { className: "sb-w-full sb-h-[.1px] sb-bg-[#AAAAAA] sb-bg-opacity-70" }),
780
- /* @__PURE__ */ jsx21("div", { className: "sb-px-5 sb-flex sb-flex-col sb-gap-3 sb-items-start ", children: qualities == null ? void 0 : qualities.map((q, i) => {
781
- return /* @__PURE__ */ jsx21(
849
+ /* @__PURE__ */ jsx25("div", { className: "sb-w-full sb-h-[.1px] sb-bg-[#AAAAAA] sb-bg-opacity-70" }),
850
+ /* @__PURE__ */ jsx25("div", { className: "sb-px-5 sb-flex sb-flex-col sb-gap-3 sb-items-start ", children: qualities == null ? void 0 : qualities.map((q, i) => {
851
+ return /* @__PURE__ */ jsx25(
782
852
  QualityOption,
783
853
  {
784
854
  width,
855
+ isTrailer,
785
856
  isSelected: currentQualitySrc === (q == null ? void 0 : q.label),
786
857
  quality: q,
787
858
  onClick: () => {
@@ -813,7 +884,7 @@ var QualityMenu_default = QualityMenu;
813
884
 
814
885
  // src/components/CreateNoteMenu/index.tsx
815
886
  import React5, { useState as useState5 } from "react";
816
- import { jsx as jsx22, jsxs as jsxs7 } from "react/jsx-runtime";
887
+ import { jsx as jsx26, jsxs as jsxs9 } from "react/jsx-runtime";
817
888
  var CreateNoteMenu = ({
818
889
  handleSaveNoteAction,
819
890
  width,
@@ -836,7 +907,7 @@ var CreateNoteMenu = ({
836
907
  );
837
908
  }
838
909
  };
839
- return /* @__PURE__ */ jsx22(
910
+ return /* @__PURE__ */ jsx26(
840
911
  MenuButton_default,
841
912
  {
842
913
  onMouseEnter,
@@ -845,21 +916,21 @@ var CreateNoteMenu = ({
845
916
  noteButtonClick,
846
917
  setNoteOpen,
847
918
  classContainer: `${width < 400 ? "!sb-top-8 -sb-left-[9.75rem]" : ""}`,
848
- buttonContent: /* @__PURE__ */ jsx22(ClosedNoteIcon_default, { className: "sb-w-3 sb-h-3" }),
849
- menuContent: /* @__PURE__ */ jsx22(
919
+ buttonContent: /* @__PURE__ */ jsx26(ClosedNoteIcon_default, { className: "sb-w-3 sb-h-3" }),
920
+ menuContent: /* @__PURE__ */ jsx26(
850
921
  "div",
851
922
  {
852
923
  className: `sb-rounded-md sb-bg-[#303030] sb-bg-opacity-50 ${width > 400 ? " sb-py-5 sb-w-[220px]" : "sb-py-1 sb-w-[150px]"}`,
853
- children: /* @__PURE__ */ jsxs7(
924
+ children: /* @__PURE__ */ jsxs9(
854
925
  "div",
855
926
  {
856
927
  className: "sb-flex sb-flex-col sb-gap-3 sb-items-center sb-justify-center",
857
928
  onClick: (e) => e.stopPropagation(),
858
929
  children: [
859
- /* @__PURE__ */ jsx22("h3", { className: "sb-px-5", children: "Add Note" }),
860
- /* @__PURE__ */ jsx22("div", { className: "sb-w-full sb-h-[.1px] sb-bg-[#AAAAAA] sb-bg-opacity-70" }),
861
- /* @__PURE__ */ jsxs7("div", { className: "sb-px-5 sb-flex sb-flex-col sb-gap-4 sb-items-start", children: [
862
- /* @__PURE__ */ jsx22(
930
+ /* @__PURE__ */ jsx26("h3", { className: "sb-px-5", children: "Add Note" }),
931
+ /* @__PURE__ */ jsx26("div", { className: "sb-w-full sb-h-[.1px] sb-bg-[#AAAAAA] sb-bg-opacity-70" }),
932
+ /* @__PURE__ */ jsxs9("div", { className: "sb-px-5 sb-flex sb-flex-col sb-gap-4 sb-items-start", children: [
933
+ /* @__PURE__ */ jsx26(
863
934
  "input",
864
935
  {
865
936
  onClick: (e) => e.stopPropagation(),
@@ -872,7 +943,7 @@ var CreateNoteMenu = ({
872
943
  className: "sb-text-white placeholder:sb-text-white sb-w-full sb-bg-transparent sb-px-4 sb-py-3 sb-border sb-border-[#AAAAAA] sb-rounded-md"
873
944
  }
874
945
  ),
875
- /* @__PURE__ */ jsx22("button", { className: "sb-w-full", onClick: handleSaveNote, children: /* @__PURE__ */ jsx22("div", { className: "sb-px-4 sb-py-3 sb-text-center sb-font-bold sb-bg-orange-500 sb-rounded-md", children: "Save" }) })
946
+ /* @__PURE__ */ jsx26("button", { className: "sb-w-full", onClick: handleSaveNote, children: /* @__PURE__ */ jsx26("div", { className: "sb-px-4 sb-py-3 sb-text-center sb-font-bold sb-bg-orange-500 sb-rounded-md", children: "Save" }) })
876
947
  ] })
877
948
  ]
878
949
  }
@@ -891,10 +962,10 @@ import { useEffect as useEffect6, useState as useState7 } from "react";
891
962
  import { useState as useState6 } from "react";
892
963
 
893
964
  // src/components/Tooltip/index.tsx
894
- import { jsx as jsx23 } from "react/jsx-runtime";
965
+ import { jsx as jsx27 } from "react/jsx-runtime";
895
966
  var Tooltip = ({ open, children }) => {
896
967
  if (!open) return null;
897
- return /* @__PURE__ */ jsx23(
968
+ return /* @__PURE__ */ jsx27(
898
969
  "div",
899
970
  {
900
971
  className: "sb-absolute sb-bottom-full sb-mb-2 sb-left-1/2 sb-transform sb--translate-x-1/2 sb-z-10 sb-whitespace-nowrap",
@@ -905,14 +976,14 @@ var Tooltip = ({ open, children }) => {
905
976
  var Tooltip_default = Tooltip;
906
977
 
907
978
  // src/components/NoteTooltip/index.tsx
908
- import { jsx as jsx24, jsxs as jsxs8 } from "react/jsx-runtime";
979
+ import { jsx as jsx28, jsxs as jsxs10 } from "react/jsx-runtime";
909
980
  var NoteTooltip = ({ note }) => {
910
981
  const [open, setOpen] = useState6(false);
911
982
  const { currentTime, player } = useSoftBuildersVideoPlayerContext();
912
983
  const handleValueChange = () => {
913
984
  player == null ? void 0 : player.currentTime(note.time);
914
985
  };
915
- return /* @__PURE__ */ jsx24(
986
+ return /* @__PURE__ */ jsx28(
916
987
  "div",
917
988
  {
918
989
  onClick: handleValueChange,
@@ -920,9 +991,9 @@ var NoteTooltip = ({ note }) => {
920
991
  style: { left: `${note == null ? void 0 : note.percentage}%` },
921
992
  onMouseEnter: () => setOpen(true),
922
993
  onMouseLeave: () => setOpen(false),
923
- children: /* @__PURE__ */ jsx24("div", { className: "sb-relative", children: /* @__PURE__ */ jsx24(Tooltip_default, { open, children: /* @__PURE__ */ jsxs8("div", { className: "sb-flex sb-flex-col sb-gap-2 sb-items-center", children: [
924
- /* @__PURE__ */ jsx24("p", { children: note == null ? void 0 : note.label }),
925
- /* @__PURE__ */ jsx24("p", { className: "sb-p-2 sb-bg-[#303030] sb-bg-opacity-50 sb-rounded-md", children: durationFormater(note.time) })
994
+ children: /* @__PURE__ */ jsx28("div", { className: "sb-relative", children: /* @__PURE__ */ jsx28(Tooltip_default, { open, children: /* @__PURE__ */ jsxs10("div", { className: "sb-flex sb-flex-col sb-gap-2 sb-items-center", children: [
995
+ /* @__PURE__ */ jsx28("p", { children: note == null ? void 0 : note.label }),
996
+ /* @__PURE__ */ jsx28("p", { className: "sb-p-2 sb-bg-[#303030] sb-bg-opacity-50 sb-rounded-md", children: durationFormater(note.time) })
926
997
  ] }) }) })
927
998
  }
928
999
  );
@@ -930,7 +1001,7 @@ var NoteTooltip = ({ note }) => {
930
1001
  var NoteTooltip_default = NoteTooltip;
931
1002
 
932
1003
  // src/components/NotesPanal/index.tsx
933
- import { jsx as jsx25 } from "react/jsx-runtime";
1004
+ import { jsx as jsx29 } from "react/jsx-runtime";
934
1005
  var NotesPanal = ({ notes }) => {
935
1006
  const [ns, setNs] = useState7([]);
936
1007
  const { duration } = useSoftBuildersVideoPlayerContext();
@@ -943,7 +1014,7 @@ var NotesPanal = ({ notes }) => {
943
1014
  });
944
1015
  newNs && setNs(newNs);
945
1016
  }, [notes, duration]);
946
- return /* @__PURE__ */ jsx25("div", { id: "notes-panal", className: "sb-w-full sb-h-full sb-relative ", children: ns.map((n, i) => /* @__PURE__ */ jsx25(NoteTooltip_default, { note: n }, `note-${i}-${n.time}`)) });
1017
+ return /* @__PURE__ */ jsx29("div", { id: "notes-panal", className: "sb-w-full sb-h-full sb-relative ", children: ns.map((n, i) => /* @__PURE__ */ jsx29(NoteTooltip_default, { note: n }, `note-${i}-${n.time}`)) });
947
1018
  };
948
1019
  var NotesPanal_default = NotesPanal;
949
1020
 
@@ -952,7 +1023,7 @@ import { useEffect as useEffect8, useState as useState9 } from "react";
952
1023
 
953
1024
  // src/components/ChapterTooltip/index.tsx
954
1025
  import { useEffect as useEffect7, useState as useState8 } from "react";
955
- import { jsx as jsx26, jsxs as jsxs9 } from "react/jsx-runtime";
1026
+ import { jsx as jsx30, jsxs as jsxs11 } from "react/jsx-runtime";
956
1027
  var ChapterTooltip = ({ chapter }) => {
957
1028
  const { player } = useSoftBuildersVideoPlayerContext();
958
1029
  const [open, setOpen] = useState8(false);
@@ -974,7 +1045,7 @@ var ChapterTooltip = ({ chapter }) => {
974
1045
  const clickedTime = chapter.startTime + clickPercentage * (chapter.endTime - chapter.startTime);
975
1046
  player == null ? void 0 : player.currentTime(clickedTime);
976
1047
  };
977
- return /* @__PURE__ */ jsx26(
1048
+ return /* @__PURE__ */ jsx30(
978
1049
  "div",
979
1050
  {
980
1051
  id: `ii-section-${chapter.title}`,
@@ -985,15 +1056,15 @@ var ChapterTooltip = ({ chapter }) => {
985
1056
  },
986
1057
  onMouseEnter: () => setOpen(true),
987
1058
  onMouseLeave: () => setOpen(false),
988
- children: /* @__PURE__ */ jsx26(
1059
+ children: /* @__PURE__ */ jsx30(
989
1060
  "button",
990
1061
  {
991
1062
  id: `section-${chapter.title}`,
992
1063
  className: "sb-h-full sb-w-full",
993
1064
  onClick: handleClickChapter,
994
- children: /* @__PURE__ */ jsx26("div", { className: "sb-relative sb-flex sb-h-full sb-w-full sb-justify-between sb-items-center", children: /* @__PURE__ */ jsx26(Tooltip_default, { open, children: /* @__PURE__ */ jsxs9("div", { className: "sb-flex sb-flex-col sb-gap-2 sb-items-center", children: [
995
- /* @__PURE__ */ jsx26("p", { children: chapter.title }),
996
- /* @__PURE__ */ jsxs9("p", { className: "sb-p-2 sb-bg-[#303030] sb-bg-opacity-50 sb-rounded-md", children: [
1065
+ children: /* @__PURE__ */ jsx30("div", { className: "sb-relative sb-flex sb-h-full sb-w-full sb-justify-between sb-items-center", children: /* @__PURE__ */ jsx30(Tooltip_default, { open, children: /* @__PURE__ */ jsxs11("div", { className: "sb-flex sb-flex-col sb-gap-2 sb-items-center", children: [
1066
+ /* @__PURE__ */ jsx30("p", { children: chapter.title }),
1067
+ /* @__PURE__ */ jsxs11("p", { className: "sb-p-2 sb-bg-[#303030] sb-bg-opacity-50 sb-rounded-md", children: [
997
1068
  durationFormater(chapter.startTime),
998
1069
  " -",
999
1070
  " ",
@@ -1008,7 +1079,7 @@ var ChapterTooltip = ({ chapter }) => {
1008
1079
  var ChapterTooltip_default = ChapterTooltip;
1009
1080
 
1010
1081
  // src/components/ChaptersPanal/index.tsx
1011
- import { jsx as jsx27 } from "react/jsx-runtime";
1082
+ import { jsx as jsx31 } from "react/jsx-runtime";
1012
1083
  var ChaptersPanal = ({ chapters }) => {
1013
1084
  const [cs, setCs] = useState9([]);
1014
1085
  const { duration } = useSoftBuildersVideoPlayerContext();
@@ -1023,13 +1094,13 @@ var ChaptersPanal = ({ chapters }) => {
1023
1094
  });
1024
1095
  newCs && setCs(newCs);
1025
1096
  }, [chapters, duration]);
1026
- return /* @__PURE__ */ jsx27("div", { id: "chapters-panal", className: "sb-w-full sb-h-full sb-relative ", children: cs.map((c, i) => /* @__PURE__ */ jsx27(ChapterTooltip_default, { chapter: c }, `chapter-${i}-${c.startTime}`)) });
1097
+ return /* @__PURE__ */ jsx31("div", { id: "chapters-panal", className: "sb-w-full sb-h-full sb-relative ", children: cs.map((c, i) => /* @__PURE__ */ jsx31(ChapterTooltip_default, { chapter: c }, `chapter-${i}-${c.startTime}`)) });
1027
1098
  };
1028
1099
  var ChaptersPanal_default = ChaptersPanal;
1029
1100
 
1030
1101
  // src/components/TimeSlider/index.tsx
1031
1102
  import { useEffect as useEffect9, useState as useState10 } from "react";
1032
- import { jsx as jsx28, jsxs as jsxs10 } from "react/jsx-runtime";
1103
+ import { jsx as jsx32, jsxs as jsxs12 } from "react/jsx-runtime";
1033
1104
  var MIN2 = 0;
1034
1105
  var MAX2 = 100;
1035
1106
  var DEFERENCE = Math.abs(MAX2 - MIN2);
@@ -1078,8 +1149,8 @@ var TimeSlider = ({ chapters }) => {
1078
1149
  arr.push(`black 100%`);
1079
1150
  setMaskCuttes(arr.toString());
1080
1151
  }, [chapters, duration]);
1081
- return /* @__PURE__ */ jsxs10("div", { className: " sb-w-full sb-h-2 sb-flex sb-items-center sb-justify-center", children: [
1082
- /* @__PURE__ */ jsx28("div", { className: "sb-absolute sb-top-0 sb-left-0 sb-w-full sb-z-10", children: /* @__PURE__ */ jsx28(
1152
+ return /* @__PURE__ */ jsxs12("div", { className: " sb-w-full sb-h-2 sb-flex sb-items-center sb-justify-center", children: [
1153
+ /* @__PURE__ */ jsx32("div", { className: "sb-absolute sb-top-0 sb-left-0 sb-w-full sb-z-10", children: /* @__PURE__ */ jsx32(
1083
1154
  Slider_default,
1084
1155
  {
1085
1156
  value: timeSlider,
@@ -1092,7 +1163,7 @@ var TimeSlider = ({ chapters }) => {
1092
1163
  }
1093
1164
  }
1094
1165
  ) }),
1095
- /* @__PURE__ */ jsx28(
1166
+ /* @__PURE__ */ jsx32(
1096
1167
  "div",
1097
1168
  {
1098
1169
  className: "sb-absolute sb-top-0 sb-left-0 sb-w-full sb-h-2 sb-bg-slate-400 sb-rounded-md",
@@ -1122,24 +1193,24 @@ var TimeSlider = ({ chapters }) => {
1122
1193
  var TimeSlider_default = TimeSlider;
1123
1194
 
1124
1195
  // src/components/TimeSliderContainer/index.tsx
1125
- import { jsx as jsx29, jsxs as jsxs11 } from "react/jsx-runtime";
1196
+ import { jsx as jsx33, jsxs as jsxs13 } from "react/jsx-runtime";
1126
1197
  var TimeSliderContainer = ({ notes, chapters }) => {
1127
- return /* @__PURE__ */ jsxs11(
1198
+ return /* @__PURE__ */ jsxs13(
1128
1199
  "div",
1129
1200
  {
1130
1201
  id: "time-slider-container",
1131
1202
  className: "sb-w-full sb-relative sb-flex sb-items-center sb-justify-center",
1132
1203
  children: [
1133
- /* @__PURE__ */ jsx29(
1204
+ /* @__PURE__ */ jsx33(
1134
1205
  "div",
1135
1206
  {
1136
1207
  id: "notes-panal",
1137
1208
  className: "sb-absolute sb-w-full sb-h-full sb-top-[27%] sb-left-0",
1138
- children: /* @__PURE__ */ jsx29(NotesPanal_default, { notes })
1209
+ children: /* @__PURE__ */ jsx33(NotesPanal_default, { notes })
1139
1210
  }
1140
1211
  ),
1141
- /* @__PURE__ */ jsx29("div", { className: "sb-absolute sb-w-full sb-h-full sb-top-0 sb-left-0", children: /* @__PURE__ */ jsx29(ChaptersPanal_default, { chapters }) }),
1142
- /* @__PURE__ */ jsx29(TimeSlider_default, { chapters })
1212
+ /* @__PURE__ */ jsx33("div", { className: "sb-absolute sb-w-full sb-h-full sb-top-0 sb-left-0", children: /* @__PURE__ */ jsx33(ChaptersPanal_default, { chapters }) }),
1213
+ /* @__PURE__ */ jsx33(TimeSlider_default, { chapters })
1143
1214
  ]
1144
1215
  }
1145
1216
  );
@@ -1148,7 +1219,7 @@ var TimeSliderContainer_default = TimeSliderContainer;
1148
1219
 
1149
1220
  // src/components/BufferTracker/index.tsx
1150
1221
  import { useEffect as useEffect10 } from "react";
1151
- import { Fragment, jsx as jsx30 } from "react/jsx-runtime";
1222
+ import { Fragment, jsx as jsx34 } from "react/jsx-runtime";
1152
1223
  var BufferTracker = () => {
1153
1224
  const { player, setDownloadedBufferTimeufferTime } = useSoftBuildersVideoPlayerContext();
1154
1225
  useEffect10(() => {
@@ -1157,13 +1228,13 @@ var BufferTracker = () => {
1157
1228
  }, 1e3);
1158
1229
  return () => clearInterval(intervalId);
1159
1230
  }, [player]);
1160
- return /* @__PURE__ */ jsx30(Fragment, {});
1231
+ return /* @__PURE__ */ jsx34(Fragment, {});
1161
1232
  };
1162
1233
  var BufferTracker_default = BufferTracker;
1163
1234
 
1164
1235
  // src/components/CurrentTimeTracker/index.tsx
1165
1236
  import { useEffect as useEffect11 } from "react";
1166
- import { Fragment as Fragment2, jsx as jsx31 } from "react/jsx-runtime";
1237
+ import { Fragment as Fragment2, jsx as jsx35 } from "react/jsx-runtime";
1167
1238
  var CurrentTimeTracker = () => {
1168
1239
  const { setCurrentTime, player } = useSoftBuildersVideoPlayerContext();
1169
1240
  useEffect11(() => {
@@ -1172,19 +1243,19 @@ var CurrentTimeTracker = () => {
1172
1243
  }, 500);
1173
1244
  return () => clearInterval(intervalId);
1174
1245
  }, [player]);
1175
- return /* @__PURE__ */ jsx31(Fragment2, {});
1246
+ return /* @__PURE__ */ jsx35(Fragment2, {});
1176
1247
  };
1177
1248
  var CurrentTimeTracker_default = CurrentTimeTracker;
1178
1249
 
1179
1250
  // src/components/SubtitleMenu/index.tsx
1180
1251
  import { useEffect as useEffect12, useState as useState11 } from "react";
1181
- import { jsx as jsx32, jsxs as jsxs12 } from "react/jsx-runtime";
1252
+ import { jsx as jsx36, jsxs as jsxs14 } from "react/jsx-runtime";
1182
1253
  var SubtitleOption = ({
1183
1254
  isSelected,
1184
1255
  subtitle,
1185
1256
  onClick
1186
1257
  }) => {
1187
- return /* @__PURE__ */ jsx32(
1258
+ return /* @__PURE__ */ jsx36(
1188
1259
  "button",
1189
1260
  {
1190
1261
  className: "hover:sb-text-orange-500 sb-p-2",
@@ -1192,9 +1263,9 @@ var SubtitleOption = ({
1192
1263
  e.stopPropagation();
1193
1264
  onClick(e);
1194
1265
  },
1195
- children: /* @__PURE__ */ jsxs12("div", { className: "sb-grid sb-grid-cols-12 sb-items-center sb-gap-2", children: [
1196
- /* @__PURE__ */ jsx32("div", { className: "sb-col-span-3", children: isSelected ? /* @__PURE__ */ jsx32(CheckedIcon_default, { className: "sb-w-5 sb-h-5" }) : /* @__PURE__ */ jsx32("div", {}) }),
1197
- /* @__PURE__ */ jsx32("p", { className: "sb-text-left sb-col-span-9", children: subtitle.label })
1266
+ children: /* @__PURE__ */ jsxs14("div", { className: "sb-grid sb-grid-cols-12 sb-items-center sb-gap-2", children: [
1267
+ /* @__PURE__ */ jsx36("div", { className: "sb-col-span-3", children: isSelected ? /* @__PURE__ */ jsx36(CheckedIcon_default, { className: "sb-w-5 sb-h-5" }) : /* @__PURE__ */ jsx36("div", {}) }),
1268
+ /* @__PURE__ */ jsx36("p", { className: "sb-text-left sb-col-span-9", children: subtitle.label })
1198
1269
  ] })
1199
1270
  }
1200
1271
  );
@@ -1203,7 +1274,8 @@ var SubtitleMenu = ({
1203
1274
  width,
1204
1275
  onClick,
1205
1276
  onMouseEnter,
1206
- onMouseLeave
1277
+ onMouseLeave,
1278
+ isTrailer
1207
1279
  }) => {
1208
1280
  const { player } = useSoftBuildersVideoPlayerContext();
1209
1281
  const [closeMenuFunction, setCloseMenuFunction] = useState11(void 0);
@@ -1226,7 +1298,7 @@ var SubtitleMenu = ({
1226
1298
  setSubtitles(textTracks);
1227
1299
  }
1228
1300
  }, [player]);
1229
- return /* @__PURE__ */ jsx32(
1301
+ return /* @__PURE__ */ jsx36(
1230
1302
  MenuButton_default,
1231
1303
  {
1232
1304
  onMouseEnter,
@@ -1234,15 +1306,15 @@ var SubtitleMenu = ({
1234
1306
  onClick: (e, isOpen) => {
1235
1307
  onClick && onClick(e, isOpen);
1236
1308
  },
1237
- classContainer: `${width < 400 ? "!sb-top-8 -sb-left-9" : ""}`,
1238
- buttonContent: /* @__PURE__ */ jsx32(SubIcon_default, { className: "sb-w-4 sb-h-4 sb-text-white " }),
1239
- menuContent: /* @__PURE__ */ jsx32(
1309
+ classContainer: `${width < 400 || isTrailer ? "!sb-top-8 -sb-left-9" : ""}`,
1310
+ buttonContent: /* @__PURE__ */ jsx36(SubIcon_default, { className: "sb-w-4 sb-h-4 sb-text-white " }),
1311
+ menuContent: /* @__PURE__ */ jsx36(
1240
1312
  "div",
1241
1313
  {
1242
- className: `sb-rounded-md sb-bg-[#303030] sb-bg-opacity-50 ${width > 400 ? "sb-w-[150px] sb-py-5" : "sb-w-[90px] sb-items-center sb-justify-center sb-py-1"}`,
1243
- children: /* @__PURE__ */ jsxs12("div", { className: "sb-flex sb-flex-col sb-gap-3", children: [
1244
- /* @__PURE__ */ jsxs12("div", { className: "sb-px-5 sb-flex sb-flex-row sb-gap-3 sb-items-center sb-justify-center", children: [
1245
- /* @__PURE__ */ jsx32(
1314
+ className: `sb-rounded-md sb-bg-[#303030] sb-bg-opacity-50 ${width > 400 && !isTrailer ? "sb-w-[150px] sb-py-5" : "sb-w-[90px] sb-items-center sb-justify-center sb-py-1"}`,
1315
+ children: /* @__PURE__ */ jsxs14("div", { className: "sb-flex sb-flex-col sb-gap-3", children: [
1316
+ /* @__PURE__ */ jsxs14("div", { className: "sb-px-5 sb-flex sb-flex-row sb-gap-3 sb-items-center sb-justify-center", children: [
1317
+ /* @__PURE__ */ jsx36(
1246
1318
  "button",
1247
1319
  {
1248
1320
  onClick: () => {
@@ -1251,14 +1323,14 @@ var SubtitleMenu = ({
1251
1323
  }
1252
1324
  },
1253
1325
  className: "hover:sb-scale-150",
1254
- children: /* @__PURE__ */ jsx32(LeftArrowIcon_default, { className: "sb-w-3 sb-h-3" })
1326
+ children: /* @__PURE__ */ jsx36(LeftArrowIcon_default, { className: "sb-w-3 sb-h-3" })
1255
1327
  }
1256
1328
  ),
1257
- /* @__PURE__ */ jsx32("h3", { children: "Subtitle" })
1329
+ /* @__PURE__ */ jsx36("h3", { children: "Subtitle" })
1258
1330
  ] }),
1259
- /* @__PURE__ */ jsx32("div", { className: "sb-w-full sb-h-[.1px] sb-bg-[#AAAAAA] sb-bg-opacity-70" }),
1260
- /* @__PURE__ */ jsx32("div", { className: "sb-px-5 sb-flex sb-flex-col sb-gap-3 sb-items-start", children: subtitles.map((q, i) => {
1261
- return /* @__PURE__ */ jsx32(
1331
+ /* @__PURE__ */ jsx36("div", { className: "sb-w-full sb-h-[.1px] sb-bg-[#AAAAAA] sb-bg-opacity-70" }),
1332
+ /* @__PURE__ */ jsx36("div", { className: "sb-px-5 sb-flex sb-flex-col sb-gap-3 sb-items-start", children: subtitles.map((q, i) => {
1333
+ return /* @__PURE__ */ jsx36(
1262
1334
  SubtitleOption,
1263
1335
  {
1264
1336
  isSelected: q.mode === "showing",
@@ -1283,7 +1355,7 @@ var SubtitleMenu_default = SubtitleMenu;
1283
1355
 
1284
1356
  // src/components/Tooltip/GlobalTooltip.tsx
1285
1357
  import { useState as useState12 } from "react";
1286
- import { jsx as jsx33, jsxs as jsxs13 } from "react/jsx-runtime";
1358
+ import { jsx as jsx37, jsxs as jsxs15 } from "react/jsx-runtime";
1287
1359
  var TooltipModal = ({
1288
1360
  content,
1289
1361
  children,
@@ -1293,13 +1365,13 @@ var TooltipModal = ({
1293
1365
  const [isOpen, setIsOpen] = useState12(false);
1294
1366
  const showTooltip = () => setIsOpen(true);
1295
1367
  const hideTooltip = () => setIsOpen(false);
1296
- return /* @__PURE__ */ jsxs13(
1368
+ return /* @__PURE__ */ jsxs15(
1297
1369
  "div",
1298
1370
  {
1299
1371
  className: "tooltip-container",
1300
1372
  style: { position: "relative", display: "inline-block" },
1301
1373
  children: [
1302
- /* @__PURE__ */ jsx33(
1374
+ /* @__PURE__ */ jsx37(
1303
1375
  "div",
1304
1376
  {
1305
1377
  onMouseEnter: showTooltip,
@@ -1308,7 +1380,7 @@ var TooltipModal = ({
1308
1380
  children
1309
1381
  }
1310
1382
  ),
1311
- isOpen && /* @__PURE__ */ jsx33(
1383
+ isOpen && /* @__PURE__ */ jsx37(
1312
1384
  "div",
1313
1385
  {
1314
1386
  className: `sb-tooltip-modal sb-text-orange-900 sb-my-2 ${width > 400 ? "!sb-bottom-[105%]" : "!sb-top-[105%]"}`,
@@ -1333,7 +1405,7 @@ var TooltipModal = ({
1333
1405
  var GlobalTooltip_default = TooltipModal;
1334
1406
 
1335
1407
  // src/components/ControlBar/index.tsx
1336
- import { jsx as jsx34, jsxs as jsxs14 } from "react/jsx-runtime";
1408
+ import { Fragment as Fragment3, jsx as jsx38, jsxs as jsxs16 } from "react/jsx-runtime";
1337
1409
  var ControlBar = ({
1338
1410
  player,
1339
1411
  isPaused,
@@ -1349,7 +1421,8 @@ var ControlBar = ({
1349
1421
  setIsSubtitleMenuOpen,
1350
1422
  setNoteOpen,
1351
1423
  disableNote,
1352
- noteButtonClick
1424
+ noteButtonClick,
1425
+ isTrailer
1353
1426
  }) => {
1354
1427
  const { setPlayer, setDuration } = useSoftBuildersVideoPlayerContext();
1355
1428
  const [width, setWidth] = useState13(0);
@@ -1383,93 +1456,98 @@ var ControlBar = ({
1383
1456
  useEffect13(() => {
1384
1457
  setDuration(duration);
1385
1458
  }, [duration]);
1386
- return /* @__PURE__ */ jsxs14(
1459
+ return /* @__PURE__ */ jsxs16(
1387
1460
  "div",
1388
1461
  {
1389
- className: ` !sb-px-4 sb-flex sb-pt-2 sb-justify-center sb-gap-3 sb-w-full sb-h-full ${width > 400 ? "sb-absolute sb-bottom-1 sb-items-end sb-mb-1 sb-pb-2 " : "sb-items-start"} sb-pb-2`,
1462
+ className: ` !sb-px-4 sb-flex sb-pt-2 sb-justify-center sb-gap-3 sb-w-full sb-h-full ${width > 400 && !isTrailer ? "sb-absolute sb-bottom-1 sb-items-end sb-mb-1 sb-pb-2 " : "sb-items-start"} sb-pb-2`,
1390
1463
  children: [
1391
- /* @__PURE__ */ jsx34(BufferTracker_default, {}),
1392
- /* @__PURE__ */ jsx34(CurrentTimeTracker_default, {}),
1393
- /* @__PURE__ */ jsx34(
1394
- "button",
1395
- {
1396
- onClick: () => {
1397
- seek(-seekStep);
1398
- },
1399
- children: /* @__PURE__ */ jsx34(
1400
- GlobalTooltip_default,
1401
- {
1402
- width,
1403
- content: /* @__PURE__ */ jsx34("p", { children: "Backward 5 sec" }),
1404
- isLeft: true,
1405
- children: /* @__PURE__ */ jsx34(BackwardIcon_default, { className: "sb-w-3 sb-h-3" })
1406
- }
1407
- )
1408
- }
1409
- ),
1410
- /* @__PURE__ */ jsx34("button", { onClick: togglePlay, children: /* @__PURE__ */ jsx34(
1411
- GlobalTooltip_default,
1412
- {
1413
- width,
1414
- content: /* @__PURE__ */ jsx34("p", { children: isPaused ? "Play" : "pause" }),
1415
- isLeft: true,
1416
- children: isPaused ? /* @__PURE__ */ jsx34(PlayIcon_default, { className: "sb-w-3 sb-h-3" }) : /* @__PURE__ */ jsx34(PauseIcon_default, { className: "sb-w-3 sb-h-3" })
1417
- }
1418
- ) }),
1419
- /* @__PURE__ */ jsx34(
1420
- "button",
1421
- {
1422
- onClick: (e) => {
1423
- e.preventDefault();
1424
- seek(seekStep);
1425
- },
1426
- children: /* @__PURE__ */ jsx34(
1427
- GlobalTooltip_default,
1428
- {
1429
- width,
1430
- content: /* @__PURE__ */ jsx34("p", { children: "Forward 5 sec" }),
1431
- isLeft: true,
1432
- children: /* @__PURE__ */ jsx34(ForwardIcon_default, { className: "sb-w-3 sb-h-3" })
1433
- }
1434
- )
1435
- }
1436
- ),
1464
+ /* @__PURE__ */ jsx38(BufferTracker_default, {}),
1465
+ /* @__PURE__ */ jsx38(CurrentTimeTracker_default, {}),
1466
+ !isTrailer && /* @__PURE__ */ jsxs16(Fragment3, { children: [
1467
+ " ",
1468
+ /* @__PURE__ */ jsx38(
1469
+ "button",
1470
+ {
1471
+ onClick: () => {
1472
+ seek(-seekStep);
1473
+ },
1474
+ children: /* @__PURE__ */ jsx38(
1475
+ GlobalTooltip_default,
1476
+ {
1477
+ width,
1478
+ content: /* @__PURE__ */ jsx38("p", { children: "Backward 5 sec" }),
1479
+ isLeft: true,
1480
+ children: /* @__PURE__ */ jsx38(BackwardIcon_default, { className: "sb-w-3 sb-h-3" })
1481
+ }
1482
+ )
1483
+ }
1484
+ ),
1485
+ /* @__PURE__ */ jsx38("button", { onClick: togglePlay, children: /* @__PURE__ */ jsx38(
1486
+ GlobalTooltip_default,
1487
+ {
1488
+ width,
1489
+ content: /* @__PURE__ */ jsx38("p", { children: isPaused ? "Play" : "pause" }),
1490
+ isLeft: true,
1491
+ children: isPaused ? /* @__PURE__ */ jsx38(PlayIcon_default, { className: "sb-w-3 sb-h-3" }) : /* @__PURE__ */ jsx38(PauseIcon_default, { className: "sb-w-3 sb-h-3" })
1492
+ }
1493
+ ) }),
1494
+ /* @__PURE__ */ jsx38(
1495
+ "button",
1496
+ {
1497
+ onClick: (e) => {
1498
+ e.preventDefault();
1499
+ seek(seekStep);
1500
+ },
1501
+ children: /* @__PURE__ */ jsx38(
1502
+ GlobalTooltip_default,
1503
+ {
1504
+ width,
1505
+ content: /* @__PURE__ */ jsx38("p", { children: "Forward 5 sec" }),
1506
+ isLeft: true,
1507
+ children: /* @__PURE__ */ jsx38(ForwardIcon_default, { className: "sb-w-3 sb-h-3" })
1508
+ }
1509
+ )
1510
+ }
1511
+ )
1512
+ ] }),
1437
1513
  // isSeeking ||
1438
1514
  // width > 400 &&
1439
- /* @__PURE__ */ jsx34(
1515
+ /* @__PURE__ */ jsx38(
1440
1516
  "div",
1441
1517
  {
1442
- className: `${width < 400 ? "sb-flex-1 sb-ml-0 sb-mr-0" : "sb-w-full"}`,
1443
- children: /* @__PURE__ */ jsxs14(
1518
+ className: `${width < 400 && !isTrailer ? "sb-flex-1 sb-ml-0 sb-mr-0" : "sb-w-full"}`,
1519
+ children: /* @__PURE__ */ jsxs16(
1444
1520
  "div",
1445
1521
  {
1446
- style: width < 400 ? {
1522
+ style: width < 400 && !isTrailer ? {
1447
1523
  width: `${width * 0.9}px`,
1448
1524
  left: "5%",
1449
1525
  top: "90%"
1450
1526
  } : { width: "98%" },
1451
- className: `flex gap-2 ${width < 400 ? "absolute sb-top-1" : "-sb-translate-y-0 sb-w-full"} hover:sb-w-[45%] `,
1527
+ className: `flex gap-2 ${width < 400 && !isTrailer ? "absolute sb-top-1" : "-sb-translate-y-0 sb-w-full"} hover:sb-w-[45%] `,
1452
1528
  children: [
1453
- /* @__PURE__ */ jsx34(CurrentTimeLabel_default, {}),
1454
- /* @__PURE__ */ jsx34(TimeSliderContainer_default, { chapters, notes }),
1455
- /* @__PURE__ */ jsx34("p", { children: durationFormater(duration) })
1529
+ /* @__PURE__ */ jsx38(CurrentTimeLabel_default, {}),
1530
+ /* @__PURE__ */ jsx38(TimeSliderContainer_default, { chapters, notes }),
1531
+ /* @__PURE__ */ jsx38("p", { children: durationFormater(duration) })
1456
1532
  ]
1457
1533
  }
1458
1534
  )
1459
1535
  }
1460
1536
  ),
1461
- /* @__PURE__ */ jsx34("div", { className: "sb-h-full", children: /* @__PURE__ */ jsx34(
1537
+ /* @__PURE__ */ jsx38("div", { className: "sb-h-full", children: /* @__PURE__ */ jsx38(
1462
1538
  VolumeSlider_default,
1463
1539
  {
1540
+ isTrailer,
1464
1541
  volumeSliderToggler,
1465
1542
  width,
1466
1543
  setIsSeeking: (val) => setIsSeeking(val),
1467
1544
  handleControlDisplayTimer
1468
1545
  }
1469
1546
  ) }),
1470
- /* @__PURE__ */ jsx34(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx34("p", { children: "Quality" }), children: /* @__PURE__ */ jsx34(
1547
+ /* @__PURE__ */ jsx38(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx38("p", { children: "Quality" }), children: /* @__PURE__ */ jsx38(
1471
1548
  QualityMenu_default,
1472
1549
  {
1550
+ isTrailer,
1473
1551
  width,
1474
1552
  onClick: (e, isOpen) => {
1475
1553
  setVolumeToggler(!volumeSliderToggler);
@@ -1477,7 +1555,7 @@ var ControlBar = ({
1477
1555
  }
1478
1556
  }
1479
1557
  ) }),
1480
- disableNote && /* @__PURE__ */ jsx34(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx34("p", { children: "Create note" }), children: /* @__PURE__ */ jsx34(
1558
+ disableNote && /* @__PURE__ */ jsx38(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx38("p", { children: "Create note" }), children: /* @__PURE__ */ jsx38(
1481
1559
  CreateNoteMenu_default,
1482
1560
  {
1483
1561
  handleSaveNoteAction,
@@ -1492,9 +1570,10 @@ var ControlBar = ({
1492
1570
  }
1493
1571
  }
1494
1572
  ) }),
1495
- /* @__PURE__ */ jsx34(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx34("p", { children: "Subtitle" }), children: /* @__PURE__ */ jsx34(
1573
+ /* @__PURE__ */ jsx38(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx38("p", { children: "Subtitle" }), children: /* @__PURE__ */ jsx38(
1496
1574
  SubtitleMenu_default,
1497
1575
  {
1576
+ isTrailer,
1498
1577
  width,
1499
1578
  onClick: (e, isOpen) => {
1500
1579
  setVolumeToggler(!volumeSliderToggler);
@@ -1502,7 +1581,7 @@ var ControlBar = ({
1502
1581
  }
1503
1582
  }
1504
1583
  ) }),
1505
- /* @__PURE__ */ jsx34(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx34("p", { children: "Full screen" }), children: /* @__PURE__ */ jsx34(
1584
+ /* @__PURE__ */ jsx38(GlobalTooltip_default, { width, content: /* @__PURE__ */ jsx38("p", { children: "Full screen" }), children: /* @__PURE__ */ jsx38(
1506
1585
  "button",
1507
1586
  {
1508
1587
  onClick: (e) => {
@@ -1514,7 +1593,7 @@ var ControlBar = ({
1514
1593
  player == null ? void 0 : player.requestFullscreen();
1515
1594
  }
1516
1595
  },
1517
- children: /* @__PURE__ */ jsx34(FullScreenIcon_default, { className: "sb-w-3 sb-h-3" })
1596
+ children: /* @__PURE__ */ jsx38(FullScreenIcon_default, { className: "sb-w-3 sb-h-3" })
1518
1597
  }
1519
1598
  ) })
1520
1599
  ]
@@ -1527,28 +1606,36 @@ var ControlBar_default = ControlBar;
1527
1606
  import { isEqual } from "lodash";
1528
1607
 
1529
1608
  // src/components/BigPlayButton/index.tsx
1530
- import { jsx as jsx35 } from "react/jsx-runtime";
1531
- var BigPlayButton = ({ player, isPaused, setIsPaused }) => {
1609
+ import { jsx as jsx39 } from "react/jsx-runtime";
1610
+ var BigPlayButton = ({
1611
+ player,
1612
+ isPaused,
1613
+ setIsPaused,
1614
+ height,
1615
+ id,
1616
+ heightValue
1617
+ }) => {
1532
1618
  const togglePlay = () => {
1533
1619
  if (isPaused) player == null ? void 0 : player.play();
1534
1620
  else player == null ? void 0 : player.pause();
1535
1621
  setIsPaused(!isPaused);
1536
1622
  };
1537
- return /* @__PURE__ */ jsx35(
1623
+ return /* @__PURE__ */ jsx39(
1538
1624
  "div",
1539
1625
  {
1626
+ style: __spreadValues({}, height && heightValue ? { position: "absolute", top: `-${(heightValue - height) / 2}px` } : {}),
1540
1627
  onClick: togglePlay,
1541
- className: "sb-w-16 sb-h-16 sb-rounded-full sb-bg-white/30 sb-backdrop-blur-lg sb-flex sb-items-center sb-justify-center ",
1542
- children: isPaused ? /* @__PURE__ */ jsx35(PlayIcon_default, { className: "sb-w-4 sb-h-4" }) : /* @__PURE__ */ jsx35(PauseIcon_default, { className: "sb-w-4 sb-h-4" })
1628
+ className: ` sb-w-16 sb-h-16 sb-rounded-full sb-bg-white/30 sb-backdrop-blur-lg sb-flex sb-items-center sb-justify-center`,
1629
+ children: isPaused ? /* @__PURE__ */ jsx39(PlayIcon_default, { className: "sb-w-4 sb-h-4" }) : /* @__PURE__ */ jsx39(PauseIcon_default, { className: "sb-w-4 sb-h-4" })
1543
1630
  }
1544
1631
  );
1545
1632
  };
1546
1633
  var BigPlayButton_default = BigPlayButton;
1547
1634
 
1548
1635
  // src/components/VideoPlayerComponent/index.tsx
1549
- import { jsx as jsx36, jsxs as jsxs15 } from "react/jsx-runtime";
1636
+ import { Fragment as Fragment4, jsx as jsx40, jsxs as jsxs17 } from "react/jsx-runtime";
1550
1637
  var bigPlayButtonRoot = {};
1551
- var renderBigPlayButton = (id, player, isPaused, setIsPaused, opacity = "100") => {
1638
+ var renderBigPlayButton = (id, player, isPaused, setIsPaused, opacity = "100", height, heightValue) => {
1552
1639
  const container = document.getElementById(`video-container-${id}`);
1553
1640
  if (container) {
1554
1641
  container.style.height = "100%";
@@ -1559,12 +1646,14 @@ var renderBigPlayButton = (id, player, isPaused, setIsPaused, opacity = "100") =
1559
1646
  bigPlayButtonRoot[id] = ReactDOM.createRoot(element);
1560
1647
  }
1561
1648
  bigPlayButtonRoot[id].render(
1562
- /* @__PURE__ */ jsx36(
1649
+ /* @__PURE__ */ jsx40(
1563
1650
  BigPlayButton_default,
1564
1651
  {
1565
1652
  player,
1566
1653
  isPaused,
1567
- setIsPaused
1654
+ setIsPaused,
1655
+ height,
1656
+ heightValue
1568
1657
  }
1569
1658
  )
1570
1659
  );
@@ -1573,7 +1662,7 @@ var renderBigPlayButton = (id, player, isPaused, setIsPaused, opacity = "100") =
1573
1662
  };
1574
1663
  var controlBarRoot = {};
1575
1664
  var renderControlBar = (id, player, isPaused, setIsPaused, duration, notes, chapters, seekStep = 5, handleSaveNoteAction, opacity = "0", handleControlDisplayTimer = () => {
1576
- }, bgColor = "transparent", setIsQualityMenuOpen, setIsSubtitleMenuOpen, disableNote, setNoteOpen, noteButtonClick) => {
1665
+ }, bgColor = "transparent", setIsQualityMenuOpen, setIsSubtitleMenuOpen, disableNote, setNoteOpen, noteButtonClick, isTrailer) => {
1577
1666
  const container = document.getElementById(`video-container-${id}`);
1578
1667
  if (container) {
1579
1668
  container.style.height = "100%";
@@ -1589,7 +1678,7 @@ var renderControlBar = (id, player, isPaused, setIsPaused, duration, notes, chap
1589
1678
  element.style.height = "100%";
1590
1679
  element.style.alignItems = "flex-end";
1591
1680
  controlBarRoot[id].render(
1592
- /* @__PURE__ */ jsx36(SoftBuildersVideoPlayerProvider, { children: /* @__PURE__ */ jsx36(
1681
+ /* @__PURE__ */ jsx40(SoftBuildersVideoPlayerProvider, { children: /* @__PURE__ */ jsx40(
1593
1682
  ControlBar_default,
1594
1683
  {
1595
1684
  id,
@@ -1606,7 +1695,8 @@ var renderControlBar = (id, player, isPaused, setIsPaused, duration, notes, chap
1606
1695
  setIsQualityMenuOpen,
1607
1696
  disableNote,
1608
1697
  setNoteOpen,
1609
- noteButtonClick
1698
+ noteButtonClick,
1699
+ isTrailer
1610
1700
  }
1611
1701
  ) })
1612
1702
  );
@@ -1628,7 +1718,9 @@ var VideoPlayerComponent = forwardRef(
1628
1718
  childRef,
1629
1719
  bottomRedBar = true,
1630
1720
  noteButtonClick,
1631
- videoID
1721
+ videoID,
1722
+ isTrailer,
1723
+ height
1632
1724
  }, ref) => {
1633
1725
  const videoRef = useRef2(void 0);
1634
1726
  const playerRef = useRef2(void 0);
@@ -1643,6 +1735,7 @@ var VideoPlayerComponent = forwardRef(
1643
1735
  const [isSubtitleMenuOpen, setIsSubtitleMenuOpen] = useState14(false);
1644
1736
  const [isHovered, setIsHovered] = useState14(false);
1645
1737
  const [isNoteOpen, setNoteOpen] = useState14(false);
1738
+ const [heightValue, setHeightValue] = useState14(0);
1646
1739
  const onReady = (player) => {
1647
1740
  if (playerRef) {
1648
1741
  playerRef.current = player;
@@ -1706,7 +1799,6 @@ var VideoPlayerComponent = forwardRef(
1706
1799
  videoElement.style.width = "100%";
1707
1800
  videoElement.style.height = "100%";
1708
1801
  videoElement.style.objectFit = "cover";
1709
- videoElement.style.position = "relative";
1710
1802
  playerRef.current = videojs(videoElement, options, () => {
1711
1803
  onReady(playerRef.current);
1712
1804
  });
@@ -1768,7 +1860,8 @@ var VideoPlayerComponent = forwardRef(
1768
1860
  setIsSubtitleMenuOpen,
1769
1861
  disableNote,
1770
1862
  setNoteOpen,
1771
- noteButtonClick
1863
+ noteButtonClick,
1864
+ isTrailer
1772
1865
  );
1773
1866
  }, 0);
1774
1867
  return () => clearTimeout(controlBarTimeout);
@@ -1790,12 +1883,14 @@ var VideoPlayerComponent = forwardRef(
1790
1883
  playerRef.current,
1791
1884
  isPaused,
1792
1885
  setIsPaused,
1793
- opacity
1886
+ opacity,
1887
+ height,
1888
+ heightValue
1794
1889
  );
1795
1890
  }, 500);
1796
1891
  return () => clearTimeout(playButtonTimeout);
1797
1892
  }
1798
- }, [isPaused, opacity, isReady, id]);
1893
+ }, [isPaused, opacity, isReady, id, height, heightValue]);
1799
1894
  useEffect14(() => {
1800
1895
  if (playerRef.current) {
1801
1896
  const intervalId = setInterval(() => {
@@ -1842,11 +1937,6 @@ var VideoPlayerComponent = forwardRef(
1842
1937
  }
1843
1938
  setOpacity("100");
1844
1939
  setIsControlBarPresent(true);
1845
- timeoutRef.current = setTimeout(() => {
1846
- setOpacity("0");
1847
- setBgColor("transparent");
1848
- setIsControlBarPresent(false);
1849
- }, 3e3);
1850
1940
  if (isTimerOnly) {
1851
1941
  return;
1852
1942
  }
@@ -1916,7 +2006,21 @@ var VideoPlayerComponent = forwardRef(
1916
2006
  const interval = setInterval(updateTimeSeeker, 500);
1917
2007
  return () => clearInterval(interval);
1918
2008
  }, [playerRef]);
1919
- return /* @__PURE__ */ jsxs15(
2009
+ const container = document.getElementById(`video-container-${id}`);
2010
+ function handleWidthChange(height2) {
2011
+ setHeightValue(height2);
2012
+ }
2013
+ const resizeObserver = new ResizeObserver((entries) => {
2014
+ for (let entry of entries) {
2015
+ const currentHeight = entry.contentRect.height;
2016
+ handleWidthChange(currentHeight);
2017
+ }
2018
+ });
2019
+ const controlBar = container == null ? void 0 : container.querySelector(".vjs-control-bar");
2020
+ if (controlBar) {
2021
+ resizeObserver.observe(controlBar);
2022
+ }
2023
+ return /* @__PURE__ */ jsx40(Fragment4, { children: /* @__PURE__ */ jsxs17(
1920
2024
  "div",
1921
2025
  {
1922
2026
  ref: videoRefs,
@@ -1928,7 +2032,7 @@ var VideoPlayerComponent = forwardRef(
1928
2032
  onMouseEnter: () => setIsHovered(true),
1929
2033
  onMouseLeave: () => setIsHovered(false),
1930
2034
  children: [
1931
- bottomRedBar && /* @__PURE__ */ jsx36(
2035
+ bottomRedBar && /* @__PURE__ */ jsx40(
1932
2036
  "div",
1933
2037
  {
1934
2038
  ref: childRef,
@@ -1939,12 +2043,12 @@ var VideoPlayerComponent = forwardRef(
1939
2043
  }
1940
2044
  }
1941
2045
  ),
1942
- /* @__PURE__ */ jsx36(
2046
+ /* @__PURE__ */ jsx40(
1943
2047
  "div",
1944
2048
  {
1945
2049
  className: "hover:sb-cursor-pointer sb-w-full sb-h-full",
1946
2050
  "data-vjs-player": true,
1947
- children: /* @__PURE__ */ jsx36(
2051
+ children: /* @__PURE__ */ jsx40(
1948
2052
  "div",
1949
2053
  {
1950
2054
  onClick: handlePlayerClick,
@@ -1956,7 +2060,7 @@ var VideoPlayerComponent = forwardRef(
1956
2060
  )
1957
2061
  ]
1958
2062
  }
1959
- );
2063
+ ) });
1960
2064
  }
1961
2065
  );
1962
2066
  var VideoPlayerComponent_default = VideoPlayerComponent;
@@ -1964,7 +2068,7 @@ var VideoPlayerComponent_default = VideoPlayerComponent;
1964
2068
  // src/components/SoftBuildersVideoPlayer/index.tsx
1965
2069
  import { isEqual as isEqual2 } from "lodash";
1966
2070
  import { v4 as uuidv4 } from "uuid";
1967
- import { jsx as jsx37 } from "react/jsx-runtime";
2071
+ import { jsx as jsx41 } from "react/jsx-runtime";
1968
2072
  var DEFAULT_OPTIONS = {
1969
2073
  autoplay: false,
1970
2074
  controls: true,
@@ -1989,7 +2093,9 @@ var Component = forwardRef2(
1989
2093
  childRef,
1990
2094
  bottomRedBar,
1991
2095
  noteButtonClick,
1992
- videoId
2096
+ videoId,
2097
+ isTrailer = false,
2098
+ height
1993
2099
  }) => {
1994
2100
  options = __spreadProps(__spreadValues({}, options), {
1995
2101
  responsive: true,
@@ -2031,7 +2137,7 @@ var Component = forwardRef2(
2031
2137
  useEffect15(() => {
2032
2138
  setUuid(uuidv4());
2033
2139
  }, []);
2034
- return /* @__PURE__ */ jsx37(
2140
+ return /* @__PURE__ */ jsx41(
2035
2141
  VideoPlayerComponent_default,
2036
2142
  {
2037
2143
  id: uuid,
@@ -2046,7 +2152,9 @@ var Component = forwardRef2(
2046
2152
  onPlay,
2047
2153
  childRef,
2048
2154
  bottomRedBar,
2049
- noteButtonClick
2155
+ noteButtonClick,
2156
+ isTrailer,
2157
+ height
2050
2158
  }
2051
2159
  );
2052
2160
  }