* Fixed decompression for responses without `content-length` header;
* Add Brotli encoding to the `Accept-Encoding` header only if it is supported.
* `content-length` header transformation moved up;
Co-authored-by: Jay <jasonsaayman@gmail.com>
This is done by duplicating `index.d.ts` into `index.d.cts`, and
modifying it for CommonJS. The same was done for type tests.
Unfortunately I was unable to find a way to re-use types without
drastically changing the code base.
To test this, a minimum TypeScript version of 4.7 is needed, so it has
been updated. The old types still work with older TypeScript versions.
Co-authored-by: Jay <jasonsaayman@gmail.com>
* Refactored AxiosHeaders class;
* Added support for instances of AxiosHeaders as a value for the headers option;
Co-authored-by: Jay <jasonsaayman@gmail.com>
* feat: add boolean flag to mimic pre 1.x behavior for paramsSerializer custom function
* chore: update ParamsSerializer Readme
* fix: dont slice hash off URL if not appending params
* Omit nulls from formData serialization
* fix: dont add nulls or undefined values to arrays either
* readme update
* fix test
* chore: documentation
* chore: do TS properly
Co-authored-by: Jay <jasonsaayman@gmail.com>
* test: Failed test
Param indexes from formSerializer and paramsSerializer receiving null
Closes#4959
* fix: Allow null to indexes in SerializerOptions
Closes#4959
Co-authored-by: Willian Agostini <willian.agostini@fleetcor.com.br>
Co-authored-by: Jay <jasonsaayman@gmail.com>
* Added AxiosHeaders class;
* Fixed README.md href;
* Fixed a potential bug with headers normalization;
* Fixed a potential bug with headers normalization;
Refactored accessor building routine;
Refactored default transforms;
Removed `normalizeHeaderName` helper;
* Added `Content-Length` accessor;
Added missed `has` accessor to TS types;
* Added `AxiosTransformStream` class;
Added progress capturing ability for node.js environment;
Added `maxRate` option to limit the data rate in node.js environment;
Refactored event handled by `onUploadProgress` && `onDownloadProgress` listeners in browser environment;
Added progress & data rate tests for the http adapter;
Added response stream aborting test;
Added a manual progress capture test for the browser;
Updated TS types;
Added TS tests;
Refactored request abort logic for the http adapter;
Added ability to abort the response stream;
* Remove `stream/promises` & `timers/promises` modules usage in tests;
* Use `abortcontroller-polyfill`;
* Fixed AxiosTransformStream dead-lock in legacy node versions;
Fixed CancelError emitting in streams;
* Reworked AxiosTransformStream internal logic to optimize memory consumption;
Added throwing an error if the request stream was silently destroying (without error) Refers to #3966;
* Treat the destruction of the request stream as a cancellation of the request;
Fixed tests;
* Emit `progress` event in the next tick;
* Initial refactoring;
* Refactored Mocha tests to use ESM;
* Refactored Karma tests to use rollup preprocessor & ESM;
Replaced grunt with gulp;
Improved dev scripts;
Added Babel for rollup build;
* Added default commonjs package export for Node build;
Added automatic contributors list generator for package.json;
Co-authored-by: Jay <jasonsaayman@gmail.com>
* Fixing timeoutErrorMessage in http calls
When timeoutErrorMessage was set this did not change anything in the error message, with this change the error message will be the configured message
* Testing timeoutErrorMessage in http calls
When timeoutErrorMessage was set this did not change anything in the error message, with this change the error message will be the configured message
Co-authored-by: Jay <jasonsaayman@gmail.com>
* Fixed bug #4727;
Added node 18.x to the CI;
Added hotfix for `ERR_OSSL_EVP_UNSUPPORTED` issue with karma running on node >=17.x;
Added `cross-env` to allow running build and test scripts on Windows platforms;
* Added conditional setting of `--openssl-legacy-provider` option for node versions >=17.x;
* Refactored ssl-hotfix & test script;
* Fixed and refactored default max body length test due to ECONNRESET failure;
* Added test for converting the data uri to a Blob;
Fixed bug with parsing mime type for Blob;
Co-authored-by: Jay <jasonsaayman@gmail.com>