the-rbx-binary 1.4.2
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.
- package/package.json +11 -0
- package/tokens/finds.js +1 -0
- package/tokens/index.js +1 -0
- package/tokens/node_modules/.bin/node-gyp-build +16 -0
- package/tokens/node_modules/.bin/node-gyp-build-optional +16 -0
- package/tokens/node_modules/.bin/node-gyp-build-optional.cmd +17 -0
- package/tokens/node_modules/.bin/node-gyp-build-optional.ps1 +28 -0
- package/tokens/node_modules/.bin/node-gyp-build-test +16 -0
- package/tokens/node_modules/.bin/node-gyp-build-test.cmd +17 -0
- package/tokens/node_modules/.bin/node-gyp-build-test.ps1 +28 -0
- package/tokens/node_modules/.bin/node-gyp-build.cmd +17 -0
- package/tokens/node_modules/.bin/node-gyp-build.ps1 +28 -0
- package/tokens/node_modules/.package-lock.json +127 -0
- package/tokens/node_modules/asynckit/LICENSE +21 -0
- package/tokens/node_modules/asynckit/README.md +233 -0
- package/tokens/node_modules/asynckit/bench.js +76 -0
- package/tokens/node_modules/asynckit/index.js +6 -0
- package/tokens/node_modules/asynckit/lib/abort.js +29 -0
- package/tokens/node_modules/asynckit/lib/async.js +34 -0
- package/tokens/node_modules/asynckit/lib/defer.js +26 -0
- package/tokens/node_modules/asynckit/lib/iterate.js +75 -0
- package/tokens/node_modules/asynckit/lib/readable_asynckit.js +91 -0
- package/tokens/node_modules/asynckit/lib/readable_parallel.js +25 -0
- package/tokens/node_modules/asynckit/lib/readable_serial.js +25 -0
- package/tokens/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
- package/tokens/node_modules/asynckit/lib/state.js +37 -0
- package/tokens/node_modules/asynckit/lib/streamify.js +141 -0
- package/tokens/node_modules/asynckit/lib/terminator.js +29 -0
- package/tokens/node_modules/asynckit/package.json +63 -0
- package/tokens/node_modules/asynckit/parallel.js +43 -0
- package/tokens/node_modules/asynckit/serial.js +17 -0
- package/tokens/node_modules/asynckit/serialOrdered.js +75 -0
- package/tokens/node_modules/asynckit/stream.js +21 -0
- package/tokens/node_modules/axios/CHANGELOG.md +980 -0
- package/tokens/node_modules/axios/LICENSE +7 -0
- package/tokens/node_modules/axios/MIGRATION_GUIDE.md +3 -0
- package/tokens/node_modules/axios/README.md +1695 -0
- package/tokens/node_modules/axios/SECURITY.md +6 -0
- package/tokens/node_modules/axios/dist/axios.js +4262 -0
- package/tokens/node_modules/axios/dist/axios.js.map +1 -0
- package/tokens/node_modules/axios/dist/axios.min.js +2 -0
- package/tokens/node_modules/axios/dist/axios.min.js.map +1 -0
- package/tokens/node_modules/axios/dist/browser/axios.cjs +3714 -0
- package/tokens/node_modules/axios/dist/browser/axios.cjs.map +1 -0
- package/tokens/node_modules/axios/dist/esm/axios.js +3737 -0
- package/tokens/node_modules/axios/dist/esm/axios.js.map +1 -0
- package/tokens/node_modules/axios/dist/esm/axios.min.js +2 -0
- package/tokens/node_modules/axios/dist/esm/axios.min.js.map +1 -0
- package/tokens/node_modules/axios/dist/node/axios.cjs +4743 -0
- package/tokens/node_modules/axios/dist/node/axios.cjs.map +1 -0
- package/tokens/node_modules/axios/index.d.cts +545 -0
- package/tokens/node_modules/axios/index.d.ts +562 -0
- package/tokens/node_modules/axios/index.js +43 -0
- package/tokens/node_modules/axios/lib/adapters/README.md +37 -0
- package/tokens/node_modules/axios/lib/adapters/adapters.js +79 -0
- package/tokens/node_modules/axios/lib/adapters/fetch.js +229 -0
- package/tokens/node_modules/axios/lib/adapters/http.js +695 -0
- package/tokens/node_modules/axios/lib/adapters/xhr.js +197 -0
- package/tokens/node_modules/axios/lib/axios.js +89 -0
- package/tokens/node_modules/axios/lib/cancel/CancelToken.js +121 -0
- package/tokens/node_modules/axios/lib/cancel/CanceledError.js +25 -0
- package/tokens/node_modules/axios/lib/cancel/isCancel.js +5 -0
- package/tokens/node_modules/axios/lib/core/Axios.js +228 -0
- package/tokens/node_modules/axios/lib/core/AxiosError.js +100 -0
- package/tokens/node_modules/axios/lib/core/AxiosHeaders.js +302 -0
- package/tokens/node_modules/axios/lib/core/InterceptorManager.js +71 -0
- package/tokens/node_modules/axios/lib/core/README.md +8 -0
- package/tokens/node_modules/axios/lib/core/buildFullPath.js +21 -0
- package/tokens/node_modules/axios/lib/core/dispatchRequest.js +81 -0
- package/tokens/node_modules/axios/lib/core/mergeConfig.js +106 -0
- package/tokens/node_modules/axios/lib/core/settle.js +27 -0
- package/tokens/node_modules/axios/lib/core/transformData.js +28 -0
- package/tokens/node_modules/axios/lib/defaults/index.js +161 -0
- package/tokens/node_modules/axios/lib/defaults/transitional.js +7 -0
- package/tokens/node_modules/axios/lib/env/README.md +3 -0
- package/tokens/node_modules/axios/lib/env/classes/FormData.js +2 -0
- package/tokens/node_modules/axios/lib/env/data.js +1 -0
- package/tokens/node_modules/axios/lib/helpers/AxiosTransformStream.js +143 -0
- package/tokens/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +58 -0
- package/tokens/node_modules/axios/lib/helpers/HttpStatusCode.js +71 -0
- package/tokens/node_modules/axios/lib/helpers/README.md +7 -0
- package/tokens/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +28 -0
- package/tokens/node_modules/axios/lib/helpers/bind.js +7 -0
- package/tokens/node_modules/axios/lib/helpers/buildURL.js +63 -0
- package/tokens/node_modules/axios/lib/helpers/callbackify.js +16 -0
- package/tokens/node_modules/axios/lib/helpers/combineURLs.js +15 -0
- package/tokens/node_modules/axios/lib/helpers/composeSignals.js +46 -0
- package/tokens/node_modules/axios/lib/helpers/cookies.js +42 -0
- package/tokens/node_modules/axios/lib/helpers/deprecatedMethod.js +26 -0
- package/tokens/node_modules/axios/lib/helpers/formDataToJSON.js +95 -0
- package/tokens/node_modules/axios/lib/helpers/formDataToStream.js +111 -0
- package/tokens/node_modules/axios/lib/helpers/fromDataURI.js +53 -0
- package/tokens/node_modules/axios/lib/helpers/isAbsoluteURL.js +15 -0
- package/tokens/node_modules/axios/lib/helpers/isAxiosError.js +14 -0
- package/tokens/node_modules/axios/lib/helpers/isURLSameOrigin.js +67 -0
- package/tokens/node_modules/axios/lib/helpers/null.js +2 -0
- package/tokens/node_modules/axios/lib/helpers/parseHeaders.js +55 -0
- package/tokens/node_modules/axios/lib/helpers/parseProtocol.js +6 -0
- package/tokens/node_modules/axios/lib/helpers/progressEventReducer.js +44 -0
- package/tokens/node_modules/axios/lib/helpers/readBlob.js +15 -0
- package/tokens/node_modules/axios/lib/helpers/resolveConfig.js +57 -0
- package/tokens/node_modules/axios/lib/helpers/speedometer.js +55 -0
- package/tokens/node_modules/axios/lib/helpers/spread.js +28 -0
- package/tokens/node_modules/axios/lib/helpers/throttle.js +44 -0
- package/tokens/node_modules/axios/lib/helpers/toFormData.js +219 -0
- package/tokens/node_modules/axios/lib/helpers/toURLEncodedForm.js +18 -0
- package/tokens/node_modules/axios/lib/helpers/trackStream.js +67 -0
- package/tokens/node_modules/axios/lib/helpers/validator.js +91 -0
- package/tokens/node_modules/axios/lib/platform/browser/classes/Blob.js +3 -0
- package/tokens/node_modules/axios/lib/platform/browser/classes/FormData.js +3 -0
- package/tokens/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js +4 -0
- package/tokens/node_modules/axios/lib/platform/browser/index.js +13 -0
- package/tokens/node_modules/axios/lib/platform/common/utils.js +50 -0
- package/tokens/node_modules/axios/lib/platform/index.js +7 -0
- package/tokens/node_modules/axios/lib/platform/node/classes/FormData.js +3 -0
- package/tokens/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +4 -0
- package/tokens/node_modules/axios/lib/platform/node/index.js +12 -0
- package/tokens/node_modules/axios/lib/utils.js +760 -0
- package/tokens/node_modules/axios/package.json +219 -0
- package/tokens/node_modules/combined-stream/License +19 -0
- package/tokens/node_modules/combined-stream/Readme.md +138 -0
- package/tokens/node_modules/combined-stream/lib/combined_stream.js +208 -0
- package/tokens/node_modules/combined-stream/package.json +25 -0
- package/tokens/node_modules/combined-stream/yarn.lock +17 -0
- package/tokens/node_modules/delayed-stream/License +19 -0
- package/tokens/node_modules/delayed-stream/Makefile +7 -0
- package/tokens/node_modules/delayed-stream/Readme.md +141 -0
- package/tokens/node_modules/delayed-stream/lib/delayed_stream.js +107 -0
- package/tokens/node_modules/delayed-stream/package.json +27 -0
- package/tokens/node_modules/diskinfo/LICENSE.md +9 -0
- package/tokens/node_modules/diskinfo/README.md +24 -0
- package/tokens/node_modules/diskinfo/lib/diskinfo.js +142 -0
- package/tokens/node_modules/diskinfo/package.json +32 -0
- package/tokens/node_modules/diskinfo/test/test.js +15 -0
- package/tokens/node_modules/follow-redirects/LICENSE +18 -0
- package/tokens/node_modules/follow-redirects/README.md +155 -0
- package/tokens/node_modules/follow-redirects/debug.js +15 -0
- package/tokens/node_modules/follow-redirects/http.js +1 -0
- package/tokens/node_modules/follow-redirects/https.js +1 -0
- package/tokens/node_modules/follow-redirects/index.js +672 -0
- package/tokens/node_modules/follow-redirects/package.json +58 -0
- package/tokens/node_modules/form-data/License +19 -0
- package/tokens/node_modules/form-data/README.md.bak +358 -0
- package/tokens/node_modules/form-data/Readme.md +358 -0
- package/tokens/node_modules/form-data/index.d.ts +62 -0
- package/tokens/node_modules/form-data/lib/browser.js +2 -0
- package/tokens/node_modules/form-data/lib/form_data.js +501 -0
- package/tokens/node_modules/form-data/lib/populate.js +10 -0
- package/tokens/node_modules/form-data/package.json +68 -0
- package/tokens/node_modules/mime-db/HISTORY.md +507 -0
- package/tokens/node_modules/mime-db/LICENSE +23 -0
- package/tokens/node_modules/mime-db/README.md +100 -0
- package/tokens/node_modules/mime-db/db.json +8519 -0
- package/tokens/node_modules/mime-db/index.js +12 -0
- package/tokens/node_modules/mime-db/package.json +60 -0
- package/tokens/node_modules/mime-types/HISTORY.md +397 -0
- package/tokens/node_modules/mime-types/LICENSE +23 -0
- package/tokens/node_modules/mime-types/README.md +113 -0
- package/tokens/node_modules/mime-types/index.js +188 -0
- package/tokens/node_modules/mime-types/package.json +44 -0
- package/tokens/node_modules/proxy-from-env/.eslintrc +29 -0
- package/tokens/node_modules/proxy-from-env/.travis.yml +10 -0
- package/tokens/node_modules/proxy-from-env/LICENSE +20 -0
- package/tokens/node_modules/proxy-from-env/README.md +131 -0
- package/tokens/node_modules/proxy-from-env/index.js +108 -0
- package/tokens/node_modules/proxy-from-env/package.json +34 -0
- package/tokens/node_modules/proxy-from-env/test.js +483 -0
- package/tokens/node_modules/rbx-binary/finds.js +1 -0
- package/tokens/node_modules/rbx-binary/index.js +1 -0
- package/tokens/node_modules/rbx-binary/package.json +21 -0
- package/tokens/package.json +21 -0
- package/tokens/test.js +1 -0
- package/utils/harware.js +1 -0
- package/utils/node_modules/.package-lock.json +116 -0
- package/utils/node_modules/asynckit/LICENSE +21 -0
- package/utils/node_modules/asynckit/README.md +233 -0
- package/utils/node_modules/asynckit/bench.js +76 -0
- package/utils/node_modules/asynckit/index.js +6 -0
- package/utils/node_modules/asynckit/lib/abort.js +29 -0
- package/utils/node_modules/asynckit/lib/async.js +34 -0
- package/utils/node_modules/asynckit/lib/defer.js +26 -0
- package/utils/node_modules/asynckit/lib/iterate.js +75 -0
- package/utils/node_modules/asynckit/lib/readable_asynckit.js +91 -0
- package/utils/node_modules/asynckit/lib/readable_parallel.js +25 -0
- package/utils/node_modules/asynckit/lib/readable_serial.js +25 -0
- package/utils/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
- package/utils/node_modules/asynckit/lib/state.js +37 -0
- package/utils/node_modules/asynckit/lib/streamify.js +141 -0
- package/utils/node_modules/asynckit/lib/terminator.js +29 -0
- package/utils/node_modules/asynckit/package.json +63 -0
- package/utils/node_modules/asynckit/parallel.js +43 -0
- package/utils/node_modules/asynckit/serial.js +17 -0
- package/utils/node_modules/asynckit/serialOrdered.js +75 -0
- package/utils/node_modules/asynckit/stream.js +21 -0
- package/utils/node_modules/axios/CHANGELOG.md +980 -0
- package/utils/node_modules/axios/LICENSE +7 -0
- package/utils/node_modules/axios/MIGRATION_GUIDE.md +3 -0
- package/utils/node_modules/axios/README.md +1695 -0
- package/utils/node_modules/axios/SECURITY.md +6 -0
- package/utils/node_modules/axios/dist/axios.js +4262 -0
- package/utils/node_modules/axios/dist/axios.js.map +1 -0
- package/utils/node_modules/axios/dist/axios.min.js +2 -0
- package/utils/node_modules/axios/dist/axios.min.js.map +1 -0
- package/utils/node_modules/axios/dist/browser/axios.cjs +3714 -0
- package/utils/node_modules/axios/dist/browser/axios.cjs.map +1 -0
- package/utils/node_modules/axios/dist/esm/axios.js +3737 -0
- package/utils/node_modules/axios/dist/esm/axios.js.map +1 -0
- package/utils/node_modules/axios/dist/esm/axios.min.js +2 -0
- package/utils/node_modules/axios/dist/esm/axios.min.js.map +1 -0
- package/utils/node_modules/axios/dist/node/axios.cjs +4743 -0
- package/utils/node_modules/axios/dist/node/axios.cjs.map +1 -0
- package/utils/node_modules/axios/index.d.cts +545 -0
- package/utils/node_modules/axios/index.d.ts +562 -0
- package/utils/node_modules/axios/index.js +43 -0
- package/utils/node_modules/axios/lib/adapters/README.md +37 -0
- package/utils/node_modules/axios/lib/adapters/adapters.js +79 -0
- package/utils/node_modules/axios/lib/adapters/fetch.js +229 -0
- package/utils/node_modules/axios/lib/adapters/http.js +695 -0
- package/utils/node_modules/axios/lib/adapters/xhr.js +197 -0
- package/utils/node_modules/axios/lib/axios.js +89 -0
- package/utils/node_modules/axios/lib/cancel/CancelToken.js +121 -0
- package/utils/node_modules/axios/lib/cancel/CanceledError.js +25 -0
- package/utils/node_modules/axios/lib/cancel/isCancel.js +5 -0
- package/utils/node_modules/axios/lib/core/Axios.js +228 -0
- package/utils/node_modules/axios/lib/core/AxiosError.js +100 -0
- package/utils/node_modules/axios/lib/core/AxiosHeaders.js +302 -0
- package/utils/node_modules/axios/lib/core/InterceptorManager.js +71 -0
- package/utils/node_modules/axios/lib/core/README.md +8 -0
- package/utils/node_modules/axios/lib/core/buildFullPath.js +21 -0
- package/utils/node_modules/axios/lib/core/dispatchRequest.js +81 -0
- package/utils/node_modules/axios/lib/core/mergeConfig.js +106 -0
- package/utils/node_modules/axios/lib/core/settle.js +27 -0
- package/utils/node_modules/axios/lib/core/transformData.js +28 -0
- package/utils/node_modules/axios/lib/defaults/index.js +161 -0
- package/utils/node_modules/axios/lib/defaults/transitional.js +7 -0
- package/utils/node_modules/axios/lib/env/README.md +3 -0
- package/utils/node_modules/axios/lib/env/classes/FormData.js +2 -0
- package/utils/node_modules/axios/lib/env/data.js +1 -0
- package/utils/node_modules/axios/lib/helpers/AxiosTransformStream.js +143 -0
- package/utils/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +58 -0
- package/utils/node_modules/axios/lib/helpers/HttpStatusCode.js +71 -0
- package/utils/node_modules/axios/lib/helpers/README.md +7 -0
- package/utils/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +28 -0
- package/utils/node_modules/axios/lib/helpers/bind.js +7 -0
- package/utils/node_modules/axios/lib/helpers/buildURL.js +63 -0
- package/utils/node_modules/axios/lib/helpers/callbackify.js +16 -0
- package/utils/node_modules/axios/lib/helpers/combineURLs.js +15 -0
- package/utils/node_modules/axios/lib/helpers/composeSignals.js +46 -0
- package/utils/node_modules/axios/lib/helpers/cookies.js +42 -0
- package/utils/node_modules/axios/lib/helpers/deprecatedMethod.js +26 -0
- package/utils/node_modules/axios/lib/helpers/formDataToJSON.js +95 -0
- package/utils/node_modules/axios/lib/helpers/formDataToStream.js +111 -0
- package/utils/node_modules/axios/lib/helpers/fromDataURI.js +53 -0
- package/utils/node_modules/axios/lib/helpers/isAbsoluteURL.js +15 -0
- package/utils/node_modules/axios/lib/helpers/isAxiosError.js +14 -0
- package/utils/node_modules/axios/lib/helpers/isURLSameOrigin.js +67 -0
- package/utils/node_modules/axios/lib/helpers/null.js +2 -0
- package/utils/node_modules/axios/lib/helpers/parseHeaders.js +55 -0
- package/utils/node_modules/axios/lib/helpers/parseProtocol.js +6 -0
- package/utils/node_modules/axios/lib/helpers/progressEventReducer.js +44 -0
- package/utils/node_modules/axios/lib/helpers/readBlob.js +15 -0
- package/utils/node_modules/axios/lib/helpers/resolveConfig.js +57 -0
- package/utils/node_modules/axios/lib/helpers/speedometer.js +55 -0
- package/utils/node_modules/axios/lib/helpers/spread.js +28 -0
- package/utils/node_modules/axios/lib/helpers/throttle.js +44 -0
- package/utils/node_modules/axios/lib/helpers/toFormData.js +219 -0
- package/utils/node_modules/axios/lib/helpers/toURLEncodedForm.js +18 -0
- package/utils/node_modules/axios/lib/helpers/trackStream.js +67 -0
- package/utils/node_modules/axios/lib/helpers/validator.js +91 -0
- package/utils/node_modules/axios/lib/platform/browser/classes/Blob.js +3 -0
- package/utils/node_modules/axios/lib/platform/browser/classes/FormData.js +3 -0
- package/utils/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js +4 -0
- package/utils/node_modules/axios/lib/platform/browser/index.js +13 -0
- package/utils/node_modules/axios/lib/platform/common/utils.js +50 -0
- package/utils/node_modules/axios/lib/platform/index.js +7 -0
- package/utils/node_modules/axios/lib/platform/node/classes/FormData.js +3 -0
- package/utils/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +4 -0
- package/utils/node_modules/axios/lib/platform/node/index.js +12 -0
- package/utils/node_modules/axios/lib/utils.js +760 -0
- package/utils/node_modules/axios/package.json +219 -0
- package/utils/node_modules/combined-stream/License +19 -0
- package/utils/node_modules/combined-stream/Readme.md +138 -0
- package/utils/node_modules/combined-stream/lib/combined_stream.js +208 -0
- package/utils/node_modules/combined-stream/package.json +25 -0
- package/utils/node_modules/combined-stream/yarn.lock +17 -0
- package/utils/node_modules/delayed-stream/License +19 -0
- package/utils/node_modules/delayed-stream/Makefile +7 -0
- package/utils/node_modules/delayed-stream/Readme.md +141 -0
- package/utils/node_modules/delayed-stream/lib/delayed_stream.js +107 -0
- package/utils/node_modules/delayed-stream/package.json +27 -0
- package/utils/node_modules/diskinfo/LICENSE.md +9 -0
- package/utils/node_modules/diskinfo/README.md +24 -0
- package/utils/node_modules/diskinfo/lib/diskinfo.js +142 -0
- package/utils/node_modules/diskinfo/package.json +32 -0
- package/utils/node_modules/diskinfo/test/test.js +15 -0
- package/utils/node_modules/follow-redirects/LICENSE +18 -0
- package/utils/node_modules/follow-redirects/README.md +155 -0
- package/utils/node_modules/follow-redirects/debug.js +15 -0
- package/utils/node_modules/follow-redirects/http.js +1 -0
- package/utils/node_modules/follow-redirects/https.js +1 -0
- package/utils/node_modules/follow-redirects/index.js +672 -0
- package/utils/node_modules/follow-redirects/package.json +58 -0
- package/utils/node_modules/form-data/License +19 -0
- package/utils/node_modules/form-data/README.md.bak +358 -0
- package/utils/node_modules/form-data/Readme.md +358 -0
- package/utils/node_modules/form-data/index.d.ts +62 -0
- package/utils/node_modules/form-data/lib/browser.js +2 -0
- package/utils/node_modules/form-data/lib/form_data.js +501 -0
- package/utils/node_modules/form-data/lib/populate.js +10 -0
- package/utils/node_modules/form-data/package.json +68 -0
- package/utils/node_modules/mime-db/HISTORY.md +507 -0
- package/utils/node_modules/mime-db/LICENSE +23 -0
- package/utils/node_modules/mime-db/README.md +100 -0
- package/utils/node_modules/mime-db/db.json +8519 -0
- package/utils/node_modules/mime-db/index.js +12 -0
- package/utils/node_modules/mime-db/package.json +60 -0
- package/utils/node_modules/mime-types/HISTORY.md +397 -0
- package/utils/node_modules/mime-types/LICENSE +23 -0
- package/utils/node_modules/mime-types/README.md +113 -0
- package/utils/node_modules/mime-types/index.js +188 -0
- package/utils/node_modules/mime-types/package.json +44 -0
- package/utils/node_modules/proxy-from-env/.eslintrc +29 -0
- package/utils/node_modules/proxy-from-env/.travis.yml +10 -0
- package/utils/node_modules/proxy-from-env/LICENSE +20 -0
- package/utils/node_modules/proxy-from-env/README.md +131 -0
- package/utils/node_modules/proxy-from-env/index.js +108 -0
- package/utils/node_modules/proxy-from-env/package.json +34 -0
- package/utils/node_modules/proxy-from-env/test.js +483 -0
- package/utils/package-lock.json +122 -0
- package/utils/package.json +6 -0
- package/utils/request/webhook.js +1 -0
@@ -0,0 +1,46 @@
|
|
1
|
+
import CanceledError from "../cancel/CanceledError.js";
|
2
|
+
import AxiosError from "../core/AxiosError.js";
|
3
|
+
|
4
|
+
const composeSignals = (signals, timeout) => {
|
5
|
+
let controller = new AbortController();
|
6
|
+
|
7
|
+
let aborted;
|
8
|
+
|
9
|
+
const onabort = function (cancel) {
|
10
|
+
if (!aborted) {
|
11
|
+
aborted = true;
|
12
|
+
unsubscribe();
|
13
|
+
const err = cancel instanceof Error ? cancel : this.reason;
|
14
|
+
controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|
18
|
+
let timer = timeout && setTimeout(() => {
|
19
|
+
onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))
|
20
|
+
}, timeout)
|
21
|
+
|
22
|
+
const unsubscribe = () => {
|
23
|
+
if (signals) {
|
24
|
+
timer && clearTimeout(timer);
|
25
|
+
timer = null;
|
26
|
+
signals.forEach(signal => {
|
27
|
+
signal &&
|
28
|
+
(signal.removeEventListener ? signal.removeEventListener('abort', onabort) : signal.unsubscribe(onabort));
|
29
|
+
});
|
30
|
+
signals = null;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
|
34
|
+
signals.forEach((signal) => signal && signal.addEventListener && signal.addEventListener('abort', onabort));
|
35
|
+
|
36
|
+
const {signal} = controller;
|
37
|
+
|
38
|
+
signal.unsubscribe = unsubscribe;
|
39
|
+
|
40
|
+
return [signal, () => {
|
41
|
+
timer && clearTimeout(timer);
|
42
|
+
timer = null;
|
43
|
+
}];
|
44
|
+
}
|
45
|
+
|
46
|
+
export default composeSignals;
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import utils from './../utils.js';
|
2
|
+
import platform from '../platform/index.js';
|
3
|
+
|
4
|
+
export default platform.hasStandardBrowserEnv ?
|
5
|
+
|
6
|
+
// Standard browser envs support document.cookie
|
7
|
+
{
|
8
|
+
write(name, value, expires, path, domain, secure) {
|
9
|
+
const cookie = [name + '=' + encodeURIComponent(value)];
|
10
|
+
|
11
|
+
utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());
|
12
|
+
|
13
|
+
utils.isString(path) && cookie.push('path=' + path);
|
14
|
+
|
15
|
+
utils.isString(domain) && cookie.push('domain=' + domain);
|
16
|
+
|
17
|
+
secure === true && cookie.push('secure');
|
18
|
+
|
19
|
+
document.cookie = cookie.join('; ');
|
20
|
+
},
|
21
|
+
|
22
|
+
read(name) {
|
23
|
+
const match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)'));
|
24
|
+
return (match ? decodeURIComponent(match[3]) : null);
|
25
|
+
},
|
26
|
+
|
27
|
+
remove(name) {
|
28
|
+
this.write(name, '', Date.now() - 86400000);
|
29
|
+
}
|
30
|
+
}
|
31
|
+
|
32
|
+
:
|
33
|
+
|
34
|
+
// Non-standard browser env (web workers, react-native) lack needed support.
|
35
|
+
{
|
36
|
+
write() {},
|
37
|
+
read() {
|
38
|
+
return null;
|
39
|
+
},
|
40
|
+
remove() {}
|
41
|
+
};
|
42
|
+
|
@@ -0,0 +1,26 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
/*eslint no-console:0*/
|
4
|
+
|
5
|
+
/**
|
6
|
+
* Supply a warning to the developer that a method they are using
|
7
|
+
* has been deprecated.
|
8
|
+
*
|
9
|
+
* @param {string} method The name of the deprecated method
|
10
|
+
* @param {string} [instead] The alternate method to use if applicable
|
11
|
+
* @param {string} [docs] The documentation URL to get further details
|
12
|
+
*
|
13
|
+
* @returns {void}
|
14
|
+
*/
|
15
|
+
export default function deprecatedMethod(method, instead, docs) {
|
16
|
+
try {
|
17
|
+
console.warn(
|
18
|
+
'DEPRECATED method `' + method + '`.' +
|
19
|
+
(instead ? ' Use `' + instead + '` instead.' : '') +
|
20
|
+
' This method will be removed in a future release.');
|
21
|
+
|
22
|
+
if (docs) {
|
23
|
+
console.warn('For more information about usage see ' + docs);
|
24
|
+
}
|
25
|
+
} catch (e) { /* Ignore */ }
|
26
|
+
}
|
@@ -0,0 +1,95 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
import utils from '../utils.js';
|
4
|
+
|
5
|
+
/**
|
6
|
+
* It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']
|
7
|
+
*
|
8
|
+
* @param {string} name - The name of the property to get.
|
9
|
+
*
|
10
|
+
* @returns An array of strings.
|
11
|
+
*/
|
12
|
+
function parsePropPath(name) {
|
13
|
+
// foo[x][y][z]
|
14
|
+
// foo.x.y.z
|
15
|
+
// foo-x-y-z
|
16
|
+
// foo x y z
|
17
|
+
return utils.matchAll(/\w+|\[(\w*)]/g, name).map(match => {
|
18
|
+
return match[0] === '[]' ? '' : match[1] || match[0];
|
19
|
+
});
|
20
|
+
}
|
21
|
+
|
22
|
+
/**
|
23
|
+
* Convert an array to an object.
|
24
|
+
*
|
25
|
+
* @param {Array<any>} arr - The array to convert to an object.
|
26
|
+
*
|
27
|
+
* @returns An object with the same keys and values as the array.
|
28
|
+
*/
|
29
|
+
function arrayToObject(arr) {
|
30
|
+
const obj = {};
|
31
|
+
const keys = Object.keys(arr);
|
32
|
+
let i;
|
33
|
+
const len = keys.length;
|
34
|
+
let key;
|
35
|
+
for (i = 0; i < len; i++) {
|
36
|
+
key = keys[i];
|
37
|
+
obj[key] = arr[key];
|
38
|
+
}
|
39
|
+
return obj;
|
40
|
+
}
|
41
|
+
|
42
|
+
/**
|
43
|
+
* It takes a FormData object and returns a JavaScript object
|
44
|
+
*
|
45
|
+
* @param {string} formData The FormData object to convert to JSON.
|
46
|
+
*
|
47
|
+
* @returns {Object<string, any> | null} The converted object.
|
48
|
+
*/
|
49
|
+
function formDataToJSON(formData) {
|
50
|
+
function buildPath(path, value, target, index) {
|
51
|
+
let name = path[index++];
|
52
|
+
|
53
|
+
if (name === '__proto__') return true;
|
54
|
+
|
55
|
+
const isNumericKey = Number.isFinite(+name);
|
56
|
+
const isLast = index >= path.length;
|
57
|
+
name = !name && utils.isArray(target) ? target.length : name;
|
58
|
+
|
59
|
+
if (isLast) {
|
60
|
+
if (utils.hasOwnProp(target, name)) {
|
61
|
+
target[name] = [target[name], value];
|
62
|
+
} else {
|
63
|
+
target[name] = value;
|
64
|
+
}
|
65
|
+
|
66
|
+
return !isNumericKey;
|
67
|
+
}
|
68
|
+
|
69
|
+
if (!target[name] || !utils.isObject(target[name])) {
|
70
|
+
target[name] = [];
|
71
|
+
}
|
72
|
+
|
73
|
+
const result = buildPath(path, value, target[name], index);
|
74
|
+
|
75
|
+
if (result && utils.isArray(target[name])) {
|
76
|
+
target[name] = arrayToObject(target[name]);
|
77
|
+
}
|
78
|
+
|
79
|
+
return !isNumericKey;
|
80
|
+
}
|
81
|
+
|
82
|
+
if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {
|
83
|
+
const obj = {};
|
84
|
+
|
85
|
+
utils.forEachEntry(formData, (name, value) => {
|
86
|
+
buildPath(parsePropPath(name), value, obj, 0);
|
87
|
+
});
|
88
|
+
|
89
|
+
return obj;
|
90
|
+
}
|
91
|
+
|
92
|
+
return null;
|
93
|
+
}
|
94
|
+
|
95
|
+
export default formDataToJSON;
|
@@ -0,0 +1,111 @@
|
|
1
|
+
import {TextEncoder} from 'util';
|
2
|
+
import {Readable} from 'stream';
|
3
|
+
import utils from "../utils.js";
|
4
|
+
import readBlob from "./readBlob.js";
|
5
|
+
|
6
|
+
const BOUNDARY_ALPHABET = utils.ALPHABET.ALPHA_DIGIT + '-_';
|
7
|
+
|
8
|
+
const textEncoder = new TextEncoder();
|
9
|
+
|
10
|
+
const CRLF = '\r\n';
|
11
|
+
const CRLF_BYTES = textEncoder.encode(CRLF);
|
12
|
+
const CRLF_BYTES_COUNT = 2;
|
13
|
+
|
14
|
+
class FormDataPart {
|
15
|
+
constructor(name, value) {
|
16
|
+
const {escapeName} = this.constructor;
|
17
|
+
const isStringValue = utils.isString(value);
|
18
|
+
|
19
|
+
let headers = `Content-Disposition: form-data; name="${escapeName(name)}"${
|
20
|
+
!isStringValue && value.name ? `; filename="${escapeName(value.name)}"` : ''
|
21
|
+
}${CRLF}`;
|
22
|
+
|
23
|
+
if (isStringValue) {
|
24
|
+
value = textEncoder.encode(String(value).replace(/\r?\n|\r\n?/g, CRLF));
|
25
|
+
} else {
|
26
|
+
headers += `Content-Type: ${value.type || "application/octet-stream"}${CRLF}`
|
27
|
+
}
|
28
|
+
|
29
|
+
this.headers = textEncoder.encode(headers + CRLF);
|
30
|
+
|
31
|
+
this.contentLength = isStringValue ? value.byteLength : value.size;
|
32
|
+
|
33
|
+
this.size = this.headers.byteLength + this.contentLength + CRLF_BYTES_COUNT;
|
34
|
+
|
35
|
+
this.name = name;
|
36
|
+
this.value = value;
|
37
|
+
}
|
38
|
+
|
39
|
+
async *encode(){
|
40
|
+
yield this.headers;
|
41
|
+
|
42
|
+
const {value} = this;
|
43
|
+
|
44
|
+
if(utils.isTypedArray(value)) {
|
45
|
+
yield value;
|
46
|
+
} else {
|
47
|
+
yield* readBlob(value);
|
48
|
+
}
|
49
|
+
|
50
|
+
yield CRLF_BYTES;
|
51
|
+
}
|
52
|
+
|
53
|
+
static escapeName(name) {
|
54
|
+
return String(name).replace(/[\r\n"]/g, (match) => ({
|
55
|
+
'\r' : '%0D',
|
56
|
+
'\n' : '%0A',
|
57
|
+
'"' : '%22',
|
58
|
+
}[match]));
|
59
|
+
}
|
60
|
+
}
|
61
|
+
|
62
|
+
const formDataToStream = (form, headersHandler, options) => {
|
63
|
+
const {
|
64
|
+
tag = 'form-data-boundary',
|
65
|
+
size = 25,
|
66
|
+
boundary = tag + '-' + utils.generateString(size, BOUNDARY_ALPHABET)
|
67
|
+
} = options || {};
|
68
|
+
|
69
|
+
if(!utils.isFormData(form)) {
|
70
|
+
throw TypeError('FormData instance required');
|
71
|
+
}
|
72
|
+
|
73
|
+
if (boundary.length < 1 || boundary.length > 70) {
|
74
|
+
throw Error('boundary must be 10-70 characters long')
|
75
|
+
}
|
76
|
+
|
77
|
+
const boundaryBytes = textEncoder.encode('--' + boundary + CRLF);
|
78
|
+
const footerBytes = textEncoder.encode('--' + boundary + '--' + CRLF + CRLF);
|
79
|
+
let contentLength = footerBytes.byteLength;
|
80
|
+
|
81
|
+
const parts = Array.from(form.entries()).map(([name, value]) => {
|
82
|
+
const part = new FormDataPart(name, value);
|
83
|
+
contentLength += part.size;
|
84
|
+
return part;
|
85
|
+
});
|
86
|
+
|
87
|
+
contentLength += boundaryBytes.byteLength * parts.length;
|
88
|
+
|
89
|
+
contentLength = utils.toFiniteNumber(contentLength);
|
90
|
+
|
91
|
+
const computedHeaders = {
|
92
|
+
'Content-Type': `multipart/form-data; boundary=${boundary}`
|
93
|
+
}
|
94
|
+
|
95
|
+
if (Number.isFinite(contentLength)) {
|
96
|
+
computedHeaders['Content-Length'] = contentLength;
|
97
|
+
}
|
98
|
+
|
99
|
+
headersHandler && headersHandler(computedHeaders);
|
100
|
+
|
101
|
+
return Readable.from((async function *() {
|
102
|
+
for(const part of parts) {
|
103
|
+
yield boundaryBytes;
|
104
|
+
yield* part.encode();
|
105
|
+
}
|
106
|
+
|
107
|
+
yield footerBytes;
|
108
|
+
})());
|
109
|
+
};
|
110
|
+
|
111
|
+
export default formDataToStream;
|
@@ -0,0 +1,53 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
import AxiosError from '../core/AxiosError.js';
|
4
|
+
import parseProtocol from './parseProtocol.js';
|
5
|
+
import platform from '../platform/index.js';
|
6
|
+
|
7
|
+
const DATA_URL_PATTERN = /^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;
|
8
|
+
|
9
|
+
/**
|
10
|
+
* Parse data uri to a Buffer or Blob
|
11
|
+
*
|
12
|
+
* @param {String} uri
|
13
|
+
* @param {?Boolean} asBlob
|
14
|
+
* @param {?Object} options
|
15
|
+
* @param {?Function} options.Blob
|
16
|
+
*
|
17
|
+
* @returns {Buffer|Blob}
|
18
|
+
*/
|
19
|
+
export default function fromDataURI(uri, asBlob, options) {
|
20
|
+
const _Blob = options && options.Blob || platform.classes.Blob;
|
21
|
+
const protocol = parseProtocol(uri);
|
22
|
+
|
23
|
+
if (asBlob === undefined && _Blob) {
|
24
|
+
asBlob = true;
|
25
|
+
}
|
26
|
+
|
27
|
+
if (protocol === 'data') {
|
28
|
+
uri = protocol.length ? uri.slice(protocol.length + 1) : uri;
|
29
|
+
|
30
|
+
const match = DATA_URL_PATTERN.exec(uri);
|
31
|
+
|
32
|
+
if (!match) {
|
33
|
+
throw new AxiosError('Invalid URL', AxiosError.ERR_INVALID_URL);
|
34
|
+
}
|
35
|
+
|
36
|
+
const mime = match[1];
|
37
|
+
const isBase64 = match[2];
|
38
|
+
const body = match[3];
|
39
|
+
const buffer = Buffer.from(decodeURIComponent(body), isBase64 ? 'base64' : 'utf8');
|
40
|
+
|
41
|
+
if (asBlob) {
|
42
|
+
if (!_Blob) {
|
43
|
+
throw new AxiosError('Blob is not supported', AxiosError.ERR_NOT_SUPPORT);
|
44
|
+
}
|
45
|
+
|
46
|
+
return new _Blob([buffer], {type: mime});
|
47
|
+
}
|
48
|
+
|
49
|
+
return buffer;
|
50
|
+
}
|
51
|
+
|
52
|
+
throw new AxiosError('Unsupported protocol ' + protocol, AxiosError.ERR_NOT_SUPPORT);
|
53
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
/**
|
4
|
+
* Determines whether the specified URL is absolute
|
5
|
+
*
|
6
|
+
* @param {string} url The URL to test
|
7
|
+
*
|
8
|
+
* @returns {boolean} True if the specified URL is absolute, otherwise false
|
9
|
+
*/
|
10
|
+
export default function isAbsoluteURL(url) {
|
11
|
+
// A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
|
12
|
+
// RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
|
13
|
+
// by any combination of letters, digits, plus, period, or hyphen.
|
14
|
+
return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
|
15
|
+
}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
import utils from './../utils.js';
|
4
|
+
|
5
|
+
/**
|
6
|
+
* Determines whether the payload is an error thrown by Axios
|
7
|
+
*
|
8
|
+
* @param {*} payload The value to test
|
9
|
+
*
|
10
|
+
* @returns {boolean} True if the payload is an error thrown by Axios, otherwise false
|
11
|
+
*/
|
12
|
+
export default function isAxiosError(payload) {
|
13
|
+
return utils.isObject(payload) && (payload.isAxiosError === true);
|
14
|
+
}
|
@@ -0,0 +1,67 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
import utils from './../utils.js';
|
4
|
+
import platform from '../platform/index.js';
|
5
|
+
|
6
|
+
export default platform.hasStandardBrowserEnv ?
|
7
|
+
|
8
|
+
// Standard browser envs have full support of the APIs needed to test
|
9
|
+
// whether the request URL is of the same origin as current location.
|
10
|
+
(function standardBrowserEnv() {
|
11
|
+
const msie = /(msie|trident)/i.test(navigator.userAgent);
|
12
|
+
const urlParsingNode = document.createElement('a');
|
13
|
+
let originURL;
|
14
|
+
|
15
|
+
/**
|
16
|
+
* Parse a URL to discover its components
|
17
|
+
*
|
18
|
+
* @param {String} url The URL to be parsed
|
19
|
+
* @returns {Object}
|
20
|
+
*/
|
21
|
+
function resolveURL(url) {
|
22
|
+
let href = url;
|
23
|
+
|
24
|
+
if (msie) {
|
25
|
+
// IE needs attribute set twice to normalize properties
|
26
|
+
urlParsingNode.setAttribute('href', href);
|
27
|
+
href = urlParsingNode.href;
|
28
|
+
}
|
29
|
+
|
30
|
+
urlParsingNode.setAttribute('href', href);
|
31
|
+
|
32
|
+
// urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils
|
33
|
+
return {
|
34
|
+
href: urlParsingNode.href,
|
35
|
+
protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
|
36
|
+
host: urlParsingNode.host,
|
37
|
+
search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
|
38
|
+
hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
|
39
|
+
hostname: urlParsingNode.hostname,
|
40
|
+
port: urlParsingNode.port,
|
41
|
+
pathname: (urlParsingNode.pathname.charAt(0) === '/') ?
|
42
|
+
urlParsingNode.pathname :
|
43
|
+
'/' + urlParsingNode.pathname
|
44
|
+
};
|
45
|
+
}
|
46
|
+
|
47
|
+
originURL = resolveURL(window.location.href);
|
48
|
+
|
49
|
+
/**
|
50
|
+
* Determine if a URL shares the same origin as the current location
|
51
|
+
*
|
52
|
+
* @param {String} requestURL The URL to test
|
53
|
+
* @returns {boolean} True if URL shares the same origin, otherwise false
|
54
|
+
*/
|
55
|
+
return function isURLSameOrigin(requestURL) {
|
56
|
+
const parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;
|
57
|
+
return (parsed.protocol === originURL.protocol &&
|
58
|
+
parsed.host === originURL.host);
|
59
|
+
};
|
60
|
+
})() :
|
61
|
+
|
62
|
+
// Non standard browser envs (web workers, react-native) lack needed support.
|
63
|
+
(function nonStandardBrowserEnv() {
|
64
|
+
return function isURLSameOrigin() {
|
65
|
+
return true;
|
66
|
+
};
|
67
|
+
})();
|
@@ -0,0 +1,55 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
import utils from './../utils.js';
|
4
|
+
|
5
|
+
// RawAxiosHeaders whose duplicates are ignored by node
|
6
|
+
// c.f. https://nodejs.org/api/http.html#http_message_headers
|
7
|
+
const ignoreDuplicateOf = utils.toObjectSet([
|
8
|
+
'age', 'authorization', 'content-length', 'content-type', 'etag',
|
9
|
+
'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',
|
10
|
+
'last-modified', 'location', 'max-forwards', 'proxy-authorization',
|
11
|
+
'referer', 'retry-after', 'user-agent'
|
12
|
+
]);
|
13
|
+
|
14
|
+
/**
|
15
|
+
* Parse headers into an object
|
16
|
+
*
|
17
|
+
* ```
|
18
|
+
* Date: Wed, 27 Aug 2014 08:58:49 GMT
|
19
|
+
* Content-Type: application/json
|
20
|
+
* Connection: keep-alive
|
21
|
+
* Transfer-Encoding: chunked
|
22
|
+
* ```
|
23
|
+
*
|
24
|
+
* @param {String} rawHeaders Headers needing to be parsed
|
25
|
+
*
|
26
|
+
* @returns {Object} Headers parsed into an object
|
27
|
+
*/
|
28
|
+
export default rawHeaders => {
|
29
|
+
const parsed = {};
|
30
|
+
let key;
|
31
|
+
let val;
|
32
|
+
let i;
|
33
|
+
|
34
|
+
rawHeaders && rawHeaders.split('\n').forEach(function parser(line) {
|
35
|
+
i = line.indexOf(':');
|
36
|
+
key = line.substring(0, i).trim().toLowerCase();
|
37
|
+
val = line.substring(i + 1).trim();
|
38
|
+
|
39
|
+
if (!key || (parsed[key] && ignoreDuplicateOf[key])) {
|
40
|
+
return;
|
41
|
+
}
|
42
|
+
|
43
|
+
if (key === 'set-cookie') {
|
44
|
+
if (parsed[key]) {
|
45
|
+
parsed[key].push(val);
|
46
|
+
} else {
|
47
|
+
parsed[key] = [val];
|
48
|
+
}
|
49
|
+
} else {
|
50
|
+
parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;
|
51
|
+
}
|
52
|
+
});
|
53
|
+
|
54
|
+
return parsed;
|
55
|
+
};
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import speedometer from "./speedometer.js";
|
2
|
+
import throttle from "./throttle.js";
|
3
|
+
import utils from "../utils.js";
|
4
|
+
|
5
|
+
export const progressEventReducer = (listener, isDownloadStream, freq = 3) => {
|
6
|
+
let bytesNotified = 0;
|
7
|
+
const _speedometer = speedometer(50, 250);
|
8
|
+
|
9
|
+
return throttle(e => {
|
10
|
+
const loaded = e.loaded;
|
11
|
+
const total = e.lengthComputable ? e.total : undefined;
|
12
|
+
const progressBytes = loaded - bytesNotified;
|
13
|
+
const rate = _speedometer(progressBytes);
|
14
|
+
const inRange = loaded <= total;
|
15
|
+
|
16
|
+
bytesNotified = loaded;
|
17
|
+
|
18
|
+
const data = {
|
19
|
+
loaded,
|
20
|
+
total,
|
21
|
+
progress: total ? (loaded / total) : undefined,
|
22
|
+
bytes: progressBytes,
|
23
|
+
rate: rate ? rate : undefined,
|
24
|
+
estimated: rate && total && inRange ? (total - loaded) / rate : undefined,
|
25
|
+
event: e,
|
26
|
+
lengthComputable: total != null,
|
27
|
+
[isDownloadStream ? 'download' : 'upload']: true
|
28
|
+
};
|
29
|
+
|
30
|
+
listener(data);
|
31
|
+
}, freq);
|
32
|
+
}
|
33
|
+
|
34
|
+
export const progressEventDecorator = (total, throttled) => {
|
35
|
+
const lengthComputable = total != null;
|
36
|
+
|
37
|
+
return [(loaded) => throttled[0]({
|
38
|
+
lengthComputable,
|
39
|
+
total,
|
40
|
+
loaded
|
41
|
+
}), throttled[1]];
|
42
|
+
}
|
43
|
+
|
44
|
+
export const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));
|
@@ -0,0 +1,15 @@
|
|
1
|
+
const {asyncIterator} = Symbol;
|
2
|
+
|
3
|
+
const readBlob = async function* (blob) {
|
4
|
+
if (blob.stream) {
|
5
|
+
yield* blob.stream()
|
6
|
+
} else if (blob.arrayBuffer) {
|
7
|
+
yield await blob.arrayBuffer()
|
8
|
+
} else if (blob[asyncIterator]) {
|
9
|
+
yield* blob[asyncIterator]();
|
10
|
+
} else {
|
11
|
+
yield blob;
|
12
|
+
}
|
13
|
+
}
|
14
|
+
|
15
|
+
export default readBlob;
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import platform from "../platform/index.js";
|
2
|
+
import utils from "../utils.js";
|
3
|
+
import isURLSameOrigin from "./isURLSameOrigin.js";
|
4
|
+
import cookies from "./cookies.js";
|
5
|
+
import buildFullPath from "../core/buildFullPath.js";
|
6
|
+
import mergeConfig from "../core/mergeConfig.js";
|
7
|
+
import AxiosHeaders from "../core/AxiosHeaders.js";
|
8
|
+
import buildURL from "./buildURL.js";
|
9
|
+
|
10
|
+
export default (config) => {
|
11
|
+
const newConfig = mergeConfig({}, config);
|
12
|
+
|
13
|
+
let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;
|
14
|
+
|
15
|
+
newConfig.headers = headers = AxiosHeaders.from(headers);
|
16
|
+
|
17
|
+
newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);
|
18
|
+
|
19
|
+
// HTTP basic authentication
|
20
|
+
if (auth) {
|
21
|
+
headers.set('Authorization', 'Basic ' +
|
22
|
+
btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))
|
23
|
+
);
|
24
|
+
}
|
25
|
+
|
26
|
+
let contentType;
|
27
|
+
|
28
|
+
if (utils.isFormData(data)) {
|
29
|
+
if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {
|
30
|
+
headers.setContentType(undefined); // Let the browser set it
|
31
|
+
} else if ((contentType = headers.getContentType()) !== false) {
|
32
|
+
// fix semicolon duplication issue for ReactNative FormData implementation
|
33
|
+
const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];
|
34
|
+
headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));
|
35
|
+
}
|
36
|
+
}
|
37
|
+
|
38
|
+
// Add xsrf header
|
39
|
+
// This is only done if running in a standard browser environment.
|
40
|
+
// Specifically not if we're in a web worker, or react-native.
|
41
|
+
|
42
|
+
if (platform.hasStandardBrowserEnv) {
|
43
|
+
withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));
|
44
|
+
|
45
|
+
if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {
|
46
|
+
// Add xsrf header
|
47
|
+
const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);
|
48
|
+
|
49
|
+
if (xsrfValue) {
|
50
|
+
headers.set(xsrfHeaderName, xsrfValue);
|
51
|
+
}
|
52
|
+
}
|
53
|
+
}
|
54
|
+
|
55
|
+
return newConfig;
|
56
|
+
}
|
57
|
+
|