chore: fix most explicit-function-return-type warnings

This commit is contained in:
Sainan 2024-10-17 22:36:27 +02:00
parent fbc66ab06f
commit ad6c24de71
17 changed files with 58 additions and 37 deletions

View File

@ -1,6 +1,6 @@
import { Request, Response } from "express"; import { Request, Response } from "express";
const getFriendsController = (_request: Request, response: Response) => { const getFriendsController = (_request: Request, response: Response): void => {
response.writeHead(200, { response.writeHead(200, {
//Connection: "keep-alive", //Connection: "keep-alive",
//"Content-Encoding": "gzip", //"Content-Encoding": "gzip",

View File

@ -1,4 +1,4 @@
import { IOid } from "@/src/types/commonTypes"; import { IMongoDate, IOid } from "@/src/types/commonTypes";
import { IInventoryResponse } from "@/src/types/inventoryTypes/inventoryTypes"; import { IInventoryResponse } from "@/src/types/inventoryTypes/inventoryTypes";
import { Types } from "mongoose"; import { Types } from "mongoose";
@ -9,10 +9,10 @@ export const toInventoryResponse = (inventoryDatabase: { accountOwnerId: Types.O
return inventoryResponse as unknown as IInventoryResponse; return inventoryResponse as unknown as IInventoryResponse;
}; };
export const toOid = (objectId: Types.ObjectId) => { export const toOid = (objectId: Types.ObjectId): IOid => {
return { $oid: objectId.toString() } satisfies IOid; return { $oid: objectId.toString() } satisfies IOid;
}; };
export const toMongoDate = (date: Date) => { export const toMongoDate = (date: Date): IMongoDate => {
return { $date: { $numberLong: date.getTime().toString() } }; return { $date: { $numberLong: date.getTime().toString() } };
}; };

View File

@ -43,7 +43,7 @@ export const isSlotPurchaseName = (slotPurchaseName: string): slotPurchaseName i
return slotPurchaseName in slotPurchaseNameToSlotName; return slotPurchaseName in slotPurchaseNameToSlotName;
}; };
export const parseSlotPurchaseName = (slotPurchaseName: string) => { export const parseSlotPurchaseName = (slotPurchaseName: string): SlotPurchaseName => {
if (!isSlotPurchaseName(slotPurchaseName)) throw new Error(`invalid slot name ${slotPurchaseName}`); if (!isSlotPurchaseName(slotPurchaseName)) throw new Error(`invalid slot name ${slotPurchaseName}`);
return slotPurchaseName; return slotPurchaseName;
}; };

View File

@ -17,7 +17,7 @@ export const getSubstringFromKeywordToKeyword = (str: string, keywordBegin: stri
return str.substring(beginIndex, endIndex + 1); return str.substring(beginIndex, endIndex + 1);
}; };
export const getIndexAfter = (str: string, searchWord: string) => { export const getIndexAfter = (str: string, searchWord: string): number => {
const index = str.indexOf(searchWord); const index = str.indexOf(searchWord);
if (index === -1) { if (index === -1) {
return -1; return -1;

View File

@ -1,7 +1,7 @@
import { logger } from "@/src/utils/logger"; import { logger } from "@/src/utils/logger";
import { /*NextFunction,*/ Request, Response } from "express"; import { /*NextFunction,*/ Request, Response } from "express";
const unknownEndpointHandler = (request: Request, response: Response) => { const unknownEndpointHandler = (request: Request, response: Response): void => {
logger.error(`unknown endpoint ${request.method} ${request.path}`); logger.error(`unknown endpoint ${request.method} ${request.path}`);
if (request.body) { if (request.body) {
logger.debug(`data provided to ${request.path}: ${String(request.body)}`); logger.debug(`data provided to ${request.path}: ${String(request.body)}`);

View File

@ -316,7 +316,7 @@ const MailboxSchema = new Schema<IMailbox>(
{ {
LastInboxId: { LastInboxId: {
type: Schema.Types.ObjectId, type: Schema.Types.ObjectId,
set: (v: IMailbox["LastInboxId"]) => v.$oid.toString() set: (v: IMailbox["LastInboxId"]): string => v.$oid.toString()
} }
}, },
{ id: false, _id: false } { id: false, _id: false }

View File

@ -47,7 +47,7 @@ interface ILoggerConfig {
level: string; // "fatal" | "error" | "warn" | "info" | "http" | "debug" | "trace"; level: string; // "fatal" | "error" | "warn" | "info" | "http" | "debug" | "trace";
} }
export const updateConfig = async (data: string) => { export const updateConfig = async (data: string): Promise<void> => {
amnesia = true; amnesia = true;
await fsPromises.writeFile(configPath, data); await fsPromises.writeFile(configPath, data);
Object.assign(config, JSON.parse(data)); Object.assign(config, JSON.parse(data));

View File

@ -42,7 +42,7 @@ import {
export const createInventory = async ( export const createInventory = async (
accountOwnerId: Types.ObjectId, accountOwnerId: Types.ObjectId,
defaultItemReferences: { loadOutPresetId: Types.ObjectId; ship: Types.ObjectId } defaultItemReferences: { loadOutPresetId: Types.ObjectId; ship: Types.ObjectId }
) => { ): Promise<void> => {
try { try {
const inventory = new Inventory({ const inventory = new Inventory({
...new_inventory, ...new_inventory,
@ -405,7 +405,12 @@ export const addSpaceSuit = async (spacesuitName: string, accountId: string) =>
return changedInventory.SpaceSuits[suitIndex - 1].toJSON(); return changedInventory.SpaceSuits[suitIndex - 1].toJSON();
}; };
export const updateSlots = async (accountId: string, slotName: SlotNames, slotAmount: number, extraAmount: number) => { export const updateSlots = async (
accountId: string,
slotName: SlotNames,
slotAmount: number,
extraAmount: number
): Promise<void> => {
const inventory = await getInventory(accountId); const inventory = await getInventory(accountId);
inventory[slotName].Slots += slotAmount; inventory[slotName].Slots += slotAmount;
@ -478,7 +483,7 @@ export const updateGeneric = async (data: IGenericUpdate, accountId: string): Pr
await inventory.save(); await inventory.save();
}; };
export const updateTheme = async (data: IThemeUpdateRequest, accountId: string) => { export const updateTheme = async (data: IThemeUpdateRequest, accountId: string): Promise<void> => {
const inventory = await getInventory(accountId); const inventory = await getInventory(accountId);
if (data.Style) inventory.ThemeStyle = data.Style; if (data.Style) inventory.ThemeStyle = data.Style;
if (data.Background) inventory.ThemeBackground = data.Background; if (data.Background) inventory.ThemeBackground = data.Background;
@ -546,7 +551,7 @@ const addGearExpByCategory = (
inventory: IInventoryDatabaseDocument, inventory: IInventoryDatabaseDocument,
gearArray: IEquipmentClient[] | undefined, gearArray: IEquipmentClient[] | undefined,
categoryName: TEquipmentKey categoryName: TEquipmentKey
) => { ): void => {
const category = inventory[categoryName]; const category = inventory[categoryName];
gearArray?.forEach(({ ItemId, XP }) => { gearArray?.forEach(({ ItemId, XP }) => {
@ -575,7 +580,7 @@ const addGearExpByCategory = (
}); });
}; };
export const addMiscItems = (inventory: IInventoryDatabaseDocument, itemsArray: IMiscItem[] | undefined) => { export const addMiscItems = (inventory: IInventoryDatabaseDocument, itemsArray: IMiscItem[] | undefined): void => {
const { MiscItems } = inventory; const { MiscItems } = inventory;
itemsArray?.forEach(({ ItemCount, ItemType }) => { itemsArray?.forEach(({ ItemCount, ItemType }) => {
@ -590,7 +595,10 @@ export const addMiscItems = (inventory: IInventoryDatabaseDocument, itemsArray:
}); });
}; };
export const addShipDecorations = (inventory: IInventoryDatabaseDocument, itemsArray: IConsumable[] | undefined) => { export const addShipDecorations = (
inventory: IInventoryDatabaseDocument,
itemsArray: IConsumable[] | undefined
): void => {
const { ShipDecorations } = inventory; const { ShipDecorations } = inventory;
itemsArray?.forEach(({ ItemCount, ItemType }) => { itemsArray?.forEach(({ ItemCount, ItemType }) => {
@ -605,7 +613,7 @@ export const addShipDecorations = (inventory: IInventoryDatabaseDocument, itemsA
}); });
}; };
export const addConsumables = (inventory: IInventoryDatabaseDocument, itemsArray: IConsumable[] | undefined) => { export const addConsumables = (inventory: IInventoryDatabaseDocument, itemsArray: IConsumable[] | undefined): void => {
const { Consumables } = inventory; const { Consumables } = inventory;
itemsArray?.forEach(({ ItemCount, ItemType }) => { itemsArray?.forEach(({ ItemCount, ItemType }) => {
@ -620,7 +628,7 @@ export const addConsumables = (inventory: IInventoryDatabaseDocument, itemsArray
}); });
}; };
export const addRecipes = (inventory: IInventoryDatabaseDocument, itemsArray: ITypeCount[] | undefined) => { export const addRecipes = (inventory: IInventoryDatabaseDocument, itemsArray: ITypeCount[] | undefined): void => {
const { Recipes } = inventory; const { Recipes } = inventory;
itemsArray?.forEach(({ ItemCount, ItemType }) => { itemsArray?.forEach(({ ItemCount, ItemType }) => {
@ -635,7 +643,7 @@ export const addRecipes = (inventory: IInventoryDatabaseDocument, itemsArray: IT
}); });
}; };
export const addMods = (inventory: IInventoryDatabaseDocument, itemsArray: IRawUpgrade[] | undefined) => { export const addMods = (inventory: IInventoryDatabaseDocument, itemsArray: IRawUpgrade[] | undefined): void => {
const { RawUpgrades } = inventory; const { RawUpgrades } = inventory;
itemsArray?.forEach(({ ItemType, ItemCount }) => { itemsArray?.forEach(({ ItemType, ItemCount }) => {
const itemIndex = RawUpgrades.findIndex(i => i.ItemType === ItemType); const itemIndex = RawUpgrades.findIndex(i => i.ItemType === ItemType);
@ -652,7 +660,7 @@ export const addMods = (inventory: IInventoryDatabaseDocument, itemsArray: IRawU
export const addFusionTreasures = ( export const addFusionTreasures = (
inventory: IInventoryDatabaseDocument, inventory: IInventoryDatabaseDocument,
itemsArray: IFusionTreasure[] | undefined itemsArray: IFusionTreasure[] | undefined
) => { ): void => {
const { FusionTreasures } = inventory; const { FusionTreasures } = inventory;
itemsArray?.forEach(({ ItemType, ItemCount, Sockets }) => { itemsArray?.forEach(({ ItemType, ItemCount, Sockets }) => {
const itemIndex = FusionTreasures.findIndex(i => i.ItemType == ItemType && (i.Sockets || 0) == (Sockets || 0)); const itemIndex = FusionTreasures.findIndex(i => i.ItemType == ItemType && (i.Sockets || 0) == (Sockets || 0));
@ -666,7 +674,10 @@ export const addFusionTreasures = (
}); });
}; };
export const updateChallengeProgress = async (challenges: IUpdateChallengeProgressRequest, accountId: string) => { export const updateChallengeProgress = async (
challenges: IUpdateChallengeProgressRequest,
accountId: string
): Promise<void> => {
const inventory = await getInventory(accountId); const inventory = await getInventory(accountId);
addChallenges(inventory, challenges.ChallengeProgress); addChallenges(inventory, challenges.ChallengeProgress);
@ -678,7 +689,7 @@ export const updateChallengeProgress = async (challenges: IUpdateChallengeProgre
export const addSeasonalChallengeHistory = ( export const addSeasonalChallengeHistory = (
inventory: IInventoryDatabaseDocument, inventory: IInventoryDatabaseDocument,
itemsArray: ISeasonChallenge[] | undefined itemsArray: ISeasonChallenge[] | undefined
) => { ): void => {
const category = inventory.SeasonChallengeHistory; const category = inventory.SeasonChallengeHistory;
itemsArray?.forEach(({ challenge, id }) => { itemsArray?.forEach(({ challenge, id }) => {
@ -692,7 +703,10 @@ export const addSeasonalChallengeHistory = (
}); });
}; };
export const addChallenges = (inventory: IInventoryDatabaseDocument, itemsArray: IChallengeProgress[] | undefined) => { export const addChallenges = (
inventory: IInventoryDatabaseDocument,
itemsArray: IChallengeProgress[] | undefined
): void => {
const category = inventory.ChallengeProgress; const category = inventory.ChallengeProgress;
itemsArray?.forEach(({ Name, Progress }) => { itemsArray?.forEach(({ Name, Progress }) => {
@ -707,7 +721,7 @@ export const addChallenges = (inventory: IInventoryDatabaseDocument, itemsArray:
}); });
}; };
const addMissionComplete = (inventory: IInventoryDatabaseDocument, { Tag, Completes }: IMission) => { const addMissionComplete = (inventory: IInventoryDatabaseDocument, { Tag, Completes }: IMission): void => {
const { Missions } = inventory; const { Missions } = inventory;
const itemIndex = Missions.findIndex(item => item.Tag === Tag); const itemIndex = Missions.findIndex(item => item.Tag === Tag);
@ -719,7 +733,10 @@ const addMissionComplete = (inventory: IInventoryDatabaseDocument, { Tag, Comple
} }
}; };
export const missionInventoryUpdate = async (data: IMissionInventoryUpdateRequest, accountId: string) => { export const missionInventoryUpdate = async (
data: IMissionInventoryUpdateRequest,
accountId: string
): Promise<IInventoryChanges> => {
const { const {
RawUpgrades, RawUpgrades,
MiscItems, MiscItems,

View File

@ -1,7 +1,8 @@
import { Loadout } from "@/src/models/inventoryModels/loadoutModel"; import { Loadout } from "@/src/models/inventoryModels/loadoutModel";
import { logger } from "@/src/utils/logger"; import { logger } from "@/src/utils/logger";
import { ILoadoutDatabase } from "../types/saveLoadoutTypes";
export const getLoadout = async (accountId: string) => { export const getLoadout = async (accountId: string): Promise<ILoadoutDatabase> => {
const loadout = await Loadout.findOne({ loadoutOwnerId: accountId }); const loadout = await Loadout.findOne({ loadoutOwnerId: accountId });
if (!loadout) { if (!loadout) {
@ -9,5 +10,5 @@ export const getLoadout = async (accountId: string) => {
throw new Error("loadout not found"); throw new Error("loadout not found");
} }
return loadout; return loadout.toJSON();
}; };

View File

@ -29,13 +29,13 @@ export const createAccount = async (accountData: IDatabaseAccount) => {
} }
}; };
export const createLoadout = async (accountId: Types.ObjectId) => { export const createLoadout = async (accountId: Types.ObjectId): Promise<Types.ObjectId> => {
const loadout = new Loadout({ loadoutOwnerId: accountId }); const loadout = new Loadout({ loadoutOwnerId: accountId });
const savedLoadout = await loadout.save(); const savedLoadout = await loadout.save();
return savedLoadout._id; return savedLoadout._id;
}; };
export const createPersonalRooms = async (accountId: Types.ObjectId, shipId: Types.ObjectId) => { export const createPersonalRooms = async (accountId: Types.ObjectId, shipId: Types.ObjectId): Promise<void> => {
const personalRooms = new PersonalRooms({ const personalRooms = new PersonalRooms({
...new_personal_rooms, ...new_personal_rooms,
personalRoomsOwnerId: accountId, personalRoomsOwnerId: accountId,

View File

@ -184,7 +184,7 @@ const addRewardResponse = (
ItemType: string, ItemType: string,
ItemCount: number, ItemCount: number,
InventoryCategory: IInventoryFieldType InventoryCategory: IInventoryFieldType
) => { ): void => {
if (!ItemType) return; if (!ItemType) return;
if (!InventoryChanges[InventoryCategory]) { if (!InventoryChanges[InventoryCategory]) {

View File

@ -8,7 +8,7 @@ if (url === undefined) {
throw new Error("MONGODB_URL not found. Make sure you have a .env file in the root of the project!"); throw new Error("MONGODB_URL not found. Make sure you have a .env file in the root of the project!");
} }
const connectDatabase = async () => { const connectDatabase = async (): Promise<void> => {
try { try {
await mongoose.connect(`${url}`); await mongoose.connect(`${url}`);
logger.info("Connected to MongoDB"); logger.info("Connected to MongoDB");

View File

@ -11,13 +11,13 @@ import { IPurchaseRequest, SlotPurchase, IInventoryChanges } from "@/src/types/p
import { logger } from "@/src/utils/logger"; import { logger } from "@/src/utils/logger";
import { ExportBundles, ExportGear, TRarity } from "warframe-public-export-plus"; import { ExportBundles, ExportGear, TRarity } from "warframe-public-export-plus";
export const getStoreItemCategory = (storeItem: string) => { export const getStoreItemCategory = (storeItem: string): string => {
const storeItemString = getSubstringFromKeyword(storeItem, "StoreItems/"); const storeItemString = getSubstringFromKeyword(storeItem, "StoreItems/");
const storeItemElements = storeItemString.split("/"); const storeItemElements = storeItemString.split("/");
return storeItemElements[1]; return storeItemElements[1];
}; };
export const getStoreItemTypesCategory = (typesItem: string) => { export const getStoreItemTypesCategory = (typesItem: string): string => {
const typesString = getSubstringFromKeyword(typesItem, "Types"); const typesString = getSubstringFromKeyword(typesItem, "Types");
const typeElements = typesString.split("/"); const typeElements = typesString.split("/");
if (typesItem.includes("StoreItems")) { if (typesItem.includes("StoreItems")) {
@ -26,7 +26,10 @@ export const getStoreItemTypesCategory = (typesItem: string) => {
return typeElements[1]; return typeElements[1];
}; };
export const handlePurchase = async (purchaseRequest: IPurchaseRequest, accountId: string) => { export const handlePurchase = async (
purchaseRequest: IPurchaseRequest,
accountId: string
): Promise<{ InventoryChanges: IInventoryChanges }> => {
logger.debug("purchase request", purchaseRequest); logger.debug("purchase request", purchaseRequest);
const purchaseResponse = await handleStoreItemAcquisition( const purchaseResponse = await handleStoreItemAcquisition(

View File

@ -4,7 +4,7 @@ import { getRecipe } from "@/src/services/itemDataService";
import { logger } from "@/src/utils/logger"; import { logger } from "@/src/utils/logger";
import { Types } from "mongoose"; import { Types } from "mongoose";
export const startRecipe = async (recipeName: string, accountId: string) => { export const startRecipe = async (recipeName: string, accountId: string): Promise<{ RecipeId: { $oid?: string } }> => {
const recipe = getRecipe(recipeName); const recipe = getRecipe(recipeName);
if (!recipe) { if (!recipe) {

View File

@ -10,7 +10,7 @@ import {
import { logger } from "@/src/utils/logger"; import { logger } from "@/src/utils/logger";
import { Types } from "mongoose"; import { Types } from "mongoose";
export const setShipCustomizations = async (shipCustomization: ISetShipCustomizationsRequest) => { export const setShipCustomizations = async (shipCustomization: ISetShipCustomizationsRequest): Promise<void> => {
const ship = await getShip(new Types.ObjectId(shipCustomization.ShipId)); const ship = await getShip(new Types.ObjectId(shipCustomization.ShipId));
let shipChanges: Partial<IShipDatabase>; let shipChanges: Partial<IShipDatabase>;

View File

@ -3,7 +3,7 @@ import { ILoadoutDatabase } from "@/src/types/saveLoadoutTypes";
import { logger } from "@/src/utils/logger"; import { logger } from "@/src/utils/logger";
import { Types } from "mongoose"; import { Types } from "mongoose";
export const createShip = async (accountOwnerId: Types.ObjectId) => { export const createShip = async (accountOwnerId: Types.ObjectId): Promise<Types.ObjectId> => {
try { try {
const ship = new Ship({ const ship = new Ship({
ItemType: "/Lotus/Types/Items/Ships/DefaultShip", ItemType: "/Lotus/Types/Items/Ships/DefaultShip",

View File

@ -103,7 +103,7 @@ export const logger = createLogger({
addColors(logLevels.colors); addColors(logLevels.colors);
export function registerLogFileCreationListener() { export function registerLogFileCreationListener(): void {
errorLog.on("new", filename => logger.info(`Using error log file: ${filename}`)); errorLog.on("new", filename => logger.info(`Using error log file: ${filename}`));
combinedLog.on("new", filename => logger.info(`Using combined log file: ${filename}`)); combinedLog.on("new", filename => logger.info(`Using combined log file: ${filename}`));
errorLog.on("rotate", filename => logger.info(`Rotated error log file: ${filename}`)); errorLog.on("rotate", filename => logger.info(`Rotated error log file: ${filename}`));