{"_id":"reixo","_rev":"29-d8b299aa012a372c8416afbea512cd05","name":"reixo","dist-tags":{"latest":"2.2.2"},"versions":{"1.0.0":{"name":"reixo","version":"1.0.0","keywords":["http","fetch","retry","queue","typescript","resilience","circuit-breaker"],"author":{"name":"WebCoderSpeed"},"license":"MIT","_id":"reixo@1.0.0","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"dist":{"shasum":"15872b7d2b847ac7ccb937596692b6fc69ec2b04","tarball":"https://registry.npmjs.org/reixo/-/reixo-1.0.0.tgz","fileCount":8,"integrity":"sha512-L5OAEZR4mUfv8+9bxyv/QDBz/MyOCWvAOfFD2/InNaBykR+K0l0/h3fCuYo408/6U+A/jtoxQY3y/SVOBSxvRw==","signatures":[{"sig":"MEYCIQDNaCdVPy7m2Ap9FGiYgFwqBwzSPvumjByrsjJ75PYFCQIhAMGLkIOt8rZIiNlGT+9+GQARx9JwnarNVv0LCAIs1hf0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":204112},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"c7c53187e595084beeaf8b6f6ee088547ec9fd3a","scripts":{"demo":"npx tsx examples/demo.ts","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","prepare":"husky","benchmark":"npx tsx benchmarks/suite.ts","test:watch":"vitest","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"_npmVersion":"10.8.2","description":"A powerful, type-safe HTTP client with built-in retry, queueing, and resilience features.","directories":{},"lint-staged":{"*.{ts,js}":["eslint"],"*.{ts,js,json,md}":["prettier --write"]},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_1.0.0_1769568066341_0.022375768695439557","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"reixo","version":"1.1.1","keywords":["http","fetch","retry","queue","typescript","resilience","circuit-breaker"],"author":{"name":"WebCoderSpeed"},"license":"MIT","_id":"reixo@1.1.1","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"3516ada183656c7409522afdae0b8bd90c9f3374","tarball":"https://registry.npmjs.org/reixo/-/reixo-1.1.1.tgz","fileCount":8,"integrity":"sha512-9UjECDdTj1v/zM/0ptZm55DqXrY09yspks7Bj1A7C957pholC8S1e2//2aRqquKTMMB8UBi1AFDYZU+EN6lVGg==","signatures":[{"sig":"MEYCIQD4wLZ2rl3HQFznnspvndEZjPGS1yLQpmqgXfyn0ek78AIhAIL8zZdX9PJKAYiB8GqLPdbcJ0WM80tBBSBRqbSJcHJi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225161},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"aff03a0ceff87164399ca0d327c19cda3f53c14e","scripts":{"demo":"npx tsx examples/demo.ts","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","prepare":"husky","release":"standard-version","benchmark":"npx tsx benchmarks/suite.ts","test:watch":"vitest","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A powerful, type-safe HTTP client with built-in retry, queueing, and resilience features.","directories":{},"lint-staged":{"*.{ts,js}":["eslint"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_1.1.1_1769621165618_0.27124138491569494","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"reixo","version":"1.2.0","keywords":["http","fetch","retry","queue","typescript","resilience","circuit-breaker"],"author":{"name":"WebCoderSpeed"},"license":"MIT","_id":"reixo@1.2.0","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"b199541f648349f2b29c4fa0e3443c62418fe8f1","tarball":"https://registry.npmjs.org/reixo/-/reixo-1.2.0.tgz","fileCount":8,"integrity":"sha512-R7cJO5x8uCTfR2pvJPiDUaelbSYOgRtMfCtezm6ZF2gg5VN72TAw0x942MRPuOKhD3hCKJ2noc2B2ekVsLkT6Q==","signatures":[{"sig":"MEUCIBUuZINkF+cZuDtmp48oMM8KiBJC9loCgXte2t96RPSMAiEArbg+Gli+anSaJs8KPi5c43dFW57MOcfIBPwmAf7izxA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":431406},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"gitHead":"8a7f224133a0bf9c96f7755d0345ac8a5a33ffe2","scripts":{"demo":"npx tsx examples/demo.ts","lint":"eslint .","test":"vitest run","build":"tsup","format":"prettier --write .","prepare":"husky","release":"standard-version","benchmark":"npx tsx benchmarks/suite.ts","test:watch":"vitest","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A powerful, type-safe HTTP client with built-in retry, queueing, and resilience features.","directories":{},"lint-staged":{"*.{ts,js}":["eslint"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_1.2.0_1769629555683_0.4747021192059486","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"reixo","version":"1.2.1","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@1.2.1","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"0d98373e09c8c2fdd831221f20a7d46cb70ffaef","tarball":"https://registry.npmjs.org/reixo/-/reixo-1.2.1.tgz","fileCount":6,"integrity":"sha512-DVEMMrp1c1ajtTt4cfvODSiDCrEeM0xBnOMq12xxY5DvJAhYhaGCz0SmsXJaiHWMHEGlSEx8tEqorgphcJO+PA==","signatures":[{"sig":"MEUCIAvAPzo5q87rKdr6+dSwpxHLzLctas1+H7Gu3XKQwXwUAiEAo/UhRcmJEO/1mXRNZMYgtwWo8vuMwOJrWjepWAfLmN4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":173378},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"847d5a4c7c7232c8909822af34291a2015a9a8f1","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_1.2.1_1769630655506_0.5766810924649273","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"reixo","version":"1.3.0","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@1.3.0","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"a38b5d22d301e0ab02bd0e71d6e34a74e2dca417","tarball":"https://registry.npmjs.org/reixo/-/reixo-1.3.0.tgz","fileCount":6,"integrity":"sha512-CEf59D/0EwcB6S2hWXcezs1+K7M3MlAnecGCGibzRvu6tQZEaLnrL7xEHYYmSypbOe0x0Fvj4rRKtQHlxMbQ2g==","signatures":[{"sig":"MEYCIQDgMvBzqKqBnkdMhWFCKaXRa0Od18SE8MsZbTALuX8v6AIhALy2IQOy94A/po2P3uYadKhsnN4ZW3s8+rf8ZzHiBYK1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191229},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"732afafb523ba51f4e773ecca1feccb1f85c7246","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_1.3.0_1769654139593_0.6739420428331353","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"reixo","version":"2.0.0","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.0.0","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"7942d5f99d53e622401054dd4364d1027cfaf637","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.0.0.tgz","fileCount":6,"integrity":"sha512-rEl5wtb9gOAF1MYwgln+sMwo3CP7gF3yuS5V7OrKvXZ3Qf4s0jz9yVNsnOt5OA/J3odBWRL/EPPNmzzQNkcvRQ==","signatures":[{"sig":"MEYCIQCUzwg+VN8zfYfEBKATFdsKgTdeucxy/VpLKwGtI3LcpQIhAJ76bfJLSFfqRs1aMPWQDzJi50FjUimcYNfhxNRjTmDD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":184746},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"1d3d0a0030dec055771f2d3c0a7447ecaf531d91","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.0.0_1769713740474_0.6142791744507534","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"reixo","version":"2.0.1","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.0.1","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"f5c005fdaf320db16ec9595745190036ddf24d9d","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.0.1.tgz","fileCount":6,"integrity":"sha512-DIREboqFBOVwFfz2ih5o0b1pl7LG6rNfEEvlVbXdBlzBbyS2+tA9Gdl+u4O2qZQ0t6DdArJL1XjB5IRZ7tEI3A==","signatures":[{"sig":"MEUCIQC44HLqbUNHoIWiIFa0QqaDv0O+qpJRx+Br4zXQFDgwMAIgOKJ/sowreULt1FQbe+K0v/LA721GTvFfogC1vp1477w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":220056},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"ba3c002b4e5b8f0353e5395e5a6e830a274d9955","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.0.1_1769715306913_0.6116711374097101","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"reixo","version":"2.0.2","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.0.2","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"32508dd6b05496c047567ae39299cfabe8fbafe0","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.0.2.tgz","fileCount":6,"integrity":"sha512-DmeofnFLGsuM/VOgrBfHdIJIDl1uW7opKQjZNff6ODgSuCYcabj+LxbMr5jUYHBiDFXHFgIMsdAtBUyE7//s3w==","signatures":[{"sig":"MEUCIGyHUNUc5Zb53dOPGvWhLMRPUQWW9BkTSzhcIEOtTDUVAiEAsQK/luXobM4yNz01Bx1GhsApKUfGk+3Ihjj53jBzne0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":243031},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"98ea9c81df71c8c6c85531fda159bc1160bf3094","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.0.2_1769716127729_0.40617373637251","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"reixo","version":"2.1.0","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.1.0","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"292b9b9dd24a3e28d6f387d5a73d5c46a6eb5309","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.0.tgz","fileCount":6,"integrity":"sha512-W3rk+ouxSihlSXGoA31wYZmXDKzClkQ9x7ZisC/+ezU7rFIJxQa8mzlPOqt5chV/pFy8QK6S4VUKCMDErE8LIw==","signatures":[{"sig":"MEUCIQCytZ06+5bf5ZR7O3DGtMhETpTDj9ad4zb0KddQSGW97gIgOPAkVEB4dAxMLr4jj0RW+oQk11wzbv8FT9fXzS/f1q8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":245908},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"7b5148de4c2d4a7ec293f6bd658044cc9d02b9e1","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.0_1769788074261_0.526301185901697","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"reixo","version":"2.1.1","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.1.1","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"bcb2fc50de8118560a7768e177c6c9cba5405196","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.1.tgz","fileCount":6,"integrity":"sha512-WsYXraqV7jET/17zvENtJTnwuUu7rQSjfR6Ms3PblN0LXL20tq+9pSav5x4SEUnBVnsuENQffeMtCV/z2UyQRg==","signatures":[{"sig":"MEUCIQDJlfc2TUdEen1036+2r/31niWZxK98aMkB8y5vumjm1QIgMvG83nztp3zpEY9ZLvTwUjmNNNVDcIX1zETWBjMNlh8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":246005},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"2ac1fad7718213df3e11f3065fd8653e9cfc6e73","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^25.0.10","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.1_1769788703400_0.631350312828358","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"reixo","version":"2.1.2","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.1.2","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"ff9a53e70c943352e06059befe0be710a58f3a33","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.2.tgz","fileCount":7,"integrity":"sha512-JT7jGnwX+MzYffblPAHkok1jwj+zcXTI6ioD+TFfeYuoIk0uWROtOhl8e9NvP7UwfwNU4N7BI1L/ZgViDOf9jw==","signatures":[{"sig":"MEYCIQC9Vu5zXriOrCflevqYLFsnZtS6wPrjnwE8TbIeiT12pAIhAIImYyYBwsmRaj0vv/bmB1J+1PMbIII/hueROlpOu250","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":342902},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"a3a19d820cbd296d65a7c678627bcbd264e449eb","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.2_1773403315736_0.14040810837769468","host":"s3://npm-registry-packages-npm-production"}},"2.1.3":{"name":"reixo","version":"2.1.3","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.1.3","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"19a7c0d0975e3ac22bcfb4dc002f69474a499433","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.3.tgz","fileCount":7,"integrity":"sha512-YXBARqQ0c2FEIxLPssRYuGvExApj+fxmkObLwz9EdI9gZnotqEFkG9k1msxLdlcNOcAQTxjAd26V2fSsHkwd+Q==","signatures":[{"sig":"MEYCIQDUX7LoBGAreNNa7PCXHi2UdqOojvktOfq1PD4UzauvsQIhAO3v9Gbr0l/uMUu8p3ib5ZDsNXt77AxNo6zYRCg8d3R4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":428257},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"3d60a104e88e1289c1ace52aedcf0352bda233b2","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.3_1773405833558_0.6800182295722244","host":"s3://npm-registry-packages-npm-production"}},"2.1.4":{"name":"reixo","version":"2.1.4","keywords":["http","fetch","axios","retry","queue","typescript","resilience","circuit-breaker","pagination","graphql","offline","caching","interceptors","progress","monitoring","error-handling","browser","nodejs"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.1.4","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo#readme","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"e3088a45d0594828bc71b7b00c580289ae088045","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.4.tgz","fileCount":7,"integrity":"sha512-NUQC2XJ3sAmnjiUSqbV6+XyyM8H3d678yVWVajnxT+ndOywcSmmRQpoiHtjJaAgh0h3I4A+ANLvYpmbqZiJkAA==","signatures":[{"sig":"MEQCIG7TFhNrKlbvVusJkPiOrhSCh4eDadp7yQnerlity+/6AiBu46H5T9jeWPhXjmiLd5+ILijrA16PVw6gu3OSLuZqEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":432206},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"e49a74f23b276589d3d983c611e1b6ed5800d843","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"A modern, type-safe HTTP client with built-in resilience patterns, queue management, and enterprise-grade features for Node.js and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.4_1773409149421_0.25091868399312967","host":"s3://npm-registry-packages-npm-production"}},"2.1.5":{"name":"reixo","version":"2.1.5","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.1.5","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"951323054ca21e602e81409676cb3d91a6b22443","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.5.tgz","fileCount":7,"integrity":"sha512-pXSHVOCxzPjHw7faj9LHdKg1Vs1cuOXFQyt0RBPLWnrvJKRvabFyG8zfnWdIL5HrxSnTiii9+AYvw3KlHGW65g==","signatures":[{"sig":"MEUCIDy/p81AQBUjEMHTNMrlXnfwQUnErGinmhta71tevsbOAiEAsuO5va1ek3Sz5fwVIjVlGbw7cotglvOkXpzUX5Jf/uU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":510841},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"b073442bc5003ec35b0bea8e50850961ed992622","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.5_1773415281115_0.08358649002871688","host":"s3://npm-registry-packages-npm-production"}},"2.1.6":{"name":"reixo","version":"2.1.6","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors"],"author":{"url":"https://webcoderspeed.com","name":"WebCoderSpeed","email":"sanjeev@webcoderspeed.com"},"license":"MIT","_id":"reixo@2.1.6","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"64d6e29d0897c8b061161dc3dd00845c0862675a","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.6.tgz","fileCount":7,"integrity":"sha512-Wv0RAW+Sl+2vmKZKLIGgKMwtzUOiwS1nmWoRnEeANNql0iowH2QSExQtf5HuduN7oUlTfL9EvWIbhTVP+QUnfw==","signatures":[{"sig":"MEQCIFDDtZveXXt3csAX83lcoXKAVcQrJsvtMvxMyXuB1CrHAiAuDuC1B8o9WKNPFA+9cGdARLRi20cUc5trA9ndNtT+Tg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":513040},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"b56eb3497193ce62b72934ceb7f36a9c26dca3c5","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","format":"prettier --write .","prepare":"husky install","release":"npm run build && standard-version","test:ui":"vitest --ui","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","release:major":"npm run release -- --release-as major","release:minor":"npm run release -- --release-as minor","release:patch":"npm run release -- --release-as patch","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.8.2","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix"],"*.{ts,js,json,md}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","standard-version":"^9.5.0","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.6_1773417512683_0.8293556436548553","host":"s3://npm-registry-packages-npm-production"}},"2.1.7":{"name":"reixo","version":"2.1.7","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.7","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"5ef8d13ec40f7efb2fe50edbacae8783409de19e","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.7.tgz","fileCount":7,"integrity":"sha512-PlXumjpUVFSlmcudmB+oA1JpolRcG68xeGSUA2Zv3KDuSIvq+ClndxImYm2dW207Mc2wYqsnN76XePa03NFIxg==","signatures":[{"sig":"MEUCICID8UonJZrT4PydFc0/glwuDOe65rd4v2sDaIadeFYKAiEAxEYfx9B2HwZguoxUdvnrDgs97zfmN49pc0nsTlsZvuA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":536847},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"bce49d1478926c96ca04f387dbf307fbbdd707c6","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npx tsx benchmarks/suite.ts","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.7_1773481697170_0.813222296000037","host":"s3://npm-registry-packages-npm-production"}},"2.1.8":{"name":"reixo","version":"2.1.8","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.8","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"c9b50b8eb71ebfb63af8878480e5434c540edbbd","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.8.tgz","fileCount":7,"integrity":"sha512-k5fZqzGLvpsE3mJFsB7KWyVyJqkvqS7/Q7DbSrRd5eTnzAIygflMOGbpRd9A9DPD7P2tjhYJB1P0tW/b+mSMDw==","signatures":[{"sig":"MEUCIQD7cUvrApgPQZUcPFOi9bFo2Ub/CCZHmsHLO6IiIRZ4ggIgeZUoYRPMc9mrIp7dWk5x/tABT/xp42nqZsz37+ej7V8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":504798},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"dfa44f9a94b1846655d892b7e29ff397170cad16","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.8_1773483842298_0.4398203681788695","host":"s3://npm-registry-packages-npm-production"}},"2.1.9":{"name":"reixo","version":"2.1.9","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.9","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"41bf6c1a84da31a039f760ac3594d2cd6ac116dc","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.9.tgz","fileCount":7,"integrity":"sha512-wR7/j3qCSHqYMOIUS8yY5aPHJ8SKI7n/yAIhCGIfQZ+yU9w5pza1TGm9WA9S8t7xihAHqbdE4l8n5taKPSWmMw==","signatures":[{"sig":"MEQCIBIjBYRryKWrb7OuO+X3BwMg9H0gmz554d2bqCvAmsVVAiAVYJA8S3zcz3k1rEHpLCV5Hr0ZzKUqWWcFoKY2Kqk6Ow==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":511110},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"120ae32f30350eb0df0913f39836e1f2f06c155c","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.9_1773487545074_0.7467933027065778","host":"s3://npm-registry-packages-npm-production"}},"2.1.10":{"name":"reixo","version":"2.1.10","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.10","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"53bef34e914d4e7fea47c1b2c01e7847dba7f9cb","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.10.tgz","fileCount":7,"integrity":"sha512-/psXCkXm2TEyXNCeWx3JSnVD3ukjaRIlJM/N3Ag4pVJwmqgc7YL0aJdHOGO1AGc38lQ1+hvYF8ZpIh7+MAi32A==","signatures":[{"sig":"MEYCIQD1fngemAxLGbxjlwxH66x7CzihswIuOfBU66vu/9m93gIhALf+uwaFDotnmeqvdfv5gDOdkr/5htmMyrc9JcvUvRlY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":513815},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"fbadfe5159b937240f2f221ef11c3a26457052ea","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.10_1773488489293_0.6588711825581959","host":"s3://npm-registry-packages-npm-production"}},"2.1.11":{"name":"reixo","version":"2.1.11","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.11","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"5de6e8fd2a6a4d539447553f5d6648f21d3ec48d","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.11.tgz","fileCount":7,"integrity":"sha512-UEVV/cVoZT/f/RZPIk2E0L5MTL+YAJ/R1/se6dDmXu/OckwGROp6aq7f3NJKvtt/32MP+wNL8WScun/t4PV5ig==","signatures":[{"sig":"MEQCICJtR1bTtsUefMjcRTlDGkrkgVzLOVJYLLlbr5jOh4cRAiAFPaz8XV4MlUXC/5F9ftCDjjIHVJQczMRxm0oCgGvDQw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":519996},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"fd0b7f004fb1e690d68b70f6781f2b36cf093f05","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.11_1773489341171_0.0060592144261939485","host":"s3://npm-registry-packages-npm-production"}},"2.1.12":{"name":"reixo","version":"2.1.12","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.12","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"4ea15b495900fc012797d4224b2786d0ca0a77ef","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.12.tgz","fileCount":7,"integrity":"sha512-c4KHtYRQdHKnwpF6Ay5LCuVFDZ+bYvgjVaqmc5hxK4yaX6eEoPnyS/S4JR2gEgRlnF8nJw7RpYrYl7pZt8LSKw==","signatures":[{"sig":"MEQCICjp+ux1i25h4JOtQIzEhKDnmJwYULR3/TBK7H/yT72gAiA+AKqrBTVmLMbzi/ogBYbQreCvSf0lapTxz56XFx+NSw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":528950},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"49d47a70e4e3f548b67fbfb66795b5bdf8055f9b","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.12_1773489555998_0.5244961610396175","host":"s3://npm-registry-packages-npm-production"}},"2.1.13":{"name":"reixo","version":"2.1.13","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.13","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"32d03fb9bf4f11ab274b595dbbdd95b1270e85b7","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.13.tgz","fileCount":7,"integrity":"sha512-DrGGKxLdLwNJGbwehQxeIfCrfZ0EXKNgGaRdoyM94UV3QMQ0HzorReHLzSdXfAQltt7IVpewwNNaGokTNZ+FmA==","signatures":[{"sig":"MEUCIBf6r2PQ8S+chZLqILBI6/MQ2rahWOM00mD6OktMKD85AiEAii4G3Zg0iXQPk6HQgU6pcLsFc0hL0+QJtNcmX2Uvt84=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":528950},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"03d16f5efbf87764ef40c2e6167b5fdd05cb1109","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.13_1773491306075_0.09867918436058543","host":"s3://npm-registry-packages-npm-production"}},"2.1.14":{"name":"reixo","version":"2.1.14","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.14","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"8796436c4b7b826a0f800fc9ba176bcaed152815","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.14.tgz","fileCount":7,"integrity":"sha512-++FIhnMo+TXhq9Gzud+dYTpQE/8qKDbAwi9iFxPtSEAUW0n1H0t9r0Nsn0vOFfNHpkSwRNHhJ/VOMNGeknSTvQ==","signatures":[{"sig":"MEUCIQCZAm/ssjb4Lflr1GS0VMtk1ROWoIDFjhXw05rDoTcNXQIgZ2rORBVf5rSMo26cat8UtTOPHO8TkA3sp9f8BNNebJs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":541682},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"db7b7c33fcbca486ddfad4efb05b759dbbac787c","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"20.20.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.14_1773494976199_0.866259224296164","host":"s3://npm-registry-packages-npm-production"}},"2.1.15":{"name":"reixo","version":"2.1.15","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.15","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"3302f6afbb17e121c7f0ba225f28422d43bcb84b","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.15.tgz","fileCount":7,"integrity":"sha512-zhQMuUC4Ii5LKkUzhilZSv8RnjWo/toliaScZtYtVxK0wfWIjKZukFwjVdpaXa58c4wFvcRoevDNsfUbQ+M8Wg==","signatures":[{"sig":"MEUCIQC6raKG0IH24EN3zDQgj5G5yUXyfKavFSy6fWp+4i288AIgTH6g+VzutWcFhtXW/KgeXeK+enIDGloTBY405unfyhc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":549281},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"a716d3ae3d7d8d696aef807f91c6885bd065a653","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","size":"size-limit","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","postbuild":"rm -f tsup.config.bundled_*.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"size-limit":[{"name":"ESM (gzipped)","path":"dist/index.mjs","limit":"100 KB"},{"name":"CJS (gzipped)","path":"dist/index.js","limit":"100 KB"}],"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","size-limit":"^11.0.0","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@size-limit/preset-small-lib":"^11.0.0","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.15_1773497254520_0.1792419571390591","host":"s3://npm-registry-packages-npm-production"}},"2.1.16":{"name":"reixo","version":"2.1.16","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.16","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"02e2f455ec1f2c48fe57c0e1b4a8f0b3b061e75d","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.16.tgz","fileCount":7,"integrity":"sha512-y+VyiooAOg3HrPal657EOn1thT9gKiYzCLquQNm2noU0ycopqaGlibmS85+B08aCawDXgJpgSPPDsJECLNK/JA==","signatures":[{"sig":"MEUCIQCe9DA74ZnPlGXsgcLZSXJipwfFq/c2meKmTmIAAyzzmAIgBLubU/IYBZFzERGyTQujQJ6uIlg4ev6pzNr48uoqi6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":549281},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"056b4c00b9859d6686d09018aa828f83e381e69b","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","size":"size-limit","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","postbuild":"rm -f tsup.config.bundled_*.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"size-limit":[{"name":"ESM (gzipped)","path":"dist/index.mjs","limit":"100 KB"},{"name":"CJS (gzipped)","path":"dist/index.js","limit":"100 KB"}],"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","size-limit":"^11.0.0","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@size-limit/preset-small-lib":"^11.0.0","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.16_1773497972196_0.1023898889751067","host":"s3://npm-registry-packages-npm-production"}},"2.1.17":{"name":"reixo","version":"2.1.17","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.1.17","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"2c54afc7965bc0a230cdfbbc27deaf6c55c2d173","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.1.17.tgz","fileCount":7,"integrity":"sha512-XkSlyUtjD32CFtyC7iLm+LuvvJS0wv3DEiiZ6/BaNytE7iwOBC4TiejUeKsQ+nH4TubJsvQwWxIBIO0Dm3EKWw==","signatures":[{"sig":"MEUCIQDYDAHEvp4qagRLCjwfZE9uV8nHEa9SHNZVoEEGWpzZJwIgI5eNgup9wqHUziLDkko88UYlKeljqyLFfihphvMexWI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.1.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":549281},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"f4b3c8082480453142facdee40f209151a17e315","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","size":"size-limit","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","postbuild":"rm -f tsup.config.bundled_*.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"size-limit":[{"name":"ESM (gzipped)","path":"dist/index.mjs","limit":"100 KB"},{"name":"CJS (gzipped)","path":"dist/index.js","limit":"100 KB"}],"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"22.22.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","size-limit":"^11.0.0","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@size-limit/preset-small-lib":"^11.0.0","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.1.17_1773498651332_0.7172726192177428","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"reixo","version":"2.2.0","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.2.0","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://github.com/webcoderspeed/reixo","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"3ac3b7c1f63ca937e7b41713df2b844a658accdf","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.2.0.tgz","fileCount":7,"integrity":"sha512-DWrBExptEPdx30vxnj7VX9FG364h/sYOZahEo95YLBAm6SHflfnJyKEAx+OXHC8iZlqH5GVuOmuccDZVr0S30Q==","signatures":[{"sig":"MEYCIQCI99dVAjEpMmdBsVNO+kOh9J+/RCnoH6wfrKxnKSMY7AIhAJ7LRyAGNI6Jc6u9P02cX1sHZ5lxMkW9hvIEeQmqVAYz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":549788},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=20.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.js","require":"./dist/index.js"},"./ws":{"types":"./dist/ws.d.ts","import":"./dist/ws.mjs","require":"./dist/ws.js"},"./sse":{"types":"./dist/sse.d.ts","import":"./dist/sse.mjs","require":"./dist/sse.js"},"./mock":{"types":"./dist/mock.d.ts","import":"./dist/mock.mjs","require":"./dist/mock.js"},"./graphql":{"types":"./dist/graphql.d.ts","import":"./dist/graphql.mjs","require":"./dist/graphql.js"},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"b99c93abc56740ed48cc879024119e856b1f06e8","scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js --fix","size":"size-limit","test":"vitest run","build":"tsup src/index.ts --format cjs,esm --dts --clean --sourcemap","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ui":"vitest --ui","lint:fix":"eslint . --fix","benchmark":"npm run build && node benchmarks/run.mjs","postbuild":"rm -f tsup.config.bundled_*.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build && npm run test && npm run lint && npm run lint:check && npm run typecheck","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"size-limit":[{"name":"ESM (gzipped)","path":"dist/index.mjs","limit":"100 KB"},{"name":"CJS (gzipped)","path":"dist/index.js","limit":"100 KB"}],"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","husky":"^9.1.7","eslint":"^9.39.2","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","size-limit":"^11.0.0","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@size-limit/preset-small-lib":"^11.0.0","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.2.0_1773499896393_0.08424468186318257","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"reixo","version":"2.2.1","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"author":{"url":"https://webcoderspeed.com","name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com"},"license":"MIT","_id":"reixo@2.2.1","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"homepage":"https://webcoderspeed.github.io/reixo/","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"dist":{"shasum":"b706b035530dfef5ec8180b21f49f8bcbbf5e535","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.2.1.tgz","fileCount":49,"integrity":"sha512-W+Vl0N1NxJoFR73C135c8/cClws3goxnPOeoj14Zmzd9+i9RY/LtnRNRICowF7K8JzLKnWR3p6NEcnJ0wy0Zow==","signatures":[{"sig":"MEUCIEdpr0ijSVukcDNWa4KZfZffCffKwmRtqz5s96tXwcagAiEAsqmlFMv346oLbHVlTJiPoV4Ti9pi0tgNdA2vSxZxp4w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":558470},"main":"./dist/index.js","types":"./dist/index.d.ts","config":{"commitizen":{"path":"cz-conventional-changelog"}},"module":"./dist/index.mjs","engines":{"npm":">=7.0.0","node":">=20.0.0"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"default":"./dist/index.js","require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./ws":{"import":{"types":"./dist/ws.d.mts","default":"./dist/ws.mjs"},"require":{"types":"./dist/ws.d.ts","default":"./dist/ws.js"}},"./sse":{"import":{"types":"./dist/sse.d.mts","default":"./dist/sse.mjs"},"require":{"types":"./dist/sse.d.ts","default":"./dist/sse.js"}},"./mock":{"import":{"types":"./dist/mock.d.mts","default":"./dist/mock.mjs"},"require":{"types":"./dist/mock.d.ts","default":"./dist/mock.js"}},"./graphql":{"import":{"types":"./dist/graphql.d.mts","default":"./dist/graphql.mjs"},"require":{"types":"./dist/graphql.d.ts","default":"./dist/graphql.js"}},"./package.json":"./package.json"},"funding":{"url":"https://github.com/sponsors/webcoderspeed","type":"github"},"gitHead":"a3abd5f8f61afe09c99752711d675bd350e59898","scripts":{"ci":"npm run typecheck && npm run lint:check && npm run test:ci","dev":"tsdown --watch","demo":"npx tsx examples/demo.ts","lint":"eslint . --ext .ts,.js","size":"size-limit","test":"vitest run","build":"tsdown","check":"npm run typecheck && npm run lint:check","commit":"cz","format":"prettier --write .","prepare":"husky install","test:ci":"vitest run --coverage --reporter=verbose","test:ui":"vitest --ui","lint:fix":"eslint . --ext .ts,.js --fix","validate":"npm run build && npm run typecheck && npm run lint:check && npm run test:coverage","benchmark":"npm run build && node benchmarks/run.mjs","typecheck":"tsc --noEmit","lint:check":"eslint . --ext .ts,.js","test:watch":"vitest","format:check":"prettier --check .","test:coverage":"vitest run --coverage","prepublishOnly":"npm run validate","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","benchmark:realtime":"npx tsx benchmarks/realtime.ts"},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"repository":{"url":"git+https://github.com/webcoderspeed/reixo.git","type":"git"},"size-limit":[{"name":"ESM (gzipped)","path":"dist/index.mjs","limit":"100 KB"},{"name":"CJS (gzipped)","path":"dist/index.js","limit":"100 KB"}],"_npmVersion":"10.9.6","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","directories":{},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"sideEffects":false,"_nodeVersion":"22.22.0","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","eslint":"^9.39.2","tsdown":"^0.15.0","vitest":"^4.0.18","prettier":"^3.8.1","tinybench":"^6.0.0","@eslint/js":"^9.39.2","commitizen":"^4.3.1","size-limit":"^11.0.0","typescript":"^5.9.3","@types/node":"^22.0.0","lint-staged":"^16.2.7","@commitlint/cli":"^20.4.4","semantic-release":"^24.0.0","@commitlint/types":"^20.4.4","typescript-eslint":"^8.54.0","@vitest/coverage-v8":"^4.0.18","@semantic-release/git":"^10.0.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","cz-conventional-changelog":"^3.3.0","@semantic-release/changelog":"^6.0.3","@size-limit/preset-small-lib":"^11.0.0","@commitlint/config-conventional":"^20.4.4","eslint-plugin-simple-import-sort":"^12.1.1","conventional-changelog-conventionalcommits":"^8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/reixo_2.2.1_1773506346801_0.3376586443135621","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"reixo","version":"2.2.2","description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"default":"./dist/index.js"},"./graphql":{"import":{"types":"./dist/graphql.d.mts","default":"./dist/graphql.mjs"},"require":{"types":"./dist/graphql.d.ts","default":"./dist/graphql.js"}},"./ws":{"import":{"types":"./dist/ws.d.mts","default":"./dist/ws.mjs"},"require":{"types":"./dist/ws.d.ts","default":"./dist/ws.js"}},"./sse":{"import":{"types":"./dist/sse.d.mts","default":"./dist/sse.mjs"},"require":{"types":"./dist/sse.d.ts","default":"./dist/sse.js"}},"./mock":{"import":{"types":"./dist/mock.d.mts","default":"./dist/mock.mjs"},"require":{"types":"./dist/mock.d.ts","default":"./dist/mock.js"}},"./package.json":"./package.json"},"scripts":{"build":"tsdown","build:playground":"esbuild src/index.ts --bundle --format=iife --global-name=Reixo --outfile=playground/dist/reixo.js --platform=browser --minify","dev":"tsdown --watch","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","test:ui":"vitest --ui","lint":"eslint . --ext .ts,.js","lint:fix":"eslint . --ext .ts,.js --fix","lint:check":"eslint . --ext .ts,.js","format":"prettier --write .","format:check":"prettier --check .","typecheck":"tsc --noEmit","check":"npm run typecheck && npm run lint:check","test:ci":"vitest run --coverage --reporter=verbose","ci":"npm run typecheck && npm run lint:check && npm run test:ci","validate":"npm run build && npm run typecheck && npm run lint:check && npm run test:coverage","prepublishOnly":"npm run validate","demo":"npx tsx examples/demo.ts","benchmark":"npm run build && node benchmarks/run.mjs","benchmark:realtime":"npx tsx benchmarks/realtime.ts","size":"size-limit","prepare":"husky install","commit":"cz"},"repository":{"type":"git","url":"git+https://github.com/webcoderspeed/reixo.git"},"homepage":"https://webcoderspeed.github.io/reixo/","bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"author":{"name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com","url":"https://webcoderspeed.com"},"funding":{"type":"github","url":"https://github.com/sponsors/webcoderspeed"},"license":"MIT","sideEffects":false,"engines":{"node":">=20.0.0","npm":">=7.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":true},"lint-staged":{"*.{ts,js}":["eslint --fix","prettier --write"],"*.{json,md,yml,yaml,mjs,cjs}":["prettier --write"]},"devDependencies":{"@commitlint/cli":"^20.4.4","@commitlint/config-conventional":"^20.4.4","@commitlint/types":"^20.4.4","@eslint/js":"^9.39.2","@types/node":"^22.0.0","@vitest/coverage-v8":"^4.0.18","commitizen":"^4.3.1","cz-conventional-changelog":"^3.3.0","eslint":"^9.39.2","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","eslint-plugin-simple-import-sort":"^12.1.1","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^63.0.0","husky":"^9.1.7","lint-staged":"^16.2.7","prettier":"^3.8.1","semantic-release":"^24.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/git":"^10.0.1","conventional-changelog-conventionalcommits":"^8.0.0","@size-limit/preset-small-lib":"^11.0.0","size-limit":"^11.0.0","tinybench":"^6.0.0","tsdown":"^0.15.0","typescript":"^5.9.3","typescript-eslint":"^8.54.0","vitest":"^4.0.18"},"config":{"commitizen":{"path":"cz-conventional-changelog"}},"size-limit":[{"path":"dist/index.mjs","name":"ESM (gzipped)","limit":"100 KB"},{"path":"dist/index.js","name":"CJS (gzipped)","limit":"100 KB"}],"_id":"reixo@2.2.2","gitHead":"34861afc394c2636b7990cda323e152619a96435","_nodeVersion":"22.22.1","_npmVersion":"10.9.6","dist":{"integrity":"sha512-eAUrvCDxd7H8N2yA60g/6KMWn/UTPufZt6pY7+TUYwWa/TqLK7Car2S6Lc/sxPf3RwaUx6MtLnCY7vOcaTaoLA==","shasum":"c8dc4bd782969cdb00bb8a366911913337e82609","tarball":"https://registry.npmjs.org/reixo/-/reixo-2.2.2.tgz","fileCount":49,"unpackedSize":558470,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/reixo@2.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD6xtQ1ypPLyw/tV//hzaOs9dbh/luvbwPG4Ss4uyiW5wIhAL/jaC7KRzr9CIR/xfY7H2EsPWBs86b5NTPmXhyw8VDC"}]},"_npmUser":{"name":"speedsharma","email":"webcoderspeed@gmail.com"},"directories":{},"maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/reixo_2.2.2_1773507444567_0.8352659319270497"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-28T02:41:06.340Z","modified":"2026-03-14T16:57:25.072Z","1.0.0":"2026-01-28T02:41:06.507Z","1.1.1":"2026-01-28T17:26:05.745Z","1.2.0":"2026-01-28T19:45:55.815Z","1.2.1":"2026-01-28T20:04:15.669Z","1.3.0":"2026-01-29T02:35:39.835Z","2.0.0":"2026-01-29T19:09:00.643Z","2.0.1":"2026-01-29T19:35:07.079Z","2.0.2":"2026-01-29T19:48:47.894Z","2.1.0":"2026-01-30T15:47:54.401Z","2.1.1":"2026-01-30T15:58:23.568Z","2.1.2":"2026-03-13T12:01:55.899Z","2.1.3":"2026-03-13T12:43:53.723Z","2.1.4":"2026-03-13T13:39:09.555Z","2.1.5":"2026-03-13T15:21:21.257Z","2.1.6":"2026-03-13T15:58:32.871Z","2.1.7":"2026-03-14T09:48:17.411Z","2.1.8":"2026-03-14T10:24:02.463Z","2.1.9":"2026-03-14T11:25:45.239Z","2.1.10":"2026-03-14T11:41:29.464Z","2.1.11":"2026-03-14T11:55:41.375Z","2.1.12":"2026-03-14T11:59:16.189Z","2.1.13":"2026-03-14T12:28:26.217Z","2.1.14":"2026-03-14T13:29:36.354Z","2.1.15":"2026-03-14T14:07:34.723Z","2.1.16":"2026-03-14T14:19:32.433Z","2.1.17":"2026-03-14T14:30:51.550Z","2.2.0":"2026-03-14T14:51:36.576Z","2.2.1":"2026-03-14T16:39:07.037Z","2.2.2":"2026-03-14T16:57:24.750Z"},"bugs":{"url":"https://github.com/webcoderspeed/reixo/issues"},"author":{"name":"Sanjeev Sharma","email":"webcoderspeed@gmail.com","url":"https://webcoderspeed.com"},"license":"MIT","homepage":"https://webcoderspeed.github.io/reixo/","keywords":["http","http-client","fetch","axios","axios-alternative","ky","ofetch","got","retry","retry-logic","queue","typescript","typescript-http","resilience","circuit-breaker","request-deduplication","deduplication","opentelemetry","tracing","distributed-tracing","traceparent","w3c-trace-context","result","result-type","error-handling","pagination","graphql","websocket","sse","server-sent-events","offline","offline-support","caching","interceptors","rate-limiting","progress","nodejs","bun","deno","cloudflare-workers","edge-runtime","browser","network-errors","rate-limiting","no-throw","resumable-upload","chunked-upload","infinite-scroll","mock-adapter","jwt","auth-interceptor"],"repository":{"type":"git","url":"git+https://github.com/webcoderspeed/reixo.git"},"description":"TypeScript HTTP client with Result<T,E> returns, zero-dep OpenTelemetry tracing, request deduplication, retry, circuit breaker, offline queue, and GraphQL — for Node.js, Bun, Deno, and browsers","maintainers":[{"name":"speedsharma","email":"webcoderspeed@gmail.com"}],"readme":"# reixo\n\n<p align=\"center\">\n  <strong>The HTTP client that ships complete.</strong><br/>\n  TypeScript-first &middot; Result&lt;T,E&gt; returns &middot; Retry &middot; Circuit breaker &middot; GraphQL &middot; WebSocket &middot; OTel\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/reixo\"><img src=\"https://img.shields.io/npm/v/reixo\" alt=\"npm version\"/></a>\n  <a href=\"https://www.npmjs.com/package/reixo\"><img src=\"https://img.shields.io/npm/dm/reixo\" alt=\"npm downloads\"/></a>\n  <a href=\"https://bundlephobia.com/package/reixo\"><img src=\"https://img.shields.io/bundlephobia/minzip/reixo\" alt=\"bundle size\"/></a>\n  <a href=\"https://github.com/webcoderspeed/reixo/actions/workflows/ci.yml\"><img src=\"https://github.com/webcoderspeed/reixo/actions/workflows/ci.yml/badge.svg\" alt=\"CI\"/></a>\n  <a href=\"https://opensource.org/licenses/MIT\"><img src=\"https://img.shields.io/badge/License-MIT-blue.svg\" alt=\"MIT\"/></a>\n  <a href=\"https://www.typescriptlang.org/\"><img src=\"https://img.shields.io/badge/TypeScript-5.0%2B-blue\" alt=\"TypeScript\"/></a>\n  <a href=\"https://webcoderspeed.github.io/reixo/\"><img src=\"https://img.shields.io/badge/website-webcoderspeed.github.io-0ea5e9\" alt=\"website\"/></a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://webcoderspeed.github.io/reixo/\"><strong>Website</strong></a> &middot;\n  <a href=\"https://github.com/webcoderspeed/reixo\">GitHub</a> &middot;\n  <a href=\"https://www.npmjs.com/package/reixo\">npm</a> &middot;\n  <a href=\"https://github.com/webcoderspeed/reixo/issues\">Issues</a>\n</p>\n\n---\n\n## The HTTP client setup you assemble on every project\n\n```bash\n# The axios route:\nnpm install axios\n# ...then axios-retry for retry logic\n# ...then axios-cache-interceptor for caching\n# ...then discover circuit breaker doesn't exist\n# ...then wrap everything in try/catch on every call\n# ...then discover WebSocket, SSE, and GraphQL are not included\n\n# The ky route:\nnpm install ky\n# Browser-only by design. No circuit breaker, no offline queue,\n# no GraphQL, no WebSocket, no Result<T,E>.\n\n# Or:\nnpm install reixo\n```\n\nreixo ships **Result\\<T,E\\> returns · retry · circuit breaker · caching · request deduplication · offline queue · rate limiting · GraphQL · WebSocket · SSE · zero-dep OTel · infinite query · task queue · resumable upload** in one package — for Node.js 20+, Bun, Deno, Cloudflare Workers, Vercel Edge Runtime, and browsers. Zero extra installs.\n\n```typescript\nimport { HTTPClient } from 'reixo';\n\nconst client = new HTTPClient({\n  baseURL: 'https://api.example.com/v1',\n  retry: true, // 3 retries, exponential backoff, 5xx / 429 / 408\n  circuitBreaker: true, // open after 5 failures, reset after 30 s\n  cacheConfig: true, // in-memory LRU, 5 min TTL\n  enableDeduplication: true,\n});\n\nconst result = await client.tryGet<User>('/users/1');\nif (!result.ok) return handleError(result.error); // fully typed HTTPError\nconsole.log(result.data.name); // TypeScript knows the type here\n```\n\n---\n\n## Table of Contents\n\n- [Why reixo?](#why-reixo)\n- [Feature comparison](#feature-comparison)\n- [Installation](#installation)\n- [Quick start](#quick-start)\n- [HTTPClient configuration](#httpclient-configuration)\n- [Making requests](#making-requests)\n- [Result API — no-throw error handling](#result-api--no-throw-error-handling)\n- [Result utilities](#result-utilities)\n- [Interceptors](#interceptors)\n- [Retry](#retry)\n  - [Per-URL retry policies](#per-url-retry-policies)\n  - [withRetry standalone utility](#withretry-standalone-utility)\n- [Circuit breaker](#circuit-breaker)\n- [Caching](#caching)\n  - [subscribe — observe URL data changes](#subscribe--observe-url-data-changes)\n- [Request deduplication](#request-deduplication)\n- [Rate limiting](#rate-limiting)\n- [Offline queue](#offline-queue)\n- [Progress tracking](#progress-tracking)\n- [Metrics](#metrics)\n- [Request cancellation](#request-cancellation)\n- [Events](#events)\n- [Fluent builder — HTTPBuilder](#fluent-builder--httpbuilder)\n- [Authentication interceptor](#authentication-interceptor)\n- [Trace interceptor](#trace-interceptor)\n- [OpenTelemetry](#opentelemetry)\n- [SSR / edge header forwarding](#ssr--edge-header-forwarding)\n- [GraphQL client](#graphql-client)\n- [WebSocket client](#websocket-client)\n- [Server-Sent Events client](#server-sent-events-client)\n- [Polling](#polling)\n- [Pagination](#pagination)\n- [Infinite query](#infinite-query)\n- [Task queue](#task-queue)\n- [Pipeline](#pipeline)\n- [Resumable file upload](#resumable-file-upload)\n- [Batch processor](#batch-processor)\n- [Batch transport](#batch-transport)\n- [Network recorder](#network-recorder)\n- [Mock adapter](#mock-adapter)\n- [Network monitor](#network-monitor)\n- [Security utilities](#security-utilities)\n- [ConsoleLogger](#consolelogger)\n- [Timing utilities](#timing-utilities)\n- [Runtime detection](#runtime-detection)\n- [Error types](#error-types)\n- [Complete configuration reference](#complete-configuration-reference)\n- [Contributing](#contributing)\n- [License](#license)\n\n---\n\n## Why reixo?\n\n`fetch` doesn't retry. `axios` is synchronous-first and leaves resilience entirely to plugins. `ky` is browser-only. None of them give you a type-safe way to handle errors without try/catch.\n\nreixo takes a different approach: **everything ships built-in, and errors are values — not exceptions.**\n\n- **Result\\<T,E\\> by default** — `tryGet`, `tryPost`, etc. return `Ok | Err` discriminated unions; TypeScript enforces you handle both branches before accessing the data, removing entire classes of runtime errors\n- **Resilience stack** — retry with exponential backoff, circuit breaker with half-open probing, rate limiter, and an offline queue — all configured in one place, none requiring separate packages\n- **Request deduplication** — multiple simultaneous `GET` calls to the same URL share one network round-trip automatically\n- **Built-in caching** — LRU memory cache, `localStorage`/`sessionStorage` adapters, three strategies (`cache-first`, `network-first`, `stale-while-revalidate`), and `revalidateOnFocus` / `revalidateOnReconnect` hooks\n- **Real-time transports** — typed WebSocket client with reconnect + heartbeat, SSE client with named event types, all sharing the same retry/backoff interface\n- **GraphQL client** — built on `HTTPClient`; supports queries, mutations, and Automatic Persisted Queries\n- **Zero-dependency OTel** — W3C Traceparent support, custom span hooks, no OTEL SDK needed\n- **Data utilities** — infinite query, cursor pagination, async generator page-iteration, priority task queue with persistence, sync and async pipelines\n- **Developer ergonomics** — fluent `HTTPBuilder`, `MockAdapter` for tests, `NetworkRecorder` for fixture generation, `SecurityUtils` for log sanitisation\n- **Universal** — runs unchanged on Node.js 20+, Bun, Deno, Cloudflare Workers, Vercel Edge Runtime, and browsers\n\n---\n\n## Feature comparison\n\n| Feature                        | **reixo** |   axios   |   ky    | ofetch | got  |\n| ------------------------------ | :-------: | :-------: | :-----: | :----: | :--: |\n| TypeScript-first               |    yes    |  partial  |   yes   |  yes   | yes  |\n| Result\\<T,E\\> / no-throw API   |    yes    |    no     |   no    |   no   |  no  |\n| Retry (built-in)               |    yes    | plugin \\* |   yes   |  yes   | yes  |\n| Circuit breaker (built-in)     |    yes    |    no     |   no    |   no   |  no  |\n| Request deduplication          |    yes    |    no     |   no    |   no   |  no  |\n| Caching (built-in)             |    yes    | plugin \\* |   no    |  yes   |  no  |\n| Rate limiting (built-in)       |    yes    |    no     |   no    |   no   |  no  |\n| Offline queue                  |    yes    |    no     |   no    |   no   |  no  |\n| GraphQL client                 |    yes    |    no     |   no    |   no   |  no  |\n| WebSocket client               |    yes    |    no     |   no    |   no   |  no  |\n| SSE client                     |    yes    |    no     |   no    |   no   |  no  |\n| OTel tracing (zero-dep)        |    yes    |    no     |   no    |   no   |  no  |\n| Infinite query / pagination    |    yes    |    no     |   no    |   no   |  no  |\n| Task queue with persistence    |    yes    |    no     |   no    |   no   |  no  |\n| Resumable chunked upload       |    yes    |    no     |   no    |   no   |  no  |\n| MockAdapter for tests          |    yes    | plugin \\* |   no    |   no   |  no  |\n| Node + Browser + Edge runtimes |    yes    |    yes    | browser |  yes   | node |\n\n\\* requires a separate third-party package\n\n---\n\n## Installation\n\n```bash\nnpm install reixo\npnpm add reixo\nyarn add reixo\nbun add reixo\n```\n\n**Requirements:** TypeScript 5.0+, Node.js 20+\n\n**Platforms:** Node.js 20+ · Bun · Deno · Cloudflare Workers · Vercel Edge Runtime · Browsers\n\nNo peer dependencies required.\n\n---\n\n## Quick start\n\n```typescript\nimport { HTTPClient } from 'reixo';\n\nconst client = new HTTPClient({\n  baseURL: 'https://api.example.com/v1',\n  timeoutMs: 10_000,\n  retry: true, // 3 retries, exponential backoff, retries on 5xx / 429 / 408\n});\n\nconst response = await client.get<User>('/users/1');\nconsole.log(response.data); // User\n```\n\n---\n\n## HTTPClient configuration\n\n```typescript\nimport { HTTPClient, ConsoleLogger, LogLevel } from 'reixo';\n\nconst client = new HTTPClient({\n  baseURL: 'https://api.example.com/v1',\n  timeoutMs: 15_000,\n  headers: {\n    Authorization: 'Bearer <token>',\n    Accept: 'application/json',\n  },\n  retry: { maxRetries: 3, backoffFactor: 2, initialDelayMs: 500 },\n  cacheConfig: { ttl: 30_000 },\n  enableDeduplication: true,\n  enableMetrics: true,\n  rateLimit: { requests: 60, interval: 60_000 },\n  circuitBreaker: { failureThreshold: 5, resetTimeoutMs: 30_000 },\n  offlineQueue: true,\n  revalidateOnFocus: true,\n  revalidateOnReconnect: true,\n  logger: new ConsoleLogger(LogLevel.DEBUG),\n});\n```\n\n---\n\n## Making requests\n\nAll request methods are generic — the type parameter sets the type of `response.data`.\n\n```typescript\n// GET\nconst { data } = await client.get<User[]>('/users');\n\n// GET with query parameters\nconst { data } = await client.get<User[]>('/users', {\n  params: { role: 'admin', page: 1, limit: 20 },\n});\n// → GET /users?role=admin&page=1&limit=20\n\n// POST\nconst { data: created } = await client.post<User>('/users', { name: 'Alice' });\n\n// PUT\nawait client.put<User>('/users/1', { name: 'Alice Updated' });\n\n// PATCH\nawait client.patch<User>('/users/1', { name: 'Alice Patched' });\n\n// DELETE\nawait client.delete('/users/1');\n\n// HEAD / OPTIONS\nawait client.head('/users');\nawait client.options('/users');\n```\n\n### Per-request options\n\n```typescript\nawait client.post('/upload', formData, {\n  timeoutMs: 60_000,\n  headers: { 'X-Custom': 'value' },\n  retry: false,\n  signal: abortController.signal,\n  onUploadProgress: ({ loaded, total, progress }) => {\n    console.log(`${Math.round((progress ?? 0) * 100)}%`);\n  },\n});\n```\n\n### FormData helper\n\n```typescript\nimport { objectToFormData } from 'reixo';\n\nconst form = objectToFormData({ name: 'Alice', avatar: fileBlob });\nawait client.post('/profile', form);\n```\n\n---\n\n## Result API — no-throw error handling\n\nUse the `try*` methods to receive a `Result<T, E>` instead of throwing on HTTP errors. TypeScript enforces you to handle both branches before accessing the data.\n\n```typescript\nconst result = await client.tryGet<User>('/users/1');\n\nif (!result.ok) {\n  console.error(result.error.status); // fully typed HTTPError\n  return;\n}\n\nconsole.log(result.data.name); // TypeScript knows data is User here\n```\n\nAvailable try-methods: `tryGet`, `tryPost`, `tryPut`, `tryPatch`, `tryDelete`, `tryRequest`.\n\n---\n\n## Result utilities\n\n```typescript\nimport { ok, err, toResult, mapResult, unwrap, unwrapOr } from 'reixo';\n\n// Construct\nconst success = ok({ id: 1, name: 'Alice' });\nconst failure = err(new Error('Something went wrong'));\n\n// Wrap any promise — never throws\nconst result = await toResult(client.get<User>('/me'));\nif (!result.ok) handleError(result.error);\n\n// Transform the success value without unwrapping\nconst nameResult = mapResult(result, (r) => r.data.name);\n\n// Unwrap — throws if result.ok === false\nconst data = unwrap(result);\n\n// Unwrap with fallback — never throws\nconst data = unwrapOr(result, defaultUser);\n```\n\n---\n\n## Interceptors\n\nInterceptors run in push order (request) or reverse push order (response).\n\n```typescript\n// Request interceptor — inject auth header dynamically\nclient.interceptors.request.push({\n  onFulfilled: (config) => ({\n    ...config,\n    headers: { ...config.headers, Authorization: `Bearer ${getToken()}` },\n  }),\n  onRejected: (error) => Promise.reject(error),\n});\n\n// Response interceptor — unwrap a data envelope or log errors\nclient.interceptors.response.push({\n  onFulfilled: (response) => {\n    response.data = (response.data as { payload: unknown }).payload;\n    return response;\n  },\n  onRejected: (error) => {\n    console.error('Request failed:', error);\n    return Promise.reject(error);\n  },\n});\n```\n\n---\n\n## Retry\n\nPass `true` for sensible defaults (3 retries, exponential backoff, retries on 5xx / 429 / 408 and network errors), `false` to disable, or a `RetryOptions` object for full control.\n\n```typescript\nconst client = new HTTPClient({\n  retry: {\n    maxRetries: 5,\n    initialDelayMs: 500,\n    maxDelayMs: 30_000,\n    backoffFactor: 2,\n    jitter: true, // randomise delays to avoid thundering herd\n    retryCondition: (error) => error.status >= 500,\n    onRetry: (error, attempt) => {\n      console.log(`Retry ${attempt}:`, error.message);\n    },\n  },\n});\n```\n\n### Per-URL retry policies\n\nThe first matching pattern wins, overriding the global `retry` setting.\n\n```typescript\nconst client = new HTTPClient({\n  retry: true,\n  retryPolicies: [\n    { pattern: /\\/auth\\//, retry: false }, // never retry auth endpoints\n    { pattern: '/api/upload', retry: { maxRetries: 1 } },\n  ],\n});\n```\n\n### withRetry standalone utility\n\n```typescript\nimport { withRetry, RetryError } from 'reixo';\n\nconst data = await withRetry(() => fetch('/api/data'), {\n  maxRetries: 3,\n  initialDelayMs: 1000,\n});\n```\n\n---\n\n## Circuit breaker\n\nProtects downstream services by stopping requests after a failure threshold is reached, then probing again after a reset timeout. States cycle: `CLOSED` (normal) → `OPEN` (rejecting) → `HALF_OPEN` (probing).\n\n```typescript\nimport { CircuitBreaker } from 'reixo';\n\n// Inline configuration — creates a CircuitBreaker automatically\nconst client = new HTTPClient({\n  circuitBreaker: {\n    failureThreshold: 5, // open after 5 consecutive failures\n    resetTimeoutMs: 30_000, // try again after 30 s\n    halfOpenRetries: 2, // require 2 consecutive successes to close\n    fallback: async () => ({ data: cachedData }), // return when circuit is open\n    onStateChange: (from, to) => {\n      console.log(`Circuit breaker: ${from} → ${to}`);\n    },\n  },\n});\n\n// Shared instance — share state across multiple clients\nconst breaker = new CircuitBreaker({ failureThreshold: 3, resetTimeoutMs: 15_000 });\nconst clientA = new HTTPClient({ circuitBreaker: breaker });\nconst clientB = new HTTPClient({ circuitBreaker: breaker });\n```\n\n---\n\n## Caching\n\n```typescript\nimport { MemoryAdapter, WebStorageAdapter } from 'reixo';\n\n// In-memory LRU cache with defaults\nconst client = new HTTPClient({ cacheConfig: true });\n\n// Full options\nconst client = new HTTPClient({\n  cacheConfig: {\n    ttl: 60_000, // ms\n    strategy: 'stale-while-revalidate', // 'cache-first' | 'network-first' | 'stale-while-revalidate'\n    maxSize: 500,\n    storage: new MemoryAdapter(200), // LRU with 200-entry cap\n  },\n});\n\n// localStorage-backed (browser only)\nconst client = new HTTPClient({\n  cacheConfig: {\n    ttl: 300_000,\n    storage: new WebStorageAdapter('local'), // 'local' | 'session'\n  },\n});\n\n// Revalidate stale data on window focus or network reconnect\nconst client = new HTTPClient({\n  cacheConfig: { ttl: 30_000 },\n  revalidateOnFocus: true,\n  revalidateOnReconnect: true,\n});\n```\n\n### subscribe — observe URL data changes\n\n```typescript\n// Callback fires whenever the cached value for this URL is revalidated\nconst unsubscribe = client.subscribe('/api/users', (data) => {\n  console.log('Users updated:', data);\n});\n\nunsubscribe(); // stop observing\n```\n\n---\n\n## Request deduplication\n\nMultiple simultaneous GET requests to the same URL share one network call. Useful in data-loading patterns where multiple components request the same resource.\n\n```typescript\nconst client = new HTTPClient({ enableDeduplication: true });\n\n// Only one network request is made, all three callers receive the same result\nconst [a, b, c] = await Promise.all([\n  client.get('/users/1'),\n  client.get('/users/1'),\n  client.get('/users/1'),\n]);\n```\n\n`buildDedupKey` and `RequestDeduplicator` are also exported for use in custom transports.\n\n---\n\n## Rate limiting\n\nToken-bucket limiter applied globally before every outgoing request. Callers that exceed the limit wait in a FIFO queue.\n\n```typescript\nconst client = new HTTPClient({\n  rateLimit: { requests: 60, interval: 60_000 }, // 60 req / min\n});\n```\n\n---\n\n## Offline queue\n\nBuffers requests made while the device is offline and replays them automatically when connectivity is restored.\n\n```typescript\n// In-memory queue with automatic replay\nconst client = new HTTPClient({ offlineQueue: true });\n\n// Persistent queue — survives page reloads, auto-pauses when offline\nconst client = new HTTPClient({\n  offlineQueue: {\n    concurrency: 3,\n    storage: 'local', // 'memory' | 'local' | 'session' | StorageAdapter\n    storageKey: 'my-queue',\n    syncWithNetwork: true, // auto-pause / resume on network changes\n  },\n});\n```\n\n---\n\n## Progress tracking\n\n```typescript\n// Per-request upload progress\nawait client.post('/upload', fileData, {\n  onUploadProgress: ({ loaded, total, progress }) => {\n    const pct = Math.round((progress ?? 0) * 100);\n    console.log(`Upload: ${pct}%`);\n  },\n});\n\n// Per-request download progress\nawait client.get('/large-file', {\n  onDownloadProgress: ({ loaded, total }) => {\n    console.log(`Downloaded ${loaded} of ${total ?? '?'} bytes`);\n  },\n});\n\n// Global progress handlers applied to all requests\nconst client = new HTTPClient({\n  onUploadProgress: ({ loaded }) => console.log(`+${loaded} bytes uploaded`),\n  onDownloadProgress: ({ progress }) => console.log(progress),\n});\n```\n\n---\n\n## Metrics\n\n```typescript\nconst client = new HTTPClient({\n  enableMetrics: true,\n  onMetricsUpdate: (m) => {\n    console.log(`Requests: ${m.requestCount}, Errors: ${m.errorCount}`);\n  },\n});\n\n// Get a snapshot at any time\nconst snap = client.getMetrics();\n// snap.requestCount, snap.errorCount, snap.totalLatency,\n// snap.minLatency, snap.maxLatency, snap.averageLatency\n```\n\n---\n\n## Request cancellation\n\n```typescript\n// Cancel all in-flight requests (e.g. component unmount)\nclient.cancelAll();\n\n// Cancel a specific request by its ID\nconst { requestId, response } = client.requestWithId('/api/data');\nclient.cancel(requestId); // returns true if found and cancelled\n\n// Standard AbortSignal\nconst controller = new AbortController();\nclient.get('/api/data', { signal: controller.signal });\ncontroller.abort();\n\n// Register cleanup callbacks\nclient.onCleanup(() => console.log('cleanup'));\nclient.dispose(); // cancels all requests, triggers cleanup callbacks\n```\n\n---\n\n## Events\n\n`HTTPClient` extends `EventEmitter` and emits the following typed events.\n\n```typescript\nclient.on('request:start', ({ url, method, requestId }) => {});\nclient.on('response:success', ({ url, method, status, requestId, duration }) => {});\nclient.on('response:error', ({ url, method, error, requestId, duration }) => {});\nclient.on('upload:progress', ({ url, loaded, total, progress }) => {});\nclient.on('download:progress', ({ url, loaded, total, progress }) => {});\nclient.on('cache:revalidate', ({ url, key, data }) => {});\nclient.on('focus', () => {}); // window focused\nclient.on('online', () => {}); // network reconnected\n```\n\n---\n\n## Fluent builder — HTTPBuilder\n\n`HTTPBuilder` is a chainable builder that produces an `HTTPClient`. Every `with*` method mirrors a field in `HTTPClientConfig`.\n\n```typescript\nimport { HTTPBuilder } from 'reixo';\n\nconst client = new HTTPBuilder()\n  .withBaseURL('https://api.example.com/v1')\n  .withTimeout(10_000)\n  .withHeaders({ Accept: 'application/json' })\n  .withRetry({ maxRetries: 3, backoffFactor: 2 })\n  .withCache({ ttl: 30_000 })\n  .withRateLimit(60, 60_000)\n  .withCircuitBreaker({ failureThreshold: 5, resetTimeoutMs: 30_000 })\n  .withDeduplication()\n  .withMetrics()\n  .withLogger(new ConsoleLogger(LogLevel.DEBUG))\n  .withOTel({ endpoint: 'https://otel.example.com/v1/traces', serviceName: 'my-api' })\n  .withApiVersion('v2', 'url')\n  .withSSL({ rejectUnauthorized: true, ca: caCert })\n  .withOfflineQueue({ storage: 'local', syncWithNetwork: true })\n  .build();\n```\n\n---\n\n## Authentication interceptor\n\nInjects a Bearer token on every request and automatically refreshes it when the server returns 401, then retries the original request.\n\n```typescript\nimport { createAuthInterceptor } from 'reixo';\n\ncreateAuthInterceptor(client, {\n  getAccessToken: async () => localStorage.getItem('token') ?? '',\n  refreshTokens: async () => {\n    const res = await fetch('/auth/refresh', { method: 'POST' });\n    const { accessToken } = await res.json();\n    localStorage.setItem('token', accessToken);\n  },\n  onRefreshFailed: (error) => {\n    console.error('Token refresh failed, redirecting to login', error);\n    window.location.href = '/login';\n  },\n});\n```\n\n---\n\n## Trace interceptor\n\nInjects a unique trace ID header into every outgoing request for distributed tracing and log correlation.\n\n```typescript\nimport { createTraceInterceptor } from 'reixo';\n\nclient.interceptors.request.push(\n  createTraceInterceptor({\n    headerName: 'X-Correlation-ID', // default: 'x-request-id'\n    generateId: () => crypto.randomUUID(),\n  })\n);\n\n// Defaults are fine for most cases\nclient.interceptors.request.push(createTraceInterceptor());\n```\n\n---\n\n## OpenTelemetry\n\nZero-dependency W3C Traceparent / OpenTelemetry tracing — no OTEL SDK required.\n\n```typescript\nimport { HTTPBuilder, formatTraceparent, parseTraceparent } from 'reixo';\n\nconst client = new HTTPBuilder()\n  .withOTel({\n    endpoint: 'https://otel-collector.example.com/v1/traces',\n    serviceName: 'my-api',\n    onSpanStart: (span) => {\n      console.log('Span started:', span.traceId);\n    },\n    onSpanEnd: (span, response) => {\n      console.log(`Span ${span.traceId} ended in ${span.duration}ms`);\n    },\n  })\n  .build();\n\n// W3C Traceparent header helpers\nconst header = formatTraceparent({\n  traceId: '4bf92f3577b34da6a3ce929d0e0e4736',\n  spanId: '00f067aa0ba902b7',\n  flags: '01',\n});\n\nconst ctx = parseTraceparent('00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01');\n// { version: '00', traceId: '...', spanId: '...', flags: '01' }\n```\n\n---\n\n## SSR / edge header forwarding\n\nForward select headers (cookies, auth tokens, correlation IDs) from the incoming server request to outgoing upstream calls — works with any framework.\n\n```typescript\nimport { createSSRInterceptor } from 'reixo';\n\n// Next.js App Router\nclient.interceptors.request.push(\n  createSSRInterceptor(\n    () => Object.fromEntries(headers()), // next/headers\n    ['Cookie', 'Authorization', 'X-Request-ID'] // optional whitelist; omit to forward all\n  )\n);\n\n// Express\nclient.interceptors.request.push(createSSRInterceptor(() => req.headers));\n```\n\n---\n\n## GraphQL client\n\nBuilt on top of `HTTPClient`. Supports queries, mutations, and Automatic Persisted Queries (APQ).\n\n```typescript\nimport { GraphQLClient } from 'reixo';\n\nconst gql = new GraphQLClient('https://api.example.com/graphql', {\n  headers: { Authorization: 'Bearer <token>' },\n  enablePersistedQueries: false, // set true to enable APQ\n});\n\n// Query\nconst { data, errors } = await gql.query<{ user: User }>(\n  `query GetUser($id: ID!) {\n    user(id: $id) { id name email }\n  }`,\n  { id: '1' }\n);\n\n// Mutation\nconst { data: created } = await gql.mutate<{ createUser: User }>(\n  `mutation CreateUser($input: CreateUserInput!) {\n    createUser(input: $input) { id name }\n  }`,\n  { input: { name: 'Alice', email: 'alice@example.com' } }\n);\n\n// Access the underlying HTTPClient (interceptors, events, etc.)\ngql.client.interceptors.request.push(/* ... */);\n```\n\n---\n\n## WebSocket client\n\nFull-featured WebSocket wrapper with automatic reconnection, heartbeat keep-alive, and typed events.\n\n```typescript\nimport { WebSocketClient } from 'reixo';\n\nconst ws = new WebSocketClient({\n  url: 'wss://api.example.com/ws',\n  protocols: 'json', // or string[] for multiple\n  autoConnect: true, // default: true\n  reconnect: {\n    maxRetries: 10,\n    initialDelayMs: 1_000,\n    maxDelayMs: 30_000,\n    backoffFactor: 2,\n  },\n  heartbeat: {\n    interval: 30_000, // send ping every 30 s\n    message: 'ping', // string or object (auto-JSON-serialised)\n    timeout: 5_000, // close socket if no reply within 5 s\n  },\n});\n\nws.on('open', (e) => console.log('Connected'));\nws.on('message', (e) => console.log(JSON.parse(e.data)));\nws.on('error', (e) => console.error('WS error:', e));\nws.on('close', (e) => console.log('Closed:', e.code));\nws.on('reconnect', (n) => console.log(`Reconnect attempt #${n}`));\nws.on('reconnect:fail', (err) => console.error('Gave up reconnecting:', err));\n\nws.send('hello');\nws.sendJson({ type: 'subscribe', channel: 'prices' });\nws.close(1000, 'done');\n```\n\n---\n\n## Server-Sent Events client\n\n```typescript\nimport { SSEClient } from 'reixo';\n\nconst sse = new SSEClient({\n  url: 'https://api.example.com/events',\n  withCredentials: true,\n  reconnect: { maxRetries: 5, initialDelayMs: 1_000 },\n  // headers only work with fetch-based SSE polyfills\n  headers: { Authorization: 'Bearer <token>' },\n});\n\nsse.on('open', (e) => console.log('Connected'));\nsse.on('message', (e) => console.log(e.data));\nsse.on('error', (e) => console.error(e));\nsse.on('reconnect', (n) => console.log(`Reconnect attempt #${n}`));\nsse.on('reconnect:fail', (e) => console.error('Gave up:', e));\n\n// Named event types (server sends `event: user.created`)\nsse.addEventListener('user.created', (e) => console.log(JSON.parse(e.data)));\nsse.removeEventListener('user.created', handler);\n\nsse.close();\n```\n\n---\n\n## Polling\n\n```typescript\nimport { poll, PollingController } from 'reixo';\n\n// Simple helper — returns { promise, cancel }\nconst { promise, cancel } = poll(() => client.get<JobStatus>('/jobs/42'), {\n  interval: 2_000,\n  until: (res) => res.data.status === 'done',\n  timeout: 120_000,\n});\n\nconst result = await promise;\n\n// Adaptive interval — slow then fast as job nears completion\nconst { promise } = poll(() => client.get<Job>('/jobs/123'), {\n  interval: 5_000,\n  until: (res) => res.data.status === 'completed',\n  adaptiveInterval: (res) => (res.data.progress < 80 ? 5_000 : 1_000),\n  timeout: 60_000,\n});\n\n// Exponential backoff\nconst { promise, cancel } = poll(fetchStatus, {\n  interval: 1_000,\n  backoff: { factor: 1.5, maxInterval: 30_000 },\n  until: (res) => res.data.done,\n});\n\n// Bounded attempts with error handling\nconst { promise } = poll(fetchStatus, {\n  interval: 2_000,\n  maxAttempts: 20,\n  onError: (error, attempts) => {\n    if (attempts > 5) return false; // stop polling and re-throw\n    // anything else continues\n  },\n});\n\n// Low-level controller\nconst controller = new PollingController(task, options);\nawait controller.start();\ncontroller.stop();\nconst signal = controller.signal; // AbortSignal\n```\n\n---\n\n## Pagination\n\nAsync generator that automatically fetches subsequent pages.\n\n```typescript\nimport { paginate } from 'reixo';\n\nfor await (const page of paginate<User>(client, '/users', {\n  pageParam: 'page',\n  limitParam: 'limit',\n  limit: 20,\n  initialPage: 1,\n  resultsPath: 'data', // dot-path to the array in the response, e.g. 'meta.items'\n})) {\n  console.log('Page:', page); // User[]\n}\n\n// Custom stop condition\nfor await (const page of paginate<Post>(client, '/posts', {\n  limit: 50,\n  stopCondition: (response, items, totalFetched) => totalFetched >= 200,\n})) {\n  processPosts(page);\n}\n```\n\n---\n\n## Infinite query\n\nCursor-based or page-number-based infinite scrolling.\n\n```typescript\nimport { InfiniteQuery } from 'reixo';\n\nconst query = new InfiniteQuery<PostsPage>({\n  client,\n  url: '/posts',\n  initialPageParam: 1,\n  getNextPageParam: (lastPage) => lastPage.nextCursor ?? null,\n  getPreviousPageParam: (firstPage) => firstPage.prevCursor ?? null,\n});\n\n// Load first page\nawait query.fetchNextPage();\nconsole.log(query.data.pages); // PostsPage[]\nconsole.log(query.hasNextPage); // boolean\n\n// Keep loading forward\nwhile (query.hasNextPage) {\n  await query.fetchNextPage();\n}\n\n// Load a previous page (requires getPreviousPageParam)\nif (query.hasPreviousPage) {\n  await query.fetchPreviousPage();\n}\n\n// Status flags\nquery.isFetching;\nquery.isFetchingNextPage;\nquery.isFetchingPreviousPage;\nquery.error; // null or the thrown error\n\n// Cancel the in-flight fetch\nquery.abort();\n\n// Reset all state\nquery.reset();\n```\n\n---\n\n## Task queue\n\nPriority queue with concurrency control, dependency graph, optional persistence, and network-aware auto-pause.\n\n```typescript\nimport { TaskQueue } from 'reixo';\n\nconst queue = new TaskQueue({\n  concurrency: 3,\n  autoStart: true,\n  storage: 'local', // 'memory' | 'local' | 'session' | StorageAdapter\n  storageKey: 'upload-queue',\n  syncWithNetwork: true, // auto-pause when offline, resume when online\n});\n\n// Add tasks\nconst result = await queue.add(() => client.post('/upload', file), {\n  priority: 10, // higher number runs first\n  id: 'upload-photo',\n  dependencies: ['auth'], // wait for the 'auth' task to complete first\n  data: { filename: 'photo.jpg' }, // serialisable metadata (persisted)\n});\n\n// Cancel a pending task\nconst cancelled = queue.cancel('upload-photo'); // returns boolean\n\n// Pause / resume\nqueue.pause();\nqueue.resume();\n\n// Wait for all tasks to finish\nawait queue.drain();\n\n// Inspect\nconsole.log(queue.size); // pending tasks\nconsole.log(queue.active); // running tasks\nconsole.log(queue.isQueuePaused);\n\n// Async iterator\nfor await (const result of queue) {\n  console.log('Task completed:', result);\n  if (doneCondition) break;\n}\n\n// Events\nqueue.on('task:start', ({ id }) => {});\nqueue.on('task:completed', ({ id, result }) => {});\nqueue.on('task:error', ({ id, error }) => {});\nqueue.on('task:added', ({ id, priority }) => {});\nqueue.on('task:cancelled', ({ id }) => {});\nqueue.on('queue:drain', () => {});\nqueue.on('queue:paused', () => {});\nqueue.on('queue:resumed', () => {});\nqueue.on('queue:cleared', () => {});\nqueue.on('queue:restored', (metadata) => {\n  // Rebuild task functions from persisted metadata\n});\n```\n\n---\n\n## Pipeline\n\nChainable, fully type-safe data transformation — synchronous and async.\n\n```typescript\nimport { Pipeline, AsyncPipeline } from 'reixo';\n\n// Synchronous\nconst process = Pipeline.from<string>()\n  .map((s) => s.trim())\n  .map((s) => s.toUpperCase())\n  .tap((s) => console.log('Processing:', s))\n  .map((s) => ({ value: s, length: s.length }));\n\nconst result = process.execute('  hello world  ');\n// { value: 'HELLO WORLD', length: 11 }\n\n// Asynchronous\nconst fetchAndTransform = AsyncPipeline.from<string>()\n  .map(async (userId) => client.get<User>(`/users/${userId}`))\n  .map((response) => response.data)\n  .tap(async (user) => console.log('Fetched:', user.name));\n\nconst user = await fetchAndTransform.execute('42');\n```\n\n---\n\n## Resumable file upload\n\nChunked upload with parallel chunk support, progress tracking, and abort capability.\n\n```typescript\nimport { ResumableUploader } from 'reixo';\n\nconst uploader = new ResumableUploader(client);\n\nconst result = await uploader.upload('/upload', file, {\n  chunkSize: 5 * 1024 * 1024, // 5 MB chunks\n  parallel: 3, // upload 3 chunks concurrently\n  onProgress: ({ loaded, total, progress, chunk, totalChunks }) => {\n    console.log(`${Math.round(progress * 100)}% — chunk ${chunk}/${totalChunks}`);\n  },\n});\n\n// Abort mid-upload\nuploader.abort();\n```\n\n---\n\n## Batch processor\n\nGroups many individual async calls into batched executions to reduce round-trips.\n\n```typescript\nimport { BatchProcessor } from 'reixo';\n\nconst batcher = new BatchProcessor<string, User>(\n  async (userIds) => {\n    const res = await client.post<User[]>('/users/batch', { ids: userIds });\n    return res.data;\n  },\n  {\n    maxSize: 50, // flush when 50 items are queued\n    maxDelayMs: 20, // or after 20 ms — whichever comes first\n  }\n);\n\n// Individual callers — automatically batched behind the scenes\nconst [alice, bob] = await Promise.all([batcher.add('user-1'), batcher.add('user-2')]);\n```\n\n---\n\n## Batch transport\n\nWraps any transport function to automatically batch eligible requests.\n\n```typescript\nimport { createBatchTransport } from 'reixo';\n\nconst batchedTransport = createBatchTransport(defaultTransport, {\n  maxSize: 20,\n  maxDelayMs: 50,\n  shouldBatch: (url) => url.startsWith('/api/items'),\n  executeBatch: async (items) => {\n    const res = await fetch('/api/batch', {\n      method: 'POST',\n      body: JSON.stringify(items.map((i) => ({ url: i.url }))),\n    });\n    return res.json(); // must return HTTPResponse[] in same order\n  },\n});\n\nconst client = new HTTPClient({ transport: batchedTransport });\n```\n\n---\n\n## Network recorder\n\nRecords HTTP traffic during a session — useful for generating test fixtures and debugging.\n\n```typescript\nimport { NetworkRecorder } from 'reixo';\n\nconst recorder = new NetworkRecorder(client); // attaches interceptors automatically\n\nrecorder.start();\n\nawait client.get('/users');\nawait client.post('/users', { name: 'Alice' });\n\nrecorder.stop();\n\nconst records = recorder.getRecords();\n// [{ id, timestamp, url, method, requestHeaders, requestBody, status, responseBody, duration }, ...]\n\n// Generate test fixture JSON\nconst fixtures = recorder.generateFixtures();\n// [{ url, method, status, response }, ...]\n\nrecorder.clear();\n\n// Manually inject a fixture\nrecorder.record({\n  url: '/users/1',\n  method: 'GET',\n  status: 200,\n  duration: 42,\n  requestHeaders: {},\n  requestBody: null,\n  responseHeaders: {},\n  responseBody: { id: 1, name: 'Alice' },\n});\n```\n\n---\n\n## Mock adapter\n\nStub HTTP responses in tests without making real network calls.\n\n```typescript\nimport { MockAdapter } from 'reixo';\n\nconst mock = new MockAdapter();\n\n// Static responses\nmock.onGet('/users').reply(200, [{ id: 1, name: 'Alice' }]);\nmock.onPost('/users').reply(201, { id: 2, name: 'Bob' });\nmock.onDelete('/users/1').reply(204);\n\n// Dynamic response\nmock.onGet('/users/:id').reply((config) => {\n  const id = config.url?.split('/').pop();\n  return [200, { id, name: 'User ' + id }];\n});\n\n// Simulate an error\nmock.onGet('/flaky').reply(500, { message: 'Server error' });\n\n// Simulate a network error\nmock.onGet('/offline').networkError();\n\n// Simulate latency\nmock.onGet('/slow').reply(200, data, {}, { latency: 500 });\n\nconst client = new HTTPClient({ transport: mock.transport });\n\n// Clear all stubs\nmock.reset();\n```\n\n---\n\n## Network monitor\n\nReactive online/offline detection. Uses `window` browser events by default; optional active HEAD-ping polling for Node.js or restricted environments.\n\n```typescript\nimport { NetworkMonitor } from 'reixo';\n\n// Shared singleton\nconst monitor = NetworkMonitor.getInstance();\n\nmonitor.on('online', () => console.log('Back online'));\nmonitor.on('offline', () => console.log('Gone offline'));\n\nconsole.log(monitor.online); // current status (boolean)\n\n// Active polling — useful in Node.js or behind strict corporate firewalls\nmonitor.configure({\n  pingUrl: 'https://health.example.com/ping', // default: '/favicon.ico'\n  checkInterval: 30_000,\n});\n\n// Isolated instance (useful for tests)\nconst m = new NetworkMonitor({ checkInterval: 10_000 });\nm.destroy(); // clean up timers and listeners\nNetworkMonitor.resetInstance(); // reset the singleton\n```\n\n---\n\n## Security utilities\n\nSanitise sensitive headers and body fields before they appear in logs.\n\n```typescript\nimport { SecurityUtils } from 'reixo';\n\nconst safeHeaders = SecurityUtils.sanitizeHeaders({\n  Authorization: 'Bearer eyJhbGciOiJ...',\n  'Content-Type': 'application/json',\n  Cookie: 'session=abc123',\n});\n// { Authorization: '[REDACTED]', 'Content-Type': 'application/json', Cookie: '[REDACTED]' }\n\nconst safeBody = SecurityUtils.sanitizeBody({\n  username: 'alice',\n  password: 'secret123',\n  creditCard: '4111111111111111',\n});\n// { username: 'alice', password: '[REDACTED]', creditCard: '[REDACTED]' }\n```\n\n---\n\n## ConsoleLogger\n\nPluggable logger that implements the `Logger` interface expected by `HTTPClient`.\n\n```typescript\nimport { ConsoleLogger, LogLevel } from 'reixo';\n\n// Development — human-readable, debug level, redact auth headers\nconst logger = new ConsoleLogger({\n  level: LogLevel.DEBUG,\n  format: 'text',\n  prefix: '[MyApp:HTTP]',\n  redactHeaders: ['Authorization', 'Cookie', 'X-Api-Key'],\n});\n\n// Production — structured JSON, warnings and above only\nconst logger = new ConsoleLogger({\n  level: LogLevel.WARN,\n  format: 'json',\n  redactHeaders: ['Authorization', 'Cookie'],\n});\n\n// Short form (level only, defaults to text format)\nconst logger = new ConsoleLogger(LogLevel.DEBUG);\n\nconst client = new HTTPClient({ logger });\n```\n\nLog levels: `NONE = 0`, `ERROR = 1`, `WARN = 2`, `INFO = 3`, `DEBUG = 4`.\n\n---\n\n## Timing utilities\n\nAvailable as static methods on `HTTPClient` and as standalone named exports.\n\n```typescript\nimport { debounce, throttle, delay } from 'reixo';\n// or: HTTPClient.debounce, HTTPClient.throttle, HTTPClient.delay\n\n// Debounce — execute at most once per delay window\nconst handleSearch = debounce(\n  (query: string) => client.get('/search', { params: { q: query } }),\n  300\n);\n\n// Throttle — execute at most once per interval\nconst trackEvent = throttle((event: AnalyticsEvent) => client.post('/analytics', event), 1_000);\n\n// Delay — promisified setTimeout\nawait delay(500);\n```\n\n---\n\n## Runtime detection\n\n```typescript\nimport { detectRuntime, getRuntimeCapabilities, isBrowser, isNode, isEdgeRuntime } from 'reixo';\n\nconst runtime = detectRuntime();\n// 'browser' | 'node' | 'bun' | 'deno' | 'workerd' | 'edge-light' | 'fastly' | 'unknown'\n\nconst caps = getRuntimeCapabilities();\n// {\n//   name: 'node',\n//   hasFetch: true,\n//   hasStreams: true,\n//   hasCrypto: true,\n//   hasXHR: false,\n//   hasNodeErrorCodes: true,\n//   hasHTTP2: true,\n// }\n\nif (isBrowser()) console.log('Running in a browser');\nif (isNode()) console.log('Running in Node.js');\nif (isEdgeRuntime()) console.log('Running on Cloudflare Workers / Vercel Edge / Fastly');\n```\n\n---\n\n## Error types\n\n```typescript\nimport { HTTPError, AbortError, ValidationError } from 'reixo';\n\ntry {\n  await client.get('/api');\n} catch (error) {\n  if (error instanceof HTTPError) {\n    console.log(error.status); // HTTP status code (number)\n    console.log(error.response); // raw Response object\n    console.log(error.message); // human-readable description\n  }\n  if (error instanceof AbortError) {\n    console.log('Request was cancelled');\n  }\n  if (error instanceof ValidationError) {\n    console.log('Request configuration is invalid:', error.message);\n  }\n}\n```\n\n---\n\n## Complete configuration reference\n\n### HTTPClientConfig\n\n```typescript\ninterface HTTPClientConfig {\n  // Core\n  baseURL?: string;\n  timeoutMs?: number; // default: 30000\n  headers?: HeadersWithSuggestions;\n  transport?: HTTPRequestFunction;\n  logger?: Logger;\n\n  // Resilience\n  retry?: RetryOptions | boolean; // default: true\n  retryPolicies?: Array<{ pattern: string | RegExp; retry: RetryOptions | boolean }>;\n  circuitBreaker?: CircuitBreakerOptions | CircuitBreaker;\n\n  // Performance\n  rateLimit?: { requests: number; interval: number };\n  cacheConfig?: CacheOptions | boolean;\n  revalidateOnFocus?: boolean; // default: false\n  revalidateOnReconnect?: boolean; // default: false\n  enableDeduplication?: boolean; // default: false\n\n  // Observability\n  enableMetrics?: boolean;\n  onMetricsUpdate?: (metrics: Metrics) => void;\n\n  // Offline\n  offlineQueue?: boolean | PersistentQueueOptions;\n\n  // Progress\n  onUploadProgress?: (p: { loaded: number; total: number | null; progress: number | null }) => void;\n  onDownloadProgress?: (p: {\n    loaded: number;\n    total: number | null;\n    progress: number | null;\n  }) => void;\n\n  // API versioning\n  apiVersion?: string;\n  versioningStrategy?: 'url' | 'header'; // default: 'url'\n  versionHeader?: string; // default: 'Accept-Version'\n\n  // Node.js-specific\n  pool?: ConnectionPoolOptions;\n  ssl?: {\n    rejectUnauthorized?: boolean;\n    ca?: string | Buffer | Array<string | Buffer>;\n    cert?: string | Buffer | Array<string | Buffer>;\n    key?: string | Buffer | Array<string | Buffer>;\n    passphrase?: string;\n  };\n}\n```\n\n### RetryOptions\n\n```typescript\ninterface RetryOptions {\n  maxRetries?: number; // default: 3\n  initialDelayMs?: number; // default: 1000\n  maxDelayMs?: number; // default: 30000\n  backoffFactor?: number; // default: 2\n  jitter?: boolean; // default: false\n  retryCondition?: (error: HTTPError) => boolean;\n  onRetry?: (error: HTTPError, attempt: number) => void;\n}\n```\n\n### CircuitBreakerOptions\n\n```typescript\ninterface CircuitBreakerOptions {\n  failureThreshold?: number; // default: 5\n  resetTimeoutMs?: number; // default: 60000\n  halfOpenRetries?: number; // default: 1\n  fallback?: () => Promise<unknown>;\n  onStateChange?: (from: string, to: string) => void;\n}\n```\n\n### CacheOptions\n\n```typescript\ninterface CacheOptions {\n  ttl?: number; // ms; default: 300000\n  strategy?: 'cache-first' | 'network-first' | 'stale-while-revalidate';\n  maxSize?: number; // max entries; default: 1000\n  storage?: StorageAdapter; // MemoryAdapter | WebStorageAdapter | custom\n}\n```\n\n### PollingOptions\n\n```typescript\ninterface PollingOptions<T> {\n  interval: number;\n  timeout?: number;\n  maxAttempts?: number;\n  until?: (data: T) => boolean;\n  stopCondition?: (data: T) => boolean; // deprecated, prefer until\n  adaptiveInterval?: (data: T) => number;\n  onError?: (error: unknown, attempts: number) => boolean | void;\n  backoff?: boolean | { factor: number; maxInterval: number };\n}\n```\n\n### WebSocketConfig\n\n```typescript\ninterface WebSocketConfig {\n  url: string;\n  protocols?: string | string[];\n  reconnect?: boolean | RetryOptions; // true = 5 retries, exponential backoff\n  heartbeat?: {\n    interval: number;\n    message?: string | object; // default: 'ping'\n    timeout?: number;\n  };\n  autoConnect?: boolean; // default: true\n}\n```\n\n### SSEConfig\n\n```typescript\ninterface SSEConfig {\n  url: string;\n  withCredentials?: boolean; // default: false\n  reconnect?: boolean | RetryOptions; // true = 5 retries, exponential backoff\n  headers?: HeadersRecord; // only supported with fetch-based polyfills\n}\n```\n\n---\n\n## Contributing\n\nPull requests are welcome. For major changes, open an issue first to discuss what you'd like to change.\n\n```bash\ngit clone https://github.com/webcoderspeed/reixo.git\ncd reixo\nnpm install\nnpm run test       # run the test suite\nnpm run typecheck  # TypeScript checks\nnpm run lint:check # linting\nnpm run build      # compile to dist/\n```\n\nAll commits must follow [Conventional Commits](https://www.conventionalcommits.org/) — use `npm run commit` for the interactive prompt.\n\n---\n\n## License\n\nMIT\n","readmeFilename":"README.md"}