* Update react-* to v16.7.0 * Upgrade react-hotkeys to v1.1.4 * Update react-intl to v2.7.2 * Update react-select to v2.2.0 * Update react-swipeable-views to v0.13.0 * Upgrade react-textarea-autosize to v7.1.0 * Upgrade redux to v4.0.1 * Upgrade reselect to v4.0.0 * Update raf to v3.4.1 * Update enzyme to v3.8.0 * Update rails-ujs to v5.2.2 * Update axios to v0.18.0 * Update http-link-header to v1.0.2 * Update rellax to v1.7.1 * Update intersection-observer to v0.5.1 * Update stringz to v1.0.0 * Upgrade babel-eslint to v10.0.1 * Update @babel/* to v7.2.x * Update babel-plugin-react-intl to v3.0.1 * Update babel-plugin-transform-react-remove-prop-types to v0.4.21 * Upgrade dotenv to v6.2.0 * Update express to v4.16.4 * Update webpack to v4.28.3 * Upgrade autoprefixer to v9.4.3 * Update babel-loader to v8.0.4 * Upgrade css-loader to v2.1.0 * Upgrade file-loader to v3.0.1 * Update marky to v1.2.1 * Update mini-css-extract-plugin to v0.5.0 * Update offline-plugin to v5.0.6 * Update style-loader to v0.23.1 * Update eslint-plugin-jsx-a11y to v6.1.2 * yarn upgrade * fix * Replace webpack-manifest-plugin to webpack-assets-manifest * Replace node-zopfli to @gfz/zopfli * Remove monkey-patch for http-link-header
		
			
				
	
	
		
			35 lines
		
	
	
		
			780 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			780 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import axios from 'axios';
 | 
						|
import LinkHeader from 'http-link-header';
 | 
						|
import ready from './ready';
 | 
						|
 | 
						|
export const getLinks = response => {
 | 
						|
  const value = response.headers.link;
 | 
						|
 | 
						|
  if (!value) {
 | 
						|
    return { refs: [] };
 | 
						|
  }
 | 
						|
 | 
						|
  return LinkHeader.parse(value);
 | 
						|
};
 | 
						|
 | 
						|
let csrfHeader = {};
 | 
						|
function setCSRFHeader() {
 | 
						|
  const csrfToken = document.querySelector('meta[name=csrf-token]').content;
 | 
						|
  csrfHeader['X-CSRF-Token'] = csrfToken;
 | 
						|
}
 | 
						|
ready(setCSRFHeader);
 | 
						|
 | 
						|
export default getState => axios.create({
 | 
						|
  headers: Object.assign(csrfHeader, getState ? {
 | 
						|
    'Authorization': `Bearer ${getState().getIn(['meta', 'access_token'], '')}`,
 | 
						|
  } : {}),
 | 
						|
 | 
						|
  transformResponse: [function (data) {
 | 
						|
    try {
 | 
						|
      return JSON.parse(data);
 | 
						|
    } catch(Exception) {
 | 
						|
      return data;
 | 
						|
    }
 | 
						|
  }],
 | 
						|
});
 |