diff --git a/src/assets/locales/en.json b/src/assets/locales/en.json index a9db3c83..5257cec9 100644 --- a/src/assets/locales/en.json +++ b/src/assets/locales/en.json @@ -395,7 +395,8 @@ }, "nextEpisode": { "replay": "Replay", - "next": "Next episode" + "nextIn": "Next episode in {{seconds}}", + "next": "Next Episode" }, "playbackError": { "badge": "Playback error", diff --git a/src/components/player/atoms/NextEpisodeButton.tsx b/src/components/player/atoms/NextEpisodeButton.tsx index a6afc2d0..7a565358 100644 --- a/src/components/player/atoms/NextEpisodeButton.tsx +++ b/src/components/player/atoms/NextEpisodeButton.tsx @@ -1,5 +1,9 @@ import classNames from "classnames"; +<<<<<<< HEAD import React, { useState, useEffect, useCallback } from "react"; +======= +import React, { useCallback, useEffect, useState } from "react"; +>>>>>>> a945fcc4c5cabb28279db4a7d23bf052d97ed057 import { useTranslation } from "react-i18next"; import { Icon, Icons } from "@/components/Icon"; @@ -19,6 +23,11 @@ function shouldShowNextEpisodeButton( return "none"; } +function shouldStartCountdown(time: number, duration: number): boolean { + const secondsFromEnd = duration - time; + return secondsFromEnd <= 30 || time / duration >= 0.93; +} + function Button(props: { className: string; onClick?: () => void; @@ -54,6 +63,7 @@ export function NextEpisodeButton(props: { const setShouldStartFromBeginning = usePlayerStore( (s) => s.setShouldStartFromBeginning, ); + const [countdown, setCountdown] = useState(15); let show = false; if (showingState === "always") show = true; @@ -116,7 +126,7 @@ export function NextEpisodeButton(props: { >