This package makes it easy to provide an aggregator by proxying another. The primary use-case is to expose a free aggregator based on one that requires payment by augmenting the bundles with transactions that pay tx.origin
.
npm install bls-wallet-aggregator-proxy
yarn install bls-wallet-aggregator-proxy
import {
runAggregatorProxy,
// AggregatorProxyCallback,
// ^ Alternatively, for manual control, import AggregatorProxyCallback to
// just generate the req,res callback for use with http.createServer
} from "bls-wallet-aggregator-proxy";
runAggregatorProxy(
"https://arbitrum-goerli.blswallet.org",
async (bundle) => {
console.log("proxying bundle", JSON.stringify(bundle, null, 2));
// Return a different/augmented bundle to send to the upstream aggregator
return bundle;
},
8080,
"0.0.0.0",
() => {
console.log("Proxying aggregator on port 8080");
}
);