@latest-thinking/lt-player 1.0.7-b → 1.0.7-c
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/js/lt-player-main.js +1 -1
- package/dist/js/lt-player-main.js.map +1 -1
- package/package.json +1 -1
- package/src/components/LTPlayerSetup.ts +7 -0
- package/src/components/controls/LTPlayerControlsEvents.ts +0 -1
- package/src/components/events/LTPlayerDesktop.ts +2 -2
- package/src/components/events/LTPlayerMobile.ts +4 -4
- package/src/components/poster/LTPlayerPosterEvents.ts +33 -28
package/package.json
CHANGED
|
@@ -180,6 +180,13 @@ export class LTPlayerSetup {
|
|
|
180
180
|
const processVideo = () => {
|
|
181
181
|
let videoTag = document.createElement('video');
|
|
182
182
|
videoTag.src = url;
|
|
183
|
+
|
|
184
|
+
if (url.includes('.m3u8')) {
|
|
185
|
+
return new Promise((resolve) => {
|
|
186
|
+
resolve('portrait')
|
|
187
|
+
})
|
|
188
|
+
}
|
|
189
|
+
|
|
183
190
|
return new Promise((resolve) => {
|
|
184
191
|
videoTag.addEventListener( "loadedmetadata", function (e) {
|
|
185
192
|
if (this.videoWidth > this.videoHeight) {
|
|
@@ -65,7 +65,7 @@ export class LTPlayerDesktop extends LTPlayerCommon implements EventsInterfaces
|
|
|
65
65
|
}
|
|
66
66
|
eventManager.onReadyPlayer();
|
|
67
67
|
eventManager.modal(instance);
|
|
68
|
-
instance.posterManager.desktopEvents.
|
|
68
|
+
instance.posterManager.desktopEvents.posterBody(instance);
|
|
69
69
|
|
|
70
70
|
if (instance.playerConfig.getPreload()) {
|
|
71
71
|
eventManager.preloadPoster.ready(instance);
|
|
@@ -118,7 +118,7 @@ export class LTPlayerDesktop extends LTPlayerCommon implements EventsInterfaces
|
|
|
118
118
|
plyr.embed.ready().then (function LTPlayerEmbedReady() {
|
|
119
119
|
eventManager.modal(instance);
|
|
120
120
|
eventManager.onReadyPlayer();
|
|
121
|
-
instance.posterManager.desktopEvents.
|
|
121
|
+
instance.posterManager.desktopEvents.posterBody(instance);
|
|
122
122
|
if (instance.playerConfig.getPreload()) {
|
|
123
123
|
eventManager.preloadPoster.ready(instance);
|
|
124
124
|
}
|
|
@@ -61,7 +61,7 @@ export class LTPlayerMobile extends LTPlayerCommon implements EventsInterfaces {
|
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
eventManager.onReadyPlayer();
|
|
64
|
-
instance.posterManager.mobileEvents.
|
|
64
|
+
instance.posterManager.mobileEvents.posterBody(instance);
|
|
65
65
|
|
|
66
66
|
instance.playerControl.mobileEvents.seekBar(instance);
|
|
67
67
|
|
|
@@ -102,11 +102,11 @@ export class LTPlayerMobile extends LTPlayerCommon implements EventsInterfaces {
|
|
|
102
102
|
let plyr: Plyr = this.plyr;
|
|
103
103
|
|
|
104
104
|
if (plyr.isEmbed) {
|
|
105
|
-
plyr.on('ready', function LTPLayerMobileReadyEmbed() {
|
|
106
|
-
plyr.embed.ready().then(function LTPlayerEmbedReady() {
|
|
105
|
+
plyr.on('ready', function LTPLayerMobileReadyEmbed(): void {
|
|
106
|
+
plyr.embed.ready().then(function LTPlayerEmbedReady():void {
|
|
107
107
|
eventManager.onReadyPlayer();
|
|
108
108
|
instance.playerControl.mobileEvents.seekBar(instance);
|
|
109
|
-
instance.posterManager.mobileEvents.
|
|
109
|
+
instance.posterManager.mobileEvents.posterBody(instance);
|
|
110
110
|
if (instance.playerConfig.getPreload()) {
|
|
111
111
|
eventManager.preloadPoster.ready(instance);
|
|
112
112
|
}
|
|
@@ -78,50 +78,57 @@ export namespace LTPlayerPosterEvents {
|
|
|
78
78
|
|
|
79
79
|
export class Desktop {
|
|
80
80
|
/**
|
|
81
|
-
* Add play event on poster
|
|
81
|
+
* Add play event on poster
|
|
82
82
|
*/
|
|
83
|
-
|
|
83
|
+
posterBody(instance: LTPlayer.PortraitType | LTPlayer.LandscapeType) {
|
|
84
84
|
|
|
85
|
-
const common = new LTPlayerPosterEvents.Common();
|
|
85
|
+
const common: Common = new LTPlayerPosterEvents.Common();
|
|
86
86
|
|
|
87
|
-
|
|
88
|
-
|
|
87
|
+
const playerContainer: HTMLElement = instance.plyr.elements.container;
|
|
88
|
+
const posterBody: HTMLElement = playerContainer.querySelector('.lt-player__poster__body');
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
if (posterBody) {
|
|
92
|
+
posterBody.addEventListener('click', function LTPlayerPosterButtons(event) {
|
|
89
93
|
event.preventDefault();
|
|
90
94
|
instance.playerControl.desktopEvents.titleLineBreak(instance);
|
|
91
95
|
instance.playerControl.desktopEvents.playPauseIcon(instance, 'timeupdate');
|
|
92
96
|
common.poster.reset(instance);
|
|
93
97
|
})
|
|
94
|
-
}
|
|
98
|
+
}
|
|
95
99
|
}
|
|
96
100
|
}
|
|
97
101
|
|
|
98
102
|
export class Mobile {
|
|
99
103
|
/**
|
|
100
|
-
* Add play event on poster
|
|
104
|
+
* Add play event on poster mobile
|
|
101
105
|
*/
|
|
102
|
-
|
|
106
|
+
posterBody(instance: LTPlayer.PortraitType | LTPlayer.LandscapeType) {
|
|
103
107
|
|
|
104
|
-
const
|
|
105
|
-
const
|
|
106
|
-
const
|
|
108
|
+
const playerContainer: HTMLElement = instance.plyr.elements.container;
|
|
109
|
+
const playerPoster: Element = playerContainer.querySelector('.plyr__poster');
|
|
110
|
+
const playerBody: Element = playerContainer.querySelector('.lt-player__poster__body');
|
|
111
|
+
const common: Common = new LTPlayerPosterEvents.Common();
|
|
107
112
|
|
|
108
|
-
|
|
109
|
-
let mobileEvent: HammerManager = instance.eventInstance.mobileEvents.setMobileEvent(button);
|
|
113
|
+
let mobileEvent: HammerManager = instance.eventInstance.mobileEvents.setMobileEvent(playerBody);
|
|
110
114
|
|
|
111
|
-
|
|
112
|
-
|
|
115
|
+
if (mobileEvent) {
|
|
116
|
+
mobileEvent.on('singletap', function LTPlayerMobilePosterPlay() {
|
|
113
117
|
|
|
114
|
-
|
|
118
|
+
if (playerPoster.classList.contains('d-none')) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
instance.playerControl.desktopEvents.titleLineBreak(instance);
|
|
115
123
|
|
|
116
|
-
|
|
117
|
-
|
|
124
|
+
instance.playerControl.mobileEvents.playPauseIcon(instance, 'timeupdate');
|
|
125
|
+
common.poster.reset(instance);
|
|
118
126
|
|
|
119
|
-
|
|
127
|
+
playerContainer.classList.remove('plyr__poster-enabled');
|
|
120
128
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
});
|
|
129
|
+
instance.playerControl.mobileEvents.showControls(instance);
|
|
130
|
+
});
|
|
131
|
+
}
|
|
125
132
|
}
|
|
126
133
|
|
|
127
134
|
/**
|
|
@@ -138,9 +145,9 @@ export namespace LTPlayerPosterEvents {
|
|
|
138
145
|
}
|
|
139
146
|
|
|
140
147
|
showControls(instance: LTPlayer.PortraitType | LTPlayer.LandscapeType) {
|
|
141
|
-
const playerContainer = instance.plyr.elements.container;
|
|
142
|
-
const playerControlsContainer = instance.plyr.elements.controls;
|
|
143
|
-
const playerPoster = playerContainer.querySelector('.plyr__poster');
|
|
148
|
+
const playerContainer: HTMLElement = instance.plyr.elements.container;
|
|
149
|
+
const playerControlsContainer: HTMLElement = instance.plyr.elements.controls;
|
|
150
|
+
const playerPoster: Element = playerContainer.querySelector('.plyr__poster');
|
|
144
151
|
|
|
145
152
|
|
|
146
153
|
let mobileEvent: HammerManager = instance.eventInstance.mobileEvents.setMobileEvent(playerPoster);
|
|
@@ -153,7 +160,5 @@ export namespace LTPlayerPosterEvents {
|
|
|
153
160
|
});
|
|
154
161
|
}
|
|
155
162
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
163
|
}
|
|
159
164
|
}
|