Skip to content
This repository was archived by the owner on Feb 8, 2026. It is now read-only.

Commit 1b7cc4b

Browse files
authored
Merge pull request #1090 from synonymdev/fix-lnurl-callback
fix: upgrade @synonymdev/react-native-lnurl to fix callback parsing bug
2 parents f4ff104 + d4ddac8 commit 1b7cc4b

5 files changed

Lines changed: 24 additions & 10 deletions

File tree

__tests__/lnurl.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@ import {
33
deriveLinkingKeys,
44
getLNURLParams,
55
signK1,
6-
LNURLAuthParams,
76
} from '@synonymdev/react-native-lnurl';
7+
import { LNURLAuthParams } from 'js-lnurl';
8+
89
import { EAvailableNetworks } from '@synonymdev/react-native-lnurl/dist/utils/types';
910

1011
const mnemonic =

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
"@shopify/react-native-skia": "0.1.182",
5252
"@synonymdev/blocktank-client": "0.0.50",
5353
"@synonymdev/react-native-ldk": "0.0.96",
54-
"@synonymdev/react-native-lnurl": "0.0.3",
54+
"@synonymdev/react-native-lnurl": "0.0.4",
5555
"@synonymdev/result": "0.0.2",
5656
"@synonymdev/slashtags-auth": "^1.0.0-alpha.5",
5757
"@synonymdev/slashtags-sdk": "1.0.0-alpha.38",

src/utils/lnurl.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@ import {
33
createPayRequestUrl,
44
createWithdrawCallbackUrl,
55
lnurlAuth as lnAuth,
6+
} from '@synonymdev/react-native-lnurl';
7+
import {
68
LNURLAuthParams,
79
LNURLChannelParams,
810
LNURLPayParams,
911
LNURLWithdrawParams,
10-
} from '@synonymdev/react-native-lnurl';
12+
} from 'js-lnurl';
1113
import { err, ok, Result } from '@synonymdev/result';
1214

1315
import {
@@ -273,7 +275,7 @@ export const handleLnurlWithdraw = async ({
273275
selectedNetwork = getSelectedNetwork();
274276
}
275277

276-
const amountSats = params.maxWithdrawable / 1000; //Convert msats to sats.
278+
const amountSats = Math.floor(params.maxWithdrawable / 1000); //Convert msats to sats.
277279
const description = params.defaultDescription;
278280

279281
// Determine if we have enough receiving capacity before proceeding.
@@ -328,6 +330,15 @@ export const handleLnurlWithdraw = async ({
328330
return err('Unable to connect to LNURL withdraw server.');
329331
}
330332

333+
const jsonRes = await channelStatusRes.json();
334+
if (jsonRes.status === 'ERROR') {
335+
showErrorNotification({
336+
title: i18n.t('other:lnurl_withdr_error'),
337+
message: jsonRes.reason,
338+
});
339+
return err(jsonRes.reason);
340+
}
341+
331342
showSuccessNotification({
332343
title: i18n.t('other:lnurl_withdr_success_title'),
333344
message: i18n.t('other:lnurl_withdr_success_msg'),

src/utils/scanner.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,15 @@ import { address as bitcoinJSAddress } from 'bitcoinjs-lib';
77
import { err, ok, Result } from '@synonymdev/result';
88
import SDK from '@synonymdev/slashtags-sdk';
99
import { TInvoice } from '@synonymdev/react-native-ldk';
10+
import { getLNURLParams } from '@synonymdev/react-native-lnurl';
11+
1012
import {
11-
getLNURLParams,
1213
LNURLAuthParams,
1314
LNURLChannelParams,
1415
LNURLPayParams,
1516
LNURLResponse,
1617
LNURLWithdrawParams,
17-
} from '@synonymdev/react-native-lnurl';
18+
} from 'js-lnurl';
1819

1920
import {
2021
getOnchainTransactionData,

yarn.lock

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2610,16 +2610,17 @@
26102610
dependencies:
26112611
bitcoinjs-lib "^6.0.2"
26122612

2613-
"@synonymdev/react-native-lnurl@0.0.3":
2614-
version "0.0.3"
2615-
resolved "https://registry.yarnpkg.com/@synonymdev/react-native-lnurl/-/react-native-lnurl-0.0.3.tgz#ee8da8d1ad1b18e220fd49bf7cf303ddf4db56f8"
2616-
integrity sha512-xHdrqWzjRf6Pq95qqs4uWtFSu4vsaxu05uIC0aYwHzFvMWsJvONyakNoLvgLAHOp+9nEWG5PPqQMvQItGWu79A==
2613+
"@synonymdev/react-native-lnurl@0.0.4":
2614+
version "0.0.4"
2615+
resolved "https://registry.yarnpkg.com/@synonymdev/react-native-lnurl/-/react-native-lnurl-0.0.4.tgz#1bfa6b85e29ab03795b5cf5aabfc7637e784d4d1"
2616+
integrity sha512-fUmcSmqGIXCHjNnVguqm3HlGzIkTB1x9OYFcD2xaOn+ENeRbrMDm48KMSkwFn+NdkEG/YZSTjR9N14X2lSWfYw==
26172617
dependencies:
26182618
base64-js "^1.5.1"
26192619
bip32 "^2.0.6"
26202620
bip39 "^3.0.4"
26212621
fast-sha256 "^1.3.0"
26222622
js-lnurl "^0.2.5"
2623+
query-string "^7.1.3"
26232624
readable-stream "^3.6.0"
26242625
secp256k1 "^4.0.2"
26252626
stream-browserify "^3.0.0"

0 commit comments

Comments
 (0)