[bugfix-272] fix wrong folder separator for maps

This commit is contained in:
MathieuG-P
2023-07-02 02:06:33 +02:00
parent 32e41117ce
commit a4395764e8
7 changed files with 42 additions and 27 deletions
+10 -1
View File
@@ -1,4 +1,7 @@
import { contextBridge, ipcRenderer, IpcRendererEvent } from 'electron';
import { contextBridge, ipcRenderer, IpcRendererEvent } from "electron";
import { ProviderPlatform } from "shared/models/provider-platform.enum";
const sep = process.platform === ProviderPlatform.WINDOWS ? "\\" : "/";
contextBridge.exposeInMainWorld('electron', {
ipcRenderer: {
@@ -19,4 +22,10 @@ contextBridge.exposeInMainWorld('electron', {
ipcRenderer.removeAllListeners(channel);
}
},
path: {
sep,
join: (...args: string[]): string => {
return args.join(sep);
}
}
});
@@ -100,7 +100,7 @@ const FolderItem = ({version, relativeFolder, onDelete}: FolderProps) => {
const t = useTranslation();
const name = relativeFolder.split("\\").at(-1);
const name = relativeFolder.split(window.electron.path.sep).at(-1);
const color = useThemeColor("first-color");
const variants: Variants = {
@@ -1,16 +1,16 @@
export const defaultConfiguration: {[key in DefaultConfigKey]: any} = {
"first-color": "#3b82ff",
"second-color": "#ff4444",
"theme": "os",
"language": window.navigator.language.length <= 2 ? `${window.navigator.language}-${window.navigator.language.toLocaleUpperCase()}` : window.navigator.language,
"supported_languages": ["en-US", "en-EN", "fr-FR", "es-ES", "de-DE"],
"default_mods": ["SongCore", "WhyIsThereNoLeaderboard", "BeatSaverDownloader", "BeatSaverVoting", "PlaylistManager"],
theme: "os",
language: window.navigator.language.length <= 2 ? `${window.navigator.language}-${window.navigator.language.toLocaleUpperCase()}` : window.navigator.language,
supported_languages: ["en-US", "en-EN", "fr-FR", "es-ES", "de-DE"],
default_mods: ["SongCore", "WhyIsThereNoLeaderboard", "BeatSaverDownloader", "BeatSaverVoting", "PlaylistManager"],
"default-shared-folders": [
"Beat Saber_Data\\CustomLevels",
"Beat Saber_Data\\CustomWIPLevels",
window.electron.path.join("Beat Saber_Data", "CustomLevels"),
window.electron.path.join("Beat Saber_Data", "CustomWIPLevels"),
"DLC"
]
}
],
};
export type DefaultConfigKey = "first-color" | "second-color" | "theme" | "language" | "supported_languages" | "default_mods" | "default-shared-folders";
+14 -13
View File
@@ -1,17 +1,18 @@
declare global {
interface Window {
electron: {
ipcRenderer: {
sendMessage(channel: string, args: any): void;
on(
channel: string,
func: (...args: any) => void
): (() => void) | undefined;
once(channel: string, func: (...args: any) => void): void;
removeAllListeners(channel: string): void;
};
};
}
interface Window {
electron: {
ipcRenderer: {
sendMessage(channel: string, args: any): void;
on(channel: string, func: (...args: any) => void): (() => void) | undefined;
once(channel: string, func: (...args: any) => void): void;
removeAllListeners(channel: string): void;
};
path: {
sep: "/"|"\\";
join: (...args: string[]) => string;
};
};
}
}
export {};
@@ -26,8 +26,8 @@ export class MapsManagerService {
return MapsManagerService.instance;
}
public static readonly REMEMBER_CHOICE_DELETE_MAP_KEY = "not-confirm-delete-map"
public static readonly RELATIVE_MAPS_FOLDER = "Beat Saber_Data\\CustomLevels";
public static readonly REMEMBER_CHOICE_DELETE_MAP_KEY = "not-confirm-delete-map";
public static readonly RELATIVE_MAPS_FOLDER = window.electron.path.join("Beat Saber_Data", "CustomLevels");
private readonly ipcService: IpcService;
private readonly modal: ModalService;
@@ -34,8 +34,8 @@ export class VersionFolderLinkerService{
let progressOpened = false;
if(!this.progress.isVisible){
this.progress.showFake(.01, null, action.relativeFolder.split("\\").at(-1));
if (!this.progress.isVisible) {
this.progress.showFake(0.01, null, action.relativeFolder.split(window.electron.path.sep).at(-1));
progressOpened = true;
}
@@ -0,0 +1,5 @@
export enum ProviderPlatform {
WINDOWS = "win32",
MAC = "darwin",
LINUX = "linux"
}