Compare commits

..

6 Commits

Author SHA1 Message Date
MathieuG-P 48899f5869 bumb to v1.4.16 2025-01-02 17:47:16 +01:00
MathieuG-P 44bfe6ca24 Merge pull request #726 from silentrald/hotfix/filter-out-null-mods
[hotfix] fix issue where installed mods are not reflected in mods tab
2025-01-02 17:39:37 +01:00
silentrald 526344f838 [hotfix] fix issue where installed mods are not reflected in mods tab 2025-01-03 00:30:20 +08:00
MathieuG-P 979232a0f8 Available mods should be loaded first 2025-01-02 16:12:13 +01:00
MathieuG-P 8c7a22378c Fix scroll-bar in the mods slide view 2025-01-02 16:04:16 +01:00
MathieuG-P b69978cc51 Add filter pattern for "OC" oculus token 2025-01-02 15:39:27 +01:00
5 changed files with 38 additions and 13 deletions
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "bs-manager",
"version": "1.4.15",
"version": "1.4.16",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "bs-manager",
"version": "1.4.15",
"version": "1.4.16",
"hasInstallScript": true,
"license": "MIT",
"dependencies": {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "bs-manager",
"version": "1.4.15",
"version": "1.4.16",
"description": "BSManager",
"main": "./dist/main/main.js",
"author": {
+1 -1
View File
@@ -29,7 +29,7 @@ export const filterPatterns = new Set<RegExp>();
const isDebug = process.env.NODE_ENV === "development" || process.env.DEBUG_PROD === "true";
// Filter all occulus tokens
filterPatterns.add(/FRL\S{10,}/g);
filterPatterns.add(/(FRL|OC)\S{10,}/g);
initLogger();
deleteOlestLogs();
@@ -1,7 +1,7 @@
import { useEffect, useLayoutEffect, useRef, useState } from "react";
import { BsModsManagerService } from "renderer/services/bs-mods-manager.service";
import { BSVersion } from "shared/bs-version.interface";
import { BbmCategories, BbmFullMod } from "shared/models/mods/mod.interface";
import { BbmCategories, BbmFullMod, BbmModVersion } from "shared/models/mods/mod.interface";
import { ModsGrid } from "./mods-grid.component";
import { ConfigurationService } from "renderer/services/configuration.service";
import { BsmButton } from "renderer/components/shared/bsm-button.component";
@@ -18,6 +18,7 @@ import { ModsDisclaimerModal } from "renderer/components/modal/modal-types/mods-
import { OsDiagnosticService } from "renderer/services/os-diagnostic.service";
import { lt } from "semver";
import { useService } from "renderer/hooks/use-service.hook";
import { logRenderError } from "renderer";
export function ModsSlide({ version, onDisclamerDecline }: { version: BSVersion; onDisclamerDecline: () => void }) {
const ACCEPTED_DISCLAIMER_KEY = "accepted-mods-disclaimer";
@@ -101,18 +102,24 @@ export function ModsSlide({ version, onDisclamerDecline }: { version: BSVersion;
return;
}
Promise.all([
lastValueFrom(modsManager.getAvailableMods(version)),
lastValueFrom(modsManager.getInstalledMods(version))
]).then(([available, installed]) => {
const promise = async (): Promise<[BbmFullMod[], BbmModVersion[]]> => {
const available = await lastValueFrom(modsManager.getAvailableMods(version));
const installed = await lastValueFrom(modsManager.getInstalledMods(version));
return [available, installed];
}
promise().then(([available, installed]) => {
const defaultMods = installed?.length ? [] : available.filter(m => m.mod.category === BbmCategories.Core || m.mod.category === BbmCategories.Essential);
setModsAvailable(modsToCategoryMap(available));
const installedMods: BbmFullMod[] = installed.map(version => {
const mod = available.find(m => m.mod.id === version.modId);
return mod ? { ...mod, version } : null;
});
const mod = available.find(m => m.mod.id === version.modId);
return mod ? { ...mod, version } : null;
}).filter(mod => mod);
setModsSelected(available.filter(m => m.mod.category === BbmCategories.Core || defaultMods.some(d => m.mod.name.toLowerCase() === d.mod.name.toLowerCase()) || installedMods.some(i => m.mod.id === i.mod.id)));
setModsInstalled(modsToCategoryMap(installedMods));
}).catch(e => {
logRenderError("Error occur while loading mods", e);
});
};
@@ -184,7 +191,7 @@ export function ModsSlide({ version, onDisclamerDecline }: { version: BSVersion;
}
return (
<>
<div className="grow overflow-scroll w-full min-h-0 scrollbar-thin scrollbar-thumb-neutral-900 scrollbar-thumb-rounded-full">
<div className="grow overflow-y-scroll w-full min-h-0 scrollbar-default p-0 m-0">
<ModsGrid modsMap={modsAvailable} installed={modsInstalled} modsSelected={modsSelected} onModChange={handleModChange} moreInfoMod={moreInfoMod} onWantInfos={handleMoreInfo} unselectAllMods={unselectAllMods} />
</div>
<div className="h-10 shrink-0 flex items-center justify-between px-3">
+18
View File
@@ -132,3 +132,21 @@
background-position: 0 0%;
}
}
.scrollbar-default {
&::-webkit-scrollbar {
width: 4px;
height: 4px;
}
&::-webkit-scrollbar-track {
background-color: transparent;
}
&::-webkit-scrollbar-thumb {
background-color: rgb(23 23 23 / var(--tw-bg-opacity));
border-radius: 999px;
}
}