11import { remote } from 'electron'
2- import { ReplaySubject } from 'rxjs'
3- import { bufferTime } from 'rxjs/operators'
42import AddressesUsedSubject , { AddressesWithURL } from 'models/subjects/addresses-used-subject'
53import AddressService from 'services/addresses'
64import { Address } from 'database/address/address-dao'
@@ -12,23 +10,13 @@ const addressesUsedSubject = isRenderer
1210 ? remote . require ( './models/subjects/addresses-used-subject' ) . default . getSubject ( )
1311 : AddressesUsedSubject . getSubject ( )
1412
15- // pipe not working directly
16- const bridge = new ReplaySubject < AddressesWithURL > ( 1000 )
17- addressesUsedSubject . subscribe ( ( params : AddressesWithURL ) => {
18- bridge . next ( params )
19- } )
20-
2113// update txCount when addresses used
2214export const register = ( ) => {
23- bridge . pipe ( bufferTime ( 1000 ) ) . subscribe ( async ( addressesList : AddressesWithURL [ ] ) => {
24- if ( addressesList . length === 0 ) {
25- return
26- }
27- const addresses = addressesList . map ( list => list . addresses ) . reduce ( ( acc , val ) => acc . concat ( val ) , [ ] )
28- const url : string = addressesList [ addressesList . length - 1 ] . url
29- const uniqueAddresses = [ ...new Set ( addresses ) ]
30- const addrs = await AddressService . updateTxCountAndBalances ( uniqueAddresses , url )
31- const walletIds : string [ ] = addrs . map ( addr => ( addr as Address ) . walletId ) . filter ( ( value , idx , a ) => a . indexOf ( value ) === idx )
15+ addressesUsedSubject . subscribe ( async ( address : AddressesWithURL ) => {
16+ const addrs = await AddressService . updateTxCountAndBalances ( address . addresses , address . url )
17+ const walletIds : string [ ] = addrs
18+ . map ( addr => ( addr as Address ) . walletId )
19+ . filter ( ( value , idx , a ) => a . indexOf ( value ) === idx )
3220 for ( const id of walletIds ) {
3321 const wallet = WalletService . getInstance ( ) . get ( id )
3422 const accountExtendedPublicKey : AccountExtendedPublicKey = wallet . accountExtendedPublicKey ( )
0 commit comments