chore: migrate to v3 and adopt Doppler for secrets management #3

Open
kamil wants to merge 574 commits from v3-cleanup into main
Showing only changes of commit 0c2349f259 - Show all commits

View File

@@ -48,7 +48,12 @@ struct ChapterReaderView: View {
}
.navigationTitle(vm.content.map { "Ch.\($0.chapter.number)" } ?? "")
.navigationBarTitleDisplayMode(.inline)
.toolbar { audioToolbarButton }
.overlay(alignment: .bottomTrailing) {
// Floating audio button when player is not active
if !audioPlayer.isActive {
floatingAudioButton
}
}
.task {
print("[ChapterReaderView] .task fired — calling vm.load()")
await vm.load()
@@ -140,7 +145,34 @@ struct ChapterReaderView: View {
}
}
// MARK: - Audio toolbar button
// MARK: - Floating audio button
@ViewBuilder
private var floatingAudioButton: some View {
Button {
vm.toggleAudio(audioPlayer: audioPlayer, settings: authStore.settings)
} label: {
HStack(spacing: 8) {
Image(systemName: "play.circle.fill")
.font(.system(size: 22))
Text("Listen")
.font(.subheadline.weight(.semibold))
}
.foregroundStyle(.white)
.padding(.horizontal, 20)
.padding(.vertical, 12)
.background(
Capsule()
.fill(Color.amber)
.shadow(color: .black.opacity(0.25), radius: 8, y: 4)
)
}
.buttonStyle(.plain)
.padding(.trailing, 20)
.padding(.bottom, 20)
}
// MARK: - Audio toolbar button (kept for when player is active)
@ToolbarContentBuilder
private var audioToolbarButton: some ToolbarContent {