TelegramPWA/src/components/mediaViewer/SeekLine.module.scss
2023-07-20 16:01:03 +02:00

98 lines
1.7 KiB
SCSS

.container {
position: absolute;
left: 1rem;
right: 1rem;
top: 1rem;
height: 1rem;
touch-action: none;
cursor: var(--custom-cursor, pointer);
:global(body.is-electron) & {
cursor: auto;
}
}
.preview {
position: absolute;
left: 0;
z-index: 1;
bottom: calc(100% + 0.5rem);
border-radius: 0.25rem;
overflow: hidden;
background: #000;
}
.previewCanvas {
width: 100%;
height: 100%;
display: block;
}
body:global(.is-touch-env) .preview {
bottom: calc(100% + 0.75rem);
}
.previewTime {
position: absolute;
left: 0;
right: 0;
bottom: 0;
text-align: center;
}
.previewTimeText {
border-top-left-radius: 0.125rem;
border-top-right-radius: 0.125rem;
background: rgba(0, 0, 0, 0.5);
color: rgba(255, 255, 255, 0.8);
padding: 0.25rem 0.5rem;
}
.track {
position: absolute;
top: 50%;
height: 5px;
transform: translateY(-50%);
background-color: rgba(255, 255, 255, 0.16);
border-radius: var(--border-radius-default);
left: -0.25rem;
right: -0.25rem;
}
.buffered {
position: absolute;
background-color: rgba(255, 255, 255, 0.5);
top: 0;
left: 0;
height: 100%;
border-radius: var(--border-radius-default);
}
.played {
background: var(--color-primary);
position: absolute;
top: 0;
left: 0;
height: 100%;
border-radius: var(--border-radius-default);
&::after {
content: "";
position: absolute;
width: 0.75rem;
height: 0.75rem;
border-radius: 50%;
background-color: var(--color-primary);
right: 0;
top: 50%;
transform: translate(50%, -50%) scale(1);
transition: transform 0.2s ease;
}
}
body:global(.is-touch-env) .seeking {
&::after {
transform: translate(50%, -50%) scale(2);
}
}