chore: improve typings in getItemLists
This commit is contained in:
		
							parent
							
								
									370f8c1008
								
							
						
					
					
						commit
						99e1a66da8
					
				@ -32,6 +32,29 @@ interface ListedItem {
 | 
				
			|||||||
    parazon?: boolean;
 | 
					    parazon?: boolean;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					interface ItemLists {
 | 
				
			||||||
 | 
					    archonCrystalUpgrades: Record<string, string>;
 | 
				
			||||||
 | 
					    uniqueLevelCaps: Record<string, number>;
 | 
				
			||||||
 | 
					    Suits: ListedItem[];
 | 
				
			||||||
 | 
					    LongGuns: ListedItem[];
 | 
				
			||||||
 | 
					    Melee: ListedItem[];
 | 
				
			||||||
 | 
					    ModularParts: ListedItem[];
 | 
				
			||||||
 | 
					    Pistols: ListedItem[];
 | 
				
			||||||
 | 
					    Sentinels: ListedItem[];
 | 
				
			||||||
 | 
					    SentinelWeapons: ListedItem[];
 | 
				
			||||||
 | 
					    SpaceGuns: ListedItem[];
 | 
				
			||||||
 | 
					    SpaceMelee: ListedItem[];
 | 
				
			||||||
 | 
					    SpaceSuits: ListedItem[];
 | 
				
			||||||
 | 
					    MechSuits: ListedItem[];
 | 
				
			||||||
 | 
					    miscitems: ListedItem[];
 | 
				
			||||||
 | 
					    Syndicates: ListedItem[];
 | 
				
			||||||
 | 
					    OperatorAmps: ListedItem[];
 | 
				
			||||||
 | 
					    QuestKeys: ListedItem[];
 | 
				
			||||||
 | 
					    KubrowPets: ListedItem[];
 | 
				
			||||||
 | 
					    MoaPets: ListedItem[];
 | 
				
			||||||
 | 
					    mods: ListedItem[];
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const relicQualitySuffixes: Record<TRelicQuality, string> = {
 | 
					const relicQualitySuffixes: Record<TRelicQuality, string> = {
 | 
				
			||||||
    VPQ_BRONZE: "",
 | 
					    VPQ_BRONZE: "",
 | 
				
			||||||
    VPQ_SILVER: " [Flawless]",
 | 
					    VPQ_SILVER: " [Flawless]",
 | 
				
			||||||
@ -41,24 +64,28 @@ const relicQualitySuffixes: Record<TRelicQuality, string> = {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
const getItemListsController: RequestHandler = (req, response) => {
 | 
					const getItemListsController: RequestHandler = (req, response) => {
 | 
				
			||||||
    const lang = getDict(typeof req.query.lang == "string" ? req.query.lang : "en");
 | 
					    const lang = getDict(typeof req.query.lang == "string" ? req.query.lang : "en");
 | 
				
			||||||
    const res: Record<string, ListedItem[]> = {};
 | 
					    const res: ItemLists = {
 | 
				
			||||||
    res.Suits = [];
 | 
					        archonCrystalUpgrades,
 | 
				
			||||||
    res.LongGuns = [];
 | 
					        uniqueLevelCaps: ExportMisc.uniqueLevelCaps,
 | 
				
			||||||
    res.Melee = [];
 | 
					        Suits: [],
 | 
				
			||||||
    res.ModularParts = [];
 | 
					        LongGuns: [],
 | 
				
			||||||
    res.Pistols = [];
 | 
					        Melee: [],
 | 
				
			||||||
    res.Sentinels = [];
 | 
					        ModularParts: [],
 | 
				
			||||||
    res.SentinelWeapons = [];
 | 
					        Pistols: [],
 | 
				
			||||||
    res.SpaceGuns = [];
 | 
					        Sentinels: [],
 | 
				
			||||||
    res.SpaceMelee = [];
 | 
					        SentinelWeapons: [],
 | 
				
			||||||
    res.SpaceSuits = [];
 | 
					        SpaceGuns: [],
 | 
				
			||||||
    res.MechSuits = [];
 | 
					        SpaceMelee: [],
 | 
				
			||||||
    res.miscitems = [];
 | 
					        SpaceSuits: [],
 | 
				
			||||||
    res.Syndicates = [];
 | 
					        MechSuits: [],
 | 
				
			||||||
    res.OperatorAmps = [];
 | 
					        miscitems: [],
 | 
				
			||||||
    res.QuestKeys = [];
 | 
					        Syndicates: [],
 | 
				
			||||||
    res.KubrowPets = [];
 | 
					        OperatorAmps: [],
 | 
				
			||||||
    res.MoaPets = [];
 | 
					        QuestKeys: [],
 | 
				
			||||||
 | 
					        KubrowPets: [],
 | 
				
			||||||
 | 
					        MoaPets: [],
 | 
				
			||||||
 | 
					        mods: []
 | 
				
			||||||
 | 
					    };
 | 
				
			||||||
    for (const [uniqueName, item] of Object.entries(ExportWarframes)) {
 | 
					    for (const [uniqueName, item] of Object.entries(ExportWarframes)) {
 | 
				
			||||||
        res[item.productCategory].push({
 | 
					        res[item.productCategory].push({
 | 
				
			||||||
            uniqueName,
 | 
					            uniqueName,
 | 
				
			||||||
@ -201,7 +228,6 @@ const getItemListsController: RequestHandler = (req, response) => {
 | 
				
			|||||||
        });
 | 
					        });
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    res.mods = [];
 | 
					 | 
				
			||||||
    for (const [uniqueName, upgrade] of Object.entries(ExportUpgrades)) {
 | 
					    for (const [uniqueName, upgrade] of Object.entries(ExportUpgrades)) {
 | 
				
			||||||
        const mod: ListedItem = {
 | 
					        const mod: ListedItem = {
 | 
				
			||||||
            uniqueName,
 | 
					            uniqueName,
 | 
				
			||||||
@ -260,11 +286,7 @@ const getItemListsController: RequestHandler = (req, response) => {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    response.json({
 | 
					    response.json(res);
 | 
				
			||||||
        archonCrystalUpgrades,
 | 
					 | 
				
			||||||
        uniqueLevelCaps: ExportMisc.uniqueLevelCaps,
 | 
					 | 
				
			||||||
        ...res
 | 
					 | 
				
			||||||
    });
 | 
					 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export { getItemListsController };
 | 
					export { getItemListsController };
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user