Skip to content

Commit

Permalink
Merge branch 'master' of github.com:BlueWallet/rn-ldk
Browse files Browse the repository at this point in the history
  • Loading branch information
Overtorment committed Nov 13, 2021
2 parents b642da6 + 37f6672 commit aefb83e
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 13 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "rn-ldk",
"version": "0.6.2",
"version": "0.6.3",
"description": "rn-ldk",
"main": "lib/commonjs/index",
"module": "lib/module/index",
Expand Down
42 changes: 30 additions & 12 deletions src/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -853,24 +853,42 @@ eventEmitter.addListener(MARKER_BROADCAST, (event: BroadcastMsg) => {
RnLdk._broadcast(event).then(console.log);
});

const channelPersisterTimeouts: any = {};
eventEmitter.addListener(MARKER_PERSIST, async (event: PersistMsg) => {
try {
if (!event.id || !event.data) throw new Error('Unexpected data passed for persister: ' + JSON.stringify(event));
await RnLdk._persist(event);
} catch (error: any) {
console.error(error.message);
Alert.alert('persister: ' + error.message);
// dumb way to dedup bulk updates:
if (channelPersisterTimeouts[event.id]) {
console.log('deduping channel monitor persist events');
clearTimeout(channelPersisterTimeouts[event.id]);
}
channelPersisterTimeouts[event.id] = setTimeout(async () => {
channelPersisterTimeouts[event.id] = null;
try {
if (!event.id || !event.data) throw new Error('Unexpected data passed for persister: ' + JSON.stringify(event));
await RnLdk._persist(event);
} catch (error: any) {
console.error(error.message);
Alert.alert('persister: ' + error.message);
}
}, 1000);
});

let managerPersisterTimeout: NodeJS.Timeout | null;
eventEmitter.addListener(MARKER_PERSIST_MANAGER, async (event: PersistManagerMsg) => {
try {
if (!event.channel_manager_bytes) throw new Error('Unexpected data passed for manager persister: ' + JSON.stringify(event));
await RnLdk._persistManager(event);
} catch (error: any) {
console.error(error.message);
Alert.alert('manager persister: ' + error.message);
// dumb way to dedup bulk updates:
if (managerPersisterTimeout) {
console.log('deduping channel manager persist events');
clearTimeout(managerPersisterTimeout);
}
managerPersisterTimeout = setTimeout(async () => {
managerPersisterTimeout = null;
try {
if (!event.channel_manager_bytes) throw new Error('Unexpected data passed for manager persister: ' + JSON.stringify(event));
await RnLdk._persistManager(event);
} catch (error: any) {
console.error(error.message);
Alert.alert('manager persister: ' + error.message);
}
}, 1000);
});

eventEmitter.addListener(MARKER_PAYMENT_FAILED, (event: PaymentFailedMsg) => {
Expand Down

0 comments on commit aefb83e

Please sign in to comment.