Misc Playground/Docs fixes
This commit is contained in:
@@ -48,13 +48,9 @@ export type BlockchainElectrumEvents = {
|
||||
};
|
||||
|
||||
export type BlockchainElectrumOpts = {
|
||||
servers: Array<string>;
|
||||
application: string;
|
||||
};
|
||||
|
||||
export type BlockchainElectrumParams = {
|
||||
store?: BaseStore;
|
||||
opts?: Partial<BlockchainElectrumOpts>;
|
||||
servers?: Array<string>;
|
||||
application?: string;
|
||||
};
|
||||
|
||||
export class BlockchainElectrum extends BaseBlockchain<
|
||||
@@ -82,24 +78,20 @@ export class BlockchainElectrum extends BaseBlockchain<
|
||||
|
||||
// Options
|
||||
store: BaseStore;
|
||||
opts: BlockchainElectrumOpts;
|
||||
servers: Array<string>;
|
||||
application: string;
|
||||
|
||||
constructor(public readonly params: BlockchainElectrumParams = {}) {
|
||||
constructor(public readonly opts: BlockchainElectrumOpts = {}) {
|
||||
super();
|
||||
|
||||
// Set the store, or use the memory store by default.
|
||||
this.store = params.store ?? new StoreInMemory();
|
||||
|
||||
// Combine provided options with default options.
|
||||
this.opts = {
|
||||
servers: [
|
||||
'bch.imaginary.cash',
|
||||
'cashnode.bch.ninja',
|
||||
'electrum.imaginary.cash',
|
||||
],
|
||||
application: 'XOApp',
|
||||
...params.opts,
|
||||
};
|
||||
this.store = opts.store ?? new StoreInMemory();
|
||||
this.servers = opts.servers ?? [
|
||||
'bch.imaginary.cash',
|
||||
'cashnode.bch.ninja',
|
||||
'electrum.imaginary.cash',
|
||||
];
|
||||
this.application = opts.application ?? 'XOApp';
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -109,9 +101,9 @@ export class BlockchainElectrum extends BaseBlockchain<
|
||||
*/
|
||||
static async from<T extends typeof BlockchainElectrum>(
|
||||
this: T,
|
||||
params: BlockchainElectrumParams = {},
|
||||
opts: BlockchainElectrumOpts = {},
|
||||
) {
|
||||
const blockchain = new this(params);
|
||||
const blockchain = new this(opts);
|
||||
|
||||
await blockchain.start();
|
||||
|
||||
@@ -125,10 +117,10 @@ export class BlockchainElectrum extends BaseBlockchain<
|
||||
// Iterate over each server in our list of servers.
|
||||
// NOTE: We are still using an Electrum Client due to the above bug.
|
||||
// But, if we cannot connect to the first server, we will try the second (and third if given, etc) as a fallback.
|
||||
for (const electrumServer of this.opts.servers) {
|
||||
for (const electrumServer of this.servers) {
|
||||
// Initialize an Electrum client using the given server.
|
||||
const electrum = await initializeElectrumClient(
|
||||
this.opts.application,
|
||||
this.application,
|
||||
electrumServer,
|
||||
);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user