Add validation schemas and improve texture handling

Introduces zod-based validation schemas for Minecraft and Mojang API endpoints. Refactors texture route to support hash-based file serving and removes the old static texture route. Updates database schema for player properties and adds an event to clean expired certificates. Improves ValidationError formatting, adjusts skin/cape URL construction, and adds SSRF protection for skin uploads.
This commit is contained in:
2025-12-28 09:02:10 +01:00
parent 1fe46a03fd
commit 5cfadfd7ac
29 changed files with 490 additions and 24 deletions
@@ -3,7 +3,7 @@ const router = express.Router()
const userService = require("../../../../services/userService")
const authService = require("../../../../services/authService")
router.put("/", async (req, res) => {
router.get("/", async (req, res) => {
const player = await authService.verifyAccessToken({ accessToken: req.headers.authorization.replace("Bearer ", "") })
const nameChangeInformation = await userService.getPlayerNameChangeStatus(player.user.uuid)
return res.status(nameChangeInformation.code).json(nameChangeInformation.data)