onelineplayer 1.0.0

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.
@@ -0,0 +1,618 @@
1
+ .oneline-player {
2
+ font-family: Helvetica, sans-serif;
3
+ margin: 0;
4
+ background: transparent;
5
+ display: flex;
6
+ align-items: center;
7
+ width: 100%;
8
+ }
9
+
10
+ .oneline-responsive video {
11
+ position: absolute;
12
+ top: 0;
13
+ left: 0;
14
+ width: 100%;
15
+ height: 100%;
16
+ object-fit: cover;
17
+ overflow: hidden;
18
+ }
19
+
20
+ .oneline {
21
+ width: 100%;
22
+ height: 100%;
23
+ display: block;
24
+ }
25
+ .oneline-ready .oneline {
26
+ height: auto;
27
+ }
28
+ .oneline-clickable {
29
+ cursor: pointer;
30
+ }
31
+ .oneline-wrap {
32
+ width: 100%;
33
+ position: relative;
34
+ z-index: 0;
35
+ -webkit-tap-highlight-color: rgba(0,0,0,0);
36
+ }
37
+ .oneline-responsive .oneline-wrap {
38
+ position: unset;
39
+ }
40
+ .oneline-error-box {
41
+ position: absolute;
42
+ width: 100%;
43
+ height: 100%;
44
+ top: 0;
45
+ left: 0;
46
+ right: 0;
47
+ bottom: 0;
48
+ z-index: 110;
49
+ background: #EFEFEF;
50
+ color: #000000;
51
+ display: none;
52
+ }
53
+ .oneline-error-message {
54
+ position: absolute;
55
+ top: 50%;
56
+ left: 50%;
57
+ transform: translate(-50%, -50%);
58
+ }
59
+ .oneline-error .oneline-error-box {
60
+ display: block;
61
+ }
62
+ .oneline-overlay {
63
+ position: absolute;
64
+ width: 100%;
65
+ height: 100%;
66
+ top: 0;
67
+ left: 0;
68
+ right: 0;
69
+ bottom: 0;
70
+ z-index: 2;
71
+ /* transition: opacity .1s linear; */
72
+ /* transition: opacity 0.8s cubic-bezier(0.23, 1, 0.32, 1); */
73
+ transition: opacity 0.8s cubic-bezier(.10, .79, 0, .87);
74
+ opacity: 0;
75
+ }
76
+ .oneline-overlay {
77
+ opacity: 0.2;
78
+ }
79
+ .oneline-playing .oneline-overlay {
80
+ opacity: 0;
81
+ }
82
+
83
+ .oneline-load .oneline-overlay,
84
+ .oneline-playing:hover .oneline-overlay {
85
+ opacity: 0.2 !important;
86
+ }
87
+ .oneline-hide-controls.oneline-playing:hover .oneline-overlay {
88
+ opacity: 0 !important;
89
+ }
90
+
91
+ .oneline-controls {
92
+ position: absolute;
93
+ z-index: 10;
94
+ display: flex;
95
+ align-items: center;
96
+ flex-direction: row;
97
+ justify-content: space-between;
98
+ bottom: 20px;
99
+ left: 0;
100
+ width: 100%;
101
+ opacity: 0;
102
+ transform: translateY(8px);
103
+ transition: all 1s cubic-bezier(0.23, 1, 0.32, 1);
104
+ }
105
+ .oneline-started:hover .oneline-controls,
106
+ .oneline-wrap.active .oneline-controls {
107
+ opacity: 1;
108
+ transform: translateY(0);
109
+ }
110
+ .oneline-wrap.oneline-hide-all .oneline-controls {
111
+ opacity: 0;
112
+ transform: translateY(8px);
113
+ }
114
+
115
+ .oneline-control-buttons {
116
+ display: flex;
117
+ justify-content: space-between;
118
+ flex-direction: row;
119
+ margin-left: auto;
120
+ }
121
+ .oneline-time {
122
+ padding-bottom: 0;
123
+ font-size: 15px;
124
+ letter-spacing: 1px;
125
+ padding-left: 30px;
126
+ font-family: Helvetica, sans-serif !important;
127
+ -webkit-font-smoothing: auto;
128
+ }
129
+
130
+ .oneline-progress {
131
+ position: relative;
132
+ margin: 0 30px;
133
+ padding: 12px 0;
134
+ flex-grow: 1;
135
+ cursor: pointer;
136
+ display: block;
137
+ border-radius: 2px;
138
+ }
139
+ .oneline-progress-fill {
140
+ width: 0;
141
+ height: 4px;
142
+ border-radius: 2px;
143
+ }
144
+ .oneline-progress-fill-bg {
145
+ width: 100%;
146
+ height: 4px;
147
+ border-radius: 2px;
148
+ }
149
+ .oneline-progress-seek {
150
+ position: absolute;
151
+ z-index: 11;
152
+ top: 8px;
153
+ left: 0;
154
+ width: 10px;
155
+ height: 10px;
156
+ border-radius: 5px;
157
+ transition: opacity .2s linear;
158
+ }
159
+ .oneline-progress-seek-fill {
160
+ position: absolute;
161
+ z-index: 12;
162
+ top: 12px;
163
+ width: 0;
164
+ height: 4px;
165
+ border-radius: 2px;
166
+ /* transition: opacity 0.2s ease-in-out; */
167
+ /* transition: width 0.2s ease-out; */
168
+ }
169
+
170
+ .oneline-progress:hover .oneline-progress-fill {
171
+ opacity: 0;
172
+ }
173
+ .oneline-progress:hover .oneline-progress-seek {
174
+ opacity: 1;
175
+ -webkit-animation: in 0.2s ease-out;
176
+ -webkit-animation-iteration-count: 1;
177
+ }
178
+ .oneline-progress:not( :hover ) .oneline-progress-seek {
179
+ opacity: 0;
180
+ -webkit-animation: out 0.2s ease-out;
181
+ -webkit-animation-iteration-count: 1;
182
+ }
183
+ .oneline-progress:hover .oneline-progress-seek-fill {
184
+ opacity: 1;
185
+ }
186
+ .oneline-progress:not( :hover ) .oneline-progress-seek-fill {
187
+ opacity: 0;
188
+ }
189
+
190
+ @-webkit-keyframes in {
191
+ from { -webkit-transform: scale(0.1, 0.1) }
192
+ to { -webkit-transform: scale(1, 1) }
193
+ }
194
+
195
+ @-webkit-keyframes out {
196
+ 0% { -webkit-transform: scale(1, 1) }
197
+ 100% { -webkit-transform: scale(0, 0) }
198
+ }
199
+
200
+ .oneline-loader-container {
201
+ width: 80px;
202
+ position: absolute;
203
+ top: 50%;
204
+ left: 50%;
205
+ margin-top: -15px;
206
+ margin-left: -40px;
207
+ height: 30px;
208
+ z-index: 3;
209
+ display: none;
210
+ }
211
+ .oneline-load .oneline-loader-container {
212
+ display: block
213
+ }
214
+
215
+ /**
216
+ * Play/ Stop buttons
217
+ */
218
+ .oneline-play-pause {
219
+ width: 30px;
220
+ height: 30px;
221
+ position: absolute;
222
+ z-index: 100;
223
+ top: 50%;
224
+ left: 50%;
225
+ margin-top: -15px;
226
+ margin-left: -15px;
227
+ transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1);
228
+ }
229
+ .oneline-play-pause:active,
230
+ .oneline-wrap:active .oneline-play-pause {
231
+ transform: scale(0.9) !important;
232
+ }
233
+
234
+ .oneline-play-pause button {
235
+ cursor: pointer;
236
+ display: block;
237
+ position: relative;
238
+ width: 100%;
239
+ padding: 50%;
240
+ background: transparent;
241
+ border: none;
242
+ }
243
+ .oneline-load .oneline-play-pause {
244
+ opacity: 0;
245
+ }
246
+ .oneline-wrap:not(.oneline-started):hover .oneline-play-pause {
247
+ transform: scale(1.2);
248
+ }
249
+ .oneline-play-button,
250
+ .oneline-pause-button {
251
+ top: 0;
252
+ left: 0;
253
+ position: absolute;
254
+ transition: all 0.7s cubic-bezier(.10, .79, 0, .87);
255
+ }
256
+ @media (max-width: 400px) {
257
+ .oneline-play-pause {
258
+ width: 10%;
259
+ margin-top: -5%;
260
+ margin-left: -5%;
261
+ }
262
+ }
263
+ .oneline-play-pause svg, .oneline-play-pause img {
264
+ width: 100%;
265
+ height: auto;
266
+ }
267
+
268
+ .oneline-playing .oneline-play-button {
269
+ opacity: 0;
270
+ }
271
+
272
+ .oneline-paused .oneline-play-button {
273
+ opacity: 1;
274
+ }
275
+
276
+ .oneline-pause-button {
277
+ opacity: 0;
278
+ }
279
+ .oneline-playing:hover .oneline-pause-button {
280
+ opacity: 1;
281
+ }
282
+ @media (hover: none) {
283
+ .oneline-playing:hover .oneline-pause-button {
284
+ opacity: 0;
285
+ }
286
+ }
287
+ .oneline-hide-controls.oneline-playing:hover .oneline-pause-button {
288
+ opacity: 0;
289
+ }
290
+ .oneline-paused .oneline-pause-button {
291
+ opacity: 0;
292
+ }
293
+
294
+ /**
295
+ * Mute and fullscreen buttons
296
+ */
297
+ .oneline-mute-button svg {
298
+ display: block
299
+ }
300
+ .oneline-mute-button.muted .mute {
301
+ display: none;
302
+ }
303
+ .oneline-mute-button .unmute {
304
+ display: none;
305
+ }
306
+ .oneline-mute-button.muted .unmute {
307
+ display: block;
308
+ }
309
+ .oneline-fullscreen-button svg {
310
+ display: block
311
+ }
312
+ .oneline-fullscreen .oneline-fullscreen-button .fullscreen-icon-on {
313
+ display: none;
314
+ }
315
+ .oneline-fullscreen-button .fullscreen-icon-off {
316
+ display: none;
317
+ }
318
+ .oneline-fullscreen .oneline-fullscreen-button .fullscreen-icon-off {
319
+ display: block;
320
+ }
321
+ .oneline-mute-button,
322
+ .oneline-fullscreen-button {
323
+ width: 100%;
324
+ background: transparent;
325
+ border: none;
326
+ margin-right: 30px;
327
+ cursor: pointer;
328
+ padding: 0;
329
+ }
330
+
331
+ button,
332
+ div {
333
+ outline-width: 0;
334
+ }
335
+ .keyboard-control button,
336
+ .keyboard-control div {
337
+ outline-width: 2px !important;
338
+ }
339
+ .keyboard-control.oneline-playing .oneline-play-pause button {
340
+ outline-width: 0 !important;
341
+ }
342
+
343
+ .oneline-logo {
344
+ position: absolute;
345
+ top: 23px;
346
+ left: 30px;
347
+ display: block;
348
+ width: 31px;
349
+ height: 20px;
350
+ z-index: 10;
351
+ opacity: 0;
352
+ transition: opacity .1s linear;
353
+ text-decoration: none;
354
+ font-weight: 500;
355
+ font-size: 18px;
356
+ }
357
+ .oneline-wrap:hover .oneline-logo {
358
+ opacity: 0.5;
359
+ }
360
+ .oneline-wrap:hover .oneline-logo:hover {
361
+ opacity: 1;
362
+ }
363
+
364
+ .oneline-poster {
365
+ position: absolute;
366
+ z-index: 1;
367
+ top: 0;
368
+ left: 0;
369
+ width: 100%;
370
+ height: 100%;
371
+ -moz-background-size: 100% 100%;
372
+ -o-background-size: 100% 100%;
373
+ -webkit-background-size: 100% 100%;
374
+ background-size: 100% 100%;
375
+ }
376
+
377
+ /**
378
+ * Color Scheme
379
+ */
380
+
381
+ /** Default */
382
+ .oneline-play-button .oneline-icon,
383
+ .oneline-pause-button .oneline-icon,
384
+ .oneline-mute-button .oneline-icon,
385
+ .oneline-fullscreen-button .oneline-icon {
386
+ fill: #ffffff
387
+ }
388
+ .oneline-progress-fill {
389
+ background-color: #fff;
390
+ }
391
+ .oneline-progress-fill-bg {
392
+ background-color: rgba(255,255,255,0.2);
393
+ }
394
+ .oneline-progress-seek {
395
+ background-color: #fff;
396
+ }
397
+ .oneline-progress-seek-fill {
398
+ background-color: #fff;
399
+ }
400
+ .oneline-overlay {
401
+ background-color: #000;
402
+ }
403
+ .oneline-loader {
404
+ background-color: #fff;
405
+ }
406
+ .oneline-logo, .oneline-time {
407
+ color: #fff;
408
+ }
409
+
410
+ /** Dark */
411
+ .oneline-dark .oneline-play-button .oneline-icon,
412
+ .oneline-dark .oneline-pause-button .oneline-icon,
413
+ .oneline-dark .oneline-mute-button .oneline-icon,
414
+ .oneline-dark .oneline-fullscreen-button .oneline-icon {
415
+ fill: #333
416
+ }
417
+ .oneline-dark .oneline-progress-fill {
418
+ background-color: #333;
419
+ }
420
+ .oneline-dark .oneline-progress-fill-bg {
421
+ background-color: #666;
422
+ }
423
+ .oneline-dark .oneline-progress-seek {
424
+ background-color: #333;
425
+ }
426
+ .oneline-dark .oneline-progress-seek-fill {
427
+ background-color: #333;
428
+ }
429
+ .oneline-dark .oneline-overlay {
430
+ background-color: #000;
431
+ }
432
+ .oneline-dark .oneline-loader {
433
+ background-color: #333;
434
+ }
435
+ .oneline-dark .la-ball-pulse,
436
+ .oneline-dark .oneline-logo,
437
+ .oneline-dark .oneline-time {
438
+ color: #333;
439
+ }
440
+
441
+ /** Modern theme */
442
+ .theme-modern .oneline-controls {
443
+ bottom: 50%;
444
+ height: 100px;
445
+ margin-bottom: -50px;
446
+ align-items: center;
447
+ justify-content: center;
448
+ /* opacity: 1; temp */
449
+ }
450
+ .theme-modern .oneline-progress-fill-bg,
451
+ .theme-modern .oneline-progress-seek,
452
+ .theme-modern .oneline-progress-seek-fill {
453
+ display: none;
454
+ }
455
+
456
+ .oneline-progress .ring {
457
+ display: none;
458
+ }
459
+ .theme-modern .oneline-progress .ring {
460
+ display: block;
461
+ }
462
+ .theme-modern .oneline-progress {
463
+ flex-grow: 0;
464
+ }
465
+ .theme-modern .oneline-progress .ring-circle {
466
+ transform: rotate(-90deg);
467
+ transform-origin: 50% 50%;
468
+ }
469
+ .theme-modern .ring-seek {
470
+ display: none;
471
+ }
472
+
473
+ .theme-modern .oneline-control-buttons {
474
+ margin-left: 0;
475
+ }
476
+
477
+ /** Loader */
478
+ .la-ball-pulse,
479
+ .la-ball-pulse > div {
480
+ position: relative;
481
+ -webkit-box-sizing: border-box;
482
+ -moz-box-sizing: border-box;
483
+ box-sizing: border-box;
484
+ }
485
+ .la-ball-pulse {
486
+ margin: 0 auto;
487
+ display: block;
488
+ font-size: 0;
489
+ color: #fff;
490
+ }
491
+ .la-ball-pulse > div {
492
+ display: inline-block;
493
+ float: none;
494
+ background-color: currentColor;
495
+ border: 0 solid currentColor;
496
+ }
497
+ .la-ball-pulse {
498
+ width: 54px;
499
+ height: 18px;
500
+ }
501
+ .la-ball-pulse > div:nth-child(1) {
502
+ -webkit-animation-delay: -200ms;
503
+ -moz-animation-delay: -200ms;
504
+ -o-animation-delay: -200ms;
505
+ animation-delay: -200ms;
506
+ }
507
+ .la-ball-pulse > div:nth-child(2) {
508
+ -webkit-animation-delay: -100ms;
509
+ -moz-animation-delay: -100ms;
510
+ -o-animation-delay: -100ms;
511
+ animation-delay: -100ms;
512
+ }
513
+ .la-ball-pulse > div:nth-child(3) {
514
+ -webkit-animation-delay: 0ms;
515
+ -moz-animation-delay: 0ms;
516
+ -o-animation-delay: 0ms;
517
+ animation-delay: 0ms;
518
+ }
519
+ .la-ball-pulse > div {
520
+ width: 10px;
521
+ height: 10px;
522
+ margin: 4px;
523
+ border-radius: 100%;
524
+ -webkit-animation: ball-pulse 1s ease infinite;
525
+ -moz-animation: ball-pulse 1s ease infinite;
526
+ -o-animation: ball-pulse 1s ease infinite;
527
+ animation: ball-pulse 1s ease infinite;
528
+ }
529
+ .la-ball-pulse.la-sm {
530
+ width: 26px;
531
+ height: 8px;
532
+ }
533
+ .la-ball-pulse.la-sm > div {
534
+ width: 4px;
535
+ height: 4px;
536
+ margin: 2px;
537
+ }
538
+ .la-ball-pulse.la-2x {
539
+ width: 108px;
540
+ height: 36px;
541
+ }
542
+ .la-ball-pulse.la-2x > div {
543
+ width: 20px;
544
+ height: 20px;
545
+ margin: 8px;
546
+ }
547
+ .la-ball-pulse.la-3x {
548
+ width: 162px;
549
+ height: 54px;
550
+ }
551
+ .la-ball-pulse.la-3x > div {
552
+ width: 30px;
553
+ height: 30px;
554
+ margin: 12px;
555
+ }
556
+ /*
557
+ * Animation
558
+ */
559
+ @-webkit-keyframes ball-pulse {
560
+ 0%,
561
+ 60%,
562
+ 100% {
563
+ opacity: 1;
564
+ -webkit-transform: scale(1);
565
+ transform: scale(1);
566
+ }
567
+ 30% {
568
+ opacity: .1;
569
+ -webkit-transform: scale(.01);
570
+ transform: scale(.01);
571
+ }
572
+ }
573
+ @-moz-keyframes ball-pulse {
574
+ 0%,
575
+ 60%,
576
+ 100% {
577
+ opacity: 1;
578
+ -moz-transform: scale(1);
579
+ transform: scale(1);
580
+ }
581
+ 30% {
582
+ opacity: .1;
583
+ -moz-transform: scale(.01);
584
+ transform: scale(.01);
585
+ }
586
+ }
587
+ @-o-keyframes ball-pulse {
588
+ 0%,
589
+ 60%,
590
+ 100% {
591
+ opacity: 1;
592
+ -o-transform: scale(1);
593
+ transform: scale(1);
594
+ }
595
+ 30% {
596
+ opacity: .1;
597
+ -o-transform: scale(.01);
598
+ transform: scale(.01);
599
+ }
600
+ }
601
+ @keyframes ball-pulse {
602
+ 0%,
603
+ 60%,
604
+ 100% {
605
+ opacity: 1;
606
+ -webkit-transform: scale(1);
607
+ -moz-transform: scale(1);
608
+ -o-transform: scale(1);
609
+ transform: scale(1);
610
+ }
611
+ 30% {
612
+ opacity: .1;
613
+ -webkit-transform: scale(.01);
614
+ -moz-transform: scale(.01);
615
+ -o-transform: scale(.01);
616
+ transform: scale(.01);
617
+ }
618
+ }