SpaceNinjaServer/src/controllers/api/giveKeyChainTriggeredItemsController.ts
Ordis 5c0130c480
Some checks failed
Build / build (18) (push) Failing after 1m2s
Build / build (22) (push) Failing after 38s
Build / build (20) (push) Failing after 1m13s
Build / build (20) (pull_request) Failing after 36s
Build / build (22) (pull_request) Failing after 1m0s
Build / build (18) (pull_request) Failing after 1m5s
testingready
2025-02-19 18:49:24 +01:00

24 lines
928 B
TypeScript

import { RequestHandler } from "express";
import { isEmptyObject, parseString } from "@/src/helpers/general";
import { getJSONfromString } from "@/src/helpers/stringHelpers";
import { addKeyChainItems, getInventory } from "@/src/services/inventoryService";
import { IGroup } from "@/src/types/loginTypes";
import { giveKeyChainItem, updateQuestStage } from "@/src/services/questService";
export const giveKeyChainTriggeredItemsController: RequestHandler = async (req, res) => {
const accountId = parseString(req.query.accountId);
const keyChainInfo = getJSONfromString<IKeyChainRequest>((req.body as string).toString());
const inventory = await getInventory(accountId);
const inventoryChanges = giveKeyChainItem(inventory, keyChainInfo);
await inventory.save();
res.send(inventoryChanges);
};
export interface IKeyChainRequest {
KeyChain: string;
ChainStage: number;
Groups?: IGroup[];
}