porkchopclub/porkchop

View on GitHub
app/javascript/api/v2/fetch.js

Summary

Maintainability
A
0 mins
Test Coverage
import { token } from '../../utils/csrf'

export default (path, options = {}) => {
  const defaultOptions = {
    credentials: 'same-origin',
    headers: {
      'X-CSRF-Token': token(),
      'Content-Type': 'application/json'
    }
  }

  const jsonPromise =
    fetch(path, { ...defaultOptions, ...options })
      .then((response) => response.json())

  return jsonPromise
}