@bhayward93/web3modal-angular
Version:
Web3Modal implementation for Angular
45 lines • 5.52 kB
JavaScript
import { ProviderController } from '..';
export class Web3WalletConnector {
constructor(configOptions) {
this.providers = [];
this.setConfiguration = (options) => {
this.providerController = new ProviderController(options);
this.clearCachedProvider();
this.providers = this.providerController.getUserOptions();
};
if (!configOptions) {
this.providerController = new ProviderController({
disableInjectedProvider: false,
cacheProvider: false,
providerOptions: {},
network: "",
});
}
else {
this.providerController = new ProviderController(configOptions);
}
this.providers = this.providerController.getUserOptions();
}
get cachedProvider() {
return this.providerController.cachedProvider;
}
async checkIfCachedProviderOrSingleOption() {
if (this.cachedProvider) {
await this.providerController.connectToCachedProvider();
return;
}
if (this.providers &&
this.providers.length === 1 &&
this.providers[0].name) {
await this.providers[0].onClick();
return;
}
}
clearCachedProvider() {
this.providerController.clearCachedProvider();
}
setCachedProvider(id) {
this.providerController.setCachedProvider(id);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dlYjNtb2RhbC9zcmMvbGliL3dlYjNtb2RhbC10cy9zcmMvY29yZS9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0Qsa0JBQWtCLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFFMUYsTUFBTSxPQUFPLG1CQUFtQjtJQUk5QixZQUFZLGFBQTBDO1FBSC9DLGNBQVMsR0FBMkIsRUFBRSxDQUFDO1FBc0I5QyxxQkFBZ0IsR0FBRyxDQUFDLE9BQW1DLEVBQVEsRUFBRTtZQUMvRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUUzQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM1RCxDQUFDLENBQUM7UUF2QkEsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLGtCQUFrQixDQUFDO2dCQUMvQyx1QkFBdUIsRUFBRSxLQUFLO2dCQUM5QixhQUFhLEVBQUUsS0FBSztnQkFDcEIsZUFBZSxFQUFFLEVBQUU7Z0JBQ25CLE9BQU8sRUFBRSxFQUFFO2FBQ1osQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNsRSxDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDM0QsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUM7SUFDaEQsQ0FBQztJQVNELEtBQUssQ0FBQyxtQ0FBbUM7UUFDdkMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDeEIsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztZQUN4RCxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQ0UsSUFBSSxDQUFDLFNBQVM7WUFDZCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUN0QixDQUFDO1lBQ0QsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xDLE9BQU87UUFDVCxDQUFDO0lBQ0gsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsa0JBQWtCLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBVTtRQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVByb3ZpZGVyQ29udHJvbGxlck9wdGlvbnMsIElQcm92aWRlclVzZXJPcHRpb25zLCBQcm92aWRlckNvbnRyb2xsZXIgfSBmcm9tICcuLic7XG5cbmV4cG9ydCBjbGFzcyBXZWIzV2FsbGV0Q29ubmVjdG9yIHtcbiAgcHVibGljIHByb3ZpZGVyczogSVByb3ZpZGVyVXNlck9wdGlvbnNbXSA9IFtdO1xuICBwdWJsaWMgcHJvdmlkZXJDb250cm9sbGVyOiBQcm92aWRlckNvbnRyb2xsZXI7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnT3B0aW9ucz86IElQcm92aWRlckNvbnRyb2xsZXJPcHRpb25zKSB7XG4gICAgaWYgKCFjb25maWdPcHRpb25zKSB7XG4gICAgICB0aGlzLnByb3ZpZGVyQ29udHJvbGxlciA9IG5ldyBQcm92aWRlckNvbnRyb2xsZXIoe1xuICAgICAgICBkaXNhYmxlSW5qZWN0ZWRQcm92aWRlcjogZmFsc2UsXG4gICAgICAgIGNhY2hlUHJvdmlkZXI6IGZhbHNlLFxuICAgICAgICBwcm92aWRlck9wdGlvbnM6IHt9LFxuICAgICAgICBuZXR3b3JrOiBcIlwiLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucHJvdmlkZXJDb250cm9sbGVyID0gbmV3IFByb3ZpZGVyQ29udHJvbGxlcihjb25maWdPcHRpb25zKTtcbiAgICB9XG5cbiAgICB0aGlzLnByb3ZpZGVycyA9IHRoaXMucHJvdmlkZXJDb250cm9sbGVyLmdldFVzZXJPcHRpb25zKClcbiAgfVxuXG4gIGdldCBjYWNoZWRQcm92aWRlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3ZpZGVyQ29udHJvbGxlci5jYWNoZWRQcm92aWRlcjtcbiAgfVxuXG4gIHNldENvbmZpZ3VyYXRpb24gPSAob3B0aW9uczogSVByb3ZpZGVyQ29udHJvbGxlck9wdGlvbnMpOiB2b2lkID0+IHtcbiAgICB0aGlzLnByb3ZpZGVyQ29udHJvbGxlciA9IG5ldyBQcm92aWRlckNvbnRyb2xsZXIob3B0aW9ucyk7XG4gICAgdGhpcy5jbGVhckNhY2hlZFByb3ZpZGVyKCk7XG5cbiAgICB0aGlzLnByb3ZpZGVycyA9IHRoaXMucHJvdmlkZXJDb250cm9sbGVyLmdldFVzZXJPcHRpb25zKCk7XG4gIH07XG5cbiAgYXN5bmMgY2hlY2tJZkNhY2hlZFByb3ZpZGVyT3JTaW5nbGVPcHRpb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuY2FjaGVkUHJvdmlkZXIpIHtcbiAgICAgIGF3YWl0IHRoaXMucHJvdmlkZXJDb250cm9sbGVyLmNvbm5lY3RUb0NhY2hlZFByb3ZpZGVyKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHRoaXMucHJvdmlkZXJzICYmXG4gICAgICB0aGlzLnByb3ZpZGVycy5sZW5ndGggPT09IDEgJiZcbiAgICAgIHRoaXMucHJvdmlkZXJzWzBdLm5hbWVcbiAgICApIHtcbiAgICAgIGF3YWl0IHRoaXMucHJvdmlkZXJzWzBdLm9uQ2xpY2soKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBjbGVhckNhY2hlZFByb3ZpZGVyKCk6IHZvaWQge1xuICAgIHRoaXMucHJvdmlkZXJDb250cm9sbGVyLmNsZWFyQ2FjaGVkUHJvdmlkZXIoKTtcbiAgfVxuXG4gIHNldENhY2hlZFByb3ZpZGVyKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnByb3ZpZGVyQ29udHJvbGxlci5zZXRDYWNoZWRQcm92aWRlcihpZCk7XG4gIH1cbn1cbiJdfQ==