UNPKG

@nori-zk/mina-token-bridge

Version:

A Mina zk-program contract allowing users to mint tokens on Nori Bridge.

31 lines 1.61 kB
import { map, switchMap, take } from 'rxjs'; import { getReconnectingBridgeSocket$ } from './socket.js'; import { getBridgeStateTopic$, getBridgeTimingsTopic$, getEthStateTopic$, } from './topics.js'; import { getBridgeStateWithTimings$ } from './state.js'; import { getDepositProcessingStatus$ } from './deposit.js'; // Util for testing Obserables function testSub($) { $.subscribe({ error: console.error, next: console.log, complete: () => console.log('complete'), }); } const { bridgeSocket$, bridgeSocketConnectionState$ } = getReconnectingBridgeSocket$(); const bridgeStateTopic$ = getBridgeStateTopic$(bridgeSocket$); const bridgeTimingsTopic$ = getBridgeTimingsTopic$(bridgeSocket$); const ethStateTopic$ = getEthStateTopic$(bridgeSocket$); const bridgeStateWithTimings$ = getBridgeStateWithTimings$(bridgeStateTopic$, bridgeTimingsTopic$); const nextFinalizationTarget$ = ethStateTopic$.pipe(take(1)); const depositProcessingStatus$ = nextFinalizationTarget$.pipe(take(1), map(({ latest_finality_block_number }) => latest_finality_block_number + 10), switchMap((target) => getDepositProcessingStatus$(target, ethStateTopic$, bridgeStateTopic$, bridgeTimingsTopic$))); /*testSub(bridgeStateTopic$); testSub(ethStateTopic$); testSub(bridgeTimingsTopic$); testSub(bridgeStateWithTimings$)*/ //testSub(ethStateTopic$); //testSub(bridgeStateTopic$); //testSub(bridgeSocketConnectionState$); //testSub(depositProcessingStatus$); testSub(bridgeSocket$); testSub(getDepositProcessingStatus$(0, ethStateTopic$, bridgeStateTopic$, bridgeTimingsTopic$)); //# sourceMappingURL=try.js.map