From f5a7a348e06946f17df6c451cbcf269b7ea8d443 Mon Sep 17 00:00:00 2001
From: Dennis Postma <dennis@directonline.io>
Date: Wed, 25 Dec 2024 14:13:53 +0100
Subject: [PATCH] Improvements in asset http endpoints

---
 src/http/assets.ts | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/http/assets.ts b/src/http/assets.ts
index 333559a..38f2fb0 100644
--- a/src/http/assets.ts
+++ b/src/http/assets.ts
@@ -6,6 +6,7 @@ import TileRepository from '#repositories/tileRepository'
 import ZoneRepository from '#repositories/zoneRepository'
 import SpriteRepository from '#repositories/spriteRepository'
 import { AssetData } from '#utilities/types'
+import { FilterValue } from '@mikro-orm/core'
 
 const router = Router()
 
@@ -53,9 +54,9 @@ router.get('/assets/list_tiles/:zoneId', async (req: Request, res: Response) =>
 
 // Get sprite actions
 router.get('/assets/list_sprite_actions/:spriteId', async (req: Request, res: Response) => {
-  const spriteId = req.params.spriteId
+  const spriteId = req.params.spriteId as FilterValue<`${string}-${string}-${string}-${string}-${string}`>
 
-  if (!spriteId || parseInt(spriteId) === 0) {
+  if (!spriteId) {
     return res.status(400).json({ message: 'Invalid sprite ID' })
   }
 
@@ -65,7 +66,7 @@ router.get('/assets/list_sprite_actions/:spriteId', async (req: Request, res: Re
   }
 
   let assets: AssetData[] = []
-  sprite.spriteActions.forEach((spriteAction) => {
+  sprite.spriteActions.getItems().forEach((spriteAction) => {
     assets.push({
       key: sprite.id + '-' + spriteAction.action,
       data: '/assets/sprites/' + sprite.id + '/' + spriteAction.action + '.png',