@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.
Files changed (36) hide show
  1. package/dist/css/lt-player-main.css +1 -1
  2. package/dist/css/lt-player-main.css.map +1 -1
  3. package/dist/js/lt-player-main.js +1 -1
  4. package/dist/js/lt-player-main.js.map +1 -1
  5. package/package.json +2 -1
  6. package/src/assets/sass/abstracts/_mixins.scss +38 -0
  7. package/src/assets/sass/abstracts/_variables.scss +5 -0
  8. package/src/assets/sass/app.scss +22 -1
  9. package/src/assets/sass/components/_modal.scss +39 -24
  10. package/src/assets/sass/core/_player.scss +24 -2
  11. package/src/assets/sass/sections/_additional-info.scss +7 -0
  12. package/src/assets/sass/sections/_poster.scss +251 -177
  13. package/src/assets/sass/sections/_settings.scss +6 -4
  14. package/src/assets/sass/sections/_share.scss +2 -8
  15. package/src/assets/sass/sections/controllers/_botom.scss +1 -0
  16. package/src/components/LTPlayerHls.ts +10 -1
  17. package/src/components/LTPlayerSetup.ts +7 -0
  18. package/src/components/LTPlayerType.ts +6 -1
  19. package/src/components/addInfo/LTPlayerAddInfoDesktop.ts +43 -15
  20. package/src/components/addInfo/LTPlayerAddInfoMobile.ts +60 -57
  21. package/src/components/config/LTPlayerConfigProcessor.ts +1 -1
  22. package/src/components/controls/LTPlayerControlsEvents.ts +94 -59
  23. package/src/components/events/LTPlayerCommon.ts +0 -4
  24. package/src/components/events/LTPlayerDesktop.ts +3 -3
  25. package/src/components/events/LTPlayerMobile.ts +8 -10
  26. package/src/components/poster/LTPlayerPoster.ts +6 -1
  27. package/src/components/poster/LTPlayerPosterEvents.ts +41 -28
  28. package/src/components/share/LTPlayerShareDesktop.ts +14 -3
  29. package/src/index.ts +4 -9
  30. package/src/services/Helper.ts +27 -0
  31. package/src/services/ResizeService.ts +66 -36
  32. package/src/views/additionalInfo.handlebars +11 -1
  33. package/src/views/controls.handlebars +4 -4
  34. package/src/views/poster.handlebars +43 -10
  35. package/src/views/share.handlebars +2 -2
  36. package/src/views/template.handlebars +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@latest-thinking/lt-player",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
4
4
  "description": "LT player.",
5
5
  "main": "dist/js/lt-player-main.js",
6
6
  "module": "dist/js/lt-player-main.js",
@@ -25,6 +25,7 @@
25
25
  "@types/mustache": "^4.2.2",
26
26
  "babel-loader": "^8.2.3",
27
27
  "clean-webpack-plugin": "^4.0.0",
28
+ "container-query-polyfill": "^1.0.2",
28
29
  "copy-webpack-plugin": "^10.2.0",
29
30
  "cross-env": "^7.0.3",
30
31
  "css-loader": "^6.7.2",
@@ -5,6 +5,12 @@
5
5
  transform: translate(-#{$top}, -#{$top});
6
6
  }
7
7
 
8
+ @mixin flex-position($flex, $content, $align) {
9
+ display: $flex;
10
+ justify-content: $content;
11
+ align-items: $align;
12
+ }
13
+
8
14
  @mixin yellow-btn {
9
15
  color: $default-lt-button-color;
10
16
  background-color: $default_color_player;
@@ -68,10 +74,42 @@
68
74
  }
69
75
  }
70
76
 
77
+ @mixin gray-btn {
78
+ color: $default-lt-button-color;
79
+ background-color: $default-lt-button-other;
80
+
81
+ &:hover {
82
+ color: $default-lt-button-color;
83
+ background-color: darken($default-lt-button-other, 10%);
84
+ }
85
+
86
+ &:active,
87
+ &:focus {
88
+ color: $default-lt-button-color;
89
+ background-color: $default-lt-button-other;
90
+ }
91
+
92
+ &:focus-visible,
93
+ &:focus {
94
+ outline: transparent;
95
+ }
96
+ }
97
+
71
98
  @mixin buttons-sm {
72
99
  padding: 8px 10px;
73
100
  }
74
101
 
102
+ @mixin buttons-xxs {
103
+ padding: 6px;
104
+
105
+ img {
106
+ width: 14px;
107
+ height: 14px;
108
+ min-width: 14px;
109
+ min-height: 14px;
110
+ }
111
+ }
112
+
75
113
  @mixin buttons-xs {
76
114
  padding: 7px 7px;
77
115
 
@@ -24,15 +24,20 @@ $lt-player-font-size-lg2: 19px;
24
24
  $lt-player-font-size-xl: 20px;
25
25
  $lt-player-font-size-xxl: 21px;
26
26
  $lt-player-font-size-xxl2: 24px;
27
+ $lg-player-font-size-xxl3: 28px;
27
28
  $lt-player-font-size-xxxl2: 30px;
29
+ $lt-player-font-size-xxxl3: 32px;
28
30
 
29
31
  $lt-player-font-weight-xs: 100;
30
32
  $lt-player-font-weight-sm: 300;
33
+ $lt-player-font-weight-md: 400;
31
34
  $lt-player-font-weight-base: 500;
32
35
  $lt-player-font-weight-lg: 600;
33
36
  $lt-player-font-weight-xl: 700;
37
+ $lt-player-font-weight-xxl: 800;
34
38
 
35
39
  $lt-player-line-height: 1.5;
40
+ $lt-player-line-height-default: 1.2;
36
41
 
37
42
  //---------------------------------------------
38
43
  // 2. Globals
@@ -14,7 +14,11 @@
14
14
  // 1. Basics
15
15
  //---------------------------------------------
16
16
 
17
-
17
+ *,
18
+ *::before,
19
+ *::after {
20
+ box-sizing: border-box;
21
+ }
18
22
 
19
23
  //---------------------------------------------
20
24
  // 2. Resetting properties
@@ -24,12 +28,25 @@ body {
24
28
  margin: 0;
25
29
  }
26
30
 
31
+ .container-text-portrait-player {
32
+ display: flex;
33
+ max-width: 800px;
34
+ max-height: 800px;
35
+ margin-bottom: 3rem;
36
+ }
37
+
38
+ .container-text-landscape-player {
39
+ display: flex;
40
+ max-width: 1000px;
41
+ }
42
+
27
43
  //---------------------------------------------
28
44
  // 3. General
29
45
  //---------------------------------------------
30
46
 
31
47
  .lt-player {
32
48
  display: flex;
49
+ width: 100%;
33
50
  }
34
51
 
35
52
  .lt-player-orientation {
@@ -46,6 +63,10 @@ body {
46
63
  visibility: hidden;
47
64
  }
48
65
 
66
+ .overflow-hidden-body-important {
67
+ overflow: hidden !important;
68
+ }
69
+
49
70
  .d-none {
50
71
  display: none !important;
51
72
  }
@@ -1,5 +1,19 @@
1
1
  @import "../abstracts/variables";
2
2
 
3
+ $modal-max-width: 620px;
4
+
5
+ @mixin modal-max-width {
6
+ @media (max-width: #{$modal-max-width}) {
7
+ @content;
8
+ }
9
+ }
10
+
11
+ @mixin modal-min-width {
12
+ @media (min-width: #{$modal-max-width}) {
13
+ @content;
14
+ }
15
+ }
16
+
3
17
  @mixin modal-h2 {
4
18
  font-size: $lt-player-font-size-xxxl2;
5
19
  font-weight: $lt-player-font-weight-lg;
@@ -119,8 +133,8 @@
119
133
  &__modal-content {
120
134
  color: $default-lt-button-color;
121
135
  text-align: left;
122
- padding: 16px;
123
136
  overflow: auto;
137
+ padding: 20px;
124
138
  font-family: $lt-font-family-base;
125
139
 
126
140
  button,
@@ -169,11 +183,10 @@
169
183
  top: 0;
170
184
  width: 100%;
171
185
  height: 100%;
172
- background-color: rgba(0, 0, 0, 0.5);
173
- opacity: 0;
174
- visibility: hidden;
175
- transform: scale(1.1);
176
- transition: visibility 0s linear 0.25s, opacity 0.25s 0s, transform 0.25s;
186
+
187
+ @include modal-min-width {
188
+ background-color: rgba(0, 0, 0, 0.5);
189
+ }
177
190
 
178
191
  &__mobile {
179
192
  position: absolute;
@@ -212,13 +225,18 @@
212
225
  border-radius: 0;
213
226
  font-family: $lt-font-family-base;
214
227
  width: 100%;
215
- max-height: 540px;
228
+ max-height: calc(100% - 50px);
216
229
  overflow: auto;
217
230
  max-width: 620px;
218
- padding: 40px 0;
219
231
 
220
- span {
221
- margin-right: 40px;
232
+ @include modal-max-width {
233
+ max-height: unset;
234
+ width: auto;
235
+ height: 100%;
236
+ position: unset;
237
+ transform: unset;
238
+ border: 1px solid $default-lt-span-color;
239
+ border-radius: 0 0 0 30px;
222
240
  }
223
241
 
224
242
  .modal-flex {
@@ -305,12 +323,15 @@
305
323
  }
306
324
 
307
325
  &__modal-body {
308
- padding: 0 40px;
326
+ padding: 40px;
327
+
328
+ @include modal-max-width {
329
+ padding: 20px;
330
+ }
309
331
  }
310
332
 
311
333
  &__close-button {
312
334
  z-index: 20;
313
- float: right;
314
335
  width: 24px;
315
336
  font-size: $lt-player-font-size-xxxl2 !important;
316
337
  line-height: 1;
@@ -321,24 +342,18 @@
321
342
  background-color: transparent;
322
343
  color: $default-lt-button-color;
323
344
  transition: color 0.12s ease-in-out;
324
- margin-bottom: 16px;
325
- position: sticky;
326
- top: 0;
345
+ position: absolute;
346
+ top: 40px;
347
+ right: 40px;
327
348
  margin-top: 0 !important;
328
349
 
329
- span {
330
- margin-top: 0;
350
+ @include modal-max-width {
351
+ top: 20px;
352
+ right: 20px;
331
353
  }
332
354
  }
333
355
 
334
356
  &__close-button:hover {
335
357
  color: #d75b4c;
336
358
  }
337
-
338
- &__show-modal {
339
- opacity: 1;
340
- visibility: visible;
341
- transform: scale(1.0);
342
- transition: visibility 0s linear 0s, opacity 0.25s 0s, transform 0.25s;
343
- }
344
359
  }
@@ -1,9 +1,31 @@
1
- .lt-player-portrate--mobile {
1
+ .lt-player-orientation--portrait {
2
2
  .plyr {
3
- border-radius: 0;
3
+ iframe,
4
+ video {
5
+ border-radius: 0 0 0 32px !important;
6
+ background: $default-lt-player-black !important;
7
+ }
8
+
9
+ video {
10
+ background: transparent !important;
11
+ }
4
12
  }
5
13
  }
6
14
 
15
+ // THIS MUST STAY - DO NOT DELETE
16
+ .poster-lt-player-share,
17
+ .mini-player-control {
18
+ visibility: hidden;
19
+ }
20
+
21
+ .plyr--video {
22
+ background: transparent !important;
23
+ }
24
+
25
+ .plyr__video-wrapper {
26
+ background: transparent !important;
27
+ }
28
+
7
29
  .plyr {
8
30
  border-radius: 0 0 0 30px;
9
31
  z-index: unset!important;
@@ -74,3 +74,10 @@
74
74
  .lt-player-additional-info {
75
75
  display: none!important;
76
76
  }
77
+
78
+ .lt-player-mobile-add-info-modal {
79
+ position: fixed;
80
+ bottom: 0;
81
+ width: 100%;
82
+ height: 100%;
83
+ }