This commit is contained in:
josc146
2023-05-20 14:53:52 +08:00
parent 0f0281dd63
commit 361d7a5619
8 changed files with 25 additions and 14 deletions

View File

@@ -1,24 +1,28 @@
import React, {FC} from 'react';
import React, {FC, useEffect} from 'react';
import {useTranslation} from 'react-i18next';
import {Page} from '../components/Page';
import {observer} from 'mobx-react-lite';
import commonStore from '../stores/commonStore';
import {Divider, Field, ProgressBar} from '@fluentui/react-components';
import {bytesToGb, bytesToMb} from '../utils';
import {bytesToGb, bytesToMb, refreshLocalModels} from '../utils';
import {ToolTipButton} from '../components/ToolTipButton';
import {Folder20Regular, Pause20Regular, Play20Regular} from '@fluentui/react-icons';
import {ContinueDownload, OpenFileFolder, PauseDownload} from '../../wailsjs/go/backend_golang/App';
export const Downloads: FC = observer(() => {
const {t} = useTranslation();
const finishedDownloads = commonStore.downloadList.filter((status) => status.done).length;
useEffect(() => {
refreshLocalModels({models: commonStore.modelSourceList}, false);
console.log('finishedDownloads:', finishedDownloads);
}, [finishedDownloads]);
return (
<Page title={t('Downloads')} content={
<div className="flex flex-col gap-2 overflow-y-auto overflow-x-hidden p-1">
{commonStore.downloadList.map((status, index) => (
<div className="flex flex-col gap-1">
<div className="flex flex-col gap-1" key={index}>
<Field
key={index}
label={`${status.downloading ? (t('Downloading') + ': ') : ''}${status.name}`}
validationMessage={`${status.progress.toFixed(2)}% - ${bytesToGb(status.transferred) + 'GB'}/${bytesToGb(status.size) + 'GB'} - ${status.downloading ? bytesToMb(status.speed) : 0}MB/s - ${status.url}`}
validationState={status.done ? 'success' : 'none'}