UNPKG

@tezos-x/octez.connect-dapp

Version:

Use this package on your dApp to instanciate a DAppClient object and communicate to wallets.

34 lines • 1.32 kB
import { StorageKey, TransportStatus } from '@tezos-x/octez.connect-types'; import { Logger } from '@tezos-x/octez.connect-core'; import { P2PTransport } from '@tezos-x/octez.connect-transport-matrix'; const logger = new Logger('DappP2PTransport'); /** * @internalapi * * */ export class DappP2PTransport extends P2PTransport { constructor(name, keyPair, storage, matrixNodes, iconUrl, appUrl) { super(name, keyPair, storage, matrixNodes, StorageKey.TRANSPORT_P2P_PEERS_DAPP, iconUrl, appUrl); } async startOpenChannelListener() { return this.client.listenForChannelOpening(async (peer) => { logger.log('listenForNewPeer', `new publicKey`, peer.publicKey); await this.addPeer(peer); this._isConnected = TransportStatus.CONNECTED; if (this.newPeerListener) { this.newPeerListener(peer); this.newPeerListener = undefined; // TODO: Remove this once we use the id } }); } async listenForNewPeer(newPeerListener) { logger.log('listenForNewPeer'); this.newPeerListener = newPeerListener; } async stopListeningForNewPeers() { logger.log('stopListeningForNewPeers'); this.newPeerListener = undefined; } } //# sourceMappingURL=DappP2PTransport.js.map