diff --git a/src/lib/components/PlayerControls.svelte b/src/lib/components/PlayerControls.svelte new file mode 100644 index 0000000..e411e77 --- /dev/null +++ b/src/lib/components/PlayerControls.svelte @@ -0,0 +1,449 @@ + + + { if (isSeeking) seekFromMouseEvent(e); }} + onmouseup={() => { isSeeking = false; }} +/> + + + + + + + + + + {#if hoverTime !== null} + + {formatTime(hoverTime)} + + {/if} + + + + + + + seekBy(-10)} + title="Skip back 10s" + type="button" + >⏪ + {session.isPlaying ? '❚❚' : '▶'} + seekBy(10)} + title="Skip forward 10s" + type="button" + >⏩ + + + + {#if isMuted || volume === 0}🔇{:else if volume < 0.5}🔉{:else}🔊{/if} + + + + + + + + {formatTime(session.currentTime)} + / + {formatTime(session.duration)} + + + + + + + { showSpeedSelector = !showSpeedSelector; }} + title="Playback speed" + type="button" + >{currentRate}× + {#if showSpeedSelector} + { showSpeedSelector = false; }} + /> + {/if} + + + {#if hasCaptions} + CC + {/if} + + ⧉ + + {fullscreenActive ? '⤓' : '⛶'} + + + + + +