mirror of
https://github.com/movie-web/movie-web.git
synced 2024-12-26 08:11:53 +01:00
Add unable to download route
This commit is contained in:
parent
2ae9c37a26
commit
01ea3c6d1e
@ -5,8 +5,6 @@ import { OverlayAnchor } from "@/components/overlays/OverlayAnchor";
|
|||||||
import { Overlay } from "@/components/overlays/OverlayDisplay";
|
import { Overlay } from "@/components/overlays/OverlayDisplay";
|
||||||
import { OverlayPage } from "@/components/overlays/OverlayPage";
|
import { OverlayPage } from "@/components/overlays/OverlayPage";
|
||||||
import { OverlayRouter } from "@/components/overlays/OverlayRouter";
|
import { OverlayRouter } from "@/components/overlays/OverlayRouter";
|
||||||
import { DownloadView } from "@/components/player/atoms/settings/DownloadView";
|
|
||||||
import { SettingsMenu } from "@/components/player/atoms/settings/SettingsMenu";
|
|
||||||
import {
|
import {
|
||||||
EmbedSelectionView,
|
EmbedSelectionView,
|
||||||
SourceSelectionView,
|
SourceSelectionView,
|
||||||
@ -18,8 +16,10 @@ import { usePlayerStore } from "@/stores/player/store";
|
|||||||
|
|
||||||
import { CaptionSettingsView } from "./settings/CaptionSettingsView";
|
import { CaptionSettingsView } from "./settings/CaptionSettingsView";
|
||||||
import { CaptionsView } from "./settings/CaptionsView";
|
import { CaptionsView } from "./settings/CaptionsView";
|
||||||
|
import { DownloadRoutes } from "./settings/Downloads";
|
||||||
import { PlaybackSettingsView } from "./settings/PlaybackSettingsView";
|
import { PlaybackSettingsView } from "./settings/PlaybackSettingsView";
|
||||||
import { QualityView } from "./settings/QualityView";
|
import { QualityView } from "./settings/QualityView";
|
||||||
|
import { SettingsMenu } from "./settings/SettingsMenu";
|
||||||
|
|
||||||
function SettingsOverlay({ id }: { id: string }) {
|
function SettingsOverlay({ id }: { id: string }) {
|
||||||
const [chosenSourceId, setChosenSourceId] = useState<string | null>(null);
|
const [chosenSourceId, setChosenSourceId] = useState<string | null>(null);
|
||||||
@ -71,11 +71,7 @@ function SettingsOverlay({ id }: { id: string }) {
|
|||||||
<PlaybackSettingsView id={id} />
|
<PlaybackSettingsView id={id} />
|
||||||
</Menu.Card>
|
</Menu.Card>
|
||||||
</OverlayPage>
|
</OverlayPage>
|
||||||
<OverlayPage id={id} path="/download" width={343} height={530}>
|
<DownloadRoutes id={id} />
|
||||||
<Menu.Card>
|
|
||||||
<DownloadView id={id} />
|
|
||||||
</Menu.Card>
|
|
||||||
</OverlayPage>
|
|
||||||
</OverlayRouter>
|
</OverlayRouter>
|
||||||
</Overlay>
|
</Overlay>
|
||||||
);
|
);
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
import { Icon, Icons } from "@/components/Icon";
|
import { Icon, Icons } from "@/components/Icon";
|
||||||
|
import { OverlayPage } from "@/components/overlays/OverlayPage";
|
||||||
import { Menu } from "@/components/player/internals/ContextMenu";
|
import { Menu } from "@/components/player/internals/ContextMenu";
|
||||||
import { useOverlayRouter } from "@/hooks/useOverlayRouter";
|
import { useOverlayRouter } from "@/hooks/useOverlayRouter";
|
||||||
import { usePlayerStore } from "@/stores/player/store";
|
import { usePlayerStore } from "@/stores/player/store";
|
||||||
@ -68,3 +69,37 @@ export function DownloadView({ id }: { id: string }) {
|
|||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function CantDownloadView({ id }: { id: string }) {
|
||||||
|
const router = useOverlayRouter(id);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<Menu.BackLink onClick={() => router.navigate("/")}>
|
||||||
|
Playback settings
|
||||||
|
</Menu.BackLink>
|
||||||
|
<Menu.Section>
|
||||||
|
<Menu.Paragraph>
|
||||||
|
Insert explanation for why you can't download HLS here
|
||||||
|
</Menu.Paragraph>
|
||||||
|
</Menu.Section>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function DownloadRoutes({ id }: { id: string }) {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<OverlayPage id={id} path="/download" width={343} height={530}>
|
||||||
|
<Menu.CardWithScrollable>
|
||||||
|
<DownloadView id={id} />
|
||||||
|
</Menu.CardWithScrollable>
|
||||||
|
</OverlayPage>
|
||||||
|
<OverlayPage id={id} path="/download/unable" width={343} height={341}>
|
||||||
|
<Menu.CardWithScrollable>
|
||||||
|
<CantDownloadView id={id} />
|
||||||
|
</Menu.CardWithScrollable>
|
||||||
|
</OverlayPage>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
@ -59,7 +59,11 @@ export function SettingsMenu({ id }: { id: string }) {
|
|||||||
</Menu.ChevronLink>
|
</Menu.ChevronLink>
|
||||||
<Menu.Link
|
<Menu.Link
|
||||||
clickable
|
clickable
|
||||||
onClick={() => router.navigate("/download")}
|
onClick={() =>
|
||||||
|
router.navigate(
|
||||||
|
source?.type === "file" ? "/download" : "/download/unable"
|
||||||
|
)
|
||||||
|
}
|
||||||
rightSide={<Icon className="text-xl" icon={Icons.DOWNLOAD} />}
|
rightSide={<Icon className="text-xl" icon={Icons.DOWNLOAD} />}
|
||||||
className={source?.type === "file" ? "opacity-100" : "opacity-50"}
|
className={source?.type === "file" ? "opacity-100" : "opacity-50"}
|
||||||
>
|
>
|
||||||
|
Loading…
Reference in New Issue
Block a user