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.
		
		
		
		
		
			
		
			
				
					65 lines
				
				1.8 KiB
			
		
		
			
		
	
	
					65 lines
				
				1.8 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var utils = require('./utils');
							 | 
						||
| 
								 | 
							
								var bind = require('./helpers/bind');
							 | 
						||
| 
								 | 
							
								var Axios = require('./core/Axios');
							 | 
						||
| 
								 | 
							
								var mergeConfig = require('./core/mergeConfig');
							 | 
						||
| 
								 | 
							
								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);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  // Factory for creating new instances
							 | 
						||
| 
								 | 
							
								  instance.create = function create(instanceConfig) {
							 | 
						||
| 
								 | 
							
								    return createInstance(mergeConfig(defaultConfig, instanceConfig));
							 | 
						||
| 
								 | 
							
								  };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  return instance;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Create the default instance to be exported
							 | 
						||
| 
								 | 
							
								var axios = createInstance(defaults);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Expose Axios class to allow class inheritance
							 | 
						||
| 
								 | 
							
								axios.Axios = Axios;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Expose Cancel & CancelToken
							 | 
						||
| 
								 | 
							
								axios.CanceledError = require('./cancel/CanceledError');
							 | 
						||
| 
								 | 
							
								axios.CancelToken = require('./cancel/CancelToken');
							 | 
						||
| 
								 | 
							
								axios.isCancel = require('./cancel/isCancel');
							 | 
						||
| 
								 | 
							
								axios.VERSION = require('./env/data').version;
							 | 
						||
| 
								 | 
							
								axios.toFormData = require('./helpers/toFormData');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Expose AxiosError class
							 | 
						||
| 
								 | 
							
								axios.AxiosError = require('../lib/core/AxiosError');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// alias for CanceledError for backward compatibility
							 | 
						||
| 
								 | 
							
								axios.Cancel = axios.CanceledError;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Expose all/spread
							 | 
						||
| 
								 | 
							
								axios.all = function all(promises) {
							 | 
						||
| 
								 | 
							
								  return Promise.all(promises);
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								axios.spread = require('./helpers/spread');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Expose isAxiosError
							 | 
						||
| 
								 | 
							
								axios.isAxiosError = require('./helpers/isAxiosError');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = axios;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Allow use of default import syntax in TypeScript
							 | 
						||
| 
								 | 
							
								module.exports.default = axios;
							 |