{"_id":"micro-ftch","_rev":"14-b456be11c91a9549581f110e271b6f10","name":"micro-ftch","dist-tags":{"latest":"1.2.1"},"versions":{"0.1.1":{"name":"micro-ftch","version":"0.1.1","keywords":["fetch","http","https","node","browser","ajax","request"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.1.1","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"dist":{"shasum":"99c560aaba661ed882fe0b1039391b69791e4da6","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.1.1.tgz","fileCount":5,"integrity":"sha512-Jcq7ZwSgzwnLGN8hHNgEcJQ3oFr976+efmQ9BMwsbxeGFGWd6t6LFrzT8YlpNftjajVmmwtqbR/u8Yjkuwo15A==","signatures":[{"sig":"MEQCIFhwV7Rk/IWNnFk3aHQFdYebHEEDVpkvT4Hj+z9es9E5AiAUqsuN/+qs+gcONU+8WPzZX1zYYJAwOzc8c8QPaHF8rQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5255,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe80GUCRA9TVsSAnZWagAAU3EP/RbMzcfdiKhge73MGwrf\nGP790zm5XEwyxz1bX7CthB3gExMf4NNeGKuQ3ElIHd7msWH65ueDS4/jldcE\n9GqVR2ZBPsv3M1WvzSUC0u6hUqgQQtW+FMmHHatbx1Wa6baLtFFh5SQyJsxD\nzDJARCJM98kcL90cjWw75zd7Kav4Xz0d7iIAKv6kFVGoUYUaVvYvCKQUrJa6\nGwB00BoEg/hBXDBBQuvIy+Ya1tB4h78VZe5rEBdf8NgZ2lbGXrYAQPCCRTkk\nyiUGI6QZtdt9RGNm5PbLB8UBqUvewNU1AU38wAI2VXBVsrFOee+/9C6R+ia6\nwm5O0GhfMovSLLEQf4zo147zjyGtbePYj27ZzMPogD5/oi5pZ2C00OtLLDiN\nk8IzEsI8/dr8ArbA9P6IHSqZpRh0iClWHqWjCnYBSdJON2CyagYTfqEVMObY\nyy/ceCZbklHadpkjcsOgrvjG5YdNqWpOCZ5blZMCBhm3olzezBQ2sTsMfl5r\n6eeAyenJwYdykEo22Xur+rgenBDlWn3NQjjNOXvNVHYQtTBav01fv+5g/7Fr\nifraeCJd856FieBqH1hX/PUnpSRO7Y4rIlA6KCTxlmhe3KW+xGUAjndhd2dX\nPWFZnrssjsNMXJl0n9S/3YuGMYj8C6ErCwHRdPhfL4+zc2KUUjsY00nRAWk9\nbQLA\r\n=HWs9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"9bc2694d1329a62142805961afd210be738e4a15","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc -d"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"_npmVersion":"6.14.5","description":"Wraps nodejs built-in modules and browser fetch into one function.","directories":{},"_nodeVersion":"14.2.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.9.5","@types/node":"^14.0.14"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.1.1_1593000340430_0.7967527946119359","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"micro-ftch","version":"0.2.0","keywords":["fetch","http","https","node","browser","ajax","request"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.2.0","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"dist":{"shasum":"67b2a4138c066328ed8765c2adf5f84b93e8b85d","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.2.0.tgz","fileCount":5,"integrity":"sha512-WEWd4lYSlKNwqaOla9MP8XG/F78wW3m4fXdyOQUKrNKIhG4LF0Z2JBbJdwVTO3+xOdO5LcOmXV3t1aPnjs28UQ==","signatures":[{"sig":"MEUCIDYxp5BZhKo41kf2f0GQLVe8GTSKURjPc1ygkEUXSd2TAiEA6a6SUNCRG4nY/JmiJxq29+4aIkEfbpm21R3R+kUbzoo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":8147,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguukuCRA9TVsSAnZWagAAYiYQAIsE0zCLnx7aCNR4hxeo\nHC5Z77HhT1uOEEdH3zbSs3Aw6jPa+l3rVyqY6cOjrKsaao7YbFTiQMGKLzFQ\nedo64iX553LnhbmVuTdJg9ztNJu/0Nk8FnE49DK7NFGuTUxFRRQx0QMTWuZW\nn9qZujfxel5Zu6a55X4oxgfKiSC3XvT/vHc7Gm6X3GTyLD6I1JaUgFnGbzZw\nc+Ue5oX45FqbQRx5yQ8WnXU/pwonMYixBV5d3kw+1pItph8ndp6GBVPn9WWy\nDjDLw5AswzXK0X7sJgYPCFDo/PvklS1XWfeAE2kY6jckGpXuSQsBcDvKf0BH\nyFIsCJxI5BOCgAqBY5R6xciA6iVdgvrLQCT19CBmG1bkmlvEn4mq1igeoME0\nvyOz5HqUk9sjd4P0i3WlvfF73DgoM0RAtcVDOhZZprpJJZHoKMBKD+97oyPD\nbQuRmeXY294pDpS2EZl4dBPc6Fw3xCOZiL0jr70HUMwiriNLZQNG7nDQBT/H\nkytOXjhSc55HNDz/UVAKeagmlxIpkaxGlocIG6Fopn77b/Vr8J/G0WTx0eoY\nzqsEoVy663ykuhuyO6Fl773zwbx5ah3vC9mA99hjekGHzrosbkeP0iK0IAK+\n9FZZi/sVAFGKUT2gsUkQqqJsGfoB/JUUUHmGfDJyRjCryzyNEuBJN7VPqJ+Q\nQVko\r\n=MXo4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"5d11ff5b010948050685c95729d8deaff04c27e0","scripts":{"test":"node test/node.js","bench":"node test/bench.js","build":"tsc -d"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"_npmVersion":"7.16.0","description":"Wraps nodejs built-in modules and browser fetch into one function.","directories":{},"_nodeVersion":"16.2.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^4.3.2","@types/node":"^14.0.14"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.2.0_1622862126073_0.0019365359258167736","host":"s3://npm-registry-packages"}},"0.3.0":{"name":"micro-ftch","version":"0.3.0","keywords":["fetch","http","https","node","browser","ajax","request"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.3.0","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"dist":{"shasum":"67364fc190c494fe211b1b59d5b0852c1bfa6aa3","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.0.tgz","fileCount":5,"integrity":"sha512-NWeRAy2BzMHdB6w63UG2xZVvj4WTJAkyJhI/LQB6ZZZQbJ0wbMA3djpVGO8GG8r0+oo0vOYWNgvhjRkobireuA==","signatures":[{"sig":"MEUCIEFn5UANNBAXsWoNlOT8XT6X7N2cPnlbjWQVuJFbl/+mAiEA2rZT1waChIbNmcTQN4uClCrl3PReWkH5JL8WGJ7+SXs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4+K3CRA9TVsSAnZWagAAEVsP/jPEvBlyo+uI7zDOtnfw\nxHIGrj3CrsP24AV1kop26HS6V03sKPY21U/sq1GsGlYEV/w6GYRw/heo0NI4\nN7DMI0FjmbSVeoQ8Tyh1w5vePq3w/lpYelYMOrzwKvDah3lFOWqb9clBCSkh\nErFjOx7Kw9zfh6M+hpzUsCpMm2qTKDdNPOsGNRBycwtL6lWk4DcY0d9saRv1\nZGXRnDHYcI+6/lH45mhU0MuwZskqK+aSkpT9lRJmX2aNgeNNCC7FKTThtCzP\nriy4JPJr5o8+REby+IIFip7dZRLtYhEOy4MJNN6Cb1zMEujgAjM3HJpMcNvy\nPEHQsvXnEuyXP/WG5SL2s4THHxUQ8Tr3PYx/wojrBAt5xbvb9Mla/et8QRkp\nprEuwgvjk1j4z99Zy2zZXA6dVq4kxfn03rnvi08s0NS17F+zDjOcyPwgbHVM\n+otox3N7soJMOoec065+vRk3Ibashf4IZkBTkgpoaPc18jS2Z+dJONApG/p4\nki393NjD6ZUYlTJuneUyYcoF1MTyU28qihzc5GuZBWtnSGiMlC9p04y1c/XB\n2oZtdOO8vA+NF5UJXw1cC1COZvbSrogpEklQK1SjIYd8pwr1ASXB4W/UK5pa\n7Ysvp/NhSjCsrIukFoZt7Fb/UQEkNwfBBeuPdVjAqNbEEKRjnnOVllrAvYmM\nFkJi\r\n=NhqM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"9f6e2055b076117ef4432e481262b5bbee10a907","scripts":{"test":"node test/node.js","bench":"node test/bench.js","build":"tsc -d"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"_npmVersion":"7.16.0","description":"Wraps nodejs built-in modules and browser fetch into one function.","directories":{},"_nodeVersion":"16.2.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^4.3.5","@types/node":"^16.0"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.3.0_1625547447368_0.9509188418192105","host":"s3://npm-registry-packages"}},"0.3.1":{"name":"micro-ftch","version":"0.3.1","keywords":["fetch","http","https","node","browser","ajax","request"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.3.1","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"dist":{"shasum":"6cb83388de4c1f279a034fb0cf96dfc050853c5f","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz","fileCount":5,"integrity":"sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==","signatures":[{"sig":"MEUCIQCAcz+IOPSFb8lIwdtAsDHJZOSxZGJA/KQcbg4tfxR1NwIgdA1zZo/6+ZM3nn6sR04b9zhGAzJE3IOGPWVqFmf7yyU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":12002,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5nrSCRA9TVsSAnZWagAAOWwP/intb/wayfgJa+laMi3O\nGbAn6xfYq12TVWwsLoe1tfNU+HFndmb8/rCp/hIPepGbNh2Cu4A36p9gnyfc\njsNHE8UF30siPQGnfLPEfzu5SZkT9uejzOmPq9mw3Yvd0yuf/sMvkW0Da+S/\nMS0LcsHoK3Robbk5lPYZZFa/DeKFLok3XH5pruC6p40OgSF8+xpgZgARYU3H\nz63GG8uJqBSaJBLLcsW9yd/zAd7twLImEFj+ETZV4O6ZHTTxrOCg5zLW0LyV\nmpfj/SsyDGi3qO0QbyuyOID/0crMxWoitbAKSsDQ2bGw329cnK+nGSv2uxLM\nZWfHHF8SvfDvcjw1ciT87mGIN037yH1GusspppPbWEourpXxNLSPCh0IMfFu\nhfObFdcX/sNIqPn9SAJEFsNbxjx1jrX1Ilkcj80VQEWXRGqwoAQG5t7XEjUh\nocB5bYZyI8F3MEZvEr7lSq1VQpKS2ktDtgzegRVe6H1cntzmwXbCVuhAPaHn\nT8V1XoDlEKPWHx0kaAUELg2aaTYq1Ey1Q7hremdPr8oFz6OHO1AbrUmiMpL7\n25G8G2CJs5WZrMUvVhydkyPPw/51jKzhW3UNi2jBddVcksSAzjVdsSZXa0/O\nJbCJ5Bsg20Yn50InyKufVbuViavymlSNDn6J2IZAm/f2r+nMvslDjHAJSUud\nF5/9\r\n=WEbg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","gitHead":"d1e98faea55fd71b8e97353f673c1d1be6ead518","scripts":{"test":"node test/node.js","bench":"node test/bench.js","build":"tsc -d"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"_npmVersion":"7.16.0","description":"Wraps nodejs built-in modules and browser fetch into one function.","directories":{},"_nodeVersion":"16.2.0","_hasShrinkwrap":false,"devDependencies":{"typescript":"^4.3.5","@types/node":"^16.0"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.3.1_1625717457785_0.1708303544158265","host":"s3://npm-registry-packages"}},"0.4.0":{"name":"micro-ftch","version":"0.4.0","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.4.0","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"b2c5320b5db934dcb9678eaa5461c24e992d97d6","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.4.0.tgz","fileCount":11,"integrity":"sha512-1SEH+syTsMQMQByZGJeMAiBxJIRu/3gG1z1+tHexgtXtXgwQy1C5JVBtXRdMZOIx9flerUBCJtmtVl7szwWgxQ==","signatures":[{"sig":"MEUCIQCJ5V7+kMAo2AoDUC4jEMUX1POW7kcYsfVsOlAPZbqwSQIgbVYnDA/Lsti5ei0fefKpNQbdQbhZazpL4iPsbMPErZI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":73266},"main":"lib/index.js","types":"lib/index.d.ts","module":"lib/esm/index.js","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/esm/index.js","default":"./lib/index.js"}},"funding":"https://paulmillr.com/funding/","gitHead":"e65b884fcb7dfe8bd58ce3a78a93c70bf57bd054","scripts":{"lint":"prettier --check index.ts","test":"node test/index.test.js","build":"tsc && tsc -p tsconfig.esm.json","format":"prettier --write index.ts"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"10.8.1","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"_nodeVersion":"20.14.0","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.1.1","typescript":"5.3.2","micro-should":"0.4.0","@paulmillr/jsbt":"0.1.0"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.4.0_1718504046342_0.15267972369511895","host":"s3://npm-registry-packages"}},"0.4.1":{"name":"micro-ftch","version":"0.4.1","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.4.1","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"2562c48b5d913aed8aff6efd4cce21bad56fd88a","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.4.1.tgz","fileCount":13,"integrity":"sha512-B/4D4Y+joI05wrk+G4iFgbUQzEXclVYLPTiIj20KG/TiI+oXexsEDNztKGEKc5cWHJKYBpiwa6lOsCMcvIAHXg==","signatures":[{"sig":"MEYCIQC6WLCC5NagU2Vk+zvLd+67gBfZwgQYnoJ6RB5Fbb8QuQIhAIyhpeGpwzU7224BbGx5jQTFUk+D4v5ULXXHY5n8TyxE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@0.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":91112},"main":"./lib/index.js","types":"./lib/index.d.ts","module":"./lib/esm/index.js","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/esm/index.js","default":"./lib/index.js"}},"funding":"https://paulmillr.com/funding/","gitHead":"8f7a6ed6a9afe3f781d685b17c2727ce00da2294","scripts":{"lint":"prettier --check index.ts","test":"node test/index.test.js","build":"tsc && tsc -p tsconfig.esm.json","format":"prettier --write index.ts"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"10.8.2","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"sideEffects":false,"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.3.2","typescript":"5.5.2","micro-should":"0.4.0","@paulmillr/jsbt":"0.2.1"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.4.1_1736456157919_0.08679052212519345","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"micro-ftch","version":"0.4.2","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.4.2","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"79b993a9fe7fb9a5c456fa24de833fa80f8ef2dd","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.4.2.tgz","fileCount":13,"integrity":"sha512-7gXEYECF4DAoDUOViftg/rhUg/1R5n7tGHv/9Lc7xp9e32+FnLNcA6hMV+c2/gEnP+35CQVe09RWf6l4j7K6vA==","signatures":[{"sig":"MEQCIAd+sHqhNkV3jKUcEuQrOxgzRFW03V9REWnpt3/gb78vAiBLdMtomX7Z/m9OWcC8WzUnyAjKm+c9Xqglxbn5bO/rjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@0.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":91606},"main":"./lib/index.js","types":"./lib/index.d.ts","module":"./lib/esm/index.js","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/esm/index.js","default":"./lib/index.js"}},"funding":"https://paulmillr.com/funding/","gitHead":"0d77da01a7f2c10ad8adda240936cb5ab061808c","scripts":{"lint":"prettier --check index.ts","test":"node test/index.js","build":"tsc && tsc -p tsconfig.cjs.json","format":"prettier --write index.ts","test:bun":"bun test/index.js","test:deno":"deno --allow-env --allow-net test/index.js","build:release":"npx jsbt esbuild test/build"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"10.9.2","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"sideEffects":false,"_nodeVersion":"22.13.0","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.3.2","typescript":"5.5.2","micro-bmark":"0.4.0","micro-should":"0.5.1","@paulmillr/jsbt":"0.3.1"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.4.2_1737610854296_0.020131990920092324","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"micro-ftch","version":"0.4.3","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.4.3","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"9a080c80884cf2e241bcc4216361b8cd5410eb42","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.4.3.tgz","fileCount":13,"integrity":"sha512-XM01nKbECm+ygw77Gl1LPTuKr6BV0Fpzgj036ZdMed7W/3zTdKvAXUnsBWXhWDlmjwoHIm+FuAFj0X0IXbk+Ww==","signatures":[{"sig":"MEYCIQCKSuOsDrrIHwK8rdKjQuBCzwPeK3SoV4db4uxr9qvBiwIhAP5pWiJ7AIb/RMl2GCUJEE5CLeActNRZfi/Wuw9wInNn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@0.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":93653},"main":"./lib/index.js","types":"./lib/index.d.ts","module":"./lib/esm/index.js","exports":{".":{"types":"./lib/index.d.ts","import":"./lib/esm/index.js","default":"./lib/index.js"}},"funding":"https://paulmillr.com/funding/","gitHead":"48c4b8599407f54ce2d84d945b49c61f8877c00c","scripts":{"lint":"prettier --check index.ts","test":"node test/index.js","build":"tsc && tsc -p tsconfig.cjs.json","format":"prettier --write index.ts","test:bun":"bun test/index.js","test:deno":"deno --allow-env --allow-net test/index.js","build:release":"npx jsbt esbuild test/build"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"10.9.2","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"sideEffects":false,"_nodeVersion":"22.13.0","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.5.2","typescript":"5.8.2","micro-bmark":"0.4.0","micro-should":"0.5.1","@paulmillr/jsbt":"0.3.3"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.4.3_1743190393656_0.866015543737225","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"micro-ftch","version":"0.5.0","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","micro","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@0.5.0","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"40b77fb9fba24185fa0438afd006b2834b81b0d6","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.5.0.tgz","fileCount":8,"integrity":"sha512-kWnsleYjn6UQRjRz43hhiYldzOW4cGCqLH7ZvMcNpDYHOzCn0UnXjfkFElHit6CAlGbT06Q+8tKRA08WSEaW2g==","signatures":[{"sig":"MEUCID/82B+Ifk5xdFxcSQlbCaL46wKRZw9wy+r4viN0A4XtAiEA8Fii8ZCivaf9/jfTPeAJ44T7Grj/GE40yyEAsIejEt8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":59205},"main":"./index.js","type":"module","types":"./index.d.ts","module":"./index.js","funding":"https://paulmillr.com/funding/","gitHead":"d9acb944ff7275746189b9ecf88a3cae3a3dab00","scripts":{"lint":"prettier --check index.ts","test":"node --experimental-strip-types --no-warnings test/index.ts","build":"tsc","format":"prettier --write index.ts","test:bun":"bun test/index.ts","test:deno":"deno --allow-env --allow-net test/index.ts","build:release":"npx jsbt esbuild test/build"},"_npmUser":{"name":"paulmillr","email":"paul@paulmillr.com"},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"10.9.2","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"sideEffects":false,"_nodeVersion":"22.16.0","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.5.2","typescript":"5.8.3","@types/node":"22.15.23","micro-bmark":"0.4.1","micro-should":"0.5.3","@paulmillr/jsbt":"0.4.1"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_0.5.0_1749027090389_0.8564724815629108","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"micro-ftch","version":"1.0.0","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","micro","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@1.0.0","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch#readme","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"c0c9f0939be64c68bd45e732caf2c74a9adb38a7","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-1.0.0.tgz","fileCount":8,"integrity":"sha512-pfkTSx+9aK6q8DNIqmy7+ld4OsiBDq38WGb376EfllGP32cu4PiDxjeD1As19cQWlKLchsY/0Dj/5JyraZZDGA==","signatures":[{"sig":"MEQCIFII9sK2d4qLNsl2GeKV3gdPCCdFESSJRLd3L3oVG2cwAiAq6/Yr+TFaX2/HMBrFKqSJi5l4qJ7Vp7QHZeru9PI/mw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":73816},"main":"index.js","type":"module","types":"index.d.ts","module":"index.js","gitHead":"29c3a3afae4d1467635f810a345348d3d08f554b","scripts":{"test":"node --experimental-strip-types --no-warnings test/index.ts","build":"tsc","check":"npx --no @paulmillr/jsbt check package.json","format":"prettier --write index.ts","test:bun":"bun test/index.ts","test:deno":"deno --allow-env --allow-net test/index.ts","check:jsdoc":"npx --no @paulmillr/jsbt tsdoc package.json","check:readme":"npx --no @paulmillr/jsbt readme package.json","build:release":"npx --no @paulmillr/jsbt esbuild test/build","check:treeshake":"npx --no @paulmillr/jsbt treeshake package.json test/build/out-treeshake"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ec79aaaf-e151-4254-8f6c-4080a2b425b2"}},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"11.6.1","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"sideEffects":false,"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.6.2","typescript":"6.0.2","@types/node":"25.3.0","@paulmillr/jsbt":"0.5.0"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_1.0.0_1777369399047_0.6638058919626895","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"micro-ftch","version":"1.1.0","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","micro","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@1.1.0","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch#readme","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"a60bfbe56eea14ce4d873835e2ae0bfdd945bdb1","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-1.1.0.tgz","fileCount":6,"integrity":"sha512-bWfHsrJF6tvvzUbqAugQKOiUIf7oQITZ6SrtxSwS3f+BMmwy6BRwuvRz/AvcxpSR0I9r5DJPse2/96QAP4e3lA==","signatures":[{"sig":"MEUCIQCNFmS/V9SglxfbjMH48APAPQ68h14XlP2zN3OuAXD1wAIgdZLFmEqCL6OtX7sWRlMAgLuSjFoCb3CGoU/mul8QX4w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":90519},"main":"index.js","type":"module","types":"index.d.ts","module":"index.js","gitHead":"5a9fa8b153dcd69577d9dfed658e335d2844338c","scripts":{"test":"node --experimental-strip-types --no-warnings test/index.ts","build":"tsc","check":"npx --no @paulmillr/jsbt check","format":"prettier --write index.ts","test:bun":"bun test/index.ts","test:deno":"deno --allow-env --allow-net test/index.ts","build:release":"npx --no @paulmillr/jsbt bundle test/build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"paulmillr","email":"paul@paulmillr.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f1e9fb42-6d8a-4798-9603-8350bd30f3af"}},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"12.0.2","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.6.2","typescript":"6.0.2","@types/node":"25.3.0","@paulmillr/jsbt":"0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_1.1.0_1785905266310_0.299326098448756","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"micro-ftch","version":"1.2.0","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","micro","replay","ftch"],"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","_id":"micro-ftch@1.2.0","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"homepage":"https://github.com/paulmillr/micro-ftch#readme","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"13dcd1e164bab277cd60f34d294d084035738b6a","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-1.2.0.tgz","fileCount":6,"integrity":"sha512-XvcEm9NJIZSXjz0As8/J5rBNYc4ZHKPaeBBttE0Gq0QEOdzPkogYUcXCh1SWLVmo/0BIAVZt3RdUyiRAYqns8g==","signatures":[{"sig":"MEYCIQDqbJUfPqRDHCZdl2xlrkF/tuE4giIWRgfLAX+zU4S4ngIhALw8Qfw+tXxmWXglObCOL8QmgAfvW3v3HzVggs3RD9iz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":116283},"main":"index.js","type":"module","types":"index.d.ts","module":"index.js","gitHead":"63dc8e181201a98bd5515df04791d5d861c305f2","scripts":{"test":"node test/index.ts","build":"tsc","check":"jsbt-check","format":"prettier --write index.ts","test:deno":"deno --allow-env --allow-net test/index.ts","benchmark:size":"npx bismar@0.1 -bs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"paulmillr","email":"paul@paulmillr.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:f1e9fb42-6d8a-4798-9603-8350bd30f3af"}},"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"12.0.2","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"sideEffects":false,"_nodeVersion":"24.19.0","_hasShrinkwrap":false,"devDependencies":{"prettier":"3.6.2","typescript":"6.0.2","@types/node":"25.3.0","@paulmillr/jsbt":"0.6.5"},"_npmOperationalInternal":{"tmp":"tmp/micro-ftch_1.2.0_1786590122644_0.0007903839201184315","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"_id":"micro-ftch@1.2.1","bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"dist":{"shasum":"984486ef2b28bd3a89e6dfd21d1bd8d4d676ce4c","tarball":"https://registry.npmjs.org/micro-ftch/-/micro-ftch-1.2.1.tgz","integrity":"sha512-ZNFTR0At/Gyr4i3Qtwj6rva2j2rGcapmFg97nNLzbXG6s6iNiwQHNYmAoJ4RVhC5dErJfxZasbULaUYepoFeIQ==","fileCount":6,"unpackedSize":122256,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/micro-ftch@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIA+RV0Dj3AHGYxMjJ+W3umz1XvXn+2UzTuRSy/QoRgfLAiEA/Iem/Cwc7mZcd4yuF7Xb4bHyQcVH+OI2aa+ZzGX8U1Y="}]},"main":"index.js","name":"micro-ftch","type":"module","types":"index.d.ts","author":{"url":"https://paulmillr.com","name":"Paul Miller"},"module":"index.js","gitHead":"6b50b324c846458f3fa40456fbb97379203b6f10","license":"MIT","scripts":{"test":"node test/index.ts","build":"tsc","check":"jsbt-check","format":"prettier --write index.ts","test:deno":"deno --allow-env --allow-net test/index.ts","benchmark:size":"bismar -bsm"},"version":"1.2.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:f1e9fb42-6d8a-4798-9603-8350bd30f3af"},"approver":{"name":"paulmillr","email":"paul@paulmillr.com"}},"homepage":"https://github.com/paulmillr/micro-ftch#readme","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","micro","replay","ftch"],"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"_npmVersion":"12.0.2","description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","directories":{},"maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"sideEffects":false,"_nodeVersion":"24.19.0","devDependencies":{"bismar":"0.1.8","prettier":"3.9.6","typescript":"6.0.3","@types/node":"26.2.0","@paulmillr/jsbt":"0.7.1"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/micro-ftch_1.2.1_1788012783252_0.5068349463724493"},"_hasShrinkwrap":false}},"time":{"created":"2020-06-24T12:05:40.429Z","modified":"2026-08-29T14:13:03.617Z","0.1.1":"2020-06-24T12:05:40.544Z","0.2.0":"2021-06-05T03:02:06.247Z","0.3.0":"2021-07-06T04:57:27.477Z","0.3.1":"2021-07-08T04:10:57.976Z","0.4.0":"2024-06-16T02:14:06.521Z","0.4.1":"2025-01-09T20:55:58.084Z","0.4.2":"2025-01-23T05:40:54.480Z","0.4.3":"2025-03-28T19:33:13.859Z","0.5.0":"2025-06-04T08:51:30.562Z","1.0.0":"2026-04-28T09:43:19.186Z","1.1.0":"2026-08-05T04:47:46.391Z","1.2.0":"2026-08-13T03:02:02.779Z","1.2.1":"2026-08-29T14:13:03.328Z"},"bugs":{"url":"https://github.com/paulmillr/micro-ftch/issues"},"author":{"url":"https://paulmillr.com","name":"Paul Miller"},"license":"MIT","homepage":"https://github.com/paulmillr/micro-ftch#readme","keywords":["fetch","network","killswitch","concurrent","parallel","jsonrpc","micro","replay","ftch"],"repository":{"url":"git+https://github.com/paulmillr/micro-ftch.git","type":"git"},"description":"Wrappers for built-in fetch() enabling killswitch, logging, concurrency limit and other features","maintainers":[{"name":"paulmillr","email":"paul@paulmillr.com"}],"readme":"# micro-ftch\n\nPrivacy-first wrappers for built-in `fetch()`, enabling allowlists, killswitch, logging, concurrency control, and other features.\n\n## Usage\n\n> `npm install micro-ftch`\n\n> `jsr add jsr:@paulmillr/micro-ftch`\n\nA standalone file\n[micro-ftch.js](https://github.com/paulmillr/micro-ftch/releases) is also available.\n\nThere are four composable wrappers over `fetch()`:\n\n- [ftch](#ftch) — validation, allowlists, logging, timeouts, rate & size limits, basic auth\n- [jsonrpc](#jsonrpc) — batched JSON-RPC requests\n- [replayable](#replayable) — record & replay requests in tests, without network\n- [retry](#retry) — retries with exponential backoff and jitter\n\n## ftch\n\nAll options are optional:\n\n```ts\nimport { ftch } from 'micro-ftch';\n\nlet enabled = true;\nconst ctrl = new AbortController();\nconst f = ftch(fetch, {\n  isValidRequest: () => enabled, // killswitch: false makes requests throw\n  killswitchSignal: ctrl.signal, // one-shot hard killswitch, aborts in-flight requests\n  allowedHosts: ['rpc.example.com', 'http://localhost:8545'], // origin allowlist\n  log: (url, opts) => console.log(url, opts),\n  timeout: 5000, // ms; can also be set per-request: f(url, { timeout: 1000 })\n  concurrencyLimit: 10, // max in-flight requests, extras are queued\n  rps: 10, // max request starts per second\n  maxBodySize: 10 * 1024 * 1024, // bytes; default 1 GiB, bodies are buffered\n});\n\nawait f('https://rpc.example.com/');\nawait f('https://user:pwd@httpbin.org/basic-auth/user/pwd'); // basic auth auto-parsing\n```\n\n- `isValidRequest` can be toggled at any time and may return a `Promise<boolean>`;\n  it is checked before a request, after response headers, and after the body is buffered.\n- `killswitchSignal`, once aborted, cancels active requests and blocks all future ones;\n  construct a new wrapper to re-enable network access.\n- `referrerPolicy: 'no-referrer'` is set by default for privacy.\n\n## jsonrpc\n\nBatches multiple calls into one JSON-RPC HTTP request. Can massively speed things up\nwhen servers are single-threaded or have small per-user limits.\n\n```ts\nimport { jsonrpc } from 'micro-ftch';\n\nconst rpc = jsonrpc(fetch, 'http://rpc_node/', { batchSize: 20 });\nconst res = await rpc.call('method', 'arg0', 'arg1');\nconst res2 = await rpc.callNamed('method', { arg0: '0', arg1: '1' }); // named arguments\n```\n\n`jsonrpc` automatically restricts requests to the exact origin of `rpcUrl`, whether its\ntransport is native `fetch` or an `ftch` wrapper. Cross-origin redirects are blocked before the\nnew origin is contacted. Add trusted redirect origins explicitly with\n`{ allowedHosts: ['rpc-failover.example'] }`; the original RPC origin remains allowed.\nWhen the transport was not created by `ftch`, requests also default to a 240-second timeout and\n10 concurrent HTTP requests. Set `timeout` or `concurrencyLimit` here to override either value;\nan `ftch` transport keeps its existing operational limits unless these options are provided.\n\n## replayable\n\nRecords requests and replays them in tests, without calling network code.\n\n```ts\nimport { replayable } from 'micro-ftch';\n\nconst capture = replayable(fetch);\nawait capture('http://url/1'); // real network\nconst logs = capture.export();\n\nconst replay = replayable(fetch, JSON.parse(logs), { offline: true });\nawait replay('http://url/1'); // cached\nawait replay('http://url/2'); // throws: not captured, offline mode forbids network\n```\n\nCaptured entries include response status and headers, so error handling can be\nreplay-tested too. Logs store requests and responses verbatim, including any\nsecrets they contain — treat exported fixtures as sensitive.\n\n## retry\n\nRetries failed requests with exponential backoff, full jitter and `Retry-After` support.\nBy default only safe methods (GET/HEAD/OPTIONS) are retried — retrying a POST can duplicate\na non-idempotent action — and only on network errors or status 408/429/5xx.\nPass a custom `shouldRetry` to override the policy.\n\n```ts\nimport { ftch, jsonrpc, retry } from 'micro-ftch';\n\nconst net = retry(ftch(fetch), { attempts: 3, baseDelay: 100, maxDelay: 5000 });\nawait net('https://example.com'); // up to 3 attempts\n\n// JSON-RPC uses POST: opt in explicitly\nconst rpcNet = retry(ftch(fetch), {\n  shouldRetry: (ctx) => ctx.error !== undefined || ctx.status === 429 || ctx.status >= 500,\n});\nconst rpc = jsonrpc(rpcNet, 'http://rpc_node/', { batchSize: 20 });\n```\n\n## Security\n\n- `allowedHosts` entries are origins: `example.com` means exactly `https://example.com:443`,\n  a port (`example.com:8443`) means an alternate HTTPS origin, HTTP must be explicit\n  (`http://localhost:8545`). Paths, queries and credentials are not valid entries.\n- Redirects are followed by the wrapper one hop at a time, so the allowlist and\n  `isValidRequest` are checked before every hop's request is sent. Hops are capped at 20;\n  credentials, cookies and API-key headers (extend via `sensitiveHeaders`) are stripped\n  on cross-origin hops.\n- HTTPS→HTTP downgrades are rejected, even without an allowlist. Opt in with\n  `allowInsecureRedirects: true` if a trusted endpoint requires one.\n- `allowedHosts` is not a complete SSRF sandbox: it validates URL origins, but DNS may\n  still resolve a permitted hostname to an internal address. Enforce trusted DNS and\n  network-level egress rules when requests cross a security boundary.\n\n## License\n\nMIT (c) Paul Miller [(https://paulmillr.com)](https://paulmillr.com), see LICENSE file.\n","readmeFilename":"README.md"}