@gcorevideo/player 2.28.17 → 2.28.19
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/core.js +1 -1
- package/dist/index.css +184 -184
- package/dist/index.embed.js +26 -36
- package/dist/index.js +27 -44
- package/lib/plugins/media-control/MediaControl.d.ts +1 -0
- package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
- package/lib/plugins/media-control/MediaControl.js +26 -43
- package/package.json +1 -1
- package/src/plugins/media-control/MediaControl.ts +28 -43
- package/tsconfig.tsbuildinfo +1 -1
package/dist/core.js
CHANGED
|
@@ -51319,7 +51319,7 @@ class Player {
|
|
|
51319
51319
|
}
|
|
51320
51320
|
}
|
|
51321
51321
|
|
|
51322
|
-
var version$1 = "2.28.
|
|
51322
|
+
var version$1 = "2.28.19";
|
|
51323
51323
|
|
|
51324
51324
|
var packages = {
|
|
51325
51325
|
"node_modules/@clappr/core": {
|
package/dist/index.css
CHANGED
|
@@ -279,6 +279,29 @@
|
|
|
279
279
|
}
|
|
280
280
|
.gear-wrapper ul.gear-sub-menu li.current a .check-icon svg {
|
|
281
281
|
display: inline;
|
|
282
|
+
}@charset "UTF-8";
|
|
283
|
+
.gplayer-mc-clips {
|
|
284
|
+
display: flex;
|
|
285
|
+
gap: 6px;
|
|
286
|
+
}
|
|
287
|
+
.gplayer-mc-clips .gplayer-mc-clips-text {
|
|
288
|
+
text-overflow: ellipsis;
|
|
289
|
+
white-space: nowrap;
|
|
290
|
+
overflow: hidden;
|
|
291
|
+
display: inline-block;
|
|
292
|
+
text-overflow: ellipsis;
|
|
293
|
+
color: white;
|
|
294
|
+
cursor: default;
|
|
295
|
+
line-height: var(--bottom-panel);
|
|
296
|
+
position: relative;
|
|
297
|
+
max-width: 150px;
|
|
298
|
+
}
|
|
299
|
+
.gplayer-mc-clips .gplayer-mc-clips-text::before {
|
|
300
|
+
content: "•";
|
|
301
|
+
padding-right: 6px;
|
|
302
|
+
}
|
|
303
|
+
.gplayer-mc-clips .gplayer-mc-clips-text.compact {
|
|
304
|
+
max-width: 100px;
|
|
282
305
|
}:root {
|
|
283
306
|
--primary-background-color: #000;
|
|
284
307
|
--secondary-background-color: #262626;
|
|
@@ -643,29 +666,6 @@
|
|
|
643
666
|
.fullscreen .clappr-nerd-stats .stats-box {
|
|
644
667
|
top: unset;
|
|
645
668
|
}
|
|
646
|
-
}@charset "UTF-8";
|
|
647
|
-
.gplayer-mc-clips {
|
|
648
|
-
display: flex;
|
|
649
|
-
gap: 6px;
|
|
650
|
-
}
|
|
651
|
-
.gplayer-mc-clips .gplayer-mc-clips-text {
|
|
652
|
-
text-overflow: ellipsis;
|
|
653
|
-
white-space: nowrap;
|
|
654
|
-
overflow: hidden;
|
|
655
|
-
display: inline-block;
|
|
656
|
-
text-overflow: ellipsis;
|
|
657
|
-
color: white;
|
|
658
|
-
cursor: default;
|
|
659
|
-
line-height: var(--bottom-panel);
|
|
660
|
-
position: relative;
|
|
661
|
-
max-width: 150px;
|
|
662
|
-
}
|
|
663
|
-
.gplayer-mc-clips .gplayer-mc-clips-text::before {
|
|
664
|
-
content: "•";
|
|
665
|
-
padding-right: 6px;
|
|
666
|
-
}
|
|
667
|
-
.gplayer-mc-clips .gplayer-mc-clips-text.compact {
|
|
668
|
-
max-width: 100px;
|
|
669
669
|
}.context-menu {
|
|
670
670
|
z-index: 999;
|
|
671
671
|
position: absolute;
|
|
@@ -801,40 +801,141 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
|
|
|
801
801
|
}
|
|
802
802
|
.media-control-skin-1 .media-control-item.media-control-pip button svg {
|
|
803
803
|
height: 20px;
|
|
804
|
-
}
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
804
|
+
}*,
|
|
805
|
+
:focus,
|
|
806
|
+
:visited {
|
|
807
|
+
outline: none !important;
|
|
808
|
+
}
|
|
809
|
+
|
|
810
|
+
.multicamera[data-multicamera] {
|
|
811
|
+
float: right;
|
|
812
|
+
margin-top: 4px;
|
|
813
|
+
position: relative;
|
|
814
|
+
margin-right: 20px;
|
|
815
|
+
width: 20px;
|
|
816
|
+
}
|
|
817
|
+
.multicamera[data-multicamera] button {
|
|
818
|
+
background-color: transparent;
|
|
819
|
+
color: #fff;
|
|
820
|
+
font-family: Roboto, "Open Sans", Arial, sans-serif;
|
|
821
|
+
-webkit-font-smoothing: antialiased;
|
|
822
|
+
border: none;
|
|
823
|
+
font-size: 14px;
|
|
824
|
+
padding: 0;
|
|
825
|
+
}
|
|
826
|
+
.multicamera[data-multicamera] button svg {
|
|
827
|
+
height: 20px;
|
|
828
|
+
position: relative;
|
|
829
|
+
margin-top: 6px;
|
|
830
|
+
}
|
|
831
|
+
.multicamera[data-multicamera] button:hover {
|
|
832
|
+
color: #c9c9c9;
|
|
833
|
+
}
|
|
834
|
+
.multicamera[data-multicamera] button.changing {
|
|
835
|
+
animation: pulse 0.5s infinite alternate;
|
|
836
|
+
}
|
|
837
|
+
.multicamera[data-multicamera] button span.quality-arrow {
|
|
838
|
+
width: 9px;
|
|
839
|
+
height: 6px;
|
|
840
|
+
margin-top: 11px;
|
|
841
|
+
margin-left: 5px;
|
|
842
|
+
}
|
|
843
|
+
.multicamera[data-multicamera] > ul {
|
|
844
|
+
padding: 6px 0;
|
|
845
|
+
right: -24px;
|
|
846
|
+
width: 245px;
|
|
847
|
+
list-style-type: none;
|
|
808
848
|
position: absolute;
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
left: 0;
|
|
814
|
-
background-color: #000;
|
|
815
|
-
background-size: cover;
|
|
816
|
-
background-repeat: no-repeat;
|
|
817
|
-
background-position: 50% 50%;
|
|
849
|
+
bottom: 48px;
|
|
850
|
+
border-radius: 4px;
|
|
851
|
+
display: none;
|
|
852
|
+
background-color: rgba(74, 74, 74, 0.9);
|
|
818
853
|
}
|
|
819
|
-
.
|
|
854
|
+
.multicamera[data-multicamera] > ul::after {
|
|
855
|
+
content: "";
|
|
856
|
+
position: absolute;
|
|
857
|
+
top: 100%;
|
|
858
|
+
left: 85%;
|
|
859
|
+
margin-left: -10px;
|
|
860
|
+
width: 0;
|
|
861
|
+
height: 0;
|
|
862
|
+
border-top: 10px solid rgba(74, 74, 74, 0.9);
|
|
863
|
+
border-right: 10px solid transparent;
|
|
864
|
+
border-left: 10px solid transparent;
|
|
865
|
+
}
|
|
866
|
+
.multicamera[data-multicamera] li {
|
|
867
|
+
font-size: 10px;
|
|
820
868
|
cursor: pointer;
|
|
821
869
|
}
|
|
822
|
-
.
|
|
823
|
-
|
|
870
|
+
.multicamera[data-multicamera] li .multicamera-item {
|
|
871
|
+
display: flex;
|
|
872
|
+
padding: 10px 0;
|
|
873
|
+
justify-content: center;
|
|
874
|
+
position: relative;
|
|
824
875
|
}
|
|
825
|
-
.
|
|
826
|
-
|
|
827
|
-
height: 25%;
|
|
828
|
-
margin: 0 auto;
|
|
829
|
-
opacity: 0.75;
|
|
830
|
-
transition: opacity 0.1s ease;
|
|
876
|
+
.multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] .multicamera-screenshot {
|
|
877
|
+
opacity: 0.5;
|
|
831
878
|
}
|
|
832
|
-
.
|
|
833
|
-
|
|
834
|
-
display: inline;
|
|
879
|
+
.multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] .multicamera-text {
|
|
880
|
+
opacity: 0.5;
|
|
835
881
|
}
|
|
836
|
-
.
|
|
837
|
-
|
|
882
|
+
.multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false]:hover {
|
|
883
|
+
background-color: rgba(0, 0, 0, 0);
|
|
884
|
+
}
|
|
885
|
+
.multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] {
|
|
886
|
+
pointer-events: none;
|
|
887
|
+
}
|
|
888
|
+
.multicamera[data-multicamera] li .multicamera-item:hover, .multicamera[data-multicamera] li .multicamera-item.multicamera-active {
|
|
889
|
+
background-color: rgba(0, 0, 0, 0.3);
|
|
890
|
+
}
|
|
891
|
+
.multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot {
|
|
892
|
+
width: 80px;
|
|
893
|
+
height: 60px;
|
|
894
|
+
}
|
|
895
|
+
.multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot img {
|
|
896
|
+
width: 80px;
|
|
897
|
+
height: 60px;
|
|
898
|
+
}
|
|
899
|
+
.multicamera[data-multicamera] li .multicamera-item .multicamera-text {
|
|
900
|
+
width: 120px;
|
|
901
|
+
text-align: left;
|
|
902
|
+
margin-left: 15px;
|
|
903
|
+
}
|
|
904
|
+
.multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-title,
|
|
905
|
+
.multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
|
|
906
|
+
width: 120px;
|
|
907
|
+
height: 20px;
|
|
908
|
+
font-family: Roboto, "Open Sans", Arial, sans-serif;
|
|
909
|
+
font-size: 14px;
|
|
910
|
+
font-weight: normal;
|
|
911
|
+
font-style: normal;
|
|
912
|
+
font-stretch: normal;
|
|
913
|
+
line-height: 1.43;
|
|
914
|
+
letter-spacing: normal;
|
|
915
|
+
text-align: left;
|
|
916
|
+
color: #fff;
|
|
917
|
+
text-overflow: ellipsis;
|
|
918
|
+
overflow: hidden;
|
|
919
|
+
}
|
|
920
|
+
.multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
|
|
921
|
+
opacity: 0.6;
|
|
922
|
+
}
|
|
923
|
+
.multicamera[data-multicamera] li a {
|
|
924
|
+
color: #444;
|
|
925
|
+
padding: 2px 10px;
|
|
926
|
+
display: block;
|
|
927
|
+
text-decoration: none;
|
|
928
|
+
}
|
|
929
|
+
.multicamera[data-multicamera] li a:hover {
|
|
930
|
+
background-color: #555;
|
|
931
|
+
color: white;
|
|
932
|
+
}
|
|
933
|
+
.multicamera[data-multicamera] li a:hover a {
|
|
934
|
+
color: white;
|
|
935
|
+
text-decoration: none;
|
|
936
|
+
}
|
|
937
|
+
.multicamera[data-multicamera] li.current a {
|
|
938
|
+
color: #f00;
|
|
838
939
|
}[data-player] {
|
|
839
940
|
--bottom-panel: 40px;
|
|
840
941
|
}
|
|
@@ -1456,147 +1557,40 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
|
|
|
1456
1557
|
100% {
|
|
1457
1558
|
color: #B80000;
|
|
1458
1559
|
}
|
|
1459
|
-
}
|
|
1460
|
-
:focus,
|
|
1461
|
-
:visited {
|
|
1462
|
-
outline: none !important;
|
|
1463
|
-
}
|
|
1464
|
-
|
|
1465
|
-
.multicamera[data-multicamera] {
|
|
1466
|
-
float: right;
|
|
1467
|
-
margin-top: 4px;
|
|
1468
|
-
position: relative;
|
|
1469
|
-
margin-right: 20px;
|
|
1470
|
-
width: 20px;
|
|
1471
|
-
}
|
|
1472
|
-
.multicamera[data-multicamera] button {
|
|
1473
|
-
background-color: transparent;
|
|
1474
|
-
color: #fff;
|
|
1475
|
-
font-family: Roboto, "Open Sans", Arial, sans-serif;
|
|
1476
|
-
-webkit-font-smoothing: antialiased;
|
|
1477
|
-
border: none;
|
|
1478
|
-
font-size: 14px;
|
|
1479
|
-
padding: 0;
|
|
1480
|
-
}
|
|
1481
|
-
.multicamera[data-multicamera] button svg {
|
|
1482
|
-
height: 20px;
|
|
1483
|
-
position: relative;
|
|
1484
|
-
margin-top: 6px;
|
|
1485
|
-
}
|
|
1486
|
-
.multicamera[data-multicamera] button:hover {
|
|
1487
|
-
color: #c9c9c9;
|
|
1488
|
-
}
|
|
1489
|
-
.multicamera[data-multicamera] button.changing {
|
|
1490
|
-
animation: pulse 0.5s infinite alternate;
|
|
1491
|
-
}
|
|
1492
|
-
.multicamera[data-multicamera] button span.quality-arrow {
|
|
1493
|
-
width: 9px;
|
|
1494
|
-
height: 6px;
|
|
1495
|
-
margin-top: 11px;
|
|
1496
|
-
margin-left: 5px;
|
|
1497
|
-
}
|
|
1498
|
-
.multicamera[data-multicamera] > ul {
|
|
1499
|
-
padding: 6px 0;
|
|
1500
|
-
right: -24px;
|
|
1501
|
-
width: 245px;
|
|
1502
|
-
list-style-type: none;
|
|
1503
|
-
position: absolute;
|
|
1504
|
-
bottom: 48px;
|
|
1505
|
-
border-radius: 4px;
|
|
1506
|
-
display: none;
|
|
1507
|
-
background-color: rgba(74, 74, 74, 0.9);
|
|
1508
|
-
}
|
|
1509
|
-
.multicamera[data-multicamera] > ul::after {
|
|
1510
|
-
content: "";
|
|
1511
|
-
position: absolute;
|
|
1512
|
-
top: 100%;
|
|
1513
|
-
left: 85%;
|
|
1514
|
-
margin-left: -10px;
|
|
1515
|
-
width: 0;
|
|
1516
|
-
height: 0;
|
|
1517
|
-
border-top: 10px solid rgba(74, 74, 74, 0.9);
|
|
1518
|
-
border-right: 10px solid transparent;
|
|
1519
|
-
border-left: 10px solid transparent;
|
|
1520
|
-
}
|
|
1521
|
-
.multicamera[data-multicamera] li {
|
|
1522
|
-
font-size: 10px;
|
|
1523
|
-
cursor: pointer;
|
|
1524
|
-
}
|
|
1525
|
-
.multicamera[data-multicamera] li .multicamera-item {
|
|
1560
|
+
}.player-poster {
|
|
1526
1561
|
display: flex;
|
|
1527
|
-
padding: 10px 0;
|
|
1528
1562
|
justify-content: center;
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
background-
|
|
1539
|
-
|
|
1540
|
-
.multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] {
|
|
1541
|
-
pointer-events: none;
|
|
1542
|
-
}
|
|
1543
|
-
.multicamera[data-multicamera] li .multicamera-item:hover, .multicamera[data-multicamera] li .multicamera-item.multicamera-active {
|
|
1544
|
-
background-color: rgba(0, 0, 0, 0.3);
|
|
1545
|
-
}
|
|
1546
|
-
.multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot {
|
|
1547
|
-
width: 80px;
|
|
1548
|
-
height: 60px;
|
|
1549
|
-
}
|
|
1550
|
-
.multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot img {
|
|
1551
|
-
width: 80px;
|
|
1552
|
-
height: 60px;
|
|
1553
|
-
}
|
|
1554
|
-
.multicamera[data-multicamera] li .multicamera-item .multicamera-text {
|
|
1555
|
-
width: 120px;
|
|
1556
|
-
text-align: left;
|
|
1557
|
-
margin-left: 15px;
|
|
1558
|
-
}
|
|
1559
|
-
.multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-title,
|
|
1560
|
-
.multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
|
|
1561
|
-
width: 120px;
|
|
1562
|
-
height: 20px;
|
|
1563
|
-
font-family: Roboto, "Open Sans", Arial, sans-serif;
|
|
1564
|
-
font-size: 14px;
|
|
1565
|
-
font-weight: normal;
|
|
1566
|
-
font-style: normal;
|
|
1567
|
-
font-stretch: normal;
|
|
1568
|
-
line-height: 1.43;
|
|
1569
|
-
letter-spacing: normal;
|
|
1570
|
-
text-align: left;
|
|
1571
|
-
color: #fff;
|
|
1572
|
-
text-overflow: ellipsis;
|
|
1573
|
-
overflow: hidden;
|
|
1574
|
-
}
|
|
1575
|
-
.multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
|
|
1576
|
-
opacity: 0.6;
|
|
1563
|
+
align-items: center;
|
|
1564
|
+
position: absolute;
|
|
1565
|
+
height: 100%;
|
|
1566
|
+
width: 100%;
|
|
1567
|
+
z-index: 998;
|
|
1568
|
+
top: 0;
|
|
1569
|
+
left: 0;
|
|
1570
|
+
background-color: #000;
|
|
1571
|
+
background-size: cover;
|
|
1572
|
+
background-repeat: no-repeat;
|
|
1573
|
+
background-position: 50% 50%;
|
|
1577
1574
|
}
|
|
1578
|
-
.
|
|
1579
|
-
|
|
1580
|
-
padding: 2px 10px;
|
|
1581
|
-
display: block;
|
|
1582
|
-
text-decoration: none;
|
|
1575
|
+
.player-poster.clickable {
|
|
1576
|
+
cursor: pointer;
|
|
1583
1577
|
}
|
|
1584
|
-
.
|
|
1585
|
-
|
|
1586
|
-
color: white;
|
|
1578
|
+
.player-poster:hover .play-wrapper {
|
|
1579
|
+
opacity: 1;
|
|
1587
1580
|
}
|
|
1588
|
-
.
|
|
1589
|
-
|
|
1590
|
-
|
|
1581
|
+
.player-poster .play-wrapper {
|
|
1582
|
+
width: 100%;
|
|
1583
|
+
height: 25%;
|
|
1584
|
+
margin: 0 auto;
|
|
1585
|
+
opacity: 0.75;
|
|
1586
|
+
transition: opacity 0.1s ease;
|
|
1591
1587
|
}
|
|
1592
|
-
.
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
opacity: 0.5;
|
|
1596
|
-
pointer-events: none;
|
|
1588
|
+
.player-poster .play-wrapper svg {
|
|
1589
|
+
height: 100%;
|
|
1590
|
+
display: inline;
|
|
1597
1591
|
}
|
|
1598
|
-
.
|
|
1599
|
-
|
|
1592
|
+
.player-poster .play-wrapper svg path {
|
|
1593
|
+
fill: #fff;
|
|
1600
1594
|
}.seek-time {
|
|
1601
1595
|
position: absolute;
|
|
1602
1596
|
white-space: nowrap;
|
|
@@ -1630,6 +1624,12 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
|
|
|
1630
1624
|
.seek-time .seek-time__duration::before {
|
|
1631
1625
|
content: "|";
|
|
1632
1626
|
margin-right: 7px;
|
|
1627
|
+
}.quality-levels li.disabled {
|
|
1628
|
+
opacity: 0.5;
|
|
1629
|
+
pointer-events: none;
|
|
1630
|
+
}
|
|
1631
|
+
.quality-levels li.current {
|
|
1632
|
+
background-color: #000;
|
|
1633
1633
|
}.share_plugin[data-share] {
|
|
1634
1634
|
pointer-events: auto;
|
|
1635
1635
|
z-index: 5;
|
package/dist/index.embed.js
CHANGED
|
@@ -51825,10 +51825,9 @@ class MediaControl extends UICorePlugin {
|
|
|
51825
51825
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PAUSE, this.changeTogglePlay);
|
|
51826
51826
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_STOP, this.changeTogglePlay);
|
|
51827
51827
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_DBLCLICK, this.toggleFullscreen);
|
|
51828
|
-
|
|
51829
|
-
this.
|
|
51830
|
-
}
|
|
51831
|
-
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_CLICK, clk);
|
|
51828
|
+
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_CLICK, () => {
|
|
51829
|
+
this.clickaway(this.core.activeContainer.$el[0]);
|
|
51830
|
+
});
|
|
51832
51831
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_TIMEUPDATE, this.onTimeUpdate);
|
|
51833
51832
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PROGRESS, this.updateProgressBar);
|
|
51834
51833
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_SETTINGSUPDATE, this.updateSettings);
|
|
@@ -51845,6 +51844,9 @@ class MediaControl extends UICorePlugin {
|
|
|
51845
51844
|
});
|
|
51846
51845
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_MOUSE_ENTER, this.show);
|
|
51847
51846
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_MOUSE_LEAVE, this.delayHide);
|
|
51847
|
+
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_DESTROYED, () => {
|
|
51848
|
+
this.clickaway(null);
|
|
51849
|
+
});
|
|
51848
51850
|
}
|
|
51849
51851
|
/**
|
|
51850
51852
|
* Hides the media control UI
|
|
@@ -52194,9 +52196,6 @@ class MediaControl extends UICorePlugin {
|
|
|
52194
52196
|
else {
|
|
52195
52197
|
this.hideVolumeId = setTimeout(() => {
|
|
52196
52198
|
this.hideVolumeId = null;
|
|
52197
|
-
trace(`${T$6} hideVolumeBar`, {
|
|
52198
|
-
volumeBarContainer: !!this.$volumeBarContainer,
|
|
52199
|
-
});
|
|
52200
52199
|
this.$volumeBarContainer?.addClass('volume-bar-hide');
|
|
52201
52200
|
}, timeout);
|
|
52202
52201
|
}
|
|
@@ -52265,25 +52264,17 @@ class MediaControl extends UICorePlugin {
|
|
|
52265
52264
|
this.core.activeContainer && this.core.activeContainer.seekPercentage(pos);
|
|
52266
52265
|
this.setSeekPercentage(pos);
|
|
52267
52266
|
}
|
|
52268
|
-
setUserKeepVisible() {
|
|
52269
|
-
trace(`${T$6} setUserKeepVisible`, {
|
|
52270
|
-
userKeepVisible: this.userKeepVisible,
|
|
52271
|
-
});
|
|
52267
|
+
setUserKeepVisible(e) {
|
|
52272
52268
|
this.userKeepVisible = true;
|
|
52269
|
+
this.clickaway(this.core.activeContainer.$el[0]);
|
|
52273
52270
|
}
|
|
52274
|
-
resetUserKeepVisible() {
|
|
52275
|
-
trace(`${T$6} resetUserKeepVisible`, {
|
|
52276
|
-
userKeepVisible: this.userKeepVisible,
|
|
52277
|
-
});
|
|
52271
|
+
resetUserKeepVisible = (e) => {
|
|
52278
52272
|
this.userKeepVisible = false;
|
|
52279
|
-
}
|
|
52273
|
+
};
|
|
52280
52274
|
isVisible() {
|
|
52281
52275
|
return !this.$el.hasClass('media-control-hide');
|
|
52282
52276
|
}
|
|
52283
52277
|
show(event) {
|
|
52284
|
-
trace(`${T$6} show`, {
|
|
52285
|
-
disabled: this.disabled,
|
|
52286
|
-
disableControlPanel: this.options.disableControlPanel});
|
|
52287
52278
|
if (this.disabled || this.options.disableControlPanel) {
|
|
52288
52279
|
return;
|
|
52289
52280
|
}
|
|
@@ -52310,15 +52301,6 @@ class MediaControl extends UICorePlugin {
|
|
|
52310
52301
|
this.updateCursorStyle(showing);
|
|
52311
52302
|
}
|
|
52312
52303
|
hide(delay = 0) {
|
|
52313
|
-
trace(`${T$6} hide`, {
|
|
52314
|
-
visible: this.isVisible(),
|
|
52315
|
-
disabled: this.disabled,
|
|
52316
|
-
hideMediaControl: this.options.hideMediaControl,
|
|
52317
|
-
userKeepVisible: this.userKeepVisible,
|
|
52318
|
-
keepVisible: this.keepVisible,
|
|
52319
|
-
draggingSeekBar: this.draggingSeekBar,
|
|
52320
|
-
draggingVolumeBar: this.draggingVolumeBar,
|
|
52321
|
-
});
|
|
52322
52304
|
if (!this.isVisible()) {
|
|
52323
52305
|
return;
|
|
52324
52306
|
}
|
|
@@ -52761,9 +52743,12 @@ class MediaControl extends UICorePlugin {
|
|
|
52761
52743
|
this.$el.removeClass('dvr');
|
|
52762
52744
|
}
|
|
52763
52745
|
}
|
|
52764
|
-
delayHide(
|
|
52746
|
+
delayHide() {
|
|
52765
52747
|
this.hide(this.options.hideMediaControlDelay || DEFAULT_HIDE_DELAY);
|
|
52766
52748
|
}
|
|
52749
|
+
// 2 seconds delay is needed since on mobile devices mouse(touch)move events are not dispatched immediately
|
|
52750
|
+
// as opposed to the click event
|
|
52751
|
+
clickaway = clickaway(() => setTimeout(this.resetUserKeepVisible, 0));
|
|
52767
52752
|
}
|
|
52768
52753
|
MediaControl.extend = function (properties) {
|
|
52769
52754
|
return extend(MediaControl, properties);
|
|
@@ -52804,14 +52789,19 @@ function mergeElements(a, b) {
|
|
|
52804
52789
|
return acc;
|
|
52805
52790
|
}, a);
|
|
52806
52791
|
}
|
|
52807
|
-
function clickaway(callback
|
|
52808
|
-
|
|
52809
|
-
|
|
52810
|
-
|
|
52811
|
-
|
|
52792
|
+
function clickaway(callback) {
|
|
52793
|
+
let handler = (event) => { };
|
|
52794
|
+
return (node) => {
|
|
52795
|
+
window.removeEventListener('click', handler);
|
|
52796
|
+
if (!node) {
|
|
52797
|
+
return;
|
|
52812
52798
|
}
|
|
52813
|
-
|
|
52814
|
-
|
|
52799
|
+
handler = (event) => {
|
|
52800
|
+
if (!node.contains(event.target)) {
|
|
52801
|
+
window.removeEventListener('click', handler);
|
|
52802
|
+
callback();
|
|
52803
|
+
}
|
|
52804
|
+
};
|
|
52815
52805
|
window.addEventListener('click', handler);
|
|
52816
52806
|
};
|
|
52817
52807
|
}
|
package/dist/index.js
CHANGED
|
@@ -51409,7 +51409,7 @@ class Player {
|
|
|
51409
51409
|
}
|
|
51410
51410
|
}
|
|
51411
51411
|
|
|
51412
|
-
var version$1 = "2.28.
|
|
51412
|
+
var version$1 = "2.28.19";
|
|
51413
51413
|
|
|
51414
51414
|
var packages = {
|
|
51415
51415
|
"node_modules/@clappr/core": {
|
|
@@ -52009,10 +52009,9 @@ class MediaControl extends UICorePlugin {
|
|
|
52009
52009
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PAUSE, this.changeTogglePlay);
|
|
52010
52010
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_STOP, this.changeTogglePlay);
|
|
52011
52011
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_DBLCLICK, this.toggleFullscreen);
|
|
52012
|
-
|
|
52013
|
-
this.
|
|
52014
|
-
}
|
|
52015
|
-
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_CLICK, clk);
|
|
52012
|
+
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_CLICK, () => {
|
|
52013
|
+
this.clickaway(this.core.activeContainer.$el[0]);
|
|
52014
|
+
});
|
|
52016
52015
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_TIMEUPDATE, this.onTimeUpdate);
|
|
52017
52016
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_PROGRESS, this.updateProgressBar);
|
|
52018
52017
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_SETTINGSUPDATE, this.updateSettings);
|
|
@@ -52029,12 +52028,14 @@ class MediaControl extends UICorePlugin {
|
|
|
52029
52028
|
});
|
|
52030
52029
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_MOUSE_ENTER, this.show);
|
|
52031
52030
|
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_MOUSE_LEAVE, this.delayHide);
|
|
52031
|
+
this.listenTo(this.core.activeContainer, Events$1.CONTAINER_DESTROYED, () => {
|
|
52032
|
+
this.clickaway(null);
|
|
52033
|
+
});
|
|
52032
52034
|
}
|
|
52033
52035
|
/**
|
|
52034
52036
|
* Hides the media control UI
|
|
52035
52037
|
*/
|
|
52036
52038
|
disable() {
|
|
52037
|
-
trace(`${T$b} disable`);
|
|
52038
52039
|
this.userDisabled = true; // TODO distinguish between user and system (e.g., unplayable) disabled?
|
|
52039
52040
|
this.hide();
|
|
52040
52041
|
this.unbindKeyEvents();
|
|
@@ -52383,9 +52384,6 @@ class MediaControl extends UICorePlugin {
|
|
|
52383
52384
|
else {
|
|
52384
52385
|
this.hideVolumeId = setTimeout(() => {
|
|
52385
52386
|
this.hideVolumeId = null;
|
|
52386
|
-
trace(`${T$b} hideVolumeBar`, {
|
|
52387
|
-
volumeBarContainer: !!this.$volumeBarContainer,
|
|
52388
|
-
});
|
|
52389
52387
|
this.$volumeBarContainer?.addClass('volume-bar-hide');
|
|
52390
52388
|
}, timeout);
|
|
52391
52389
|
}
|
|
@@ -52454,27 +52452,17 @@ class MediaControl extends UICorePlugin {
|
|
|
52454
52452
|
this.core.activeContainer && this.core.activeContainer.seekPercentage(pos);
|
|
52455
52453
|
this.setSeekPercentage(pos);
|
|
52456
52454
|
}
|
|
52457
|
-
setUserKeepVisible() {
|
|
52458
|
-
trace(`${T$b} setUserKeepVisible`, {
|
|
52459
|
-
userKeepVisible: this.userKeepVisible,
|
|
52460
|
-
});
|
|
52455
|
+
setUserKeepVisible(e) {
|
|
52461
52456
|
this.userKeepVisible = true;
|
|
52457
|
+
this.clickaway(this.core.activeContainer.$el[0]);
|
|
52462
52458
|
}
|
|
52463
|
-
resetUserKeepVisible() {
|
|
52464
|
-
trace(`${T$b} resetUserKeepVisible`, {
|
|
52465
|
-
userKeepVisible: this.userKeepVisible,
|
|
52466
|
-
});
|
|
52459
|
+
resetUserKeepVisible = (e) => {
|
|
52467
52460
|
this.userKeepVisible = false;
|
|
52468
|
-
}
|
|
52461
|
+
};
|
|
52469
52462
|
isVisible() {
|
|
52470
52463
|
return !this.$el.hasClass('media-control-hide');
|
|
52471
52464
|
}
|
|
52472
52465
|
show(event) {
|
|
52473
|
-
trace(`${T$b} show`, {
|
|
52474
|
-
disabled: this.disabled,
|
|
52475
|
-
disableControlPanel: this.options.disableControlPanel,
|
|
52476
|
-
event,
|
|
52477
|
-
});
|
|
52478
52466
|
if (this.disabled || this.options.disableControlPanel) {
|
|
52479
52467
|
return;
|
|
52480
52468
|
}
|
|
@@ -52501,16 +52489,6 @@ class MediaControl extends UICorePlugin {
|
|
|
52501
52489
|
this.updateCursorStyle(showing);
|
|
52502
52490
|
}
|
|
52503
52491
|
hide(delay = 0) {
|
|
52504
|
-
trace(`${T$b} hide`, {
|
|
52505
|
-
delay,
|
|
52506
|
-
visible: this.isVisible(),
|
|
52507
|
-
disabled: this.disabled,
|
|
52508
|
-
hideMediaControl: this.options.hideMediaControl,
|
|
52509
|
-
userKeepVisible: this.userKeepVisible,
|
|
52510
|
-
keepVisible: this.keepVisible,
|
|
52511
|
-
draggingSeekBar: this.draggingSeekBar,
|
|
52512
|
-
draggingVolumeBar: this.draggingVolumeBar,
|
|
52513
|
-
});
|
|
52514
52492
|
if (!this.isVisible()) {
|
|
52515
52493
|
return;
|
|
52516
52494
|
}
|
|
@@ -52953,12 +52931,12 @@ class MediaControl extends UICorePlugin {
|
|
|
52953
52931
|
this.$el.removeClass('dvr');
|
|
52954
52932
|
}
|
|
52955
52933
|
}
|
|
52956
|
-
delayHide(
|
|
52957
|
-
trace(`${T$b} delayHide`, {
|
|
52958
|
-
e,
|
|
52959
|
-
});
|
|
52934
|
+
delayHide() {
|
|
52960
52935
|
this.hide(this.options.hideMediaControlDelay || DEFAULT_HIDE_DELAY);
|
|
52961
52936
|
}
|
|
52937
|
+
// 2 seconds delay is needed since on mobile devices mouse(touch)move events are not dispatched immediately
|
|
52938
|
+
// as opposed to the click event
|
|
52939
|
+
clickaway = clickaway(() => setTimeout(this.resetUserKeepVisible, 0));
|
|
52962
52940
|
}
|
|
52963
52941
|
MediaControl.extend = function (properties) {
|
|
52964
52942
|
return extend(MediaControl, properties);
|
|
@@ -52999,14 +52977,19 @@ function mergeElements(a, b) {
|
|
|
52999
52977
|
return acc;
|
|
53000
52978
|
}, a);
|
|
53001
52979
|
}
|
|
53002
|
-
function clickaway(callback
|
|
53003
|
-
|
|
53004
|
-
|
|
53005
|
-
|
|
53006
|
-
|
|
52980
|
+
function clickaway(callback) {
|
|
52981
|
+
let handler = (event) => { };
|
|
52982
|
+
return (node) => {
|
|
52983
|
+
window.removeEventListener('click', handler);
|
|
52984
|
+
if (!node) {
|
|
52985
|
+
return;
|
|
53007
52986
|
}
|
|
53008
|
-
|
|
53009
|
-
|
|
52987
|
+
handler = (event) => {
|
|
52988
|
+
if (!node.contains(event.target)) {
|
|
52989
|
+
window.removeEventListener('click', handler);
|
|
52990
|
+
callback();
|
|
52991
|
+
}
|
|
52992
|
+
};
|
|
53010
52993
|
window.addEventListener('click', handler);
|
|
53011
52994
|
};
|
|
53012
52995
|
}
|