{"_id":"axios-ex","_rev":"25-82f165fb0007f8967efcf9b0d2a6c9d2","name":"axios-ex","dist-tags":{"alpha":"1.0.0","latest":"2.6.0","beta":"2.5.0-beta.1"},"versions":{"1.0.0":{"name":"axios-ex","version":"1.0.0","description":"axios扩展","main":"lib/index.js","module":"lib/index.esm.js","browser":"lib/index.umd.js","directories":{"lib":"lib","src":"src"},"scripts":{"build":"rm -rf ./lib && rollup -c","dev":"rollup -c -w","test":"node test/test.js","pretest":"npm run build","docs":"jsdoc2md src/**/*.js > API.md","pub":"git add . && git commit -m $npm_package_version && git pull && git push"},"dependencies":{"core-js":"^3.8.2"},"devDependencies":{"@babel/cli":"^7.12.10","@babel/core":"^7.12.10","@babel/plugin-transform-runtime":"^7.12.10","@babel/preset-env":"^7.12.11","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^17.0.0","@rollup/plugin-node-resolve":"^11.1.0","@saqqdy/prettier-config":"^1.0.3","babel-loader":"^8.2.2","eslint-config-sets":"^1.0.6","jsdoc-to-markdown":"^6.0.1","rollup":"^2.36.2","rollup-plugin-terser":"^7.0.2"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"ISC","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","_id":"axios-ex@1.0.0","_nodeVersion":"12.18.4","_npmVersion":"6.14.11","dist":{"integrity":"sha512-gPuFwXau5Rp6EF5sJ176CCB/mcFtXoD+B0bA5S6spFPF2Tu2aAT3CHvYT1Z1y5mbgi69xE9fJSfaquu3jSMFYw==","shasum":"d5a2d3261caf0ffa03d99bb4e5781aa021e497f2","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-1.0.0.tgz","fileCount":4,"unpackedSize":3472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgC8MBCRA9TVsSAnZWagAAkGkP/jmnTkkYfw7UcjdtA6Mc\nSA+OG/WBHbL7wW04oGnhToStnpOb1C6L3Nlbqv3Q1YokpqYEkvgoT/xBHqsC\nDFfNsaBs61o+s17/mNxnwlIoIiFAudadPLpZauqr27+6xUKRRsE7aImm2S+y\nrARuDmdBYOAMQYaz1bR/UjhDbynRpib0fWnm40gP9+XmCN9wU94xVpQHQgKN\n3jYY7JSEjF+fHt/6Z0Ea+jz4ESmLWDA7ZhS1HPxmu0Tz3mGKqvOApZ1IGD1d\n7v5BCEFzb66ugbL9Ca9/dC44ogDTHMI2e09tz2RFgm4Pyr8bGBNsjkDfVGLJ\n9YPcabIUz5G5NSgH5bHz7C0M8w7DLgRy3A06krIopNzGyHqP3ndh3QEtLxJR\ntP5tqYG5JuNxHF8aGJk5120yc2AcxsLXl+thJMwBdbwqkAhcaaBtfDL//jwj\nn5IlXZrWyle4tLJBPswmhdLqo4qPvv9rVOwfTuPMWAi6lEz4L7f0JPDKBPdS\nqb6DU7zATY4PZYVk5sqZhn6jne9XsdbOzxscm/qiatavE39ifAx6p0BiOaJ2\nz/jQrjfN9nPSwpbFS5UwNYhzcWoEvr6UneVdGLkUhgsfNukhvCktA9wr9RDD\nJ79UYLUAUyE20siQrrelwsV6SHGiAJ8H9pd+DWAns2mj796ScIEPB110Dofz\neYHl\r\n=e/i+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbMvD8LEc7UVsH8K46pFEDrJ5ep8106Cr/hYc+f252AwIgaWuzsHsFGZIq9virDY+Et5RDFVcwyCJHXYErLNMnhVQ="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_1.0.0_1611383553200_0.10686003429157331"},"_hasShrinkwrap":false},"2.0.0":{"name":"axios-ex","version":"2.0.0","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.21.4","core-decorators":"^0.20.0","core-js":"^3.17.2","is-retry-allowed":"^3.0.0","js-cool":"^2.1.2"},"devDependencies":{"@babel/cli":"^7.15.4","@babel/core":"^7.15.5","@babel/eslint-parser":"^7.15.4","@babel/plugin-proposal-class-properties":"^7.14.5","@babel/plugin-proposal-decorators":"^7.15.4","@babel/plugin-transform-runtime":"^7.15.0","@babel/preset-env":"^7.15.4","@babel/preset-typescript":"^7.15.0","@microsoft/api-extractor":"^7.18.7","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^20.0.0","@rollup/plugin-node-resolve":"^13.0.4","@saqqdy/prettier-config":"^1.0.3","@typescript-eslint/eslint-plugin":"^4.31.0","@typescript-eslint/parser":"^4.31.0","babel-loader":"^8.2.2","esbuild":"^0.12.25","eslint":"^7.19.0","eslint-config-sets":"^1.5.1","npm-run-all":"^4.1.5","prettier":"^2.2.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.30.0","rollup-plugin-visualizer":"^5.5.2","typedoc":"^0.21.9","typedoc-plugin-markdown":"^3.10.4","typescript":"^4.4.2","webpack":"^5.52.0","webpack-cli":"^4.8.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","gitHead":"0292f500c7bb4a96d0f6cf32cc4c332b8942c29e","_id":"axios-ex@2.0.0","_nodeVersion":"14.17.5","_npmVersion":"7.21.1","dist":{"integrity":"sha512-cgokCmY+VWOuMp/C0mx3c9Ztf36aNyVfhgwGnQqnNnxzoZutnLE6tUIJm9G//+qr1f9DutQfkx+wURBweIUzlw==","shasum":"87750f79e5a42f45e99241b8069a8a8c865182cf","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.0.0.tgz","fileCount":8,"unpackedSize":101446,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOz3fCRA9TVsSAnZWagAAvXsP/AgVjlRx4i6S2uqNblrO\n2jkTNSWf0afmup9p/Eek0dtEjZpaEdusl2HMGezkIjYaOtvVZenTPFgIptMy\nQygLtjqdX0WVahXjj8EaODbgva95J8GxfJZg81S/hljW0G+YY5tTHoXOJC91\nGUE7BP6wavTajKMcACyXlXYYJw5j1FuCFVRIQm9M8YvBgiafi4cfG8EuHyEJ\nmZIYQkuwLaWouJcAReRXz8sKN/EieZTxFgkP2oYmrs0BTrUYe/iZA5xBzVfN\n5P4FBfUwuFsdrvub2xS7o+xFiju/RG3MWRjCp0iOQaIIWBW4ReVg5VghqSzx\nUzreVt3SD/gAqZcIs8bAxusWyTh0E8aj92zOdVEvy3GLg4zpWbKOAzG//K0Y\nS3f0jbVn9viAuahR7JsCXsmjiZhHW9BsA+WaYpCduuL1/UATL1yDPQ0QsvAd\nB6pZLG+T472aFZUgQOV7iaGSCF8FY/JdLECwYtMoCrkFmHdqrB2981CVhxKo\nIiarXjaK3kIVKimNiUNZeb6cyarHaTawB64LymUdBADxA1OWAfZOf+hkLMAm\ncAXNO8GcsFDxScMWlCyhBJ9M9CaTaY+b3jYxMRR+HXx9WGavQVIKM53yrCZk\nJmcdcjHQpVEVA0iv7N4tEcwsTmrksHs0OTJkbtjIRfAm8KxisdfXtyqiUsng\nc11T\r\n=SbFK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAXIkfuaExLuOHo4OYKyvws/NqQWWz9sYASrPVVtINbwIgYf/OOmqkiI7CO9zs5i385AYYx2WN5cGENwSx1QWc/+o="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.0.0_1631272414946_0.9943280801717442"},"_hasShrinkwrap":false},"2.1.0":{"name":"axios-ex","version":"2.1.0","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.21.4","core-decorators":"^0.20.0","core-js":"^3.17.2","is-retry-allowed":"^3.0.0","js-cool":"^2.1.2"},"devDependencies":{"@babel/cli":"^7.15.4","@babel/core":"^7.15.5","@babel/eslint-parser":"^7.15.4","@babel/plugin-proposal-class-properties":"^7.14.5","@babel/plugin-proposal-decorators":"^7.15.4","@babel/plugin-transform-runtime":"^7.15.0","@babel/preset-env":"^7.15.4","@babel/preset-typescript":"^7.15.0","@microsoft/api-extractor":"^7.18.7","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^20.0.0","@rollup/plugin-node-resolve":"^13.0.4","@saqqdy/prettier-config":"^1.0.3","@typescript-eslint/eslint-plugin":"^4.31.0","@typescript-eslint/parser":"^4.31.0","babel-loader":"^8.2.2","esbuild":"^0.12.25","eslint":"^7.19.0","eslint-config-sets":"^1.5.1","npm-run-all":"^4.1.5","prettier":"^2.2.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.30.0","rollup-plugin-visualizer":"^5.5.2","typedoc":"^0.21.9","typedoc-plugin-markdown":"^3.10.4","typescript":"^4.4.2","webpack":"^5.52.0","webpack-cli":"^4.8.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","gitHead":"816f5aefc15c90a0c06a08be150eaa458b63f836","_id":"axios-ex@2.1.0","_nodeVersion":"14.17.5","_npmVersion":"7.21.1","dist":{"integrity":"sha512-UE+QqjOpghZMDSYEUY4FGsGRZ8Zb8FoOdz2ik7guZBEACbEgVhlOSxWXHnsWOYFeVKo+rw+4sJWFPGOEGMKuTA==","shasum":"af27e1716e189c960877db354796cdfb7f2944b1","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.1.0.tgz","fileCount":8,"unpackedSize":103264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPGmfCRA9TVsSAnZWagAAFPwP+gIuzuT2aTpuFzboUHSc\nQsN32uNRm7wt/I2oq3Pqn8v2tsifhHawDOyaLkPU5aPwsfm3WGL85zqmVL2D\nY0eHRH2B9E6+GDm5buwH9iAYnz6ioxxjm2k/fh1c5x+wX14ykvn/aFnW+hlV\nQSDPhRLwDukwqpKoyaKOylGyNSk/VNK1YO7xhZxQjBZkKUxoU2S/Qni7ntD1\nC5DMLJ5D7595y+REZNV0HTIorKp50cfCeriumFsDtLAZn31zUwGFV65f5lKE\n/XDHluz1IhUsXS1JhAI+vWUZuxwZnXibINajKN6klWa8zc7SxwwVOIjF/Mwb\nbX6mv/pz8eeZED/oJ1Vo4xZKtjFetZ24N1Y8wAjPjKWNz+ffaoOxhJg+oSvo\nkkw3TuhqruDChh9JZufan6CWPZtAzhzNRezmLGOhcbNm6l/T/o4QM6gdReoz\nJfAdtYx3NNnLWY2rQ0TyY19wbi1LqtB+MOooMfmAs1Ur0Fe5tL65mIRyj7qa\nfh3LPvYa8JHyLJ35P2uAIiH59at9lONKw0RM8dByog4YfF1KW2QHQRs3/WKJ\ntizPf1iUWhNkxFTbv7h1+9uS8mqdR3SYE/d+Eq6JQMxe0mlXQVxsY8mQCqdd\nA06MtqK96c0Gmer/QcLcGg3qafbTXqju3QSEOWGWKURDbrB32UDfFKkz1jeu\nfGHt\r\n=Az9a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHawUf5SoRhix2e62Zs4SFN63LGLtFbVF04kvE6dTTxLAiBprShBRr1N38NP/hEamjymZgqhu2F8PzEsA9RyA3okpA=="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.1.0_1631349151176_0.9760245908097893"},"_hasShrinkwrap":false},"2.1.1":{"name":"axios-ex","version":"2.1.1","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.21.4","core-decorators":"^0.20.0","core-js":"^3.17.2","is-retry-allowed":"^3.0.0","js-cool":"^2.1.2"},"devDependencies":{"@babel/cli":"^7.15.4","@babel/core":"^7.15.5","@babel/eslint-parser":"^7.15.4","@babel/plugin-proposal-class-properties":"^7.14.5","@babel/plugin-proposal-decorators":"^7.15.4","@babel/plugin-transform-runtime":"^7.15.0","@babel/preset-env":"^7.15.4","@babel/preset-typescript":"^7.15.0","@microsoft/api-extractor":"^7.18.7","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^20.0.0","@rollup/plugin-node-resolve":"^13.0.4","@saqqdy/prettier-config":"^1.0.3","@typescript-eslint/eslint-plugin":"^4.31.0","@typescript-eslint/parser":"^4.31.0","babel-loader":"^8.2.2","esbuild":"^0.12.25","eslint":"^7.19.0","eslint-config-sets":"^1.5.1","npm-run-all":"^4.1.5","prettier":"^2.2.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.30.0","rollup-plugin-visualizer":"^5.5.2","typedoc":"^0.21.9","typedoc-plugin-markdown":"^3.10.4","typescript":"^4.4.2","webpack":"^5.52.0","webpack-cli":"^4.8.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","gitHead":"5895abefadc3dfd6d83fc06fdbbb9060393debc1","_id":"axios-ex@2.1.1","_nodeVersion":"14.17.5","_npmVersion":"7.21.1","dist":{"integrity":"sha512-H/XOs4OOyx8gpeTCU9Q75hMpSkwVV1SQjVZwLzqV2TRcQTUCS/o8QhSpDVetdsagnVbEC5N3cKq4BkFFiygBZA==","shasum":"e8199f2d15f9861a789795244a5b69f79d2b8129","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.1.1.tgz","fileCount":8,"unpackedSize":103264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPHm+CRA9TVsSAnZWagAAXUkQAIMmCIoHn/YGPv67ct6/\n5KmK+sVRuAdA6T+ykfVvuRCNsPF94nx+GngcmQy3W/qeIDYTLjlIdt3R0NgO\nTFHkN66MfA6Uny6KI01Wq+6+s3p6ruPaVjJ/RsOU3CbHBTrZwb6tVREbKyf0\nJqQtSTO/oEJDyEUk2f7tCRC47ut40P+Ag+jorBSL+CAow23U3dnMN8F0yiR8\nwIVKmwta+NWxgVh1iu7hw5kT9Rcneex/Tcj46scMxC4qpMd3tr5OLOd0fI71\nMpgFyxrXNZJl6PhlpnnFwSWEMODbyc1R4LHVDzkaOQBJTfbzdWt/94u4StsV\nsCPE7Dd+6+rLDvlvSJ5R3SfRwGFC7eqHhAtD65CmaCzc/58FaX07ahXdMBfU\nrXx6F3i/2kXF6yUZ0FdfIJMKVwTn0hMsYuso/03fXzoOv7PKnn3pdTJ03HWH\nXl4p2Ueatb0jpsjt+HMU79PpnHwBuYfJc1bJF62GAFc39pUS3cdgyfz+7Xy3\nawID2dhYtCBTiILmQV89LvkYMAPh88wsFXW/YKd2oQeRXActYhRjpzXDUsUp\nqGAAOpaagGJX8agBy0ccN+D3lS5V1wraTVxkRc90GzJY9z+ckksQ/hdp4wG0\nAUKiSESfiF+P2ogY9rk4UiahWa/NvGADFGTx9Xzi0lYpsOU/CCTqW1UA7NWl\ncJbq\r\n=x3Lv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFnAX5DDXz92YjrEsJ6ApnjcaRb0/ynQySFq057PukpKAiBBS1XWsGcz/hGSCmreJwWLDGQLdK9MmSA54LY0byMqAQ=="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.1.1_1631353278826_0.5793793581429416"},"_hasShrinkwrap":false},"2.2.0":{"name":"axios-ex","version":"2.2.0","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.21.4","core-decorators":"^0.20.0","core-js":"^3.17.2","is-retry-allowed":"^3.0.0","js-cool":"^2.1.2"},"devDependencies":{"@babel/cli":"^7.15.4","@babel/core":"^7.15.5","@babel/eslint-parser":"^7.15.4","@babel/plugin-proposal-class-properties":"^7.14.5","@babel/plugin-proposal-decorators":"^7.15.4","@babel/plugin-transform-runtime":"^7.15.0","@babel/preset-env":"^7.15.4","@babel/preset-typescript":"^7.15.0","@microsoft/api-extractor":"^7.18.7","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^20.0.0","@rollup/plugin-node-resolve":"^13.0.4","@saqqdy/prettier-config":"^1.0.3","@typescript-eslint/eslint-plugin":"^4.31.0","@typescript-eslint/parser":"^4.31.0","babel-loader":"^8.2.2","esbuild":"^0.12.25","eslint":"^7.19.0","eslint-config-sets":"^1.5.1","npm-run-all":"^4.1.5","prettier":"^2.2.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.30.0","rollup-plugin-visualizer":"^5.5.2","typedoc":"^0.21.9","typedoc-plugin-markdown":"^3.10.4","typescript":"^4.4.2","webpack":"^5.52.0","webpack-cli":"^4.8.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","gitHead":"f7b7c02f046d3eaadfc18035fcc400100bc414b4","_id":"axios-ex@2.2.0","_nodeVersion":"14.17.3","_npmVersion":"7.20.6","dist":{"integrity":"sha512-Is7TehTUyj04eh4ElxGkL/CwhOh66jNz2waMfUlkaAv81QOFbRCGGyu26V7td3LENaXVmkNt9sGBO6mhJso0rw==","shasum":"6856d652fa6a8aea77bd6815ab310a3d64d3016f","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.2.0.tgz","fileCount":8,"unpackedSize":100654,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPOpyCRA9TVsSAnZWagAAlcMP/3uY3JqZ615KaDtQjsOV\nMowfkAVrJP71yK0IUFOJRCKTeGfVOz7EVieh2NUY+D+C1Ec52MJqWn4g+8UD\n4sA4pPlvvqNinsmYrMtXJhLcO588DO0/R4faO7WCWhgISGVjhpsGn3/MIR/Q\nX195asBZH3pp8p4iOLIMnLeoUPsbxBiw1TFM2EaNlY9L7vTDSKfCgncDtN2k\nVcOTHjhfMBjx/PcFB7L5be+1IZbJWuW/tHYQMyhLwuAZQxyiA09RIhOAJeVp\ndzavbsypkIGZJ8ha/bLV8QrQ5ARIsUljyG/KBE0Jt27MTu3vI014nRTE66kR\nHkpvlr7osK11hFVCOMYxRcPdXqLU2Kbuv/XiSchGEEhlfCsd9TKK3JQV1IE7\nDw8aeneSQhBd5YaeH1jdc8MhfvlY/MqlQ7hFQQ/D9FvkywtsWmXp99dtS9uB\nEfwAgrYP21QPJ6Jg1uWg0C9VRFe+EwOz62ZNaTL9Uxbf6K2cJ7TF3jivKiup\nSdUE4lpgSHpw6Hu+fDylUrek8sAYBl0T0RRD/DLcr8ovrfLcF6eGp1BGYt2W\n7E3b/yblC6tyq16J4uBijsu0UHXNa76/TkrpW2BlPxj8y4su2yJvxZhIDRxX\nNFC/io2+wuZWIGa9/xJvDz5f+ySUkgtVpgxqHquCYe/soF+NyKLQKJLr7/ca\nDkV1\r\n=Lgqz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDN+xjIZ7Uj5cCIwGQfsPZG2Jc+sIoJi2X7ZrBBxxYdlwIgD2i3nTRt3KcadAX5F1VRZizw33NbvQc4fCHNqKNywYI="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.2.0_1631382130392_0.1910614258061485"},"_hasShrinkwrap":false},"2.2.1":{"name":"axios-ex","version":"2.2.1","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.21.4","core-decorators":"^0.20.0","core-js":"^3.17.2","is-retry-allowed":"^3.0.0","js-cool":"^2.1.2"},"devDependencies":{"@babel/cli":"^7.15.4","@babel/core":"^7.15.5","@babel/eslint-parser":"^7.15.4","@babel/plugin-proposal-class-properties":"^7.14.5","@babel/plugin-proposal-decorators":"^7.15.4","@babel/plugin-transform-runtime":"^7.15.0","@babel/preset-env":"^7.15.4","@babel/preset-typescript":"^7.15.0","@microsoft/api-extractor":"^7.18.7","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^20.0.0","@rollup/plugin-node-resolve":"^13.0.4","@saqqdy/prettier-config":"^1.0.3","@typescript-eslint/eslint-plugin":"^4.31.0","@typescript-eslint/parser":"^4.31.0","babel-loader":"^8.2.2","esbuild":"^0.12.25","eslint":"^7.19.0","eslint-config-sets":"^1.5.1","npm-run-all":"^4.1.5","prettier":"^2.2.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.30.0","rollup-plugin-visualizer":"^5.5.2","typedoc":"^0.21.9","typedoc-plugin-markdown":"^3.10.4","typescript":"^4.4.2","webpack":"^5.52.0","webpack-cli":"^4.8.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","types":"./lib/index.d.ts","gitHead":"35a3a6f80693e12305f0ca11652554c89b396d0e","_id":"axios-ex@2.2.1","_nodeVersion":"14.17.5","_npmVersion":"7.23.0","dist":{"integrity":"sha512-Gk+Sh3N61jHZi2LZsOR4aC+zS50GZATfK++29dhRITXAE2LrJBl6DXXE9UIoDStq1dUaW54TnHAoXcxsbtSSvA==","shasum":"f6287577195ab0ca2f288c007bec6f688aa6802a","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.2.1.tgz","fileCount":8,"unpackedSize":102959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQDQQCRA9TVsSAnZWagAAFpgP/3Cbata0Q0w9Sl/TKrGX\ndjYfXpkYnL8cF42s9E3U7BzsXvWPqeRN7SHsA4ZLKnMyC0fIn9D41ernMzn8\n/iCqkBngxDl6ZQIJ07ZpRfVLGDwZ3BMLuotImuexkSn75l3baq/7S/hfZJe9\ndBIws11+1v7RFCTSIxysXbo9wDvTzhozYXsDkxTCBil5Re/TeVn+RtcQjPBk\n3A+b208/3tKijqkJ6IeAacTuc7ZqYBH9nzpJddKZOOPfhjH3Ir0OXUKql98C\nMRbequr1fLaQ5SIDFoC+LDZ7VYd62T9QpgGqve23x25zOEN5vXLRNtHWWL4W\n9qx80ySwkyNFob5WITK/rVU3OcBsVNAYgXqNOJ4DEBHLu77EyYTjfgMfXIIZ\nL1VsuOSBrsG92iWvrh+WrQZKfgnjw+JmvFPvMNbasoIUXcBtMVrEI+h6jTwd\nKBXMaRIF3quFQffVnIQqGHPHacK494UtJsvNnBP/fRkG4tUHQaET99pjPRWr\n8H1bwR3i+018yEf3PyBIUOCZBvZn80OiDGBI4cZYjmojcrhUjZYKCu3/Jcf1\nnOCnPCYcTskaWOYzFT9NZseV4culFZZudXnCOYS2/ZCdsQGmudbFY5tICEF8\n6ZsVvJAxSoq++DdEXbyDBQPUmn52GX2lxpNX0zw6odQZp+aRvcmUznBjyaRR\nWGUQ\r\n=c+ib\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICVpknLLnW10Wwl61GCrsts1N2X1qjjio+dI+qHz/416AiEA/dunF99A76Q5rqk2CVRulf4RLJI0+ObJkS5yb4rd4Gk="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.2.1_1631597584555_0.12708497994929768"},"_hasShrinkwrap":false},"2.2.2":{"name":"axios-ex","version":"2.2.2","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.21.4","core-decorators":"^0.20.0","core-js":"^3.18.0","is-retry-allowed":"^3.0.0","js-cool":"^2.1.2"},"devDependencies":{"@babel/cli":"^7.15.7","@babel/core":"^7.15.5","@babel/eslint-parser":"^7.15.7","@babel/plugin-proposal-class-properties":"^7.14.5","@babel/plugin-proposal-decorators":"^7.15.4","@babel/plugin-transform-runtime":"^7.15.0","@babel/preset-env":"^7.15.4","@babel/preset-typescript":"^7.15.0","@microsoft/api-extractor":"^7.18.9","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^20.0.0","@rollup/plugin-node-resolve":"^13.0.4","@saqqdy/prettier-config":"^1.0.3","@typescript-eslint/eslint-plugin":"^4.31.2","@typescript-eslint/parser":"^4.31.2","babel-loader":"^8.2.2","esbuild":"^0.12.28","eslint":"^7.19.0","eslint-config-sets":"^1.5.3","npm-run-all":"^4.1.5","prettier":"^2.4.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.30.0","rollup-plugin-visualizer":"^5.5.2","terser-webpack-plugin":"^5.2.4","typedoc":"^0.22.4","typedoc-plugin-markdown":"^3.11.0","typescript":"^4.4.3","webpack":"^5.53.0","webpack-cli":"^4.8.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","gitHead":"9574a05cdb45f7c0b8e996e41e781d290cc4f75f","_id":"axios-ex@2.2.2","_nodeVersion":"14.17.3","_npmVersion":"7.20.6","dist":{"integrity":"sha512-8LEItAm8yUQZqnnL7aFfnxq8WwpjbRfU6G/mSMeOSSn8EKYmpEZZkDfB7Un4w1a0BfzRNZA/ZB3o0EVLsAbVbw==","shasum":"b27c4e70cd8fc8c6dcd69d6477abb18f6bea1646","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.2.2.tgz","fileCount":8,"unpackedSize":116243,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAabut6QMPe6y1dtkjtUwyylbpSbSKvYmqioxFE4S5tMAiAtONuAav9cT8KtGPoJuGNDcwkiiQlLiKf2xaRnfZFFbg=="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.2.2_1632208470734_0.2475251131538556"},"_hasShrinkwrap":false},"2.2.3":{"name":"axios-ex","version":"2.2.3","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.21.4","core-decorators":"^0.20.0","core-js":"^3.18.0","is-retry-allowed":"^3.0.0","js-cool":"^2.1.2"},"devDependencies":{"@babel/cli":"^7.15.7","@babel/core":"^7.15.5","@babel/eslint-parser":"^7.15.7","@babel/plugin-proposal-class-properties":"^7.14.5","@babel/plugin-proposal-decorators":"^7.15.4","@babel/plugin-transform-runtime":"^7.15.0","@babel/preset-env":"^7.15.4","@babel/preset-typescript":"^7.15.0","@microsoft/api-extractor":"^7.18.9","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^20.0.0","@rollup/plugin-node-resolve":"^13.0.4","@saqqdy/prettier-config":"^1.0.3","@typescript-eslint/eslint-plugin":"^4.31.2","@typescript-eslint/parser":"^4.31.2","babel-loader":"^8.2.2","esbuild":"^0.12.28","eslint":"^7.19.0","eslint-config-sets":"^1.5.3","npm-run-all":"^4.1.5","prettier":"^2.4.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.30.0","rollup-plugin-visualizer":"^5.5.2","terser-webpack-plugin":"^5.2.4","typedoc":"^0.22.4","typedoc-plugin-markdown":"^3.11.0","typescript":"^4.4.3","webpack":"^5.53.0","webpack-cli":"^4.8.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","gitHead":"461686aa49fc2a52012366fe35a58bdb0a7aa80a","_id":"axios-ex@2.2.3","_nodeVersion":"14.17.3","_npmVersion":"7.20.6","dist":{"integrity":"sha512-14LC2goxAp0sWUl/8XM1agL9Vxs9imN0wjXJ3lEqxL1IIlVpgJ5k2mSbpHJqMP9yPfdLCFcnyKX8HCUoK82pvA==","shasum":"e873863af12ef1abd5fa68d63c1721b62ebf4673","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.2.3.tgz","fileCount":8,"unpackedSize":115947,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4BbAJH9XYz3ge5cPjQT+uDczTINCPqLUcpPN8yE6/lgIgLgS172Hzf0iF3EC9HzrPVt61N8t/Wgp5EskxTg/twhs="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.2.3_1632553426965_0.8705405050788797"},"_hasShrinkwrap":false},"2.2.4":{"name":"axios-ex","version":"2.2.4","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.24.0","core-decorators":"^0.20.0","core-js":"^3.18.0","is-retry-allowed":"^3.0.0","js-cool":"^2.3.0"},"devDependencies":{"@babel/cli":"^7.15.7","@babel/core":"^7.16.0","@babel/eslint-parser":"^7.15.7","@babel/plugin-proposal-class-properties":"^7.16.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-runtime":"^7.16.4","@babel/preset-env":"^7.16.4","@babel/preset-typescript":"^7.16.0","@microsoft/api-extractor":"^7.18.9","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^21.0.1","@rollup/plugin-node-resolve":"^13.0.6","@saqqdy/prettier-config":"^1.1.0","@typescript-eslint/eslint-plugin":"^5.4.0","@typescript-eslint/parser":"^5.4.0","babel-loader":"^8.2.3","esbuild":"^0.13.14","eslint":"^8.2.0","eslint-config-sets":"^1.5.3","npm-run-all":"^4.1.5","prettier":"^2.4.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.60.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.31.0","rollup-plugin-visualizer":"^5.5.2","terser-webpack-plugin":"^5.2.4","typedoc":"^0.22.4","typedoc-plugin-markdown":"^3.11.6","typescript":"^4.4.3","webpack":"^5.53.0","webpack-cli":"^4.9.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","types":"./lib/index.d.ts","gitHead":"b317d0148892b20242043df5acdda81aed49917f","_id":"axios-ex@2.2.4","_nodeVersion":"14.18.1","_npmVersion":"8.1.3","dist":{"integrity":"sha512-dDNmDw4sdv08PcxXa+A8ZnBLAVJbsWsKUPyWsDTm6y+xpcljhHbOVGxmUsEdkJFufpRmqGmrGGn07IPkvRvWaA==","shasum":"83a0b52661430e93bb091d65854ae1f729f481e7","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.2.4.tgz","fileCount":8,"unpackedSize":104925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhldwbCRA9TVsSAnZWagAAWTsP/iTLbs09/f7iYNX+K23V\ngRB81JnqHc8DQJ2i2Rd1wTwWZNOOqno6qUXagzoCXGU9uxG0dsqG3ZKHmtMg\nYw04XzixJ3EW31FZ6GBxdg/4jBlFDyOlkSC+lT4tJ+5gspos3m3DFcqd1hgP\n3DfEdFpzuNKo6y1bSLqKhH7fYyCgDa0n3thm0BibVkzPfqiYrwHFaWefaO/E\nf+rB29ZVio8Z5m4pJ8ScBOAxeVEFdtxQ3fjKMt+1g1YgUjNYbrFNpy6CeAUu\nfmg5FLWHuKMUYkmh2TnGSL5QyHDyNRsG5kLo4IsaH0gBZ3c0D9X0J4wdk06n\n7oMUfgdJcj8zb8nq9c1IqCu2gFizhjH+RxW0LSr0AttcIhlNQ2gqrjBqyXLZ\ndkM91mtOPA+xR8zBsPTX2af854vlE6hWYl9vUlaEZ8yxGPqWIFLlBBuCSGd+\nfflsC0FPCJDFNuWjVoodep+aVjn1f+IvMEm+t61aEJUU7Plv5F4CuGMy3/nN\nCc7VNxmtoEQK+LN47c0qf6Q/RIVpc7Zp/bVtG93hCExPBDNIWhx0eGiiGe+d\nSxgKh2uFZeERs2BwLuenUlRumkDmth8joob0NwcEIzVWgv0Ev/NLioH8XNBq\nym0OSmZYDVsIdgFjtalanZkWSGzMZXVxauDHmxlKnwNFRfKus9lgrm5US3fq\nkox6\r\n=xgJh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDEpGbiUqxr6ITf7lA/NH4Ifu42Qv7hHJW1AKZZ7lwJzAiBJIa/IL8jz0/nYtr+W4JmjsY9ZAUuh+3KFmRemv5TukQ=="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.2.4_1637211163608_0.769153908052493"},"_hasShrinkwrap":false},"2.3.0-beta.1":{"name":"axios-ex","version":"2.3.0-beta.1","description":"axios extend","packageManager":"pnpm@7.7.0","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.27.2","core-decorators":"^0.20.0","core-js":"^3.24.1","is-retry-allowed":"^3.0.0","js-cool":"^2.3.2"},"devDependencies":{"@babel/cli":"^7.18.9","@babel/core":"^7.18.9","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.18.9","@babel/plugin-transform-runtime":"^7.18.9","@babel/preset-env":"^7.18.9","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-simple-ts":"^3.0.4","@microsoft/api-extractor":"^7.28.6","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^22.0.1","@rollup/plugin-node-resolve":"^13.3.0","@types/jest":"^28.1.6","@types/node":"^18.6.2","babel-loader":"^8.2.5","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.14.51","eslint":"^8.20.0","eslint-config-sets":"^1.8.3","jest":"^28.1.3","npm-run-all":"^4.1.5","prettier":"^2.7.1","prettier-config-common":"^1.2.0","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.77.2","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.32.1","rollup-plugin-visualizer":"^5.7.1","terser-webpack-plugin":"^5.3.3","ts-jest":"^28.0.7","tsnd":"^1.0.2","typedoc":"^0.23.9","typedoc-plugin-markdown":"^3.13.4","typescript":"^4.7.4","webpack":"^5.74.0","webpack-cli":"^4.10.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["@types/react","react","react-dom","@algolia/client-search","tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"homepage":"https://github.com/saqqdy/axios-ex#readme","publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"types":"./lib/index.d.ts","gitHead":"41c4f04639ab1eaa3007c229655b79934c9ff13e","_id":"axios-ex@2.3.0-beta.1","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-YUqdSCqfWjYLbXv4V3QI83z5Lhpc+4n8tU/w2oD90fbRrniehi39lRTA7L14E0UjmY8D920Io4dWNJlMcjViOA==","shasum":"c81d11d7a3df4f5dda26036149e8d101581ff8bb","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.0-beta.1.tgz","fileCount":8,"unpackedSize":153112,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmAzU8aErcgmpBJawTdomQaHrxWsn2BQFOrKMJ52JnwQIgECQjdvX/IGba3yzBs1wf/iXHe7cGP3i4yqpDYdbCox8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi5UHqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoxOA//aSYy97zsKqhg/uWyXg+nncF5GvpoliBPpfkXAGiJQn/AfGD/\r\nkwNMJnEDkS61kui4de7HaEWeBCoMKAOBHZhF6kyldI0hqU7m3ZEGtggKhuJl\r\nbih7cDtBwLY0riKOuREhYfioslo9GCVx6DxW3POkO/fGKyNeBdfdHLWBmIdh\r\nXeuvRe8lZ/Uzf49BD63Y6kY+sS8J4oARPjEAs5e64mGzyG7DDjynBfelCgMC\r\nozAljMwWRSa4BcsJPUO4Q2sH3rTES8vJgCqy164TUFE6x5Wq2GPCm2Dr8o/N\r\nFUHwGBCKDtnKYr8AYY1aVmQFu9hcGiryHMqgM+bTUa96a5Ka0pUQ6g79ISyw\r\n/8HpoT1B4QNsHSqwdsBMmaNqXJ57USd9j7/wAJOUFILMkCJUC7UA0sIvtw4w\r\nnp+jCPsBhxVI8EP66i/yCGbri0PVZc+it0387scp2XL5lY4wk9r94Agueh4T\r\nWk6/nQTOxg4wxYQF98OB0EO5maKVzs1u80WdwbxbJGLuFfAOmgz0POlbxNAJ\r\nN7nIr0qqBp+xRK5vEThtjAEGRp6E2pzn3xGBC12r0ehAmeaTq7tdTNyggjL+\r\nAMz0R1j49pUePyu3bnVIX/+dj0+JswCCIpuGjQMX7lH0/gxT2UcYXNYfeppQ\r\n8L/ZmWunOABMoC/vPiM6BnTOoI1XDO4XAOM=\r\n=lOQJ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.0-beta.1_1659191786395_0.1970600504338711"},"_hasShrinkwrap":false},"2.3.0-beta.2":{"name":"axios-ex","version":"2.3.0-beta.2","description":"axios extend","packageManager":"pnpm@7.7.0","main":"lib/index.cjs","unpkg":"lib/index.min.js","module":"lib/index.mjs","exports":{".":{"require":"./lib/index.cjs","import":"./lib/index.mjs"},"./lib":"./lib/index.cjs","./*":"./*"},"directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.27.2","core-decorators":"^0.20.0","core-js":"^3.24.1","is-retry-allowed":"^3.0.0","js-cool":"^2.3.2","regenerator-runtime":"^0.13.9"},"devDependencies":{"@babel/cli":"^7.18.9","@babel/core":"^7.18.9","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.18.9","@babel/preset-env":"^7.18.9","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-simple-ts":"^3.0.4","@microsoft/api-extractor":"^7.28.6","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^22.0.1","@rollup/plugin-node-resolve":"^13.3.0","@types/jest":"^28.1.6","@types/node":"^18.6.2","babel-loader":"^8.2.5","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.14.51","eslint":"^8.20.0","eslint-config-sets":"^1.8.3","jest":"^28.1.3","npm-run-all":"^4.1.5","prettier":"^2.7.1","prettier-config-common":"^1.2.0","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.77.2","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.32.1","rollup-plugin-visualizer":"^5.7.1","terser-webpack-plugin":"^5.3.3","ts-jest":"^28.0.7","tsnd":"^1.0.2","typedoc":"^0.23.9","typedoc-plugin-markdown":"^3.13.4","typescript":"^4.7.4","webpack":"^5.74.0","webpack-cli":"^4.10.0","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["@types/react","react","react-dom","@algolia/client-search","tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"homepage":"https://github.com/saqqdy/axios-ex#readme","publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"types":"./lib/index.d.ts","gitHead":"9d09bf37776756eba08feb228f9a1f1adf472da4","readme":"<div style=\"text-align: center;\" align=\"center\">\n\n# axios-ex\n\n企业级项目`axios`集成方案\n\n[![NPM version][npm-image]][npm-url]\n[![Codacy Badge][codacy-image]][codacy-url]\n[![build status][travis-image]][travis-url]\n[![Test coverage][codecov-image]][codecov-url]\n[![npm download][download-image]][download-url]\n[![gzip][gzip-image]][gzip-url]\n[![License][license-image]][license-url]\n\n[![Sonar][sonar-image]][sonar-url]\n\n</div>\n\n## **完整文档请查阅： [API 完整文档](./docs/modules.md)**\n\n## 安装\n\n> `axios-ex`自带了最新版的 axios，可以不用安装`axios`包\n\n```bash\n# 使用npm\n$ npm install axios-ex --save\n\n# 使用yarn\n$ yarn add axios-ex\n```\n\n## 使用\n\n### 常规用法\n\n```js\n// {app_root}/src/plugins/axios.js\nimport { getCookie, setCookie } from 'js-cool'\nimport AxiosExtend from 'axios-ex'\n\n/**\n * 设置请求头\n *\n * @param {object} instance AxiosInstance\n */\nfunction setHeaders(instance) {\n    instance.defaults.headers.post['Content-Type'] =\n        'application/x-www-form-urlencoded'\n}\n/**\n * 请求拦截器\n *\n * @param {object} config AxiosRequestConfig\n * @param {object} options 请求参数AxiosExtendRequestOptions\n * @returns AxiosRequestConfig\n */\nfunction onRequest(config, options = {}) {\n    // some codes\n    return config\n}\n/**\n * 请求错误时执行\n *\n * @param {object} err Error\n */\nfunction onRequestError(err) {\n    console.error(err)\n}\n/**\n * 响应拦截器\n *\n * @param {object} res AxiosResponse<any>\n * @param {object} options 请求参数AxiosExtendRequestOptions\n * @returns Promise<unknown>\n */\nfunction onResponse(res, options = {}) {\n    if (res.data.success) return res.data\n    return Promise.reject(res.data)\n}\n/**\n * 响应错误时执行\n *\n * @param {object} err Error\n */\nfunction onResponseError(err) {\n    console.error(err)\n}\n/**\n * 请求错误或响应错误都执行\n *\n * @param {object} err Error\n */\nfunction onError(err) {\n    console.error(err)\n}\n/**\n * 请求取消\n *\n * @param {object} err Error\n */\nfunction onCancel(err) {\n    console.error(err.message)\n}\n\n// 实例化\nconst axiosEx = new AxiosExtend({\n    maxConnections: 30, // 最大同时请求数，默认：0=不限制\n    unique: true, // 是否取消前面的相似请求，默认：false\n    retries: 0, // 重试次数，默认：0=不重试\n    orderly: false, // 是否有序返回，默认：true\n    setHeaders, // 设置请求头的方法\n    onRequest, // 请求拦截器\n    onRequestError, // 请求错误时执行\n    onResponse, // 响应拦截器\n    onResponseError, // 响应错误时执行\n    onError, // 请求错误或响应错误都执行\n    onCancel // 请求取消时的回调\n})\n\nexport default options => {\n    // 这里设置 unique 和 orderly 优先级高于实例化时候的配置\n    options.unique = options.unique ?? false\n    options.orderly = options.orderly ?? false\n    // 这里的unique优先级更高\n    return axiosEx.create(options)\n}\n```\n\n### 定义失败重试的延时方法\n\n1. 自定义重试延迟的时长\n\n    ```js\n    // 实例化的时候配置\n    const axiosEx = new AxiosExtend({\n        // ...\n        retryDelay: retryCount => {\n            return retryCount * 1000\n        }\n        // ...\n    })\n    ```\n\n2. 或者使用`axios-ex`内置的方法，exponentialDelay 随机递增 0%-50%\n\n    ```js\n    import AxiosExtend, { exponentialDelay } from 'axios-ex'\n    // 实例化的时候配置\n    const axiosEx = new AxiosExtend({\n        // ...\n        retryDelay: exponentialDelay\n        // ...\n    })\n    ```\n\n### 在 vue2.x 里面使用\n\n有时候我们需要在`onRequest`或`onResponse`里面使用`this`（vue 实例），可以这样写\n\n```js\nimport AxiosExtend from 'axios-ex'\n\nlet axiosEx = null\n// 请求拦截器\nfunction onRequest(config, options = {}) {\n    // this => vueInstance\n    return config\n}\n// 响应拦截器\nfunction onResponse(res, options = {}) {\n    // 隐藏loading动画\n    if (this instanceof Vue) {\n        this.$loader.hide()\n    }\n    if (res.data.success) return res.data\n    return Promise.reject(res.data)\n}\n\nexport default options => {\n    // 只需要初始化一次\n    if (!axiosEx)\n        axiosEx = new AxiosExtend({\n            onRequest: onRequest.bind(this),\n            onResponse: onResponse.bind(this)\n        })\n\n    // 显示loading动画\n    if (this instanceof Vue) {\n        this.$loader.show()\n    }\n    return axiosEx.create(options)\n}\n```\n\n## 问题和支持\n\nPlease open an issue [here](https://github.com/saqqdy/axios-ex/issues).\n\n## License\n\n[MIT](LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/axios-ex.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/axios-ex\n[codacy-image]: https://app.codacy.com/project/badge/Grade/f70d4880e4ad4f40aa970eb9ee9d0696\n[codacy-url]: https://www.codacy.com/gh/saqqdy/axios-ex/dashboard?utm_source=github.com&utm_medium=referral&utm_content=saqqdy/axios-ex&utm_campaign=Badge_Grade\n[travis-image]: https://travis-ci.com/saqqdy/axios-ex.svg?branch=master\n[travis-url]: https://travis-ci.com/saqqdy/axios-ex\n[codecov-image]: https://img.shields.io/codecov/c/github/saqqdy/axios-ex.svg?style=flat-square\n[codecov-url]: https://codecov.io/github/saqqdy/axios-ex?branch=master\n[download-image]: https://img.shields.io/npm/dm/axios-ex.svg?style=flat-square\n[download-url]: https://npmjs.org/package/axios-ex\n[gzip-image]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[gzip-url]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[license-image]: https://img.shields.io/badge/License-MIT-yellow.svg\n[license-url]: LICENSE\n[sonar-image]: https://sonarcloud.io/api/project_badges/quality_gate?project=saqqdy_axios-ex\n[sonar-url]: https://sonarcloud.io/dashboard?id=saqqdy_axios-ex\n","readmeFilename":"README.md","_id":"axios-ex@2.3.0-beta.2","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-SeKHsKnfi/YfpHZLMBnj7k4KlAOlJJxY8kxduOdB3TuieYGxNuLlgVUyhBtdy5uJ4bGmHCGDfptF5DQjj2sdsA==","shasum":"bb2c3072c002cc57bc46d6e83d8939665687c400","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.0-beta.2.tgz","fileCount":9,"unpackedSize":421484,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAkMWpaORMcziG3ZznQqcK/1T1PZeYPLAfORHFOIOTTiAiBEqyMBQNlHSZuZbVvJQIJcwpjzWMD5aA6ccETZi/VaQA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi5V0NACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoDGBAAhgdAHQ5NSLbHpVWesX2NSSOmw3Mr0WntVviWqwofbJHcHFt4\r\nvS0+sOz+ple/6ccmiLRyNE5T88/ys5VmUWc0tdIRdWzo12iPc2nauhaQTj7n\r\nDWAtDzXsMDmadtNjBmNQnKmVrj0DkVQl/0SOopq6wQt7ZSVx+AZajkRCiqn6\r\nlbvdOCpOAy4Wgndl83LLXAD7S//QklOQV7CEkI7vl5zW6Qkob9Ds5eJj9x7R\r\nXAsJuDMMgubeMT+kihZKCEOZPC3HaPeFuclkFKYyWbWPaMKDfizeYMnx9yMM\r\nUXsh5syhQG9UlhYlr6sTPhWIAG06+OkxNykunlh4r0qhS2AwSwM4F4MlRBiB\r\nexoRMMzznwUQ0W9FhiRqCXpkrp52Y4bN9/Z1HIZ6Xg8VjCmqaCsx46mjkIGt\r\nf5Ftd9tBYF0T2uHWIonQyTYUJbmD7PtCyvMjN7vOyOTGxFwoiS+R03xRzzxf\r\nGgxOKqX+/YlddKbip6Lp+/xTDcmvATF12t2Ezwm7i/2lOFzlspgM2b0VaXLp\r\nL1gduqNHVMtmcGT5IUk+PY/IrCDrVLn96Dci5yIa3xGZAsQb2tmBjpmzmbWJ\r\nEwn/PKyky517iQ8e5zAWHxJTOwvY5+Cc455nNYov9T/LG9jD47oSzjnMRgGK\r\napUykkoliezl14+CjhyMjuB1yMLGrZ1Azh4=\r\n=hPFe\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.0-beta.2_1659198732945_0.2528269303826518"},"_hasShrinkwrap":false},"2.3.0-beta.3":{"name":"axios-ex","version":"2.3.0-beta.3","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.24.0","core-decorators":"^0.20.0","core-js":"^3.18.0","is-retry-allowed":"^3.0.0","js-cool":"^2.3.0"},"devDependencies":{"@babel/cli":"^7.15.7","@babel/core":"^7.16.0","@babel/eslint-parser":"^7.15.7","@babel/plugin-proposal-class-properties":"^7.16.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-runtime":"^7.16.4","@babel/preset-env":"^7.16.4","@babel/preset-typescript":"^7.16.0","@microsoft/api-extractor":"^7.18.9","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^21.0.1","@rollup/plugin-node-resolve":"^13.0.6","@saqqdy/prettier-config":"^1.1.0","@typescript-eslint/eslint-plugin":"^5.4.0","@typescript-eslint/parser":"^5.4.0","babel-loader":"^8.2.3","esbuild":"^0.13.14","eslint":"^8.2.0","eslint-config-sets":"^1.5.3","npm-run-all":"^4.1.5","prettier":"^2.4.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.60.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.31.0","rollup-plugin-visualizer":"^5.5.2","terser-webpack-plugin":"^5.2.4","typedoc":"^0.22.4","typedoc-plugin-markdown":"^3.11.6","typescript":"^4.4.3","webpack":"^5.53.0","webpack-cli":"^4.9.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","types":"./lib/index.d.ts","gitHead":"b317d0148892b20242043df5acdda81aed49917f","_id":"axios-ex@2.3.0-beta.3","_nodeVersion":"16.16.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-HyU9vUx3GAhoIQcUOhjrTwCvh9Ixny/Mx+0T4MgtrVQaQtxs900ihjo2cdkYh0iQphN1kfO49cy5ny3n3AQetw==","shasum":"00ad4e4687d87715351797c99de530b0752748de","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.0-beta.3.tgz","fileCount":11,"unpackedSize":250832,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOFMojGkf5Ot3pnRhXrrQgNTLazD2Nb+bZo1fo4dhahgIhAJo0xxq9b1l5f0LUexm1TlD5rPw1ppRnyXCSDJXV8dcD"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6pQLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpCew//W5KO2Y6N9aGbl8+AKSI+u2V8hiL79s1RNyDyqZmwVXSq7sTo\r\nkxvovCAM+GrxCQqHCJqfT2XqEQyxmpSlTM7qWL0gnIStvMgyalh3THSsQu0n\r\nD+s8HOJnLx1nTpLX1dOAEmVSd8EdIaPvy+gKAa5u9dJ+0D2LHFbDNdV/TiVC\r\nLUlbX790MXxYIw238uRKDP0102XC/j70kt7xARMsu/TE7ovPEbKnnSqUmBFx\r\nOj8cESY6+37UnDCkKmmqpfATH8/1iawqq9BiyPh8CwzYDHc0KRcMPAk6OeCY\r\n7kujQDcE2dgl8UFC3dKciiVxeD3GNb7cRTfv0BBapa2UAusFxeRgjFmF10iw\r\nJV7EELTQnm2FXEVrqCcrrPwpqPky2h3OMlyiXVUf0Zu8Gu7qj21F7x4DQyoK\r\nFJVzR/TuDF60umqjgB2DVvGyYrWs1+mUNrFvWfLWID6I7eylpDc6OPAapQUK\r\nao7kl8OFUI2exSlzKgq8T/ftfCRtR5HIj4H+3w1Z/H6ul/tLvn0+Q4zll1vW\r\nn6BeFGMI5fckU2MssyIKxrQJFwWC74s8SAiNUGCgnHJOvavunUo5PcQm5XS9\r\naJIEn1ZRzTWAvOBJzTtPtWPiUnN2jnv8mQ2iEXfvWy1Tvr4APVIjJr+nbrPv\r\nX+014UZNItRtmjhuz0aYtOTl7/CXNFb7L7g=\r\n=SNfG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.0-beta.3_1659540491575_0.19833075319282645"},"_hasShrinkwrap":false},"2.3.0-beta.4":{"name":"axios-ex","version":"2.3.0-beta.4","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.24.0","core-decorators":"^0.20.0","core-js":"^3.18.0","is-retry-allowed":"^3.0.0","js-cool":"^2.3.0"},"devDependencies":{"@babel/cli":"^7.15.7","@babel/core":"^7.16.0","@babel/eslint-parser":"^7.15.7","@babel/plugin-proposal-class-properties":"^7.16.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-runtime":"^7.16.4","@babel/preset-env":"^7.16.4","@babel/preset-typescript":"^7.16.0","@microsoft/api-extractor":"^7.18.9","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^21.0.1","@rollup/plugin-node-resolve":"^13.0.6","@saqqdy/prettier-config":"^1.1.0","@typescript-eslint/eslint-plugin":"^5.4.0","@typescript-eslint/parser":"^5.4.0","babel-loader":"^8.2.3","esbuild":"^0.13.14","eslint":"^8.2.0","eslint-config-sets":"^1.5.3","npm-run-all":"^4.1.5","prettier":"^2.4.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.60.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.31.0","rollup-plugin-visualizer":"^5.5.2","terser-webpack-plugin":"^5.2.4","typedoc":"^0.22.4","typedoc-plugin-markdown":"^3.11.6","typescript":"^4.4.3","webpack":"^5.53.0","webpack-cli":"^4.9.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","types":"./lib/index.d.ts","gitHead":"b317d0148892b20242043df5acdda81aed49917f","_id":"axios-ex@2.3.0-beta.4","_nodeVersion":"16.16.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-rjoXCdyzbsgYef015ICUUgOdOH1eG1erMn5642ExitgJbodGzbSkH2DC9lxgjK1OPFYC5dqlDULrVwgBsdM1pA==","shasum":"ed62312d5ac5fb18272d85369daa4b78bf9f07e5","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.0-beta.4.tgz","fileCount":8,"unpackedSize":104932,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCv3gJT0WL/qu31cbLYPWHvgIOvQz5AgR0K02YE061pggIhAOK06nNhJL07C2gmtii4bgAA3EVCq1yETuWt5cx0oQIe"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6pQ1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrefhAAoTjVxfKyFJ9TPOGLYcIe1J6YgI0w4K1775l0S+jjiVqFvBUr\r\n+Xt63ssLa7dqk/brfz14ANu1V7jCsEBijV8MJ2rp2JZp9jYtZ+dFkngLtbvj\r\nTuZmW+q/pKbDc9/MhGJeqf4jOcIRd7mDbPKJiU3vaPYjG+MqUddgjQIrKUnJ\r\nDLaJRXE8yhFRhlC1zXcWV/dn5MPmHMsxS3IQK3UU/R/WiImkZEjUmQApTrdd\r\nkMgmeqOjkUSX82OLGWl3bwIwNqv9djMiHqJdKLWMJCsM5/BtTLjUj35lrRnP\r\nWcEHBf1gEVrc6onfKruZcXA83VUCP1ty7OmodV6OnxulYIawb1rIaGscel9Z\r\nINcAbmFX31yxKkK2GFcH82jS+WKJXsxymk/jKPIYOM4U50fTJNUdHv0SMC7M\r\nnhVoh7fwyxn9uk5n27EGrngIhY36qjQ6isBhDsGU1Kh8afUiHBKmRvRaLhCs\r\neeyDOd+8R5jiCUjffTuf2EEMbuflzrfMGYFbeBAG6rVzhfLj8frSEnpEh4oZ\r\ntfvujQfnDh8DFIyaeP5taS6hQvqgW2EJGJaRGXcIB1sIikOJQ9kwglHW+HS4\r\nDmoQO7pRqE7Z7zlblv1X5uFbcsXknbLBYWMPJefS7MpZ5zdz6ZelM2JaIdxx\r\nx7jusC+WhpraxY9WiSruLZzqGevRP4VlEEo=\r\n=c2SN\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.0-beta.4_1659540533577_0.276728821262328"},"_hasShrinkwrap":false},"2.3.0-beta.5":{"name":"axios-ex","description":"axios extend","version":"2.3.0-beta.5","packageManager":"pnpm@7.18.2","main":"dist/index.cjs","module":"dist/index.mjs","unpkg":"dist/index.min.js","jsdelivr":"dist/index.min.js","typings":"typings/index.d.ts","exports":{".":{"require":"./dist/index.cjs","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","es":"es","lib":"lib","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types} roll-types","build:bundle":"rollup -c build/rollup.config.ts --configPlugin @rollup/plugin-typescript","build:umd":"webpack --config build/webpack.config.js","build:types":"tsc --emitDeclarationOnly --outDir temp -p src","roll-types":"api-extractor run && rimraf temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","clean":"rimraf dist","dist":"run-s clean build docs prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","docs":"rimraf docs && typedoc","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"1.2.2","core-js":"^3.27.1","debug":"^4.3.4","is-retry-allowed":"^3.0.0","js-cool":"^2.8.0","regenerator-runtime":"^0.13.11"},"devDependencies":{"@babel/cli":"^7.20.7","@babel/core":"^7.20.7","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.20.7","@babel/preset-env":"^7.20.2","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-simple-ts":"^3.2.0","@microsoft/api-extractor":"^7.33.7","@rollup/plugin-alias":"^4.0.2","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^24.0.0","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.1","@rollup/plugin-terser":"^0.2.1","@rollup/plugin-typescript":"^10.0.1","@types/jest":"^29.2.4","@types/node":"^18.11.18","babel-loader":"^9.1.0","chalk":"^5.2.0","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.16.12","eslint":"^8.30.0","fast-glob":"^3.2.12","jest":"^29.3.1","npm-run-all":"^4.1.5","prettier":"^2.8.1","prettier-config-common":"^1.3.0","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^3.9.0","rollup-plugin-filesize":"^9.1.2","rollup-plugin-visualizer":"^5.8.3","terser-webpack-plugin":"^5.3.6","ts-jest":"^29.0.3","ts-morph":"^17.0.1","tsnd":"^1.1.0","typedoc":"^0.23.23","typedoc-plugin-markdown":"^3.14.0","typescript":"^4.9.4","webpack":"^5.75.0","webpack-cli":"^5.0.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"peerDependencies":{"core-js":">= 3","debug":">= 4","js-cool":">= 2"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"homepage":"https://github.com/saqqdy/axios-ex#readme","publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"readme":"<div style=\"text-align: center;\" align=\"center\">\n\n# axios-ex\n\n企业级项目`axios`集成方案\n\n[![NPM version][npm-image]][npm-url]\n[![Codacy Badge][codacy-image]][codacy-url]\n[![build status][travis-image]][travis-url]\n[![Test coverage][codecov-image]][codecov-url]\n[![npm download][download-image]][download-url]\n[![gzip][gzip-image]][gzip-url]\n[![License][license-image]][license-url]\n\n[![Sonar][sonar-image]][sonar-url]\n\n</div>\n\n## **完整文档请查阅： [API 完整文档](./docs/modules.md)**\n\n## 安装\n\n> `axios-ex`自带了最新版的 axios，可以不用安装`axios`包\n\n```bash\n# 使用npm\n$ npm install axios-ex --save\n\n# 使用yarn\n$ yarn add axios-ex\n```\n\n## 使用\n\n### 常规用法\n\n```js\n// {app_root}/src/plugins/axios.js\nimport { getCookie, setCookie } from 'js-cool'\nimport AxiosExtend from 'axios-ex'\n\n/**\n * 设置请求头\n *\n * @param {object} instance AxiosInstance\n */\nfunction setHeaders(instance) {\n  instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'\n}\n/**\n * 请求拦截器\n *\n * @param {object} config AxiosRequestConfig\n * @param {object} options 请求参数AxiosExtendRequestOptions\n * @returns AxiosRequestConfig\n */\nfunction onRequest(config, options = {}) {\n  // some codes\n  return config\n}\n/**\n * 请求错误时执行\n *\n * @param {object} err Error\n */\nfunction onRequestError(err) {\n  console.error(err)\n}\n/**\n * 响应拦截器\n *\n * @param {object} res AxiosResponse<any>\n * @param {object} options 请求参数AxiosExtendRequestOptions\n * @returns Promise<unknown>\n */\nfunction onResponse(res, options = {}) {\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n/**\n * 响应错误时执行\n *\n * @param {object} err Error\n */\nfunction onResponseError(err) {\n  console.error(err)\n}\n/**\n * 请求错误或响应错误都执行\n *\n * @param {object} err Error\n */\nfunction onError(err) {\n  console.error(err)\n}\n/**\n * 请求取消\n *\n * @param {object} err Error\n */\nfunction onCancel(err) {\n  console.error(err.message)\n}\n\n// 实例化\nconst axiosEx = new AxiosExtend({\n  maxConnections: 30, // 最大同时请求数，默认：0=不限制\n  unique: true, // 是否取消前面的相似请求，默认：false\n  retries: 0, // 重试次数，默认：0=不重试\n  orderly: false, // 是否有序返回，默认：true\n  setHeaders, // 设置请求头的方法\n  onRequest, // 请求拦截器\n  onRequestError, // 请求错误时执行\n  onResponse, // 响应拦截器\n  onResponseError, // 响应错误时执行\n  onError, // 请求错误或响应错误都执行\n  onCancel // 请求取消时的回调\n})\n\nexport default options => {\n  // 这里设置 unique 和 orderly 优先级高于实例化时候的配置\n  options.unique = options.unique ?? false\n  options.orderly = options.orderly ?? false\n  // 这里的unique优先级更高\n  return axiosEx.create(options)\n}\n```\n\n### 定义失败重试的延时方法\n\n1. 自定义重试延迟的时长\n\n   ```js\n   // 实例化的时候配置\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: retryCount => {\n       return retryCount * 1000\n     }\n     // ...\n   })\n   ```\n\n2. 或者使用`axios-ex`内置的方法，exponentialDelay 随机递增 0%-50%\n\n   ```js\n   import AxiosExtend, { exponentialDelay } from 'axios-ex'\n   // 实例化的时候配置\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: exponentialDelay\n     // ...\n   })\n   ```\n\n### 在 vue2.x 里面使用\n\n有时候我们需要在`onRequest`或`onResponse`里面使用`this`（vue 实例），可以这样写\n\n```js\nimport AxiosExtend from 'axios-ex'\n\nlet axiosEx = null\n// 请求拦截器\nfunction onRequest(config, options = {}) {\n  // this => vueInstance\n  return config\n}\n// 响应拦截器\nfunction onResponse(res, options = {}) {\n  // 隐藏loading动画\n  if (this instanceof Vue) {\n    this.$loader.hide()\n  }\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n\nexport default options => {\n  // 只需要初始化一次\n  if (!axiosEx)\n    axiosEx = new AxiosExtend({\n      onRequest: onRequest.bind(this),\n      onResponse: onResponse.bind(this)\n    })\n\n  // 显示loading动画\n  if (this instanceof Vue) {\n    this.$loader.show()\n  }\n  return axiosEx.create(options)\n}\n```\n\n## 问题和支持\n\nPlease open an issue [here](https://github.com/saqqdy/axios-ex/issues).\n\n## License\n\n[MIT](LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/axios-ex.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/axios-ex\n[codacy-image]: https://app.codacy.com/project/badge/Grade/f70d4880e4ad4f40aa970eb9ee9d0696\n[codacy-url]: https://www.codacy.com/gh/saqqdy/axios-ex/dashboard?utm_source=github.com&utm_medium=referral&utm_content=saqqdy/axios-ex&utm_campaign=Badge_Grade\n[travis-image]: https://travis-ci.com/saqqdy/axios-ex.svg?branch=master\n[travis-url]: https://travis-ci.com/saqqdy/axios-ex\n[codecov-image]: https://img.shields.io/codecov/c/github/saqqdy/axios-ex.svg?style=flat-square\n[codecov-url]: https://codecov.io/github/saqqdy/axios-ex?branch=master\n[download-image]: https://img.shields.io/npm/dm/axios-ex.svg?style=flat-square\n[download-url]: https://npmjs.org/package/axios-ex\n[gzip-image]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[gzip-url]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[license-image]: https://img.shields.io/badge/License-MIT-yellow.svg\n[license-url]: LICENSE\n[sonar-image]: https://sonarcloud.io/api/project_badges/quality_gate?project=saqqdy_axios-ex\n[sonar-url]: https://sonarcloud.io/dashboard?id=saqqdy_axios-ex\n","readmeFilename":"README.md","gitHead":"62a590549974b270b6aec815d67fd83a6567a352","_id":"axios-ex@2.3.0-beta.5","_nodeVersion":"16.18.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-i0QgHGALYbMiCmtnjVuN+XCr+m502LCh/I9DZinkrwjcWMSsLWnKyDxacdMVpbv94hKXOtmXDeEB3Y9vDhjbhw==","shasum":"b63f20991d5d0c5fc7c04b0261ab890a62aad6ff","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.0-beta.5.tgz","fileCount":9,"unpackedSize":71450,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFiV+AJ6/orwWnKEDcWFIyjP0ecGXPX0DE1obveAvDgkAiBIYVw/CizcGnoa0LGlOMLCJMI99Io2uVMzval4lUdhNg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrsG+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqnKQ/5ADSRNaNSonu/N6KlAJL6WngfEtPHD3VbplG2eyGdd1I2qcZ3\r\nKpqtPZ78z0s2qfDcr8X7w7zKGyEx7AypAa0mMaTMqwYJgJIIaW4UM3K9Po0U\r\nqYrYB2eCfXGuGe5PUfKB3OEPeI/N+qQcsZN6nW6YIH3QxeLc5YrQ9EDQ7/1E\r\nJi2WziZEhyNjnvr7i8r5S5BEyGqye91rGZauhgV5al6yYlIYI2riPiCczn+O\r\n/zbBzyoDfwWEpp3BuNcG9S+R4iMf6HJHAZ/sMCh+6UysvjQxUGjZQSDmXtXi\r\nJzSgCYzNhJ2kK3UNYFR6qC1NO2/gB46v/qVWfKluj4l1CYlmY0b4fvHghMq+\r\nVMYSzgVhgLLNG9lbYDLBt7kKsbZXr8LlB92kpZM0GW94tDYyqHJUocMjZgcx\r\nzNO/t1bT9t1+M3NYophMw3WWk/tT+3vIPgameFWdEpNvXLzMR/oG5cujoW96\r\n0xyhxIVwVoopVRplNBspMuMnrDFhVXJTH/VGKcg8700ZK9Dg7RYssiz+pVj2\r\ndotOiWQ4DtNC8sK3VyRqze0iPNbQrROKYyOcVvjzghfiMYSxT+l0dIvqOCAN\r\nzTRYqR1Am+0BHt0JdkSitB9Mvh3LrLKqvdzJDidS8VQwqtD0kvcFGZ/rK4Pw\r\nxd6riR62T/bQY++HscoK67nNqPRWSUkTp8k=\r\n=Oqgk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.0-beta.5_1672397246124_0.620830028757321"},"_hasShrinkwrap":false},"2.3.0":{"name":"axios-ex","description":"axios extend","version":"2.3.0","packageManager":"pnpm@7.18.2","main":"dist/index.cjs","module":"dist/index.mjs","unpkg":"dist/index.min.js","jsdelivr":"dist/index.min.js","typings":"typings/index.d.ts","exports":{".":{"require":"./dist/index.cjs","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","es":"es","lib":"lib","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types} roll-types","build:bundle":"rollup -c build/rollup.config.ts --configPlugin @rollup/plugin-typescript","build:umd":"webpack --config build/webpack.config.js","build:types":"tsc --emitDeclarationOnly --outDir temp -p src","roll-types":"api-extractor run && rimraf temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","clean":"rimraf dist","dist":"run-s clean build docs prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","docs":"rimraf docs && typedoc","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"1.2.2","core-js":"^3.27.1","debug":"^4.3.4","is-retry-allowed":"^3.0.0","js-cool":"^2.8.0","regenerator-runtime":"^0.13.11"},"devDependencies":{"@babel/cli":"^7.20.7","@babel/core":"^7.20.7","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.20.7","@babel/preset-env":"^7.20.2","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-simple-ts":"^3.2.0","@microsoft/api-extractor":"^7.33.7","@rollup/plugin-alias":"^4.0.2","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^24.0.0","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.1","@rollup/plugin-terser":"^0.2.1","@rollup/plugin-typescript":"^10.0.1","@types/jest":"^29.2.4","@types/node":"^18.11.18","babel-loader":"^9.1.0","chalk":"^5.2.0","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.16.12","eslint":"^8.30.0","fast-glob":"^3.2.12","jest":"^29.3.1","npm-run-all":"^4.1.5","prettier":"^2.8.1","prettier-config-common":"^1.3.0","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^3.9.0","rollup-plugin-filesize":"^9.1.2","rollup-plugin-visualizer":"^5.8.3","terser-webpack-plugin":"^5.3.6","ts-jest":"^29.0.3","ts-morph":"^17.0.1","tsnd":"^1.1.0","typedoc":"^0.23.23","typedoc-plugin-markdown":"^3.14.0","typescript":"^4.9.4","webpack":"^5.75.0","webpack-cli":"^5.0.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"peerDependencies":{"core-js":">= 3","debug":">= 4","js-cool":">= 2"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"homepage":"https://github.com/saqqdy/axios-ex#readme","publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"gitHead":"49c8f2e1594ae93dace1bcfd03ad835d82f575ff","_id":"axios-ex@2.3.0","_nodeVersion":"16.18.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-9TqaxEhhUld/gLUfQtifT2PsXfdGdYq++9E6WYAEck+TTREjXBzblcxT8mVijZyChfP0b4gSs9vpD1dqPdlaPA==","shasum":"a70765f79beabfdf65c53f67823b80ac2448d6f8","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.0.tgz","fileCount":9,"unpackedSize":71415,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCW0KsLWZZ4U4e49aVGb+X/2JZfph9dvmt5wuUfHrLMLwIgQc7eV7xl/391nHXp9dpsl1L9qztfxmShVRWHvaUqc0A="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrsYrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqvtw/+PJJpZOEVu/pllQJ0uZSAteU0WMWj2U83R4dslF12ogu9ul/0\r\nYmsM4+P2lEU33gXyj0X/m7jO2r67e2YYXFypmgSfg1LYyCrJp+9Ne5PsIpv4\r\ntVVkVj3VPxYqkA+PRNRyLAaigUAgKcEqx1vrpctvmW0q16UdLDis8k5rvZqf\r\n7du1mfKHqQZ26RwPJDG04r3hpPVDsXfxB4uPQ0F89mk2JQ+FZmGvlfFHEmuQ\r\nEz10sclic/H4SaosyM6V84jlQG/zb8HipRlvsZTobDXzSLbsJ73yt3hk8g2+\r\nls1Zb6oHfB41dpz5N4zWfzdKtpGrBYX94Es/5TB/GQmriuSVAEgw+Vx0ogED\r\nXxrFc3Rr/oIerpVFcqpobHxjWJsWEjaI4RkF0PqxxYiSn9HPARb6AWrXq94r\r\npQDlAZ84LMQvh2U5UUTwNgoG5s2GXwiEnEfQ9d42G+LwnwBCJkk8h1IwHkfq\r\nht9eHdRuovVD1YHH/feI1ad7WeJLr+j+QhzcyyQOoyuo0ih1mmvv79whBxv4\r\nC6Fa3kiAxMsGgQtZFptDnoftAIw4EuJ5Kx56zA2cpzNLk5VgGaJfdLLvoW/Y\r\nXKM2vnWwjo2npdFIqatDECLfezInBaLNU2Alb1PeNhs39CXkYYs2IAJfJPIW\r\nWRqxQrWH8hacWIGuZFB3fz9rGXn3HZqLgEs=\r\n=Lz+T\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.0_1672398379293_0.15101785528813938"},"_hasShrinkwrap":false,"deprecated":"有bug，晚点修复"},"2.2.5":{"name":"axios-ex","version":"2.2.5","description":"axios extend","main":"lib/index.js","unpkg":"lib/index.js","module":"lib/index.esm.js","directories":{"es":"es","lib":"lib","src":"src"},"scripts":{"build":"rimraf lib es && rollup -c","build:umd":"webpack --config webpack.config.js","build:types":"run-s build-temp-types roll-types","build-temp-types":"tsc --emitDeclarationOnly --outDir temp/ -p src/","patch-types":"node script/patchTypes","roll-types":"api-extractor run && rimraf temp","dev":"rollup -c -w","dist":"run-s eslint prettier build build:umd build:types docs prettier:docs","docs":"rimraf docs && typedoc","eslint":"eslint --fix --ext .ts,.js","prettier":"prettier --write \"**/*.{js,ts,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"0.24.0","core-decorators":"^0.20.0","core-js":"^3.18.0","is-retry-allowed":"^3.0.0","js-cool":"^2.3.0"},"devDependencies":{"@babel/cli":"^7.15.7","@babel/core":"^7.16.0","@babel/eslint-parser":"^7.15.7","@babel/plugin-proposal-class-properties":"^7.16.0","@babel/plugin-proposal-decorators":"^7.16.4","@babel/plugin-transform-runtime":"^7.16.4","@babel/preset-env":"^7.16.4","@babel/preset-typescript":"^7.16.0","@microsoft/api-extractor":"^7.18.9","@rollup/plugin-babel":"^5.2.2","@rollup/plugin-commonjs":"^21.0.1","@rollup/plugin-node-resolve":"^13.0.6","@saqqdy/prettier-config":"^1.1.0","@typescript-eslint/eslint-plugin":"^5.4.0","@typescript-eslint/parser":"^5.4.0","babel-loader":"^8.2.3","esbuild":"^0.13.14","eslint":"^8.2.0","eslint-config-sets":"^1.5.3","npm-run-all":"^4.1.5","prettier":"^2.4.1","progress-bar-webpack-plugin":"^2.1.0","rimraf":"^3.0.2","rollup":"^2.60.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.31.0","rollup-plugin-visualizer":"^5.5.2","terser-webpack-plugin":"^5.2.4","typedoc":"^0.22.4","typedoc-plugin-markdown":"^3.11.6","typescript":"^4.4.3","webpack":"^5.53.0","webpack-cli":"^4.9.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"author":{"name":"saqqdy@qq.com"},"license":"MIT","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"homepage":"https://github.com/saqqdy/axios-ex#readme","types":"./lib/index.d.ts","gitHead":"b317d0148892b20242043df5acdda81aed49917f","_id":"axios-ex@2.2.5","_nodeVersion":"16.19.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-A1xzcdJIdaCH7wC/XqnJs0J4EBuRuaVIaePOHofewzhBxcblCIJpLdx0sPQGEDIBaa/qlYgSL8axnAXo+IiJdA==","shasum":"6884ddc2e9ea1a9a733a9a2ea3f9046040be04de","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.2.5.tgz","fileCount":8,"unpackedSize":149368,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjiNl2y64BSQYMNudnT8R5ge8LBN+G6Zox6nyklyokiQIhAMZ8+A00kCy49TkKPggXjRxS1sydZZFywWbDQkWI7jB/"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJju9uzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpjEQ//aM+x7e3tl6aNa5pYniinnhvy6fpDmnw6i/1OlClE7einLzY8\r\nlG9doNVe1S9ZVXPJcnvIKRVs1uktB3V9oJd2v80G2rVFU239OWhdnjUDO9O1\r\nm9HhgVAKwne2n9L8CGNdHSdkYnqeW3mZmYPtmOczDjKocKaXLQHlEt5Zi3IX\r\nVrTq2ZImRjAxXbkynuZ0fnT3VkIRdS3F82kvzqUnYwCNuveLsv+QapjFFJO0\r\nqBW9jRCKFPWCwqDEja5pK88Py0ehXxKFVwqMeM95/pJnpgdf03NxeOaFRS7C\r\nUWhc8Zh8R0Y4V8PJUt5HhaJXgVZ6AqQ3fbTTzL/C+0O1N6xheRJZK90rpAER\r\niUhhVrCovSFYMtxqAPBT2Vwt5wrDqYG0Jpuc0fKhMloDHN4Ts29aF272exSK\r\n0hY1jpEcdzEJadH9MFR7V5QN93KYPwg2QaV2pX8M3fglwHjO1EYV/pSEogBw\r\n7pZbuRIwd+djODCd+UoBo9e0Z9UK18bfr3aYQoNTBY5RkeoyJq08WGN6Hfrf\r\n42FGS5t4JUshaYAgpHFlPFKumBoJigXg4d+mLQZKgUROSCh9B9Jv+rTkjlA5\r\ngQTdnwwPyGgudJFwPD9hwrxRsbUXFzzcxkA7xsq0KBO+WuZ33JhhGX6UeG1o\r\nmGp2yN/6anFl+cVVPfDsjmZn/XEPo1z2rVM=\r\n=NNRV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.2.5_1673255859650_0.5027857705765233"},"_hasShrinkwrap":false},"2.3.1-beta.1":{"name":"axios-ex","description":"axios extend","version":"2.3.1-beta.1","packageManager":"pnpm@7.26.1","main":"./dist/index.cjs","module":"./dist/index.mjs","unpkg":"./dist/index.min.js","jsdelivr":"./dist/index.min.js","typings":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.cjs","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","es":"es","lib":"lib","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types,docs} roll-types","build:bundle":"rollup -c build/rollup.config.ts --configPlugin @rollup/plugin-typescript","build:umd":"webpack --config build/webpack.config.js","build:types":"tsc --emitDeclarationOnly --outDir temp -p src","build:docs":"rimraf docs && typedoc","roll-types":"api-extractor run && rimraf temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","clean":"rimraf dist","dist":"run-s clean build prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"^1.2.5","core-js":"^3.27.2","is-retry-allowed":"^3.0.0","js-cool":"^2.8.0","regenerator-runtime":"^0.13.11"},"devDependencies":{"@babel/core":"^7.20.12","@babel/preset-env":"^7.20.2","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-ts":"^4.1.0","@microsoft/api-extractor":"^7.34.0","@rollup/plugin-alias":"^4.0.3","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^24.0.1","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.1","@rollup/plugin-terser":"^0.4.0","@rollup/plugin-typescript":"^11.0.0","@types/jest":"^29.4.0","@types/node":"^18.11.18","babel-loader":"^9.1.2","chalk":"^5.2.0","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.17.4","eslint":"^8.32.0","fast-glob":"^3.2.12","jest":"^29.4.1","npm-run-all":"^4.1.5","prettier":"^2.8.3","prettier-config-common":"^1.3.0","progress-bar-webpack-plugin":"^2.1.0","reinstaller":"^2.1.0","rimraf":"^4.1.2","rollup":"^3.11.0","rollup-plugin-filesize":"^9.1.2","rollup-plugin-visualizer":"^5.9.0","terser-webpack-plugin":"^5.3.6","ts-jest":"^29.0.5","ts-morph":"^17.0.1","tsnd":"^1.1.0","typedoc":"^0.23.24","typedoc-plugin-markdown":"^3.14.0","typescript":"^4.9.4","webpack":"^5.75.0","webpack-cli":"^5.0.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"peerDependencies":{"axios":"*","core-js":">= 3","js-cool":">= 2"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"readme":"<div style=\"text-align: center;\" align=\"center\">\n\n# axios-ex\n\nA integration solution of axios for large enterprise projects. Support request concurrency control & cancel requests & automatic retry & requests times limit, etc.\n\n[![NPM version][npm-image]][npm-url]\n[![Codacy Badge][codacy-image]][codacy-url]\n[![build status][travis-image]][travis-url]\n[![Test coverage][codecov-image]][codecov-url]\n[![npm download][download-image]][download-url]\n[![gzip][gzip-image]][gzip-url]\n[![License][license-image]][license-url]\n\n[![Sonar][sonar-image]][sonar-url]\n\n</div>\n\n<div style=\"text-align: center;\" align=\"center\">\n\n## **For API documentation, see: [API Docs](./docs/modules.md)**\n\n</div>\n\n## Installation\n\n> `axios-ex` comes with the latest version of axios, so you can install it without the `axios` package\n\n```bash\n# use pnpm\n$ pnpm install axios-ex\n\n# use npm\n$ npm install axios-ex --save\n\n# use yarn\n$ yarn add axios-ex\n```\n\n## Usage\n\n### General use\n\n```js\n// {app_root}/src/plugins/axios.js\nimport { getCookie, setCookie } from 'js-cool'\nimport AxiosExtend from 'axios-ex'\n\n/**\n * Set the request header\n *\n * @param {object} instance AxiosInstance\n */\nfunction setHeaders(instance) {\n  instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'\n}\n/**\n * Request Interceptor\n *\n * @param {object} config AxiosRequestConfig\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns AxiosRequestConfig\n */\nfunction onRequest(config, options = {}) {\n  // some codes\n  return config\n}\n/**\n * Execute on request error\n *\n * @param {object} err Error\n */\nfunction onRequestError(err) {\n  console.error(err)\n}\n/**\n * Response Interceptor\n *\n * @param {object} res AxiosResponse<any>\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns Promise<unknown>\n */\nfunction onResponse(res, options = {}) {\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n/**\n * Execute in response error\n *\n * @param {object} err Error\n */\nfunction onResponseError(err) {\n  console.error(err)\n}\n/**\n * Execute on request error & response error\n *\n * @param {object} err Error\n */\nfunction onError(err) {\n  console.error(err)\n}\n/**\n * Request Cancelled\n *\n * @param {object} err Error\n */\nfunction onCancel(err) {\n  console.error(err.message)\n}\n\n// Instantiation\nconst axiosEx = new AxiosExtend({\n  maxConnections: 30, // Maximum number of connections, default: 0, no limit\n  unique: true, // Whether to cancel the previous similar requests, default: false\n  retries: 0, // Number of retries, default: 0, no retries\n  orderly: false, // Whether to return in order, default: true\n  setHeaders, // function for setting request headers\n  onRequest, // Request Interceptor\n  onRequestError, // Execute on request error\n  onResponse, // Response Interceptor\n  onResponseError, // Execute on response error\n  onError, // Execute on request error & response error\n  onCancel // Callback when request is cancelled\n})\n\nexport default options => {\n  // Here set the unique and orderly priority higher than the instantiation configuration\n  options.unique = options.unique ?? false\n  options.orderly = options.orderly ?? false\n  // Here the unique has a higher priority\n  return axiosEx.create(options)\n}\n```\n\n### Define the delay function for failed retries\n\n1. Customize the retry delay time\n\n   ```js\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: retryCount => {\n       return retryCount * 1000\n     }\n     // ...\n   })\n   ```\n\n2. Or use `axios-ex` built-in function, exponentialDelay randomly incremented by 0%-50%\n\n   ```js\n   import AxiosExtend, { exponentialDelay } from 'axios-ex'\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: exponentialDelay\n     // ...\n   })\n   ```\n\n### Using with `vue2.0`\n\nSometimes we need to use `this` (vue instance) inside `onRequest` or `onResponse`, we can use it like this\n\n```js\nimport AxiosExtend from 'axios-ex'\n\nlet axiosEx = null\n// Request Interceptor\nfunction onRequest(config, options = {}) {\n  // this => vueInstance\n  return config\n}\n// Response Interceptor\nfunction onResponse(res, options = {}) {\n  // hide loading\n  if (this instanceof Vue) {\n    this.$loader.hide()\n  }\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n\nexport default options => {\n  // Only need to initialize once\n  if (!axiosEx)\n    axiosEx = new AxiosExtend({\n      onRequest: onRequest.bind(this),\n      onResponse: onResponse.bind(this)\n    })\n\n  // show loading\n  if (this instanceof Vue) {\n    this.$loader.show()\n  }\n  return axiosEx.create(options)\n}\n```\n\n## Support & Issues\n\nPlease open an issue [here](https://github.com/saqqdy/axios-ex/issues).\n\n## License\n\n[MIT](LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/axios-ex.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/axios-ex\n[codacy-image]: https://app.codacy.com/project/badge/Grade/f70d4880e4ad4f40aa970eb9ee9d0696\n[codacy-url]: https://www.codacy.com/gh/saqqdy/axios-ex/dashboard?utm_source=github.com&utm_medium=referral&utm_content=saqqdy/axios-ex&utm_campaign=Badge_Grade\n[travis-image]: https://travis-ci.com/saqqdy/axios-ex.svg?branch=master\n[travis-url]: https://travis-ci.com/saqqdy/axios-ex\n[codecov-image]: https://img.shields.io/codecov/c/github/saqqdy/axios-ex.svg?style=flat-square\n[codecov-url]: https://codecov.io/github/saqqdy/axios-ex?branch=master\n[download-image]: https://img.shields.io/npm/dm/axios-ex.svg?style=flat-square\n[download-url]: https://npmjs.org/package/axios-ex\n[gzip-image]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[gzip-url]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[license-image]: https://img.shields.io/badge/License-MIT-yellow.svg\n[license-url]: LICENSE\n[sonar-image]: https://sonarcloud.io/api/project_badges/quality_gate?project=saqqdy_axios-ex\n[sonar-url]: https://sonarcloud.io/dashboard?id=saqqdy_axios-ex\n","readmeFilename":"README.md","gitHead":"5d9d522326d843775d1a1409a7566a968b622dac","_id":"axios-ex@2.3.1-beta.1","_nodeVersion":"16.19.0","_npmVersion":"9.2.0","dist":{"integrity":"sha512-O2eQV4qQIcqBsWxEdZS7/qj9WwlfpQNvzra4uiY614zuaL50gLJjt4Gnx6wbez+5j/64y63jyE7QT4SVbekGEg==","shasum":"25eda2e7e21ad1d9dc3885ae54f48acc3f6ec519","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.1-beta.1.tgz","fileCount":8,"unpackedSize":66073,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGrzHaYiTS5iG+gMCiA/ty7b+HCe999pN//D6lFvZZiQAiEAkRKadwpnv5/6KPcxnk3xvQkDY27AwtwSrBQTOFRO0lM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1PraACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoGNw//bArFzo4qoVK5bIdlXaTCG6UBdM+qZBCUi/KT1BH40FdXDCIO\r\n2GQifW4s3WA1DTNPmy/0flZHzmngh9cjx4wrCBCSBEINz6Pv2sbbveHBVi9i\r\nTWfmGUvkzB2IwtTc95xURYszpGwxl6G7LtjLBdpkAWg7i9HlVNHpzWWtWozW\r\nRccZPcXspx2P9EO9gRNog52vuvm58aSkuHqx4pnQCqIL6dlWjW8sFYyZsFMk\r\n0/3syCngZjURUqdx28XyhczaQwzM2h8abd+JWi/tJ01RLSmWymKX5iXdqfJN\r\nTgT0DG9g4IFw4PG0YhEH8CXvOYy4jxBTb7mdipwtCik/EhoKvcUKV1M4gkCZ\r\nb7kbEEe25nWUU4z0oSUVb/V7c7W9n9qgR+NNpDKRLX5EAj5cuvpWNWMfd8iA\r\n5kDuMa1lB9hFurQ6XWILDSGTt5AkspPWVnwXjbab73bfDPzY+/msZykhfI+l\r\nGaaDGjO5xflyrd/t7aey6+7FfAUcDKljlr7tgUpYuytDz3ncbv//AZJ4ERCw\r\nkabB32Q8oi0JTn8txVTtevxZ5MRA5+97geZHcSz0Oe1PwKhbRY9muOXaP3/O\r\niKIbZ5QK6qDj7vXdzIPomSYBI2lgRkZ3CqoQ9IP2Jy5rx/tYSeP6B4XPnxSw\r\n0D2SxdPmrd7N3/7kFkS+axrPqj8uJQm+hYs=\r\n=G+My\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.1-beta.1_1674902234398_0.7199462294655081"},"_hasShrinkwrap":false},"2.3.1-beta.2":{"name":"axios-ex","description":"axios extend","version":"2.3.1-beta.2","packageManager":"pnpm@7.26.1","main":"./dist/index.cjs","module":"./dist/index.mjs","unpkg":"./dist/index.min.js","jsdelivr":"./dist/index.min.js","typings":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.cjs","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","es":"es","lib":"lib","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types,docs} roll-types","build:bundle":"rollup -c build/rollup.config.ts --configPlugin @rollup/plugin-typescript","build:umd":"webpack --config build/webpack.config.js","build:types":"tsc --emitDeclarationOnly --outDir temp -p src","build:docs":"rimraf docs && typedoc","roll-types":"api-extractor run && rimraf temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","clean":"rimraf dist","dist":"run-s clean build prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"^0.27.2","core-js":"^3.27.2","is-retry-allowed":"^3.0.0","js-cool":"^2.8.0","regenerator-runtime":"^0.13.11"},"devDependencies":{"@babel/core":"^7.20.12","@babel/preset-env":"^7.20.2","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-ts":"^4.1.0","@microsoft/api-extractor":"^7.34.0","@rollup/plugin-alias":"^4.0.3","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^24.0.1","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.1","@rollup/plugin-terser":"^0.4.0","@rollup/plugin-typescript":"^11.0.0","@types/jest":"^29.4.0","@types/node":"^18.11.18","babel-loader":"^9.1.2","chalk":"^5.2.0","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.17.4","eslint":"^8.32.0","fast-glob":"^3.2.12","jest":"^29.4.1","npm-run-all":"^4.1.5","prettier":"^2.8.3","prettier-config-common":"^1.3.0","progress-bar-webpack-plugin":"^2.1.0","reinstaller":"^2.1.0","rimraf":"^4.1.2","rollup":"^3.11.0","rollup-plugin-filesize":"^9.1.2","rollup-plugin-visualizer":"^5.9.0","terser-webpack-plugin":"^5.3.6","ts-jest":"^29.0.5","ts-morph":"^17.0.1","tsnd":"^1.1.0","typedoc":"^0.23.24","typedoc-plugin-markdown":"^3.14.0","typescript":"^4.9.4","webpack":"^5.75.0","webpack-cli":"^5.0.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"peerDependencies":{"axios":"< 1","core-js":">= 3","js-cool":">= 2"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"readme":"<div style=\"text-align: center;\" align=\"center\">\n\n# axios-ex\n\nA integration solution of axios for large enterprise projects. Support request concurrency control & cancel requests & automatic retry & requests times limit, etc.\n\n[![NPM version][npm-image]][npm-url]\n[![Codacy Badge][codacy-image]][codacy-url]\n[![build status][travis-image]][travis-url]\n[![Test coverage][codecov-image]][codecov-url]\n[![npm download][download-image]][download-url]\n[![gzip][gzip-image]][gzip-url]\n[![License][license-image]][license-url]\n\n[![Sonar][sonar-image]][sonar-url]\n\n</div>\n\n<div style=\"text-align: center;\" align=\"center\">\n\n## **For API documentation, see: [API Docs](./docs/modules.md)**\n\n</div>\n\n## Installation\n\n> `axios-ex` comes with the latest version of axios, so you can install it without the `axios` package\n\n```bash\n# use pnpm\n$ pnpm install axios-ex\n\n# use npm\n$ npm install axios-ex --save\n\n# use yarn\n$ yarn add axios-ex\n```\n\n## Usage\n\n### General use\n\n```js\n// {app_root}/src/plugins/axios.js\nimport { getCookie, setCookie } from 'js-cool'\nimport AxiosExtend from 'axios-ex'\n\n/**\n * Set the request header\n *\n * @param {object} instance AxiosInstance\n */\nfunction setHeaders(instance) {\n  instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'\n}\n/**\n * Request Interceptor\n *\n * @param {object} config AxiosRequestConfig\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns AxiosRequestConfig\n */\nfunction onRequest(config, options = {}) {\n  // some codes\n  return config\n}\n/**\n * Execute on request error\n *\n * @param {object} err Error\n */\nfunction onRequestError(err) {\n  console.error(err)\n}\n/**\n * Response Interceptor\n *\n * @param {object} res AxiosResponse<any>\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns Promise<unknown>\n */\nfunction onResponse(res, options = {}) {\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n/**\n * Execute in response error\n *\n * @param {object} err Error\n */\nfunction onResponseError(err) {\n  console.error(err)\n}\n/**\n * Execute on request error & response error\n *\n * @param {object} err Error\n */\nfunction onError(err) {\n  console.error(err)\n}\n/**\n * Request Cancelled\n *\n * @param {object} err Error\n */\nfunction onCancel(err) {\n  console.error(err.message)\n}\n\n// Instantiation\nconst axiosEx = new AxiosExtend({\n  maxConnections: 30, // Maximum number of connections, default: 0, no limit\n  unique: true, // Whether to cancel the previous similar requests, default: false\n  retries: 0, // Number of retries, default: 0, no retries\n  orderly: false, // Whether to return in order, default: true\n  setHeaders, // function for setting request headers\n  onRequest, // Request Interceptor\n  onRequestError, // Execute on request error\n  onResponse, // Response Interceptor\n  onResponseError, // Execute on response error\n  onError, // Execute on request error & response error\n  onCancel // Callback when request is cancelled\n})\n\nexport default options => {\n  // Here set the unique and orderly priority higher than the instantiation configuration\n  options.unique = options.unique ?? false\n  options.orderly = options.orderly ?? false\n  // Here the unique has a higher priority\n  return axiosEx.create(options)\n}\n```\n\n### Define the delay function for failed retries\n\n1. Customize the retry delay time\n\n   ```js\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: retryCount => {\n       return retryCount * 1000\n     }\n     // ...\n   })\n   ```\n\n2. Or use `axios-ex` built-in function, exponentialDelay randomly incremented by 0%-50%\n\n   ```js\n   import AxiosExtend, { exponentialDelay } from 'axios-ex'\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: exponentialDelay\n     // ...\n   })\n   ```\n\n### Using with `vue2.0`\n\nSometimes we need to use `this` (vue instance) inside `onRequest` or `onResponse`, we can use it like this\n\n```js\nimport AxiosExtend from 'axios-ex'\n\nlet axiosEx = null\n// Request Interceptor\nfunction onRequest(config, options = {}) {\n  // this => vueInstance\n  return config\n}\n// Response Interceptor\nfunction onResponse(res, options = {}) {\n  // hide loading\n  if (this instanceof Vue) {\n    this.$loader.hide()\n  }\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n\nexport default options => {\n  // Only need to initialize once\n  if (!axiosEx)\n    axiosEx = new AxiosExtend({\n      onRequest: onRequest.bind(this),\n      onResponse: onResponse.bind(this)\n    })\n\n  // show loading\n  if (this instanceof Vue) {\n    this.$loader.show()\n  }\n  return axiosEx.create(options)\n}\n```\n\n## Support & Issues\n\nPlease open an issue [here](https://github.com/saqqdy/axios-ex/issues).\n\n## License\n\n[MIT](LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/axios-ex.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/axios-ex\n[codacy-image]: https://app.codacy.com/project/badge/Grade/f70d4880e4ad4f40aa970eb9ee9d0696\n[codacy-url]: https://www.codacy.com/gh/saqqdy/axios-ex/dashboard?utm_source=github.com&utm_medium=referral&utm_content=saqqdy/axios-ex&utm_campaign=Badge_Grade\n[travis-image]: https://travis-ci.com/saqqdy/axios-ex.svg?branch=master\n[travis-url]: https://travis-ci.com/saqqdy/axios-ex\n[codecov-image]: https://img.shields.io/codecov/c/github/saqqdy/axios-ex.svg?style=flat-square\n[codecov-url]: https://codecov.io/github/saqqdy/axios-ex?branch=master\n[download-image]: https://img.shields.io/npm/dm/axios-ex.svg?style=flat-square\n[download-url]: https://npmjs.org/package/axios-ex\n[gzip-image]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[gzip-url]: http://img.badgesize.io/https://unpkg.com/axios-ex/lib/index.js?compression=gzip&label=gzip%20size:%20JS\n[license-image]: https://img.shields.io/badge/License-MIT-yellow.svg\n[license-url]: LICENSE\n[sonar-image]: https://sonarcloud.io/api/project_badges/quality_gate?project=saqqdy_axios-ex\n[sonar-url]: https://sonarcloud.io/dashboard?id=saqqdy_axios-ex\n","readmeFilename":"README.md","gitHead":"5d9d522326d843775d1a1409a7566a968b622dac","_id":"axios-ex@2.3.1-beta.2","_nodeVersion":"16.19.0","_npmVersion":"9.2.0","dist":{"integrity":"sha512-YjOpzb8HzWSjzsCNXQdY3xe0n477pL8p/ZyMVfCi9CKYgmZmfKwK49xFE6/jiiOq8wkLk7aslkERBdjMGNZDpw==","shasum":"bd21f85185ac7f7b664551b50f5deca47a6f2626","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.1-beta.2.tgz","fileCount":8,"unpackedSize":66036,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0aFfiNFwI018MQoyduUPLhlxzREgkWJSPyZ7wzQR1pAIhAK+kTTLv9If4L33YkjzD+eivbemODHpwIuVrfGtCka9Z"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1QBSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrqEBAAoEHIjf1dyir0y7Pxanp9xHGCTOSb9CLWuyVmE0TOBGwuqKSA\r\nNCB5goXM54T1KPzvesqd/aQfpDCDI/2JmrJTgozACtAZ+stbVvdxfnxW4Y0Y\r\nEVyQ726Hj4pZgQq9ZnTPaSG/4fEtEyByK8EIvE6OG+LKfAoDVEqblXDY4ULT\r\nES15QQq04i7c2PFfzbLOwVmlm6QPsYjvAyBQt+aa15thHHIqXOk/dBRUoSI9\r\n3+/n2aEqVkAuFHFhyNavdu457tuUxlP+E190PyY5seymhXpzzXlS8kIS0etu\r\nf/G3YLOCSH88S2OtRAjQe78mjM5MZM+wgispJMqQgq720xM4Xf1Q+tG1uga3\r\n8IexpwzofWm3Bdfqym9EM4r0mvHwiFPY8CtTVASmKaqGoewCnr9gu27yygZX\r\nT4eiTsUu48TLWDIsZ2ihq5YouJcQklKUs5sjstcvCm4aTR/o6WdDB/qUPv9j\r\nsFSr2dT3AZZjthNSaaPbRiNS32MGv9xhJUfpQnq2jbxoazOl0Fl9e9jrLw5j\r\neiWQhI8dUi4CRGwOIPHp61KRof7yXll3NlA+jZiCA+Bchp4vQzSvQrTYTPtH\r\n6kIenVifoDd5aqs3o27fBrTn7jUydzopVeKIB0BVcjaQrp6/CqsQgilsz8b4\r\ngqegXiXrBhTGP3JcaKLG0VtU1yiU8luE5cQ=\r\n=qIGf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.1-beta.2_1674903634133_0.521201593845102"},"_hasShrinkwrap":false},"2.3.1":{"name":"axios-ex","description":"A integration solution of axios for large enterprise projects","version":"2.3.1","packageManager":"pnpm@7.26.1","main":"./dist/index.cjs","module":"./dist/index.mjs","unpkg":"./dist/index.min.js","jsdelivr":"./dist/index.min.js","typings":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.cjs","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","es":"es","lib":"lib","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types,docs} roll-types","build:bundle":"rollup -c build/rollup.config.ts --configPlugin @rollup/plugin-typescript","build:umd":"webpack --config build/webpack.config.js","build:types":"tsc --emitDeclarationOnly --outDir temp -p src","build:docs":"rimraf docs && typedoc","roll-types":"api-extractor run && rimraf temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","clean":"rimraf dist","dist":"run-s clean build prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"^0.27.2","core-js":"^3.27.2","is-retry-allowed":"^3.0.0","js-cool":"^2.8.0","regenerator-runtime":"^0.13.11"},"devDependencies":{"@babel/core":"^7.20.12","@babel/preset-env":"^7.20.2","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-ts":"^4.1.0","@microsoft/api-extractor":"^7.34.0","@rollup/plugin-alias":"^4.0.3","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^24.0.1","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.1","@rollup/plugin-terser":"^0.4.0","@rollup/plugin-typescript":"^11.0.0","@types/jest":"^29.4.0","@types/node":"^18.11.18","babel-loader":"^9.1.2","chalk":"^5.2.0","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.17.4","eslint":"^8.32.0","fast-glob":"^3.2.12","jest":"^29.4.1","npm-run-all":"^4.1.5","prettier":"^2.8.3","prettier-config-common":"^1.3.0","progress-bar-webpack-plugin":"^2.1.0","reinstaller":"^2.1.0","rimraf":"^4.1.2","rollup":"^3.11.0","rollup-plugin-filesize":"^9.1.2","rollup-plugin-visualizer":"^5.9.0","terser-webpack-plugin":"^5.3.6","ts-jest":"^29.0.5","ts-morph":"^17.0.1","tsnd":"^1.1.0","typedoc":"^0.23.24","typedoc-plugin-markdown":"^3.14.0","typescript":"^4.9.4","webpack":"^5.75.0","webpack-cli":"^5.0.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"peerDependencies":{"axios":"< 1","core-js":">= 3","js-cool":">= 2"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"gitHead":"e01ff9c5d69875462f2b79d37929f0ca9f9355f7","_id":"axios-ex@2.3.1","_nodeVersion":"16.19.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-I8BBzpVDNTmjgIrMH+dd9MYAeoz7lKL2ofY575Dg+aMjfj/h7bh5TnhxkWSysEOtEaqp42PlGdy8qFJc4YoaMQ==","shasum":"4425134f6caf2b11fb938f8e556779cb42bd72af","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.1.tgz","fileCount":8,"unpackedSize":66246,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDzd+3Ky98rwxMOpZIAX8g3J42kmOcSRN/hknSyWvcPMAiEAgJFdxfYaH0hrVHAjvmhy6YBBtMDsvTtmOoQ8WvTznrE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1QKsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQXw//ZIllm/L58epb1Uy8PZv3dO3Gghl7jkABMvvLwZenkdJbF8l1\r\nc62VZhHgskEGcuqLB7/NuTNNf9aDuN8Wtus9SgkIzhyDDm0a2TSDDNF9UC5t\r\nicglnUyxjXIsZexa1gUc8VMTROjQ9m2MKcy09Dl82bVT0uglCgASgt+e2Trc\r\nS8YyeVqclivr6oBN5yDv4YzuwBqZWkQ2+9dwkKgXgWmOqI/gVBlbpe30pxSX\r\nuXWYy9/xb1T4UsrmzHgq9PKfK5XPoNwslOBG5qzZhGWbq6f7ipOq2/zudKuH\r\njq3Y27iirthlPuqPJsYJg7XdddkM0s8vdeRKCXmrQUtHtrP7BevLt3O9EqRy\r\nroxUkQaN+sU4Vdw+LpfWi73nS4ohH8II4I3c3EBIvG5tGlE9FBAu7lOdpHNR\r\nGG6wYbNZBCX4d6eKM/9iMxHlydc46NdykIUKP2Gv43suI34dwQE1TNY6pUFA\r\nfJEmnkYjkL0yDRRbjlsZrqT9mWonnMGB+iyMBbauAlPiBCkeC+FfGPTZQ6/t\r\npRUqA173Qwp6bq7bclvQ1aYcPL9sAofyt2T0DB6qw82LA4yWkYdqGWUqQRQ+\r\nq26iVJn5oXbuzJH6gn7riGZwVBQUJPTnBSLMlAsCsymqZF9Zk62O/0ioVeUr\r\nFXC5tA8HV0W4UEUt+9sba/lramM29f5Jk1Y=\r\n=uUbx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.1_1674904236691_0.44240334815193183"},"_hasShrinkwrap":false},"2.3.2":{"name":"axios-ex","description":"A integration solution of axios for large enterprise projects","version":"2.3.2","packageManager":"pnpm@7.26.1","main":"./dist/index.cjs","module":"./dist/index.mjs","unpkg":"./dist/index.min.js","jsdelivr":"./dist/index.min.js","typings":"./dist/index.d.ts","exports":{".":{"require":"./dist/index.cjs","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","es":"es","lib":"lib","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types,docs} roll-types","build:bundle":"rollup -c build/rollup.config.ts --configPlugin @rollup/plugin-typescript","build:umd":"webpack --config build/webpack.config.js","build:types":"tsc --emitDeclarationOnly --outDir temp -p src","build:docs":"rimraf docs && typedoc","roll-types":"api-extractor run && rimraf temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","clean":"rimraf dist","dist":"run-s clean build prettier:docs","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\"","prettier:docs":"prettier --write \"**/*.md\""},"dependencies":{"axios":"^0.27.2","core-js":"^3.27.2","is-retry-allowed":"^3.0.0","js-cool":"^2.8.0","regenerator-runtime":"^0.13.11"},"devDependencies":{"@babel/core":"^7.20.12","@babel/preset-env":"^7.20.2","@babel/preset-typescript":"^7.18.6","@eslint-sets/eslint-config-ts":"^4.1.0","@microsoft/api-extractor":"^7.34.0","@rollup/plugin-alias":"^4.0.3","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^24.0.1","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.1","@rollup/plugin-terser":"^0.4.0","@rollup/plugin-typescript":"^11.0.0","@types/jest":"^29.4.0","@types/node":"^18.11.18","babel-loader":"^9.1.2","chalk":"^5.2.0","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.17.4","eslint":"^8.32.0","fast-glob":"^3.2.12","jest":"^29.4.1","npm-run-all":"^4.1.5","prettier":"^2.8.3","prettier-config-common":"^1.3.0","progress-bar-webpack-plugin":"^2.1.0","reinstaller":"^2.1.0","rimraf":"^4.1.2","rollup":"^3.11.0","rollup-plugin-filesize":"^9.1.2","rollup-plugin-visualizer":"^5.9.0","terser-webpack-plugin":"^5.3.6","ts-jest":"^29.0.5","ts-morph":"^17.0.1","tsnd":"^1.1.0","typedoc":"^0.23.24","typedoc-plugin-markdown":"^3.14.0","typescript":"^4.9.4","webpack":"^5.75.0","webpack-cli":"^5.0.1","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0"},"peerDependencies":{"axios":"< 1","core-js":">= 3","js-cool":">= 2"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"gitHead":"e01ff9c5d69875462f2b79d37929f0ca9f9355f7","_id":"axios-ex@2.3.2","_nodeVersion":"16.19.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-Ws1Hnx77UwsO6SMHL4DsTJzACXzrYYO1BIQVTWdBcvqGu7nMxzr1LYhHD9Sr8UDEixlShFNSe3y5hnWyHTveAA==","shasum":"5ad263b0e1139bfdb78411178d1331a6d757fd33","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.3.2.tgz","fileCount":8,"unpackedSize":66247,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDDzBXFq1/KqCsLOMDiKj5KIgIXwtjbM/rIx6kfO7MYaAiEAlxmuwgW2de8i/AwvT7QpEUyZN3Rs9AN0lVuPpp5ivvc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkHX9OACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrIKxAAlWRXxA6nC/XQHlYX5Nc2UFsmJlm2JSOAnOt2f2yNbxPosh5T\r\nmA//rwtD7cHAsv6Gqa06gX7MWXUip3+P6/TJTQ+f/3CsvBGOw8KVnsxsXddt\r\nezHac7wcQXorju4B6MNhJJd1f7i5T3RoUICuQDkhg7VEPDBf2I3/URjv7yMx\r\nQpyFRpI2ig6eE+tZr6ds4yMasvFmTms2I9LMAPhkHwyBp91i9DsdyFWo+fOp\r\neMIVZBJOunqE42HAjj7m/uEBVFwVzJGtVoNpvnYPYpB7PTaqM1Lji05DWsoA\r\n+MsIkoPu4YLWqmD3RN1x2KqmYKxL2mNUYymhK3gHdP0Sgw/hs/+qfCbYMVZE\r\nXGYZYhskQ328Jebk1gssUO5YwiSxRB6O+Ijyt2px22tX340S2DXfwHLBFolV\r\nlo1e/vZOgZsfW2x014n2/WAUsD0HPU6QCj9HfNmkjS5z20pjh2VSDsOCzl3w\r\nY4aln/ygu20Ca7SGhzW5lh9RtWqPK687yAzdXntErh1pbxOl9Vf35F3NpWkb\r\nUpmtgWV3CiJXoSzaHj8UH2sBUc6tT6Ht0nnFYISKLjSUmlolcz2SE9hzseLS\r\nfJxZVS+/5T7OqqaVtNI/amqFPdGlAuYMbqhJnzsZtN8U7SFR5HLnbFeg8okL\r\nkdPdR+c52k7zCfVLd82pcxAl4Hbivc/EXmg=\r\n=Ka4v\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.3.2_1679654734032_0.6652719181820568"},"_hasShrinkwrap":false},"2.4.0":{"name":"axios-ex","description":"A integration solution of axios for large enterprise projects","version":"2.4.0","packageManager":"pnpm@8.6.0","main":"dist/index.cjs.js","module":"dist/index.esm-bundler.js","browser":"dist/index.esm-browser.js","unpkg":"dist/index.global.js","jsdelivr":"dist/index.global.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","module":"./dist/index.esm-bundler.js","require":"./dist/index.cjs.js","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types}","build:bundle":"rollup -c build/rollup.config.ts --configPlugin @rollup/plugin-typescript","build:types":"tsc -p src/tsconfig.json && pnpm roll-types","build:docs":"rm-all docs && typedoc && prettier --write \"**/*.md\"","deploy":"sh scripts/deploy.sh","roll-types":"api-extractor run && rm-all temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","workflow:publish-test":"zx scripts/workflow.mjs","clean":"rm-all dist es lib","dist":"run-s eslint prettier build","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\""},"dependencies":{"axios":"^0.27.2","is-retry-allowed":"^3.0.0","js-cool":"^4.4.0"},"devDependencies":{"@babel/core":"^7.22.1","@babel/preset-env":"^7.22.4","@babel/preset-typescript":"^7.21.5","@eslint-sets/eslint-config-ts":"^5.3.0","@microsoft/api-extractor":"^7.35.1","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.2","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-typescript":"^11.1.1","@types/jest":"^29.5.1","@types/node":"^20.2.5","chalk":"^5.2.0","core-js":"^3.30.2","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.17.19","eslint":"^8.41.0","fast-glob":"^3.2.12","jest":"^29.5.0","load-yml":"^1.3.0","npm-run-all":"^4.1.5","prettier":"^2.8.8","prettier-config-common":"^1.4.0","reinstaller":"^3.0.0","rm-all":"^1.0.0","rollup":"^3.23.0","rollup-plugin-filesize":"^10.0.0","rollup-plugin-inject-code":"^1.1.0","rollup-plugin-visualizer":"^5.9.0","ts-jest":"^29.1.0","ts-morph":"^18.0.0","tsnd":"^1.1.0","typedoc":"^0.24.7","typedoc-plugin-markdown":"^3.15.3","typescript":"^5.0.4","zx":"^7.2.2"},"peerDependencies":{"axios":"< 1"},"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"gitHead":"00133b511c7da0a180d046a45281bb079d8810e6","_id":"axios-ex@2.4.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-ex3VL9gqdNoUUuEj9D47pc+uTwGf9Ttl/mwvFQpzlInzs37IJ+TtVvT2vj30thyJfaHIwEf23okoQS1RmlUvmg==","shasum":"d16684ae2a14de9dfdd8e522dab1a2820c13e15e","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.4.0.tgz","fileCount":11,"unpackedSize":142449,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHyCQjSf7UnZp6vCMJsOQhUMo3qN8+D1hmQf8BasUtjMAiEAhkeEqLaAzMzXbwMi6bTu97ZrBAQsD3x7baANqSpEBTA="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.4.0_1685425425444_0.5853505706546438"},"_hasShrinkwrap":false},"2.5.0-beta.1":{"name":"axios-ex","description":"A integration solution of axios for large enterprise projects","version":"2.5.0-beta.1","packageManager":"pnpm@8.6.0","main":"dist/index.cjs.js","module":"dist/index.esm-bundler.js","browser":"dist/index.esm-browser.js","unpkg":"dist/index.global.prod.js","jsdelivr":"dist/index.global.prod.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","module":"./dist/index.esm-bundler.js","require":"./dist/index.cjs.js","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types}","build:bundle":"tscjs scripts/build","build:types":"tsc -p src/tsconfig.json && pnpm roll-types","build:docs":"rm-all docs && typedoc && prettier --write \"**/*.md\"","deploy":"sh scripts/deploy.sh","roll-types":"api-extractor run && rm-all temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","workflow:publish-test":"zx scripts/workflow.mjs","clean":"rm-all dist es lib","dist":"run-s eslint prettier build","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\""},"dependencies":{"axios":"^0.27.2","is-retry-allowed":"^3.0.0","js-cool":"^5.1.0","tslib":"^2.6.0"},"devDependencies":{"@babel/core":"^7.22.8","@babel/preset-env":"^7.22.7","@babel/preset-typescript":"^7.22.5","@eslint-sets/eslint-config-ts":"^5.6.1","@microsoft/api-extractor":"^7.36.1","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^25.0.2","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.1.0","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-typescript":"^11.1.2","@types/jest":"^29.5.3","@types/node":"^20.4.1","chalk":"^5.3.0","core-js":"^3.31.1","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.18.11","eslint":"^8.44.0","fast-glob":"^3.3.0","jest":"^29.6.1","load-yml":"^1.3.0","npm-run-all":"^4.1.5","prettier":"^2.8.8","prettier-config-common":"^1.4.0","reinstaller":"^3.0.2","rm-all":"^1.1.1","rollup":"^3.26.2","rollup-plugin-filesize":"^10.0.0","rollup-plugin-inject-code":"^1.1.0","rollup-plugin-visualizer":"^5.9.2","ts-jest":"^29.1.1","ts-morph":"^19.0.0","tsnd":"^1.1.0","typedoc":"^0.24.8","typedoc-plugin-markdown":"^3.15.3","typescript":"^5.1.6","zx":"^7.2.3"},"peerDependencies":{"axios":"< 1"},"sideEffects":false,"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"readme":"<div style=\"text-align: center;\" align=\"center\">\n\n# axios-ex\n\nA integration solution of axios for large enterprise projects. Support request concurrency control & cancel requests & automatic retry & requests times limit, etc.\n\n[![NPM version][npm-image]][npm-url]\n[![Codacy Badge][codacy-image]][codacy-url]\n[![Test coverage][codecov-image]][codecov-url]\n[![npm download][download-image]][download-url]\n[![gzip][gzip-image]][gzip-url]\n[![License][license-image]][license-url]\n\n[![Sonar][sonar-image]][sonar-url]\n\n</div>\n\n<div style=\"text-align: center;\" align=\"center\">\n\n### **[Documentation](https://www.saqqdy.com/axios-ex)** • **[Change Log](./CHANGELOG.md)**\n\n**Read this in other languages: English | [简体中文](./README-zh_CN.md)**\n\n</div>\n\n## Installation\n\n> `axios-ex` comes with the latest version of axios, so you can install it without the `axios` package\n\n```bash\n# use pnpm\n$ pnpm install axios-ex\n\n# use npm\n$ npm install axios-ex --save\n\n# use yarn\n$ yarn add axios-ex\n```\n\n## Usage\n\n### General use\n\n```js\n// {app_root}/src/plugins/axios.js\nimport { getCookie, setCookie } from 'js-cool'\nimport AxiosExtend from 'axios-ex'\n\n/**\n * Set the request header\n *\n * @param {object} instance AxiosInstance\n */\nfunction setHeaders(instance) {\n  instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'\n}\n/**\n * Request Interceptor\n *\n * @param {object} config AxiosRequestConfig\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns AxiosRequestConfig\n */\nfunction onRequest(config, options = {}) {\n  // some codes\n  return config\n}\n/**\n * Execute on request error\n *\n * @param {object} err Error\n */\nfunction onRequestError(err) {\n  console.error(err)\n}\n/**\n * Response Interceptor\n *\n * @param {object} res AxiosResponse<any>\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns Promise<unknown>\n */\nfunction onResponse(res, options = {}) {\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n/**\n * Execute in response error\n *\n * @param {object} err Error\n */\nfunction onResponseError(err) {\n  console.error(err)\n}\n/**\n * Execute on request error & response error\n *\n * @param {object} err Error\n */\nfunction onError(err) {\n  console.error(err)\n}\n/**\n * Request Cancelled\n *\n * @param {object} err Error\n */\nfunction onCancel(err) {\n  console.error(err.message)\n}\n\n// Instantiation\nconst axiosEx = new AxiosExtend({\n  maxConnections: 30, // Maximum number of connections, default: 0, no limit\n  unique: true, // Whether to cancel the previous similar requests, default: false\n  retries: 0, // Number of retries, default: 0, no retries\n  orderly: false, // Whether to return in order, default: true\n  setHeaders, // function for setting request headers\n  onRequest, // Request Interceptor\n  onRequestError, // Execute on request error\n  onResponse, // Response Interceptor\n  onResponseError, // Execute on response error\n  onError, // Execute on request error & response error\n  onCancel // Callback when request is cancelled\n})\n\nexport default options => {\n  // Here set the unique and orderly priority higher than the instantiation configuration\n  options.unique = options.unique ?? false\n  options.orderly = options.orderly ?? false\n  // Here the unique has a higher priority\n  return axiosEx.create(options)\n}\n```\n\n### Define the delay function for failed retries\n\n1. Customize the retry delay time\n\n   ```js\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: retryCount => {\n       return retryCount * 1000\n     }\n     // ...\n   })\n   ```\n\n2. Or use `axios-ex` built-in function, exponentialDelay randomly incremented by 0%-50%\n\n   ```js\n   import AxiosExtend, { exponentialDelay } from 'axios-ex'\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: exponentialDelay\n     // ...\n   })\n   ```\n\n### Using with `vue2.0`\n\nSometimes we need to use `this` (vue instance) inside `onRequest` or `onResponse`, we can use it like this\n\n```js\nimport AxiosExtend from 'axios-ex'\n\nlet axiosEx = null\n// Request Interceptor\nfunction onRequest(config, options = {}) {\n  // this => vueInstance\n  return config\n}\n// Response Interceptor\nfunction onResponse(res, options = {}) {\n  // hide loading\n  if (this instanceof Vue) {\n    this.$loader.hide()\n  }\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n\nexport default options => {\n  // Only need to initialize once\n  if (!axiosEx)\n    axiosEx = new AxiosExtend({\n      onRequest: onRequest.bind(this),\n      onResponse: onResponse.bind(this)\n    })\n\n  // show loading\n  if (this instanceof Vue) {\n    this.$loader.show()\n  }\n  return axiosEx.create(options)\n}\n```\n\n### Using unpkg CDN\n\n```html\n<script src=\"https://unpkg.com/axios-ex@2.4.0/dist/index.global.prod.js\"></script>\n```\n\n## Support & Issues\n\nPlease open an issue [here](https://github.com/saqqdy/axios-ex/issues).\n\n## License\n\n[MIT](LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/axios-ex.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/axios-ex\n[codacy-image]: https://app.codacy.com/project/badge/Grade/f70d4880e4ad4f40aa970eb9ee9d0696\n[codacy-url]: https://www.codacy.com/gh/saqqdy/axios-ex/dashboard?utm_source=github.com&utm_medium=referral&utm_content=saqqdy/axios-ex&utm_campaign=Badge_Grade\n[codecov-image]: https://img.shields.io/codecov/c/github/saqqdy/axios-ex.svg?style=flat-square\n[codecov-url]: https://codecov.io/github/saqqdy/axios-ex?branch=master\n[download-image]: https://img.shields.io/npm/dm/axios-ex.svg?style=flat-square\n[download-url]: https://npmjs.org/package/axios-ex\n[gzip-image]: http://img.badgesize.io/https://unpkg.com/axios-ex/dist/index.global.prod.js?compression=gzip&label=gzip%20size:%20JS\n[gzip-url]: http://img.badgesize.io/https://unpkg.com/axios-ex/dist/index.global.prod.js?compression=gzip&label=gzip%20size:%20JS\n[license-image]: https://img.shields.io/badge/License-MIT-blue.svg\n[license-url]: LICENSE\n[sonar-image]: https://sonarcloud.io/api/project_badges/quality_gate?project=saqqdy_axios-ex\n[sonar-url]: https://sonarcloud.io/dashboard?id=saqqdy_axios-ex\n","readmeFilename":"README.md","gitHead":"a5f9f2720eb7ab1d3fc155a9c1ff9253b4cf6df1","_id":"axios-ex@2.5.0-beta.1","_nodeVersion":"18.16.1","_npmVersion":"9.5.1","dist":{"integrity":"sha512-OQ035Ob+bxYPdBi9tKIJMz0dURmEYeWYJFgG9ydK9p1cnNEgtg20aBVrrFGBXDq34bhY4i1TyPpDTs4QWPAwqQ==","shasum":"0893ab97b0b20804e764c752cfc1575e72c9ba54","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.5.0-beta.1.tgz","fileCount":11,"unpackedSize":128278,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICr73sx9O2G9afeOU5pAzx5W3QX20cFJ6udJw+96omlmAiEAq4JFP43epxH1vFHUvk7fBSuGvS/aWwBNClL14XXywYk="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.5.0-beta.1_1689479226295_0.7041752762556108"},"_hasShrinkwrap":false},"2.5.0":{"name":"axios-ex","description":"A integration solution of axios for large enterprise projects","version":"2.5.0","packageManager":"pnpm@8.6.0","main":"dist/index.cjs.js","module":"dist/index.esm-bundler.js","browser":"dist/index.esm-browser.js","unpkg":"dist/index.global.prod.js","jsdelivr":"dist/index.global.prod.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","module":"./dist/index.esm-bundler.js","require":"./dist/index.cjs.js","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types}","build:bundle":"tscjs scripts/build","build:types":"tsc -p src/tsconfig.json && pnpm roll-types","build:docs":"rm-all docs && typedoc && prettier --write \"**/*.md\"","deploy":"sh scripts/deploy.sh","roll-types":"api-extractor run && rm-all temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","workflow:publish-test":"zx scripts/workflow.mjs","clean":"rm-all dist es lib","dist":"run-s eslint prettier build","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\""},"dependencies":{"axios":"^0.27.2","is-retry-allowed":"^3.0.0","js-cool":"^5.1.0","tslib":"^2.6.0"},"devDependencies":{"@babel/core":"^7.22.8","@babel/preset-env":"^7.22.7","@babel/preset-typescript":"^7.22.5","@eslint-sets/eslint-config-ts":"^5.6.1","@microsoft/api-extractor":"^7.36.1","@rollup/plugin-babel":"^6.0.3","@rollup/plugin-commonjs":"^25.0.2","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.1.0","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-typescript":"^11.1.2","@types/jest":"^29.5.3","@types/node":"^20.4.1","chalk":"^5.3.0","core-js":"^3.31.1","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.18.11","eslint":"^8.44.0","fast-glob":"^3.3.0","jest":"^29.6.1","load-yml":"^1.3.0","npm-run-all":"^4.1.5","prettier":"^2.8.8","prettier-config-common":"^1.4.0","reinstaller":"^3.0.2","rm-all":"^1.1.1","rollup":"^3.26.2","rollup-plugin-filesize":"^10.0.0","rollup-plugin-inject-code":"^1.1.0","rollup-plugin-visualizer":"^5.9.2","ts-jest":"^29.1.1","ts-morph":"^19.0.0","tsnd":"^1.1.0","typedoc":"^0.24.8","typedoc-plugin-markdown":"^3.15.3","typescript":"^5.1.6","zx":"^7.2.3"},"peerDependencies":{"axios":"< 1"},"sideEffects":false,"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"gitHead":"af81be57c0a3f055cfab0754f9c2de2f9b8caacd","_id":"axios-ex@2.5.0","_nodeVersion":"18.16.1","_npmVersion":"9.5.1","dist":{"integrity":"sha512-+INQSUYMR1ujaMD3f0Pjfyykh96kd/tb8FYuWY/MM9TLwcFYofHdmQZct3bMRXT44mf+/yqAcA5ADlVrjemuHQ==","shasum":"52fdc05b8074f04e895567e8ff5066ae77d55419","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.5.0.tgz","fileCount":11,"unpackedSize":128166,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBkabJhbtBoI7fQj51ZUxYHmYJdJ3EDX7VgXAQIQhIUxAiEArWP6QL6RfwKgg5SFYzRKDksvK06kHDod++V5fknExYo="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.5.0_1689568768098_0.11885174714733493"},"_hasShrinkwrap":false},"2.6.0":{"name":"axios-ex","description":"A integration solution of axios for large enterprise projects","version":"2.6.0","packageManager":"pnpm@8.9.0","main":"dist/index.cjs.js","module":"dist/index.esm-bundler.js","browser":"dist/index.esm-browser.js","unpkg":"dist/index.global.prod.js","jsdelivr":"dist/index.global.prod.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","module":"./dist/index.esm-bundler.js","require":"./dist/index.cjs.js","import":"./dist/index.mjs"},"./*":"./*"},"directories":{"dist":"dist","src":"src"},"scripts":{"build":"run-s clean build:{bundle,types}","build:bundle":"tscjs scripts/build","build:types":"tsc -p src/tsconfig.json && pnpm roll-types","build:docs":"rm-all docs && typedoc && prettier --write \"**/*.md\"","deploy":"sh scripts/deploy.sh","roll-types":"api-extractor run && rm-all temp","watch":"pnpm build:bundle -w","pub":"tscjs scripts/publish","unpub":"tscjs scripts/unpublish","sync":"tscjs scripts/sync","workflow:publish-test":"zx scripts/workflow.mjs","clean":"rm-all dist es lib","dist":"run-s eslint prettier build","test-unit":"jest --filter ./scripts/filter-unit.js","jest":"cross-env NODE_OPTIONS=--experimental-vm-modules npx jest --coverage","coveralls":"cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js","eslint":"eslint --fix .","prettier":"prettier --write \"**/*.{js,ts,jsx,tsx,yml,json,md}\""},"dependencies":{"axios":"^0.27.2","is-retry-allowed":"^3.0.0","js-cool":"^5.11.0","tslib":"^2.6.2"},"devDependencies":{"@babel/core":"^7.23.0","@babel/preset-env":"^7.22.20","@babel/preset-typescript":"^7.23.0","@eslint-sets/eslint-config-ts":"^5.9.0","@microsoft/api-extractor":"^7.38.0","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-commonjs":"^25.0.5","@rollup/plugin-json":"^6.0.1","@rollup/plugin-node-resolve":"^15.2.3","@rollup/plugin-terser":"^0.4.4","@rollup/plugin-typescript":"^11.1.5","@types/jest":"^29.5.5","@types/node":"^20.8.4","chalk":"^5.3.0","core-js":"^3.33.0","coveralls":"^3.1.1","cross-env":"^7.0.3","esbuild":"^0.19.4","eslint":"^8.51.0","fast-glob":"^3.3.1","jest":"^29.7.0","load-yml":"^1.4.0","npm-run-all":"^4.1.5","prettier":"^3.0.3","prettier-config-common":"^1.4.0","reinstaller":"^3.0.2","rm-all":"^1.1.1","rollup":"^4.0.2","rollup-plugin-filesize":"^10.0.0","rollup-plugin-inject-code":"^1.1.0","rollup-plugin-visualizer":"^5.9.2","ts-jest":"^29.1.1","ts-morph":"^20.0.0","tsnd":"^1.1.0","typedoc":"^0.25.2","typedoc-plugin-markdown":"^3.16.0","typescript":"^5.2.2","zx":"^7.2.3"},"peerDependencies":{"axios":"< 1"},"sideEffects":false,"pnpm":{"peerDependencyRules":{"ignoreMissing":["tslib","webpack"],"allowedVersions":{"eslint":"^8.0.0"}}},"keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"license":"MIT","author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"homepage":"https://github.com/saqqdy/axios-ex#readme","bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"_id":"axios-ex@2.6.0","gitHead":"cad1587b5dae19fdd589a3abdb809c6ccb4a05e1","_nodeVersion":"18.18.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-YaxENahfJWjl8+dnwHaQFnJVsyzqWGJm4/p5Mhjq+4YpdzIJQim3phRctbissbCxjO/hkRNuoLe0E8AVfYss/w==","shasum":"961e024b9b20913bd03a71540eaa896914d913b3","tarball":"https://registry.npmjs.org/axios-ex/-/axios-ex-2.6.0.tgz","fileCount":11,"unpackedSize":129220,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBxrLvog1R6Gkid6SQbNQnEM8+qP8Mq1KjeCb7NWEEuyAiEA8JSWJuLL4vHr27fFpU45RdRy8W0Sw6utYhHBmgkbpdA="}]},"_npmUser":{"name":"saqqdy","email":"saqqdy@qq.com"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/axios-ex_2.6.0_1696912750405_0.5552789553145565"},"_hasShrinkwrap":false}},"time":{"created":"2021-01-23T06:32:33.199Z","1.0.0":"2021-01-23T06:32:33.329Z","modified":"2023-10-10T04:39:10.873Z","2.0.0":"2021-09-10T11:13:35.091Z","2.1.0":"2021-09-11T08:32:31.345Z","2.1.1":"2021-09-11T09:41:18.984Z","2.2.0":"2021-09-11T17:42:10.558Z","2.2.1":"2021-09-14T05:33:04.698Z","2.2.2":"2021-09-21T07:14:30.928Z","2.2.3":"2021-09-25T07:03:47.183Z","2.2.4":"2021-11-18T04:52:43.746Z","2.3.0-beta.1":"2022-07-30T14:36:26.524Z","2.3.0-beta.2":"2022-07-30T16:32:13.141Z","2.3.0-beta.3":"2022-08-03T15:28:11.832Z","2.3.0-beta.4":"2022-08-03T15:28:53.732Z","2.3.0-beta.5":"2022-12-30T10:47:26.268Z","2.3.0":"2022-12-30T11:06:19.476Z","2.2.5":"2023-01-09T09:17:39.807Z","2.3.1-beta.1":"2023-01-28T10:37:14.565Z","2.3.1-beta.2":"2023-01-28T11:00:34.283Z","2.3.1":"2023-01-28T11:10:36.881Z","2.3.2":"2023-03-24T10:45:34.216Z","2.4.0":"2023-05-30T05:43:45.603Z","2.5.0-beta.1":"2023-07-16T03:47:06.482Z","2.5.0":"2023-07-17T04:39:28.333Z","2.6.0":"2023-10-10T04:39:10.698Z"},"maintainers":[{"name":"saqqdy","email":"saqqdy@qq.com"}],"description":"A integration solution of axios for large enterprise projects","homepage":"https://github.com/saqqdy/axios-ex#readme","keywords":["axios","plugin","extension","Promise","axios-ex","axios-plugin","axios-extend","saqqdy"],"repository":{"type":"git","url":"git+https://github.com/saqqdy/axios-ex.git"},"author":{"name":"saqqdy","email":"https://github.com/saqqdy"},"bugs":{"url":"https://github.com/saqqdy/axios-ex/issues"},"license":"MIT","readme":"<div style=\"text-align: center;\" align=\"center\">\n\n# axios-ex\n\nA integration solution of axios for large enterprise projects. Support request concurrency control & cancel requests & automatic retry & requests times limit, etc.\n\n[![NPM version][npm-image]][npm-url]\n[![Codacy Badge][codacy-image]][codacy-url]\n[![Test coverage][codecov-image]][codecov-url]\n[![npm download][download-image]][download-url]\n[![gzip][gzip-image]][gzip-url]\n[![License][license-image]][license-url]\n\n[![Sonar][sonar-image]][sonar-url]\n\n</div>\n\n<div style=\"text-align: center;\" align=\"center\">\n\n### **[Documentation](https://www.saqqdy.com/axios-ex)** • **[Change Log](./CHANGELOG.md)**\n\n**Read this in other languages: English | [简体中文](./README-zh_CN.md)**\n\n</div>\n\n## Installation\n\n> `axios-ex` comes with the latest version of axios, so you can install it without the `axios` package\n\n```bash\n# use pnpm\n$ pnpm install axios-ex\n\n# use npm\n$ npm install axios-ex --save\n\n# use yarn\n$ yarn add axios-ex\n```\n\n## Usage\n\n### General use\n\n```js\n// {app_root}/src/plugins/axios.js\nimport { getCookie, setCookie } from 'js-cool'\nimport AxiosExtend from 'axios-ex'\n\n/**\n * Set the request header\n *\n * @param {object} instance AxiosInstance\n */\nfunction setHeaders(instance) {\n  instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'\n}\n/**\n * Request Interceptor\n *\n * @param {object} config AxiosRequestConfig\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns AxiosRequestConfig\n */\nfunction onRequest(config, options = {}) {\n  // some codes\n  return config\n}\n/**\n * Execute on request error\n *\n * @param {object} err Error\n */\nfunction onRequestError(err) {\n  console.error(err)\n}\n/**\n * Response Interceptor\n *\n * @param {object} res AxiosResponse<any>\n * @param {object} options request options AxiosExtendRequestOptions\n * @returns Promise<unknown>\n */\nfunction onResponse(res, options = {}) {\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n/**\n * Execute in response error\n *\n * @param {object} err Error\n */\nfunction onResponseError(err) {\n  console.error(err)\n}\n/**\n * Execute on request error & response error\n *\n * @param {object} err Error\n */\nfunction onError(err) {\n  console.error(err)\n}\n/**\n * Request Cancelled\n *\n * @param {object} err Error\n */\nfunction onCancel(err) {\n  console.error(err.message)\n}\n\n// Instantiation\nconst axiosEx = new AxiosExtend({\n  unique: true, // Whether to cancel the previous similar requests, default: false\n  retries: 0, // Number of retries, default: 0, no retries\n  orderly: false, // Whether to return in order, default: true\n  setHeaders, // function for setting request headers\n  onRequest, // Request Interceptor\n  onRequestError, // Execute on request error\n  onResponse, // Response Interceptor\n  onResponseError, // Execute on response error\n  onError, // Execute on request error & response error\n  onCancel // Callback when request is cancelled\n})\n\nexport default options => {\n  // Here set the unique and orderly priority higher than the instantiation configuration\n  options.unique = options.unique ?? false\n  options.orderly = options.orderly ?? false\n  // Here the unique has a higher priority\n  return axiosEx.create(options)\n}\n```\n\n### Define the delay function for failed retries\n\n1. Customize the retry delay time\n\n   ```js\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: retryCount => {\n       return retryCount * 1000\n     }\n     // ...\n   })\n   ```\n\n2. Or use `axios-ex` built-in function, exponentialDelay randomly incremented by 0%-50%\n\n   ```js\n   import AxiosExtend, { exponentialDelay } from 'axios-ex'\n   // Configuration when instantiating\n   const axiosEx = new AxiosExtend({\n     // ...\n     retryDelay: exponentialDelay\n     // ...\n   })\n   ```\n\n### Using with `vue2.0`\n\nSometimes we need to use `this` (vue instance) inside `onRequest` or `onResponse`, we can use it like this\n\n```js\nimport AxiosExtend from 'axios-ex'\n\nlet axiosEx = null\n// Request Interceptor\nfunction onRequest(config, options = {}) {\n  // this => vueInstance\n  return config\n}\n// Response Interceptor\nfunction onResponse(res, options = {}) {\n  // hide loading\n  if (this instanceof Vue) {\n    this.$loader.hide()\n  }\n  if (res.data.success) return res.data\n  return Promise.reject(res.data)\n}\n\nexport default options => {\n  // Only need to initialize once\n  if (!axiosEx)\n    axiosEx = new AxiosExtend({\n      onRequest: onRequest.bind(this),\n      onResponse: onResponse.bind(this)\n    })\n\n  // show loading\n  if (this instanceof Vue) {\n    this.$loader.show()\n  }\n  return axiosEx.create(options)\n}\n```\n\n### Using unpkg CDN\n\n```html\n<script src=\"https://unpkg.com/axios-ex@2.4.0/dist/index.global.prod.js\"></script>\n```\n\n## Support & Issues\n\nPlease open an issue [here](https://github.com/saqqdy/axios-ex/issues).\n\n## License\n\n[MIT](LICENSE)\n\n[npm-image]: https://img.shields.io/npm/v/axios-ex.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/axios-ex\n[codacy-image]: https://app.codacy.com/project/badge/Grade/f70d4880e4ad4f40aa970eb9ee9d0696\n[codacy-url]: https://www.codacy.com/gh/saqqdy/axios-ex/dashboard?utm_source=github.com&utm_medium=referral&utm_content=saqqdy/axios-ex&utm_campaign=Badge_Grade\n[codecov-image]: https://img.shields.io/codecov/c/github/saqqdy/axios-ex.svg?style=flat-square\n[codecov-url]: https://codecov.io/github/saqqdy/axios-ex?branch=master\n[download-image]: https://img.shields.io/npm/dm/axios-ex.svg?style=flat-square\n[download-url]: https://npmjs.org/package/axios-ex\n[gzip-image]: http://img.badgesize.io/https://unpkg.com/axios-ex/dist/index.global.prod.js?compression=gzip&label=gzip%20size:%20JS\n[gzip-url]: http://img.badgesize.io/https://unpkg.com/axios-ex/dist/index.global.prod.js?compression=gzip&label=gzip%20size:%20JS\n[license-image]: https://img.shields.io/badge/License-MIT-blue.svg\n[license-url]: LICENSE\n[sonar-image]: https://sonarcloud.io/api/project_badges/quality_gate?project=saqqdy_axios-ex\n[sonar-url]: https://sonarcloud.io/dashboard?id=saqqdy_axios-ex\n","readmeFilename":"README.md"}