mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-06-28 20:39:51 +00:00
update-payjoin (#2281)
* feat: upgrade to flutter_payjoin 0.23.0 * fix: dependency discrepancy freezed_annotation * feat(cw_bitcoin): use latest payjoin deps * ci: update rust toolchain * Update pubspec.yaml * trial: downgrade flutter payjoin ffi * some checks * trial 2 * [skip ci] use correct image for CI * fix: bump flutter sdk to 3.29.0 * partial revert --------- Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net> Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
This commit is contained in:
parent
b0edf1fe75
commit
8457a45c2a
38 changed files with 477 additions and 346 deletions
|
@ -9,6 +9,8 @@ import 'package:http/http.dart' as http;
|
|||
import 'package:payjoin_flutter/common.dart';
|
||||
import 'package:payjoin_flutter/send.dart';
|
||||
import 'package:payjoin_flutter/src/generated/frb_generated.dart' as pj;
|
||||
import 'package:payjoin_flutter/src/generated/api/send/error.dart' as pj_error;
|
||||
import 'package:payjoin_flutter/uri.dart' as pj_uri;
|
||||
|
||||
enum PayjoinSenderRequestTypes {
|
||||
requestPosted,
|
||||
|
@ -29,7 +31,7 @@ class PayjoinSenderWorker {
|
|||
final senderJson = args[1] as String;
|
||||
final pjUrl = args[2] as String;
|
||||
|
||||
final sender = Sender.fromJson(senderJson);
|
||||
final sender = Sender.fromJson(json: senderJson);
|
||||
final worker = PayjoinSenderWorker._(sendPort, pjUrl);
|
||||
|
||||
try {
|
||||
|
@ -51,9 +53,7 @@ class PayjoinSenderWorker {
|
|||
return await _runSenderV2(sender, httpClient);
|
||||
} catch (e) {
|
||||
printV(e);
|
||||
if (e is PayjoinException &&
|
||||
// TODO condition on error type instead of message content
|
||||
e.message?.contains('parse receiver public key') == true) {
|
||||
if (e is pj_error.FfiCreateRequestError) {
|
||||
return await _runSenderV1(sender, httpClient);
|
||||
} else if (e is HttpException) {
|
||||
printV(e);
|
||||
|
@ -68,7 +68,8 @@ class PayjoinSenderWorker {
|
|||
Future<String> _runSenderV2(Sender sender, http.Client httpClient) async {
|
||||
try {
|
||||
final postRequest = await sender.extractV2(
|
||||
ohttpProxyUrl: await PayjoinManager.randomOhttpRelayUrl(),
|
||||
ohttpProxyUrl:
|
||||
await pj_uri.Url.fromStr(PayjoinManager.randomOhttpRelayUrl()),
|
||||
);
|
||||
|
||||
final postResult = await _postRequest(httpClient, postRequest.$1);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue