ethr-status-registry
Version:
Verifiable Credential status resolver using an ethereum contract as registry
67 lines • 2.69 kB
JavaScript
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.configureResolverWithNetworks = void 0;
var providers_1 = require("@ethersproject/providers");
function configureNetworksWithInfura(projectId) {
var networks = [
{ name: 'mainnet', rpcUrl: "https://mainnet.infura.io/v3/" + projectId },
{ name: '0x1', rpcUrl: "https://mainnet.infura.io/v3/" + projectId },
{ name: 'ropsten', rpcUrl: "https://ropsten.infura.io/v3/" + projectId },
{ name: '0x3', rpcUrl: "https://ropsten.infura.io/v3/" + projectId },
{ name: 'rinkeby', rpcUrl: "https://rinkeby.infura.io/v3/" + projectId },
{ name: '0x4', rpcUrl: "https://rinkeby.infura.io/v3/" + projectId },
{ name: 'goerli', rpcUrl: "https://goerli.infura.io/v3/" + projectId },
{ name: '0x5', rpcUrl: "https://goerli.infura.io/v3/" + projectId },
{ name: 'kovan', rpcUrl: "https://kovan.infura.io/v3/" + projectId },
{ name: '0x2a', rpcUrl: "https://kovan.infura.io/v3/" + projectId }
];
return configureNetworks(networks);
}
function configureProvider(conf) {
if (conf === void 0) { conf = {}; }
if (conf.provider) {
return conf.provider;
}
else if (conf.web3) {
return conf.web3.currentProvider;
}
else {
return new providers_1.JsonRpcProvider(conf.rpcUrl || 'http://127.0.0.1:8545/');
}
}
function configureNetwork(conf) {
if (conf === void 0) { conf = {}; }
return configureProvider(conf);
}
function configureNetworks(networksConf) {
if (networksConf === void 0) { networksConf = []; }
var networks = {};
for (var _i = 0, networksConf_1 = networksConf; _i < networksConf_1.length; _i++) {
var net = networksConf_1[_i];
networks[net.name || ''] = configureNetwork(net);
}
return networks;
}
function configureResolverWithNetworks(conf) {
var networks = {};
if (typeof conf.infuraProjectId === 'string') {
networks = configureNetworksWithInfura(conf.infuraProjectId);
}
else {
networks = __assign({ mainnet: configureNetwork(conf) }, configureNetworks(conf.networks));
}
return networks;
}
exports.configureResolverWithNetworks = configureResolverWithNetworks;
//# sourceMappingURL=configuration.js.map
;