You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							52 lines
						
					
					
						
							1.3 KiB
						
					
					
				
			
		
		
	
	
							52 lines
						
					
					
						
							1.3 KiB
						
					
					
				'use strict'; | 
						|
 | 
						|
var utils = require('./utils'); | 
						|
var bind = require('./helpers/bind'); | 
						|
var Axios = require('./core/Axios'); | 
						|
var defaults = require('./defaults'); | 
						|
 | 
						|
/** | 
						|
 * Create an instance of Axios | 
						|
 * | 
						|
 * @param {Object} defaultConfig The default config for the instance | 
						|
 * @return {Axios} A new instance of Axios | 
						|
 */ | 
						|
function createInstance(defaultConfig) { | 
						|
  var context = new Axios(defaultConfig); | 
						|
  var instance = bind(Axios.prototype.request, context); | 
						|
 | 
						|
  // Copy axios.prototype to instance | 
						|
  utils.extend(instance, Axios.prototype, context); | 
						|
 | 
						|
  // Copy context to instance | 
						|
  utils.extend(instance, context); | 
						|
 | 
						|
  return instance; | 
						|
} | 
						|
 | 
						|
// Create the default instance to be exported | 
						|
var axios = createInstance(defaults); | 
						|
 | 
						|
// Expose Axios class to allow class inheritance | 
						|
axios.Axios = Axios; | 
						|
 | 
						|
// Factory for creating new instances | 
						|
axios.create = function create(instanceConfig) { | 
						|
  return createInstance(utils.merge(defaults, instanceConfig)); | 
						|
}; | 
						|
 | 
						|
// Expose Cancel & CancelToken | 
						|
axios.Cancel = require('./cancel/Cancel'); | 
						|
axios.CancelToken = require('./cancel/CancelToken'); | 
						|
axios.isCancel = require('./cancel/isCancel'); | 
						|
 | 
						|
// Expose all/spread | 
						|
axios.all = function all(promises) { | 
						|
  return Promise.all(promises); | 
						|
}; | 
						|
axios.spread = require('./helpers/spread'); | 
						|
 | 
						|
module.exports = axios; | 
						|
 | 
						|
// Allow use of default import syntax in TypeScript | 
						|
module.exports.default = axios;
 | 
						|
 |