feat: add dev.keepVendorsExpired config option #2161

Merged
Sainan merged 1 commits from stale-vendors into main 2025-06-14 12:58:26 -07:00
3 changed files with 17 additions and 1 deletions

View File

@ -50,6 +50,7 @@
"noDojoResearchTime": false,
"fastClanAscension": false,
"spoofMasteryRank": -1,
"nightwaveStandingMultiplier": 1,
"worldState": {
"creditBoost": false,
"affinityBoost": false,
@ -58,5 +59,8 @@
"eidolonOverride": "",
"vallisOverride": "",
"nightwaveOverride": ""
},
"dev": {
"keepVendorsExpired": false
}
}

View File

@ -2,6 +2,7 @@ import { RequestHandler } from "express";
import { applyStandingToVendorManifest, getVendorManifestByTypeName } from "@/src/services/serversideVendorsService";
import { getInventory } from "@/src/services/inventoryService";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { config } from "@/src/services/configService";
export const getVendorInfoController: RequestHandler = async (req, res) => {
let manifest = getVendorManifestByTypeName(req.query.vendor as string);
@ -14,6 +15,14 @@ export const getVendorInfoController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const inventory = await getInventory(accountId);
manifest = applyStandingToVendorManifest(inventory, manifest);
if (config.dev?.keepVendorsExpired) {
manifest = {
VendorInfo: {
...manifest.VendorInfo,
Expiry: { $date: { $numberLong: "0" } }
}
};
}
}
res.json(manifest);

View File

@ -56,6 +56,7 @@ interface IConfig {
noDojoResearchTime?: boolean;
fastClanAscension?: boolean;
spoofMasteryRank?: number;
nightwaveStandingMultiplier?: number;
worldState?: {
creditBoost?: boolean;
affinityBoost?: boolean;
@ -65,7 +66,9 @@ interface IConfig {
vallisOverride?: string;
nightwaveOverride?: string;
};
nightwaveStandingMultiplier?: number;
dev?: {
keepVendorsExpired?: boolean;
};
}
export const configPath = path.join(repoDir, "config.json");