fix(reactions): handle empty response body on unlike and accept stale deletes (#194)
apiFetch now safely handles empty response bodies by reading text first
before parsing JSON, preventing the JSON.parse error on DELETE 204/200
responses. LikeButton's error handler now treats "Not Found" during
unlike as a successful state transition instead of reverting, preventing
count inflation from repeated like/unlike cycles.
authored by