Files
streamyfin/hooks/useDownloadedFileOpener.ts
Fredrik Burmester 41a23d3437 wip
2024-09-28 15:45:00 +02:00

29 lines
750 B
TypeScript

// hooks/useFileOpener.ts
import { usePlayback } from "@/providers/PlaybackProvider";
import { BaseItemDto } from "@jellyfin/sdk/lib/generated-client";
import * as FileSystem from "expo-file-system";
import { useRouter } from "expo-router";
import { useCallback } from "react";
export const useFileOpener = () => {
const router = useRouter();
const { startDownloadedFilePlayback } = usePlayback();
const openFile = useCallback(
async (item: BaseItemDto) => {
const directory = FileSystem.documentDirectory;
const url = `${directory}/${item.Id}.mp4`;
startDownloadedFilePlayback({
item,
url,
});
router.push("/play");
},
[startDownloadedFilePlayback]
);
return { openFile };
};