@latest-thinking/lt-player 1.0.7 → 1.0.8
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/css/lt-player-main.css +1 -1
- package/dist/css/lt-player-main.css.map +1 -1
- package/dist/js/lt-player-main.js +1 -1
- package/dist/js/lt-player-main.js.map +1 -1
- package/package.json +2 -1
- package/src/assets/sass/abstracts/_mixins.scss +38 -0
- package/src/assets/sass/abstracts/_variables.scss +5 -0
- package/src/assets/sass/app.scss +22 -1
- package/src/assets/sass/components/_modal.scss +39 -24
- package/src/assets/sass/core/_player.scss +24 -2
- package/src/assets/sass/sections/_additional-info.scss +7 -0
- package/src/assets/sass/sections/_poster.scss +251 -177
- package/src/assets/sass/sections/_settings.scss +6 -4
- package/src/assets/sass/sections/_share.scss +2 -8
- package/src/assets/sass/sections/controllers/_botom.scss +1 -0
- package/src/components/LTPlayerHls.ts +10 -1
- package/src/components/LTPlayerSetup.ts +7 -0
- package/src/components/LTPlayerType.ts +6 -1
- package/src/components/addInfo/LTPlayerAddInfoDesktop.ts +43 -15
- package/src/components/addInfo/LTPlayerAddInfoMobile.ts +60 -57
- package/src/components/config/LTPlayerConfigProcessor.ts +1 -1
- package/src/components/controls/LTPlayerControlsEvents.ts +94 -59
- package/src/components/events/LTPlayerCommon.ts +0 -4
- package/src/components/events/LTPlayerDesktop.ts +3 -3
- package/src/components/events/LTPlayerMobile.ts +8 -10
- package/src/components/poster/LTPlayerPoster.ts +6 -1
- package/src/components/poster/LTPlayerPosterEvents.ts +41 -28
- package/src/components/share/LTPlayerShareDesktop.ts +14 -3
- package/src/index.ts +4 -9
- package/src/services/Helper.ts +27 -0
- package/src/services/ResizeService.ts +66 -36
- package/src/views/additionalInfo.handlebars +11 -1
- package/src/views/controls.handlebars +4 -4
- package/src/views/poster.handlebars +43 -10
- package/src/views/share.handlebars +2 -2
- package/src/views/template.handlebars +1 -1
|
@@ -78,50 +78,65 @@ 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();
|
|
94
|
+
|
|
95
|
+
if((event.target as HTMLInputElement).classList.contains('poster-lt-player-share') ||
|
|
96
|
+
(event.target as HTMLInputElement).classList.contains('filter')
|
|
97
|
+
) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
|
|
90
101
|
instance.playerControl.desktopEvents.titleLineBreak(instance);
|
|
91
102
|
instance.playerControl.desktopEvents.playPauseIcon(instance, 'timeupdate');
|
|
92
103
|
common.poster.reset(instance);
|
|
104
|
+
|
|
93
105
|
})
|
|
94
|
-
}
|
|
106
|
+
}
|
|
95
107
|
}
|
|
96
108
|
}
|
|
97
109
|
|
|
98
110
|
export class Mobile {
|
|
99
111
|
/**
|
|
100
|
-
* Add play event on poster
|
|
112
|
+
* Add play event on poster mobile
|
|
101
113
|
*/
|
|
102
|
-
|
|
114
|
+
posterBody(instance: LTPlayer.PortraitType | LTPlayer.LandscapeType) {
|
|
103
115
|
|
|
104
|
-
const
|
|
105
|
-
const
|
|
106
|
-
const
|
|
116
|
+
const playerContainer: HTMLElement = instance.plyr.elements.container;
|
|
117
|
+
const playerPoster: Element = playerContainer.querySelector('.plyr__poster');
|
|
118
|
+
const playerBody: Element = playerContainer.querySelector('.lt-player__poster__body');
|
|
119
|
+
const common: Common = new LTPlayerPosterEvents.Common();
|
|
107
120
|
|
|
108
|
-
|
|
109
|
-
|
|
121
|
+
let mobileEvent: HammerManager = instance.eventInstance.mobileEvents.setMobileEvent(playerBody);
|
|
122
|
+
|
|
123
|
+
if (mobileEvent) {
|
|
124
|
+
mobileEvent.on('singletap', function LTPlayerMobilePosterPlay() {
|
|
110
125
|
|
|
111
|
-
|
|
112
|
-
|
|
126
|
+
if (playerPoster.classList.contains('d-none')) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
113
129
|
|
|
114
|
-
|
|
130
|
+
instance.playerControl.desktopEvents.titleLineBreak(instance);
|
|
115
131
|
|
|
116
|
-
|
|
117
|
-
|
|
132
|
+
instance.playerControl.mobileEvents.playPauseIcon(instance, 'timeupdate');
|
|
133
|
+
common.poster.reset(instance);
|
|
118
134
|
|
|
119
|
-
|
|
135
|
+
playerContainer.classList.remove('plyr__poster-enabled');
|
|
120
136
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
});
|
|
137
|
+
instance.playerControl.mobileEvents.showControls(instance);
|
|
138
|
+
});
|
|
139
|
+
}
|
|
125
140
|
}
|
|
126
141
|
|
|
127
142
|
/**
|
|
@@ -138,9 +153,9 @@ export namespace LTPlayerPosterEvents {
|
|
|
138
153
|
}
|
|
139
154
|
|
|
140
155
|
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');
|
|
156
|
+
const playerContainer: HTMLElement = instance.plyr.elements.container;
|
|
157
|
+
const playerControlsContainer: HTMLElement = instance.plyr.elements.controls;
|
|
158
|
+
const playerPoster: Element = playerContainer.querySelector('.plyr__poster');
|
|
144
159
|
|
|
145
160
|
|
|
146
161
|
let mobileEvent: HammerManager = instance.eventInstance.mobileEvents.setMobileEvent(playerPoster);
|
|
@@ -153,7 +168,5 @@ export namespace LTPlayerPosterEvents {
|
|
|
153
168
|
});
|
|
154
169
|
}
|
|
155
170
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
171
|
}
|
|
159
172
|
}
|
|
@@ -3,6 +3,7 @@ import {LTPlayerShareManager} from "./LTPlayerShareManager";
|
|
|
3
3
|
export class LTPlayerShareDesktop {
|
|
4
4
|
manager : LTPlayerShareManager
|
|
5
5
|
isPlaying : boolean
|
|
6
|
+
switchButtonSet: boolean
|
|
6
7
|
constructor(instance : LTPlayerShareManager) {
|
|
7
8
|
this.manager = instance;
|
|
8
9
|
this.setTemplate();
|
|
@@ -29,8 +30,13 @@ export class LTPlayerShareDesktop {
|
|
|
29
30
|
this.setCopyContent(false);
|
|
30
31
|
}
|
|
31
32
|
|
|
32
|
-
this.setCopyButtonsEvents()
|
|
33
|
-
|
|
33
|
+
this.setCopyButtonsEvents();
|
|
34
|
+
|
|
35
|
+
if (!this.switchButtonSet) {
|
|
36
|
+
this.setSwitchButton();
|
|
37
|
+
this.switchButtonSet = true;
|
|
38
|
+
}
|
|
39
|
+
|
|
34
40
|
if (instance.plyr.playing) {
|
|
35
41
|
this.isPlaying = true;
|
|
36
42
|
instance.plyr.pause();
|
|
@@ -49,7 +55,8 @@ export class LTPlayerShareDesktop {
|
|
|
49
55
|
return;
|
|
50
56
|
}
|
|
51
57
|
|
|
52
|
-
|
|
58
|
+
const switchEvent = () => {
|
|
59
|
+
|
|
53
60
|
if (selectors.urlInput.classList.contains('canonicalUrl')) {
|
|
54
61
|
selectors.urlInput.classList.remove('canonicalUrl');
|
|
55
62
|
selectors.urlInput.classList.add('embedUrl');
|
|
@@ -59,6 +66,10 @@ export class LTPlayerShareDesktop {
|
|
|
59
66
|
selectors.urlInput.classList.remove('embedUrl');
|
|
60
67
|
this.setCopyContent(false);
|
|
61
68
|
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
selectors.switchButton.addEventListener('click', () => {
|
|
72
|
+
switchEvent();
|
|
62
73
|
})
|
|
63
74
|
}
|
|
64
75
|
|
package/src/index.ts
CHANGED
|
@@ -2,14 +2,9 @@ import {LTPlayerManager} from "./components/LTPlayerManager";
|
|
|
2
2
|
|
|
3
3
|
const supportsContainerQueries = "container" in document.documentElement.style;
|
|
4
4
|
if (!supportsContainerQueries) {
|
|
5
|
-
|
|
6
|
-
polyfill_script.setAttribute('src','https://cdn.jsdelivr.net/npm/container-query-polyfill@1/dist/container-query-polyfill.modern.js');
|
|
7
|
-
document.body.appendChild(polyfill_script);
|
|
5
|
+
require('container-query-polyfill');
|
|
8
6
|
}
|
|
9
7
|
|
|
10
|
-
|
|
11
|
-
window.
|
|
12
|
-
|
|
13
|
-
window.Player = new LTPlayerManager();
|
|
14
|
-
}
|
|
15
|
-
})
|
|
8
|
+
if (window.Player === undefined) {
|
|
9
|
+
window.Player = new LTPlayerManager();
|
|
10
|
+
}
|
package/src/services/Helper.ts
CHANGED
|
@@ -112,4 +112,31 @@ export class Helper {
|
|
|
112
112
|
return 'portrait'
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
|
+
|
|
116
|
+
static getPlayerStringType(type: string|number)
|
|
117
|
+
{
|
|
118
|
+
let response = null;
|
|
119
|
+
|
|
120
|
+
switch (type) {
|
|
121
|
+
case "1":
|
|
122
|
+
response = 'portrait'
|
|
123
|
+
break
|
|
124
|
+
case "2":
|
|
125
|
+
response = 'landscape'
|
|
126
|
+
break
|
|
127
|
+
case 1:
|
|
128
|
+
response = 'portrait'
|
|
129
|
+
break
|
|
130
|
+
case 2:
|
|
131
|
+
response = 'landscape'
|
|
132
|
+
break
|
|
133
|
+
case 'portrait':
|
|
134
|
+
response = 'portrait'
|
|
135
|
+
break
|
|
136
|
+
case 'landscape':
|
|
137
|
+
response = 'landscape'
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
return response;
|
|
141
|
+
}
|
|
115
142
|
}
|
|
@@ -5,6 +5,7 @@ import {LTPLayerAddInfoResizeManager} from "../components/addInfo/LTPLayerAddInf
|
|
|
5
5
|
import {LTPLayerAddInfo} from "../components/addInfo/LTPlayerAddInfoManager";
|
|
6
6
|
import {LTPlayerRotateDeviceService} from "./LTPlayerRotateDeviceService";
|
|
7
7
|
import {LTPlayerAddInfoDesktop} from "../components/addInfo/LTPlayerAddInfoDesktop";
|
|
8
|
+
import {Helper} from "./Helper";
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* Window service (set width and height)
|
|
@@ -138,8 +139,38 @@ export class ResizeService {
|
|
|
138
139
|
|
|
139
140
|
protected setAddInfoByDimensions(containerWidth: number, buttonsTemplate:string, deskEvent: LTPlayerAddInfoDesktop, controller: LTPLayerAddInfo.Controller) {
|
|
140
141
|
|
|
142
|
+
|
|
141
143
|
const createAddInfoButtonsOutSide = () => {
|
|
144
|
+
const setButtonsByVideoType = () => {
|
|
145
|
+
const plyr: Plyr = this.player;
|
|
146
|
+
|
|
147
|
+
if (plyr.embed !== undefined) {
|
|
148
|
+
deskEvent.set(controller, 'out');
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
if (this.playerInstance.playerConfig.getVideoType() === 'embedded') {
|
|
154
|
+
plyr.on('ready', function () {
|
|
155
|
+
plyr.embed.ready().then (function () {
|
|
156
|
+
deskEvent.set(controller, 'out');
|
|
157
|
+
})
|
|
158
|
+
})
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
142
161
|
|
|
162
|
+
if (this.playerInstance.playerConfig.getVideoType() === 'video'){
|
|
163
|
+
plyr.on('ready', function () {
|
|
164
|
+
deskEvent.set(controller, 'out');
|
|
165
|
+
return;
|
|
166
|
+
})
|
|
167
|
+
deskEvent.set(controller, 'out');
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
}
|
|
143
174
|
let addInfoContainer = this.playerInstance.playerConfig.getPlayerElementContainer().querySelector('.lt-player__additional-info');
|
|
144
175
|
if (addInfoContainer) {
|
|
145
176
|
addInfoContainer.remove();
|
|
@@ -148,12 +179,12 @@ export class ResizeService {
|
|
|
148
179
|
this.playerInstance.plyr.elements.container.insertAdjacentHTML("afterend", buttonsTemplate);
|
|
149
180
|
let inserted = this.playerInstance.playerConfig.getPlayerElementContainer().querySelector('.lt-player__additional-info');
|
|
150
181
|
inserted.classList.add('lt-player__additional-info__is_set_out-side');
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
})
|
|
182
|
+
|
|
183
|
+
setButtonsByVideoType();
|
|
154
184
|
}
|
|
155
185
|
|
|
156
186
|
const createAddInfoButtonsInSide = () => {
|
|
187
|
+
|
|
157
188
|
let addInfoContainer = this.playerInstance.playerConfig.getPlayerElementContainer().querySelector('.lt-player__additional-info');
|
|
158
189
|
if (addInfoContainer) {
|
|
159
190
|
addInfoContainer.remove();
|
|
@@ -166,7 +197,7 @@ export class ResizeService {
|
|
|
166
197
|
let inserted = this.playerInstance.playerConfig.getPlayerElementContainer().querySelector('.lt-player__additional-info');
|
|
167
198
|
inserted.classList.add('lt-player__additional-info__is_set_in-side');
|
|
168
199
|
|
|
169
|
-
deskEvent.set(controller);
|
|
200
|
+
deskEvent.set(controller, 'in');
|
|
170
201
|
} else {
|
|
171
202
|
this.playerInstance.plyr.on('ready', () => {
|
|
172
203
|
|
|
@@ -176,42 +207,41 @@ export class ResizeService {
|
|
|
176
207
|
let inserted = this.playerInstance.playerConfig.getPlayerElementContainer().querySelector('.lt-player__additional-info');
|
|
177
208
|
inserted.classList.add('lt-player__additional-info__is_set_in-side');
|
|
178
209
|
|
|
179
|
-
deskEvent.set(controller);
|
|
210
|
+
deskEvent.set(controller, 'in');
|
|
180
211
|
})
|
|
181
212
|
}
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
213
|
}
|
|
186
214
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
if (this.addInfoInSide && containerWidth + 70 <= 380) {
|
|
190
|
-
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
if (this.addInfoOutSide) {
|
|
194
|
-
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
this.addInfoOutSide = true;
|
|
198
|
-
this.addInfoInSide = false;
|
|
199
|
-
|
|
200
|
-
createAddInfoButtonsOutSide();
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
if (this.addInfoOutSide && containerWidth + 70 >= 380) {
|
|
204
|
-
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
if (this.addInfoInSide) {
|
|
208
|
-
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
this.addInfoInSide = true;
|
|
212
|
-
this.addInfoOutSide = false;
|
|
213
|
-
createAddInfoButtonsInSide();
|
|
214
|
-
|
|
215
|
+
// if (containerWidth >= 380) {
|
|
216
|
+
//
|
|
217
|
+
// if (this.addInfoInSide && (containerWidth + 70 <= 380)) {
|
|
218
|
+
// return;
|
|
219
|
+
// }
|
|
220
|
+
//
|
|
221
|
+
// if (this.addInfoOutSide) {
|
|
222
|
+
// return;
|
|
223
|
+
// }
|
|
224
|
+
//
|
|
225
|
+
// this.addInfoOutSide = true;
|
|
226
|
+
// this.addInfoInSide = false;
|
|
227
|
+
//
|
|
228
|
+
// createAddInfoButtonsOutSide();
|
|
229
|
+
// } else {
|
|
230
|
+
//
|
|
231
|
+
// if (this.addInfoOutSide && (containerWidth + 70 >= 380)) {
|
|
232
|
+
// return;
|
|
233
|
+
// }
|
|
234
|
+
//
|
|
235
|
+
// if (this.addInfoInSide) {
|
|
236
|
+
// return;
|
|
237
|
+
// }
|
|
238
|
+
//
|
|
239
|
+
// this.addInfoInSide = true;
|
|
240
|
+
// this.addInfoOutSide = false;
|
|
241
|
+
// createAddInfoButtonsInSide();
|
|
242
|
+
// }
|
|
243
|
+
|
|
244
|
+
createAddInfoButtonsInSide();
|
|
215
245
|
|
|
216
246
|
}
|
|
217
247
|
|
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
{{#modal}}
|
|
2
2
|
{{#mobile}}
|
|
3
|
+
{{#data}}
|
|
4
|
+
<div class="player-lt__modal__mobile__background"></div>
|
|
5
|
+
<div class="player-lt__modal__mobile">
|
|
6
|
+
<div class="player-lt__mobile__modal-header">
|
|
7
|
+
<span class="line-button"></span>
|
|
8
|
+
</div>
|
|
9
|
+
<div class="player-lt__mobile__modal-content">
|
|
10
|
+
{{{data}}}
|
|
11
|
+
</div>
|
|
12
|
+
</div>
|
|
13
|
+
{{/data}}
|
|
3
14
|
{{#object_data}}
|
|
4
15
|
<div class="player-lt__modal__mobile__background"></div>
|
|
5
16
|
<div class="player-lt__modal__mobile">
|
|
@@ -28,7 +39,6 @@
|
|
|
28
39
|
</div>
|
|
29
40
|
</div>
|
|
30
41
|
{{/object_data}}
|
|
31
|
-
|
|
32
42
|
{{/mobile}}
|
|
33
43
|
{{#desktop}}
|
|
34
44
|
{{#object_data}}
|
|
@@ -95,15 +95,15 @@
|
|
|
95
95
|
<div class="bottom-controller__volume_control">
|
|
96
96
|
<button type="button" class="plyr__control volume_control__volume-button button-open">
|
|
97
97
|
<img class="volume-max filter button-open" data-range-value="1" src="{{icons.volume-3}}" alt="">
|
|
98
|
-
<img class="volume-75 d-none filter button-open" data-range-value="0.
|
|
99
|
-
<img class="volume-50 d-none filter button-open" data-range-value="0.
|
|
98
|
+
<img class="volume-75 d-none filter button-open" data-range-value="0.40" src="{{icons.volume-2}}" alt="">
|
|
99
|
+
<img class="volume-50 d-none filter button-open" data-range-value="0.02" src="{{icons.volume-1}}" alt="">
|
|
100
100
|
<img class="volume-mute d-none filter button-open" data-range-value="0" src="{{icons.mute}}" alt="">
|
|
101
101
|
</button>
|
|
102
102
|
<div class="volume_control__background d-none">
|
|
103
103
|
<button class="volume_control__volume-button-close button-close">
|
|
104
104
|
<img class="volume-max button-close" data-range-value="1" src="{{icons.volume-3}}" alt="">
|
|
105
|
-
<img class="volume-75 d-none button-close" data-range-value="0.
|
|
106
|
-
<img class="volume-50 d-none button-close" data-range-value="0.
|
|
105
|
+
<img class="volume-75 d-none button-close" data-range-value="0.40" src="{{icons.volume-2}}" alt="">
|
|
106
|
+
<img class="volume-50 d-none button-close" data-range-value="0.02" src="{{icons.volume-1}}" alt="">
|
|
107
107
|
<img class="volume-mute d-none button-close" data-range-value="0" src="{{icons.mute}}" alt="">
|
|
108
108
|
</button>
|
|
109
109
|
</div>
|
|
@@ -1,32 +1,64 @@
|
|
|
1
|
+
{{#portrait}}
|
|
1
2
|
<div class="lt-player__poster">
|
|
2
|
-
|
|
3
|
+
<div class="lt-player__poster__image-body">
|
|
4
|
+
<div class="lt-player__poster--background"></div>
|
|
5
|
+
<img class="lt-player__poster__img lt-player__poster__img__set-default d-none" alt="" src="{{logoBig}}">
|
|
6
|
+
<img class="lt-player__poster__img--set-custom d-none" alt="" src="{{config.configData.posterImage}}">
|
|
7
|
+
</div>
|
|
8
|
+
<div class="lt-player__poster__body">
|
|
9
|
+
<div class="content">
|
|
10
|
+
<div class="content__header">
|
|
11
|
+
<img src="{{config.logo}}" alt="logo">
|
|
12
|
+
</div>
|
|
13
|
+
<div class="content__body">
|
|
14
|
+
<div class="poster-title">{{config.configData.videoParagraph}}</div>
|
|
15
|
+
<div class="poster-paragraph">{{config.configData.videoTitle}}</div>
|
|
16
|
+
</div>
|
|
17
|
+
<div class="content__footer">
|
|
18
|
+
<div class="poster-buttons">
|
|
19
|
+
<button class="poster-button-play">
|
|
20
|
+
<img src="{{config.play}}" alt="" class="icon--not-pressed" role="presentation">
|
|
21
|
+
</button>
|
|
22
|
+
<button class="poster-button-watch-now">
|
|
23
|
+
Watch now
|
|
24
|
+
</button>
|
|
25
|
+
{{#isShare}}
|
|
26
|
+
<button class="poster-lt-player-share" type="button">
|
|
27
|
+
<img class="filter" src="{{config.share}}" alt="" role="presentation">
|
|
28
|
+
</button>
|
|
29
|
+
{{/isShare}}
|
|
30
|
+
</div>
|
|
31
|
+
</div>
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
{{/portrait}}
|
|
36
|
+
{{#landscape}}
|
|
37
|
+
<div class="lt-player__poster">
|
|
38
|
+
<div class="lt-player__poster__image-body">
|
|
39
|
+
<div class="lt-player__poster--background"></div>
|
|
3
40
|
<img class="lt-player__poster__img lt-player__poster__img__set-default d-none" alt="" src="{{logoBig}}">
|
|
4
41
|
<img class="lt-player__poster__img--set-custom d-none" alt="" src="{{config.configData.posterImage}}">
|
|
5
42
|
</div>
|
|
6
43
|
<div class="lt-player__poster__body">
|
|
7
44
|
<div class="content">
|
|
8
45
|
<div class="content__header">
|
|
9
|
-
|
|
10
|
-
<div class="logo">
|
|
11
|
-
<img src="{{config.logo}}" alt="">
|
|
12
|
-
</div>
|
|
13
|
-
</div>
|
|
46
|
+
<div class="poster-title">{{config.configData.videoParagraph}}</div>
|
|
14
47
|
</div>
|
|
15
48
|
<div class="content__body">
|
|
16
|
-
|
|
17
|
-
<p class="poster-paragraph">{{config.configData.videoTitle}}</p>
|
|
49
|
+
<div class="poster-paragraph">{{config.configData.videoTitle}}</div>
|
|
18
50
|
</div>
|
|
19
51
|
<div class="content__footer">
|
|
20
52
|
<div class="poster-buttons">
|
|
21
53
|
<button class="poster-button-play">
|
|
22
|
-
<img src="{{config.play}}" alt="" class="icon--not-pressed" role="presentation"
|
|
54
|
+
<img src="{{config.play}}" alt="" class="icon--not-pressed" role="presentation">
|
|
23
55
|
</button>
|
|
24
56
|
<button class="poster-button-watch-now">
|
|
25
57
|
Watch now
|
|
26
58
|
</button>
|
|
27
59
|
{{#isShare}}
|
|
28
60
|
<button class="poster-lt-player-share" type="button">
|
|
29
|
-
<img class="filter" src="{{config.share}}" alt="" role="presentation"
|
|
61
|
+
<img class="filter" src="{{config.share}}" alt="" role="presentation">
|
|
30
62
|
</button>
|
|
31
63
|
{{/isShare}}
|
|
32
64
|
</div>
|
|
@@ -34,3 +66,4 @@
|
|
|
34
66
|
</div>
|
|
35
67
|
</div>
|
|
36
68
|
</div>
|
|
69
|
+
{{/landscape}}
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
<a class="button_embed lt-player-mobile-share">
|
|
27
27
|
<span class="share-icon__icon lt-player-mobile-share">
|
|
28
28
|
<svg class="lt-player-mobile-share" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
29
|
-
<path d="M8.00028 17.0003C7.74428 17.0003 7.48825 16.9023 7.29325 16.7073L3.29325 12.7073C2.90225 12.3163 2.90225 11.6843 3.29325 11.2933L7.29325 7.29325C7.68425 6.90225 8.31631 6.90225 8.70731 7.29325C9.09831 7.68425 9.09831 8.31631 8.70731 8.70731L5.41434 12.0003L8.70731 15.2933C9.09831 15.6843 9.09831 16.3163 8.70731 16.7073C8.51231 16.9023 8.25628 17.0003 8.00028 17.0003Z" fill="#
|
|
30
|
-
<path d="M16.0007 17.0003C16.2567 17.0003 16.5127 16.9023 16.7077 16.7073L20.7077 12.7073C21.0987 12.3163 21.0987 11.6843 20.7077 11.2933L16.7077 7.29325C16.3167 6.90225 15.6847 6.90225 15.2937 7.29325C14.9027 7.68425 14.9027 8.31631 15.2937 8.70731L18.5866 12.0003L15.2937 15.2933C14.9027 15.6843 14.9027 16.3163 15.2937 16.7073C15.4887 16.9023 15.7447 17.0003 16.0007 17.0003Z" fill="#
|
|
29
|
+
<path d="M8.00028 17.0003C7.74428 17.0003 7.48825 16.9023 7.29325 16.7073L3.29325 12.7073C2.90225 12.3163 2.90225 11.6843 3.29325 11.2933L7.29325 7.29325C7.68425 6.90225 8.31631 6.90225 8.70731 7.29325C9.09831 7.68425 9.09831 8.31631 8.70731 8.70731L5.41434 12.0003L8.70731 15.2933C9.09831 15.6843 9.09831 16.3163 8.70731 16.7073C8.51231 16.9023 8.25628 17.0003 8.00028 17.0003Z" fill="#ffffff"/>
|
|
30
|
+
<path d="M16.0007 17.0003C16.2567 17.0003 16.5127 16.9023 16.7077 16.7073L20.7077 12.7073C21.0987 12.3163 21.0987 11.6843 20.7077 11.2933L16.7077 7.29325C16.3167 6.90225 15.6847 6.90225 15.2937 7.29325C14.9027 7.68425 14.9027 8.31631 15.2937 8.70731L18.5866 12.0003L15.2937 15.2933C14.9027 15.6843 14.9027 16.3163 15.2937 16.7073C15.4887 16.9023 15.7447 17.0003 16.0007 17.0003Z" fill="#ffffff"/>
|
|
31
31
|
</svg>
|
|
32
32
|
</span>
|
|
33
33
|
</a>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
</div>
|
|
4
4
|
{{/embedded}}
|
|
5
5
|
{{#video}}
|
|
6
|
-
<video class="embed_player lt-player-wrapper" playsinline controls>
|
|
6
|
+
<video class="embed_player lt-player-wrapper" playsinline controls crossorigin preload="none">
|
|
7
7
|
<source src="{{videoUrl.videoUrl}}"/>
|
|
8
8
|
{{#defaultConfig.captions}}
|
|
9
9
|
<track kind="captions" label="{{label}} captions" src="{{url}}" srclang="{{srclang}}" {{default}} />
|