axios 1.1.2 → 1.2.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of axios might be problematic. Click here for more details.

package/index.d.cts ADDED
@@ -0,0 +1,490 @@
1
+ type AxiosHeaderValue = AxiosHeaders | string | string[] | number | boolean | null;
2
+ type RawAxiosHeaders = Record<string, AxiosHeaderValue>;
3
+
4
+ type MethodsHeaders = {
5
+ [Key in axios.Method as Lowercase<Key>]: AxiosHeaders;
6
+ };
7
+
8
+ interface CommonHeaders {
9
+ common: AxiosHeaders;
10
+ }
11
+
12
+ type AxiosHeaderMatcher = (this: AxiosHeaders, value: string, name: string, headers: RawAxiosHeaders) => boolean;
13
+
14
+ type AxiosHeaderSetter = (value: AxiosHeaderValue, rewrite?: boolean | AxiosHeaderMatcher) => AxiosHeaders;
15
+
16
+ type AxiosHeaderGetter = ((parser?: RegExp) => RegExpExecArray | null) |
17
+ ((matcher?: AxiosHeaderMatcher) => AxiosHeaderValue);
18
+
19
+ type AxiosHeaderTester = (matcher?: AxiosHeaderMatcher) => boolean;
20
+
21
+ type MaxUploadRate = number;
22
+
23
+ type MaxDownloadRate = number;
24
+
25
+ type Milliseconds = number;
26
+
27
+ declare class AxiosHeaders {
28
+ constructor(
29
+ headers?: RawAxiosHeaders | AxiosHeaders,
30
+ defaultHeaders?: RawAxiosHeaders | AxiosHeaders
31
+ );
32
+
33
+ set(headerName?: string, value?: AxiosHeaderValue, rewrite?: boolean | AxiosHeaderMatcher): AxiosHeaders;
34
+ set(headers?: RawAxiosHeaders | AxiosHeaders, rewrite?: boolean): AxiosHeaders;
35
+
36
+ get(headerName: string, parser: RegExp): RegExpExecArray | null;
37
+ get(headerName: string, matcher?: true | AxiosHeaderMatcher): AxiosHeaderValue;
38
+
39
+ has(header: string, matcher?: true | AxiosHeaderMatcher): boolean;
40
+
41
+ delete(header: string | string[], matcher?: AxiosHeaderMatcher): boolean;
42
+
43
+ clear(): boolean;
44
+
45
+ normalize(format: boolean): AxiosHeaders;
46
+
47
+ toJSON(asStrings?: boolean): RawAxiosHeaders;
48
+
49
+ static from(thing?: AxiosHeaders | RawAxiosHeaders | string): AxiosHeaders;
50
+
51
+ static accessor(header: string | string[]): AxiosHeaders;
52
+
53
+ setContentType: AxiosHeaderSetter;
54
+ getContentType: AxiosHeaderGetter;
55
+ hasContentType: AxiosHeaderTester;
56
+
57
+ setContentLength: AxiosHeaderSetter;
58
+ getContentLength: AxiosHeaderGetter;
59
+ hasContentLength: AxiosHeaderTester;
60
+
61
+ setAccept: AxiosHeaderSetter;
62
+ getAccept: AxiosHeaderGetter;
63
+ hasAccept: AxiosHeaderTester;
64
+
65
+ setUserAgent: AxiosHeaderSetter;
66
+ getUserAgent: AxiosHeaderGetter;
67
+ hasUserAgent: AxiosHeaderTester;
68
+
69
+ setContentEncoding: AxiosHeaderSetter;
70
+ getContentEncoding: AxiosHeaderGetter;
71
+ hasContentEncoding: AxiosHeaderTester;
72
+ }
73
+
74
+ declare class AxiosError<T = unknown, D = any> extends Error {
75
+ constructor(
76
+ message?: string,
77
+ code?: string,
78
+ config?: axios.AxiosRequestConfig<D>,
79
+ request?: any,
80
+ response?: axios.AxiosResponse<T, D>
81
+ );
82
+
83
+ config?: axios.AxiosRequestConfig<D>;
84
+ code?: string;
85
+ request?: any;
86
+ response?: axios.AxiosResponse<T, D>;
87
+ isAxiosError: boolean;
88
+ status?: number;
89
+ toJSON: () => object;
90
+ cause?: Error;
91
+ static readonly ERR_FR_TOO_MANY_REDIRECTS = "ERR_FR_TOO_MANY_REDIRECTS";
92
+ static readonly ERR_BAD_OPTION_VALUE = "ERR_BAD_OPTION_VALUE";
93
+ static readonly ERR_BAD_OPTION = "ERR_BAD_OPTION";
94
+ static readonly ERR_NETWORK = "ERR_NETWORK";
95
+ static readonly ERR_DEPRECATED = "ERR_DEPRECATED";
96
+ static readonly ERR_BAD_RESPONSE = "ERR_BAD_RESPONSE";
97
+ static readonly ERR_BAD_REQUEST = "ERR_BAD_REQUEST";
98
+ static readonly ERR_NOT_SUPPORT = "ERR_NOT_SUPPORT";
99
+ static readonly ERR_INVALID_URL = "ERR_INVALID_URL";
100
+ static readonly ERR_CANCELED = "ERR_CANCELED";
101
+ static readonly ECONNABORTED = "ECONNABORTED";
102
+ static readonly ETIMEDOUT = "ETIMEDOUT";
103
+ }
104
+
105
+ declare class CanceledError<T> extends AxiosError<T> {
106
+ }
107
+
108
+ declare class Axios {
109
+ constructor(config?: axios.AxiosRequestConfig);
110
+ defaults: axios.AxiosDefaults;
111
+ interceptors: {
112
+ request: axios.AxiosInterceptorManager<axios.AxiosRequestConfig>;
113
+ response: axios.AxiosInterceptorManager<axios.AxiosResponse>;
114
+ };
115
+ getUri(config?: axios.AxiosRequestConfig): string;
116
+ request<T = any, R = axios.AxiosResponse<T>, D = any>(config: axios.AxiosRequestConfig<D>): Promise<R>;
117
+ get<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, config?: axios.AxiosRequestConfig<D>): Promise<R>;
118
+ delete<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, config?: axios.AxiosRequestConfig<D>): Promise<R>;
119
+ head<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, config?: axios.AxiosRequestConfig<D>): Promise<R>;
120
+ options<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, config?: axios.AxiosRequestConfig<D>): Promise<R>;
121
+ post<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, data?: D, config?: axios.AxiosRequestConfig<D>): Promise<R>;
122
+ put<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, data?: D, config?: axios.AxiosRequestConfig<D>): Promise<R>;
123
+ patch<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, data?: D, config?: axios.AxiosRequestConfig<D>): Promise<R>;
124
+ postForm<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, data?: D, config?: axios.AxiosRequestConfig<D>): Promise<R>;
125
+ putForm<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, data?: D, config?: axios.AxiosRequestConfig<D>): Promise<R>;
126
+ patchForm<T = any, R = axios.AxiosResponse<T>, D = any>(url: string, data?: D, config?: axios.AxiosRequestConfig<D>): Promise<R>;
127
+ }
128
+
129
+ declare enum HttpStatusCode {
130
+ Continue = 100,
131
+ SwitchingProtocols = 101,
132
+ Processing = 102,
133
+ EarlyHints = 103,
134
+ Ok = 200,
135
+ Created = 201,
136
+ Accepted = 202,
137
+ NonAuthoritativeInformation = 203,
138
+ NoContent = 204,
139
+ ResetContent = 205,
140
+ PartialContent = 206,
141
+ MultiStatus = 207,
142
+ AlreadyReported = 208,
143
+ ImUsed = 226,
144
+ MultipleChoices = 300,
145
+ MovedPermanently = 301,
146
+ Found = 302,
147
+ SeeOther = 303,
148
+ NotModified = 304,
149
+ UseProxy = 305,
150
+ Unused = 306,
151
+ TemporaryRedirect = 307,
152
+ PermanentRedirect = 308,
153
+ BadRequest = 400,
154
+ Unauthorized = 401,
155
+ PaymentRequired = 402,
156
+ Forbidden = 403,
157
+ NotFound = 404,
158
+ MethodNotAllowed = 405,
159
+ NotAcceptable = 406,
160
+ ProxyAuthenticationRequired = 407,
161
+ RequestTimeout = 408,
162
+ Conflict = 409,
163
+ Gone = 410,
164
+ LengthRequired = 411,
165
+ PreconditionFailed = 412,
166
+ PayloadTooLarge = 413,
167
+ UriTooLong = 414,
168
+ UnsupportedMediaType = 415,
169
+ RangeNotSatisfiable = 416,
170
+ ExpectationFailed = 417,
171
+ ImATeapot = 418,
172
+ MisdirectedRequest = 421,
173
+ UnprocessableEntity = 422,
174
+ Locked = 423,
175
+ FailedDependency = 424,
176
+ TooEarly = 425,
177
+ UpgradeRequired = 426,
178
+ PreconditionRequired = 428,
179
+ TooManyRequests = 429,
180
+ RequestHeaderFieldsTooLarge = 431,
181
+ UnavailableForLegalReasons = 451,
182
+ InternalServerError = 500,
183
+ NotImplemented = 501,
184
+ BadGateway = 502,
185
+ ServiceUnavailable = 503,
186
+ GatewayTimeout = 504,
187
+ HttpVersionNotSupported = 505,
188
+ VariantAlsoNegotiates = 506,
189
+ InsufficientStorage = 507,
190
+ LoopDetected = 508,
191
+ NotExtended = 510,
192
+ NetworkAuthenticationRequired = 511,
193
+ }
194
+
195
+ type InternalAxiosError<T = unknown, D = any> = AxiosError<T, D>;
196
+
197
+ declare namespace axios {
198
+ type AxiosError<T = unknown, D = any> = InternalAxiosError<T, D>;
199
+
200
+ type RawAxiosRequestHeaders = Partial<RawAxiosHeaders & MethodsHeaders & CommonHeaders>;
201
+
202
+ type AxiosRequestHeaders = Partial<RawAxiosHeaders & MethodsHeaders & CommonHeaders> & AxiosHeaders;
203
+
204
+ type RawAxiosResponseHeaders = Partial<Record<string, string> & {
205
+ "set-cookie"?: string[]
206
+ }>;
207
+
208
+ type AxiosResponseHeaders = RawAxiosResponseHeaders & AxiosHeaders;
209
+
210
+ interface AxiosRequestTransformer {
211
+ (this: AxiosRequestConfig, data: any, headers: AxiosRequestHeaders): any;
212
+ }
213
+
214
+ interface AxiosResponseTransformer {
215
+ (this: AxiosRequestConfig, data: any, headers: AxiosResponseHeaders, status?: number): any;
216
+ }
217
+
218
+ interface AxiosAdapter {
219
+ (config: AxiosRequestConfig): AxiosPromise;
220
+ }
221
+
222
+ interface AxiosBasicCredentials {
223
+ username: string;
224
+ password: string;
225
+ }
226
+
227
+ interface AxiosProxyConfig {
228
+ host: string;
229
+ port: number;
230
+ auth?: {
231
+ username: string;
232
+ password: string;
233
+ };
234
+ protocol?: string;
235
+ }
236
+
237
+ type Method =
238
+ | 'get' | 'GET'
239
+ | 'delete' | 'DELETE'
240
+ | 'head' | 'HEAD'
241
+ | 'options' | 'OPTIONS'
242
+ | 'post' | 'POST'
243
+ | 'put' | 'PUT'
244
+ | 'patch' | 'PATCH'
245
+ | 'purge' | 'PURGE'
246
+ | 'link' | 'LINK'
247
+ | 'unlink' | 'UNLINK';
248
+
249
+ type ResponseType =
250
+ | 'arraybuffer'
251
+ | 'blob'
252
+ | 'document'
253
+ | 'json'
254
+ | 'text'
255
+ | 'stream';
256
+
257
+ type responseEncoding =
258
+ | 'ascii' | 'ASCII'
259
+ | 'ansi' | 'ANSI'
260
+ | 'binary' | 'BINARY'
261
+ | 'base64' | 'BASE64'
262
+ | 'base64url' | 'BASE64URL'
263
+ | 'hex' | 'HEX'
264
+ | 'latin1' | 'LATIN1'
265
+ | 'ucs-2' | 'UCS-2'
266
+ | 'ucs2' | 'UCS2'
267
+ | 'utf-8' | 'UTF-8'
268
+ | 'utf8' | 'UTF8'
269
+ | 'utf16le' | 'UTF16LE';
270
+
271
+ interface TransitionalOptions {
272
+ silentJSONParsing?: boolean;
273
+ forcedJSONParsing?: boolean;
274
+ clarifyTimeoutError?: boolean;
275
+ }
276
+
277
+ interface GenericAbortSignal {
278
+ readonly aborted: boolean;
279
+ onabort?: ((...args: any) => any) | null;
280
+ addEventListener?: (...args: any) => any;
281
+ removeEventListener?: (...args: any) => any;
282
+ }
283
+
284
+ interface FormDataVisitorHelpers {
285
+ defaultVisitor: SerializerVisitor;
286
+ convertValue: (value: any) => any;
287
+ isVisitable: (value: any) => boolean;
288
+ }
289
+
290
+ interface SerializerVisitor {
291
+ (
292
+ this: GenericFormData,
293
+ value: any,
294
+ key: string | number,
295
+ path: null | Array<string | number>,
296
+ helpers: FormDataVisitorHelpers
297
+ ): boolean;
298
+ }
299
+
300
+ interface SerializerOptions {
301
+ visitor?: SerializerVisitor;
302
+ dots?: boolean;
303
+ metaTokens?: boolean;
304
+ indexes?: boolean | null;
305
+ }
306
+
307
+ // tslint:disable-next-line
308
+ interface FormSerializerOptions extends SerializerOptions {
309
+ }
310
+
311
+ interface ParamEncoder {
312
+ (value: any, defaultEncoder: (value: any) => any): any;
313
+ }
314
+
315
+ interface CustomParamsSerializer {
316
+ (params: Record<string, any>, options?: ParamsSerializerOptions): string;
317
+ }
318
+
319
+ interface ParamsSerializerOptions extends SerializerOptions {
320
+ encode?: ParamEncoder;
321
+ serialize?: CustomParamsSerializer;
322
+ }
323
+
324
+ interface AxiosProgressEvent {
325
+ loaded: number;
326
+ total?: number;
327
+ progress?: number;
328
+ bytes: number;
329
+ rate?: number;
330
+ estimated?: number;
331
+ upload?: boolean;
332
+ download?: boolean;
333
+ }
334
+
335
+ interface AxiosRequestConfig<D = any> {
336
+ url?: string;
337
+ method?: Method | string;
338
+ baseURL?: string;
339
+ transformRequest?: AxiosRequestTransformer | AxiosRequestTransformer[];
340
+ transformResponse?: AxiosResponseTransformer | AxiosResponseTransformer[];
341
+ headers?: RawAxiosRequestHeaders;
342
+ params?: any;
343
+ paramsSerializer?: ParamsSerializerOptions;
344
+ data?: D;
345
+ timeout?: Milliseconds;
346
+ timeoutErrorMessage?: string;
347
+ withCredentials?: boolean;
348
+ adapter?: AxiosAdapter;
349
+ auth?: AxiosBasicCredentials;
350
+ responseType?: ResponseType;
351
+ responseEncoding?: responseEncoding | string;
352
+ xsrfCookieName?: string;
353
+ xsrfHeaderName?: string;
354
+ onUploadProgress?: (progressEvent: AxiosProgressEvent) => void;
355
+ onDownloadProgress?: (progressEvent: AxiosProgressEvent) => void;
356
+ maxContentLength?: number;
357
+ validateStatus?: ((status: number) => boolean) | null;
358
+ maxBodyLength?: number;
359
+ maxRedirects?: number;
360
+ maxRate?: number | [MaxUploadRate, MaxDownloadRate];
361
+ beforeRedirect?: (options: Record<string, any>, responseDetails: {headers: Record<string, string>}) => void;
362
+ socketPath?: string | null;
363
+ httpAgent?: any;
364
+ httpsAgent?: any;
365
+ proxy?: AxiosProxyConfig | false;
366
+ cancelToken?: CancelToken;
367
+ decompress?: boolean;
368
+ transitional?: TransitionalOptions;
369
+ signal?: GenericAbortSignal;
370
+ insecureHTTPParser?: boolean;
371
+ env?: {
372
+ FormData?: new (...args: any[]) => object;
373
+ };
374
+ formSerializer?: FormSerializerOptions;
375
+ }
376
+
377
+ interface HeadersDefaults {
378
+ common: RawAxiosRequestHeaders;
379
+ delete: RawAxiosRequestHeaders;
380
+ get: RawAxiosRequestHeaders;
381
+ head: RawAxiosRequestHeaders;
382
+ post: RawAxiosRequestHeaders;
383
+ put: RawAxiosRequestHeaders;
384
+ patch: RawAxiosRequestHeaders;
385
+ options?: RawAxiosRequestHeaders;
386
+ purge?: RawAxiosRequestHeaders;
387
+ link?: RawAxiosRequestHeaders;
388
+ unlink?: RawAxiosRequestHeaders;
389
+ }
390
+
391
+ interface AxiosDefaults<D = any> extends Omit<AxiosRequestConfig<D>, 'headers'> {
392
+ headers: HeadersDefaults;
393
+ }
394
+
395
+ interface CreateAxiosDefaults<D = any> extends Omit<AxiosRequestConfig<D>, 'headers'> {
396
+ headers?: RawAxiosRequestHeaders | Partial<HeadersDefaults>;
397
+ }
398
+
399
+ interface AxiosResponse<T = any, D = any> {
400
+ data: T;
401
+ status: number;
402
+ statusText: string;
403
+ headers: RawAxiosResponseHeaders | AxiosResponseHeaders;
404
+ config: AxiosRequestConfig<D>;
405
+ request?: any;
406
+ }
407
+
408
+ type AxiosPromise<T = any> = Promise<AxiosResponse<T>>;
409
+
410
+ interface CancelStatic {
411
+ new (message?: string): Cancel;
412
+ }
413
+
414
+ interface Cancel {
415
+ message: string | undefined;
416
+ }
417
+
418
+ interface Canceler {
419
+ (message?: string, config?: AxiosRequestConfig, request?: any): void;
420
+ }
421
+
422
+ interface CancelTokenStatic {
423
+ new (executor: (cancel: Canceler) => void): CancelToken;
424
+ source(): CancelTokenSource;
425
+ }
426
+
427
+ interface CancelToken {
428
+ promise: Promise<Cancel>;
429
+ reason?: Cancel;
430
+ throwIfRequested(): void;
431
+ }
432
+
433
+ interface CancelTokenSource {
434
+ token: CancelToken;
435
+ cancel: Canceler;
436
+ }
437
+
438
+ interface AxiosInterceptorOptions {
439
+ synchronous?: boolean;
440
+ runWhen?: (config: AxiosRequestConfig) => boolean;
441
+ }
442
+
443
+ interface AxiosInterceptorManager<V> {
444
+ use(onFulfilled?: (value: V) => V | Promise<V>, onRejected?: (error: any) => any, options?: AxiosInterceptorOptions): number;
445
+ eject(id: number): void;
446
+ clear(): void;
447
+ }
448
+
449
+ interface AxiosInstance extends Axios {
450
+ <T = any, R = AxiosResponse<T>, D = any>(config: AxiosRequestConfig<D>): Promise<R>;
451
+ <T = any, R = AxiosResponse<T>, D = any>(url: string, config?: AxiosRequestConfig<D>): Promise<R>;
452
+
453
+ defaults: Omit<AxiosDefaults, 'headers'> & {
454
+ headers: HeadersDefaults & {
455
+ [key: string]: AxiosHeaderValue
456
+ }
457
+ };
458
+ }
459
+
460
+ interface GenericFormData {
461
+ append(name: string, value: any, options?: any): any;
462
+ }
463
+
464
+ interface GenericHTMLFormElement {
465
+ name: string;
466
+ method: string;
467
+ submit(): void;
468
+ }
469
+
470
+ interface AxiosStatic extends AxiosInstance {
471
+ create(config?: CreateAxiosDefaults): AxiosInstance;
472
+ Cancel: CancelStatic;
473
+ CancelToken: CancelTokenStatic;
474
+ Axios: typeof Axios;
475
+ AxiosError: typeof AxiosError;
476
+ CanceledError: typeof CanceledError;
477
+ HttpStatusCode: typeof HttpStatusCode;
478
+ readonly VERSION: string;
479
+ isCancel(value: any): value is Cancel;
480
+ all<T>(values: Array<T | Promise<T>>): Promise<T[]>;
481
+ spread<T, R>(callback: (...args: T[]) => R): (array: T[]) => R;
482
+ isAxiosError<T = any, D = any>(payload: any): payload is AxiosError<T, D>;
483
+ toFormData(sourceObj: object, targetFormData?: GenericFormData, options?: FormSerializerOptions): GenericFormData;
484
+ formToJSON(form: GenericFormData|GenericHTMLFormElement): object;
485
+ }
486
+ }
487
+
488
+ declare const axios: axios.AxiosStatic;
489
+
490
+ export = axios;
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- // TypeScript Version: 4.1
2
- type AxiosHeaderValue = string | string[] | number | boolean | null;
1
+ // TypeScript Version: 4.7
2
+ type AxiosHeaderValue = AxiosHeaders | string | string[] | number | boolean | null;
3
3
  type RawAxiosHeaders = Record<string, AxiosHeaderValue>;
4
4
 
5
5
  type MethodsHeaders = {
@@ -21,8 +21,7 @@ type AxiosHeaderTester = (matcher?: AxiosHeaderMatcher) => boolean;
21
21
 
22
22
  export class AxiosHeaders {
23
23
  constructor(
24
- headers?: RawAxiosHeaders | AxiosHeaders,
25
- defaultHeaders?: RawAxiosHeaders | AxiosHeaders
24
+ headers?: RawAxiosHeaders | AxiosHeaders
26
25
  );
27
26
 
28
27
  set(headerName?: string, value?: AxiosHeaderValue, rewrite?: boolean | AxiosHeaderMatcher): AxiosHeaders;
@@ -39,12 +38,16 @@ export class AxiosHeaders {
39
38
 
40
39
  normalize(format: boolean): AxiosHeaders;
41
40
 
42
- toJSON(): RawAxiosHeaders;
41
+ concat(...targets: Array<AxiosHeaders | RawAxiosHeaders | string>): AxiosHeaders;
42
+
43
+ toJSON(asStrings?: boolean): RawAxiosHeaders;
43
44
 
44
45
  static from(thing?: AxiosHeaders | RawAxiosHeaders | string): AxiosHeaders;
45
46
 
46
47
  static accessor(header: string | string[]): AxiosHeaders;
47
48
 
49
+ static concat(...targets: Array<AxiosHeaders | RawAxiosHeaders | string>): AxiosHeaders;
50
+
48
51
  setContentType: AxiosHeaderSetter;
49
52
  getContentType: AxiosHeaderGetter;
50
53
  hasContentType: AxiosHeaderTester;
@@ -247,8 +250,13 @@ export interface ParamEncoder {
247
250
  (value: any, defaultEncoder: (value: any) => any): any;
248
251
  }
249
252
 
253
+ export interface CustomParamsSerializer {
254
+ (params: Record<string, any>, options?: ParamsSerializerOptions): string;
255
+ }
256
+
250
257
  export interface ParamsSerializerOptions extends SerializerOptions {
251
258
  encode?: ParamEncoder;
259
+ serialize?: CustomParamsSerializer;
252
260
  }
253
261
 
254
262
  type MaxUploadRate = number;
@@ -264,6 +272,7 @@ export interface AxiosProgressEvent {
264
272
  estimated?: number;
265
273
  upload?: boolean;
266
274
  download?: boolean;
275
+ event?: ProgressEvent;
267
276
  }
268
277
 
269
278
  type Milliseconds = number;
@@ -411,7 +420,7 @@ export interface AxiosInterceptorOptions {
411
420
  }
412
421
 
413
422
  export interface AxiosInterceptorManager<V> {
414
- use(onFulfilled?: (value: V) => V | Promise<V>, onRejected?: (error: any) => any, options?: AxiosInterceptorOptions): number;
423
+ use(onFulfilled?: ((value: V) => V | Promise<V>) | null, onRejected?: ((error: any) => any) | null, options?: AxiosInterceptorOptions): number;
415
424
  eject(id: number): void;
416
425
  clear(): void;
417
426
  }
@@ -458,6 +467,18 @@ export interface GenericHTMLFormElement {
458
467
  submit(): void;
459
468
  }
460
469
 
470
+ export function toFormData(sourceObj: object, targetFormData?: GenericFormData, options?: FormSerializerOptions): GenericFormData;
471
+
472
+ export function formToJSON(form: GenericFormData|GenericHTMLFormElement): object;
473
+
474
+ export function isAxiosError<T = any, D = any>(payload: any): payload is AxiosError<T, D>;
475
+
476
+ export function spread<T, R>(callback: (...args: T[]) => R): (array: T[]) => R;
477
+
478
+ export function isCancel(value: any): value is Cancel;
479
+
480
+ export function all<T>(values: Array<T | Promise<T>>): Promise<T[]>;
481
+
461
482
  export interface AxiosStatic extends AxiosInstance {
462
483
  create(config?: CreateAxiosDefaults): AxiosInstance;
463
484
  Cancel: CancelStatic;
@@ -465,12 +486,14 @@ export interface AxiosStatic extends AxiosInstance {
465
486
  Axios: typeof Axios;
466
487
  AxiosError: typeof AxiosError;
467
488
  readonly VERSION: string;
468
- isCancel(value: any): value is Cancel;
469
- all<T>(values: Array<T | Promise<T>>): Promise<T[]>;
470
- spread<T, R>(callback: (...args: T[]) => R): (array: T[]) => R;
471
- isAxiosError<T = any, D = any>(payload: any): payload is AxiosError<T, D>;
472
- toFormData(sourceObj: object, targetFormData?: GenericFormData, options?: FormSerializerOptions): GenericFormData;
473
- formToJSON(form: GenericFormData|GenericHTMLFormElement): object;
489
+ isCancel: typeof isCancel;
490
+ all: typeof all;
491
+ spread: typeof spread;
492
+ isAxiosError: typeof isAxiosError;
493
+ toFormData: typeof toFormData;
494
+ formToJSON: typeof formToJSON;
495
+ CanceledError: typeof CanceledError;
496
+ AxiosHeaders: typeof AxiosHeaders;
474
497
  }
475
498
 
476
499
  declare const axios: AxiosStatic;
package/index.js CHANGED
@@ -1,2 +1,37 @@
1
1
  import axios from './lib/axios.js';
2
- export default axios;
2
+
3
+ // This module is intended to unwrap Axios default export as named.
4
+ // Keep top-level export same with static properties
5
+ // so that it can keep same with es module or cjs
6
+ const {
7
+ Axios,
8
+ AxiosError,
9
+ CanceledError,
10
+ isCancel,
11
+ CancelToken,
12
+ VERSION,
13
+ all,
14
+ Cancel,
15
+ isAxiosError,
16
+ spread,
17
+ toFormData,
18
+ AxiosHeaders,
19
+ formToJSON
20
+ } = axios;
21
+
22
+ export {
23
+ axios as default,
24
+ Axios,
25
+ AxiosError,
26
+ CanceledError,
27
+ isCancel,
28
+ CancelToken,
29
+ VERSION,
30
+ all,
31
+ Cancel,
32
+ isAxiosError,
33
+ spread,
34
+ toFormData,
35
+ AxiosHeaders,
36
+ formToJSON
37
+ }
package/karma.conf.cjs CHANGED
@@ -129,7 +129,7 @@ module.exports = function(config) {
129
129
  );
130
130
  browsers = ['Firefox'];
131
131
  } else if (process.env.GITHUB_ACTIONS === 'true') {
132
- console.log('Running ci on Github Actions.');
132
+ console.log('Running ci on GitHub Actions.');
133
133
  browsers = ['FirefoxHeadless', 'ChromeHeadless'];
134
134
  } else {
135
135
  browsers = browsers || ['Chrome'];
@@ -51,7 +51,7 @@ function dispatchBeforeRedirect(options) {
51
51
  * If the proxy or config afterRedirects functions are defined, call them with the options
52
52
  *
53
53
  * @param {http.ClientRequestArgs} options
54
- * @param {AxiosProxyConfig} configProxy
54
+ * @param {AxiosProxyConfig} configProxy configuration from Axios options object
55
55
  * @param {string} location
56
56
  *
57
57
  * @returns {http.ClientRequestArgs}
@@ -82,13 +82,14 @@ function setProxy(options, configProxy, location) {
82
82
  }
83
83
 
84
84
  options.headers.host = options.hostname + (options.port ? ':' + options.port : '');
85
- options.hostname = proxy.hostname;
85
+ const proxyHost = proxy.hostname || proxy.host;
86
+ options.hostname = proxyHost;
86
87
  // Replace 'host' since options is not a URL object
87
- options.host = proxy.hostname;
88
+ options.host = proxyHost;
88
89
  options.port = proxy.port;
89
90
  options.path = location;
90
91
  if (proxy.protocol) {
91
- options.protocol = proxy.protocol;
92
+ options.protocol = proxy.protocol.includes(':') ? proxy.protocol : `${proxy.protocol}:`;
92
93
  }
93
94
  }
94
95
 
@@ -202,7 +203,7 @@ export default function httpAdapter(config) {
202
203
  data: convertedData,
203
204
  status: 200,
204
205
  statusText: 'OK',
205
- headers: {},
206
+ headers: new AxiosHeaders(),
206
207
  config
207
208
  });
208
209
  }
@@ -586,3 +587,5 @@ export default function httpAdapter(config) {
586
587
  }
587
588
  });
588
589
  }
590
+
591
+ export const __setProxy = setProxy;
@@ -33,7 +33,8 @@ function progressEventReducer(listener, isDownloadStream) {
33
33
  progress: total ? (loaded / total) : undefined,
34
34
  bytes: progressBytes,
35
35
  rate: rate ? rate : undefined,
36
- estimated: rate && total && inRange ? (total - loaded) / rate : undefined
36
+ estimated: rate && total && inRange ? (total - loaded) / rate : undefined,
37
+ event: e
37
38
  };
38
39
 
39
40
  data[isDownloadStream ? 'download' : 'upload'] = true;