diff --git a/src/renderer/components/nav-bar/bs-version-item.component.tsx b/src/renderer/components/nav-bar/bs-version-item.component.tsx index c2ef0bb7..041e06ed 100644 --- a/src/renderer/components/nav-bar/bs-version-item.component.tsx +++ b/src/renderer/components/nav-bar/bs-version-item.component.tsx @@ -2,14 +2,40 @@ import { BSVersion } from "main/services/bs-version-manager.service"; import { Link } from "react-router-dom"; import { BsNoteFill } from "../svgs/bs-note-fill.component"; import { SteamIcon } from "../svgs/steam-icon.component"; +import { BsDownloaderService } from "renderer/services/bs-downloader.service"; +import { useEffect, useState } from "react"; +import { combineLatest, distinctUntilChanged, merge } from "rxjs"; export default function BsVersionItem(props: {version: BSVersion}) { + + const [downloading, setDownloading] = useState(false); + const [downloadPercent, setDownloadPercent] = useState(0); + + const downloaderService = BsDownloaderService.getInstance(); + + console.log(props.version.BSVersion === downloaderService.currentBsVersionDownload$.value?.BSVersion, props.version.BSVersion); + + useEffect(() => { + console.log("oéoéoé", props.version.BSVersion); + combineLatest([downloaderService.currentBsVersionDownload$, downloaderService.downloadProgress$]).subscribe(vals => { + if(vals[0]?.BSVersion === props.version.BSVersion){ + setDownloading(true); + setDownloadPercent(vals[1]); + } + else{ + setDownloading(false); + setDownloadPercent(0); + } + }) + }, []) + + return ( -