fix: invoice status change

This commit is contained in:
apotdevin 2021-03-23 22:34:33 +01:00
parent f32e90a906
commit cced7085e3
No known key found for this signature in database
GPG key ID: 4403F1DFBE779457

View file

@ -1,5 +1,4 @@
import { randomBytes, createHash } from 'crypto';
import { once } from 'events';
import {
payViaRoutes,
createInvoice,
@ -31,16 +30,20 @@ export const invoiceResolvers = {
const sub = subscribeToInvoice({ id, lnd });
await once(sub, 'invoice_updated');
return Promise.race([
once(sub, 'invoice_updated'),
new Promise(resolve => {
sub.on('invoice_updated', (data: any) => {
if (data.is_confirmed) {
resolve(true);
}
});
}),
new Promise((_, reject) =>
setTimeout(() => reject(new Error('timeout')), 90000)
),
])
.then((res: any) => {
if (res?.[0] && res[0].is_confirmed) {
if (res) {
return 'paid';
}
return 'not_paid';