Commit graph

85 commits

Author SHA1 Message Date
Raphael
3fa31ba139
feat(gui): Tor toggle (#300)
* re-add tor info box, show switch for toggling tor

* add use_tor to TauriSettings, only initialize tor client when it's true

* add warning log message when not using tor client

* change the label text of the switch, fail to align switch with SettingsBox icons

* move Tor settings to SettingsBox
2025-04-22 16:36:09 +02:00
unstoppableswap-botty
ffe103cb49
Prepare release 1.0.0-rc.17 (#297)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2025-04-18 02:06:09 +02:00
Mohan
9ddf2daafe
feat(gui): Approve dialog before publishing Bitcoin lock transaction (#291)
This diff introduces a new "approvals" mechanism that alters the swap flow by requiring explicit user intervention before the Bitcoin lock transaction is broadcast. Previously, the Bitcoin lock was executed automatically without any user prompt. Now, the backend defines `ApprovalRequestType` (e.g. a `PreBtcLock` variant with details like `btc_lock_amount`, `btc_network_fee`, and `xmr_receive_amount`) and `ApprovalEvent` (with statuses such as `Pending`, `Resolved`, and `Rejected`). The method `request_approval()` in the `TauriHandle` struct uses a oneshot channel and concurrent timeout handling via `tokio::select!` to wait for the user's decision. Based on the outcome—explicit approval or timeout/rejection—the approval event is emitted through the `emit_approval()` helper, thereby gating the subsequent broadcast of the Bitcoin lock transaction.

On the UI side, changes have been made to reflect the new flow; the modal (for example, in `SwapSetupInflightPage.tsx`) now displays the swap details along with explicit action buttons that call `resolveApproval()` via RPC when clicked. The Redux store, selectors, and hooks like `usePendingPreBtcLockApproval()` have been updated to track and display these approval events. As a result, the overall functionality now requires the user to explicitly approve the swap offer before proceeding, ensuring they are aware of the swap's key parameters and that the locking of funds occurs only after their confirmation.
2025-04-18 01:51:55 +02:00
unstoppableswap-botty
ab5f93ff44
Prepare release 1.0.0-rc.16 (#294) 2025-04-17 22:00:52 +02:00
unstoppableswap-botty
8d4f714015
Prepare release 1.0.0-rc.14 (#290)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2025-04-16 15:10:24 +02:00
Ian McKenzie
7debdeabb0 Run cargo fmt in src-tauri 2025-02-18 18:42:56 -08:00
unstoppableswap-botty
dfe1a28267
Prepare release 1.0.0-rc.13 (#259) 2025-01-24 02:54:38 +01:00
Mohan
c9d3536f36
fix(gui): Button to open data directory (#256) 2025-01-22 16:29:11 +01:00
Einliterflasche
9e27c6548b
docs: generally improve docs and add maker page (#242)
* improve introduction and installation docs

* add some maker documentation

* improve maker docs

* Add network section, explain multiaddr, move docker commands into table

* Finally fix src-gui/.gitignore

* Fix .env.development

* Refine cancel, refund, punish explanation

* Add to changelog

* Make donation addresses copyable

* Apply suggestions
2025-01-21 16:05:05 +01:00
unstoppableswap-botty
3e6b25a0c8
Prepare release 1.0.0-rc.12 (#252) 2025-01-16 11:46:02 +01:00
unstoppableswap-botty
27e8467ac5
Prepare release 1.0.0-rc.11 (#236) 2024-12-23 00:33:51 +01:00
unstoppableswap-botty
b7631d2d47
Prepare release 1.0.0-rc.10 (#226) 2024-12-05 17:16:15 +01:00
Binarybaron
23ccee1436 Revert "Prepare release 1.0.0-rc.9 (#224)"
This reverts commit e11dbed14d.
2024-12-05 16:51:37 +01:00
unstoppableswap-botty
e11dbed14d
Prepare release 1.0.0-rc.9 (#224) 2024-12-04 18:48:42 +01:00
unstoppableswap-botty
1dca3b852b
Prepare release 1.0.0-rc.8 (#223)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-12-04 16:23:29 +01:00
binarybaron
d53c12d64e
feat(asb, cli): Listen on onion address, dial onion addresses (#203)
This pull requests
- Adds rust native support for the `asb` to listen on an onion service. Previously we were depedent on a seperately running `torc` client. Instead we now use [arti](https://tpo.pages.torproject.net/core/arti/), a rust implementation of the tor protocol.
- Removes the `tor.control_port` and `tor.socks5_port` property from the config of the `asb`
- Adds a new `tor.register_hidden_service` boolean property to the config of the `asb` which when enabled automatically runs a hidden service at startup
- Adds a new `tor.hidden_service_num_intro_points` config property to specify how many introduction points to register the onion service at
- Adds support for the `cli` to dial onion addresses

This is dependent on https://github.com/umgefahren/libp2p-tor/pull/24

Closes https://github.com/UnstoppableSwap/core/issues/16
2024-12-03 21:24:33 +01:00
binarybaron
0f32ad195f
feat(gui): Release .deb binaries, allow auto updater to function with deb installations (#219) 2024-12-02 15:02:04 +01:00
binarybaron
13b3ecc638
feat(gui): Enforce minimum window size (#216) 2024-11-29 20:42:35 +01:00
binarybaron
82631a39d7
fix(gui): Do not release .deb binaries 2024-11-26 15:05:54 +01:00
unstoppableswap-botty
9b4e8540b5
Prepare release 1.0.0-rc.7 (#210)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-11-26 14:57:32 +01:00
Binarybaron
bdb406a299 bump: sysinfo to 0.32.1, tauri deps to latest 2024-11-26 14:04:22 +01:00
Binarybaron
6684082736 feat(gui): Release .deb release binaries 2024-11-26 13:31:19 +01:00
unstoppableswap-botty
92f6efc34b
Prepare release 1.0.0-rc.6 (#200)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-11-21 11:20:51 +01:00
binarybaron
6cd228fada
feat(swap): Use art_client to dial over Tor (#196)
- Upgrade `sqlx` to `0.8`
- Use `arti_client@0.24` in combination with [`libp2p-community-tor`](https://crates.io/crates/libp2p-community-tor/0.4.1). https://github.com/umgefahren/libp2p-tor/pull/18 was required for this.
- Display spinner in GUI while Tor circuits are being established
- Remove unused dependencies (`once_cell`, `tauri-plugin-devtools`, `digest`, `hyper`, `itertools`, `erased_serde`)
- Bundle roboto font from npm registry
2024-11-21 01:00:36 +01:00
unstoppableswap-botty
d0108fd857
Prepare release 1.0.0-rc.5 (#195)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-11-19 17:28:21 +01:00
unstoppableswap-botty
56363da214
Prepare release 1.0.0-rc.4 (#187) 2024-11-17 17:07:38 +01:00
binarybaron
82c4b600c8
fix(ci): Use ubuntu-22.04 to build GUI, enable preview builds, revert 1.0.0-rc.3 (#185)
* fix(ci): Use ubuntu-22.04 to build GUI

* Revert "Prepare release 1.0.0-rc.3 (#184)"

This reverts commit 6bf90eb28e.
2024-11-17 12:42:57 +01:00
unstoppableswap-botty
6bf90eb28e
Prepare release 1.0.0-rc.3 (#184)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-11-17 12:21:38 +01:00
unstoppableswap-botty
56102fa379
Prepare release 1.0.0-rc.2 (#179) 2024-11-16 13:01:44 +01:00
unstoppableswap-botty
38e07c9937
Prepare release 1.0.0-rc.1 (#175)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-11-15 14:51:07 +01:00
unstoppableswap-botty
afdf310890
Prepare release 1.0.0-alpha.3 (#174)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-11-15 00:26:07 +01:00
binarybaron
c5aa6bf505
feat(gui): Kill monero-wallet-rpc if running in background, include version in window title (#172) 2024-11-14 22:27:17 +01:00
unstoppableswap-botty
2b47904120
Prepare release 1.0.0-alpha.2 (#171)
Co-authored-by: UnstoppableSwap Botty <help@unstoppableswap.net>
2024-11-14 19:33:15 +01:00
binarybaron
79bc8c08f1
fix(ci, tauri): Build darwin app target
This is needed for the auto updater to work
2024-11-14 18:55:24 +01:00
Binarybaron
7faf9aec4f fix(ci, tauri): Only build appimage, dmg, nsis and msi 2024-11-14 16:48:35 +01:00
Einliterflasche
3e79bb3712
feat(GUI): Add settings for theme, fiat currency and remote nodes (#128) 2024-11-13 22:51:47 +01:00
binarybaron
c027e51087
refactor(swap): Upgrade libp2p to 0.53.2, reliable retry mechanisms (#109)
Our libp2p version is out of date, and we need to tackle the upgrade even though it's a significant undertaking. This'll also fix some other [issues](https://github.com/UnstoppableSwap/core/issues/95).

## This PR includes the following changes:
- Breaking network protocol change: The libp2p version has been upgraded to 0.53 which includes breaking network protocol changes. ASBs and CLIs will not be able to swap if one of them is on the old version.
- ASB: Transfer proofs will be repeatedly sent until they are acknowledged by the other party. This fixes a bug where it'd seem to Bob as if the Alice never locked the Monero. Forcing the swap to be refunded.
- CLI: Encrypted signatures will be repeatedly sent until they are acknowledged by the other party
- CLI+ASB: Libp2p network errors in request-response protocols are now propagated throught the event loop channels. This allows the caller to retry if an error occurs (e.g timeout)

Closes https://github.com/UnstoppableSwap/core/issues/101, https://github.com/UnstoppableSwap/core/issues/95
2024-11-11 00:14:42 +01:00
binarybaron
a116c27785
feat(gui): Use inbuild LazyStore feature of @tauri-apps/plugin-store (#150) 2024-11-10 20:46:24 +01:00
binarybaron
e76ff3ac9c
feat(gui): Change product name to "UnstoppableSwap (new)" (#146) 2024-11-09 17:22:10 +01:00
binarybaron
bd3fca7e41
feat(gui): Allow to select from recently used monero addresses (#139)
* feat(gui): Allow user to select from recently used monero addresses in textfield
2024-11-09 12:11:00 +01:00
binarybaron
4867d2713f
feat(gui): Release 0.7.2
The purpose of this release is to test the auto updater
2024-11-08 17:54:40 +01:00
binarybaron
765655bfb6 fix(tauri): Remove dialog::default capability 2024-11-07 21:57:56 +01:00
binarybaron
8283d09b5b
fix(gui): Relaunch application after updater installation has finished (#137) 2024-11-07 21:11:46 +01:00
binarybaron
12528a9d4e
feat(gui): Enforce single instance of GUI to be running (#135)
* feat(gui): Only allow a single instance of the application

* feat(tauri): Remove unused tauri-plugin-dialog crate/yarn package
2024-11-06 19:39:32 +01:00
binarybaron
efaf51f499
feat(gui): Release 0.7.1
This release is to verify the workings of the auto updater
2024-11-06 13:12:37 +01:00
binarybaron
c1afc7aa2a
feat(gui): Display dialog when update is available (#132)
* feat(tauri): Use new tauri signing key

* feat(gui): Display MUI dialog when update is available
2024-11-05 21:01:23 +01:00
binarybaron
a9b1d05af0 feat: release GUI version 0.7.0. This should be a preview release but isn't for testing purposes 2024-11-04 15:17:49 +01:00
binarybaron
8437473a1b feat(gui): Bump version to 1.0.0-alpha.1 2024-10-23 17:18:39 +02:00
binarybaron
37d1f07c2d
release(gui): 1.0.0 alpha.1 (#125) 2024-10-22 13:22:46 +02:00
binarybaron
6c433041b7
feat(gui, tauri, ci): Auto updater (#105) 2024-10-17 14:56:04 +02:00