export default function sendFollowUser(user, successCb) { const csrfToken = document.querySelector("meta[name='csrf-token']").content; const formData = new FormData(); formData.append('followable_type', 'User'); formData.append('followable_id', user.id); formData.append('verb', user.following ? 'unfollow' : 'follow'); fetch('/follows', { method: 'POST', headers: { 'X-CSRF-Token': csrfToken, }, body: formData, credentials: 'same-origin', }) .then((response) => response.json()) .then((json) => { successCb(json.outcome); // json is followed or unfollowed }) .catch((error) => { // TODO: Add client-side error tracking. See https://github.com/thepracticaldev/dev.to/issues/2501 // for the discussion. console.log(error); // eslint-disable-line no-console }); }