diff --git a/ui/src/lib/components/ListeningMode.svelte b/ui/src/lib/components/ListeningMode.svelte index eb016ea..8863cff 100644 --- a/ui/src/lib/components/ListeningMode.svelte +++ b/ui/src/lib/components/ListeningMode.svelte @@ -187,68 +187,101 @@ -
- - {#if audioStore.cover} +
+ + +
+ {#if audioStore.cover} + + + {:else} + +
+ + + +
+ {/if} + + + - {/if} - -
- - Now Playing -
- - {#if audioStore.chapters.length > 0} - - {/if} - + +
+ Now Playing +
+ + {#if audioStore.chapters.length > 0} + + {/if} + + +
+
+ + +
+ {#if audioStore.chapter > 0} +

+ Chapter {audioStore.chapter} +

+ {/if} +

+ {audioStore.chapterTitle || (audioStore.chapter > 0 ? `Chapter ${audioStore.chapter}` : '')} +

+

{audioStore.bookTitle}

@@ -273,7 +306,6 @@ Select Voice
-
@@ -288,7 +320,6 @@ />
-
{#each ([['Kokoro', filteredKokoro], ['Pocket TTS', filteredPocket], ['CF AI', filteredCfai]] as [string, Voice[]][]) as [label, group]} @@ -298,45 +329,24 @@
- - -
-
@@ -392,35 +397,24 @@ />
-
- {#each filteredChapters as ch (ch.number)} - {/each} @@ -431,195 +425,173 @@
{/if} - -
+ +
- -
- {#if audioStore.cover} - - {:else} -
- - - -
- {/if} - -

- {audioStore.chapterTitle || (audioStore.chapter > 0 ? `Chapter ${audioStore.chapter}` : '')} -

-

{audioStore.bookTitle}

+ +
+ +
+ {formatTime(audioStore.currentTime)} + + {#if audioStore.duration > 0} + −{formatTime(Math.max(0, audioStore.duration - audioStore.currentTime))} + {/if} + {formatTime(audioStore.duration)} +
- -
- - -
- -
- {formatTime(audioStore.currentTime)} - {formatTime(audioStore.duration)} -
-
- - -
- - {#if audioStore.chapter > 1 && audioStore.slug} - - - - - - {:else} -
- {/if} - - - + + {:else} +
+ {/if} - - + + - -
+ - -
- -
- {#each SPEED_OPTIONS as s} - - {/each} -
+ + - - + + {:else} +
+ {/if} +
- - + +
+ +
+ {#each SPEED_OPTIONS as s} + + {/each}
+ + + + +