Files
streamyfin_mirror/components/downloads/DownloadSize.tsx
herrrta b5c6403e2d # Add download size to offline media downloads
- Added getDownloadSize helper function to display media size
 in MB or GB when appropriate
2024-12-01 14:23:29 -05:00

31 lines
773 B
TypeScript

import { BaseItemDto } from "@jellyfin/sdk/lib/generated-client/models";
import React, {useEffect, useMemo, useState} from "react";
import {Text} from "@/components/common/Text";
import useDownloadHelper from "@/utils/download";
interface DownloadSizeProps {
items: BaseItemDto[];
}
export const DownloadSize: React.FC<DownloadSizeProps> = ({ items }) => {
const { getDownloadSize } = useDownloadHelper();
const [size, setSize] = useState<string | undefined>();
useEffect(() => {
getDownloadSize(...items).then(setSize)
},
[items]
);
const sizeText = useMemo(() => {
if (!size)
return "reading size..."
return size
}, [size])
return (
<>
<Text className="text-xs text-neutral-500">{sizeText}</Text>
</>
);
};