mirror of
https://github.com/Zagrios/bs-manager.git
synced 2026-07-03 14:08:25 +02:00
Merge pull request #844 from Zagrios/bugfix/remove-os-diagnostic-service
[bugfix] remove OsDiagnosticService
This commit is contained in:
+2
-6
@@ -21,7 +21,6 @@ import { useObservable } from "renderer/hooks/use-observable.hook";
|
||||
import { PlaylistDownloaderService } from "renderer/services/playlist-downloader.service";
|
||||
import { NotificationService } from "renderer/services/notification.service";
|
||||
import { DeletePlaylistModal } from "renderer/components/modal/modal-types/playlist/delete-playlist-modal.component";
|
||||
import { OsDiagnosticService } from "renderer/services/os-diagnostic.service";
|
||||
import { PlaylistItemComponentPropsMapper } from "shared/mappers/playlist/playlist-item-component-props.mapper";
|
||||
import { VirtualScroll } from "renderer/components/shared/virtual-scroll/virtual-scroll.component";
|
||||
import { LocalPlaylistFilter, LocalPlaylistSort } from "./local-playlist-filter-panel.component";
|
||||
@@ -75,10 +74,8 @@ export const LocalPlaylistsListPanel = forwardRef<LocalPlaylistsListRef, Props>(
|
||||
const playlistDownloader = useService(PlaylistDownloaderService);
|
||||
const modals = useService(ModalService);
|
||||
const ipc = useService(IpcService);
|
||||
const osDiagnostic = useService(OsDiagnosticService);
|
||||
const notification = useService(NotificationService);
|
||||
|
||||
const isOnline = useObservable(() => osDiagnostic.isOnline$, false);
|
||||
const isActiveOnce = useChangeUntilEqual(isActive, { untilEqual: true });
|
||||
|
||||
const { maps$, playlists$, setPlaylists, setMaps } = useContext(InstalledMapsContext);
|
||||
@@ -121,7 +118,6 @@ export const LocalPlaylistsListPanel = forwardRef<LocalPlaylistsListRef, Props>(
|
||||
|
||||
},
|
||||
syncPlaylists: async (playlists?: LocalBPList[]) => {
|
||||
if(!isOnline){ return; }
|
||||
const toSync = playlists ?? (selectedPlaylists$.value?.length ? selectedPlaylists$.value : playlists$.value);
|
||||
if(!toSync.length){ return; }
|
||||
|
||||
@@ -391,13 +387,13 @@ export const LocalPlaylistsListPanel = forwardRef<LocalPlaylistsListRef, Props>(
|
||||
}}
|
||||
onClickOpen={() => openPlaylistDetails(playlist.path)}
|
||||
onClickDelete={() => deletePlaylists([playlist])}
|
||||
onClickSync={(playlist?.songs?.length && isOnline) && (() => handleClickSync(playlist))}
|
||||
onClickSync={!!playlist?.songs?.length && (() => handleClickSync(playlist))}
|
||||
onClickOpenFile={() => viewPlaylistFile(playlist.path)}
|
||||
onClickCancelDownload={() => playlistDownloader.cancelDownload(playlist.customData?.syncURL ?? playlist.path, version)}
|
||||
onClickEdit={() => editPlaylist(playlist)}
|
||||
/>
|
||||
);
|
||||
}, [isOnline, version]);
|
||||
}, [version]);
|
||||
|
||||
const filteredPlaylists = useMemo(() => {
|
||||
if(!playlists){ return []; }
|
||||
|
||||
@@ -15,7 +15,6 @@ import BeatConflictImg from "../../../../../assets/images/apngs/beat-conflict.pn
|
||||
import equal from "fast-deep-equal/es6";
|
||||
import { ProgressBarService } from "renderer/services/progress-bar.service";
|
||||
import { useTranslation } from "renderer/hooks/use-translation.hook";
|
||||
import { OsDiagnosticService } from "renderer/services/os-diagnostic.service";
|
||||
import { BsmLocalMap } from "shared/models/maps/bsm-local-map.interface";
|
||||
import { useService } from "renderer/hooks/use-service.hook";
|
||||
import { useConstant } from "renderer/hooks/use-constant.hook";
|
||||
@@ -29,7 +28,6 @@ export const DownloadMapsModal: ModalComponent<void, { version: BSVersion; owned
|
||||
const config = useService(ConfigurationService);
|
||||
const mapsDownloader = useService(MapsDownloaderService);
|
||||
const progressBar = useService(ProgressBarService);
|
||||
const os = useService(OsDiagnosticService);
|
||||
|
||||
const currentDownload = useObservable(() => mapsDownloader.currentMapDownload$);
|
||||
const mapsInQueue = useObservable(() => mapsDownloader.mapsInQueue$);
|
||||
@@ -41,7 +39,6 @@ export const DownloadMapsModal: ModalComponent<void, { version: BSVersion; owned
|
||||
const [downloadbleMaps, setDownloadbleMaps] = useState<DownloadableMap[]>([]);
|
||||
const [ownedMapHashs, setOwnedMapHashs] = useState<string[]>(ownedMaps?.map(map => map.hash) ?? []);
|
||||
const [loading, setLoading] = useState(false);
|
||||
const isOnline = useObservable(() => os.isOnline$);
|
||||
const [searchParams, setSearchParams] = useState<SearchParams>({
|
||||
sortOrder: config.get("map-sort-order"),
|
||||
filter,
|
||||
@@ -256,10 +253,7 @@ export const DownloadMapsModal: ModalComponent<void, { version: BSVersion; owned
|
||||
if (loading) {
|
||||
return t("modals.download-maps.loading-maps");
|
||||
}
|
||||
if (isOnline) {
|
||||
return t("modals.download-maps.no-maps-found");
|
||||
}
|
||||
return t("modals.download-maps.no-internet");
|
||||
return t("modals.download-maps.no-maps-found");
|
||||
})()}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
+1
-10
@@ -12,7 +12,6 @@ import { ModelDownload, ModelsDownloaderService } from "renderer/services/models
|
||||
import { ModelSaberService } from "renderer/services/thrird-partys/model-saber.service";
|
||||
import { useBehaviorSubject } from "renderer/hooks/use-behavior-subject.hook";
|
||||
import { useTranslation } from "renderer/hooks/use-translation.hook";
|
||||
import { OsDiagnosticService } from "renderer/services/os-diagnostic.service";
|
||||
import { useObservable } from "renderer/hooks/use-observable.hook";
|
||||
import { useConstant } from "renderer/hooks/use-constant.hook";
|
||||
import { MODEL_TYPES, MS_GET_QUERY_SORTS } from "shared/models/models/constants";
|
||||
@@ -26,7 +25,6 @@ import { VirtualScroll } from "renderer/components/shared/virtual-scroll/virtual
|
||||
export const DownloadModelsModal: ModalComponent<void, { version: BSVersion; type: MSModelType; owned: BsmLocalModel[] }> = ({ options: {data: { version, type, owned }} }) => {
|
||||
const modelsDownloader = useService(ModelsDownloaderService);
|
||||
const modelSaber = useService(ModelSaberService);
|
||||
const os = useService(OsDiagnosticService);
|
||||
|
||||
const t = useTranslation();
|
||||
|
||||
@@ -48,7 +46,6 @@ export const DownloadModelsModal: ModalComponent<void, { version: BSVersion; typ
|
||||
const downloadQueue = useObservable(() => modelsDownloader.getQueue$(), []);
|
||||
const [msModels, msModels$] = useBehaviorSubject<MSModel[]>([]);
|
||||
const [renderableModels, setRenderableModels] = useState<RenderableModel[]>([]);
|
||||
const isOnline = useObservable(() => os.isOnline$, true);
|
||||
const [error, error$] = useBehaviorSubject(false);
|
||||
const [isLoading, isLoading$] = useBehaviorSubject(false);
|
||||
const [ownedModels, setOwnedModels] = useState<BsmLocalModel[]>(owned ?? []);
|
||||
@@ -197,13 +194,7 @@ export const DownloadModelsModal: ModalComponent<void, { version: BSVersion; typ
|
||||
if (isLoading) {
|
||||
return <span className="text-lg">{t("models.panel.grid.loading")}</span>;
|
||||
}
|
||||
if (isOnline) {
|
||||
return <span className="text-lg">{t("models.modals.download-models.no-models")}</span>;
|
||||
}
|
||||
if (!isOnline) {
|
||||
return <span className="text-lg">{t("models.modals.download-models.no-internet")}</span>;
|
||||
}
|
||||
return <span className="text-lg">{t("models.modals.download-models.error-occured")}</span>;
|
||||
return <span className="text-lg">{t("models.modals.download-models.no-models")}</span>;
|
||||
};
|
||||
|
||||
return (
|
||||
|
||||
@@ -7,13 +7,11 @@ import { ConfigurationService } from "renderer/services/configuration.service";
|
||||
import { BsmButton } from "renderer/components/shared/bsm-button.component";
|
||||
import BeatWaitingImg from "../../../../../../assets/images/apngs/beat-waiting.png";
|
||||
import BeatConflictImg from "../../../../../../assets/images/apngs/beat-conflict.png";
|
||||
import { useObservable } from "renderer/hooks/use-observable.hook";
|
||||
import { lastValueFrom } from "rxjs";
|
||||
import { useTranslationV2 } from "renderer/hooks/use-translation.hook";
|
||||
import { LinkOpenerService } from "renderer/services/link-opener.service";
|
||||
import { ModalExitCode, ModalService } from "renderer/services/modale.service";
|
||||
import { ModsDisclaimerModal } from "renderer/components/modal/modal-types/mods-disclaimer-modal.component";
|
||||
import { OsDiagnosticService } from "renderer/services/os-diagnostic.service";
|
||||
import { lt } from "semver";
|
||||
import { useService } from "renderer/hooks/use-service.hook";
|
||||
import { NotificationService } from "renderer/services/notification.service";
|
||||
@@ -42,7 +40,6 @@ export const ModsSlide = forwardRef<ModsSlideRef, Props>(({ version, isActive, o
|
||||
const notification = useService(NotificationService);
|
||||
const linkOpener = useService(LinkOpenerService);
|
||||
const modals = useService(ModalService);
|
||||
const os = useService(OsDiagnosticService);
|
||||
const progress = useService(ProgressBarService);
|
||||
|
||||
const [gridStatus, setGridStatus] = useState(ModsGridStatus.OK);
|
||||
@@ -51,7 +48,6 @@ export const ModsSlide = forwardRef<ModsSlideRef, Props>(({ version, isActive, o
|
||||
const [modsSelected, setModsSelected] = useState([] as BbmFullMod[]);
|
||||
const [moreInfoMod, setMoreInfoMod] = useState(null as BbmFullMod);
|
||||
const [reinstallAllMods, setReinstallAllMods] = useState(false);
|
||||
const isOnline = useObservable(() => os.isOnline$);
|
||||
const [installing, setInstalling] = useState(false);
|
||||
const [uninstalling, setUninstalling] = useState(false);
|
||||
const [modsDropZoneOpen, setModsDropZoneOpen] = useState(false);
|
||||
@@ -205,7 +201,7 @@ export const ModsSlide = forwardRef<ModsSlideRef, Props>(({ version, isActive, o
|
||||
}
|
||||
|
||||
const loadMods = async (): Promise<void> => {
|
||||
if (os.isOffline || gridStatus !== ModsGridStatus.OK) {
|
||||
if (gridStatus !== ModsGridStatus.OK) {
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
||||
@@ -224,7 +220,7 @@ export const ModsSlide = forwardRef<ModsSlideRef, Props>(({ version, isActive, o
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
if(!isActive || !isOnline){
|
||||
if(!isActive){
|
||||
return noop();
|
||||
}
|
||||
|
||||
@@ -245,7 +241,7 @@ export const ModsSlide = forwardRef<ModsSlideRef, Props>(({ version, isActive, o
|
||||
setModsInstalled(null);
|
||||
setGridStatus(ModsGridStatus.OK);
|
||||
};
|
||||
}, [isActive, isOnline, version]);
|
||||
}, [isActive, version]);
|
||||
|
||||
useEffect(() => {
|
||||
// Center the progress bar between buttons
|
||||
@@ -289,9 +285,6 @@ export const ModsSlide = forwardRef<ModsSlideRef, Props>(({ version, isActive, o
|
||||
}
|
||||
|
||||
const renderContent = () => {
|
||||
if (!isOnline) {
|
||||
return <ModStatus text="pages.version-viewer.mods.no-internet" image={BeatConflictImg} />;
|
||||
}
|
||||
if (gridStatus !== ModsGridStatus.OK) {
|
||||
return renderStatus();
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ import { ProgressBarService } from "./progress-bar.service";
|
||||
import { ProgressionInterface } from "shared/models/progress-bar";
|
||||
import { BsvMapDetail } from "shared/models/maps";
|
||||
import { IpcService } from "./ipc.service";
|
||||
import { OsDiagnosticService } from "./os-diagnostic.service";
|
||||
import equal from "fast-deep-equal/es6";
|
||||
import { CSSProperties } from "react";
|
||||
import { BsmLocalMap } from "shared/models/maps/bsm-local-map.interface";
|
||||
@@ -25,7 +24,6 @@ export class MapsDownloaderService {
|
||||
private readonly modals: ModalService;
|
||||
private readonly progressBar: ProgressBarService;
|
||||
private readonly ipc: IpcService;
|
||||
private readonly os: OsDiagnosticService;
|
||||
|
||||
private readonly mapsQueue$: BehaviorSubject<MapDownload[]> = new BehaviorSubject([]);
|
||||
private readonly currentDownload$: BehaviorSubject<MapDownload> = new BehaviorSubject(null);
|
||||
@@ -38,7 +36,6 @@ export class MapsDownloaderService {
|
||||
this.modals = ModalService.getInstance();
|
||||
this.progressBar = ProgressBarService.getInstance();
|
||||
this.ipc = IpcService.getInstance();
|
||||
this.os = OsDiagnosticService.getInstance();
|
||||
|
||||
this.mapsQueue$.pipe(filter(queue => queue.length === 1 && !this.isDownloading)).subscribe(() => this.startDownloadMaps());
|
||||
this.mapsQueue$.pipe(filter(queue => queue.length === 0)).subscribe(() => {
|
||||
@@ -68,9 +65,6 @@ export class MapsDownloaderService {
|
||||
}
|
||||
|
||||
private downloadMap(map: BsvMapDetail, version: BSVersion): Observable<BsmLocalMap> {
|
||||
if (this.os.isOffline) {
|
||||
return null;
|
||||
}
|
||||
return this.ipc.sendV2("bs-maps.download-map", { map, version });
|
||||
}
|
||||
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
import { BehaviorSubject } from "rxjs";
|
||||
|
||||
export class OsDiagnosticService {
|
||||
private static instance: OsDiagnosticService;
|
||||
|
||||
public static getInstance(): OsDiagnosticService {
|
||||
if (!OsDiagnosticService.instance) {
|
||||
OsDiagnosticService.instance = new OsDiagnosticService();
|
||||
}
|
||||
return OsDiagnosticService.instance;
|
||||
}
|
||||
|
||||
private _isOnline$ = new BehaviorSubject(navigator.onLine);
|
||||
|
||||
private constructor() {
|
||||
window.addEventListener("online", () => this._isOnline$.next(true));
|
||||
window.addEventListener("offline", () => this._isOnline$.next(false));
|
||||
}
|
||||
|
||||
public get isOnline() {
|
||||
return this._isOnline$.value;
|
||||
}
|
||||
public get isOffline() {
|
||||
return !this._isOnline$.value;
|
||||
}
|
||||
public get isOnline$() {
|
||||
return this._isOnline$.asObservable();
|
||||
}
|
||||
}
|
||||
@@ -20,7 +20,6 @@ import { ModelsManagerService } from "renderer/services/models-management/models
|
||||
import { NotificationService } from "renderer/services/notification.service";
|
||||
import { timer } from "rxjs";
|
||||
import { ConfigurationService } from "renderer/services/configuration.service";
|
||||
import { OsDiagnosticService } from "renderer/services/os-diagnostic.service";
|
||||
import { useService } from "renderer/hooks/use-service.hook";
|
||||
import { SetupService } from "renderer/services/setup.service";
|
||||
import { StaticConfigurationService } from "renderer/services/static-configuration.service";
|
||||
@@ -28,7 +27,6 @@ import { BSVersionManagerService } from "renderer/services/bs-version-manager.se
|
||||
|
||||
export default function App() {
|
||||
|
||||
useService(OsDiagnosticService);
|
||||
const pageState = useService(PageStateService);
|
||||
const maps = useService(MapsManagerService);
|
||||
const playlists = useService(PlaylistsManagerService);
|
||||
|
||||
Reference in New Issue
Block a user