The backend delete endpoint returns 204 No Content with an empty body,
but the frontend was attempting to parse the empty response as JSON.
This caused a "JSON.parse: unexpected end of data" error when deleting
files. The fix adds special handling to not parse JSON for delete
responses on success.
Add null safety checks to prevent TypeError when backend returns null
instead of empty array for files list. Initialize empty slices on backend
and add null coalescing on frontend when accessing files state.
- Backend: Initialize files slice to always return [] instead of null
- Frontend: Add null checks for files state in all map/filter operations