Commit Graph

313 Commits

Author SHA1 Message Date
ok300
9ee5a04a91 Remove sync() call when handling Boltz update (#401) 2024-07-22 07:47:14 +00:00
Ross Savage
091fc50270 Add rustdocs generation to CI (#402)
* Add rustdocs CI

* Flutter gen

* Add link to README
2024-07-19 17:35:59 +02:00
Ross Savage
bfeb785221 Buy Bitcoin (#398)
* Add fiat on-ramp service

* Use sdk-common MoonpayProvider

* Bump flutter qr dependency

* Bump sdk-common dependency
2024-07-19 14:57:51 +02:00
ok300
970489ccfa Persistence: consolidate state filter (#400)
* Simplify sync_payments_with_chain_data loop

* Extract get_where_clause_state_in() util

* Bump flutter transitive dependency
2024-07-18 07:48:48 +00:00
Ross Savage
d567c27e67 Set default value (#397) 2024-07-16 10:24:41 +02:00
Ross Savage
a3eb4caaf2 Add validate url success action param (#395) 2024-07-16 10:08:30 +02:00
Ross Savage
0da35259fe Allow custom pay_onchain claim fees (#391)
* Allow optional fee rate for pay onchain BTC claim

* Add recommended_fees method

* Fix example Config

* Address review comments
2024-07-15 17:38:10 +02:00
Ross Savage
7a1d0be70b Update lwk to 0.7.0 (#394) 2024-07-15 14:59:10 +02:00
ok300
9fa5cb1b3e Fix flutter CI check (#389)
Bump string_scanner flutter dependency
2024-07-11 19:02:47 +00:00
Ross Savage
ae7f8c74c0 Map Lwk InsufficientFunds error to PaymentError::InsufficientFunds (#386) 2024-07-11 19:28:05 +02:00
Ross Savage
a4a8f961d2 Update UDL to fix python default argment ordering (#385) 2024-07-11 19:17:36 +02:00
Ross Savage
143993fd3a List payments filtering and paging (#369)
* List payments in reverse chonological order

* Add payment filtering and paging

* Fix examples

* Apply suggestions from code review

Co-authored-by: Erdem Yerebasmaz <erdem@yerebasmaz.com>

* Set timestamp for pseudo payments

* Filter by the first non-null timestamp from the join query

---------

Co-authored-by: Erdem Yerebasmaz <erdem@yerebasmaz.com>
2024-07-10 17:50:53 +02:00
Ross Savage
916a8e15bc Bump lwk_wollet to 0.7.0 (#380) 2024-07-09 21:38:14 +02:00
Ross Savage
da43f7ff78 Rename namespace (#345)
* Rename namespace

* Fix flutter build

* Fix kotlin-multiplatform CI

* Rename repositories
2024-07-09 17:25:05 +02:00
Ross Savage
05507063f0 Change Config param to zero_conf_min_fee_rate_msat (#374)
* Change Config param to zero_conf_min_fee_rate_msat

* Fix Flutter example
2024-07-09 14:13:42 +02:00
ok300
cac8c315fa Remove duplicate refund_send, refund_send_non_cooperative (#361) 2024-07-08 16:18:14 +00:00
yse
50be093230 fix: refund InsufficientFunds error when calculating broadcast fee (#360)
Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
2024-07-08 17:30:17 +02:00
Ross Savage
bf5828c6a6 Update core README (#370) 2024-07-08 15:40:33 +02:00
ok300
4cd5b96aed Update list-payments: exclude chain swap refunds (#366)
If not excluded, they appear as separate Receive payments.
2024-07-08 11:07:54 +00:00
ok300
1a539d3de0 Include RefundPending state in list_pending (#367)
This is done for swaps that can be refunded, like Chain Swaps and Send Swaps.

Without this, refunded payments never transition away from RefundPending to Failed (refunded), because they're not considered a pending swap when handling the final transition
2024-07-08 07:21:14 +00:00
Ross Savage
3ea6b1a9dc Publish Dart and Flutter packages (#356)
* Publish flutter artifacts and package

* Publish dart package

* Add LICENCE

* Force rm

* Don't copy lock files

* Fix output directory

* Fix podspec name

* Pass SWIFT_RELEASE_TOKEN

* Fix overrides indentation

* Update package version on CMake script

Update example dependencies

* Depend on dart & flutter packages from git on pubspec files

* Correct repository links & add publish_to: 'none'
* run just clean && just init

* Update README.md

* Download framework as part of prepare_command

* Use wget, then fallback to curl
* Remove redundant .zip suffix on the url

* Fix release tag

* Add v to tag replacement

* Fix podspec version

* Copy header file

* Downgrade vm_service

---------

Co-authored-by: Erdem Yerebasmaz <erdem@yerebasmaz.com>
2024-07-03 17:21:47 +02:00
ok300
08b2e5a6e2 Add fetch_onchain_limits service method (#343)
* Add pay_onchain_limits service method

* Add receive_onchain_limits service method

* Merge pay/receive_onchain_limits

* Update field names

* Split swapper method in get_chain_pair and get_chain_pairs

* Fix test

* Introduce and re-use Limits model

* Add fetch_lightning_limits SDK method

* Fix CI: propagate latest sdk-common changes
2024-07-03 09:22:29 +00:00
Erdem Yerebasmaz
639ef0cca5 [Flutter] Fix relative path of packages (#353)
* Fix relative path on melos.yaml

* Mention current version on CHANGELOG.md

* Remove symlink for apache license

* Address typos & relative path issues on README.md

* Ignore Flutter example app on Melos.yaml

* Remove obsolete param from Config on example app

* Do not treat info messages as critical

* Update README of Dart/Flutter packages

Revert changes on topmost README

* Update pubspec.lock

* Make dart output directory if it does not exists

* Replace continue-on-error

Resume even if previous step fails, this approach displays errors on CI summary.

* Install Protoc as part of CI workflow

* Added init-sdk as part of just bootstrap recipe which installs protobuf
* Pinned freezed to <=2.5.2
2024-07-02 17:08:38 +03:00
yse
709c6dfa4a tests: Add unit tests for primary SDK methods (#346) 2024-07-01 17:24:22 +02:00
Ross Savage
15a243251e Fix example network and logger call (#349) 2024-07-01 10:11:02 +02:00
Erdem Yerebasmaz
381c09b93f Expose duplicates of "external structs that cannot be mirrored" through Dart/Flutter plugin (#348)
Generate Dart bindings
2024-07-01 11:01:50 +03:00
Ross Savage
9820b0e38c Change onchain request/response structs for clarity (#340)
* Rename fields for clarity

* Remove ReceiveOnchainRequest
2024-06-28 16:30:35 +02:00
Erdem Yerebasmaz
360e88e251 Fix just recipe args for building binaries for Apple, Android and other platforms (#344)
* Fix just recipes args for building binaries

* Ignore errors and create parent dir's as needed when using mkdir command
2024-06-28 14:57:21 +03:00
ok300
2680f1494d Fix typo (#342) 2024-06-28 11:06:18 +00:00
ok300
713108adb8 Add prelude (#339) 2024-06-27 17:37:38 +00:00
Ross Savage
62022daa85 Update boltz-client (#338) 2024-06-27 15:49:35 +02:00
Ross Savage
a4af73352a Fix handling of f32 type (#336) 2024-06-27 13:07:41 +02:00
Erdem Yerebasmaz
5023248545 Add just recipe to install Liquid SDK requirements (#335) 2024-06-27 12:07:29 +03:00
Ross Savage
34d068a774 Verify chain swap server lockup transaction (#330)
* Verify server lockup transaction

* Fix retries
2024-06-27 10:07:38 +02:00
Ross Savage
e7844473cd Monitor chain swap addresses (#322)
* Check chain swap addresses for unspent outputs

* Monitoring expired swaps up to 4320 blocks after expiration

* Refactor chain swap monitoring

* Handle the error to prevent the loop exiting

* Add RefundPending state

* Check if RefundPendingbefore setting to Refundable

* Use script_get_balance to determine spent state

* Use unconfirmed balance to check if RefundPending should be reset to Refundable
2024-06-26 16:53:41 +02:00
ok300
ef5cd28fa5 Add FiatAPI methods to Liquid SDK (#331)
* Add FiatAPI methods to Liquid SDK

* Add mirrored structs of fiat crate on Dart bindings

* Re-generate bindings

* Fix sdk-common imports

* Avoid using hardcoded Breez Server URL, re-use sdk-common constant

* Update Cargo.lock

---------

Co-authored-by: Erdem Yerebasmaz <erdem@yerebasmaz.com>
2024-06-26 13:55:44 +00:00
ok300
34258b54a6 Fix typo (#334) 2024-06-26 09:16:25 +00:00
ok300
7bd9b6ddb2 Use swapper proxy to extract referral ID (#329)
* Use swapper proxy to extract referral ID

* Derive swapper API base URL from proxy URL

* Update RN bindings

* Remove referral_id from Config, move proxy_url parsing to swapper

* Fix tests

* Cache swapper proxy URL

* Move boltz_url from Config to swapper

* Silently fail when fetching proxy swapper URLs

* Update RN bindings

* Fix sdk-common dependency

* Fix dependency issues
2024-06-25 17:19:02 +00:00
Roei Erez
1a0127fcfc Use lowball fees only on lockup and cooperative refund 2024-06-25 19:12:31 +03:00
Ross Savage
9da16fba78 Receive Chain Swaps (#310)
* Implement Chain Swaps for receiving

* Send: validate if we have sufficient funds (#321)

* Implement Chain Swaps for receiving

* Fix rebase of flutter_rust_bridge version

* Send: validate if we have sufficient funds

* Re-generate FRB

---------

Co-authored-by: Ross Savage <hello@satimoto.com>

* Chaim swap claim: remove refund_tx arg (#328)

---------

Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
2024-06-25 17:33:38 +02:00
Erdem Yerebasmaz
8c85ffcf69 Bump flutter_rust_bridge to 2.0.0 (#327) 2024-06-24 13:39:50 +03:00
Roei Erez
c22d4ae30a remove unwrap 2024-06-24 10:24:19 +03:00
Roei Erez
84a11c4196 increase retry to 3 2024-06-23 14:49:52 +03:00
Roei Erez
a0e9c41628 fix clippy 2024-06-22 10:47:46 +03:00
Roei Erez
fff8f5bdaa fix some feedback 2024-06-22 10:46:14 +03:00
Roei Erez
7e022ff930 Use constant for lowball fee rate 2024-06-21 00:05:38 +03:00
Roei Erez
1a454ece19 Use lowball node for broadcast and verify swapper lockup tx 2024-06-21 00:05:35 +03:00
ok300
bcb4743260 Integrate sdk-common (#308)
* Rename Network to LiquidSdkNetwork to avoid naming conflicts with sdk-common

* Integrate sdk-common: re-use parse_invoice

* Fix UDL bindings tests

* Add input parser support

* CLI: Add input parser support

* Integrate lnurl-pay

* Cargo format, re-generate FRB and RN bindings

* Duplicate LnUrlPayError, update FRB/UniFFI bindings

* Move duplicate LnUrlPayError to FRB bindings.rs

* Add support for lnurl-withdraw

* Lnurl-withdraw: convert units, incorporate fees

* Bump sdk-common, rename InputType::LnUrlError

* Bump sdk-common, remove Wrapped prefix from LnUrlPaySuccessData, LnUrlPayResult

* LNURL-withdraw: add missing UDL mappings

* Add support for LNURL-auth

* Move LNURL structs into models.rs

* Rename LiquidSdkNetwork to LiquidNetwork

* Fix binding tests

* Fix tests

* Move FRB mirroring structs to bindings.rs

* Remove TODO

* Bump sdk-common, remove sdk-common dependency on rusqlite

* Propagate LiquidNetwork rename into flutter example app

* CI: install protobuf before running clippy

* CI: add rust cache, protobuf for remaining rust steps
2024-06-20 16:18:50 +00:00
Ross Savage
428d69729b Implement Chain Swaps for sending (#298) 2024-06-19 12:48:13 +02:00
yse
6224c5133c test: persistence and swap states (#312) 2024-06-18 21:55:46 +02:00