1+ import { remote } from 'electron'
12import { AddressType } from 'models/keys/address'
23import { TransactionsService } from 'services/tx'
34import CellsService from 'services/cells'
@@ -7,6 +8,7 @@ import { OutputStatus } from 'services/tx/params'
78import { AddressVersion } from './entities/address'
89import NodeService from 'services/node'
910import Store from 'models/store'
11+ import AddressDbChangedSubject from 'models/subjects/address-db-changed-subject'
1012
1113export interface Address {
1214 walletId : string
@@ -183,6 +185,11 @@ export default class AddressDao {
183185 }
184186}
185187
188+ const isRenderer = process && process . type === 'renderer'
189+ const addressDbChangedSubject = isRenderer
190+ ? remote . require ( './models/subjects/address-db-changed-subject' ) . default . getSubject ( )
191+ : AddressDbChangedSubject . getSubject ( )
192+
186193/// Persist all addresses as array in `addresses/index.json`.
187194class AddressStore {
188195 static MODULE_NAME = 'addresses'
@@ -196,6 +203,7 @@ class AddressStore {
196203
197204 static updateAll ( addresses : Address [ ] ) {
198205 AddressStore . store . writeSync ( AddressStore . ROOT_KEY , addresses )
206+ AddressStore . changed ( )
199207 }
200208
201209 static add ( addresses : Address [ ] ) : Address [ ] {
@@ -224,4 +232,8 @@ class AddressStore {
224232
225233 return address
226234 }
235+
236+ static changed ( ) {
237+ addressDbChangedSubject . next ( "Updated" )
238+ }
227239}
0 commit comments